/* Shared visual tokens: sage canvas, pine anchors, emerald actions. */
/* Explicitly replace the legacy login gradients and shadows. */
body.public-page #login-screen.transport-login{background:#F3F6F5;background-image:none}
body.public-page .transport-login .transport-container{background:#FFFFFF;border:1px solid #E2E8E5;border-radius:16px;box-shadow:0 1px 3px 0 rgba(9,78,68,.04),0 4px 12px -2px rgba(9,78,68,.03)}
body.public-page .transport-login .heading{color:#1E2928}
body.public-page .transport-login :is(.sub,.login-caption,.form label){color:#647472}
body.public-page .transport-login .login-emblem{background:#094E44;color:#fff;border:1px solid rgba(255,255,255,.15);border-radius:12px;box-shadow:inset 0 1px 0 rgba(255,255,255,.2)}
body.public-page .transport-login .form .input{background:#fff;border:1px solid #E2E8E5;border-radius:12px;color:#1E2928;box-shadow:none}
body.public-page .transport-login .form .input:focus{border-color:#00675B;outline:2px solid rgba(0,103,91,.18);outline-offset:2px;box-shadow:none}
body.public-page .transport-login .form .input::placeholder{color:#647472}
body.public-page .transport-login .form .input:-webkit-autofill{box-shadow:0 0 0 1000px #F3F6F5 inset;-webkit-text-fill-color:#1E2928;caret-color:#00675B}
body.public-page .transport-login .form .login-button{background:#00675B;color:#fff;border:1px solid #00675B;border-radius:12px;box-shadow:0 2px 8px -1px rgba(0,103,91,.28);transform:none}
body.public-page .transport-login .form .login-button:is(:hover,:active){background:#005249;border-color:#005249;transform:none;box-shadow:0 2px 8px -1px rgba(0,103,91,.28)}
body.workspace .owner-chart-grid:not(:has(.ranking-panel)){grid-template-columns:1fr}
body.workspace .entry-badge.outside-fleet{background:#FAECD1;border-color:#E8D5B0;color:#7B531F}
:root{--canvas:#F3F6F5;--surface:#FFFFFF;--border:#E2E8E5;--pine:#094E44;--primary:#00675B;--primary-hover:#005249;--heading:#1E2928;--muted:#647472;--sand:#FAECD1;--sand-border:#E8D5B0;--ochre:#B47B2B;--shadow-card:0 1px 3px 0 rgba(9,78,68,.04),0 4px 12px -2px rgba(9,78,68,.03);--shadow-hover:0 4px 16px -2px rgba(9,78,68,.08),0 1px 4px 0 rgba(9,78,68,.04);--shadow-action:0 2px 8px -1px rgba(0,103,91,.28);--ws-bg:var(--canvas);--ws-surface:var(--surface);--ws-muted:var(--canvas);--ws-line:var(--border);--ws-ink:var(--heading);--ws-subtle:var(--muted);--ws-accent:var(--primary)}
body.workspace,body.workspace:has(.owner-shell),body.public-page{background:var(--canvas);background-image:none;color:var(--heading);--ink:var(--heading);--ink-muted:var(--muted);--line:var(--border);--steel:var(--primary)}
body :is(h1,h2,h3,h4),body.workspace :is(h1,h2,h3,h4),body.public-page .login-card h1{color:var(--heading)}
body a{color:var(--pine)}
body.workspace :is(label,.small-note,.chart-note,.muted,.cell-detail,.eyebrow,.overline,.page-intro p,.balance-note,.balance-footer,.chart-headline small,.comparison-caption,.rank-criterion),body.public-page :is(label,.sub){color:var(--muted)}
body.workspace :is(.admin-panel,.owner-chart,.comparison-card,.owner-disclosure,.scope-card,.balance-card,.stat-card,.metric-tile,.fleet-stat,.login-card),body.public-page .login-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow-card)}
body.workspace :is(.scope-card,.stat-card,.fleet-stat,.metric-tile,.owner-chart):hover{box-shadow:var(--shadow-hover)}
body.workspace :is(.admin-panel .ph,.assign-form,.disclosure-content,.manual-entry .form-grid){background:var(--surface);border-color:var(--border)}
body.workspace .admin-panel .ph h2{color:var(--heading)}
body.workspace .ws-sidebar{background:var(--pine);border-color:rgba(255,255,255,.15);color:rgba(255,255,255,.70)}
body.workspace .ws-brand{color:#fff}body.workspace .ws-brand small,body.workspace .ws-group-label,body.workspace .ws-profile small{color:rgba(255,255,255,.70)}
body.workspace .ws-brand-mark{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.15);color:#fff;border-radius:12px;box-shadow:inset 0 1px 0 0 rgba(255,255,255,.2)}
body.workspace .ws-sidebar .ws-nav-item{color:rgba(255,255,255,.70);border:1px solid transparent;border-radius:12px;background:transparent}
body.workspace .ws-sidebar .ws-nav-item:is(:hover,.is-active){background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.15);color:#fff;box-shadow:inset 0 1px 0 0 rgba(255,255,255,.2)}
body.workspace .ws-nav-item.is-active::after{background:#fff}body.workspace .ws-profile{border-color:rgba(255,255,255,.15)}body.workspace .ws-profile strong{color:#fff}
body.workspace .ws-sidebar .ws-avatar{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.15);color:#fff}
body.workspace .ws-profile button.link-button,body.workspace .ws-sidebar-close{color:rgba(255,255,255,.70);background:transparent;border:1px solid transparent;box-shadow:none}
body.workspace .ws-profile button:hover,body.workspace .ws-sidebar-close:hover{color:#fff;background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.15)}
body.workspace .ws-sidebar :is(a,button):focus-visible{outline-color:#FAECD1}
body.workspace .ws-topbar{position:sticky;top:0;z-index:45;background:rgba(255,255,255,.82);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(226,232,229,.8)}
body.workspace :is(.ws-top-label,.ws-divider,.ws-role){color:var(--muted)}body.workspace .ws-location strong{color:var(--heading)}body.workspace .ws-avatar{background:rgba(0,103,91,.08);color:var(--primary);border-color:rgba(0,103,91,.18)}
body.workspace .ws-skip{background:var(--pine);color:#fff}body.workspace .ws-backdrop{background:rgba(9,78,68,.4)}
body.workspace :is(input:not([type=checkbox]):not([type=hidden]),select,textarea),body.public-page :is(input:not([type=checkbox]):not([type=hidden]),select,textarea){background:var(--surface);border:1px solid var(--border);border-radius:12px;color:var(--heading);box-shadow:none}
body :is(input,textarea)::placeholder{color:var(--muted)}body.workspace input[type=checkbox]{accent-color:var(--primary)}
body.workspace :is(button,a.link-back,a.back-link,a.quiet-link,a.soft-button,a.owner-button,.pagination a,.owner-pagination a),body.public-page :is(button,a.link-back){background:rgba(0,103,91,.08);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(0,103,91,.18);color:var(--primary);border-radius:12px;box-shadow:none}
body.workspace :is(button,a.link-back,a.back-link,a.quiet-link,a.soft-button,.pagination a):hover{background:rgba(0,103,91,.12);border-color:rgba(0,103,91,.28);color:var(--primary-hover)}
body.workspace :is(.btn-submit,.owner-button,.btn-primary,button[type=submit].primary-action),body.public-page :is(.btn-primary,.btn-submit){background:var(--primary);border:1px solid var(--primary);color:#fff;box-shadow:var(--shadow-action)}
body.workspace :is(.btn-submit,.owner-button,.btn-primary,button[type=submit].primary-action):is(:hover,:active),body.public-page :is(.btn-primary,.btn-submit):is(:hover,:active){background:var(--primary-hover);border-color:var(--primary-hover);color:#fff;box-shadow:var(--shadow-action)}
body.workspace button.danger-button{color:#963D31;background:#FDF6ED;border:1px solid #FAE6CE;box-shadow:none}
body :is(button,input,select,textarea,a,summary):focus-visible,body.workspace :is(button,input,select,textarea,a,summary):focus-visible{outline:2px solid var(--primary);outline-offset:3px}
body.workspace :is(.notice,.notice.warning,.notice.error),body.public-page .notice{background:var(--sand);border:1px solid var(--sand-border);color:#7B531F;border-radius:12px;box-shadow:var(--shadow-card)}
body.workspace :is(.state-pill,.entry-badge,.count-pill,.month-badge,.plate-pill,.company-badge){display:inline-block;border:1px solid var(--border);border-radius:9999px;padding:2px 10px;font-size:11px;font-weight:500;line-height:1.7;background:var(--canvas);color:var(--pine)}
body.workspace :is(.notice .badge,.notice .tag,.notice .state-pill){background:var(--ochre);border-color:var(--ochre);color:#fff}
body.workspace .fleet-scopes .scope-card{border-radius:12px;background:#EDF5FB;border:1px solid #D7E8F5;color:#1A365D;box-shadow:var(--shadow-card)}
body.workspace .fleet-scopes .scope-card:nth-child(2){background:#FDF6ED;border-color:#FAE6CE;color:#7B341E}
body.workspace .fleet-scopes .scope-card:nth-child(3){background:#EDF5FB;border-color:#D7E8F5;color:#1A365D}
body.workspace .fleet-scopes .scope-card strong{color:inherit}body.workspace .fleet-scopes .scope-card div>span{color:var(--muted)}
body.workspace .fleet-scopes .scope-card.selected{border-color:var(--primary);box-shadow:var(--shadow-hover)}
body.workspace .fleet-scopes .scope-card .scope-icon{border-radius:12px;background:rgba(255,255,255,.6);border:1px solid currentColor;color:inherit}
body.workspace .scope-arrow{color:inherit}body.workspace .metric-icon{background:#EDF5FB;border:1px solid #D7E8F5;color:#1A365D;border-radius:12px}
body.workspace .quick-metrics .metric-tile:nth-child(2) .metric-icon{background:#FDF6ED;border-color:#FAE6CE;color:#7B341E}
body.workspace :is(.stat-card .n,.fleet-stat strong,.balance-value bdi,.chart-headline strong,.comparison-tooltip strong,.donut-center strong){color:var(--heading)}
body.workspace :is(.stat-card .l,.fleet-stat>span,.fleet-stat small,.fleet-stat p,.balance-heading,.donut-center span,.donut-center small){color:var(--muted)}
body.workspace :is(.owner-filters,.balance-footer,.chart-advanced,.filter-bar,.permission-options){border-color:var(--border)}
body.workspace .permission-options{background:var(--canvas);border-radius:12px}body.workspace .ownership-preview{background:var(--canvas);border-color:var(--border);border-radius:12px}body.workspace .ownership-preview p{color:var(--pine)}
body.workspace .ledger-hero{background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow-card)}
body.workspace .ledger-hero h2,body.workspace .ledger-hero strong{color:var(--pine)}body.workspace .ledger-hero p,body.workspace .ledger-hero .eyebrow{color:var(--muted)}
body.workspace .ownership-payouts{border-inline-start:1px solid var(--border)!important}body.workspace .payout-grid article,body.workspace .owner-chips article{background:var(--canvas);border:1px solid var(--border);border-radius:12px}body.workspace .owner-chips b,body.workspace .owner-payout{color:var(--primary)}
body.workspace th{background:var(--canvas);color:var(--muted)}body.workspace th,body.workspace td{border-color:var(--border)}body.workspace tbody tr:hover{background:#F3F6F5}body.workspace .monthly-entry{background:#F8FBF9}
body.workspace .plate-link{background:var(--canvas);border:1px solid var(--border);border-radius:12px;color:var(--pine)}
body.workspace details>summary{background:var(--surface);color:var(--heading)}body.workspace details>summary::before{color:var(--primary)}
body.workspace .chart-switch{background:var(--canvas);border:1px solid var(--border);border-radius:12px}body.workspace .chart-switch button{background:transparent;border:1px solid transparent;color:var(--muted);border-radius:9px}body.workspace .chart-switch button[aria-pressed=true]{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:var(--shadow-action)}
body.workspace .comparison-tooltip{background:var(--canvas);border:1px solid var(--border);border-radius:12px;color:var(--muted)}body.workspace .comparison-axis{fill:var(--muted)}body.workspace .comparison-grid{stroke:var(--border)}body.workspace .chart-crosshair{stroke:var(--primary)}
body.workspace .bar-fill{background:var(--primary)}body.workspace .bar-track{background:var(--border)}body.workspace .leader-row .rank{background:var(--canvas);color:var(--muted)}
body.workspace .donut-key{background:var(--surface);border:1px solid var(--border);color:var(--heading);border-radius:12px;box-shadow:var(--shadow-card)}body.workspace .donut-key:is(:hover,[aria-pressed=true]){background:var(--canvas);border-color:rgba(0,103,91,.28);box-shadow:var(--shadow-hover)}
body.workspace .usage-tutorial{background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow-hover);color:var(--heading)}body.workspace .usage-tutorial::backdrop{background:rgba(9,78,68,.5);backdrop-filter:blur(12px)}body.workspace .tutorial-eyebrow,body.workspace [data-tutorial-progress]{color:var(--muted)}
body.workspace .usage-tutorial :is([data-tutorial-start],[data-tutorial-next]){background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:var(--shadow-action)}body.workspace .usage-tutorial :is([data-tutorial-start],[data-tutorial-next]):hover{background:var(--primary-hover)}
/* Keep sidebar styling stronger than shared button treatments. */
body.workspace .ws-sidebar :is(.ws-nav-item,.ws-profile button,.ws-sidebar-close){backdrop-filter:none;-webkit-backdrop-filter:none}
body.workspace .ws-sidebar button.ws-nav-item{color:rgba(255,255,255,.70);background:transparent;border:1px solid transparent;box-shadow:none}
body.workspace .ws-sidebar button.ws-nav-item:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.15);color:#fff;box-shadow:inset 0 1px 0 0 rgba(255,255,255,.2)}
@media print{body.workspace{background:#fff}body.workspace .ws-topbar{display:none}body.workspace :is(.admin-panel,.ledger-hero,.owner-chart,.balance-card){box-shadow:none}}
