/* Painel visual inspirado no protótipo aprovado; funções legadas preservadas. */
:root{--navy:#082e56;--navy2:#0d4b84;--accent:#0e5ca5;--gold:#f3c663;--surface:#fff;--canvas:#f2f6fb}
body{background:var(--canvas)}body>header{position:sticky;top:0;z-index:30;padding:13px max(15px,calc((100% - 1050px)/2));background:linear-gradient(120deg,#072a4d,#0d4479);border-bottom:0;display:flex;align-items:center;gap:12px;min-height:76px}
body>header:before{content:'';display:block;width:49px;height:49px;flex:none;background:url('/icon-192.png') center/cover;border-radius:13px}
body>header h1{font-size:19px;margin:0 0 2px}body>header>div{font-size:12px}main{max-width:860px;margin:12px auto;padding:0 12px 90px}
.card{border:1px solid #e0e8f2;box-shadow:0 5px 18px #0a345c0b;border-radius:17px}
#app>.nav.card{display:none!important}#app>.account-row{padding:2px 3px}#centralOperacional,#indicadoresContratos{display:none}#app>.push-compact{display:none}
#modernHome .home-welcome{background:linear-gradient(135deg,#e9f3ff,#fff);padding:19px;border-radius:17px;border:1px solid #d9e9fa;margin-bottom:12px}
#modernHome h2{font-size:19px;margin:0;color:#0b345f}#modernHome .sub{font-size:13px;color:#637790;margin:5px 0 0}
.mod-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0}.mod-kpi{border:1px solid #dce8f5;border-radius:15px;padding:14px;display:flex;gap:11px;align-items:flex-start;background:#edf6ff;color:#134b83}.mod-kpi.gold{background:#fff8e5;color:#865700;border-color:#f5e7b9}.mod-kpi.green{background:#eaf9ef;color:#12643c;border-color:#d3efde}.mod-kpi.red{background:#fff0f0;color:#a52c35;border-color:#f4dada}.mod-kpi .symbol{font-size:23px}.mod-kpi strong{display:block;font-size:24px;line-height:1}.mod-kpi small{display:block;margin-top:5px;font-size:12px;line-height:1.3}
.mod-section{background:#fff;border:1px solid #e0e8f2;border-radius:17px;padding:16px;margin:12px 0;box-shadow:0 4px 14px #0c31580b}.mod-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px}.mod-heading h3{margin:0;font-size:17px;color:#0b345f}.mod-link{background:transparent!important;color:#155b9a!important;font-size:13px;padding:6px!important;border:0!important;min-height:30px!important}
.mod-next{border:1px solid #e5eaf1;border-radius:14px;padding:12px}.mod-next-row{display:flex;gap:12px;align-items:center}.mod-date{background:linear-gradient(140deg,#0d548e,#083660);border-radius:12px;color:white;text-align:center;min-width:66px;padding:8px 5px}.mod-date b{font-size:26px;display:block;line-height:1.1}.mod-date small{font-size:11px}.mod-next-info{flex:1;min-width:0}.mod-next-info strong{display:block;color:#102d4d;font-size:15px}.mod-next-info small{display:block;color:#526980;margin-top:4px}.mod-actions{display:flex;gap:8px;margin-top:12px}.mod-actions button{flex:1;font-size:13px}.mod-whats{background:#16844f!important;color:#fff!important}
.mod-shortcuts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.mod-shortcut{display:flex;flex-direction:column;align-items:center;gap:7px;padding:14px 3px!important;background:#fff!important;color:#123e6d!important;border:1px solid #e1e9f3!important;border-radius:14px;min-height:87px!important;box-shadow:0 3px 10px #11375a0a;font-size:11px!important;line-height:1.15;text-align:center}.mod-shortcut .ico{font-size:25px;line-height:1.1}
#modernDetails .detail-banner{background:#e9f9ef;border-radius:15px;padding:15px;margin:12px 0;display:flex;align-items:center;justify-content:space-between;gap:10px}#modernDetails .detail-banner strong{font-size:15px;color:#164b35}#modernDetails .detail-banner small{display:block;margin-top:4px;color:#405d50}.mod-pill{border-radius:30px;padding:6px 10px;font-size:11px;font-weight:800;background:#e8f2ff;color:#145488}.mod-pill.confirmada{background:#d9f5e3;color:#13663d}.mod-pill.pendente{background:#fff0bd;color:#825a00}.mod-pill.realizada{background:#dfe8fb;color:#214c83}.mod-pill.cancelada{background:#ffebeb;color:#9e3030}.mod-pill.bloqueada{background:#e8ecf1;color:#4c5a69}
.mod-detail-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;border-bottom:1px solid #dce7f1;margin:10px 0}.mod-detail-tabs button{font-size:12px!important;background:transparent!important;color:#60748a!important;padding:11px 2px!important;border-radius:0!important;border-bottom:3px solid transparent!important}.mod-detail-tabs button.active{color:#0b4b85!important;border-color:#0b5ba4!important}.mod-data-row{padding:11px 0;border-bottom:1px solid #e8edf3;display:flex;justify-content:space-between;gap:12px;font-size:14px}.mod-data-row span{color:#63758a}.mod-data-row strong{text-align:right;color:#143d67}.mod-detail-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:15px}.mod-detail-actions button{flex:1 1 130px}.mod-back{background:#e9f1fb!important;color:#164b7c!important}.mod-empty{font-size:13px;color:#687d91}
#agenda>.card:first-child{padding:15px}#agenda .calendar{gap:4px}#agenda .day{min-height:57px;border-radius:9px;box-shadow:none}#agenda .day.confirmada{background:#d9f7e5}#agenda .day.pendente{background:#fff1c3}#agenda .day.realizada{background:#dcecff}#agenda .day.bloqueada{background:#e9eef4}#agenda .day.sel{outline:2px solid #1161ae}#agenda .calendar-legend{justify-content:space-between}
#modBottomNav{position:fixed;z-index:40;bottom:0;left:0;right:0;display:none;justify-content:space-around;background:#fff;border-top:1px solid #dbe6f2;box-shadow:0 -3px 15px #153b6014;padding:6px max(8px,calc((100% - 750px)/2)) max(7px,env(safe-area-inset-bottom))}#modBottomNav button{background:transparent!important;color:#4b6480!important;border:0!important;display:flex;flex-direction:column;align-items:center;gap:3px;font-size:10px;padding:5px!important;min-height:47px!important}#modBottomNav button.active{color:#0b5a9c!important}#modBottomNav .ico{font-size:21px}
@media(min-width:700px){#modernHome,#modernDetails{max-width:740px;margin:auto}.mod-shortcut{font-size:13px!important}.mod-shortcut .ico{font-size:28px}}
@media(max-width:390px){.mod-shortcuts{gap:5px}.mod-shortcut{font-size:10px!important;padding:12px 1px!important}.mod-kpi{padding:10px;gap:7px}.mod-kpi small{font-size:11px}#modernDetails .mod-detail-tabs button{font-size:10px!important}}
/* Checklist original fica disponível quando solicitado pelo atalho. */
#centralOperacional:has(#preparacaoCard:not(.hide)){display:block!important}
#centralOperacional:has(#preparacaoCard:not(.hide))>.ops-hero{display:none!important}
#modernHome[hidden],#modernDetails[hidden]{display:none!important}

/* V7 — identidade visual de alto contraste, inspirada no site público */
:root{--navy:#082747;--navy2:#0b3f72;--accent:#075caa;--gold:#c39745;--canvas:#edf3f9}
body{color:#112f4e;background:#edf3f9}body>header{background:linear-gradient(110deg,#082747,#0b3d6c);padding-right:78px}body>header h1{color:#fff;font-weight:800}body>header>div{color:#e2ecf7}
main{padding-bottom:35px}button{touch-action:manipulation}#modernHome .home-welcome{background:linear-gradient(125deg,#082747,#0c4c83);border:1px solid #0c4c83}#modernHome .home-welcome h2{color:#fff;font-size:23px;font-weight:800}#modernHome .home-welcome .sub{color:#d9e8f8;font-weight:600}
.mod-kpi{background:#d9eafa;border:1px solid #b4d0eb;color:#0b3d70}.mod-kpi.gold{background:#fff0cb;color:#704b0b;border-color:#dfc07a}.mod-kpi.green{background:#d9f1e2;color:#125934;border-color:#a3d9b8}.mod-kpi.red{background:#e5e6f8;color:#373b85;border-color:#c4c7e6}.mod-kpi strong{font-weight:850;font-size:28px}.mod-kpi small{color:inherit;font-weight:700;font-size:12px}
.mod-section,.card{border:1px solid #cbd9e8;box-shadow:0 4px 14px #092c5112}.mod-heading h3,#modernDetails h3{color:#082e56;font-weight:800}.mod-shortcut{border:1px solid #c7d8e8!important;color:#0b4278!important;min-height:96px!important;font-weight:750!important;font-size:12px!important}.mod-shortcut .ico{font-size:27px}.mod-shortcut:active{background:#e5f1fc!important}
.mod-next-info strong{font-size:17px;font-weight:800}.mod-next-info small{color:#425c75;font-weight:550}.mod-data-row span{color:#3e5872;font-weight:650}.mod-data-row strong{color:#082f58;font-weight:800}
#modernDetails .detail-banner{background:#dcebf9}#modernDetails .detail-banner strong{color:#0b3c6b}.mod-detail-tabs button{font-weight:700!important}
#modBottomNav{display:none!important}#modMenuBtn,#modTopBack{position:absolute;top:18px;background:#ffffff18;border:1px solid #ffffff55;border-radius:10px;color:white;font-size:24px;width:42px;height:42px;min-height:42px;padding:0;display:none;align-items:center;justify-content:center}#modMenuBtn{right:14px}#modTopBack{right:62px;font-size:26px}
#modDrawer[hidden]{display:none!important}#modDrawer{position:fixed;inset:0;z-index:100}#modDrawer .mod-drawer-shade{position:absolute;inset:0;background:#041b32ad}#modDrawer .mod-drawer-panel{position:absolute;right:0;top:0;bottom:0;background:#fff;width:min(340px,86vw);padding:22px 16px;overflow:auto;box-shadow:-8px 0 25px #061d3540}#modDrawer .mod-drawer-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;color:#082747;font-size:19px}#modDrawer .mod-drawer-head button{background:#e9f2fb;color:#0b457b;border:0;border-radius:9px;padding:10px}#modDrawer [data-mod-nav],#modPushMenu{display:flex;align-items:center;gap:12px;background:#fff;color:#103d69;border:0;border-bottom:1px solid #dce5ef;padding:16px 10px;width:100%;text-align:left;font-weight:750;min-height:56px}#modDrawer .ico{font-size:23px;width:28px;text-align:center}
#agenda button,#reservas button,#gestao button,#contratos button,#editor button{min-height:43px}#agenda label,#editor label{color:#123d66;font-weight:700}
#app>.push-compact[open]{display:block!important}#app>.push-compact{margin:12px 0}
@media(max-width:390px){body>header{padding-right:115px}body>header h1{font-size:16px}body>header:before{width:38px;height:38px}.mod-kpi{padding:12px 8px}.mod-kpi strong{font-size:24px}}

/* V8: telas exclusivas e alto contraste, preservando o código de dados existente */
#app>.account-row{background:#fff;border:1px solid #c7d7e7;border-radius:12px;padding:12px 14px!important;margin:8px 0 14px;display:flex;justify-content:space-between;align-items:center;gap:10px}#app>.account-row .hint{font-size:13px;color:#133f68;font-weight:750;overflow-wrap:anywhere}#app>.account-row #sair{font-weight:800;white-space:nowrap}
#centralOperacional.mod-hidden,#indicadoresContratos.mod-hidden,#gestao>.mod-hidden{display:none!important}
#modernChecklist[hidden],#modernSettings[hidden],#modernFinance[hidden]{display:none!important}
#modernHome .mod-kpi.receivable{background:#dce8fa;border-color:#a9c5e7;color:#103d76}.mod-kpi.receivable strong{font-size:clamp(17px,4.5vw,23px);overflow-wrap:anywhere}
.mod-svg{display:inline-block;width:25px;height:25px;vertical-align:middle;flex-shrink:0}.mod-shortcut .mod-svg{width:29px;height:29px}.mod-kpi .mod-svg{width:27px;height:27px}.mod-kpi .symbol{display:inline-flex}
#modDrawer [data-mod-nav]{display:flex;gap:12px;align-items:center;font-size:15px}#modDrawer [data-mod-nav].active{background:#e5f0fb;color:#063968;border-left:4px solid #075caa}#modDrawer [data-mod-nav] .mod-svg{width:23px;height:23px}
#modernDetails .detail-banner strong .mod-svg{width:18px;height:18px}#modernDetails .detail-banner{background:#dcebf9}
#modernFinance label{display:block;margin:16px 0 6px;font-weight:800;color:#0a365f}#modernFinance input{width:100%;font-size:19px;padding:12px;border:2px solid #b7cee4;border-radius:10px}#modFinanceError{color:#a52227;font-weight:700}#modernFinance button[type=submit]{width:100%;margin-top:16px;min-height:49px}
#modernChecklist h2,#modernSettings h2{color:#092e53}#modernChecklist .card{margin-top:10px}#modernSettings .push-compact{display:block!important;margin:10px 0}#modernSettings .push-compact summary{font-size:16px;font-weight:800;color:#103e6b}
.mod-contract-item{padding:14px 0;border-bottom:1px solid #d3e1ed}.mod-contract-item strong{color:#0a3a69;font-size:15px}.mod-contract-item button{min-height:44px;margin-top:8px}.mod-contract-state{padding:10px 0}
#agenda>.card:first-child{width:100%}#agenda .calendar{width:100%}#agenda .day{min-width:0;font-weight:800;font-size:16px;min-height:65px}#agenda .day small{font-size:9px;font-weight:700}#agenda .day.confirmada{background:#b8e7ca;color:#0b5631}#agenda .day.pendente{background:#ffe1a0;color:#704900}#agenda .day.realizada{background:#c2dcf8;color:#0c427b}#agenda .day.bloqueada{background:#d7dce2;color:#3e4a57}
#modernHome #modHomeAlerts{border-left:5px solid #c39745}#modernHome #modHomeAlerts h3{font-size:16px;color:#113f69}
#app>.push-compact{display:none!important}#modernSettings #pushConfig{display:block!important}
#modernHome .mod-shortcuts{gap:10px}#modernHome .mod-shortcut{border:2px solid #c4d7ea!important;min-height:100px!important}#modernHome .mod-shortcut .ico{display:flex;justify-content:center;align-items:center;color:#0a5798}
@media(max-width:390px){#modernHome .mod-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}#modernHome .mod-shortcut{font-size:13px!important}#agenda .day{min-height:53px;font-size:14px}#agenda .day small{font-size:8px}#app>.account-row{align-items:flex-start}}

/* V9 — feedback visual consistente, leitura fácil e uso no celular */
:root{--positive:#196947;--positive-bg:#e1f2e8;--negative:#a6373b;--negative-bg:#fae5e5}
#modernHome .mod-kpis{align-items:stretch}
#modernHome .mod-alert-inline{background:#fff6e3;border:1px solid #e8cc91;border-left:5px solid #bc8d37;border-radius:13px;padding:12px 14px;margin:0}
#modernHome .mod-alert-inline h3{color:#684710;font-size:14px;font-weight:850;margin:0 0 5px}
#modernHome .mod-alert-inline #modAlertsContent{color:#634f2d;font-size:13px;line-height:1.5;font-weight:650}
#modernHome .mod-kpi.receivable{background:#f7dfe0;border:1px solid #dba5a9;color:#852a32}
#modernHome .mod-kpi.receivable strong,#modernHome .mod-kpi.receivable small{color:#84272f}
#app>.account-row #sair{background:#a7353d!important;border:1px solid #8f2b33!important;color:white!important;box-shadow:0 2px 6px #75242b1a}
#app>.account-row #sair:active{background:#852730!important}
#agenda .calendar-legend{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px!important;margin:13px 0}
#agenda .calendar-legend .legend-chip{display:flex;justify-content:center;align-items:center;gap:6px;min-height:35px;padding:8px 5px;text-align:center;font-weight:800;font-size:12px;white-space:nowrap}
#agenda .calendar-legend .legend-chip i{flex:none}
#modernChecklist #opsFechar{display:none!important}
#modernChecklist label[for="opsReservaEscolhida"],#modernChecklist #opsReservaEscolhida{display:none!important}
#modernChecklist #preparacaoCard{border:1px solid #c8d8e8;box-shadow:0 3px 14px #08274712}
#modernChecklist .ops-top h2{color:#0b3e6d}
#modernChecklist .ops-check:has(input:checked){background:var(--positive-bg)!important;border-color:#b5dbc5!important}
#modernChecklist .ops-check input{accent-color:var(--positive)}
#modernChecklist .ops-progress>div{background:var(--positive)!important}
#modernFinance button[type=submit],#modernSettings #ativarPush,#modernSettings #testarPush{background:var(--positive)!important;border-color:var(--positive)!important;color:#fff!important}
#modernSettings #desativarPush,#modernChecklist #opsReset{background:var(--negative-bg)!important;border:1px solid #e8b9bb!important;color:var(--negative)!important;font-weight:800}
#modernDetails .mod-pill.confirmada,.mod-pill.confirmada{background:var(--positive-bg);color:var(--positive)}
#modernDetails .mod-pill.cancelada,.mod-pill.cancelada{background:var(--negative-bg);color:var(--negative)}
#modernDetails .mod-contract-item strong{color:#124b77}
#modernDetails .mod-contract-item strong:first-child{font-weight:800}
#msg:not(:empty){font-weight:750;border-radius:9px;padding:9px 12px}
#msg:not(.erro):not(.error):not(:empty){color:var(--positive);background:var(--positive-bg)}
#msg.erro,#msg.error{color:var(--negative);background:var(--negative-bg)}
@media(max-width:390px){#agenda .calendar-legend{gap:6px!important}#agenda .calendar-legend .legend-chip{font-size:11px;padding:7px 3px}}

#modernHome .mod-alert-inline{margin:10px 0 16px}

/* V10 — acabamento final: notificações, clientes e financeiro. */
#modernSettings #testarPush,
#modernSettings button#testarPush{background:#0c5b9e!important;border:1px solid #0a4d86!important;color:#fff!important;box-shadow:0 3px 9px #08274720;font-weight:800}
#modernSettings #testarPush:active{background:#084779!important}
/* Tela de clientes: contraste, hierarquia e cartões individuais. */
#gestao .card:has(#clientesHistorico){border-color:#bfd0e1;background:#fff}
#gestao .card:has(#clientesHistorico)>h2{color:#082f55;font-weight:850;font-size:clamp(20px,4.7vw,25px);letter-spacing:-.3px;margin-bottom:17px}
#gestao .card:has(#clientesHistorico)>label{display:block;color:#153e64;font-weight:800;margin-bottom:8px}
#buscaCliente{border:2px solid #b4cce2!important;background:#f9fcff!important;color:#0b3156!important;font-weight:600;border-radius:12px!important;min-height:52px}
#buscaCliente:focus{border-color:#0d64ad!important;outline:3px solid #d7eafa!important}
#clientesHistorico{display:grid;gap:12px;margin-top:16px!important}
#clientesHistorico>.gestao-item{border:1px solid #c6d8e9;background:#f5f9fe;border-left:5px solid #0b5c9e;border-radius:13px;padding:15px!important;box-shadow:0 3px 9px #0d335a0a;color:#244867;line-height:1.5}
#clientesHistorico>.gestao-item>strong{display:inline-block;font-size:18px;font-weight:850;color:#082e56;letter-spacing:-.2px}
#clientesHistorico>.gestao-item>.hint{color:#46637e!important;font-weight:650;margin:5px 0 13px}
#clientesHistorico>.gestao-item>.row{display:flex;flex-wrap:wrap;gap:9px;align-items:center;justify-content:space-between;border-top:1px solid #d5e2ee;padding-top:12px;margin-top:10px}
#clientesHistorico>.gestao-item>.row>span{color:#153d63;font-weight:750;font-size:14px}
#clientesHistorico button[data-gestao-abrir],#saldosPendentes button[data-gestao-abrir]{background:#0e5b9d!important;color:#fff!important;border:1px solid #0b4c85!important;font-weight:800!important;border-radius:10px!important;min-height:44px;box-shadow:0 2px 7px #08274718}
#clientesHistorico button[data-gestao-abrir]:active,#saldosPendentes button[data-gestao-abrir]:active{background:#073d6c!important}
/* Financeiro: quatro indicadores com semântica visual e valores legíveis. */
#gestao .card:has(#resumoFinanceiro)>h2{color:#082f55;font-weight:850;font-size:clamp(20px,4.7vw,25px);margin-bottom:12px}
#gestao .card:has(#resumoFinanceiro)>.hint{color:#506982!important;font-size:13px;line-height:1.55}
#gestao .card:has(#resumoFinanceiro)>.row{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:15px 0}
#gestao .card:has(#resumoFinanceiro)>.row label{color:#123f68;font-weight:800}
#filtroMes{border:2px solid #b6cde3!important;background:#f8fbff!important;color:#103e69!important;font-weight:750;border-radius:11px!important;min-height:48px}
#limparMes{background:#e5f0fa!important;color:#0b4d84!important;border:1px solid #bfd3e6!important;font-weight:800!important}
#resumoFinanceiro{gap:11px;margin:19px 0 23px}
#resumoFinanceiro>.gestao-kpi{border-radius:14px;border:1px solid #b8d2e9;background:#e9f3fc;min-height:117px;padding:17px 14px;box-shadow:0 3px 10px #0d335a0a}
#resumoFinanceiro>.gestao-kpi span{color:#194d7b;font-size:13px;font-weight:800;line-height:1.3}
#resumoFinanceiro>.gestao-kpi strong{color:#082f58;font-size:clamp(19px,4.7vw,27px);font-weight:900;margin-top:8px;line-height:1.15}
#resumoFinanceiro>.gestao-kpi:nth-child(2){background:#e7f0fb;border-color:#b7cde6}
#resumoFinanceiro>.gestao-kpi:nth-child(3){background:#e0f2e8;border-color:#a9d7be}
#resumoFinanceiro>.gestao-kpi:nth-child(3) span,#resumoFinanceiro>.gestao-kpi:nth-child(3) strong{color:#165e40}
#resumoFinanceiro>.gestao-kpi:nth-child(4){background:#f8e4e5;border-color:#e2b8bb}
#resumoFinanceiro>.gestao-kpi:nth-child(4) span,#resumoFinanceiro>.gestao-kpi:nth-child(4) strong{color:#8c3038}
#gestao .card:has(#resumoFinanceiro)>h3{color:#082f55;font-size:19px;font-weight:850;margin:22px 0 12px}
#saldosPendentes{display:grid;gap:11px}
#saldosPendentes>.gestao-item{padding:15px!important;border:1px solid #e5c6c9!important;border-left:5px solid #b04b52!important;background:#fff8f8;border-radius:13px;color:#214663;line-height:1.5}
#saldosPendentes>.gestao-item>strong{color:#092f55;font-weight:850;font-size:17px}
#saldosPendentes>.gestao-item>.hint{color:#94323c!important;font-weight:850;font-size:14px;margin:5px 0 10px}
@media(max-width:390px){#clientesHistorico>.gestao-item{padding:12px!important}#resumoFinanceiro>.gestao-kpi{padding:13px 10px;min-height:105px}#resumoFinanceiro>.gestao-kpi strong{font-size:19px}#gestao .card:has(#resumoFinanceiro)>.row{align-items:stretch}#filtroMes{max-width:100%!important}}
