/* Dashboard actions share the homepage's navy and cobalt palette. */
:root{font-family:"Space Grotesk",Arial,sans-serif;--ink:#15243b;--muted:#59697f;--orange:var(--action);--line:#dae3ef;--rail:#101c2e;color:#15243b;background:#f7f9fd;font-synthesis:none}
body{-webkit-font-smoothing:antialiased}a{color:var(--action)}h1{font-weight:600}::selection{background:var(--action-accent);color:#15243b}:focus-visible{outline-color:var(--action)}
.brand{font-size:1.15rem;letter-spacing:-.7px;color:#f4f7fd}.brand strong{color:#97b7ff}.brandmark{display:block;background:transparent;flex:none;border-radius:10px}.sidebar{border-right:1px solid #3a4b65}.rail-label{color:#aab9ce;font-weight:500}.sidebar nav a{color:#cbd5e6;font-size:.87rem;border:1px solid transparent;border-radius:5px}.sidebar nav a span{color:#aab9ce}.sidebar nav a.active{color:#f4f7fd;background:#23334d;border-color:#516481}.sidebar nav a.active span{color:#97b7ff}.sidebar nav a:hover{background:#1e2e47}.rail-bottom{border-color:#3a4b65}.rail-bottom p,.logout{color:#b3c0d4}.mode-tag{background:#23334d;color:#97b7ff;font-weight:500}.worker.on{color:#c5e89f}.worker{color:#d9bd9b}.topbar{background:#fff}.eyebrow{color:#315bd8;font-weight:600}
.button{border-color:var(--action-border);color:var(--action);border-radius:5px}.button:hover{background:var(--action-soft);border-color:var(--action-accent)}.button.primary{background:var(--action);border-color:var(--action);color:var(--action-text)}.button.primary:hover{background:var(--action-hover);border-color:var(--action-hover);color:var(--action-text)}.button.danger{border-color:#dec7bd;color:#9d402a}.text-button{color:var(--action)}.text-button:hover{color:var(--action-hover)}.stats a:hover{border-color:#91ace9}.calendar-day.today{background:#f0f4ff}.weekday-picker input:checked+span{background:var(--action-soft);color:var(--action);border-color:var(--action-accent)}.import-steps .current{color:var(--action)}.import-steps .current span{background:var(--action-soft);border-color:var(--action-border)}.loading-dot{border-top-color:var(--action)}progress{accent-color:var(--action)}progress::-webkit-progress-value{background:var(--action)}progress::-moz-progress-bar{background:var(--action)}.panel,.vehicle-card,.connections,.stats a{box-shadow:0 2px 4px #23301803}
/* Sign-in and invitation share the public brand, with no external assets. */
.login-main{background-color:#101c2e;background-image:radial-gradient(ellipse at 50% 0,#315bd826,transparent 58%),linear-gradient(#46526638 1px,transparent 1px),linear-gradient(90deg,#46526638 1px,transparent 1px);background-size:auto,64px 64px,64px 64px;--ink:#f4f7fd;--muted:#b3c0d4;--line:#516481;color:#e8edf6}
.login-main>.content{max-width:526px;padding:35px 24px}.login-card{border:1px solid #516481;background:#15243b;padding:42px;border-radius:12px;box-shadow:0 30px 80px #0004}.login-brand{display:inline-block}.login-brand .brandmark{height:44px;width:44px;margin-bottom:26px}.login-card h1{font-size:2rem;font-weight:400;letter-spacing:-1.2px;line-height:1.15}.login-card .eyebrow{font-size:.62rem!important;font-weight:500;color:#97b7ff;letter-spacing:2px}.login-card>.muted{font-size:.87rem;line-height:1.65}.login-card label{font-size:.82rem;color:#cbd5e6;font-weight:500}.login-card input:not([type=hidden]){background:#101c2e;border:1px solid #7589a6;color:#f4f7fd;border-radius:5px;padding:13px;font-size:.86rem}.login-card input::placeholder{color:#aab9ce;opacity:1}.login-card input:focus{outline:2px solid #97b7ff;outline-offset:2px}.login-card .button.primary{min-height:48px;font-size:.88rem}.login-card .fine{font-size:.73rem;line-height:1.75}.login-card>a.fine,.login-card>a:not(.login-brand){color:#97b7ff}.login-card .notice.warning{color:#f5d6a3;background:#352b1e;border-color:#6a5738}.login-card strong{color:#f4f7fd;overflow-wrap:anywhere}.login-card form{margin:25px 0 22px}.login-main .notice:not(.warning){color:#e3efdb;background:#25351e;border-color:#577147}
@media(max-width:560px){.login-main>.content{padding:24px 16px}.login-card{padding:29px 24px}.login-card h1{font-size:1.8rem}.login-main{background-size:auto,48px 48px,48px 48px}}
.sidebar{overflow-y:auto}
@media(max-width:560px){.topbar{flex-wrap:wrap;gap:12px}.top-actions{margin-left:auto}.breadcrumb{font-size:.8rem}.breadcrumb span{padding-inline:8px}}
