/* Hadash | Interface operacional. Apenas apresentacao. */
:root{--hd-ink:#192b49;--hd-muted:#647791;--hd-line:#dce5f0;--hd-blue:#1265d8;--hd-light:#f3f7fc;--hd-navy:#102c4f}
html{scroll-behavior:smooth}
body{background:var(--hd-light);color:var(--hd-ink);font:14px/1.5 "Segoe UI",Inter,Arial,sans-serif}
.shell{grid-template-columns:234px minmax(0,1fr);background:var(--hd-light)}
.shell aside{position:sticky;top:0;height:100vh;background:linear-gradient(180deg,#0f2d50,#112844 68%,#10243d);border:0;padding:30px 17px;box-shadow:3px 0 18px #13233b14;z-index:3}
.brand{display:block;color:#fff;font-size:22px;letter-spacing:-.4px;line-height:1.25;padding:0 14px}
.brand b{color:#fff;font-weight:750}
.brand small{display:block;letter-spacing:0;color:#c0cee0;font-size:13px;margin-top:4px}
.shell aside nav{margin-top:44px;display:grid;gap:7px}
.shell aside nav a{display:flex;align-items:center;gap:12px;text-decoration:none;padding:12px 15px;border-radius:9px;color:#c8d8eb;font-weight:600;letter-spacing:0;border:1px solid transparent;transition:background .15s ease}
.shell aside nav a:hover{background:#ffffff14;color:#fff}
.shell aside nav a.active{background:linear-gradient(90deg,#2461a8,#1a477f);color:#fff;border-left:3px solid #56b9ff;box-shadow:0 4px 12px #00000014}
.shell aside nav .nav-icon{display:grid;place-items:center;font-size:18px;width:24px;height:24px;flex:0 0 24px}
.version{padding:14px;color:#b0bdd0;letter-spacing:0;font-size:11px}
main{background:var(--hd-light);padding:0 28px 36px;min-width:0;min-height:100vh}
header.workspace-header{position:sticky;z-index:2;top:0;display:flex;justify-content:space-between;gap:16px;align-items:center;background:#ffffffed;backdrop-filter:blur(8px);margin:0 -28px 23px;padding:20px 28px;border-bottom:1px solid #e1e8f2}
header.workspace-header h1{margin:0;font-size:28px;line-height:1.15;letter-spacing:-.5px;color:#132b4e}
header.workspace-header p{color:var(--hd-muted);margin:3px 0 0;font-size:13px}
.workspace-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px}
.company-global{display:flex;flex-direction:column;gap:3px;min-width:245px;padding:8px 12px;background:#f7faff;border:1px solid var(--hd-line);border-radius:9px}
.company-global label{font-size:11px;color:var(--hd-muted)}
.company-global select{background:transparent;border:0;width:100%;font-weight:700;color:#173557;font:inherit;cursor:pointer;max-width:320px}
.workspace-account{display:flex;align-items:center;gap:8px;color:#233b5a;font-weight:650;font-size:12px}
.workspace-account .avatar{display:grid;place-items:center;background:#e1ecff;color:#2368cd;width:32px;height:32px;border-radius:50%;font-size:18px}
.header-actions{gap:7px;display:flex;flex-wrap:wrap;align-items:center}
button,.secondary-btn{border-radius:8px;background:var(--hd-blue);color:white;padding:11px 16px;font-weight:700;transition:background .15s ease}
button:hover:not(:disabled){background:#0d51b2}
button:disabled{opacity:.53;cursor:not-allowed}
.secondary-btn{background:#edf2f8;color:#2e4e71}
.secondary-btn:hover:not(:disabled){background:#dce8f8}
:focus-visible{outline:3px solid #56a2ef;outline-offset:2px}
.workspace-page{display:none;min-width:0;animation:fadeIn .16s ease}
.workspace-page.is-active{display:block}
@keyframes fadeIn{from{opacity:.7}to{opacity:1}}
.work-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 18px}
.work-metric{background:#fff;border:1px solid #e4ebf4;box-shadow:0 4px 16px #203b6110;border-radius:12px;min-width:0;padding:18px;display:flex;align-items:center;gap:14px}
.work-metric-icon{display:grid;place-items:center;width:49px;height:49px;border-radius:50%;background:#e5f0ff;color:#1164d8;font-size:24px;letter-spacing:0;flex-shrink:0}
.work-metric:nth-child(1) .work-metric-icon{background:#ffebde;color:#e67b38}
.work-metric:nth-child(2) .work-metric-icon{background:#fff1d5;color:#cf9010}
.work-metric:nth-child(3) .work-metric-icon{background:#d9f2e7;color:#139465}
.work-metric-label{color:#57708e;display:block;font-size:12px;letter-spacing:0}
.work-metric-number{display:block;color:#132b50;font-size:27px;line-height:1.3}
.work-expense-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,1fr);align-items:start;gap:18px}
.work-expense-left,.work-expense-inspector{min-width:0;background:#fff;border:1px solid #e0e8f2;border-radius:13px;box-shadow:0 3px 14px #182b4c0d}
.work-expense-left>.panel{margin:0}
.panel,.cards article{background:#fff;border:1px solid #dfe8f2;color:var(--hd-ink);box-shadow:0 2px 12px #192e4b0b;border-radius:12px}
.panel{align-items:flex-start;padding:22px}
.panel h3,.panel h4{color:#152c4b;line-height:1.35}
.panel h3{font-size:20px}
.panel p{color:#60758e;line-height:1.55}
.panel .wide{width:100%;min-width:0}
.cards{grid-template-columns:repeat(4,minmax(0,1fr))}
.cards strong{color:#102d50}
.cards small,.cards article span{color:#6b7c90;letter-spacing:0}
.hero{background:linear-gradient(105deg,#183d68,#0f2d4f);color:white;border:0;min-height:160px;align-items:center}
.hero h2{font-size:24px}
.hero p{color:#c7d8e9}
.hero em{color:#84d5ff}
.hero .orb{width:95px;height:95px;box-shadow:0 0 24px #3bd1ff44}
.empresa-list,.activity-list{color:var(--hd-ink)}
.empresa-row,.activity-row{background:#f7f9fd;border:1px solid var(--hd-line);color:#1b3559}
.empresa-row b,.activity-row b{color:#1553a6}
.activity-row span{color:#72839b}
.activity-row time{color:#7186a0}
.work-expense-left #expenseArchivePanel{background:transparent;box-shadow:none;border:0;display:block;padding:20px}
.work-expense-left #expenseArchivePanel.hidden{display:none}
#expenseArchivePanel h3{margin:0 0 7px;font-size:19px}
#expenseArchivePanel .wide>p{font-size:12px;margin:0 0 12px}
#expenseArchivePanel label{color:#435a75;font-size:12px;font-weight:650;letter-spacing:0}
#expenseArchivePanel select,#expenseArchivePanel input[type=file],#expenseArchivePanel input[type=text],
#expenseArchivePanel textarea,#dominioExportPanel input[type=text],#dominioExportPanel textarea,#dominioExportPanel select,
#accountMappingPanel input,#salesImportPanel select,#internalLedgerPanel select{
 background:#fff!important;color:#192e50!important;border:1px solid #cfdeec!important;border-radius:8px!important;min-height:39px;max-width:100%;padding:9px 11px;font:inherit;letter-spacing:0
}
#expenseArchiveUploadForm{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end;padding:14px 0}
#expenseArchiveUploadForm label{margin:0!important}
#expenseArchiveFile{border:2px dashed #c5d9ec!important;background:#f8fbff!important;padding:18px!important;max-width:100%!important;cursor:pointer}
#expenseArchiveStatus{font-size:12px;margin:6px 0!important}
#expenseArchivePanel .expense-archive-caution{padding:12px;background:#f0f7ff;color:#385977!important;border-left:3px solid #428ee0;border-radius:7px}
.work-catalog-settings{border:1px solid #d8e5f0;border-radius:8px;background:#f8fbff;margin:14px 0;padding:12px}
.work-catalog-settings summary{cursor:pointer;color:#244b7b;font-weight:700;letter-spacing:0}
.work-catalog-settings #expenseCatalogPanel{margin:12px 0 0;padding:12px;border:1px solid #d9e5f1;border-radius:8px;background:#fff}
.work-catalog-settings #expenseCatalogPanel .expense-archive-caution{margin:8px 0!important}
.work-catalog-settings label{margin:10px 0!important}
#expenseArchiveList{gap:10px;margin-top:10px}
#expenseArchiveList .expense-archive-item{background:#fff;border:1px solid #e0e8f2;border-radius:9px;padding:14px;align-items:flex-start;display:flex;cursor:pointer}
#expenseArchiveList .expense-archive-item:hover{background:#f8fbff;border-color:#b9d4f4}
#expenseArchiveList .expense-archive-item .meta{flex:1 1 180px;min-width:0}
#expenseArchiveList .expense-archive-item strong{font-size:14px;color:#193457}
#expenseArchiveList .expense-archive-item small{display:block;color:#72849b;letter-spacing:0;line-height:1.45;font-size:11px}
#expenseArchiveList .expense-archive-item .meta small:last-of-type{display:none}
#expenseArchiveList .expense-archive-item .expense-posted-status{color:#148358}
#expenseArchiveList .expense-archive-item a{color:#1766c2}
#expenseArchiveList .expense-archive-item button{font-size:12px;padding:8px 11px}
#expenseArchiveList pre{background:#f7faff;border:1px solid #dfeaf5;color:#253e60;max-height:190px}
#expenseArchiveList .expense-archive-item form.expense-review-form{display:none}
.work-expense-inspector{padding:20px}
.work-inspector-title{display:flex;align-items:center;gap:9px;margin-bottom:18px}
.work-inspector-symbol{font-size:22px;color:#2064bf}
.work-inspector-title h3{font-size:18px;color:#122b4c;margin:0}
.work-inspector-body{min-height:240px}
.work-inspector-empty{text-align:center;padding:40px 15px;color:#657992}
.work-inspector-empty-icon{display:grid;place-items:center;width:56px;height:56px;background:#e8f2ff;color:#2269be;border-radius:50%;font-size:30px;margin:0 auto 12px}
.work-inspector-empty h4{margin:4px 0;color:#284262}
.work-inspector-empty p{font-size:13px;line-height:1.6}
.work-inspector-body .expense-review-form{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px!important;border:0!important;padding:0!important;background:#fff!important;width:100%}
.work-inspector-body .expense-review-form h4{margin:0;font-size:16px;color:#14345c}
.work-inspector-body .expense-review-form>p{margin:0 0 5px;color:#5b6f86;font-size:12px}
.work-inspector-body .expense-review-form label{font-size:12px;color:#4b5e7a;letter-spacing:0;margin:0;display:flex;min-width:0}
.work-inspector-body .expense-review-form input[type=text]{min-width:0;width:100%;background:#fff;color:#182e4c;border:1px solid #cbd8e7;border-radius:8px;min-height:38px;padding:9px}
.work-inspector-body .expense-review-form .expense-review-check{font-size:12px;line-height:1.5}
.work-inspector-body .expense-review-form pre{padding:12px;background:#f3f7fe;border:1px solid #d2e2f2;color:#1d395b;max-height:230px;overflow-y:auto}
.work-inspector-body .expense-review-form button{width:100%;white-space:normal}
.work-inspector-body .expense-dominio-preview{border:1px dashed #bfd2e6;color:#395875;background:#f8fbff}
.work-next{margin-top:18px;background:#f1fbf7;border:1px solid #cce9dc;border-radius:12px;padding:20px 24px;display:flex;justify-content:space-between;align-items:center;gap:20px}
.work-next strong{color:#123c48;font-size:16px}
.work-next p{margin:5px 0 0;color:#547475;font-size:13px}
.work-next-button{flex:0 0 auto}
#dominioExportPanel{display:block}
#dominioExportPanel.hidden{display:none}
#dominioExportPanel h4{margin-top:25px;color:#18456c}
#dominioExportPanel pre,#internalLedgerData{background:#f4f8fe;padding:14px;border:1px solid #d9e5f3;border-radius:9px;color:#193859;overflow:auto}
#dominioExportPanel label{color:#3b5270}
#dominioExportHistory a{color:#155bbb}
#dominioExportPanel button{max-width:100%}
#accountMappingPanel,#salesImportPanel,#internalLedgerPanel,#activityPanel,#emailPreflightPanel,#companyPanel{display:block}
#accountMappingPanel.hidden,#salesImportPanel.hidden,#internalLedgerPanel.hidden,#activityPanel.hidden,#emailPreflightPanel.hidden{display:none}
#accountMappingPanel,#salesImportPanel,#internalLedgerPanel,#companyPanel,#activityPanel,#emailPreflightPanel,#page-configuracoes>.panel{margin-bottom:16px}
.email-preflight-metrics>div{background:#f7faff;border:1px solid #e0e8f2}
.email-preflight-metrics dt{color:#3c5374}
.email-preflight-metrics dd{color:#152d4c}
.email-preflight-limit{background:#edf5ff!important;color:#385577!important}
.modal{z-index:20;background:#06172bbb}
.modal form{background:#fff;color:#1b3151;border:1px solid #dce6f3;box-shadow:0 15px 70px #0005}
.modal label{color:#425d7a}
.modal input{background:#f8fbff;color:#143355;border:1px solid #cbdaea}
.modal a{color:#587396}
#msg,#changePasswordMsg,#recoveryMsg{color:#b72e4c}
.hidden{display:none!important}
@media(max-width:1280px){.work-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.work-expense-layout{grid-template-columns:minmax(0,1.2fr) minmax(310px,1fr)}.company-global{min-width:190px}}
@media(max-width:1050px){.shell{grid-template-columns:190px minmax(0,1fr)}.shell aside{padding:25px 10px}.brand{font-size:20px}.work-expense-layout{grid-template-columns:minmax(0,1fr)}.work-expense-inspector{min-height:220px}}
@media(max-width:760px){
 .shell{grid-template-columns:minmax(0,1fr)}
 .shell aside{position:relative;display:block;width:100%;height:auto;padding:12px 14px}
 .shell aside .brand{font-size:17px}
 .shell aside .brand small{display:inline;margin-left:8px}
 .shell aside nav{display:flex;overflow-x:auto;gap:5px;margin-top:9px;padding:4px 0;scrollbar-width:thin}
 .shell aside nav a{flex-shrink:0;padding:8px 12px;font-size:12px}
 .shell aside nav .nav-icon{font-size:15px;width:18px;height:18px;flex-basis:18px}
 .version{display:none}
 main{padding:0 13px 25px}
 header.workspace-header{position:relative;margin:0 -13px 17px;padding:15px;align-items:flex-start;flex-direction:column}
 header.workspace-header h1{font-size:23px}
 .workspace-actions{width:100%;align-items:center}
 .company-global{flex:1 1 170px;min-width:0}
 .work-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 .work-metric{padding:13px;gap:8px}
 .work-metric-number{font-size:22px}
 .work-metric-icon{width:35px;height:35px;font-size:20px}
 #expenseArchiveUploadForm{grid-template-columns:minmax(0,1fr)}
 .work-next{flex-wrap:wrap;padding:17px}
 .work-next-button{flex:1 1 100%}
 .cards{grid-template-columns:repeat(2,minmax(0,1fr))}
 .modal form{max-width:calc(100vw - 24px)}
}
@media(max-width:430px){.work-metric-icon{display:none}.work-metric-label{font-size:11px}.work-metric-number{font-size:20px}}

/* Refinamento 01: operacao primeiro, configuracoes da conta em menu discreto. */
.account-menu{position:relative;z-index:10}
.account-menu summary{cursor:pointer;list-style:none;padding:9px 11px;border:1px solid #d9e5f3;border-radius:8px;background:#f5f8fc;font-size:12px;font-weight:650;white-space:nowrap}
.account-menu summary::-webkit-details-marker{display:none}
.account-menu summary::after{content:' ▾';font-size:11px}
.account-popover{position:absolute;top:calc(100% + 6px);right:0;min-width:190px;padding:9px;display:grid;gap:7px;box-shadow:0 10px 30px #1e34502e;border:1px solid #dae6f2;border-radius:10px;background:#fff}
.account-popover button{width:100%;text-align:left}
#loginBtn{white-space:nowrap}
.workspace-header .header-actions{flex-wrap:nowrap}
body.work-has-company #expenseArchivePanel label:has(> #expenseArchiveCompany),
body.work-has-company #dominioExportPanel label:has(> #dominioExportCompany),
body.work-has-company #internalLedgerPanel label:has(> #internalLedgerCompany),
body.work-has-company #salesImportPanel label:has(> #salesImportCompany){display:none!important}
.work-expense-left #expenseArchiveUploadForm label{border:2px dashed #cad9ec;border-radius:10px;padding:18px;background:#f9fbff;display:block;min-width:0}
.work-expense-left #expenseArchiveUploadForm label::before{content:'☁';display:block;font-size:28px;color:#497fb7;text-align:center;line-height:1.2}
.work-expense-left #expenseArchiveFile{border:0!important;padding:8px 4px!important;background:transparent!important}
.work-operational-help{margin-top:8px!important}
.work-operational-help .expense-archive-caution{margin-top:9px!important}

/* Correção de contraste da advertência de revisão, preservada no painel lateral. */
.work-inspector-body .expense-review-form>.expense-archive-caution{
  background:#eef6ff!important;color:#37587c!important;
  border-left:3px solid #4189db;border-radius:7px;padding:11px!important;
}

/* Um unico seletor em Inicio; nos demais menus, empresa ativa somente leitura. */
.company-context-panel{background:#fff;border:1px solid #d6e2f0;border-radius:13px;
  padding:23px 26px;margin-bottom:20px;box-shadow:0 3px 13px #203b6110}
.company-context-panel h2{font-size:22px;color:#163557;margin:0 0 8px}
.company-context-panel p{font-size:13px;color:#516d8b;margin:0 0 15px;max-width:760px}
.company-context-panel .company-context-selector{display:grid!important;gap:6px;min-width:0;max-width:640px;
 border:0;background:transparent;padding:0;margin:0}
.company-context-panel .company-context-selector select{border:1px solid #aac7e9;
 border-radius:8px;padding:12px;background:#fff;max-width:100%;width:100%;min-height:47px;
 color:#163659;font-size:15px;font-weight:700}
.company-context-status{margin:15px 0 0!important;background:#edf6ff;color:#23496e!important;
 border-left:3px solid #2684ce;padding:11px;border-radius:5px}
.company-context-indicator{padding:10px 12px;background:#eef5ff;border:1px solid #d3e5fa;
 border-radius:8px;max-width:370px;font-size:12px;color:#23527f;font-weight:650}
/* Escritório sem empresa: libera menus, mas impede qualquer interação com dados por empresa. */
body.work-no-company .workspace-page:not(.is-active){display:none!important}
body.work-no-company #page-despesas.is-active,
body.work-no-company #page-vendas.is-active,
body.work-no-company #page-lancamentos.is-active,
body.work-no-company #page-dominio.is-active,
body.work-no-company #page-extratos.is-active{display:block!important}
body.work-no-company #page-despesas>*:not(.work-company-required),
body.work-no-company #page-vendas>*:not(.work-company-required),
body.work-no-company #page-lancamentos>*:not(.work-company-required),
body.work-no-company #page-dominio>*:not(.work-company-required),
body.work-no-company #page-extratos>*:not(.work-company-required){display:none!important}
.work-company-required{display:none}
body.work-no-company .work-company-required{display:block}
.work-company-required{margin:3px 0 18px;padding:27px;
  background:#fff;border:1px solid #cfdeee;border-left:4px solid #2367bd;border-radius:12px;
  color:#153556;max-width:760px;box-shadow:0 3px 12px #1739570d}
.work-company-required h2{font-size:20px;margin:0 0 8px;color:#143454}
.work-company-required p{color:#4b6582;line-height:1.65;font-size:14px}
.work-company-select-button{margin-top:8px}

body.work-has-company #cadCompanySelect,
body.work-has-company .cad-company-selection{display:none!important}
/* Os selects de cada modulo continuam no DOM apenas para as rotinas existentes. */
#expenseArchiveCompany,#dominioExportCompany,#internalLedgerCompany,#salesImportCompany,
#accountMapCompany,#expenseCatalogCompany{pointer-events:none!important}
#expenseArchiveCompany:focus,#dominioExportCompany:focus,#internalLedgerCompany:focus,
#salesImportCompany:focus,#accountMapCompany:focus,#expenseCatalogCompany:focus{outline:none}
body.work-has-company label:has(> #expenseArchiveCompany),
body.work-has-company label:has(> #dominioExportCompany),
body.work-has-company label:has(> #internalLedgerCompany),
body.work-has-company label:has(> #salesImportCompany),
body.work-has-company label:has(> #accountMapCompany),
body.work-has-company label:has(> #expenseCatalogCompany){display:none!important}
@media(max-width:760px){.company-context-indicator{max-width:none}.company-context-panel{padding:17px}}
