:root{--bg:#f4f6f8;--panel:#ffffff;--text:#1b2430;--muted:#667085;--line:#d9dee7;--dark:#18202b;--dark2:#101820;--primary:#d97922;--primary2:#b95f16;--gold:#c99a31;--success:#15803d;--danger:#b42318;--blue:#175cd3;--shadow:0 12px 30px rgba(16,24,40,.08);--radius:12px;--field-h:34px;--font:Inter,Segoe UI,Roboto,Arial,sans-serif}
[data-theme="dark"]{--bg:#0f141a;--panel:#151b23;--text:#eef2f6;--muted:#9aa7b7;--line:#293241;--dark:#0a0d12;--dark2:#06080b;--shadow:0 14px 32px rgba(0,0,0,.28)}
*{box-sizing:border-box}body{margin:0;font-family:var(--font);background:var(--bg);color:var(--text);font-size:13px}a{text-decoration:none;color:inherit}.shell{display:flex;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:252px;background:linear-gradient(180deg,var(--dark2),var(--dark));color:#f6f7f9;display:flex;flex-direction:column;border-right:1px solid rgba(255,255,255,.08);z-index:10}.brand{display:flex;align-items:center;gap:10px;padding:12px 12px 8px}.brand img{width:42px;height:42px;object-fit:contain;background:#fff;border-radius:10px;padding:4px}.brand strong{display:block;font-size:15px}.brand small,.profile small,.sidebar-foot small{color:#aab4c2}.profile{margin:0 10px 8px;padding:8px 10px;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:rgba(255,255,255,.04)}.profile span{display:block;font-weight:650}.nav{padding:0 8px 8px;overflow:hidden;flex:1}.nav a,.nav-title{height:30px;width:100%;display:flex;align-items:center;gap:8px;border:0;border-radius:8px;padding:0 9px;background:transparent;color:#d9e1ec;font:inherit;cursor:pointer}.nav a:hover,.nav-title:hover,.nav a.active{background:rgba(217,121,34,.16);color:#fff}.nav i{width:18px;text-align:center;color:#f1a94b}.nav-title b{margin-left:auto;font-size:11px}.nav-items{display:none;padding:2px 0 4px 26px}.nav-group.open .nav-items{display:block}.nav-items a{height:27px;font-size:12px;color:#cdd5df}.sidebar-foot{padding:8px 10px 12px;display:grid;gap:6px;border-top:1px solid rgba(255,255,255,.08)}.sidebar-foot button,.sidebar-foot a{height:30px;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:rgba(255,255,255,.05);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer}.main{margin-left:252px;min-width:0;flex:1;display:flex;flex-direction:column;min-height:100vh}.topbar{height:52px;position:sticky;top:0;background:rgba(244,246,248,.88);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:12px;padding:8px 16px;z-index:4}[data-theme="dark"] .topbar{background:rgba(15,20,26,.88)}#sidebarToggle{display:none}.quick{display:flex;align-items:center;gap:10px;width:100%}.quick input{max-width:360px}.content{padding:16px;flex:1}.footer{height:42px;display:flex;align-items:center;gap:10px;padding:8px 16px;color:var(--muted);border-top:1px solid var(--line);font-size:12px}.footer img{height:22px;max-width:80px;object-fit:contain}.page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}.page-head h1{margin:0;font-size:20px}.page-head p{margin:3px 0 0;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:12px}.card,.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.card{padding:12px}.card span{display:block;color:var(--muted);font-size:12px}.card strong{display:block;font-size:18px;margin-top:4px}.card.accent{border-left:4px solid var(--primary)}.card.gold{border-left:4px solid var(--gold)}.card.red{border-left:4px solid var(--danger)}.card.blue{border-left:4px solid var(--blue)}.card.dark{border-left:4px solid #475467}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.panel{padding:12px}.panel h2{font-size:15px;margin:0 0 10px}.table{width:100%;border-collapse:collapse}.table th,.table td{border-bottom:1px solid var(--line);text-align:left;padding:7px 8px;vertical-align:middle}.table th{font-size:11px;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);background:rgba(102,112,133,.06)}.table.compact th,.table.compact td{padding:5px 7px}.right{text-align:right!important}.actions{display:flex;justify-content:flex-end;gap:5px}.actions form{display:inline}.badge{display:inline-flex;align-items:center;height:22px;border-radius:999px;padding:0 8px;background:rgba(217,121,34,.13);color:var(--primary);font-size:11px;font-weight:650}.badge.ok{background:rgba(21,128,61,.12);color:var(--success)}.badge.danger{background:rgba(180,35,24,.12);color:var(--danger)}.btn{height:32px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--text);padding:0 11px;font-weight:650;cursor:pointer;font-size:12px}.btn.primary{background:linear-gradient(180deg,var(--primary),var(--primary2));border-color:var(--primary2);color:#fff}.btn.light{background:transparent}.btn.danger{border-color:rgba(180,35,24,.25);color:var(--danger)}.btn.mini{height:26px;padding:0 8px;font-size:11px}.btn.full{width:100%}.filters{display:flex;gap:8px;align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:8px;margin-bottom:12px;box-shadow:var(--shadow)}input,select,textarea{width:100%;height:var(--field-h);border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--text);padding:0 9px;font:inherit}textarea{height:auto;padding:8px 9px;resize:vertical}.form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.form-grid label,.form label{display:grid;gap:4px}.form-grid label span,.form label span{font-size:11px;color:var(--muted);font-weight:700}.form-grid .wide{grid-column:1/-1}.check{display:flex!important;align-items:center;gap:8px;padding-top:18px}.check input{width:auto;height:auto}.form-actions{display:flex;gap:8px}.hint{color:var(--muted);font-size:11px}.alert{margin-bottom:12px;padding:10px 12px;border-radius:10px;border:1px solid rgba(21,128,61,.25);background:rgba(21,128,61,.1);color:var(--success)}.alert.error{border-color:rgba(180,35,24,.25);background:rgba(180,35,24,.1);color:var(--danger)}.empty{text-align:center;color:var(--muted);padding:28px}.pagination{display:flex;gap:5px;margin-top:10px}.pagination a{height:28px;min-width:28px;border:1px solid var(--line);border-radius:8px;display:flex;align-items:center;justify-content:center}.pagination a.active{background:var(--primary);border-color:var(--primary);color:#fff}.autocomplete{position:absolute;background:var(--panel);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);z-index:1000;overflow:hidden}.autocomplete button{display:block;width:100%;border:0;background:transparent;color:var(--text);text-align:left;padding:8px 10px;cursor:pointer}.autocomplete button:hover{background:rgba(217,121,34,.12)}.login-page{min-height:100vh;background:radial-gradient(circle at top left,#2a1a0f 0,#0b1017 42%,#06080c 100%);color:#fff}.login-shell{min-height:100vh;display:grid;place-items:center;grid-template-columns:1fr 420px;gap:24px;padding:36px;max-width:1120px;margin:auto}.login-card{width:100%;max-width:420px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:18px;padding:24px;box-shadow:0 30px 80px rgba(0,0,0,.35);backdrop-filter:blur(12px)}.login-brand{display:flex;gap:14px;align-items:center;margin-bottom:18px}.login-brand img{width:70px;height:70px;object-fit:contain;background:#fff;border-radius:16px;padding:6px}.login-brand h1{margin:0}.login-brand p{margin:4px 0 0;color:#c7d0dd}.login-card input{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.18);color:#fff}.dev-line{display:flex;align-items:center;gap:8px;margin-top:18px;color:#c7d0dd;font-size:12px}.dev-line img{height:26px;max-width:90px;object-fit:contain}.login-panel{display:grid;gap:8px;align-content:center}.login-panel strong{font-size:34px;line-height:1.05}.login-panel span{color:#c7d0dd;font-size:16px}@media(max-width:1100px){.cards{grid-template-columns:repeat(3,1fr)}.form-grid{grid-template-columns:repeat(2,1fr)}.grid2{grid-template-columns:1fr}}@media(max-width:760px){.sidebar{transform:translateX(-100%);transition:.2s}.sidebar.open{transform:none}.main{margin-left:0}.topbar{height:50px}#sidebarToggle{display:inline-flex}.cards{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.filters{flex-wrap:wrap}.login-shell{grid-template-columns:1fr;padding:18px}.login-panel{display:none}.footer{height:auto;align-items:flex-start}.table{font-size:12px}}

.mt{margin-top:12px}.mini-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;align-items:end}.mini-form label{display:grid;gap:4px}.mini-form label span{font-size:11px;color:var(--muted);font-weight:700}.mini-form .wide{grid-column:1/-1}.os-summary.cards{grid-template-columns:repeat(4,minmax(0,1fr))}.btn[disabled]{opacity:.55;cursor:not-allowed}@media(max-width:900px){.mini-form{grid-template-columns:1fr}.os-summary.cards{grid-template-columns:1fr 1fr}}
.os-number-link{display:inline-flex;align-items:center;min-height:24px;font-weight:750;color:var(--primary);border-bottom:1px solid rgba(217,121,34,.35)}.os-number-link:hover{color:var(--primary2);border-bottom-color:var(--primary2)}.copy-ok{outline:2px solid rgba(21,128,61,.45)!important;color:var(--success)!important}.doc-header{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;border-bottom:2px solid var(--line);padding-bottom:14px;margin-bottom:16px}.doc-header h1{margin:0;font-size:26px}.doc-header p{margin:5px 0 0;color:var(--muted)}.doc-footer{margin-top:24px;border-top:1px solid var(--line);padding-top:10px;color:var(--muted);font-size:12px}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.compact-info>div{border:1px solid var(--line);border-radius:10px;padding:10px;background:rgba(102,112,133,.04)}.public-page{min-height:100vh;padding:18px;background:linear-gradient(180deg,#f6f7f9,#eef1f5)}.public-card{max-width:760px;margin:0 auto;background:#fff;border:1px solid #d9dee7;border-radius:16px;padding:18px;box-shadow:0 14px 36px rgba(16,24,40,.10)}.public-card.wide{max-width:960px}.public-logo{height:74px;object-fit:contain}.muted{color:var(--muted)}.login-card .login-logo{width:96px;height:96px;object-fit:contain;background:#fff;border-radius:18px;padding:8px;margin-bottom:8px}.login-card h1{margin:0 0 6px}.login-card p{color:#c7d0dd;margin:0 0 14px}.login-form{display:grid;gap:10px}.login-form label{display:grid;gap:5px;color:#dfe5ed;font-weight:700}.client-page{min-height:100vh;background:var(--bg)}.client-top{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 16px;background:var(--panel);border-bottom:1px solid var(--line);box-shadow:var(--shadow)}.client-top img{height:48px;object-fit:contain}.client-top nav{display:flex;gap:8px;flex-wrap:wrap}.client-top nav a{height:30px;display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:8px;padding:0 10px;font-weight:650}.client-main{max-width:1160px;margin:0 auto;padding:16px}.client-footer{max-width:1160px;margin:0 auto;padding:12px 16px;color:var(--muted);font-size:12px}.inline-form{display:flex;gap:6px;align-items:center}.inline-form select{height:26px;min-width:110px}.public-card .table,.print-sheet .table{font-size:12px}@media(max-width:760px){.grid-2{grid-template-columns:1fr}.client-top{align-items:flex-start;flex-direction:column}.client-main{padding:10px}.public-page{padding:10px}}

.cnpj-import-box{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border:1px solid var(--line);background:linear-gradient(180deg,var(--panel),var(--panel2));border-radius:14px;margin-bottom:4px}.cnpj-import-box div{display:flex;flex-direction:column;gap:2px}.cnpj-import-box small{color:var(--muted);font-size:11px}@media(max-width:780px){.cnpj-import-box{align-items:stretch;flex-direction:column}.cnpj-import-box .btn{width:100%;justify-content:center}}
.required-mark{color:var(--danger);font-weight:900;margin-left:3px}.form-error-summary{font-weight:650}.form-grid label.has-error span,.form label.has-error span{color:var(--danger)}.form-grid label.has-error input,.form-grid label.has-error select,.form-grid label.has-error textarea,.form label.has-error input,.form label.has-error select,.form label.has-error textarea{border-color:var(--danger);box-shadow:0 0 0 3px rgba(180,35,24,.12);background:linear-gradient(180deg,var(--panel),rgba(180,35,24,.035))}.field-msg{display:block;color:var(--danger);font-size:11px;font-weight:700;line-height:1.25}.check.has-error{border:1px solid rgba(180,35,24,.35);border-radius:8px;padding:8px;background:rgba(180,35,24,.045)}

/* v2.3.7 - portal access mode and required fields */
:root{--panel2:#f8fafc}
[data-theme="dark"]{--panel2:#101820}
.form-grid label .field-label,.form label .field-label,.mini-form label .field-label{display:inline-flex;align-items:center;gap:3px;min-height:14px}
.form-grid label .required-mark,.form label .required-mark,.mini-form label .required-mark,.required-mark{color:#d92d20!important;font-weight:900!important;font-size:13px!important;line-height:1!important;margin-left:2px;text-shadow:0 0 0 #d92d20}
.form-grid label.has-error .field-label,.form label.has-error .field-label{color:#b42318!important}
.form-grid label.has-error .required-mark,.form label.has-error .required-mark{color:#d92d20!important}
label[data-portal-required] .required-mark.is-hidden{display:none!important}
.field-msg.client-msg{margin-top:-1px}

label[data-portal-login-required] .required-mark.is-hidden,label[data-portal-password-required] .required-mark.is-hidden,label[data-portal-email-required] .required-mark.is-hidden{display:none!important}

/* v2.3.8 - portal cliente */
.btn.ghost{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.16);color:#e6edf6}.btn.ghost:hover{background:rgba(217,121,34,.16);border-color:rgba(217,121,34,.38)}
.portal-login-note{font-size:11px;color:#c7d0dd;margin-top:8px;line-height:1.35}.login-card.portal-card{max-width:420px}

/* v2.3.9 - login unificado ERP/Portal */
.login-card input,.login-card select{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.18);color:#fff}
.login-card select option{color:#111827;background:#fff}
.unified-login-card{max-width:430px}.unified-login-form{gap:10px}.unified-login-form label{display:grid;gap:5px;color:#dfe5ed;font-weight:700}.unified-login-form .field-label{color:#dfe5ed!important;font-size:12px}.unified-login-form input,.unified-login-form select{height:34px}.unified-login-form input::placeholder{color:rgba(230,237,246,.62)}


/* v2.4.0 - Portal do Cliente separado e crédito compartilhado */
.client-page{background:linear-gradient(180deg,#f5f7fb 0%,#eef2f7 100%);color:var(--text)}
.client-top-v2{background:linear-gradient(90deg,#101820,#182332);color:#f8fafc;border-bottom:2px solid rgba(217,121,34,.55)}
.client-brand{display:flex;align-items:center;gap:10px}.client-brand img{height:42px;width:42px;background:#fff;border-radius:10px;padding:4px}.client-brand strong{display:block;font-size:15px}.client-brand small{display:block;color:#b7c2d2;font-size:11px}.client-top-v2 nav a{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.14);color:#eef2f6}.client-top-v2 nav a:hover{background:rgba(217,121,34,.22);border-color:rgba(217,121,34,.45)}
.client-hero{display:flex;justify-content:space-between;align-items:center;gap:14px;background:linear-gradient(135deg,#fff,#f8fafc);border:1px solid var(--line);border-radius:16px;padding:16px;margin-bottom:12px;box-shadow:var(--shadow)}.client-hero h1{margin:2px 0 4px;font-size:22px}.client-hero p{margin:0;color:var(--muted)}.eyebrow{display:inline-flex;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--primary)}.client-cards{grid-template-columns:repeat(4,minmax(0,1fr))}.credit-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.hint-alert{border-color:rgba(217,121,34,.25);background:rgba(217,121,34,.08);color:#7a3d09}.error-state{display:block;text-align:center}.error-state .form-actions{justify-content:center;margin-top:12px}@media(max-width:900px){.client-cards,.credit-cards{grid-template-columns:1fr 1fr}.client-hero{align-items:flex-start;flex-direction:column}}@media(max-width:620px){.client-cards,.credit-cards{grid-template-columns:1fr}}

/* v2.4.1 - link público de acompanhamento da O.S */
.share-box{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end;margin:14px 0;padding:12px;border:1px solid var(--border);border-radius:14px;background:var(--panel-soft,#f7f9fb)}
.share-box strong{grid-column:1/-1;font-size:12px;color:var(--muted)}
.share-box input{width:100%;height:34px;border:1px solid var(--border);border-radius:10px;padding:0 10px;background:var(--input-bg,#fff);color:var(--text)}
.tracking-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:8px;margin:10px 0 18px}
.tracking-step{display:flex;gap:8px;align-items:flex-start;padding:10px;border:1px solid var(--border);border-radius:12px;background:var(--panel-soft,#f7f9fb);opacity:.68}
.tracking-step span{width:12px;height:12px;border-radius:999px;background:#94a3b8;margin-top:3px;flex:0 0 auto}
.tracking-step.active{opacity:1;border-color:rgba(217,132,25,.55);background:rgba(217,132,25,.08)}
.tracking-step.active span{background:#d98419;box-shadow:0 0 0 4px rgba(217,132,25,.16)}
.tracking-step strong{display:block;font-size:12px}.tracking-step small{display:block;color:var(--muted);font-size:11px;margin-top:3px}.doc-link-box{margin:14px 0;padding:10px 12px;border:1px solid #cbd5e1;border-radius:10px;background:#f8fafc;font-size:12px;word-break:break-all}.doc-link-box strong{display:block;margin-bottom:4px}

/* v2.5.0 - relatórios gerenciais */
.report-filters label{display:grid;gap:3px;min-width:138px}.report-filters label span{font-size:10px;color:var(--muted);font-weight:800}.report-filters select{min-width:260px}.report-title-panel h2{margin:0 0 4px}.report-title-panel p{margin:0;color:var(--muted)}.report-cards{grid-template-columns:repeat(6,minmax(0,1fr))}.table-wrap{overflow:auto}.report-table th,.report-table td{white-space:nowrap}.recommendations h2{margin-top:0}.recommendation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.recommendation-grid div{border:1px solid var(--line);background:rgba(102,112,133,.04);border-radius:10px;padding:10px;font-size:12px;color:var(--text)}@media(max-width:1200px){.report-cards{grid-template-columns:repeat(3,1fr)}}@media(max-width:720px){.report-cards,.recommendation-grid{grid-template-columns:1fr}.report-filters select{min-width:100%}}
.nav-subtitle{height:18px;display:flex;align-items:center;padding:4px 9px 2px 0;margin:3px 0 0;color:#f1a94b;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;opacity:.92}.nav-subtitle+ a{margin-top:1px}.report-category-panel{margin-bottom:12px}.report-category-panel p{margin:4px 0 0;color:var(--muted)}.report-filters label{min-width:160px;display:grid;gap:4px}.report-filters label span{font-size:11px;color:var(--muted);font-weight:700}@media(max-width:760px){.report-filters label{min-width:100%;}}


/* v2.5.2 - relatórios por categoria em acordeão e valores restritos */
.nav-report-group{margin:2px 0 3px}.nav-report-title{width:100%;height:24px;border:0;border-radius:7px;background:rgba(255,255,255,.035);color:#f1a94b;display:flex;align-items:center;gap:6px;padding:0 8px 0 0;font:inherit;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.045em;cursor:pointer}.nav-report-title:hover{background:rgba(217,121,34,.13);color:#ffd28f}.nav-report-title b{margin-left:auto;font-size:10px;transition:.16s}.nav-report-group.open .nav-report-title b{transform:rotate(180deg)}.nav-report-items{display:none;padding:2px 0 4px 10px}.nav-report-group.open .nav-report-items{display:block}.nav-report-items a{height:25px;font-size:11.5px;color:#cdd5df;padding-left:8px}.restricted-value{display:inline-flex;align-items:center;height:20px;border-radius:999px;padding:0 8px;background:rgba(102,112,133,.12);color:var(--muted);font-size:11px;font-weight:750}.report-access-note{border:1px solid rgba(217,121,34,.28);background:rgba(217,121,34,.08);border-radius:12px;padding:9px 11px;margin-bottom:12px;color:var(--text);font-size:12px}.report-cards{display:none!important}

/* v2.5.3 - menu com rolagem e relatório personalizado */
.sidebar{height:100vh;height:100dvh;overflow:hidden}.brand,.profile,.sidebar-foot{flex:0 0 auto}.nav{overflow-y:auto!important;overflow-x:hidden!important;min-height:0;scrollbar-width:thin;scrollbar-color:rgba(217,121,34,.55) rgba(255,255,255,.06)}.nav::-webkit-scrollbar{width:8px}.nav::-webkit-scrollbar-track{background:rgba(255,255,255,.05);border-radius:8px}.nav::-webkit-scrollbar-thumb{background:rgba(217,121,34,.55);border-radius:8px}.nav::-webkit-scrollbar-thumb:hover{background:rgba(217,121,34,.75)}.nav-report-group .nav-report-items{max-height:48vh;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin}.nav-report-items::-webkit-scrollbar{width:6px}.nav-report-items::-webkit-scrollbar-thumb{background:rgba(217,121,34,.45);border-radius:8px}.custom-report-builder{display:grid;gap:10px;margin-bottom:12px}.builder-head{display:grid;grid-template-columns:1.2fr 1fr repeat(2,160px);gap:8px;align-items:end}.builder-head label{display:grid;gap:4px}.builder-head label span,.field-picker-title span{font-size:11px;color:var(--muted);font-weight:700}.field-picker{border:1px solid var(--line);background:rgba(102,112,133,.035);border-radius:12px;padding:10px}.field-picker-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.field-picker-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.check.tiny{min-height:28px;padding:5px 7px!important;border:1px solid var(--line);border-radius:8px;background:var(--panel);font-size:11.5px}.check.tiny input{margin:0}.check.tiny span{font-size:11.5px!important;color:var(--text)!important;font-weight:650!important}.custom-report-builder .form-actions{justify-content:flex-start}@media(max-width:1100px){.builder-head{grid-template-columns:1fr 1fr}.field-picker-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.builder-head,.field-picker-grid{grid-template-columns:1fr}.field-picker-title{align-items:flex-start;flex-direction:column}}

/* v2.7.0 - Grupos de usuário e permissões */
.user-group-form .compact-form { margin-bottom: 12px; }
.permission-toolbar { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 0 12px; border-top:1px solid var(--border); margin-top:10px; }
.permission-toolbar > div { display:flex; gap:8px; flex-wrap:wrap; }
.permission-matrix { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:10px; }
.permission-bucket { border:1px solid var(--border); border-radius:14px; background:var(--surface-2); padding:10px; }
.permission-bucket header { display:flex; align-items:flex-start; justify-content:space-between; gap:8px; margin-bottom:8px; }
.permission-bucket header strong { font-size:13px; color:var(--text); }
.permission-bucket header small { font-size:10px; color:var(--muted); text-transform:uppercase; }
.permission-actions { display:grid; grid-template-columns:1fr 1fr; gap:6px; }
.permission-check { display:flex; align-items:center; gap:6px; min-height:28px; padding:5px 6px; border:1px solid var(--border); border-radius:10px; background:var(--surface); font-size:12px; cursor:pointer; }
.permission-check input { width:14px; height:14px; margin:0; }
.permission-check span { line-height:1.15; }
.table td small { display:block; color:var(--muted); font-size:11px; margin-top:2px; }
@media (max-width: 760px) { .permission-actions { grid-template-columns:1fr; } .permission-toolbar { align-items:flex-start; flex-direction:column; } }

.readonly-field textarea{background:rgba(148,163,184,.10);color:var(--text);min-height:88px;white-space:pre-line}


.fiscal-live-help{border:1px solid rgba(180,128,54,.28);background:rgba(255,248,232,.72);padding:14px;border-radius:16px;display:grid;gap:4px}.fiscal-live-help small{color:var(--muted)}
.fiscal-company-filter{margin-bottom:14px}.fiscal-company-filter label{max-width:560px}.fiscal-regime-panel{display:flex;justify-content:space-between;gap:18px;margin-bottom:16px}.fiscal-regime-panel h2{margin:8px 0 4px}.badge{display:inline-flex;align-items:center;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:700}.badge.ok{background:rgba(46,125,50,.12);color:#2e7d32}.badge.warn{background:rgba(191,117,0,.14);color:#9a5d00}.fiscal-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:16px}.fiscal-side{align-self:start;display:grid;gap:8px}.fiscal-side h3{margin:0 0 8px}.fiscal-guide-link{display:grid;gap:3px;padding:11px 12px;border-radius:14px;text-decoration:none;color:var(--text);border:1px solid var(--border);background:var(--card)}.fiscal-guide-link small{color:var(--muted)}.fiscal-guide-link.active{border-color:var(--accent);box-shadow:0 0 0 3px rgba(180,128,54,.13)}.fiscal-guide-link.muted-link{opacity:.76}.fiscal-detail-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.fiscal-detail-head h2{margin:0 0 6px}.fiscal-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px}.fiscal-cards>div{border:1px solid var(--border);border-radius:16px;padding:14px;background:rgba(255,255,255,.42)}.fiscal-cards h3{margin:0 0 10px;font-size:15px}.fiscal-check-list{margin:0;padding-left:18px;display:grid;gap:6px}.muted{color:var(--muted)}
@media(max-width:960px){.fiscal-layout{grid-template-columns:1fr}.fiscal-cards{grid-template-columns:1fr}.fiscal-detail-head{display:grid}}
.fiscal-operational{grid-column:1/-1;border-top:1px solid var(--line);margin-top:4px;padding-top:16px}.fiscal-operational>h3{margin:0 0 4px}.fiscal-operational-group{margin-top:14px}.fiscal-operational-group h4{margin:0 0 8px;font-size:13px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.fiscal-operational-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.fiscal-module-card{display:grid;gap:5px;border:1px solid var(--line);border-radius:12px;padding:11px;background:rgba(102,112,133,.045);color:var(--text)}.fiscal-module-card:hover{border-color:rgba(217,121,34,.45);background:rgba(217,121,34,.08)}.fiscal-module-card strong{font-size:13px}.fiscal-module-card small{color:var(--muted);line-height:1.35}@media(max-width:760px){.fiscal-operational-grid{grid-template-columns:1fr}}


/* v2.7.6 - espaçamento do menu fiscal e importação XML */
.nav a,.nav-title{min-height:32px;height:auto;line-height:1.25;align-items:center;padding-top:6px;padding-bottom:6px;}
.nav-items{padding:4px 0 8px 28px;display:none;}
.nav-group.open .nav-items{display:grid;gap:3px;}
.nav-items a{min-height:34px;height:auto;line-height:1.25;font-size:12px;padding:7px 9px;white-space:normal;word-break:normal;overflow-wrap:anywhere;align-items:flex-start;}
.nav-subtitle{min-height:22px;height:auto;line-height:1.2;margin:7px 0 4px;padding:5px 9px 3px 0;}
.nav-report-items a{min-height:31px;height:auto;line-height:1.25;white-space:normal;overflow-wrap:anywhere;padding-top:6px;padding-bottom:6px;}
.xml-import-panel{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:12px;align-items:center;margin-bottom:12px;}
.xml-import-panel h2{margin:0 0 4px}.xml-import-panel p{margin:0}.xml-import-form{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.xml-import-form input[type=file]{max-width:360px}.xml-items-table td small{display:block;color:var(--muted);font-size:11px;margin-top:2px}.badge.warn{background:rgba(191,117,0,.14);color:#9a5d00}
@media(max-width:900px){.xml-import-panel{grid-template-columns:1fr}.xml-import-form input[type=file]{max-width:100%}}

/* v2.7.7 - pré-importação XML com conferência/editoração antes de salvar */
.nav-group.open .nav-items{gap:6px!important;padding-bottom:10px!important}
.nav-items a{margin-bottom:2px!important}
.xml-preview-panel{margin-bottom:14px;border-color:rgba(217,121,34,.35)}
.xml-preview-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.xml-preview-head h2{margin:0 0 4px}.xml-preview-head p{margin:0;max-width:980px}.xml-preview-summary{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin:10px 0 12px}.xml-preview-summary div{border:1px solid var(--line);border-radius:10px;background:rgba(102,112,133,.045);padding:8px;min-width:0}.xml-preview-summary strong{display:block;font-size:10px;text-transform:uppercase;color:var(--muted);margin-bottom:3px}.xml-preview-summary span{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.xml-preview-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:8px 0 10px}.xml-preview-actions.bottom{margin:12px 0 0}.xml-preview-wrap{max-height:68vh;border:1px solid var(--line);border-radius:12px}.xml-preview-table{min-width:1900px}.xml-preview-table th{position:sticky;top:0;z-index:1}.xml-preview-table td{vertical-align:top;min-width:140px}.xml-preview-table input,.xml-preview-table select,.xml-preview-table textarea{font-size:11px;border-radius:7px}.xml-preview-table input,.xml-preview-table select{height:28px;padding:0 6px}.xml-preview-table textarea{min-height:54px;padding:6px}.xml-origin-cell{min-width:104px}.xml-origin-cell strong{display:block}.xml-origin-cell small,.xml-preview-table small{display:block;color:var(--muted);font-size:10px;margin:3px 0}.xml-mini-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin-top:4px}.xml-mini-grid+ .xml-mini-grid{margin-top:5px}.xml-row-actions{display:grid!important;gap:5px;min-width:120px}.xml-row-actions .btn{width:100%}@media(max-width:1200px){.xml-preview-summary{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.xml-preview-head{display:grid}.xml-preview-summary{grid-template-columns:1fr}.xml-preview-table{min-width:1500px}.xml-preview-wrap{max-height:70vh}}


/* v2.7.11 - portal do cliente: gestão completa de funcionários autorizados */
.employee-editor{margin-bottom:12px}.employee-form-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding-bottom:8px;margin-bottom:2px}.employee-form-heading h2{margin:0;font-size:16px}.employee-form-heading p{margin:3px 0 0;color:var(--muted);font-size:12px}.employee-list-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.employee-list-head h2{margin:0;font-size:15px}.employee-list-head small{color:var(--muted)}.employees-table td{vertical-align:top}.employees-table td strong{display:block}.employees-table td small{display:block;color:var(--muted);font-size:11px;margin-top:2px}.employees-table tr.is-editing{outline:2px solid rgba(217,121,34,.35);outline-offset:-2px;background:rgba(217,121,34,.06)}.employee-actions{display:flex;flex-wrap:wrap;gap:5px;align-items:center}.employee-actions form{margin:0}.employee-actions .btn{white-space:nowrap}.badge.warn{background:rgba(191,117,0,.14);color:#9a5d00}@media(max-width:900px){.employee-form-heading,.employee-list-head{display:grid}.employees-table{display:block;overflow-x:auto}.employee-actions{min-width:220px}}


/* NINO v2.8.0 - itens operacionais no cadastro novo */
.pending-items-panel{border:1px solid var(--line,#d7dee8);border-radius:14px;padding:14px;background:rgba(255,255,255,.03)}
.pending-items-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:12px}
.pending-items-head small{display:block;margin-top:4px;opacity:.75;line-height:1.35}
.pending-items-list{display:grid;gap:10px}
.pending-item-row{display:grid;grid-template-columns:minmax(180px,1.1fr) minmax(220px,1.4fr) minmax(88px,.45fr) minmax(120px,.6fr) auto;gap:10px;align-items:end;padding:10px;border:1px solid var(--line,#d7dee8);border-radius:12px;background:rgba(0,0,0,.03)}
.pending-item-row label{margin:0}.pending-item-row .pending-description{min-width:0}
@media(max-width:980px){.pending-items-head{display:block}.pending-items-head .btn{margin-top:10px}.pending-item-row{grid-template-columns:1fr}.pending-item-row .btn{width:100%}}


/* v2.8.2 - Relatórios com o mesmo padrão visual dos demais menus */
.nav .nav-subtitle{min-height:24px;height:auto;display:flex;align-items:center;padding:7px 9px 4px 8px;margin:6px 0 2px;border-radius:8px;color:#f1a94b;background:rgba(255,255,255,.035);font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.045em;line-height:1.2;}
.nav .nav-subtitle span{display:block;overflow:hidden;text-overflow:ellipsis;}
.nav-items .nav-subtitle + a{margin-top:1px;}
.nav-items a{border-left:2px solid transparent;}
.nav-items a.active{border-left-color:var(--primary);}

.sortable-table th .sort-link{display:flex;align-items:center;gap:6px;color:inherit;text-decoration:none;font-weight:800;white-space:nowrap}.sortable-table th .sort-link span{font-size:.78rem;opacity:.72}.sortable-table th .sort-link:hover{color:var(--primary)}.catalog-thumb{width:58px;height:42px;object-fit:contain;border:1px solid var(--border);border-radius:10px;background:#fff;padding:3px}.nav-items>a{line-height:1.25}.nav-group .nav-items .nav-subtitle,.nav-report-group,.nav-report-title,.nav-report-items{display:none!important}

.product-image-note{font-size:.75rem;color:var(--muted);}


.product-products-table th,.product-products-table td{vertical-align:middle}.product-name-cell{font-weight:700;min-width:220px}.product-real-thumb{width:72px;height:54px;transition:transform .15s ease,border-color .15s ease}.product-real-thumb:hover{transform:scale(1.05);border-color:var(--primary)}.compat-multi{color:var(--primary);font-weight:700;cursor:help}.compat-badge{display:inline-flex;margin-left:6px;min-width:22px;height:20px;align-items:center;justify-content:center;border-radius:999px;background:color-mix(in srgb,var(--primary) 16%,transparent);border:1px solid color-mix(in srgb,var(--primary) 34%,transparent);font-size:.72rem}.product-list-panel{overflow:auto}.product-products-table{min-width:1120px}

/* NINO v2.8.6 - produtos: upload/foto e compatibilidade múltipla */
.product-thumb-placeholder{display:inline-flex;width:72px;height:54px;align-items:center;justify-content:center;border:1px dashed var(--border);border-radius:10px;background:color-mix(in srgb,var(--card) 88%,var(--muted) 12%);color:var(--muted);font-size:.72rem;text-align:center;line-height:1.1;padding:4px;box-sizing:border-box}.product-form-preview{display:block;width:144px;height:108px;object-fit:contain;border:1px solid var(--border);border-radius:12px;background:#fff;padding:6px;margin-top:8px}.product-image-upload-row{display:flex;flex-direction:column;gap:6px}.multi-check-dropdown{position:relative}.multi-check-dropdown summary{cursor:pointer;list-style:none;border:1px solid var(--border);border-radius:12px;background:var(--input-bg);padding:10px 12px;min-height:42px;display:flex;align-items:center;justify-content:space-between}.multi-check-dropdown summary::-webkit-details-marker{display:none}.multi-check-dropdown summary:after{content:'▾';opacity:.72}.multi-check-dropdown[open] summary:after{content:'▴'}.multi-check-panel{position:absolute;z-index:30;top:calc(100% + 6px);left:0;right:0;max-height:320px;overflow:auto;border:1px solid var(--border);border-radius:14px;background:var(--card);box-shadow:0 16px 38px rgba(0,0,0,.18);padding:8px}.multi-check-search{width:100%;margin-bottom:8px}.multi-check-option{display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:10px;cursor:pointer}.multi-check-option:hover{background:color-mix(in srgb,var(--primary) 10%,transparent)}.product-compat-field{position:relative}.product-products-table .product-thumb-placeholder{vertical-align:middle}.product-products-table td:nth-child(3){min-width:88px}.product-products-table .catalog-thumb,.product-real-thumb{width:72px!important;height:54px!important;object-fit:contain;box-sizing:border-box}

/* NINO v2.8.7 - paginação, filtro com foto e pedido de venda operacional */
.simple-pagination{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:12px;padding:10px 12px;background:var(--panel);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}.simple-pagination .page-nav{min-width:auto;height:30px;border:1px solid var(--line);border-radius:8px;display:inline-flex;align-items:center;justify-content:center;padding:0 10px;background:var(--panel);color:var(--text);font-size:12px;text-decoration:none;font-weight:650}.simple-pagination .page-nav:hover{border-color:var(--primary);color:var(--primary)}.simple-pagination .page-nav.disabled{pointer-events:none;opacity:.45}.simple-pagination .page-status{font-size:13px;color:var(--text);padding:0 4px}.simple-pagination .page-range{font-size:12px;color:var(--muted);margin-right:auto}.product-real-thumb{cursor:zoom-in}
.sales-wizard-panel{border:1px solid var(--line,#d7dee8);border-radius:14px;padding:14px;background:rgba(255,255,255,.035)}.sales-items-list{display:grid;gap:10px}.sales-item-row{display:grid;grid-template-columns:minmax(260px,1.45fr) minmax(260px,1.35fr) minmax(75px,.35fr) minmax(115px,.5fr) minmax(115px,.5fr) auto;gap:10px;align-items:end;padding:10px;border:1px solid var(--line,#d7dee8);border-radius:12px;background:rgba(0,0,0,.028)}.sales-item-row label{margin:0}.sales-search-combo{display:grid;grid-template-columns:1fr auto;gap:6px}.sales-product-cell small{display:block;margin-top:4px;color:var(--muted);font-size:11px}.sales-totals-box{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;align-items:start;margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.sales-totals-box>div,.sales-totals-box label{border:1px solid var(--line);border-radius:12px;background:rgba(102,112,133,.045);padding:10px;display:grid;gap:4px}.sales-totals-box span{font-size:11px;color:var(--muted);font-weight:800;text-transform:uppercase}.sales-totals-box strong{font-size:18px}.sales-totals-box small{font-size:11px;color:var(--muted)}.sales-product-results button{display:grid!important;gap:2px;text-align:left}.sales-product-results button strong{font-size:12px}.sales-product-results button small{font-size:11px;color:var(--muted)}@media(max-width:1160px){.sales-item-row{grid-template-columns:1fr 1fr 90px 120px}.sales-item-row .btn{width:100%}.sales-totals-box{grid-template-columns:1fr 1fr}}@media(max-width:760px){.sales-item-row,.sales-totals-box{grid-template-columns:1fr}.sales-search-combo{grid-template-columns:1fr auto}}

/* NINO v2.8.8 - alinhamento visual do formulário de pedido de venda */
.module-form-vendas{align-items:start}.module-form-vendas>label{align-self:start;min-width:0}.module-form-vendas>label>.field-label,.module-form-vendas>label>span:first-child{min-height:16px;line-height:16px}.module-form-vendas input,.module-form-vendas select{min-height:34px}.module-form-vendas textarea{min-height:68px}.module-form-vendas .hint,.module-form-vendas small{line-height:1.25}.module-form-vendas label.wide textarea{width:100%}
.module-form-vendas .sales-wizard-panel{margin-top:2px;padding:14px;border-radius:14px}.module-form-vendas .pending-items-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.module-form-vendas .pending-items-head small{display:block;margin-top:3px;line-height:1.25}.module-form-vendas .sales-item-row{grid-template-columns:minmax(310px,1.35fr) minmax(320px,1.25fr) minmax(82px,.34fr) minmax(140px,.45fr) minmax(140px,.45fr) 86px;gap:10px 12px;align-items:start;padding:12px}.module-form-vendas .sales-item-row label{display:grid;grid-template-rows:16px 34px 18px;gap:5px;margin:0;align-self:start;min-width:0}.module-form-vendas .sales-item-row label>span{height:16px;line-height:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.module-form-vendas .sales-item-row input{height:34px}.module-form-vendas .sales-search-combo{height:34px;display:grid;grid-template-columns:1fr 34px;gap:6px}.module-form-vendas .sales-search-combo .btn{height:34px;padding:0}.module-form-vendas .sales-product-cell small{height:18px;line-height:18px;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.module-form-vendas [data-sales-remove-row]{align-self:start;margin-top:21px;height:34px;min-width:72px}.module-form-vendas .sales-totals-box{grid-template-columns:1fr 1fr 1fr 1fr;align-items:stretch}.module-form-vendas .sales-totals-box>div,.module-form-vendas .sales-totals-box label{min-height:66px}.module-form-vendas .sales-totals-box input{height:34px}.module-form-vendas .form-actions{margin-top:0;align-items:center}
@media(max-width:1280px){.module-form-vendas .sales-item-row{grid-template-columns:minmax(260px,1fr) minmax(260px,1fr) 90px 130px 130px}.module-form-vendas [data-sales-remove-row]{grid-column:auto;width:100%}.module-form-vendas .sales-totals-box{grid-template-columns:1fr 1fr}}@media(max-width:760px){.module-form-vendas .sales-item-row,.module-form-vendas .sales-totals-box{grid-template-columns:1fr}.module-form-vendas [data-sales-remove-row]{margin-top:0}.module-form-vendas .sales-item-row label{grid-template-rows:auto 34px auto}.module-form-vendas .pending-items-head{align-items:stretch;flex-direction:column}}


/* NINO v2.8.9 - grade rígida para pedido de venda e desconto percentual padrão */
.module-form-vendas{
  --sales-field-label-h:18px;
  --sales-field-input-h:36px;
  --sales-field-hint-h:18px;
  gap:12px!important;
  align-items:start!important;
}
.module-form-vendas>label:not(.wide){
  min-height:calc(var(--sales-field-label-h) + var(--sales-field-input-h) + var(--sales-field-hint-h) + 10px);
  display:grid!important;
  grid-template-rows:var(--sales-field-label-h) var(--sales-field-input-h) var(--sales-field-hint-h)!important;
  gap:5px!important;
  align-self:start!important;
  margin:0!important;
  min-width:0!important;
}
.module-form-vendas>label:not(.wide)>span:first-child,
.module-form-vendas>label:not(.wide)>.field-label{
  grid-row:1!important;
  height:var(--sales-field-label-h)!important;
  line-height:var(--sales-field-label-h)!important;
  margin:0!important;
  display:block!important;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.module-form-vendas>label:not(.wide)>input,
.module-form-vendas>label:not(.wide)>select{
  grid-row:2!important;
  height:var(--sales-field-input-h)!important;
  min-height:var(--sales-field-input-h)!important;
  margin:0!important;
}
.module-form-vendas>label:not(.wide)>.hint,
.module-form-vendas>label:not(.wide)>small{
  grid-row:3!important;
  min-height:var(--sales-field-hint-h)!important;
  line-height:1.25!important;
  margin:0!important;
  overflow:hidden;
}
.module-form-vendas>label:not(.wide):not(:has(.hint)):not(:has(small))::after{
  content:' ';
  grid-row:3;
  min-height:var(--sales-field-hint-h);
  display:block;
}
.module-form-vendas>label:has(input[name="order_number"]){grid-column:1!important;grid-row:auto!important;}
.module-form-vendas>label:has([name="customer_id"]){grid-column:2!important;grid-row:auto!important;}
.module-form-vendas>label:has(input[name="seller_name"]){grid-column:3!important;grid-row:auto!important;}
.module-form-vendas>label:has([name="payment_term_id"]){grid-column:4!important;grid-row:auto!important;}
.module-form-vendas>label:has([name="payment_method_id"]){grid-column:1!important;}
.module-form-vendas>label:has(input[name="due_date"]){grid-column:2!important;}
.module-form-vendas>label:has(select[name="status"]){grid-column:3!important;}
.module-form-vendas>label:has(input[name="total"]){grid-column:4!important;}
.module-form-vendas>label:has(input[name="payment_method"]){grid-column:1!important;}
.module-form-vendas>label:has(textarea[name="notes"]){grid-column:1/-1!important;display:grid!important;grid-template-rows:18px auto!important;min-height:0!important;}
.module-form-vendas>label:has(textarea[name="notes"]) textarea{min-height:70px!important;}
.module-form-vendas .sales-wizard-panel{padding:16px!important;margin-top:0!important;}
.module-form-vendas .sales-item-row{
  display:grid!important;
  grid-template-columns:minmax(320px,1.35fr) minmax(340px,1.35fr) 96px 140px 150px 86px!important;
  gap:12px!important;
  align-items:start!important;
  padding:12px!important;
}
.module-form-vendas .sales-item-row label{
  display:grid!important;
  grid-template-rows:18px 36px 18px!important;
  gap:5px!important;
  min-height:77px!important;
  margin:0!important;
  align-self:start!important;
  min-width:0!important;
}
.module-form-vendas .sales-item-row label>span{
  grid-row:1!important;
  height:18px!important;
  line-height:18px!important;
  margin:0!important;
  display:block!important;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.module-form-vendas .sales-item-row label>input,
.module-form-vendas .sales-item-row label>.sales-search-combo{
  grid-row:2!important;
  height:36px!important;
  margin:0!important;
}
.module-form-vendas .sales-item-row label>small{
  grid-row:3!important;
  height:18px!important;
  line-height:18px!important;
  margin:0!important;
  color:var(--muted);
  font-size:11px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.module-form-vendas .sales-search-combo{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 36px!important;
  gap:6px!important;
}
.module-form-vendas .sales-search-combo input,
.module-form-vendas .sales-search-combo .btn,
.module-form-vendas .sales-item-row input{
  height:36px!important;
  min-height:36px!important;
}
.module-form-vendas [data-sales-remove-row]{
  height:36px!important;
  min-width:76px!important;
  margin-top:23px!important;
  align-self:start!important;
}
.module-form-vendas .sales-totals-box{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
  align-items:stretch!important;
  margin-top:16px!important;
}
.module-form-vendas .sales-totals-box>div,
.module-form-vendas .sales-totals-box>label{
  min-height:86px!important;
  display:grid!important;
  align-content:start!important;
  gap:7px!important;
  margin:0!important;
}
.module-form-vendas .sales-totals-box input{height:36px!important;min-height:36px!important;}
.module-form-vendas .sales-discount-card small{line-height:1.25!important;}
@media(max-width:1380px){
  .module-form-vendas .sales-item-row{grid-template-columns:minmax(280px,1fr) minmax(280px,1fr) 90px 130px 130px!important;}
  .module-form-vendas [data-sales-remove-row]{grid-column:1/-1!important;width:max-content!important;margin-top:0!important;justify-self:end!important;}
}
@media(max-width:980px){
  .module-form-vendas{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .module-form-vendas>label:has(input[name="order_number"]),
  .module-form-vendas>label:has([name="customer_id"]),
  .module-form-vendas>label:has(input[name="seller_name"]),
  .module-form-vendas>label:has([name="payment_term_id"]),
  .module-form-vendas>label:has([name="payment_method_id"]),
  .module-form-vendas>label:has(input[name="due_date"]),
  .module-form-vendas>label:has(select[name="status"]),
  .module-form-vendas>label:has(input[name="total"]),
  .module-form-vendas>label:has(input[name="payment_method"]){grid-column:auto!important;}
  .module-form-vendas .sales-totals-box{grid-template-columns:1fr 1fr!important;}
}
@media(max-width:760px){
  .module-form-vendas{grid-template-columns:1fr!important;}
  .module-form-vendas .sales-item-row,.module-form-vendas .sales-totals-box{grid-template-columns:1fr!important;}
  .module-form-vendas [data-sales-remove-row]{grid-column:auto!important;width:100%!important;margin-top:0!important;justify-self:stretch!important;}
}

/* NINO v2.9.0 - layout comercial global para pedidos e propostas */
.module-form-vendas,
.module-form-propostas{
  --sales-field-label-h:18px;
  --sales-field-input-h:36px;
  --sales-field-hint-h:18px;
  gap:12px!important;
  align-items:start!important;
}
.module-form-vendas>label:not(.wide),
.module-form-propostas>label:not(.wide){
  min-height:calc(var(--sales-field-label-h) + var(--sales-field-input-h) + var(--sales-field-hint-h) + 10px);
  display:grid!important;
  grid-template-rows:var(--sales-field-label-h) var(--sales-field-input-h) var(--sales-field-hint-h)!important;
  gap:5px!important;
  align-self:start!important;
  margin:0!important;
  min-width:0!important;
}
.module-form-vendas>label:not(.wide)>span:first-child,
.module-form-vendas>label:not(.wide)>.field-label,
.module-form-propostas>label:not(.wide)>span:first-child,
.module-form-propostas>label:not(.wide)>.field-label{
  grid-row:1!important;
  height:var(--sales-field-label-h)!important;
  line-height:var(--sales-field-label-h)!important;
  margin:0!important;
  display:block!important;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.module-form-vendas>label:not(.wide)>input,
.module-form-vendas>label:not(.wide)>select,
.module-form-propostas>label:not(.wide)>input,
.module-form-propostas>label:not(.wide)>select{
  grid-row:2!important;
  height:var(--sales-field-input-h)!important;
  min-height:var(--sales-field-input-h)!important;
  margin:0!important;
}
.module-form-vendas>label:not(.wide)>.hint,
.module-form-vendas>label:not(.wide)>small,
.module-form-propostas>label:not(.wide)>.hint,
.module-form-propostas>label:not(.wide)>small{
  grid-row:3!important;
  min-height:var(--sales-field-hint-h)!important;
  line-height:1.25!important;
  margin:0!important;
  overflow:hidden;
}
.module-form-propostas>label:has(input[name="proposal_number"]){grid-column:1!important;grid-row:auto!important;}
.module-form-propostas>label:has([name="customer_id"]){grid-column:2!important;grid-row:auto!important;}
.module-form-propostas>label:has(input[name="title"]){grid-column:3!important;grid-row:auto!important;}
.module-form-propostas>label:has(input[name="valid_until"]){grid-column:4!important;grid-row:auto!important;}
.module-form-propostas>label:has(select[name="status"]){grid-column:1!important;grid-row:auto!important;}
.module-form-propostas>label:has(input[name="total"]){grid-column:2!important;grid-row:auto!important;}
.module-form-propostas>label:has(textarea[name="notes"]){grid-column:1/-1!important;display:grid!important;grid-template-rows:18px auto!important;min-height:0!important;}
.module-form-propostas>label:has(textarea[name="notes"]) textarea{min-height:70px!important;}
.module-form-propostas .sales-wizard-panel,
.module-form-vendas .sales-wizard-panel,
.commercial-item-editor.sales-wizard-panel{padding:16px!important;margin-top:0!important;border-radius:14px!important;}
.module-form-propostas .pending-items-head,
.module-form-vendas .pending-items-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;}
.module-form-propostas .pending-items-head small,
.module-form-vendas .pending-items-head small{display:block;margin-top:3px;line-height:1.25;}
.module-form-propostas .sales-item-row,
.module-form-vendas .sales-item-row,
.commercial-item-editor .sales-item-row{
  display:grid!important;
  grid-template-columns:minmax(320px,1.35fr) minmax(340px,1.35fr) 96px 140px 150px 110px!important;
  gap:12px!important;
  align-items:start!important;
  padding:12px!important;
}
.module-form-propostas .sales-item-row label,
.module-form-vendas .sales-item-row label,
.commercial-item-editor .sales-item-row label{
  display:grid!important;
  grid-template-rows:18px 36px 18px!important;
  gap:5px!important;
  min-height:77px!important;
  margin:0!important;
  align-self:start!important;
  min-width:0!important;
}
.module-form-propostas .sales-item-row label>span,
.module-form-vendas .sales-item-row label>span,
.commercial-item-editor .sales-item-row label>span{
  grid-row:1!important;
  height:18px!important;
  line-height:18px!important;
  margin:0!important;
  display:block!important;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.module-form-propostas .sales-item-row label>input,
.module-form-propostas .sales-item-row label>.sales-search-combo,
.module-form-vendas .sales-item-row label>input,
.module-form-vendas .sales-item-row label>.sales-search-combo,
.commercial-item-editor .sales-item-row label>input,
.commercial-item-editor .sales-item-row label>.sales-search-combo{
  grid-row:2!important;
  height:36px!important;
  margin:0!important;
}
.module-form-propostas .sales-item-row label>small,
.module-form-vendas .sales-item-row label>small,
.commercial-item-editor .sales-item-row label>small{
  grid-row:3!important;
  height:18px!important;
  line-height:18px!important;
  margin:0!important;
  color:var(--muted);
  font-size:11px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.module-form-propostas .sales-search-combo,
.module-form-vendas .sales-search-combo,
.commercial-item-editor .sales-search-combo{display:grid!important;grid-template-columns:minmax(0,1fr) 36px!important;gap:6px!important;}
.module-form-propostas .sales-search-combo input,
.module-form-propostas .sales-search-combo .btn,
.module-form-propostas .sales-item-row input,
.module-form-vendas .sales-search-combo input,
.module-form-vendas .sales-search-combo .btn,
.module-form-vendas .sales-item-row input,
.commercial-item-editor .sales-search-combo input,
.commercial-item-editor .sales-search-combo .btn,
.commercial-item-editor .sales-item-row input{height:36px!important;min-height:36px!important;}
.module-form-propostas [data-sales-remove-row],
.module-form-vendas [data-sales-remove-row],
.commercial-add-item-button{height:36px!important;min-width:96px!important;margin-top:23px!important;align-self:start!important;}
.module-form-propostas .sales-totals-box,
.module-form-vendas .sales-totals-box{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important;align-items:stretch!important;margin-top:16px!important;}
.module-form-propostas .sales-totals-box>div,
.module-form-propostas .sales-totals-box>label,
.module-form-vendas .sales-totals-box>div,
.module-form-vendas .sales-totals-box>label{min-height:86px!important;display:grid!important;align-content:start!important;gap:7px!important;margin:0!important;}
.module-form-propostas .sales-totals-box input,
.module-form-vendas .sales-totals-box input{height:36px!important;min-height:36px!important;}
@media(max-width:1380px){
  .module-form-propostas .sales-item-row,
  .module-form-vendas .sales-item-row,
  .commercial-item-editor .sales-item-row{grid-template-columns:minmax(280px,1fr) minmax(280px,1fr) 90px 130px 130px!important;}
  .module-form-propostas [data-sales-remove-row],
  .module-form-vendas [data-sales-remove-row],
  .commercial-add-item-button{grid-column:1/-1!important;width:max-content!important;margin-top:0!important;justify-self:end!important;}
}
@media(max-width:980px){
  .module-form-propostas{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .module-form-propostas>label:has(input[name="proposal_number"]),
  .module-form-propostas>label:has([name="customer_id"]),
  .module-form-propostas>label:has(input[name="title"]),
  .module-form-propostas>label:has(input[name="valid_until"]),
  .module-form-propostas>label:has(select[name="status"]),
  .module-form-propostas>label:has(input[name="total"]){grid-column:auto!important;}
  .module-form-propostas .sales-totals-box,
  .module-form-vendas .sales-totals-box{grid-template-columns:1fr 1fr!important;}
}
@media(max-width:760px){
  .module-form-propostas{grid-template-columns:1fr!important;}
  .module-form-propostas .sales-item-row,
  .module-form-vendas .sales-item-row,
  .commercial-item-editor .sales-item-row,
  .module-form-propostas .sales-totals-box,
  .module-form-vendas .sales-totals-box{grid-template-columns:1fr!important;}
  .module-form-propostas [data-sales-remove-row],
  .module-form-vendas [data-sales-remove-row],
  .commercial-add-item-button{grid-column:auto!important;width:100%!important;margin-top:0!important;justify-self:stretch!important;}
}

/* NINO v2.9.1 - componente único de itens para pedidos, propostas e O.S. */
.unified-items-panel{grid-column:1/-1;border:1px solid var(--line);border-radius:18px;padding:16px;background:linear-gradient(180deg,rgba(217,121,34,.06),rgba(255,255,255,.02));display:grid;gap:14px}.unified-items-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.unified-items-head strong{display:block;font-size:16px}.unified-items-head small{display:block;color:var(--muted);line-height:1.35;margin-top:3px}.unified-search-bar{display:grid;grid-template-columns:180px minmax(0,1fr);gap:10px;align-items:end}.unified-search-field{min-width:0}.unified-search-combo{width:100%}.unified-table-wrap{border:1px solid var(--line);border-radius:14px;background:var(--panel);overflow:auto}.unified-items-table{min-width:980px;margin:0}.unified-items-table th{white-space:nowrap}.unified-items-table td{vertical-align:top}.unified-items-table td:nth-child(1){width:110px}.unified-items-table td:nth-child(2){min-width:220px}.unified-items-table td:nth-child(3){min-width:250px}.unified-items-table td:nth-child(4){width:95px}.unified-items-table td:nth-child(5){width:130px}.unified-items-table td:nth-child(6){width:130px}.unified-items-table td:nth-child(7){width:130px;text-align:right}.unified-items-table input{width:100%;min-height:38px}.unified-items-table strong[data-unified-name]{display:block;line-height:1.25}.unified-items-table small{display:block;color:var(--muted);margin-top:3px}.unified-items-table [data-unified-line-total]{display:block;padding-top:8px}.unified-empty{border:1px dashed var(--line);border-radius:12px;padding:12px;color:var(--muted);background:rgba(102,112,133,.04)}.unified-totals-box{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.unified-totals-box>div,.unified-totals-box>label{border:1px solid var(--line);border-radius:14px;padding:11px;background:var(--panel);min-height:74px}.unified-totals-box span{display:block;color:var(--muted);font-size:12px}.unified-totals-box strong{display:block;font-size:17px;margin-top:5px}.unified-search-results button small{display:block;color:var(--muted);margin-top:3px}.module-table-service_orders .unified-totals-box{grid-template-columns:repeat(5,minmax(0,1fr))}@media(max-width:980px){.unified-search-bar{grid-template-columns:1fr}.unified-totals-box,.module-table-service_orders .unified-totals-box{grid-template-columns:1fr 1fr}.unified-items-panel{padding:12px}}@media(max-width:620px){.unified-totals-box,.module-table-service_orders .unified-totals-box{grid-template-columns:1fr}.unified-items-table{min-width:900px}}

.sales-decision-actions{align-items:stretch;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:12px}.sales-action-help{display:grid;gap:3px;min-width:260px;flex:1}.sales-action-help strong{font-size:13px}.sales-action-help small{color:var(--muted);line-height:1.35}.sales-action-buttons{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;align-items:center}.sales-draft-btn{border-color:rgba(217,121,34,.35);background:rgba(217,121,34,.08)}@media(max-width:760px){.sales-action-buttons{justify-content:flex-start}.sales-action-buttons .btn{width:100%}}

/* v2.9.3 - operação demonstrativa, estoque mínimo/máximo e sugestão de compra */
.page-actions{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;justify-content:flex-end}
.inline-action-form{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin:0}
.purchase-suggestion-form select{min-width:180px}
.stock-summary{display:flex;flex-direction:column;gap:.15rem;min-width:150px}
.stock-summary small{color:var(--muted);font-size:.78rem;line-height:1.25}
.stock-summary.baixo strong{color:#9a5b00}
.stock-summary.excedente strong{color:#0f5e7a}
.badge.warn{background:#fff3cd;color:#7a4b00;border:1px solid #f5d27a}
.badge.info{background:#e6f4ff;color:#075985;border:1px solid #9ed8ff}
.badge.ok{background:#e9f8ef;color:#166534;border:1px solid #9ad7ae}
.cash-session-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px}.cash-session-strip div{padding:8px;border:1px solid var(--line);border-radius:10px;background:rgba(102,112,133,.05)}.cash-session-strip span,.cash-summary-list span,.cash-values span{display:block;color:var(--muted);font-size:11px;font-weight:700}.cash-session-strip strong,.cash-summary-list strong,.cash-values strong{display:block;margin-top:3px}.cash-lookup-form{display:grid;grid-template-columns:2fr 1fr auto;gap:9px;align-items:end}.cash-doc-choice{display:flex;gap:8px;flex-wrap:wrap}.cash-document-grid{margin-bottom:12px}.cash-summary-list,.cash-values{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.cash-summary-list div,.cash-values div{border:1px solid var(--line);border-radius:10px;padding:9px;background:rgba(102,112,133,.05)}.cash-values .balance{border-color:rgba(217,121,34,.35);background:rgba(217,121,34,.08)}.cash-values .balance strong{font-size:20px;color:var(--primary)}.cash-payment-helper{padding:8px 10px;border-radius:10px;background:rgba(21,128,61,.08);border:1px solid rgba(21,128,61,.18);color:var(--success);margin-bottom:10px}.cash-method-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.cash-total-line{margin:10px 0;display:flex;justify-content:space-between;align-items:center;border:1px solid var(--line);border-radius:10px;padding:10px;background:rgba(102,112,133,.05)}.cash-total-line span{font-weight:700;color:var(--muted)}.cash-total-line strong{font-size:18px}.cash-payment-over .cash-total-line{border-color:rgba(180,35,24,.35);background:rgba(180,35,24,.08)}.cash-payment-partial .cash-total-line{border-color:rgba(217,121,34,.35);background:rgba(217,121,34,.08)}.table-wrap{overflow:auto}@media(max-width:900px){.cash-session-strip,.cash-lookup-form,.cash-method-grid{grid-template-columns:1fr}.cash-summary-list,.cash-values{grid-template-columns:1fr}}

/* v2.9.8 - paginação compacta com salto direto */
.compact-pagination{gap:4px!important;justify-content:flex-start}.compact-pagination .page-nav{height:28px;padding:0 9px}.compact-pagination .page-range{margin-right:0!important;margin-left:4px}.page-jump{display:inline-flex;align-items:center;gap:4px;margin:0 4px;color:var(--text);font-size:12px;font-weight:650}.page-jump input{width:62px;height:28px;text-align:center;padding:0 6px}.page-jump span{white-space:nowrap}@media(max-width:760px){.compact-pagination{align-items:flex-start}.compact-pagination .page-range{width:100%;margin-left:0}.page-jump input{width:58px}}


/* v2.9.9 - paginação em linha única com botões agrupados */
.pagination-inline-compact{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important;flex-wrap:wrap!important;width:fit-content!important;max-width:100%!important;padding:10px 12px!important}
.pagination-inline-compact .page-nav-group{display:inline-flex!important;align-items:center!important;gap:6px!important;flex:0 0 auto!important;white-space:nowrap!important}
.pagination-inline-compact .page-nav{flex:0 0 auto!important;height:30px!important;padding:0 10px!important;margin:0!important;white-space:nowrap!important}
.pagination-inline-compact .page-jump{display:inline-flex!important;align-items:center!important;gap:5px!important;margin:0!important;flex:0 0 auto!important;white-space:nowrap!important}
.pagination-inline-compact .page-jump input{width:68px!important;height:30px!important;text-align:center!important}
.pagination-inline-compact .page-range{margin:0!important;width:auto!important;flex:0 0 auto!important;white-space:nowrap!important}
@media(max-width:760px){.pagination-inline-compact{width:100%!important}.pagination-inline-compact .page-nav-group,.pagination-inline-compact .page-jump,.pagination-inline-compact .page-range{width:auto!important}.pagination-inline-compact .page-nav-group{flex-wrap:wrap!important}.pagination-inline-compact .page-range{white-space:normal!important}}

/* v2.10.2 - Parâmetros do Sistema e Autorizações de desconto */
.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;margin-top:14px}.settings-card{border:1px solid var(--border,#d9e1ec);border-radius:14px;padding:14px;background:rgba(255,255,255,.72)}.settings-card h2{font-size:15px;margin:0 0 12px}.settings-card label{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}.setting-check{flex-direction:row!important;align-items:center;gap:10px}.setting-check input{width:auto}.discount-approval-reason{display:block;margin-top:12px}.discount-approval-reason textarea{width:100%;min-height:54px}.discount-approvals-table td small{display:block;color:var(--muted,#667085);margin-top:3px}.approval-actions{display:grid;grid-template-columns:minmax(180px,1fr) auto auto;gap:6px;align-items:center}.badge.danger{background:#fee2e2;color:#991b1b;border-color:#fecaca}.badge.warn{background:#fef3c7;color:#92400e;border-color:#fde68a}.badge.ok{background:#dcfce7;color:#166534;border-color:#bbf7d0}@media(max-width:800px){.approval-actions{grid-template-columns:1fr}.settings-grid{grid-template-columns:1fr}}
/* v2.10.4 - Dashboard personalizável e diagnóstico com versão */
.actions-inline{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.dashboard-settings-form .settings-grid{align-items:stretch}
.diagnostics-version h2{margin-top:0}
.diagnostics-cards{display:flex;gap:12px;flex-wrap:wrap}
.diag-card{border:1px solid var(--border);border-radius:12px;padding:12px 16px;min-width:220px;background:var(--surface-soft)}
.diag-card span{display:block;color:var(--muted);font-size:.85rem;margin-bottom:4px}
.diag-card strong{font-size:1.1rem}
@media (max-width:720px){.actions-inline{justify-content:flex-start}.diagnostics-cards{display:block}.diag-card{margin-bottom:10px}}


/* v2.10.7 - QR Code do app autenticador */
.two-factor-qr-card{display:flex;align-items:center;gap:16px;margin-top:12px;padding:14px;border:1px solid var(--border,#d8e0ee);border-radius:14px;background:rgba(255,255,255,.88);box-shadow:0 8px 22px rgba(15,23,42,.06)}
.two-factor-qr-image{display:flex;align-items:center;justify-content:center;width:238px;min-width:238px;padding:8px;border-radius:12px;background:#fff;border:1px solid #e5eaf3}
.two-factor-qr-image img{display:block;width:220px;height:220px;object-fit:contain}
.two-factor-qr-info{display:flex;flex-direction:column;gap:6px;min-width:220px;color:var(--text,#0f172a)}
.two-factor-qr-info code{display:inline-block;width:max-content;max-width:100%;padding:8px 10px;border:1px dashed #b8c4d6;border-radius:10px;background:#f8fafc;font-size:13px;white-space:normal;word-break:break-word;color:#0f172a}
.manual-secret-label{font-size:12px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.04em;margin-top:4px}
.two-factor-app-note{display:flex;flex-direction:column;gap:4px;padding:12px;border:1px solid #c7d2fe;border-radius:12px;background:#eef2ff;color:#1e293b}
.two-factor-app-note small{color:#475569}
@media (max-width:720px){.two-factor-qr-card{flex-direction:column;align-items:flex-start}.two-factor-qr-image{width:100%;min-width:0}.two-factor-qr-image img{width:210px;height:210px}}
/* v2.10.9 - Estado inicial ao desativar 2FA por app */
.two-factor-secret-disabled{opacity:.78}
.two-factor-secret-disabled .two-factor-qr-card{display:none!important}


/* v2.11.1 - Temas Claro/Escuro aplicados globalmente */
:root{
  color-scheme:light;
  --border:var(--line);
  --surface:var(--panel);
  --surface-soft:#f7f9fc;
  --panel-soft:#f7f9fc;
  --panel2:#f8fafc;
  --input-bg:var(--panel);
  --text-strong:#111827;
  --warning-bg:#fff7e6;
  --warning-text:#7a4b00;
  --info-bg:#e6f4ff;
  --info-text:#075985;
  --ok-bg:#e9f8ef;
  --ok-text:#166534;
  --danger-bg:#fee2e2;
  --danger-text:#991b1b;
}
[data-theme="dark"]{
  color-scheme:dark;
  --border:var(--line);
  --surface:var(--panel);
  --surface-soft:#101820;
  --panel-soft:#111923;
  --panel2:#101820;
  --input-bg:#111923;
  --text-strong:#f8fafc;
  --warning-bg:rgba(217,121,34,.16);
  --warning-text:#f6b45e;
  --info-bg:rgba(23,92,211,.18);
  --info-text:#8db7ff;
  --ok-bg:rgba(21,128,61,.16);
  --ok-text:#8ee2a8;
  --danger-bg:rgba(180,35,24,.18);
  --danger-text:#ffb4ab;
}
.theme-toggle,.client-theme-toggle{height:30px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--text);display:inline-flex;align-items:center;justify-content:center;padding:0 10px;font:inherit;font-weight:650;cursor:pointer;white-space:nowrap}.client-theme-toggle{background:transparent}.theme-toggle:hover,.client-theme-toggle:hover{border-color:rgba(217,121,34,.45);color:var(--primary)}
[data-theme="dark"] .table th{background:rgba(255,255,255,.04)}
[data-theme="dark"] .table td{border-bottom-color:var(--line)}
[data-theme="dark"] input,[data-theme="dark"] select,[data-theme="dark"] textarea{background:var(--input-bg);border-color:var(--line);color:var(--text)}
[data-theme="dark"] input::placeholder,[data-theme="dark"] textarea::placeholder{color:#768397}
[data-theme="dark"] .btn{background:var(--panel);border-color:var(--line);color:var(--text)}
[data-theme="dark"] .btn.light{background:transparent}
[data-theme="dark"] .filters,[data-theme="dark"] .panel,[data-theme="dark"] .card,[data-theme="dark"] .unified-table-wrap{background:var(--panel);border-color:var(--line)}
.settings-card,.diag-card,.compact-info>div,.cash-session-strip div,.cash-summary-list div,.cash-values div,.cash-total-line,.sales-totals-box>div,.sales-totals-box label,.unified-empty{background:var(--surface-soft)!important;border-color:var(--line)!important;color:var(--text)}
[data-theme="dark"] .unified-items-panel{background:linear-gradient(180deg,rgba(217,121,34,.10),rgba(21,27,35,.64))}
[data-theme="dark"] .public-page{background:linear-gradient(180deg,var(--bg),#0b1118)}
.public-card{background:var(--panel)!important;border-color:var(--line)!important;color:var(--text)!important}.public-card .table{color:var(--text)}
.client-page{background:var(--bg);color:var(--text)}.client-top{background:var(--panel)!important;border-color:var(--line)!important;color:var(--text)}.client-top nav a,.client-top nav button{color:var(--text)}.client-top nav a:hover,.client-top nav button:hover{background:rgba(217,121,34,.10)}.client-footer{color:var(--muted)}
[data-theme="dark"] .client-top{box-shadow:0 14px 32px rgba(0,0,0,.22)}
.badge.warn{background:var(--warning-bg)!important;color:var(--warning-text)!important;border-color:rgba(217,121,34,.35)!important}.badge.info{background:var(--info-bg)!important;color:var(--info-text)!important;border-color:rgba(23,92,211,.35)!important}.badge.ok{background:var(--ok-bg)!important;color:var(--ok-text)!important;border-color:rgba(21,128,61,.35)!important}.badge.danger{background:var(--danger-bg)!important;color:var(--danger-text)!important;border-color:rgba(180,35,24,.35)!important}
.two-factor-qr-card{background:var(--panel)!important;border-color:var(--line)!important;color:var(--text)!important}.two-factor-qr-info{color:var(--text)!important}.two-factor-qr-info code{background:var(--surface-soft)!important;border-color:var(--line)!important;color:var(--text)!important}.two-factor-app-note{background:var(--info-bg)!important;border-color:rgba(23,92,211,.35)!important;color:var(--text)!important}.two-factor-app-note small{color:var(--muted)!important}.manual-secret-label{color:var(--muted)!important}
[data-theme="dark"] .login-card{background:rgba(21,27,35,.78);border-color:rgba(255,255,255,.12)}[data-theme="light"] .login-page{background:radial-gradient(circle at top left,#fff4e8 0,#f7f9fc 44%,#eef2f7 100%);color:var(--text)}[data-theme="light"] .login-card{background:rgba(255,255,255,.9);border-color:var(--line);color:var(--text)}[data-theme="light"] .login-card input{background:var(--panel);border-color:var(--line);color:var(--text)}[data-theme="light"] .login-form label{color:var(--text)}[data-theme="light"] .login-card p,[data-theme="light"] .login-panel span,[data-theme="light"] .dev-line{color:var(--muted)}
.print-body{background:var(--bg)!important;color:var(--text)}[data-theme="dark"] .print-sheet{background:var(--panel);border-color:var(--line);color:var(--text)}
