/* Área operacional com a mesma linguagem visual do painel de gerenciamento. */
body:has(#workspace:not([hidden])){background:#f4f6fb;color:#0c265a}
#workspace{--ui-text:#0c265a;--ui-muted:#72809c;--ui-border:#dce4f0;--ui-surface:#fff;--ui-soft:#f8faff;--ui-head:#eff3fa;--navy:#0c265a;--line:#dce4f0}
body:has(#workspace:not([hidden])) #workspace,
body:has(#workspace:not([hidden])) #workspace:has(#home:not([hidden])){background:transparent;border:0;border-radius:0;padding:0;min-width:0}
#workspace :is(.home-heading,.dashboard-heading,.editor-heading){margin:0 0 28px;gap:16px}
#workspace h1.site-title{font-size:30px!important;font-weight:500!important;letter-spacing:-1px!important;line-height:1.3!important;color:#0c265a}
#workspace :is(.home-heading,.dashboard-heading,.editor-heading) p{font-size:12px;line-height:1.8;color:#72809c}
#workspace :is(.panel,.chart-panel,.filter-panel,.site-section-panel){border:1px solid #dce4f0;border-radius:10px;background:#fff;box-shadow:none;padding:24px;margin-bottom:20px;min-width:0}
#workspace .site-section-panel>.site-section{margin:0}
#workspace .site-section-panel{border-color:#dce4f0!important;padding:24px!important}
#workspace .invoice-summary{border-color:#dce4f0;border-radius:10px;padding:24px}
#workspace .site-section[open]>.site-section-body,#workspace .invoice-stage[open]>.invoice-stage-content{padding-top:0}
#workspace :is(.site-section,.invoice-stage)>summary{min-height:32px;gap:12px;margin:0}
#workspace :is(.site-section,.invoice-stage)[open]>summary{padding-bottom:20px;border-bottom:1px solid #edf0f6;margin-bottom:20px}
#workspace :is(.site-section,.invoice-stage)>summary .site-title{font-size:17px!important;font-weight:400!important;letter-spacing:-.2px!important;color:#0c265a}
#workspace .invoice-step-number{background:#0c265a;border:0;width:28px;height:28px;flex:0 0 28px;font-size:12px;font-weight:400}
#workspace :is(.site-info-button,.invoice-info-button){width:18px;height:18px;min-width:18px;min-height:18px;border-color:#94a7c6;color:#6681aa;font-size:11px;background:transparent}
#workspace .site-expand-icon{color:#72809c}
#workspace .site-section-body>:last-child{margin-bottom:0}
#workspace :is(h2,h3):not(.site-title){color:#0c265a;letter-spacing:-.2px}

/* Indicadores: rótulos discretos e valores com o mesmo peso do gerenciamento. */
#home .home-summary-group{gap:18px}
#home .stats{gap:16px}
#home .stats>div,#workspace .metric,#workspace .cash-stats>.panel,#workspace .finance-card{padding:22px;border-color:#dce4f0;border-radius:8px;background:#fff;margin-bottom:0}
#home .stats span,#workspace .metric>span,#workspace .cash-stats>.panel>span{font-size:11px;font-weight:400;letter-spacing:0;color:#72809c;line-height:1.6;text-transform:none;border:0;padding:0}
#home .stats strong,#workspace .metric strong,#workspace .cash-stats strong{font-size:29px;font-weight:500;text-align:left;letter-spacing:-1px;line-height:1.3;color:#0c265a}
#home .stats>div{gap:16px;justify-content:space-between}
#home .home-shortcuts{padding:12px;border:1px solid #dce4f0;border-radius:8px;background:#fff;gap:10px}
#home .home-shortcuts>button{min-height:60px;font-size:12px;font-weight:500;border-radius:6px}
#home #open-analytics{background:#eef3fb;color:#0c265a;border:1px solid #dce4f0}
#home #new{background:#0c265a;color:#fff;border:1px solid #0c265a}
#workspace .analytics-metrics,#workspace .cash-stats{gap:16px}

/* Tabelas e listas mantêm as cores que indicam o estado de cada registro. */
#workspace .registry-display{border-color:#dce4f0;border-radius:8px;box-shadow:none}
#workspace .registry-display :is(th,td){padding:16px 18px;border-color:#edf0f6;font-size:11px;line-height:1.6}
#workspace .registry-display th{background:#eff3fa;color:#7185a9;font-size:9px;letter-spacing:.4px;font-weight:400}
#workspace #invoice-history .invoice-history-table :is(th,td):last-child{width:200px;min-width:200px;box-sizing:border-box;text-align:right}
#workspace #invoice-history .invoice-history-table .invoice-history-actions{width:100%;min-width:0;gap:8px;justify-content:flex-end}
#workspace :is(.record-row,.draft-row){border-color:#dce4f0;border-radius:8px;background:#fff;box-shadow:none}
#workspace .record-row .record{padding:18px}
#workspace .draft-row{padding:18px}
#workspace .record-actions{border-color:#edf0f6}
#workspace :is(.record-main,.record-identity,.customer-identity) strong{font-weight:500}
#workspace :is(.empty,.muted,.draft-note){color:#72809c}
#workspace :is(#table-count,#invoice-selection-count,#invoice-batch-count,#customers-count){font-size:10px;color:#667991;background:#f2f5fa;border:1px solid #e0e7f2;border-radius:5px;padding:6px 9px}
#workspace :is(.today-search-toolbar,.table-tools,.customer-directory-toolbar){gap:14px}

/* Campos, filtros e áreas de apoio. Os campos obrigatórios conservam seu aviso. */
#workspace :is(.fields,.finance-filters,.filter-panel,.chart-controls) label{color:#72809c;font-size:12px;font-weight:400;line-height:1.6}
#workspace :is(.fields,.finance-filters,.filter-panel,.chart-controls) :is(input,select,textarea,.campo-menu-trigger):not([type=checkbox]):not(.menu-campo-original){border-color:#dce4f0;border-radius:6px;box-shadow:none}
#workspace :is(.site-search-control,.search){background:#f8faff;border-color:#dce4f0;border-radius:6px}
#workspace :is(.chart-controls,.cash-value-option,.invoice-details,#invoice-defaults){border-color:#dce4f0;border-radius:8px;background:#f8faff}
#workspace .chart-controls{padding:14px}
#workspace #analytics .table-tools>.chart-controls{padding:0;border:0;border-radius:0;background:transparent}
#workspace #analytics .chart-grid{gap:20px}
#workspace #analytics .chart-grid>.panel{margin:0}
#workspace :is(.filter-panel,.chart-panel) .chart-controls{margin-bottom:20px}
#workspace :is(.fields,.finance-filters,.filter-panel,.chart-controls) :is(input,select,textarea,.campo-menu-trigger):not(.menu-campo-original):focus-visible{outline:2px solid #6c96df;outline-offset:2px}
#workspace :is(.laudo-dropzone,#laudo-soltar){border-color:#c8d6ed;border-radius:8px;background:#f8faff;color:#72809c}
#workspace :is(.laudo-dropzone,#laudo-soltar):hover{background:#eef3fb;border-color:#91add6}
#workspace :is(.laudo-dropzone,#laudo-soltar) strong{color:#0c265a;font-weight:500}

/* Ações principais azuis; emissão/salvamento em lote e exclusão mantêm suas cores. */
#workspace button.primary:not(.action-icon,.invoice-icon,.invoice-icon-only,.laudo-icone,.invoice-emit-button,.danger,.delete-button,.cash-erase-action,#cash-save-all,#laudo-salvar-todas,#invoice-emit-selected,#delete){background:#0c265a;border-color:#0c265a;color:#fff;font-weight:500}
#workspace button.secondary:not(.action-icon,.invoice-icon,.invoice-icon-only,.laudo-icone,.password-visibility){border-color:#dce4f0;background:#fff;color:#0c265a;font-weight:400}
#workspace button.secondary:not(.action-icon,.invoice-icon,.invoice-icon-only,.laudo-icone):hover{background:#eef3fb}
#workspace #invoices-view button:is(.invoice-emit-button,#invoice-emit-selected):is(:hover,:focus-visible,.brilho-ativo):not(:disabled){color:#fff!important}
#workspace button:disabled{cursor:not-allowed}
#workspace button:is(.primary,.secondary):not(.action-icon,.invoice-icon,.invoice-icon-only,.laudo-icone){padding-inline:18px}

/* Rodapé leve, alinhado ao conteúdo, preservando a identificação da loja. */
body:has(#workspace:not([hidden]))>.site-footer{background:transparent;border:0;border-top:1px solid #dce4f0;border-radius:0;box-shadow:none;padding:0}
body:has(#workspace:not([hidden]))>.site-footer::before{display:none}
.site-footer .footer-content{min-height:90px;padding:22px 0}
.site-footer .footer-store-info{font-size:11px;color:#72809c}

@media(min-width:761px){
 body:has(#workspace:not([hidden])) #workspace,body:has(#workspace:not([hidden])) #workspace:has(#home:not([hidden])){margin:38px 40px 0 calc(var(--menu-width) + 40px)}
 body:has(#workspace:not([hidden]))>.site-footer{margin:24px 40px 0 calc(var(--menu-width) + 40px)}
}
@media(min-width:761px) and (max-width:1100px){
 body:has(#workspace:not([hidden])) #workspace,body:has(#workspace:not([hidden])) #workspace:has(#home:not([hidden])){margin:28px 24px 0 calc(var(--menu-width) + 24px)}
 body:has(#workspace:not([hidden]))>.site-footer{margin-inline:calc(var(--menu-width) + 24px) 24px}
}
@media(max-width:760px){
 #workspace #analytics .chart-grid{gap:16px}
 body:has(#workspace:not([hidden])) #workspace,body:has(#workspace:not([hidden])) #workspace:has(#home:not([hidden])){margin:24px 16px 0;padding:0}
 #workspace h1.site-title{font-size:26px!important}
 #workspace :is(.panel,.chart-panel,.filter-panel,.site-section-panel){padding:20px 16px;margin-bottom:16px}
 #workspace .site-section-panel{padding:20px 16px!important}
 #workspace .invoice-summary{padding:20px 16px}
 #workspace :is(.site-section,.invoice-stage)>summary .site-title{font-size:15px!important}
 #workspace :is(.site-section,.invoice-stage)[open]>summary{padding-bottom:16px;margin-bottom:16px}
 #workspace :is(.home-heading,.dashboard-heading,.editor-heading){margin-bottom:24px}
 #home .stats>div,#workspace .metric,#workspace .cash-stats>.panel{padding:16px}
 #home .stats strong,#workspace .metric strong,#workspace .cash-stats strong{font-size:24px}
 #workspace .registry-display :is(th,td){padding:14px 12px}
 body:has(#workspace:not([hidden]))>.site-footer{margin:20px 16px calc(88px + env(safe-area-inset-bottom))}
}

.session-loading{min-height:65vh;display:flex;align-items:center;justify-content:center;gap:12px;color:#0c265a;font-size:13px}.session-loading[hidden]{display:none}.session-spinner{width:22px;height:22px;border:2px solid #dce4f0;border-top-color:#0c265a;border-radius:50%;animation:session-spin .8s linear infinite}@keyframes session-spin{to{transform:rotate(360deg)}}
