:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:#17232e;background:#f3f6f8;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:#f3f6f8;color:#17232e}button,input,select,textarea{font:inherit}button{cursor:pointer}.hidden{display:none!important}.muted,.eyebrow,.nav-caption,.breadcrumbs,.login-note,.inline-note{color:#70808d}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.12em;margin:0 0 8px}.brand-mark{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#e5f0fa;color:#1e5d98;font-size:23px;font-weight:750}.brand-mark.small{width:36px;height:36px;border-radius:11px;font-size:18px}.login-screen{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 15% 20%,#e4eef6 0,transparent 35%),#f3f6f8}.login-card{width:min(100%,420px);padding:34px;background:#fff;border:1px solid #e1e7ec;border-radius:20px;box-shadow:0 22px 70px #243c5018}.login-card .brand-mark{margin-bottom:25px}.login-card h1{font-size:26px;letter-spacing:-.03em;margin:0 0 8px}.login-card>p.muted{font-size:14px;margin:0 0 25px}.login-card label,.modal-form label{display:grid;gap:7px;margin:14px 0;font-size:13px;font-weight:600;color:#354552}.login-card input,.modal-form input,.modal-form select,.modal-form textarea{width:100%;border:1px solid #dce4ea;border-radius:9px;background:#fff;color:#17232e;padding:10px 12px;min-height:42px;outline:none}.login-card input:focus,.modal-form input:focus,.modal-form select:focus,.modal-form textarea:focus{border-color:#3980bb;box-shadow:0 0 0 3px #3980bb22}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;padding:9px 14px;border-radius:9px;border:1px solid transparent;font-weight:650;font-size:13px;transition:background .15s ease,border-color .15s ease}.button.primary{background:#1f5e94;color:#fff}.button.primary:hover{background:#194d7a}.button.secondary{background:#fff;color:#374b5a;border-color:#dce4ea}.button.secondary:hover{background:#f5f8fa}.button.subtle{background:transparent;color:#527083;border-color:transparent}.button.subtle:hover{background:#eef3f6}.button.full{width:100%;margin-top:8px}.login-note{font-size:12px;text-align:center;margin:18px 0 0}.form-error{min-height:18px;color:#b23d37;font-size:12px;margin:8px 0 0}.app-shell{min-height:100vh;display:grid;grid-template-columns:238px minmax(0,1fr)}.sidebar{display:flex;flex-direction:column;min-height:100vh;background:#16334e;color:#dce6ef;padding:19px 13px 15px}.brand-lockup{display:flex;align-items:center;gap:10px;padding:2px 10px 26px}.brand-lockup strong{display:block;color:#fff;font-size:15px;letter-spacing:.02em}.brand-lockup small{display:block;color:#a7bac9;font-size:11px;margin-top:2px}.sidebar .brand-mark{background:#e4f0fb;color:#1e5d98}.nav-caption{color:#91a8ba;font-size:10px;letter-spacing:.13em;font-weight:700;padding:0 11px 9px}.main-nav{display:grid;gap:3px}.nav-item{display:flex;align-items:center;gap:11px;border:0;border-radius:9px;padding:10px 11px;color:#c6d4df;background:transparent;text-align:left;font-size:13px;font-weight:530}.nav-item:hover{background:#ffffff0f;color:#fff}.nav-item.active{background:#fff;color:#183a58;font-weight:680}.nav-icon{display:grid;place-items:center;width:18px;font-size:16px;color:inherit}.sidebar-foot{display:flex;align-items:center;gap:8px;margin-top:auto;padding:14px 10px 2px;color:#a9bac8;font-size:11px}.connection-dot{width:8px;height:8px;border-radius:50%;background:#8798a5}.connection-dot.ok{background:#53c58a;box-shadow:0 0 0 3px #53c58a20}.connection-dot.bad{background:#e5a04c;box-shadow:0 0 0 3px #e5a04c20}.workspace{min-width:0}.topbar{height:68px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 30px;background:#fff;border-bottom:1px solid #e4e9ed}.topbar-title{display:grid;gap:2px;margin-right:auto}.breadcrumbs{font-size:11px}.topbar-title strong{font-size:15px;font-weight:650}.topbar-actions,.user-menu{display:flex;align-items:center;gap:12px}.icon-button{width:35px;height:35px;border:1px solid #e0e6eb;background:#fff;border-radius:9px;color:#526778;font-size:19px}.icon-button:hover{background:#f3f7f9}.avatar{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:#eaf2f8;color:#285c83;font-weight:700;font-size:11px}.user-name{font-size:12px;color:#4b5d6a;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-button{border:0;background:transparent;color:#638096;font-size:12px;padding:6px}.text-button:hover{color:#214f73}.mobile-brand{display:none}.content{max-width:1500px;margin:0 auto;padding:28px 30px 50px}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:23px}.page-head h1{margin:0 0 6px;font-size:24px;letter-spacing:-.03em;font-weight:680;color:#182a37}.page-head p{margin:0;color:#73828d;font-size:13px}.head-actions{display:flex;gap:8px;align-items:center}.notice{padding:11px 14px;border:1px solid #ead8a6;border-radius:10px;background:#fff9e8;color:#7a5b1c;font-size:12px;margin:0 0 18px}.notice.error{border-color:#f0c8c4;background:#fff2f0;color:#9e3934}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:17px}.metric-card{background:#fff;border:1px solid #e3e9ed;border-radius:13px;padding:16px 17px;min-width:0}.metric-top{display:flex;justify-content:space-between;align-items:center;gap:10px;color:#6b7d8a;font-size:12px}.metric-icon{display:grid;place-items:center;width:29px;height:29px;border-radius:9px;background:#fff6c7;color:#111;font-size:15px}.metric-value{font-size:27px;font-weight:700;letter-spacing:-.04em;margin-top:10px;color:#1b2e3b}.metric-foot{color:#87949d;font-size:11px;margin-top:3px}.panel-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(270px,.8fr);gap:15px}.panel{background:#fff;border:1px solid #e3e9ed;border-radius:13px;padding:17px;min-width:0}.panel-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:15px}.panel-head h2{font-size:14px;margin:0;font-weight:670;color:#253945}.panel-head p{font-size:11px;color:#83919a;margin:4px 0 0}.panel-link{border:0;background:transparent;color:#3973a0;font-size:12px;font-weight:600;padding:0}.panel-link:hover{text-decoration:underline}.status-list{display:grid}.status-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px;padding:11px 0;border-top:1px solid #edf0f2;font-size:12px}.status-row:first-child{border-top:0}.status-row strong{font-size:12px;font-weight:620;color:#30434f}.status-row small{display:block;color:#8b969e;font-size:11px;margin-top:3px}.pill{display:inline-flex;align-items:center;gap:5px;max-width:100%;padding:4px 8px;border-radius:20px;background:#eef2f5;color:#5e6e7a;font-size:10px;font-weight:650;white-space:nowrap}.pill.good{background:#e8f5ee;color:#2f7a50}.pill.warn{background:#fff4dc;color:#956a18}.pill.blue{background:#e7f1fb;color:#326e9d}.pill.red{background:#ffefed;color:#a14139}.flow-list{display:grid;gap:11px}.flow-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:#70808b;font-size:11px}.flow-node{padding:7px 9px;border:1px solid #e1e8ed;border-radius:8px;background:#fbfcfd;color:#425563}.flow-arrow{color:#85a2b8;font-size:14px}.source-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:13px}.source-chip{border-radius:20px;background:#f1f5f7;color:#617582;font-size:10px;padding:5px 8px}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 14px}.toolbar-left,.toolbar-right{display:flex;align-items:center;gap:8px}.search-input{width:min(260px,40vw);min-height:37px;border:1px solid #dfe6eb;border-radius:9px;background:#fff;padding:8px 11px;color:#263b48;font-size:12px}.search-input:focus{outline:3px solid #3980bb22;border-color:#3980bb}.select-control{min-height:37px;padding:7px 10px;border:1px solid #dfe6eb;border-radius:9px;background:#fff;color:#425865;font-size:12px}.table-wrap{overflow:auto;border:1px solid #e7ecef;border-radius:10px}.data-table{width:100%;border-collapse:collapse;text-align:left;min-width:650px}.data-table th{padding:10px 12px;background:#f8fafb;color:#768590;font-size:10px;letter-spacing:.05em;text-transform:uppercase;font-weight:700;white-space:nowrap}.data-table td{padding:11px 12px;border-top:1px solid #eef1f3;color:#354a57;font-size:12px;vertical-align:middle}.data-table td strong{font-size:12px;font-weight:630;color:#273b47}.data-table .secondary-text{display:block;color:#87949d;font-size:10px;margin-top:3px}.table-action{border:1px solid #dce6ec;border-radius:7px;background:#fff;color:#32678e;padding:5px 8px;font-size:10px;font-weight:650;white-space:nowrap}.table-action:hover{background:#edf5fa}.empty-state{padding:36px 15px;text-align:center;color:#85929b;font-size:12px}.empty-state strong{display:block;color:#435967;font-size:13px;margin-bottom:5px}.loading{padding:28px;text-align:center;color:#84929b;font-size:12px}.inline-status{font-size:11px;color:#7a8993}.toast{position:fixed;right:24px;bottom:22px;z-index:100;padding:11px 15px;max-width:min(420px,calc(100vw - 32px));border-radius:10px;background:#173a56;color:#fff;font-size:12px;box-shadow:0 10px 30px #0c263a26;opacity:0;transform:translateY(8px);pointer-events:none;transition:.18s ease}.toast.show{opacity:1;transform:translateY(0)}.modal{width:min(680px,calc(100vw - 26px));max-height:calc(100vh - 24px);padding:0;border:1px solid #dce4e9;border-radius:16px;background:#fff;color:#1d2c37;box-shadow:0 28px 90px #0d263d38}.modal::backdrop{background:#0d1d2cb0;backdrop-filter:blur(2px)}.modal.compact-modal{width:min(450px,calc(100vw - 26px))}.modal-form{padding:22px}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding-bottom:13px;border-bottom:1px solid #e8edef;margin-bottom:15px}.modal-head h2{font-size:19px;margin:0;letter-spacing:-.02em}.close-button{border:0;background:#f2f5f6;color:#657783;width:31px;height:31px;border-radius:8px;font-size:20px;line-height:1}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}.modal-form label{font-size:12px;margin:7px 0}.modal-form textarea{resize:vertical}.wide-field{grid-column:1/-1}.inline-note{font-size:11px;line-height:1.5;padding:10px 11px;background:#f6f8f9;border-radius:8px;margin:12px 0 0}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.modal-form .form-error{margin:7px 0 0}.mobile-nav-toggle{display:none}@media(max-width:1100px){.app-shell{grid-template-columns:210px minmax(0,1fr)}.content{padding-left:22px;padding-right:22px}.topbar{padding:0 22px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:780px){.app-shell{display:block}.sidebar{min-height:0;padding:10px 12px 8px}.brand-lockup{display:none}.nav-caption{display:none}.main-nav{display:flex;overflow:auto;gap:4px}.nav-item{white-space:nowrap;padding:9px 10px}.nav-icon{display:none}.sidebar-foot{display:none}.topbar{height:60px;padding:0 15px}.mobile-brand{display:flex;align-items:center;gap:8px;color:#203c52;font-size:14px}.mobile-brand .brand-mark{width:30px;height:30px;font-size:15px}.topbar-title{margin-left:0}.topbar-title .breadcrumbs{display:none}.user-name{display:none}.content{padding:21px 15px 35px}.panel-grid{grid-template-columns:1fr}.page-head{align-items:center}.data-table{min-width:600px}}@media(max-width:520px){.topbar{gap:7px}.topbar-title strong{font-size:13px}.user-menu{gap:7px}.text-button{font-size:11px;padding:4px}.content{padding-left:12px;padding-right:12px}.page-head{align-items:flex-start;flex-direction:column}.head-actions{width:100%}.metric-grid{gap:8px}.metric-card{padding:12px}.metric-value{font-size:23px}.metric-top{font-size:11px}.toolbar{align-items:stretch;flex-direction:column}.toolbar-left,.toolbar-right{width:100%}.search-input{width:100%}.select-control{flex:1}.form-grid{grid-template-columns:1fr}.wide-field{grid-column:auto}.modal-form{padding:18px}.modal-actions .button{flex:1}}
.invoice-booking-choices { max-height: 340px; overflow: auto; border: 1px solid var(--line, #dce4eb); border-radius: 12px; }
.invoice-booking-row { display: grid; grid-template-columns: minmax(0, 1fr) 150px 150px 180px; align-items: center; gap: 12px; padding: 11px 14px; border-bottom: 1px solid var(--line, #e5ebf0); }
.invoice-booking-row:last-child { border-bottom: 0; }
.invoice-booking-row label { display: flex; align-items: flex-start; gap: 10px; margin: 0; }
.invoice-booking-row label span { display: grid; gap: 4px; }
.invoice-booking-row small { color: var(--muted, #667789); font-size: 12px; }
.invoice-booking-row input[type="number"] { min-width: 0; }
.invoice-booking-row label.invoice-advance-choice { display: grid; gap: 4px; color: #405563; font-size: 11px; font-weight: 650; }
.invoice-booking-row label.invoice-review-confirmation { grid-column: 1 / -1; align-items: center; color: #354452; font-size: 12px; font-weight: 600; }
.invoice-booking-row label.invoice-review-confirmation input { flex: 0 0 auto; margin-top: 1px; }
.maintenance-part-row { grid-template-columns: minmax(0, 1fr) minmax(120px, .6fr) auto; align-items: end; gap: 10px; margin: 8px 0; }
@media (max-width: 680px) {
  .invoice-booking-row { grid-template-columns: 1fr; }
  .maintenance-part-row { grid-template-columns: 1fr 1fr; }
}
.report-filters{margin-bottom:16px}.report-filter-grid{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));gap:12px}.report-filter-grid label{display:grid;gap:6px;color:#586a76;font-size:11px;font-weight:650}.report-filter-grid input,.report-filter-grid select{width:100%;min-height:37px;padding:7px 10px;border:1px solid #dfe6eb;border-radius:9px;background:#fff;color:#425865;font-size:12px}.report-filter-grid input:focus,.report-filter-grid select:focus{outline:3px solid #3980bb22;border-color:#3980bb}.report-filter-actions{display:flex;align-items:center;gap:10px;margin-top:14px}.report-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.report-note{margin-bottom:9px}.report-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.report-section-head h2{font-size:14px;margin:0;color:#253945}.report-section-head p{font-size:11px;color:#83919a;margin:4px 0 0}.report-section-head .toolbar-right{align-items:center}.report-row-note{margin:10px 0 0}
@media(max-width:1100px){.report-filter-grid{grid-template-columns:repeat(3,minmax(120px,1fr))}.report-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.report-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-section-head{align-items:flex-start;flex-direction:column}.report-section-head .toolbar-right{width:100%}.report-section-head select{flex:1}.report-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.report-filter-actions{flex-wrap:wrap}}
.modal.message-modal{width:min(720px,calc(100vw - 26px));overflow-y:auto}.message-modal .modal-form{max-height:calc(100vh - 26px);overflow-y:auto}.message-channel-actions{justify-content:flex-start;margin-top:8px;margin-bottom:15px}.message-channel-actions .button{flex:0 1 auto}.message-channel-actions .button.disabled{opacity:.48;cursor:not-allowed}
.import-file-label{display:grid;gap:8px;max-width:550px;margin:16px 0;font-size:12px;font-weight:650;color:#354552}.import-file-label input{padding:10px;border:1px solid #dce4ea;border-radius:9px;background:#fff}.import-confirm{display:flex;align-items:flex-start;gap:9px;margin-top:18px;font-size:12px;color:#354552}.import-confirm input{margin-top:2px}.import-summary{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.import-summary span{padding:8px 10px;border:1px solid #e2e8ed;border-radius:8px;background:#f8fafb;color:#526572;font-size:11px}.import-summary strong{color:#1f5e94}.import-preview-panel{margin:12px 0}.import-preview-panel .panel-head h2{font-size:13px}
.import-contact-fields{display:grid;grid-template-columns:repeat(2,minmax(120px,1fr));gap:7px;margin-top:8px}.import-contact-fields label{display:grid;gap:4px;color:#526572;font-size:10px}.import-contact-fields input{width:100%;min-width:0;padding:7px 8px;border:1px solid #dce4ea;border-radius:7px;background:#fff;font:inherit;font-size:11px}
.import-company-fields{margin-top:8px;max-width:520px}.import-company-fields summary{color:#1f5e94;font-size:11px;font-weight:650;cursor:pointer}.import-company-fields>div{display:grid;grid-template-columns:repeat(2,minmax(120px,1fr));gap:7px;margin-top:8px}.import-company-fields label{display:grid;gap:4px;color:#526572;font-size:10px}.import-company-fields input{width:100%;min-width:0;padding:7px 8px;border:1px solid #dce4ea;border-radius:7px;background:#fff;font:inherit;font-size:11px}.import-company-fields small{display:block;margin-top:7px;color:#6a7c88;font-size:10px}
.company-rates-panel{margin:14px 0;padding:14px}.company-rate-row{margin:10px 0;padding:12px;border:1px solid #e2e8ed;border-radius:10px;background:#fbfcfd}.company-rate-row .form-grid{grid-template-columns:repeat(3,minmax(120px,1fr));align-items:end}.company-rate-row .form-grid label{margin:4px 0}.company-rate-row .table-action{justify-self:start}
.invoice-choice-filters{grid-template-columns:repeat(4,minmax(130px,1fr));gap:10px;margin:10px 0}.invoice-choice-filters label{margin:4px 0}
@media(max-width:700px){.company-rate-row .form-grid{grid-template-columns:repeat(2,minmax(120px,1fr))}}
@media(max-width:700px){.invoice-choice-filters{grid-template-columns:repeat(2,minmax(130px,1fr))}}
.payroll-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;margin:0 0 16px}.payroll-form-panel{padding:14px}.payroll-form{padding:0}.payroll-form .form-grid{gap:0 10px}.payroll-form .modal-actions{justify-content:flex-start}.report-panel{margin-top:14px}
@media(max-width:800px){.payroll-grid{grid-template-columns:1fr}}
.repeat-toggle{display:flex;align-items:center;justify-content:space-between;gap:10px}.repeat-toggle input,.weekday-picker input{width:auto;min-height:0}.repeat-booking-fields{padding:10px 12px;border:1px solid #e2e8ed;border-radius:10px;background:#fbfcfd}.weekday-picker{display:flex;flex-wrap:wrap;gap:8px 14px;border:0;padding:0;margin:8px 0}.weekday-picker legend{font-size:12px;font-weight:600;margin-bottom:8px}.weekday-picker label{display:inline-flex;align-items:center;gap:6px;margin:0}
.permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 12px;max-height:44vh;overflow:auto}.permission-choice{display:flex;align-items:center;gap:8px;padding:7px 8px;border:1px solid #e6ebef;border-radius:8px;background:#fbfcfd;font-size:11px;color:#425663}.permission-choice input{width:auto;min-height:0;flex:0 0 auto}.permission-choice span{line-height:1.35}[data-sensitive-staff]{transition:opacity .15s ease}
@media(max-width:520px){.permission-grid{grid-template-columns:1fr}}
.invoice-fare-details{grid-column:1/-1;padding:8px 14px;border-top:1px solid var(--line,#e5ebf0)}.invoice-fare-details summary{cursor:pointer;color:#315f83;font-size:12px;font-weight:650}.invoice-fare-details>small{display:block;margin-top:6px;color:var(--muted,#667789);font-size:11px}.invoice-fare-item{display:grid;grid-template-columns:minmax(0,1fr) 150px auto;gap:8px;margin-top:8px}.invoice-fare-item input{min-width:0;padding:8px;border:1px solid #dce4ea;border-radius:8px}.invoice-fare-details>[data-add-invoice-fare]{margin-top:8px}@media(max-width:600px){.invoice-fare-item{grid-template-columns:1fr 110px auto}}
.notification-topbar-badge{position:absolute;top:-3px;right:-5px;min-width:16px;height:16px;padding:0 4px;display:inline-grid;place-items:center;border-radius:999px;background:#b33b38;color:#fff;font-size:9px;font-weight:750;line-height:1}.icon-button{position:relative}.notification-list{padding:6px 14px}.notification-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 2px;border-bottom:1px solid var(--line,#e5ebf0)}.notification-card:last-child{border-bottom:0}.notification-card.unread{border-left:3px solid #347db2;padding-left:12px}.notification-card.read{opacity:.78}.notification-main{min-width:0}.notification-heading{display:flex;align-items:center;gap:9px}.notification-main p{margin:6px 0;color:#596c79;font-size:12px}.notification-main small{color:#84929b;font-size:10px}.notification-actions{display:flex;align-items:center;gap:6px;flex:0 0 auto}.notification-actions .button{min-height:32px;padding:6px 10px;font-size:11px}@media(max-width:620px){.notification-card{align-items:flex-start;flex-direction:column;gap:9px}.notification-actions{width:100%;justify-content:flex-end}}

.collection-allocation-row{display:grid;grid-template-columns:minmax(0,1fr) 150px auto;align-items:end;gap:10px;padding:10px 0;border-bottom:1px solid #edf0f2}.collection-allocation-row label{display:grid;gap:7px;margin:6px 0;font-size:12px;font-weight:600;color:#354552}.collection-allocation-row select,.collection-allocation-row input{width:100%;min-height:40px;border:1px solid #dce4ea;border-radius:9px;background:#fff;color:#17232e;padding:9px 10px}.collection-allocation-row .table-action{margin-bottom:6px}
@media(max-width:520px){.collection-allocation-row{grid-template-columns:minmax(0,1fr) 120px}.collection-allocation-row .table-action{grid-column:1/-1;justify-self:end}}

.message-history{margin-top:15px;border-top:1px solid #e8edef;padding-top:12px}.message-history h3{margin:0 0 8px;font-size:13px;color:#405665}.message-history-entry{padding:10px 0;border-bottom:1px solid #edf0f2}.message-history-entry strong,.message-history-entry span,.message-history-entry small{display:block}.message-history-entry strong{font-size:11px;text-transform:capitalize}.message-history-entry span,.message-history-entry small{margin-top:4px;color:#768590;font-size:10px}.message-history-entry p{white-space:pre-wrap;margin:8px 0;color:#40525e;font-size:11px;line-height:1.45}

/* GoCab brand refresh: black, white and yellow */
:root{--gocab-black:#111111;--gocab-yellow:#f5c400;--gocab-white:#ffffff;--gocab-paper:#f7f7f4;--gocab-line:#deded8;--gocab-muted:#6b6b66;--gocab-focus:#d5a900;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--gocab-black);background:var(--gocab-paper)}
body{background:var(--gocab-paper);color:var(--gocab-black)}
.brand-logo{display:block;width:42px;height:42px;object-fit:contain;flex:0 0 auto}.brand-logo.login-logo{width:78px;height:78px;margin:0 0 20px}.brand-lockup{gap:11px}.brand-lockup strong{color:#fff;font-size:15px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.brand-lockup small{color:#d1d1ca;font-size:10px;line-height:1.45}.mobile-brand .brand-logo{width:31px;height:31px}
.login-screen{background:radial-gradient(circle at 15% 20%,#f4e7ac 0,transparent 34%),var(--gocab-paper)}.login-card{border-color:#dedbd0;box-shadow:0 22px 70px #11111112}.login-card input:focus,.modal-form input:focus,.modal-form select:focus,.modal-form textarea:focus,.search-input:focus,.select-control:focus{border-color:var(--gocab-focus);box-shadow:0 0 0 3px #f5c40035;outline:none}
.app-shell{grid-template-columns:232px minmax(0,1fr)}.sidebar{background:var(--gocab-black);color:#f8f8f5;border-right:1px solid #272727}.nav-caption{color:#a6a69e}.nav-item{color:#e5e5df;border-radius:6px;padding:10px 11px;font-size:12px}.nav-item:hover{background:#ffffff16;color:#fff}.nav-item.active{background:var(--gocab-yellow);color:#111;font-weight:800}.nav-icon{color:inherit}.sidebar-foot{color:#b7b7af}.connection-dot.ok{background:#f5c400;box-shadow:0 0 0 3px #f5c40024}
.topbar{background:#fff;border-bottom:1px solid var(--gocab-line)}.topbar-title strong{color:#111}.breadcrumbs,.muted,.eyebrow,.login-note,.inline-note{color:var(--gocab-muted)}.content{max-width:1600px;background:var(--gocab-paper)}.page-head h1{color:#111;font-size:25px;font-weight:760}.page-head p{color:#70706a}.button.primary{background:var(--gocab-yellow);color:#101010;border-color:#ddb300;font-weight:800}.button.primary:hover{background:#e6b800}.button.secondary{background:#fff;color:#111;border-color:#c9c9c1}.button.secondary:hover,.table-action:hover{background:#fff7cc;border-color:#d8b21b;color:#111}.button.subtle,.text-button,.panel-link{color:#655100}.icon-button{border-color:#cfcfc8;color:#111;background:#fff}.avatar{background:var(--gocab-yellow);color:#111}
.metric-card,.panel,.modal,.login-card{background:#fff;border-color:var(--gocab-line);border-radius:8px;box-shadow:0 2px 9px #11111108}.metric-grid{gap:11px}.metric-card{padding:15px 16px;border-top:3px solid var(--gocab-yellow)}.metric-icon{background:#fff4bd;color:#181818;border-radius:6px}.metric-value{color:#111}.metric-top{color:#55554e}.panel-head h2{color:#111;font-size:15px;font-weight:750}.panel-head p{color:#77776f}.notice{border-color:#e4cb56;background:#fff9d9;color:#514300;border-radius:7px}.notice.error{border-color:#e1aaa4;background:#fff1ee;color:#8e2d26}.pill.warn{background:#fff1a8;color:#4c3a00}.pill.blue{background:#ededeb;color:#383832}.pill.good{background:#e5f2dd;color:#2c5621}.table-wrap{border-color:#d9d9d2;border-radius:7px;scrollbar-color:#f5c400 #ecece8;scrollbar-width:thin}.data-table th{position:sticky;top:0;z-index:1;background:#171717;color:#fff;font-size:10px}.data-table td{border-top-color:#e9e9e4;color:#30302b}.data-table tr:nth-child(even) td{background:#f3f3f0}.data-table tr:hover td{background:#fff4bd}.data-table td strong{color:#111}.table-action{border-color:#d6d2bd;color:#2f280e}.search-input,.select-control{border-color:#d2d2cb;color:#171717}.source-chip{background:#f0efea;color:#46463e}.status-row{border-top-color:#e7e7e2}.status-row strong{color:#171717}.inline-note{background:#f1f1ed}.toast{background:#111;color:#fff;border-left:4px solid var(--gocab-yellow)}
*:focus-visible{outline:3px solid #d5a900!important;outline-offset:2px!important}.main-nav .nav-item:focus-visible,.button:focus-visible,.table-action:focus-visible{outline:3px solid #ffe256!important;outline-offset:2px!important}
@media(max-width:780px){.sidebar{background:#111}.main-nav{scrollbar-color:#f5c400 #222}.mobile-brand{color:#111}}
.dashboard-toolbar{display:flex;align-items:end;justify-content:space-between;gap:12px;margin:-5px 0 14px;padding:12px;background:#fff;border:1px solid var(--gocab-line);border-left:4px solid var(--gocab-yellow);border-radius:7px}.dashboard-filter-fields{display:flex;align-items:end;flex-wrap:wrap;gap:9px}.dashboard-filter-fields label{display:grid;gap:5px;color:#56564e;font-size:10px;font-weight:750;text-transform:uppercase;letter-spacing:.03em}.dashboard-filter-fields input,.dashboard-filter-fields select{min-height:36px;border:1px solid #d2d2cb;border-radius:5px;background:#fff;color:#111;padding:7px 9px;font-size:12px}.dashboard-filter-actions{display:flex;gap:7px}.dashboard-keyboard-hint{flex-basis:100%;color:#77776f;font-size:10px}.dashboard-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.dashboard-revenue-snapshot .dashboard-kpis{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:0}.dashboard-kpis .metric-card:nth-child(4n+1){border-top-color:#111}.dashboard-two-col{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.85fr);gap:12px;margin:12px 0}.dashboard-panel{min-width:0}.dashboard-chart{width:100%;min-height:220px;display:block}.dashboard-chart text{font:10px Inter,system-ui,sans-serif;fill:#696960}.dashboard-chart .chart-grid{stroke:#e8e8e2;stroke-width:1}.dashboard-chart .chart-line{fill:none;stroke:#d3a800;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.dashboard-chart .chart-area{fill:#f5c400;opacity:.17}.dashboard-chart .chart-dot{fill:#111;stroke:#f5c400;stroke-width:2}.dashboard-chart-wrap{overflow:hidden}.dashboard-ratio{display:grid;gap:14px}.ratio-track{height:14px;border:1px solid #d7d7cf;border-radius:2px;background:#ededeb;overflow:hidden}.ratio-track>span{display:block;height:100%;background:#f5c400;border-right:2px solid #111}.ratio-legend{display:flex;justify-content:space-between;gap:12px;font-size:11px;color:#595950}.ratio-value{font-size:23px;font-weight:800;color:#111}.dashboard-pipeline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0}.dashboard-pipeline a{display:block;color:#111;text-decoration:none;padding:12px;background:#fff;border:1px solid var(--gocab-line);border-bottom:3px solid #111;border-radius:6px}.dashboard-pipeline a:hover{background:#fff6cb;border-bottom-color:#d5a900}.dashboard-pipeline strong{display:block;font-size:20px}.dashboard-pipeline span{display:block;color:#66665d;font-size:10px;margin-top:3px}.dashboard-alert-list{display:grid;gap:7px}.dashboard-alert-item{padding:9px 10px;background:#fff9dd;border-left:3px solid #f5c400;font-size:11px;color:#3e360b}.dashboard-alert-item.critical{background:#fff0ed;border-left-color:#b53c32;color:#70231e}
@media(max-width:1050px){.dashboard-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-two-col{grid-template-columns:1fr}}
@media(max-width:680px){.dashboard-revenue-snapshot .dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-toolbar{align-items:stretch;flex-direction:column}.dashboard-filter-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-filter-fields label,.dashboard-filter-fields select,.dashboard-filter-fields input{min-width:0;width:100%}.dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-pipeline{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-chart{min-height:180px}}
.dashboard-chart .expense-line{stroke:#272727;stroke-dasharray:6 4;stroke-width:2.5}.dashboard-chart .expense-dot{fill:#fff;stroke:#272727}.dashboard-chart-legend{display:flex;gap:16px;margin:0 0 -8px;color:#595950;font-size:10px}.dashboard-chart-legend span{display:inline-flex;align-items:center;gap:6px}.dashboard-chart-legend i{width:12px;height:3px;background:#d3a800;display:inline-block}.dashboard-chart-legend .expense-key{background:#272727}
.sidebar{position:sticky;top:0;height:100vh;overflow:hidden}.main-nav{flex:1;min-height:0;overflow-y:auto;align-content:start;scrollbar-color:#f5c400 #222;scrollbar-width:thin}@media(max-width:780px){.sidebar{position:static;height:auto;overflow:visible}.main-nav{flex:none;overflow-y:visible}}
.data-table th{padding:8px 9px}.data-table td{padding:8px 9px;font-size:11px}.table-action{min-height:27px;padding:4px 6px;font-size:10px}
.dashboard-filter-note{flex-basis:100%;margin:0;color:#77776f;font-size:10px;line-height:1.45}
.skip-link{position:fixed;left:12px;top:12px;z-index:2000;transform:translateY(-160%);padding:10px 14px;border:2px solid #ffe256;border-radius:6px;background:#111;color:#ffe256;font-weight:750;text-decoration:none;transition:transform .12s ease}.skip-link:focus{transform:translateY(0)}
.keyboard-help{padding:6px 18px;border-bottom:1px solid #eee4bd;background:#fffdf2;color:#595950;font-size:10px;line-height:1.45}
.data-table tr.muted-row td{color:#77776f;background:#f1f1ed}
.company-rate-row .rate-charge-policy{grid-column:1/-1;margin:0;padding:8px 10px;border-left:3px solid #f5c400;background:#fff9dd;color:#59502c;font-size:11px;line-height:1.45}
