:root{--ink:#182034;--muted:#6c7487;--line:#e7e9f0;--surface:#fff;--canvas:#f5f6fa;--navy:#171c32;--navy-soft:#252b47;--brand:#6956e8;--brand-soft:#efecff;--cyan:#27b8cc;--amber:#eca643;--green:#2bb68a;--orange:#ec7859;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:var(--canvas);color:var(--ink);-webkit-font-smoothing:antialiased;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,a{font:inherit}button{cursor:pointer}.shell{grid-template-columns:244px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:var(--navy);color:#fff;flex-direction:column;height:100vh;padding:30px 20px 22px;display:flex;position:sticky;top:0}.brand{letter-spacing:-.03em;align-items:center;gap:11px;padding:0 10px 34px;font-size:20px;font-weight:750;display:flex}.brand-mark{background:linear-gradient(145deg,#8d7aff,#5b47d6);border-radius:11px 4px 11px 11px;place-items:center;width:34px;height:34px;font-size:17px;display:grid}.nav-caption{color:#777e9b;letter-spacing:.16em;text-transform:uppercase;margin:0 12px 10px;font-size:10px;font-weight:750}.nav-list{gap:5px;margin:0;padding:0;list-style:none;display:grid}.nav-link{color:#aeb4ca;border-radius:10px;align-items:center;gap:12px;padding:10px 12px;font-size:13px;font-weight:600;text-decoration:none;transition:background .16s,color .16s;display:flex}.nav-link:hover,.nav-link:focus-visible{background:var(--navy-soft);color:#fff;outline:none}.nav-link.active{color:#fff;background:linear-gradient(90deg,#6956e84f,#6956e821)}.nav-icon{color:#aeb4ca;letter-spacing:.06em;border:1px solid #3b425f;border-radius:8px;place-items:center;width:26px;height:26px;font-size:8px;font-weight:800;display:grid}.active .nav-icon{background:var(--brand);color:#fff;border-color:#9787ff99}.sidebar-footer{border-top:1px solid #2c324b;grid-template-columns:36px 1fr auto;align-items:center;gap:10px;margin-top:auto;padding:18px 7px 0;display:grid}.profile-avatar{color:#392989;background:#d7ceff;border-radius:11px;place-items:center;width:36px;height:36px;font-size:11px;font-weight:800;display:grid}.sidebar-footer strong,.sidebar-footer span{display:block}.sidebar-footer strong{font-size:11px}.sidebar-footer span{color:#868da8;margin-top:3px;font-size:10px}.sidebar-footer button,.more-button{color:#8b91aa;background:0 0;border:0}main{min-width:0}.topbar{border-bottom:1px solid var(--line);background:#ffffffe0;justify-content:space-between;align-items:center;gap:24px;min-height:96px;padding:20px 36px;display:flex}.eyebrow{color:var(--muted);text-transform:capitalize;font-size:11px}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.035em;margin-bottom:0;font-size:25px}.topbar-actions{align-items:center;gap:9px;display:flex}.button,.icon-button{border-radius:10px;min-height:40px;font-size:12px;font-weight:700}.button{border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 16px;display:inline-flex}.button-primary{background:var(--brand);color:#fff;box-shadow:0 7px 18px #6956e838}.button-secondary,.icon-button{border:1px solid var(--line);color:var(--ink);background:#fff}.icon-button{width:40px}.icon-button span{color:var(--amber);font-size:9px}.content{gap:18px;max-width:1440px;margin:0 auto;padding:26px 36px 42px;display:grid}.metrics-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.metric-card,.panel{border:1px solid var(--line);background:var(--surface);box-shadow:0 4px 18px #1e233e09}.metric-card{border-radius:13px;padding:18px}.metric-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.metric-icon{letter-spacing:.06em;border-radius:9px;place-items:center;width:33px;height:33px;font-size:9px;font-weight:850;display:grid}.metric-icon.violet{color:#604add;background:#efecff}.metric-icon.orange{color:#d85c3d;background:#fff0eb}.metric-icon.cyan{color:#168fa1;background:#e8f9fb}.metric-icon.green{color:#198969;background:#e9f8f3}.metric-trend{border-radius:999px;padding:4px 7px;font-size:8px;font-weight:750}.metric-trend.positive{color:#238664;background:#eaf8f1}.metric-trend.warning{color:#bd6b26;background:#fff2e6}.metric-trend.neutral{color:#687084;background:#f1f2f6}.metric-card p{color:var(--muted);margin:18px 0 5px;font-size:11px;font-weight:600}.metric-card>strong{letter-spacing:-.04em;margin-bottom:7px;font-size:27px;display:block}.metric-card>span{color:#8b91a0;font-size:9px}.dashboard-grid{grid-template-columns:minmax(0,1.65fr) minmax(300px,.85fr);gap:18px;display:grid}.panel{border-radius:14px;padding:22px}.panel-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.panel-header.compact{align-items:center}.panel-kicker{color:var(--brand);letter-spacing:.1em;text-transform:uppercase;font-size:9px;font-weight:800}.panel h2{letter-spacing:-.025em;margin:5px 0 0;font-size:17px}.status-pill,.margin-pill{border-radius:999px;justify-content:center;align-items:center;font-size:9px;font-weight:750;display:inline-flex}.status-pill{color:#a86613;background:#fff2df;padding:6px 9px}.route-summary{background:linear-gradient(120deg,#f8f6ff,#fbfcff);border:1px solid #e8e5fb;border-radius:12px;grid-template-columns:1fr auto 1fr;align-items:center;margin:25px 0 20px;padding:17px 18px;display:grid;position:relative;overflow:hidden}.route-track{align-items:center;display:flex;position:absolute;top:26px;left:35px;right:35px}.route-track span{border:2px solid var(--brand);background:#fff;border-radius:50%;width:8px;height:8px}.route-track i{border-top:1px dashed #b9b0ed;flex:1}.route-point,.route-distance{z-index:1;padding-top:24px;position:relative}.route-point.destination{text-align:right}.route-point small,.route-point span,.route-distance span{color:var(--muted);font-size:9px;display:block}.route-point strong,.route-distance strong{margin:4px 0;font-size:11px;display:block}.route-distance{text-align:center;padding:24px 18px 0}.route-distance strong{color:var(--brand)}.trip-facts{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.trip-facts div{padding:15px 12px}.trip-facts div+div{border-left:1px solid var(--line)}.trip-facts span,.trip-facts strong{display:block}.trip-facts span{color:var(--muted);margin-bottom:4px;font-size:9px}.trip-facts strong{font-size:10px}.allocation-heading{justify-content:space-between;align-items:flex-end;gap:12px;margin:20px 0 11px;display:flex}.allocation-heading h3{margin-bottom:3px;font-size:12px}.allocation-heading span{color:var(--muted);font-size:9px}.text-button{color:var(--brand);background:0 0;border:0;padding:0;font-size:9px;font-weight:750}.allocation-bar{background:#eeeef4;border-radius:999px;gap:3px;height:6px;display:flex;overflow:hidden}.allocation-bar span:first-child{border-radius:999px 0 0 999px}.allocation-bar span:last-child{border-radius:0 999px 999px 0}.indigo{background:var(--brand)}.cyan{background:var(--cyan)}.amber{background:var(--amber)}.allocation-list{grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px;display:grid}.allocation-item{grid-template-columns:7px 1fr;gap:8px;min-width:0;display:grid}.allocation-item>strong{grid-column:2;font-size:11px}.allocation-item div strong,.allocation-item div span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.allocation-item div strong{font-size:9px}.allocation-item div span{color:var(--muted);margin-top:2px;font-size:8px}.dot{border-radius:50%;width:7px;height:7px;margin-top:2px}.finance-panel{flex-direction:column;display:flex}.finance-total{background:var(--navy);color:#fff;border-radius:12px;margin:24px 0 20px;padding:17px}.finance-total span,.finance-total small,.finance-total strong{display:block}.finance-total span{color:#a9aec3;font-size:9px}.finance-total strong{letter-spacing:-.04em;margin:6px 0 3px;font-size:23px}.finance-total small{color:#78d9b6;font-size:8px}.comparison{gap:14px;display:grid}.comparison>div{grid-template-columns:1fr auto;gap:7px;display:grid}.comparison-label{color:var(--muted);font-size:9px}.comparison-label i{border-radius:50%;width:6px;height:6px;margin-right:4px;display:inline-block}.comparison strong{font-size:10px}.track{background:#edeef3;border-radius:999px;grid-column:1/-1;height:5px;overflow:hidden}.track span{border-radius:inherit;background:var(--brand);height:100%;display:block}.track .charge,i.charge{background:var(--brand)}.track .cost,i.cost{background:var(--orange)}.cost-breakdown{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:12px 16px;margin:21px 0;padding-top:17px;display:grid}.cost-breakdown span,.cost-breakdown strong{display:block}.cost-breakdown span{color:var(--muted);font-size:8px}.cost-breakdown strong{margin-top:3px;font-size:10px}.full-button{width:100%;color:var(--brand);background:#faf9ff;border-color:#e6e2fb;margin-top:auto}.projects-panel{overflow:hidden}.project-table-wrapper{margin-top:18px;overflow-x:auto}.project-table{border-collapse:collapse;width:100%}.project-table caption{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.project-row{border-top:1px solid var(--line);grid-template-columns:minmax(240px,1.5fr) minmax(150px,.9fr) .55fr .55fr .35fr;align-items:center;gap:16px;min-width:780px;padding:13px 8px;font-size:10px;display:grid}.project-head{color:var(--muted);text-transform:uppercase;border-top:0;padding-top:5px;font-size:8px;font-weight:750}.project-head th{text-align:left}.project-row td,.project-row th{padding:0}.project-name{align-items:center;gap:10px;display:flex}.project-name>div strong,.project-name>div span{display:block}.project-name>div span{color:var(--muted);margin-top:3px;font-size:8px}.project-mark{color:#168978;background:#ecf8f7;border-radius:9px;flex:none;place-items:center;width:34px;height:34px;font-size:9px;font-weight:800;display:grid}.project-progress>div:first-child{color:var(--muted);justify-content:space-between;margin-bottom:6px;font-size:8px;display:flex}.project-progress .track{height:4px}.margin-pill{color:#218563;background:#eaf8f1;width:fit-content;padding:5px 8px}@media (max-width:1100px){.metrics-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}}@media (max-width:760px){.shell{display:block}.sidebar{height:auto;padding:16px;position:static}.brand{padding:0}.sidebar nav,.sidebar-footer{display:none}.topbar{align-items:flex-start;padding:18px}.topbar-actions .button-secondary,.icon-button{display:none}.content{padding:18px}.metrics-grid{grid-template-columns:1fr 1fr}.metric-trend{display:none}.route-summary{grid-template-columns:1fr 1fr}.route-distance{display:none}.trip-facts,.allocation-list{grid-template-columns:1fr}.trip-facts div+div{border-top:1px solid var(--line);border-left:0}}@media (max-width:480px){.metrics-grid{grid-template-columns:1fr}.panel,.metric-card{border-radius:11px}.topbar-actions .button-primary{padding:0 11px;font-size:10px}}.loading-page,.login-page{place-items:center;min-height:100vh;padding:24px;display:grid}.loading-page{color:var(--muted)}.login-page{background:radial-gradient(circle at 20% 20%,#6956e82e,#0000 32%),linear-gradient(145deg,#13182c,#252b47)}.login-card{background:#fff;border:1px solid #ffffff1f;border-radius:20px;width:min(100%,440px);padding:38px;box-shadow:0 24px 70px #060a1c59}.login-brand{align-items:center;gap:10px;margin-bottom:34px;font-size:18px;display:flex}.login-card h1{margin:8px 0 10px;font-size:28px}.login-card>p,.login-card>small,.section-heading p,.welcome-panel p{color:var(--muted);line-height:1.6}.login-card>small{text-align:center;margin-top:18px;font-size:10px;display:block}.form-stack{gap:15px;margin-top:26px;display:grid}label{color:#4e566b;gap:7px;font-size:11px;font-weight:700;display:grid}input,select{width:100%;min-height:42px;color:var(--ink);font:inherit;background:#fff;border:1px solid #dfe2eb;border-radius:9px;padding:0 12px;font-size:12px}input:focus,select:focus{border-color:var(--brand);outline:3px solid #6956e81c}.alert{border-radius:9px;padding:11px 13px;font-size:11px}.alert.error{color:#a13d27;background:#fff1ed;border:1px solid #f4c8bd}.password-hint{color:var(--muted);margin:0;font-size:10px}.app-shell .nav-link{text-align:left;background:0 0;border:0;width:100%}.app-shell .nav-link.active{background:linear-gradient(90deg,#6956e84f,#6956e821)}.nav-link.disabled{cursor:default;opacity:.55}.nav-link small{text-transform:uppercase;margin-left:auto;font-size:7px}.app-main{min-width:0}.app-main .topbar strong{margin-top:3px;font-size:18px;display:block}.secure-badge{color:#218563;background:#eaf8f1;border-radius:999px;padding:7px 10px;font-size:9px;font-weight:750}.workspace-section{gap:18px;display:grid}.section-heading{justify-content:space-between;align-items:flex-end;display:flex}.section-heading h1{margin:5px 0 4px}.section-heading p{margin:0;font-size:11px}.starter-metrics .metric-card>strong{margin:8px 0;font-size:18px}.starter-metrics .text-button{margin-top:5px}.welcome-panel{background:linear-gradient(120deg,#fff,#f7f5ff);padding:30px}.welcome-panel h2{margin-top:8px;font-size:22px}.welcome-panel p{max-width:680px;font-size:12px}.inline-form{grid-template-columns:repeat(4,minmax(130px,1fr)) auto;align-items:end;gap:12px;display:grid}.users-form{grid-template-columns:1fr 1.2fr .75fr 1fr auto}.data-table{padding:0;overflow:hidden}.data-row{border-top:1px solid var(--line);grid-template-columns:1.5fr .8fr 1fr .55fr .5fr;align-items:center;gap:14px;min-width:720px;padding:14px 18px;font-size:10px;display:grid}.data-row:first-child{border-top:0}.data-row.user-row{grid-template-columns:1.3fr .8fr .9fr .65fr .45fr}.data-row.data-head{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;background:#f9fafc;font-size:8px;font-weight:800}.data-row strong,.data-row small{display:block}.data-row small{color:var(--muted);margin-top:4px}.data-row select{min-height:34px;padding:0 8px;font-size:10px}.state{color:#6e7588;background:#f0f1f5;border-radius:999px;padding:5px 8px;font-size:8px;font-style:normal;font-weight:750;display:inline-flex}.state.active{color:#218563;background:#eaf8f1}.empty-state{color:var(--muted);text-align:center;padding:40px;font-size:11px}@media (max-width:1000px){.inline-form,.users-form{grid-template-columns:1fr 1fr}}@media (max-width:760px){.app-shell .sidebar nav,.app-shell .sidebar-footer{display:flex}.app-shell .sidebar{gap:14px}.app-shell .nav-list{flex-wrap:wrap;display:flex}.app-shell .nav-link.disabled{display:none}.app-shell .sidebar-footer{border-top:0;margin-top:0}.inline-form,.users-form{grid-template-columns:1fr}.data-table{overflow-x:auto}}
