:root,html[data-palette="mercado"][data-theme="light"]{--bg:#fff7f1;--panel:rgba(255,255,255,.95);--panel2:#fffdfb;--text:#1b1735;--muted:#6d6679;--line:#edd8cb;--accent:#17118f;--accent2:#d32627;--highlight:#f86c06;--accent-contrast:#fff;--danger:#b42318;--success:#18794e;--warn:#8a5700;--shadow:0 12px 34px rgba(81,40,14,.10);--radius:18px;color-scheme:light;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif}
html[data-palette="mercado"][data-theme="dark"]{--bg:#111018;--panel:rgba(27,24,36,.96);--panel2:#211e2b;--text:#fffaf7;--muted:#bdb6c6;--line:#3b3544;--accent:#ff7a18;--accent2:#ff5a5c;--highlight:#ff7a18;--accent-contrast:#1b1020;--danger:#ff8176;--success:#57d69b;--warn:#ffd166;--shadow:0 12px 36px rgba(0,0,0,.34);color-scheme:dark}
html[data-palette="classic"][data-theme="light"]{--bg:#f5f7fb;--panel:rgba(255,255,255,.92);--panel2:#fff;--text:#17202d;--muted:#697386;--line:#dfe5ee;--accent:#1967d2;--accent2:#0d4fa6;--highlight:#1967d2;--accent-contrast:#fff;--danger:#b42318;--success:#18794e;--warn:#946200;--shadow:0 12px 34px rgba(20,34,55,.08);color-scheme:light}
html[data-palette="classic"][data-theme="dark"]{--bg:#0f1218;--panel:rgba(25,29,38,.95);--panel2:#171b24;--text:#f5f7fb;--muted:#aab3c2;--line:#303744;--accent:#68a5ff;--accent2:#9bc2ff;--highlight:#68a5ff;--accent-contrast:#071120;--danger:#ff8176;--success:#57d69b;--warn:#ffd166;--shadow:0 12px 36px rgba(0,0,0,.28);color-scheme:dark}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-size:16px;line-height:1.45}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:13px;background:var(--panel2);color:var(--text);padding:13px 14px;min-height:48px;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 17%,transparent)}label{display:grid;gap:7px;font-weight:650;color:var(--text)}label em{font-style:normal;color:var(--muted);font-weight:500;font-size:.78rem}.app-shell{display:grid;grid-template-columns:270px 1fr;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;padding:22px 16px;background:var(--panel);backdrop-filter:blur(18px);border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:20}.brand{display:flex;align-items:center;gap:12px;padding:0 8px 20px}.brand>div:last-child{display:grid}.brand small,.topbar small,.row-card small,.mini-row small{color:var(--muted);display:block}.brand-mark{width:44px;height:44px;border-radius:14px;background:linear-gradient(145deg,var(--accent),var(--accent2));display:grid;place-items:center;color:white;font-weight:850;letter-spacing:.04em;box-shadow:var(--shadow)}.brand-mark.large{width:64px;height:64px;border-radius:20px;margin:auto}.sidebar nav{display:grid;gap:5px}.nav-item{display:flex;align-items:center;gap:12px;padding:12px 13px;border-radius:13px;color:var(--muted);font-weight:650}.nav-item:hover{background:var(--bg);color:var(--text)}.nav-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);padding:18px 13px 5px}.sidebar-foot{margin-top:auto;display:grid;gap:6px}.theme-toggle{border:0;background:transparent;color:var(--muted);text-align:left;padding:12px 13px;cursor:pointer}.main{min-width:0}.topbar{height:72px;border-bottom:1px solid var(--line);background:var(--panel);backdrop-filter:blur(18px);display:flex;align-items:center;gap:12px;padding:0 28px;position:sticky;top:0;z-index:10}.topbar>div:first-of-type{display:grid}.clock{margin-left:auto;color:var(--muted);font-size:.9rem}.content{padding:30px;max-width:1680px;margin:auto}.page-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:20px}.page-head h1{margin:0;font-size:clamp(1.65rem,3vw,2.3rem);letter-spacing:-.035em}.page-head p{margin:6px 0 0;color:var(--muted)}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow);margin-bottom:20px}.card h2{margin-top:0;letter-spacing:-.02em}.form-grid{display:grid;gap:16px}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.money-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.money-grid label{padding:13px;border:1px solid var(--line);border-radius:15px;background:var(--panel2)}.money-grid label span{display:flex;justify-content:space-between;gap:8px}.btn{border:1px solid var(--line);background:var(--panel2);color:var(--text);border-radius:13px;min-height:46px;padding:11px 16px;font-weight:750;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast)}.btn.primary:hover{background:var(--accent2)}.btn.big{min-height:54px;font-size:1.02rem}.btn.small{min-height:38px;padding:8px 12px;font-size:.9rem}.btn:disabled{opacity:.45;cursor:not-allowed}.filters{display:flex;align-items:end;gap:12px;flex-wrap:wrap;background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:14px;margin-bottom:18px}.filters label{min-width:170px}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:16px}table{border-collapse:separate;border-spacing:0;width:100%;min-width:760px;background:var(--panel)}th,td{padding:12px 14px;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap}th:first-child,td:first-child{text-align:left}thead th{position:sticky;top:0;background:var(--panel2);z-index:2;color:var(--muted);font-size:.82rem;text-transform:uppercase;letter-spacing:.04em}tfoot th{background:var(--panel2);font-weight:850}.missing-row{opacity:.7}.badge{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:.78rem;font-weight:800}.badge.info{background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent)}.badge.success{background:color-mix(in srgb,var(--success) 15%,transparent);color:var(--success)}.badge.warn{background:color-mix(in srgb,var(--warn) 15%,transparent);color:var(--warn)}.cards-list{display:grid;gap:10px}.row-card,.mini-row,.revision{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--panel2)}.row-card>div:first-child,.mini-row{min-width:0}.row-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.meta-grid,.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:16px}.meta-grid>div,.summary-cards>div,.status-box{display:grid;gap:5px;padding:15px;border-radius:14px;background:var(--panel2);border:1px solid var(--line)}.meta-grid small,.summary-cards small{color:var(--muted)}.meta-grid strong,.summary-cards strong{font-size:1.18rem}.revision{display:grid;grid-template-columns:1fr auto;align-items:start;margin-bottom:8px}.revision small{grid-column:1/-1;color:var(--muted)}.empty{padding:28px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:16px}.alert{padding:13px 15px;border-radius:13px;margin:0 0 16px;border:1px solid var(--line)}.alert.success{background:color-mix(in srgb,var(--success) 12%,var(--panel));color:var(--success)}.alert.danger{background:color-mix(in srgb,var(--danger) 12%,var(--panel));color:var(--danger)}.alert.info{background:color-mix(in srgb,var(--accent) 10%,var(--panel));color:var(--accent)}fieldset{border:1px solid var(--line);border-radius:14px;padding:14px}.check-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}.check{display:flex;align-items:center;gap:8px;font-weight:550}.check input{width:20px;min-height:20px}.auth-shell,.install-page{min-height:100vh;display:grid;place-items:center;padding:22px;background:radial-gradient(circle at top,var(--panel2),var(--bg) 60%)}.login-card,.install-card{width:min(100%,460px);background:var(--panel);border:1px solid var(--line);border-radius:24px;padding:30px;box-shadow:var(--shadow);text-align:center}.login-card .form-grid,.install-card .form-grid{text-align:left}.login-card h1,.install-card h1{margin-bottom:5px}.login-card p,.install-card p{color:var(--muted)}.install-card{width:min(100%,620px)}.install-card hr{border:0;border-top:1px solid var(--line);width:100%}.offline-banner{display:none;position:fixed;left:50%;bottom:18px;transform:translateX(-50%);z-index:99;background:#2f3542;color:white;border-radius:999px;padding:10px 16px;font-size:.88rem;box-shadow:var(--shadow);max-width:90vw;text-align:center}.is-offline .offline-banner{display:block}.mobile-only{display:none}.icon-btn{border:1px solid var(--line);background:var(--panel2);color:var(--text);width:44px;height:44px;border-radius:12px;font-size:1.2rem}
@media(max-width:980px){.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;left:-290px;width:280px;transition:left .2s ease;box-shadow:var(--shadow)}.sidebar.open{left:0}.mobile-only{display:inline-grid;place-items:center}.content{padding:20px}.topbar{padding:0 18px}.grid-3{grid-template-columns:1fr}.grid-2{grid-template-columns:1fr}.money-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){body{font-size:15px}.content{padding:15px}.topbar{height:64px}.clock{display:none}.card{padding:16px;border-radius:16px}.money-grid{grid-template-columns:1fr}.filters{display:grid;grid-template-columns:1fr}.filters label{min-width:0}.btn{width:100%}.row-card{align-items:flex-start;flex-direction:column}.row-actions{width:100%}.row-actions .btn,.row-actions form{flex:1}.row-actions form .btn{width:100%}.page-head{margin-bottom:14px}.login-card,.install-card{padding:22px}.revision{grid-template-columns:1fr}.revision small{grid-column:auto}}
@media print{.sidebar,.topbar,.filters,.page-head,.btn,.offline-banner{display:none!important}.app-shell{display:block}.content{padding:0}.card{box-shadow:none;border:0;padding:0}.print-area{display:block}body{background:white;color:black}table{min-width:0;font-size:11px}}

.brand{position:relative}
.brand-logo{width:126px;max-height:58px;object-fit:contain;display:block;border-radius:11px;background:#fff;padding:3px;box-shadow:0 5px 18px rgba(0,0,0,.10)}
.login-logo,.install-logo,.offline-logo{display:block;width:min(100%,285px);height:auto;margin:0 auto 18px;border-radius:16px;background:#fff;padding:5px;box-shadow:0 8px 24px rgba(0,0,0,.12)}
.sidebar{border-top:4px solid var(--highlight)}
.topbar{box-shadow:inset 0 2px 0 color-mix(in srgb,var(--highlight) 75%,transparent)}
.appearance-box{display:grid;gap:4px;padding-top:8px;border-top:1px solid var(--line)}
.appearance-box small{padding:0 13px;color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;font-weight:750}
.theme-toggle{border:0;background:transparent;color:var(--muted);text-align:left;padding:10px 13px;border-radius:11px;cursor:pointer;min-height:42px}
.theme-toggle:hover{background:var(--bg);color:var(--text)}
.auth-theme-controls{position:fixed;right:18px;top:18px;z-index:30;display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.auth-theme-controls .theme-toggle{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);padding:9px 12px}
html[data-palette="mercado"] .page-head h1{color:color-mix(in srgb,var(--text) 82%,var(--accent))}
html[data-palette="mercado"] .login-card,html[data-palette="mercado"] .install-card{border-top:4px solid var(--highlight)}
html[data-palette="mercado"] .nav-item:hover{background:color-mix(in srgb,var(--highlight) 8%,var(--panel2))}
html[data-palette="mercado"] .money-grid label:focus-within{border-color:var(--highlight);box-shadow:0 0 0 3px color-mix(in srgb,var(--highlight) 14%,transparent)}
@media(max-width:620px){.brand-logo{width:118px}.auth-theme-controls{position:static;margin:12px 12px 0;justify-content:center}.auth-theme-controls .theme-toggle{width:auto;min-width:145px}.login-logo,.install-logo,.offline-logo{width:min(100%,250px)}}

/* Beta 0.1.3 - identidade compacta GLN, sem fundo/caixa na logomarca */
.brand{display:grid;justify-items:start;gap:5px;padding:2px 8px 18px;overflow:hidden}
.brand-logo{display:block;width:168px!important;height:auto!important;max-width:100%!important;max-height:74px!important;object-fit:contain!important;object-position:left center;background:transparent!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important}
.brand-meta{display:flex;align-items:center;gap:7px;max-width:100%;font-size:.78rem;line-height:1.15;color:var(--muted)}
.brand-meta strong{font-size:.82rem;color:var(--text);font-weight:760}
.brand-meta small{font-size:.68rem;white-space:nowrap}
.login-logo,.install-logo,.offline-logo{display:block;width:min(100%,250px)!important;max-height:118px!important;object-fit:contain!important;height:auto!important;margin:0 auto 18px!important;background:transparent!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important}
@media(max-width:980px){.brand-logo{width:160px!important}}
@media(max-width:620px){.brand-logo{width:150px!important}.login-logo,.install-logo,.offline-logo{width:min(100%,220px)!important;max-height:105px!important}}

/* Beta 0.1.4 - instalacao PWA, permanencia de sessao e lancamentos offline */
.form-help{display:block;color:var(--muted);font-size:.82rem;line-height:1.35;margin-top:-8px;text-align:left}
.remember-check{display:flex;align-items:flex-start;gap:10px;font-weight:650;text-align:left}
.remember-check input{width:22px;height:22px;min-height:22px;flex:0 0 22px;margin-top:1px}
.pwa-login-install{width:100%;margin:14px 0 10px}
.offline-capability-note{border:1px solid color-mix(in srgb,var(--accent) 22%,var(--line));background:color-mix(in srgb,var(--accent) 7%,var(--panel2));color:var(--muted);padding:11px 13px;border-radius:13px;font-size:.9rem;margin:-3px 0 14px}
.toast-host{position:fixed;right:18px;bottom:18px;z-index:150;display:grid;gap:10px;width:min(390px,calc(100vw - 30px));pointer-events:none}
.app-toast{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;padding:13px 15px;color:var(--text);transform:translateY(12px);opacity:0;transition:.2s ease;pointer-events:auto}
.app-toast.show{transform:translateY(0);opacity:1}.app-toast.success{border-left:4px solid var(--success)}.app-toast.danger{border-left:4px solid var(--danger)}.app-toast.info{border-left:4px solid var(--accent)}
.pwa-install-offer{position:fixed;right:18px;bottom:18px;z-index:120;width:min(520px,calc(100vw - 30px));display:grid;grid-template-columns:74px 1fr auto 42px;gap:12px;align-items:center;padding:14px;background:var(--panel);border:1px solid var(--line);border-top:4px solid var(--highlight);border-radius:18px;box-shadow:0 18px 50px rgba(0,0,0,.22);backdrop-filter:blur(18px)}
.pwa-install-offer img{width:74px;height:56px;object-fit:contain}.pwa-install-offer>div{display:grid;gap:3px}.pwa-install-offer strong{font-size:1rem}.pwa-install-offer span{color:var(--muted);font-size:.86rem}.pwa-install-offer .icon-btn{width:38px;height:38px}.pwa-install-offer .btn{white-space:nowrap}
.offline-page-shell{width:min(1180px,100%);margin:auto;padding:26px}.offline-page-head{display:flex;align-items:center;gap:24px;margin-bottom:18px}.offline-page-head .offline-logo{width:220px!important;max-height:100px!important;margin:0!important}.offline-page-head h1{margin:0 0 4px;font-size:clamp(1.7rem,4vw,2.5rem)}.offline-page-head p{margin:0;color:var(--muted)}
.offline-app{padding:20px}.offline-profile{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--panel2);margin-bottom:16px}.offline-profile>div{display:grid;gap:3px}.offline-profile small{color:var(--muted)}
.offline-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}.offline-shell-form{border-top:1px solid var(--line);padding-top:18px}.offline-shell-form h2{margin:0}.offline-queue{border-top:1px solid var(--line);margin-top:22px;padding-top:18px}.offline-queue .section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.offline-queue h2{margin:0}.offline-queue p{margin:3px 0 0;color:var(--muted)}
.offline-pending-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--line);border-radius:13px;padding:12px 13px;background:var(--panel2);margin-bottom:8px}.offline-pending-row>div{display:grid;gap:3px;min-width:0}.offline-pending-row small{color:var(--muted)}.empty.compact{padding:16px}
[data-pwa-pending]{color:var(--warn)!important}
@media(max-width:720px){.pwa-install-offer{left:12px;right:12px;bottom:12px;width:auto;grid-template-columns:56px 1fr 38px}.pwa-install-offer img{width:56px;height:48px}.pwa-install-offer .btn{grid-column:1/-1;width:100%}.pwa-install-offer .icon-btn{grid-column:3;grid-row:1}.offline-page-shell{padding:15px}.offline-page-head{display:grid;gap:8px;text-align:center}.offline-page-head .offline-logo{width:min(100%,210px)!important;margin:0 auto!important}.offline-tabs{display:grid;grid-template-columns:1fr}.offline-queue .section-head{align-items:stretch;flex-direction:column}.offline-pending-row{align-items:flex-start;flex-direction:column}.offline-pending-row .btn{width:100%}.toast-host{left:15px;right:15px;bottom:15px;width:auto}}
@media print{.pwa-install-offer,.toast-host{display:none!important}}

/* Beta 0.1.6 - lançamentos operacionais individuais e edição de usuários */
.section-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.section-head h2{margin:0}.section-head p{margin:4px 0 0;color:var(--muted)}
.form-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.form-actions .btn{min-width:160px}
.operational-single-form textarea{resize:vertical;min-height:112px}.operational-action-card{border-top:3px solid var(--highlight)}
.operational-row{align-items:flex-start}.operational-row>div:first-child{display:grid;gap:4px;min-width:0;flex:1}.operational-description{margin:6px 0 0;color:var(--muted);white-space:normal;overflow-wrap:anywhere;max-width:950px}.operational-detail-description{padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--panel2)}.operational-detail-description small{color:var(--muted);font-weight:700}.operational-detail-description p{margin:7px 0 0;white-space:normal;overflow-wrap:anywhere}.operational-revision .revision-description{grid-column:1/-1;border-top:1px solid var(--line);padding-top:10px}.operational-revision .revision-description p{margin:3px 0 10px;white-space:normal;overflow-wrap:anywhere}.report-description{text-align:left!important;white-space:normal!important;min-width:280px;max-width:560px}.user-active-check{padding:12px 14px;border:1px solid var(--line);border-radius:13px;background:var(--panel2)}
@media(max-width:620px){.section-head{align-items:stretch;flex-direction:column}.section-head .btn{width:100%}.form-actions{display:grid;grid-template-columns:1fr}.form-actions .btn{width:100%;min-width:0}.report-description{min-width:220px}}


/* Beta 0.1.6 - cabecalhos financeiros compactos e quebra inteligente */
.matrix thead th{vertical-align:middle}
.matrix thead th:not(:first-child){white-space:normal!important;text-align:center;min-width:96px;max-width:148px;line-height:1.18;padding-left:10px;padding-right:10px;overflow-wrap:anywhere}
.matrix thead .matrix-header-label{display:inline-block;white-space:normal;line-height:1.18;text-align:center}
.matrix tbody td,.matrix tfoot th:not(:first-child){min-width:96px;text-align:right}
@media(max-width:620px){.matrix thead th:not(:first-child),.matrix tbody td,.matrix tfoot th:not(:first-child){min-width:88px}.matrix thead th:not(:first-child){font-size:.76rem;padding-left:8px;padding-right:8px}}

/* Beta 0.1.6 - correção administrativa do Caixa e leitura compacta */
.matrix-actions{min-width:150px!important;text-align:center!important;white-space:nowrap!important}
.matrix-actions .btn{white-space:nowrap}
.correction-btn{border-color:color-mix(in srgb,var(--warn) 45%,var(--line));}
.correction-auth-card,.correction-edit-card{max-width:1100px}
.security-step{display:flex;align-items:flex-start;gap:16px;margin-bottom:18px;padding:16px;border-radius:16px;background:var(--panel2);border:1px solid var(--line)}
.security-step h2{margin:0 0 5px}.security-step p{margin:0;color:var(--muted);line-height:1.5}
.security-icon{display:grid;place-items:center;width:46px;height:46px;flex:0 0 46px;border-radius:14px;background:color-mix(in srgb,var(--warn) 14%,var(--panel));font-size:1.35rem}
.correction-password-form{max-width:620px}
.readonly-money-grid input[readonly]{cursor:default;opacity:.9;background:var(--panel2)}
.alert.warn{border-color:color-mix(in srgb,var(--warn) 35%,var(--line));background:color-mix(in srgb,var(--warn) 10%,var(--panel));}
@media(max-width:620px){.matrix-actions{min-width:132px!important}.security-step{padding:13px}.correction-btn{width:100%}}
