:root{--yellow:#ffe42c;--yellow-deep:#f6cf0a;--dark:#22272a;--sidebar:#20282b;--muted:#768087;--bg:#f3f5f5;--border:#e5e9e9;--text:#242b2e;--green:#16784d;--font:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}*{box-sizing:border-box}body{margin:0;color:var(--text);background:var(--bg);font:14px/1.45 var(--font)}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.6;cursor:wait}.icon-defs{position:absolute;width:0;height:0;overflow:hidden}.icon{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}.topbar{height:79px;background:var(--dark);border-bottom:4px solid var(--yellow);padding:0 29px;display:flex;align-items:center;justify-content:space-between;color:white}.brand{display:flex;align-items:center;gap:12px}.brand-mark{height:44px;width:44px;background:var(--yellow);color:#202326;display:grid;place-items:center;font-size:30px;font-weight:900;border-radius:10px}.brand b{display:block;font-size:22px;letter-spacing:.8px;line-height:1.1}.brand small{display:block;color:#bac1c4;font-size:10px;letter-spacing:1.35px;margin-top:5px;font-weight:700}.brand-version{color:var(--yellow);letter-spacing:0;margin-left:7px}.topbar-actions{display:flex;align-items:center;gap:20px}.top-note{color:#c7ccce;font-size:12px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:10px 15px;border:1px solid transparent;border-radius:8px;font-size:12.5px;font-weight:750;min-height:38px;white-space:nowrap;transition:background .15s,border-color .15s}.btn:hover{filter:brightness(.97)}.btn-primary{background:var(--yellow);color:#29291b}.btn-dark{background:#2b3336;color:#fff}.btn-light{background:#f2f4f4;color:#303638;border-color:#e4e8e8}.btn-outline{background:#fff;color:#313b3d;border-color:#d8dfdf}.btn .icon{width:16px;height:16px}.shell{display:grid;grid-template-columns:225px minmax(0,1fr);min-height:calc(100vh - 79px)}.sidebar{background:var(--sidebar);color:white;padding:25px 12px;display:flex;flex-direction:column;gap:5px}.nav-heading{font-size:10px;color:#859498;letter-spacing:1.3px;font-weight:800;padding:6px 13px 8px}.second-heading{margin-top:26px}.nav-link{width:100%;border:0;display:flex;align-items:center;gap:13px;text-align:left;background:transparent;color:#c3cccf;border-radius:9px;padding:11px 13px;font-weight:600}.nav-link:hover{background:#2c373b}.nav-link.selected{background:var(--yellow);color:#20272a;font-weight:850}.nav-link .icon{width:18px;height:18px}.count-pill{margin-left:auto;min-width:23px;padding:1px 6px;background:#354347;border-radius:99px;text-align:center;color:#e7eeee;font-size:11px}.selected .count-pill{background:#d8bf15;color:#242b2e}.sidebar-foot{font-size:11px;color:#95a3a7;margin-top:auto;padding:20px 13px 3px;border-top:1px solid #354145;white-space:nowrap}.online-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#68cc9d;margin-right:5px}.workspace{min-width:0;padding:29px 31px 50px}.view{display:none;max-width:1580px;margin:0 auto}.view.active{display:block}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.eyebrow{font-size:11px;letter-spacing:1.5px;color:#879093;font-weight:850}.page-heading h1{font-size:29px;line-height:1.25;margin:5px 0 6px;letter-spacing:-.75px}.page-heading p,.summary-heading p{color:var(--muted);margin:0;font-size:13px}.heading-actions{display:flex;align-items:center;gap:12px}.state-chip{background:#fff9d5;color:#8c6d00;border:1px solid #f5e9a0;padding:6px 11px;border-radius:99px;font-size:11px;font-weight:800}.editor-layout{display:grid;grid-template-columns:minmax(490px,1.25fr) minmax(360px,.85fr);gap:21px;align-items:start}.edit-column,.preview-column{display:flex;flex-direction:column;gap:19px;min-width:0}.panel{background:#fff;border:1px solid var(--border);border-radius:12px;padding:22px;box-shadow:0 2px 9px #26303306}.panel-heading{display:flex;align-items:center;gap:11px;margin-bottom:22px}.panel-heading h2,.preview-heading h2,.summary-heading h2,.backup-feature h2{margin:0;font-size:16px;font-weight:800;letter-spacing:-.2px}.step-num{height:28px;width:28px;border-radius:8px;display:grid;place-items:center;background:#fff3a1;color:#6e6008;font-weight:850;font-size:12px}.panel-with-action{justify-content:space-between;gap:8px}.heading-group{display:flex;gap:11px;align-items:center}.hint{color:var(--muted);font-size:11px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:14px}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-client{grid-template-columns:1.5fr 1fr}label{display:block;font-size:12px;font-weight:700;color:#515a5e;margin:0 0 15px}input:not([type=checkbox]):not([type=file]),textarea,select{display:block;width:100%;padding:10px 11px;margin-top:6px;border:1px solid #d9e0e0;background:#fff;color:var(--text);border-radius:7px;outline:none;min-height:39px;font-weight:450}input:focus,textarea:focus,select:focus{border-color:#b29c00;box-shadow:0 0 0 3px #fff4a0a6}input::placeholder,textarea::placeholder{color:#a3aaad}textarea{resize:vertical}.quick-row{display:flex;align-items:center;gap:8px;margin-top:-1px;margin-bottom:10px}.quick-row select{max-width:290px;margin:0;font-size:12px}.quick-row button{min-height:39px}#itens{display:flex;flex-direction:column;gap:13px}.item{border:1px solid #e5e9e9;border-radius:10px;padding:15px 17px;background:#fafbfb}.item-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.item-head b{font-size:13px}.item-tools{display:flex;gap:4px}.mini-btn{border:1px solid #e0e5e4;color:#536063;border-radius:6px;background:white;padding:5px 7px;display:inline-flex;align-items:center;justify-content:center}.mini-btn .icon{width:15px;height:15px}.mini-btn.danger{color:#ad4343;background:#fffafa;border-color:#f2dada}.item label{margin-bottom:10px}.item-fields{display:grid;grid-template-columns:1fr .65fr 1fr;gap:12px}.item-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding-top:3px}.item-footer button{padding:6px 11px;min-height:31px}.item-total{font-size:12px;color:#687378}.item-total strong{color:#252c2f;font-size:15px;margin-left:5px}.catalog-select{max-width:350px;margin-bottom:12px!important;font-size:12px}.check{display:flex;align-items:center;gap:8px;margin:13px 0 5px;font-weight:650}.check input{margin:0;accent-color:#313d3c;width:16px;height:16px}.product-details{border-top:1px solid #e4e6e6;margin-top:13px;padding-top:15px}.product-details[hidden]{display:none}.photo-preview{display:flex;align-items:center;gap:12px}.photo-preview img{max-width:100px;max-height:100px;object-fit:contain;border-radius:6px}.photo-preview img[hidden],.photo-preview button[hidden]{display:none}.photo-input{font-size:12px;width:100%;margin-top:7px}.discount-inline{display:grid;grid-template-columns:1fr 1fr;gap:12px}.discount-inline select{padding-right:2px}.summary-panel{background:#fff}.summary-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:23px}.summary-icon{width:39px;height:39px;background:#fff8ce;border-radius:10px;display:grid;place-items:center;color:#9f8605}.summary-icon .icon{width:20px;height:20px}.summary-line{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px;color:#707b7f;font-size:12px}.summary-line strong{color:#2d3639;font-size:13px}.grand-total{background:#243034;color:#fff;border-radius:9px;margin-top:18px;padding:17px 18px;display:flex;flex-direction:column;gap:4px}.grand-total span{font-size:12px;color:#d2dadc}.grand-total strong{font-size:27px;color:var(--yellow);letter-spacing:-.5px}.pdf-panel{padding:18px}.preview-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:15px}.preview-state{font-size:10px;color:#707b7f;border:1px solid #dce3e3;background:#f6f8f8;padding:5px 9px;border-radius:99px}iframe{width:100%;height:680px;border:1px solid #dde1e1;background:#f6f6f6;border-radius:6px}.bottom-actions{display:flex;flex-wrap:wrap;gap:9px;padding:0 1px}.status-line{font-size:12px;color:#657378;padding:2px 0;min-height:20px}.status-line.error{color:#a43333}.help{font-size:12px;color:#6c7478;border-top:1px solid #e0e5e5;padding-top:13px}.help summary{cursor:pointer;font-weight:750}.filters{display:flex;gap:14px;align-items:center;margin-bottom:23px}.filters>select{max-width:215px;margin:0}.search-label{position:relative;flex:1;margin:0}.search-label input{margin:0;padding-left:38px!important}.search-label .icon{position:absolute;left:12px;top:11px;color:#8d9798}.table-scroll{overflow-x:auto}.records{border-collapse:collapse;width:100%;font-size:12px;text-align:left}.records th{font-size:11px;color:#7d898c;text-transform:uppercase;letter-spacing:.6px;border-bottom:1px solid var(--border);padding:12px 10px}.records td{padding:14px 10px;border-bottom:1px solid var(--border);vertical-align:middle}.records td strong{display:block;font-size:13px}.records td small{display:block;color:#879194;margin-top:2px}.record-actions{display:flex;gap:5px;flex-wrap:wrap}.record-actions button{padding:7px 9px;min-height:30px}.record-status{min-width:109px;min-height:33px;margin:0!important;padding:5px!important;font-size:12px!important}.empty-state{color:#7f898d;text-align:center;padding:35px 10px}.inline-form{display:grid;grid-template-columns:minmax(250px,1.6fr) minmax(140px,.9fr) auto;gap:12px;align-items:end;border-bottom:1px solid var(--border);margin-bottom:15px}.inline-form button{margin-bottom:15px}.catalog-form{border-bottom:1px solid var(--border);margin-bottom:15px;padding-bottom:17px}.catalog-form button{margin-top:3px}.record-cards .record-card{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:13px 5px;border-bottom:1px solid var(--border)}.record-card strong{display:block;font-size:13px}.record-card small{display:block;color:var(--muted);margin-top:4px}.record-card button{border:1px solid #e8dbdb;border-radius:7px;background:#fff8f8;color:#a43b3b;padding:7px 11px}.backup-panel{max-width:850px}.backup-feature{display:flex;align-items:flex-start;gap:18px;padding:20px 0;border-bottom:1px solid var(--border)}.backup-feature p{margin:7px 0 16px;color:#6f7a7d}.feature-icon{display:grid;place-items:center;width:43px;height:43px;border-radius:11px;background:#fff3ac;color:#514918}.feature-icon .icon{width:21px;height:21px}.file-label{width:max-content;color:#243032;cursor:pointer}.warning{border:1px solid #f5e5af;background:#fffdf4;color:#6d5b24;padding:15px;border-radius:8px;margin-top:22px;font-size:12px}@media(max-width:1220px){.editor-layout{grid-template-columns:1fr}.preview-column{display:grid;grid-template-columns:1fr 1.15fr}.preview-column iframe{height:510px}.sidebar{padding:22px 9px}.workspace{padding:25px 20px}}@media(max-width:820px){.shell{grid-template-columns:1fr}.sidebar{flex-direction:row;align-items:center;overflow-x:auto;padding:9px;gap:3px}.nav-heading,.sidebar-foot{display:none}.nav-link{white-space:nowrap;width:auto;font-size:12px;padding:9px}.workspace{padding:20px 13px}.page-heading{align-items:flex-start;flex-direction:column}.preview-column{grid-template-columns:1fr}.preview-column iframe{height:600px}}@media(max-width:520px){.topbar{padding:0 12px;height:69px}.top-note,.brand-version{display:none}.brand b{font-size:18px}.brand-mark{width:35px;height:35px;font-size:24px}.brand small{font-size:8px}.topbar-actions button{padding:7px 9px;font-size:11px}.panel{padding:15px}.grid,.grid-client,.grid-3,.discount-inline,.item-fields{grid-template-columns:1fr}.quick-row{flex-wrap:wrap}.item{padding:12px}.panel-with-action{flex-wrap:wrap}.inline-form{grid-template-columns:1fr}.filters{flex-wrap:wrap}.filters>select{max-width:none}.grand-total strong{font-size:23px}}

/* v1.2.1 — recuperação dos registros */
.recovery-note{display:flex;gap:12px;align-items:center;padding:13px 15px;background:#f4f7f6;border:1px solid #dae7e1;color:#486657;border-radius:9px;font-size:12px;margin-bottom:18px}.recovery-note .icon{flex:none;color:#29744d}.record-card .btn-outline{color:#185e3e;background:#f2f9f4;border-color:#cce5d5;font-weight:700}.status-line.error{font-weight:650}

/* v1.3.0 — numeração, edição, filtros rápidos e catálogos */
.number-field{display:flex;gap:7px;align-items:center;margin-top:6px}.number-field input{margin-top:0!important;min-width:0;flex:1}.number-field .btn{padding:9px;white-space:nowrap;min-height:39px}.field-hint{display:block;margin-top:4px;color:#7e888c;font-weight:450;font-size:10px}.form-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.inline-form .form-actions{margin-bottom:15px}.inline-form .form-actions button{margin:0}.edit-banner{background:#fff9d8;color:#6b5a00;border:1px solid #ede1a1;border-radius:8px;padding:11px 13px;font-size:12px;margin-bottom:16px}.edit-banner[hidden]{display:none}.catalog-toolbar{display:flex;gap:10px;align-items:center;justify-content:space-between;margin:13px 0 4px}.catalog-toolbar .search-label{max-width:650px;min-width:140px}.match-count{font-size:11px;color:#718084;white-space:nowrap}.record-card .record-buttons{display:flex;gap:7px;flex-wrap:wrap}.record-card .record-buttons .btn-edit{color:#265d6a;background:#eff7f8;border-color:#c6e1e7;font-weight:700}.record-card .record-buttons .btn-danger{color:#a43b3b;background:#fff8f8;border-color:#e8dbdb}.grid-catalog{grid-template-columns:minmax(170px,.7fr) minmax(260px,1.6fr)}.photo-catalog-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:0 0 15px}.photo-catalog-row label{margin:0}.photo-catalog-row img{max-width:70px;max-height:70px;object-fit:contain;border-radius:7px;border:1px solid #e4e8e8}.photo-catalog-row img[hidden],.photo-catalog-row button[hidden]{display:none}.catalog-search-inline{display:flex;gap:7px;align-items:center;margin-bottom:7px!important;max-width:540px}.item .catalog-search-inline input{margin:0}.item .catalog-select{max-width:540px}.record-card small{line-height:1.5}@media(max-width:650px){.grid-catalog{grid-template-columns:1fr}.catalog-toolbar{align-items:stretch;flex-direction:column}.catalog-toolbar .search-label{max-width:none}.inline-form .form-actions{grid-column:auto}.number-field{flex-wrap:wrap}.number-field button{width:100%}}

button[hidden],.form-actions button[hidden]{display:none!important}

.history-extras{display:flex;align-items:end;gap:12px;margin:-8px 0 18px;flex-wrap:wrap}.history-extras label{margin:0;min-width:155px}.history-extras input{margin-top:4px}.history-extras .match-count{margin-left:auto;padding:12px 0}.history-extras .btn{min-height:38px}.catalog-toolbar input[type="search"]{min-height:41px}@media(max-width:620px){.history-extras label{flex:1;min-width:110px}.history-extras .match-count{margin-left:0}}

/* v1.4.0 — painel comercial e validade sem alteração automática de status */
.dashboard-period{display:flex;align-items:center;gap:10px;font-size:12px;color:#556164;font-weight:650}.dashboard-period select{min-width:166px;margin:0}
.dashboard-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:16px}.dashboard-kpi{display:flex;flex-direction:column;gap:10px;min-width:0;padding:22px!important}.dashboard-kpi>span{color:#6b777e;font-size:12px;font-weight:700}.dashboard-kpi>strong{font-size:clamp(22px,2vw,30px);line-height:1.2;letter-spacing:-.7px;overflow-wrap:anywhere}.dashboard-kpi>small{color:#859196;font-size:11px}
.dashboard-columns{display:grid;grid-template-columns:1.1fr 1fr;gap:16px;margin-bottom:16px}.dashboard-hint{font-size:12px;line-height:1.55;color:#758185;margin:7px 0 0}.dashboard-bars{display:flex;flex-direction:column;gap:13px;padding:12px 0 2px}.dashboard-bar-labels{display:flex;justify-content:space-between;font-size:12px;color:#59666b;margin-bottom:5px}.dashboard-bar-labels strong{color:#30383b}.dashboard-bar-track{height:9px;border-radius:9px;background:#edf0f0;overflow:hidden}.dashboard-bar-fill{height:100%;background:#edcc22;border-radius:9px;transition:width .15s ease}
.validity-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:20px 0}.validity-summary>div{background:#f7f8f8;border-radius:10px;padding:16px 10px;display:flex;align-items:center;gap:7px;flex-direction:column;text-align:center}.validity-summary b{font-size:29px;color:#292f33}.validity-summary span{font-size:11px;color:#7c858a}
.validity-badge{display:inline-block;font-size:11px;font-weight:700;white-space:nowrap;padding:5px 9px;border:1px solid #dde4e5;border-radius:20px;color:#57666a;background:#f3f5f5}.validity-badge.is-overdue{color:#9c2826;background:#fff0f0;border-color:#f4cccc}.validity-badge.is-soon{color:#91640c;background:#fff7da;border-color:#ecdca8}.validity-badge.is-today{color:#96500e;background:#fff1dc;border-color:#f0d0a6}.validity-badge.is-valid{color:#476b5e;background:#edf8f2;border-color:#cde7d8}
.dashboard-warnings{font-size:12px;color:#8b5d18;background:#fff9e9;padding:10px;border-radius:8px}.dashboard-warnings[hidden]{display:none}.dashboard-columns .panel{min-width:0}
@media(max-width:1190px){.dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-columns{grid-template-columns:1fr}}
@media(max-width:650px){.dashboard-kpis{grid-template-columns:1fr}.validity-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.validity-summary b{font-size:24px}.dashboard-period{align-items:start;flex-direction:column}.dashboard-period select{min-width:145px}}

/* v1.5.0 — visibilidade do backup e acesso direto ao PDF salvo */
.backup-alert{border:1px solid #cfe6d8;background:#f1f9f4;color:#2a6545;padding:13px 15px;border-radius:9px;font-size:12px;line-height:1.55;font-weight:650;margin-bottom:7px}
.backup-alert-warning{border-color:#e9d7a0;background:#fff9e8;color:#86631b}
.record-actions .btn-outline{color:#285445;background:#eff8f1;border-color:#cfe2d6;font-weight:700}
#abrirImpressao{border-color:#ccd8de}
@media(max-width:520px){.bottom-actions #abrirImpressao{width:100%}}

/* v1.6.0 — importação de produtos via CSV com prévia obrigatória */
.panel-subsection{border:1px solid #dce6e5;background:#f9fbfa;border-radius:12px;padding:19px;margin:24px 0 18px}
.csv-heading{display:flex;gap:20px;align-items:start;justify-content:space-between}.csv-heading h2{font-size:17px;margin:0 0 7px}.csv-heading p{font-size:12px;line-height:1.5;color:#66777c;margin:0;max-width:690px}
.csv-buttons{display:flex;gap:8px;flex-wrap:wrap}.csv-buttons .btn{white-space:nowrap}
.csv-controls{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin:19px 0 9px}
.csv-file-pick{flex:1;min-width:250px;max-width:460px;font-size:12px;font-weight:700;color:#445357}.csv-file-pick input{font-size:12px;background:white;margin-top:7px;padding:11px}
.csv-toggle{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px;font-weight:700;color:#47565b}.csv-toggle input{width:17px;height:17px;accent-color:#205b51;margin:0}.csv-toggle small{font-size:11px;color:#708085;font-weight:400}
.csv-help{margin:12px 0 0;font-size:11px;line-height:1.5;color:#63747b}.csv-preview{margin-top:16px;background:#fff;border:1px solid #dce6e5;border-radius:9px;padding:16px}.csv-preview[hidden]{display:none}
.csv-summary{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:11px}.csv-summary>span{padding:8px 12px;background:#f0f3f3;border-radius:8px;font-size:12px;color:#46585c}.csv-summary b{font-size:18px;margin-right:5px;color:#29373b}.csv-summary .csv-new{background:#eaf6ec}.csv-summary .csv-update{background:#fff7dd}.csv-summary .csv-skip{background:#f4f4f4}
.csv-scroll{max-height:360px;overflow:auto;border:1px solid #edf0f1;border-radius:7px}.csv-scroll .records{min-width:600px}.csv-state{font-weight:700}.csv-state-create{color:#23643e}.csv-state-update{color:#925f00}.csv-state-skip{color:#738086}.csv-footer{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
@media(max-width:900px){.csv-heading{flex-direction:column}.csv-buttons{width:100%}}@media(max-width:650px){.csv-controls{align-items:stretch}.csv-file-pick{max-width:none;min-width:180px}}

/* v1.6.1: orientação clara quando a prévia não pode ser exibida. */
.preview-message{min-height:240px;border:1px dashed #c9d1d5;border-radius:10px;padding:30px 20px;display:flex;align-items:center;justify-content:center;text-align:center;color:#4b5b62;background:#f5f7f8;line-height:1.65;}
.preview-message[hidden],#visualizacao[hidden]{display:none!important;}
