/* TOWI Professional UI v40 — visual layer only; core workflows remain intact. */
:root{--pro-navy:#06111f;--pro-navy2:#0b1b2e;--pro-surface:#fff;--pro-bg:#f3f6fa;--pro-line:#dbe4ee;--pro-muted:#64748b;--pro-yellow:#f7c844;--pro-blue:#1677ff;--pro-green:#12a66a;--pro-red:#d92d20;--pro-shadow:0 12px 34px rgba(15,23,42,.08)}
body.admin,body.partner{background:var(--pro-bg);color:#111827;-webkit-font-smoothing:antialiased}
/* Admin shell */
.admin-header{background:rgba(6,17,31,.98)!important;border-bottom:1px solid rgba(255,255,255,.08);box-shadow:0 8px 28px rgba(0,0,0,.12);min-height:74px}
.brand-lockup{letter-spacing:.2px}.brand-lockup .brand-sos{color:var(--pro-yellow)!important}.brand-lockup small{opacity:.68;font-weight:700}
.admin-sidebar{background:#081625!important;border-right:1px solid #17304b!important}.admin-sidebar nav{padding:14px 10px!important;gap:4px!important}.nav-item{border-radius:12px!important;min-height:46px!important;font-weight:750!important;color:#c8d4e3!important}.nav-item:hover{background:#10253c!important}.nav-item.active{background:#fff!important;color:#07111f!important;box-shadow:0 6px 18px rgba(0,0,0,.16)}
.admin-main{background:var(--pro-bg)!important}.admin-section{max-width:1480px;margin:0 auto}.section-title{align-items:flex-end!important;margin-bottom:22px!important}.section-title h1{font-size:clamp(28px,3vw,42px)!important;letter-spacing:-1.2px;margin-bottom:5px!important}.section-title p{font-size:15px!important;color:var(--pro-muted)!important}
.panel,.settings-card,.accounting-controls{border:1px solid var(--pro-line)!important;border-radius:20px!important;box-shadow:var(--pro-shadow)!important;background:#fff!important}.panel-head{gap:12px}.panel-head h2{letter-spacing:-.3px}
.kpi-grid{gap:12px!important}.kpi{border:1px solid var(--pro-line)!important;border-radius:18px!important;background:#fff!important;box-shadow:0 7px 22px rgba(15,23,42,.05)!important}.kpi b{font-size:clamp(24px,3vw,34px)!important}.kpi small{color:var(--pro-blue)!important}.kpi.danger{border-color:#f7c4bf!important;background:#fff8f7!important}
.btn{border-radius:11px!important;font-weight:800!important;min-height:42px}.btn.primary,.btn.green{background:var(--pro-yellow)!important;color:#07111f!important;border-color:#e7b72f!important;box-shadow:none!important}.btn.primary:hover,.btn.green:hover{filter:brightness(.97)}.btn.ghost,.btn.gray{background:#fff!important;border:1px solid var(--pro-line)!important;color:#152235!important}.btn.danger{background:#fff1f0!important;border-color:#ffccc7!important;color:#b42318!important}
.toolbar{background:#fff;border:1px solid var(--pro-line);padding:10px;border-radius:16px;box-shadow:0 4px 16px rgba(15,23,42,.03)}.toolbar input,.toolbar select,.form-grid input,.form-grid select,.form-grid textarea,.settings-card input,.settings-card select,.settings-card textarea{border:1px solid #cfd9e5!important;border-radius:11px!important;background:#fff!important;min-height:44px!important;box-shadow:inset 0 1px 2px rgba(15,23,42,.02)}
.record-card{border:1px solid var(--pro-line)!important;border-radius:16px!important;box-shadow:0 3px 12px rgba(15,23,42,.03)}.record-card:hover{border-color:#bfd0e3!important;box-shadow:0 9px 25px rgba(15,23,42,.07)!important}
/* Settings: compact control center */
.settings-tabs{display:flex!important;gap:7px!important;overflow:auto!important;padding:6px!important;background:#e9eef5!important;border-radius:14px!important;margin-bottom:16px!important;position:sticky;top:76px;z-index:20}.settings-tabs button{border:0!important;background:transparent!important;border-radius:10px!important;padding:11px 15px!important;font-weight:850!important;white-space:nowrap!important;color:#475569!important}.settings-tabs button.active{background:#07111f!important;color:#fff!important;box-shadow:0 5px 12px rgba(7,17,31,.18)}
.settings-card{padding:22px!important}.settings-card>h2{font-size:25px!important;letter-spacing:-.5px}.settings-card>p{color:var(--pro-muted)}.settings-card .info-box{background:#f7f9fc!important;border:1px solid var(--pro-line)!important;border-radius:14px!important}.operations-center .ops-flow{background:#07111f!important;color:#fff!important;border-radius:14px!important;padding:16px!important}.ops-health{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:10px!important}.ops-health button{background:#fff!important;border:1px solid var(--pro-line)!important}.dispatch-rounds{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:10px!important}.dispatch-rounds label{background:#f7f9fc!important;border:1px solid var(--pro-line)!important;border-radius:14px!important;padding:14px!important}.security-list.actionable{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.security-list.actionable button{border:1px solid var(--pro-line)!important;border-radius:14px!important;background:#fff!important;padding:16px!important;text-align:left!important}.security-list.actionable button b{font-size:16px}.security-list.actionable button span{color:var(--pro-muted)!important;margin-top:5px!important}
/* Invoice modal */
.invoice-mode{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:5px;background:#edf2f7;border-radius:13px}.invoice-mode label{margin:0!important;cursor:pointer}.invoice-mode input{position:absolute;opacity:0;pointer-events:none}.invoice-mode span{display:block;padding:11px 12px;text-align:center;border-radius:10px;font-weight:850;color:#556274}.invoice-mode input:checked+span{background:#07111f;color:#fff;box-shadow:0 4px 12px rgba(7,17,31,.16)}.invoice-live-total{border:1px solid var(--pro-line)!important;background:#f8fafc!important;border-radius:15px!important}.invoice-live-total .grand{font-size:1.25rem!important}.invoice-live-total .grand strong{font-size:1.55rem!important}
/* Partner app */
.partner-login{background:radial-gradient(circle at 50% 0,#153252 0,#07111f 46%,#040b14 100%)!important}.login-card{border-radius:24px!important;box-shadow:0 30px 80px rgba(0,0,0,.32)!important;border:1px solid rgba(255,255,255,.08)!important}.partner-login .brand-dark{font-size:30px!important}.partner-login .login-card>p{margin-top:6px!important}.partner-login input{min-height:50px!important;border-radius:12px!important}.partner-join-box{border-radius:14px!important;background:#f5f8fb!important;border:1px solid #dbe4ee!important}
body.partner .mobile{background:var(--pro-bg)!important;min-height:100dvh}.partner .head{background:#07111f!important;border-bottom:1px solid rgba(255,255,255,.08)!important;padding-top:max(16px,env(safe-area-inset-top))!important;min-height:72px!important}.partner .pad{padding:16px 14px 108px!important;max-width:760px;margin:0 auto}.partner-status-card{background:#07111f!important;color:#fff!important;border-radius:20px!important;border:1px solid #18324f!important;box-shadow:0 12px 30px rgba(7,17,31,.13)!important}.partner-status-meta{color:#aebdd0!important}.sound-toggle{background:#10243a!important;border-color:#263e59!important}.gps-mini{color:#9fb0c4!important}.setup-mini,.pwa-card,.push-diag-card,.offer-stage,.today-block,.finance-hero,.partner .card{border-radius:18px!important;box-shadow:var(--pro-shadow)!important;border:1px solid var(--pro-line)!important}.offer-stage{background:#fff!important;padding:17px!important}.offer-card{border-radius:18px!important;border:1px solid var(--pro-line)!important;box-shadow:0 8px 24px rgba(15,23,42,.07)!important}.offer-card .offer-price{font-size:28px!important}.today-stats>div{border-radius:14px!important;background:#f8fafc!important;border:1px solid var(--pro-line)!important}.job-card,.ledger-card{border-radius:16px!important;border:1px solid var(--pro-line)!important;box-shadow:0 4px 14px rgba(15,23,42,.04)!important}.finance-hero{background:#07111f!important;color:#fff!important}.partner-money-grid>div{background:#10243a!important;border:1px solid #263e59!important}.tabs{background:rgba(255,255,255,.96)!important;backdrop-filter:blur(15px);border-top:1px solid var(--pro-line)!important;box-shadow:0 -8px 28px rgba(15,23,42,.07)!important}.tabs button{color:#6b7787!important;font-weight:800!important}.tabs button.active{color:#07111f!important}.tabs button.active span{background:var(--pro-yellow)!important;color:#07111f!important}
@media(max-width:900px){.admin-layout{display:block!important}.admin-sidebar{display:none!important}.admin-main{padding:14px!important}.admin-header{position:sticky!important;top:0;z-index:80}.mobile-admin-tabs{display:flex!important;position:sticky!important;top:74px!important;z-index:70!important;background:rgba(243,246,250,.95)!important;backdrop-filter:blur(14px);padding:9px 0!important;gap:7px!important}.mobile-admin-tabs button{background:#fff!important;border:1px solid var(--pro-line)!important;border-radius:999px!important;padding:10px 14px!important;font-weight:800!important;white-space:nowrap!important}.mobile-admin-tabs button.active{background:#07111f!important;color:#fff!important}.settings-tabs{top:132px!important}.dashboard-grid{grid-template-columns:1fr!important}.ops-health{grid-template-columns:1fr 1fr!important}.dispatch-rounds{grid-template-columns:1fr!important}.security-list.actionable{grid-template-columns:1fr!important}.section-title{align-items:flex-start!important;flex-direction:column!important;gap:12px!important}.section-title>.btn,.section-title>a.btn{width:100%!important}.order-overview{grid-template-columns:1fr 1fr!important}}
@media(max-width:620px){.admin-header{padding:11px 14px!important}.brand-lockup small{display:none}.header-actions>b{display:none}.admin-avatar{width:38px!important;height:38px!important}.admin-main{padding:10px!important}.mobile-admin-tabs{top:67px!important}.settings-tabs{top:125px!important}.settings-card{padding:15px!important}.form-grid{grid-template-columns:1fr!important}.form-grid .wide{grid-column:auto!important}.order-overview,.simple-info-grid{grid-template-columns:1fr!important}.ops-health{grid-template-columns:1fr 1fr!important}.record-card{padding:13px!important}.record-side{min-width:82px!important}.partner .pad{padding-left:10px!important;padding-right:10px!important}.pwa-card{grid-template-columns:48px 1fr!important}.pwa-actions{grid-column:1/-1!important}.partner-money-grid{grid-template-columns:1fr 1fr!important}.invoice-mode{grid-template-columns:1fr!important}}

.settings-pro-head{display:flex;justify-content:space-between;gap:16px;margin-bottom:20px}.settings-pro-head h2{margin:3px 0 5px;font-size:26px;letter-spacing:-.6px}.settings-pro-head p{margin:0;color:var(--pro-muted);max-width:760px;line-height:1.5}.settings-savebar{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--pro-line);margin-top:20px;padding-top:16px}.settings-savebar span{color:var(--pro-muted);font-size:13px}.settings-action-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.system-state-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:12px 0 20px}.system-state-grid>div,.system-state-grid>button{border:1px solid var(--pro-line);border-radius:15px;background:#f8fafc;padding:15px;text-align:left;display:grid;gap:4px}.system-state-grid span{color:var(--pro-muted);font-size:12px;font-weight:750}.system-state-grid b{font-size:20px}.system-state-grid small{color:var(--pro-blue);font-weight:800}.field-caption{display:block;font-weight:800;margin-bottom:7px}@media(max-width:760px){.settings-savebar{align-items:stretch;flex-direction:column}.settings-action-grid,.system-state-grid{grid-template-columns:1fr 1fr}}@media(max-width:520px){.settings-action-grid,.system-state-grid{grid-template-columns:1fr}.settings-savebar .btn{width:100%}}

/* v40.2 partner coverage editor */
.partner-coverage-editor{display:grid;gap:16px}.coverage-national{padding:14px 16px!important;border:1px solid var(--pro-line);border-radius:14px;background:#f8fafc}.coverage-areas-label{display:grid;gap:7px;font-weight:800}.coverage-areas-label textarea{width:100%;resize:vertical;line-height:1.45}.coverage-areas-label small{font-weight:500;color:var(--pro-muted);line-height:1.4}.coverage-preview{display:grid;gap:5px;border:1px solid #dce6f0;background:#f7f9fc;border-radius:14px;padding:14px 16px}.coverage-preview span{color:var(--pro-muted);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.coverage-preview b{line-height:1.45}.region-edit-row{align-items:end!important}.region-edit-row>label:not(.check){display:grid;gap:6px;font-weight:800}.region-edit-row .check{min-height:44px;align-items:center}
@media(max-width:720px){.region-edit-row{grid-template-columns:1fr!important;gap:12px!important}.region-edit-row .btn{width:100%}}

/* v40.4 — professional partner coverage picker + invoice register */
.coverage-national span{display:grid;gap:3px}.coverage-national small{font-weight:600;color:var(--pro-muted);line-height:1.35}.coverage-picker{border:1px solid var(--pro-line);border-radius:16px;background:#fff;overflow:hidden;transition:.2s}.coverage-picker.disabled{opacity:.55;background:#f7f9fc}.coverage-picker-tools{position:sticky;top:0;z-index:2;background:#fff;border-bottom:1px solid var(--pro-line);padding:12px;display:flex;gap:10px;align-items:center}.coverage-picker-tools input{flex:1;min-width:0}.coverage-count{font-size:12px;font-weight:900;color:#536176;white-space:nowrap;background:#eef3f8;border-radius:999px;padding:8px 10px}.coverage-scroll{max-height:410px;overflow:auto;padding:5px 12px 12px}.coverage-group{padding:13px 0;border-bottom:1px solid #edf1f5}.coverage-group:last-child{border-bottom:0}.coverage-group h4{margin:0 0 9px;font-size:13px;color:#506078}.coverage-check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.coverage-choice{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;gap:8px!important;border:1px solid #dfe6ef;border-radius:11px;padding:9px 10px!important;background:#fafbfd;cursor:pointer;font-size:13px;font-weight:750!important;min-width:0}.coverage-choice:has(input:checked){background:#fff6d6;border-color:#edc444;color:#111827}.coverage-choice input{width:18px!important;height:18px!important;min-height:18px!important;accent-color:#f5bd1f}.coverage-choice span{overflow:hidden;text-overflow:ellipsis}.coverage-custom{display:grid;grid-template-columns:1fr auto;gap:8px;padding:12px;border-top:1px solid var(--pro-line);background:#f8fafc}.coverage-create{margin:18px 0;padding:16px;border:1px solid var(--pro-line);border-radius:18px;background:#f8fafc}.coverage-create>h3{margin:0 0 12px}.coverage-create .coverage-picker{margin-top:12px}.coverage-preview{margin-top:0!important}
.invoice-register-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:12px}.invoice-register-summary>div{border:1px solid var(--pro-line);border-radius:14px;background:#f8fafc;padding:13px 15px;display:grid;gap:4px}.invoice-register-summary span{font-size:12px;color:var(--pro-muted);font-weight:750}.invoice-register-summary b{font-size:18px}.invoice-row{align-items:flex-start!important}.invoice-main{min-width:0;flex:1}.invoice-actions{min-width:min(490px,52%);white-space:normal!important}.invoice-action-row{display:flex;justify-content:flex-end;gap:6px;flex-wrap:wrap}.invoice-status.draft{background:#eef2f6;color:#475467}.invoice-status.sent,.invoice-status.unpaid{background:#fff3cf;color:#815d00}.invoice-status.paid{background:#e5f7ec;color:#16794d}.invoice-status.overdue{background:#fee4e2;color:#b42318}.invoice-status.void{background:#eceff3;color:#667085}.invoice-edit-meta{display:grid;grid-template-columns:auto 1fr auto 1fr;gap:7px 12px;align-items:center;border:1px solid var(--pro-line);background:#f8fafc;border-radius:14px;padding:12px 14px;margin-bottom:14px}.invoice-edit-meta span{font-size:12px;color:var(--pro-muted);font-weight:800}.invoice-editor-actions{position:sticky;bottom:-24px;background:#fff;padding:14px 0 calc(2px + env(safe-area-inset-bottom));border-top:1px solid #edf1f5;z-index:3}
@media(max-width:760px){.coverage-check-grid{grid-template-columns:1fr 1fr}.coverage-picker-tools{align-items:stretch;flex-direction:column}.coverage-count{width:max-content}.coverage-scroll{max-height:48vh}.coverage-custom{grid-template-columns:1fr}.coverage-custom .btn{width:100%}.invoice-register-summary{grid-template-columns:1fr 1fr}.invoice-register-summary>div:nth-child(2){grid-column:1/-1;grid-row:2}.invoice-row{display:grid!important;grid-template-columns:1fr!important}.invoice-actions{min-width:0!important;width:100%;text-align:left!important}.invoice-actions>b{font-size:20px}.invoice-action-row{justify-content:flex-start}.invoice-action-row .btn{flex:1 1 auto}.invoice-edit-meta{grid-template-columns:auto 1fr}.invoice-editor-actions{bottom:-15px}.invoice-editor-actions .btn,.invoice-editor-actions a{flex:1 1 calc(50% - 8px);text-align:center}}
@media(max-width:430px){.coverage-check-grid{grid-template-columns:1fr}.invoice-register-summary{grid-template-columns:1fr}.invoice-register-summary>div:nth-child(2){grid-column:auto;grid-row:auto}}

/* v40.5 partner login/workflow hardening */
.active-work-shell .active-contact span{display:block;color:#a7b3c5;font-size:13px;margin-top:3px}.active-work-shell .price-change-wait{margin:12px 0;border:1px solid #5e4b16;background:#2a250f;border-radius:14px;padding:13px;display:grid;gap:4px;color:#fde68a}.active-work-shell .price-change-wait span{color:#d8c985;font-size:13px}.active-work-shell .active-empty .btn{margin-top:10px}.partner-login.hidden{display:none!important}#partnerApp.hidden{display:none!important}
