/* Shared glass material. Data panels stay nearly opaque; navigation, controls
   and summary tiles use translucent lenses. Page files retain states/printing. */
@media screen {
  html{scroll-padding-block-start:calc(var(--sticky-header-height,150px) + var(--header-gap) + 16px)}
  html body{background:var(--page-art),var(--page);color:var(--ink);line-height:1.5}
  html body :is(h1,h2,h3,button,.metric strong,.staff-summary strong){text-shadow:none}
  html body :is(h1,h2,h3){letter-spacing:-.025em}
  html[dir=rtl] body :is(h1,h2,h3){letter-spacing:normal}
  /* Sidebar menus keep their own dark-glass rules below; :where adds no specificity. */
  html body :is(button,.staff-link,.workspace-link,.market-link,.market-book):where(:not(.seat,.market-seat,.trip-seat)):where(:not(.staff-nav button,.sidebar .nav-item)){
    min-height:44px;border:1px solid var(--glass-edge);border-radius:999px;background:linear-gradient(155deg,var(--glass-sheen),transparent 48%,#ffffff08 85%),var(--glass-control);color:var(--ink);box-shadow:var(--shadow-control);text-decoration:none;
    backdrop-filter:blur(16px) saturate(130%);-webkit-backdrop-filter:blur(16px) saturate(130%);cursor:pointer;
    transition:background-color 180ms ease,border-color 180ms ease,box-shadow 180ms ease,transform 180ms ease;
  }
  /* Same specificity as the generic control rule, placed later, so primary actions keep their fill. */
  html body :is(.staff-primary,.primary,.market-book,.driver-shell .staff-primary):where(:not(.seat,.market-seat,.trip-seat)){color:#fff;border-color:#d9b49070;background:linear-gradient(145deg,#ffffff25,transparent 65%),var(--material-enamel);box-shadow:inset 0 1px 0 #ffffff42,0 6px 18px #69432c30}
  html body button:disabled{opacity:.5;box-shadow:none;cursor:not-allowed}
  html body :is(button,a,input,select,textarea,summary):focus-visible{outline:3px solid var(--accent);outline-offset:3px}
  html body :is(input:not([type=checkbox]),select,textarea){border:1px solid var(--border);border-radius:12px;background:var(--surface-soft);color:var(--ink);box-shadow:var(--shadow-inset)}
  html body :is(input,select,textarea):focus{border-color:var(--accent)}
  html body option{background:var(--paper);color:var(--ink)}
  html body ::placeholder{color:var(--muted);opacity:1}
  html body :is(.staff-panel,.staff-summary article,.staff-record,.panel,.metric,.booking-summary,.market-card,.market-trip){background:var(--surface);border:1px solid var(--border);border-radius:24px;box-shadow:var(--shadow-panel)}
  html body :is(.staff-record,.market-companies article){border-radius:20px}
  html body :is(.staff-badge,.count,.status,.flow-number){background:var(--accent-wash);color:var(--accent);border:1px solid var(--border);border-radius:999px;box-shadow:none}
  html body :is(.staff-record-icon,.market-mark){border-radius:14px;border:1px solid var(--border);background:var(--accent-wash);color:var(--accent);box-shadow:none}
  html body :is(.staff-checks label,.staff-check){background:var(--surface-soft);border-color:var(--border);border-radius:12px;box-shadow:none}
  html body :is(.staff-permissions .staff-badge,.staff-muted,.notice,.footer,.company-control>span){color:var(--muted)}
  html body :is(.staff-table th,th){background:var(--accent-wash);color:var(--ink);border-color:var(--border)}
  html body :is(td,.staff-table td,.discussion-list li){border-color:var(--border)}
  html body .staff-table tbody tr:nth-child(even){background:var(--accent-wash)}
  html body .staff-table-wrap{border:1px solid var(--border);border-radius:16px}
  html body dialog{color:var(--ink);background:var(--paper);border:1px solid var(--glass-edge);border-radius:24px;box-shadow:0 28px 90px #0005}
  html body dialog::backdrop{background:#0b080699;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}
  html body .staff-secret{color:var(--ink);background:var(--accent-wash);border-color:var(--border);box-shadow:none}

  /* Floating navigation glass; fill remains readable on devices without blur. */
  html body :is(.staff-topbar,.driver-header,.market-bar,.topbar){position:sticky;top:var(--header-gap);z-index:40;background:radial-gradient(ellipse at 18% -45%,var(--header-reflection),transparent 65%),linear-gradient(130deg,#ffffff12,transparent 45%,var(--glass-sheen)),var(--header-glass);backdrop-filter:blur(28px) saturate(175%) brightness(1.08);-webkit-backdrop-filter:blur(28px) saturate(175%) brightness(1.08);border:1px solid var(--header-edge);box-shadow:0 14px 40px var(--glass-shadow),0 2px 7px var(--glass-shadow),inset 0 1px 0 var(--glass-highlight),inset 1px 0 0 var(--glass-sheen),inset 0 -1px 0 var(--glass-sheen);border-radius:30px}
  html body .staff-shell{grid-template-columns:256px minmax(0,1fr);padding-inline-start:14px}
  html body :is(.staff-sidebar,.sidebar){background:linear-gradient(145deg,var(--sidebar-sheen),transparent 38%,#100b082e),var(--sidebar-glass);color:#f0e4d8;border:1px solid #fff2df47;border-radius:26px;box-shadow:0 12px 40px #120b0824,inset 0 1px 0 #fff4e85c,inset 1px 0 0 #fff4e81a;backdrop-filter:blur(24px) saturate(130%);-webkit-backdrop-filter:blur(24px) saturate(130%)}
  /* The sidebar remains dark in both themes so its navigation contrast is stable. */
  html body .staff-sidebar{top:14px;height:calc(100dvh - 28px);margin-block:14px;padding:24px 16px;gap:18px;scrollbar-width:thin;scrollbar-color:#ffffff30 transparent}
  html body .staff-brand{font-size:18px;color:#fff4e8}
  html body .staff-brand img{width:38px;height:38px;border-radius:12px;box-shadow:none}
  html body .staff-brand small{color:#c9b7a4}
  html body .staff-sidebar-label{font-size:9px;letter-spacing:1.7px;color:#c9b7a4;margin-block:14px -6px}
  html body .staff-sidebar .staff-nav{border:0;padding:0;gap:6px}
  html body .staff-sidebar .staff-nav button,html body .sidebar .nav-item{background:#ffffff04;color:#e2cdb8;border:1px solid transparent;box-shadow:none;border-radius:14px;backdrop-filter:none;-webkit-backdrop-filter:none;text-shadow:none;transition:background-color 180ms ease,border-color 180ms ease,color 180ms ease}
  html body .staff-sidebar .staff-nav button[aria-current=page],html body .sidebar .nav-item.active{color:#f2cfa8;background:linear-gradient(125deg,#e3b78b2b,#bc8a5514);border-color:#dfbc9360;box-shadow:inset 0 1px 0 #fff0da26,0 4px 16px #0000000c}
  html body .staff-sidebar .staff-preview{color:#e9d8c7;border:0;border-radius:12px;padding:12px;font-size:12px}
  html body .staff-preview small{color:#c9b7a4}
  html body .staff-sidebar-foot{border-top:1px solid #ffffff18;padding-top:18px;color:#e2cdb8}
  html body .staff-connection{background:#9be6c8;box-shadow:0 0 0 4px #9be6c811;border:0}
  /* Same width as the .staff-main content box (1500px less its 24px padding), so tile edges line up. */
  html body .staff-topbar{margin:0 auto;width:calc(100% - 48px);max-width:1452px;padding:16px 22px;min-height:78px}
  html body .staff-main{padding:24px;max-width:1500px}
  html body .staff-panel{padding:24px}
  html body .staff-welcome{padding:26px;background:linear-gradient(120deg,var(--accent-wash),transparent),var(--surface);border:1px solid var(--border);border-radius:24px;box-shadow:var(--shadow-panel)}
  html body .staff-welcome h1{font-size:clamp(25px,2.5vw,34px);margin:0;line-height:1.3}
  html body .staff-eyebrow{font-size:10px!important;letter-spacing:1.6px;margin-bottom:8px!important}
  html body .staff-summary{gap:16px}
  html body .staff-panel+.staff-summary{margin-top:16px}
  html body .staff-summary article{padding:22px;min-height:130px;display:flex;flex-direction:column;justify-content:space-between;gap:10px;border-top:1px solid var(--border)}
  html body :is(.staff-welcome,.staff-summary article,.metric){background:linear-gradient(145deg,var(--glass-sheen),transparent 45%),var(--glass-tile);border-color:var(--glass-rim);box-shadow:0 10px 28px var(--glass-shadow),inset 0 1px 0 var(--glass-highlight),inset 1px 0 0 var(--glass-sheen);backdrop-filter:blur(20px) saturate(125%);-webkit-backdrop-filter:blur(20px) saturate(125%)}
  html body .staff-summary strong{font-size:30px;font-weight:650;line-height:1.2;margin:0;font-variant-numeric:tabular-nums}
  html body .staff-main:has(>.staff-shortcuts){display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:20px;align-items:start}
  html body .staff-main:has(>.staff-shortcuts)>:is(.staff-welcome,.staff-summary,.staff-alert,.staff-workspace-footer){grid-column:1/-1;margin:0}
  html body .staff-main:has(>.staff-shortcuts)>.staff-shortcuts{grid-column:span 8;margin:0;gap:14px}
  html body .staff-main:has(>.staff-shortcuts)>.staff-profile{grid-column:span 4;grid-template-columns:minmax(0,1fr);gap:24px}
  html body .staff-main:has(>.staff-shortcuts) .staff-profile>div:last-child{border-inline-start:0;padding-inline-start:0;border-top:1px solid var(--border);padding-top:24px}
  html body .staff-shortcuts button{min-height:108px;padding:20px;border-radius:22px;gap:16px;align-items:center;font-size:14px}
  html body .staff-shortcuts button:is(:first-child,:last-child){grid-column:1/-1}
  html body .staff-shortcuts button:first-child{background:linear-gradient(135deg,var(--accent-wash),transparent),var(--surface-soft)}
  html body .staff-shortcuts button svg{width:44px;height:44px;padding:11px;border-radius:14px;background:var(--accent-wash);color:var(--accent)}
  html body .staff-shortcuts small{font-size:12px;line-height:1.6}
  html body .staff-shortcuts button>span:last-child{font-size:21px}
  html body .staff-grid{gap:16px}
  html body .staff-grid .staff-record{padding:22px}
  html body :is(.company-nav,.staff-top-actions,.header-actions){gap:8px}
  html body .company-nav{padding:10px;border:1px solid var(--border);border-radius:20px;background:var(--surface-soft)}
  html body .company-nav button[aria-current=page]{outline:0;background:var(--accent-wash);border-color:var(--accent);color:var(--accent)}
  html body .finance-currency{border-radius:20px;background:var(--surface-soft)}
  html body .finance-summary{gap:14px}
  html body .finance-summary>div{padding:18px;border:1px solid var(--border);border-radius:16px;background:var(--accent-wash)}
  html body .finance-summary strong{font-size:clamp(20px,2vw,28px)}

  /* Passenger and driver spaces reuse the same modules. */
  html body :is(.driver-header,.market-bar){margin:0 clamp(12px,3vw,32px);padding:16px 22px;gap:16px}
  /* Matches the driver main content box (1440px less its 24px padding). */
  html body .driver-header{width:calc(100% - 48px);max-width:1392px;margin-inline:auto}
  html body .driver-header nav{gap:8px}
  html body .driver-brand img{border-radius:12px}
  html body .driver-shell main{padding:20px 24px}
  html body .driver-layout{grid-template-columns:280px minmax(0,1fr);gap:20px}
  html body .driver-detail{gap:20px}
  html body .driver-trip{border-radius:16px;padding:16px;gap:8px}
  html body .driver-trip[aria-current]{background:var(--accent-wash);border-color:var(--accent);box-shadow:inset 0 1px 0 var(--glass-highlight)}
  html body .driver-metrics{padding:18px;border:1px solid var(--border);border-radius:18px;background:var(--accent-wash)}
  html body .driver-check{border-radius:18px;background:var(--accent-wash)}
  html body .market-wrap{max-width:1240px}
  html body .market-bar{justify-content:flex-start;min-height:64px;padding:10px 16px;gap:12px}
  html body .market-page-label{font-size:.95rem;min-width:0;overflow-wrap:anywhere}
  html body .driver-header.driver-compact-header{flex-direction:row;align-items:center;justify-content:flex-start;min-height:64px;padding:10px 16px;gap:12px}
  html body .driver-compact-header strong{font-size:.95rem;min-width:0;overflow-wrap:anywhere}
  html body dialog.market-drawer{inset-block:0;inset-inline-start:0;inset-inline-end:auto;margin:0;width:min(340px,calc(100vw - 24px));height:100dvh;max-height:100dvh;padding:24px;border-radius:0 28px 28px 0;background:linear-gradient(145deg,var(--glass-sheen),transparent 55%),var(--paper);box-shadow:12px 0 50px #0004;overflow-y:auto;overscroll-behavior:contain}
  html[dir=rtl] body dialog.market-drawer{border-radius:28px 0 0 28px;box-shadow:-12px 0 50px #0004}
  html body .market-drawer-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:32px}
  html body .market-drawer-head .driver-brand{min-width:0;font-size:16px;gap:10px}
  html body .market-drawer-head .driver-brand img{width:36px;height:36px}
  html body .market-drawer-head .driver-brand span{min-width:0;overflow-wrap:anywhere}
  html body .app-drawer-close{display:grid;place-items:center;width:44px;height:44px;padding:0;flex-shrink:0}
  html body .app-drawer-close svg{width:18px;height:18px}
  html body .market-drawer-nav{display:grid;gap:8px}
  html body :is(.market-drawer-nav a,.app-settings summary){display:flex;align-items:center;gap:12px;min-height:52px;padding:12px 14px;border:1px solid transparent;border-radius:16px;color:var(--ink);text-decoration:none;font-weight:600;font-size:.9rem;cursor:pointer}
  html body :is(.market-drawer-nav a,.app-settings summary) svg{width:21px;height:21px;flex-shrink:0;color:var(--accent)}
  html body .market-drawer-nav a[aria-current=page]{background:var(--accent-wash);border-color:var(--border)}
  html body .market-drawer-nav button.drawer-nav-action{display:flex;align-items:center;gap:12px;text-align:start;min-height:52px;padding:12px 14px;border:1px solid transparent;border-radius:16px;background:transparent;color:var(--ink);box-shadow:none;font-size:.9rem;font-weight:600}
  html body .drawer-nav-action svg{width:21px;height:21px;flex-shrink:0;color:var(--accent)}
  html body :is(.market-drawer-nav a,.app-settings summary):hover{background:var(--accent-wash)}
  html body .app-settings{margin-top:24px;padding-top:16px;border-top:1px solid var(--border)}
  html body .app-settings summary{list-style:none}
  html body .app-settings summary::-webkit-details-marker{display:none}
  html body .app-settings summary svg:last-child{margin-inline-start:auto;width:16px;height:16px;transition:transform 180ms ease}
  html[dir=rtl] body .app-settings summary svg:last-child{transform:rotate(180deg)}
  html body .app-settings[open] summary svg:last-child{transform:rotate(90deg)}
  html body .market-preferences{display:grid;gap:16px;padding:16px 8px 8px}
  html body .market-preferences>div{display:grid;gap:8px;font-size:.8rem;color:var(--muted)}
  html body .market-preferences button{width:100%;white-space:normal}
  html body .market-drawer-foot{margin:32px 8px 0;padding-top:20px;border-top:1px solid var(--border);font-size:.8rem;color:var(--muted);line-height:1.7}
  html body .platform-notice-message{overflow-wrap:anywhere;white-space:pre-wrap}
  html body .market-service-notice{background:linear-gradient(120deg,var(--glass-sheen),transparent 55%),var(--glass-tile);border-color:var(--glass-rim);box-shadow:0 8px 24px var(--glass-shadow),inset 0 1px 0 var(--glass-highlight);backdrop-filter:blur(20px) saturate(125%);-webkit-backdrop-filter:blur(20px) saturate(125%)}
  html body .market-band{margin:20px clamp(12px,3vw,32px) 0;border-radius:28px;background:radial-gradient(ellipse at 90% 0%,#94674445,transparent 65%),var(--material-navy);border:1px solid #bc91643d;box-shadow:0 12px 36px var(--glass-shadow);padding-block:32px}
  html body .market-band h1{font-size:clamp(28px,3.6vw,46px);letter-spacing:-.035em;line-height:1.2}
  html[dir=rtl] body .market-band h1{letter-spacing:normal}
  html body .market-band a{color:#edcfad}
  html body .market-band p{max-width:680px;line-height:1.7;color:#dec7ae}
  html body #market-search{margin-block:26px 0;background:var(--surface);border-radius:20px;gap:16px}
  html body .market-band-search+.market-body{padding-top:28px}
  html body .market-body{gap:24px;padding-block:24px 40px}
  html body .market-empty{background:var(--surface-soft);border-style:solid;border-radius:20px;padding:36px 20px}
  html body .market-note{background:var(--accent-wash);border-radius:14px;line-height:1.7;padding:14px 18px}
  html body .market-trip{border-radius:22px}
  html body .market-price{background:var(--accent-wash);border-inline-start-style:solid;border-radius:0 22px 22px 0}
  html[dir=rtl] body .market-price{border-radius:22px 0 0 22px}
  html body .market-companies{gap:16px}
  html body .market-companies .market-mark{border-radius:16px}
  html body .market-results{gap:16px;align-content:start}
  html body .market-book{padding:10px 20px}
  html body .metrics{gap:16px}
  html body .metric{border-top:1px solid var(--border);padding:24px}
  html body .metric-line{background:var(--border)}
  html body .metric:first-child .metric-line{background:var(--accent)}
  html body .workspace-link{text-align:center}

  /* Functional states remain distinct from decorative controls. */
  html body :is(.staff-alert,.availability){color:var(--accent)}
  html body .staff-alert{background:var(--accent-wash);border-color:var(--border);box-shadow:none;border-radius:14px}
  html body :is(.staff-alert.bad,#toast.bad){color:#a43229;background:#fff0ed;border-color:#d69d92}
  html body :is(.danger,.staff-danger,.market-danger){color:#a43229}
  html body .staff-permissions .staff-badge{background:var(--surface-soft)}
  html body :is(.vehicle,.demo-badge,.callout){background:var(--accent-wash);color:var(--ink);border-color:var(--border)}
  html body .deadline{background:var(--accent-wash);border-color:var(--warning)}
  html body .bus-area{background:var(--surface-soft);border-color:var(--border);box-shadow:none}
  html body .bus{background:var(--surface);border-color:var(--border);box-shadow:var(--shadow-panel)}
  html body .seat{color:var(--ink);background:var(--surface-soft);border-color:var(--border);box-shadow:none}
  html body .seat.selected{color:#fff;background:#876321;border-color:#d7b56d;box-shadow:inset 0 1px 0 #ffffff33}
  html body .seat:disabled{color:var(--muted);background:repeating-linear-gradient(45deg,var(--border),var(--border) 3px,transparent 3px,transparent 6px);border-color:var(--border);box-shadow:none}
  html body .seat:hover:not(:disabled):not(.selected){background:var(--accent-wash);border-color:var(--accent)}
  html body .seat.selected:hover:not(:disabled){background:#876321}
  /* The key matches the seat states above. */
  html body .seat-legend i{background:var(--surface-soft);border-color:var(--border)}
  html body .seat-legend i.taken{background:repeating-linear-gradient(45deg,var(--border),var(--border) 2px,transparent 2px,transparent 4px);border-color:var(--border)}
  html body .seat-legend i.selected{background:#876321;border-color:#d7b56d}
  html body .status.reserved{color:#765312;background:#f5e5c0}
  html body .status.cancelled{color:#943c32;background:#f8ddd6}
  html body .reference-sheet{color:var(--ink);background:var(--paper);border-color:var(--border);border-radius:18px;box-shadow:none}
  html body .reference-large{color:var(--accent);background:var(--accent-wash);border-color:var(--border);box-shadow:none}
  html body #toast{background:var(--paper);color:var(--ink);border:1px solid var(--border);box-shadow:var(--shadow-panel)}
  html:not([data-theme=light]) body :is(.staff-alert.bad,#toast.bad){color:#ffd1c7;background:#462c32;border-color:#9a6263}
  html:not([data-theme=light]) body :is(.danger,.staff-danger,.market-danger){color:#ffb7ab}
  html:not([data-theme=light]) body .status.reserved{color:#ffe0a5;background:#51452d}
  html:not([data-theme=light]) body .status.cancelled{color:#ffc0b2;background:#50363a}
  html:not([data-theme=light]) body .seat.selected{background:#876321;color:#fff2d0;border-color:#e8c37c}

  @media(min-width:1101px){
    .market-body:not(.market-split):not(.market-booking){grid-template-columns:minmax(0,2fr) minmax(260px,1fr);align-items:start}
    .market-body:not(.market-split):not(.market-booking) .market-companies{grid-template-columns:minmax(0,1fr)}
  }
  @media(max-width:1200px){
    html body .staff-shell{grid-template-columns:220px minmax(0,1fr)}
    html body .staff-main:has(>.staff-shortcuts)>.staff-shortcuts{grid-column:span 7}
    html body .staff-main:has(>.staff-shortcuts)>.staff-profile{grid-column:span 5}
    html body .staff-shortcuts{grid-template-columns:minmax(0,1fr)}
    html body .staff-shortcuts button{min-height:92px}
  }
  @media(max-width:1000px){
    html body .staff-main:has(>.staff-shortcuts){grid-template-columns:minmax(0,1fr)}
    html body .staff-main:has(>.staff-shortcuts)>:is(.staff-shortcuts,.staff-profile){grid-column:1/-1}
    html body .staff-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}
  }
  @media(max-width:800px){
    html body .driver-layout{grid-template-columns:minmax(0,1fr)}
    html body .driver-header{width:auto;max-width:none;margin-inline:24px;align-items:stretch;padding:18px}
  }
  @media(max-width:760px){
    html body .staff-shell{display:block;padding-inline:0}
    html body .staff-sidebar{position:relative;top:0;height:auto;margin:12px 12px 0;padding:18px;gap:14px;border-radius:22px}
    html body .staff-sidebar .staff-nav{gap:6px}
    html body .staff-sidebar .staff-nav button{font-size:12px;padding:10px;min-height:46px;gap:9px}
    html body .staff-topbar{width:auto;max-width:none;margin:0 12px;padding:16px;border-radius:24px;gap:12px}
    html body .staff-main{padding:16px 12px}
    html body .staff-welcome{padding:22px;gap:12px}
    html body .staff-summary{gap:8px}
    html body .staff-summary article{padding:16px 12px;min-height:116px;border-radius:18px}
    html body .staff-summary strong{font-size:24px;overflow-wrap:anywhere}
    html body .staff-main:has(>.staff-shortcuts){gap:14px}
    html body .staff-shortcuts{grid-template-columns:minmax(0,1fr);gap:10px}
    html body .staff-shortcuts button{padding:18px;min-height:92px;border-radius:20px}
    html body .staff-panel{padding:20px;border-radius:22px}
    html body .staff-panel h1{font-size:26px}
    html body .staff-grid .staff-record{padding:18px}
    html body .driver-shell main{padding:16px 12px}
    html body .driver-header{margin-inline:12px}
    html body :is(.market-bar,.topbar){padding:16px;margin-inline:12px;gap:12px}
    html body .market-band{margin:14px 12px 0;border-radius:22px;padding-block:24px}
    html body .market-wrap{padding-inline:16px}
    html body #market-search{gap:12px;padding:18px}
    html body :is(input:not([type=checkbox]),select,textarea){font-size:16px;min-height:48px}
  }
  @media(max-width:640px){
    html body .market-price,html[dir=rtl] body .market-price{border-radius:0 0 22px 22px;border-inline-start:0}
    html body .market-bar>div{gap:8px}
    html body .market-bar>div>*{white-space:normal}
  }
  @media(hover:hover) and (pointer:fine){
    html body :is(button,.staff-link,.workspace-link,.market-link):where(:not(.seat,.market-seat,.trip-seat)):where(:not(.staff-nav button,.sidebar .nav-item)):hover:not(:disabled){background-color:var(--accent-wash);border-color:var(--accent);box-shadow:0 6px 20px var(--glass-shadow),inset 0 1px 0 var(--glass-highlight);transform:translateY(-1px)}
    html body :is(.primary,.staff-primary,.market-book):where(:not(.seat,.market-seat,.trip-seat)):hover:not(:disabled){background:linear-gradient(145deg,#ffffff35,transparent 70%),var(--material-enamel)}
    html body .staff-sidebar .staff-nav button:not([aria-current=page]):hover:not(:disabled),html body .sidebar .nav-item:not(.active):hover{background:#ffffff12;border-color:#dfbc9360;color:#fff5e9}
  }
  html body :is(button,.staff-link,.workspace-link,.market-link):active:not(:disabled){transform:translateY(0);box-shadow:inset 0 1px 3px #00000016}
  @supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
    html body :is(.staff-topbar,.driver-header,.market-bar,.topbar,button,.staff-link){background-color:var(--paper)}
    html body :is(.staff-sidebar,.sidebar){background:#211711}
    html body :is(.staff-welcome,.staff-summary article,.metric,.market-service-notice){background:var(--paper)}
  }
  @media(prefers-reduced-motion:reduce){
    html body *,html body *::before,html body *::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}
    html body button:hover{transform:none!important}
  }
  @media(prefers-reduced-transparency:reduce){
    html body :is(button,.staff-link,.staff-topbar,.driver-header,.market-bar,.topbar){background-color:var(--paper);backdrop-filter:none;-webkit-backdrop-filter:none}
    html body :is(.staff-sidebar,.sidebar){background:#211711;backdrop-filter:none;-webkit-backdrop-filter:none}
    html body :is(.staff-welcome,.staff-summary article,.metric,.market-service-notice){background:var(--paper);backdrop-filter:none;-webkit-backdrop-filter:none}
  }
  @media(forced-colors:active){
    html body *{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;box-shadow:none!important;text-shadow:none!important}
    html body :is(button,.staff-link,.staff-nav button,.staff-panel,.staff-record,.staff-topbar,.staff-sidebar,.sidebar,.staff-welcome,.staff-summary article,.metric,.market-service-notice,.driver-header,.market-bar,.market-card){border:1px solid CanvasText;background:Canvas;color:CanvasText}
    html body button[aria-current],html body .staff-sidebar .staff-nav button[aria-current=page]{outline:2px solid Highlight;color:Highlight}
  }
}
.theme-toggle{white-space:nowrap}
@media screen{
  html body :is(.staff-topbar,.driver-header,.market-bar,.topbar){margin-block-start:var(--header-gap)}
  @media(max-width:760px){:root{--header-gap:10px}html body :is(.driver-header,.market-bar,.topbar){border-radius:24px}}
  html body .sidebar-column{position:sticky;top:0;align-self:flex-start;display:flex;flex-direction:column;height:100dvh;min-width:0}
  html body .sidebar-toolbar{display:flex;align-items:center;justify-content:center;flex:0 0 68px}
  html body .sidebar-column .staff-sidebar{position:relative;top:0;flex:1;min-height:0;height:auto;margin:0 0 14px}
  html body .shell>.sidebar-column{width:240px;flex-shrink:0}
  html body .sidebar-column .sidebar{position:relative;top:0;flex:1;min-height:0;width:100%;height:auto}
  html[data-sidebar-hidden=true] body :is(.staff-sidebar,.sidebar){display:none}
  html[data-sidebar-hidden=true] body .staff-shell{grid-template-columns:minmax(0,1fr);padding-inline-start:0}
  /* The toggle sits first in the page header; the hidden sidebar frees its whole column. */
  html[data-sidebar-hidden=true] body :is(.staff-shell,.shell)>.sidebar-column{display:none}
  html body .sidebar-column{padding-top:var(--header-gap)}
  html body :is(.staff-topbar,.topbar)>.sidebar-toggle{margin-inline-end:4px}
  html body .staff-topbar-title{flex:1;min-width:0}
  html body button.sidebar-toggle{display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;border-radius:50%;cursor:pointer;box-shadow:inset 0 1px 0 var(--glass-highlight),0 3px 10px var(--glass-shadow)}
  html body .sidebar-toggle svg{width:16px;height:16px;flex-shrink:0}
  html body .sidebar-toggle span{display:none}
  @media(max-width:1150px){html body .shell>.sidebar-column{width:205px}}
  @media(max-width:760px){
    html body .staff-shell>.sidebar-column{position:relative;height:auto}
    html body .sidebar-column .staff-sidebar{flex:auto;margin:0 12px 12px}
  }
  @media(max-width:600px){html body .shell>.sidebar-column{position:relative;height:auto;width:100%}}
}
@media print{
  dialog[data-app-drawer],.market-bar,.driver-compact-header{display:none!important}
  .sidebar-toggle,.sidebar-column{display:none!important}
  html{color-scheme:light}body,.reference-sheet,dialog[open]{color:#251c16;background:#fff;box-shadow:none}
  .reference-sheet :is(p,dt,dd,h2),.reference-heading,.reference-large{color:#251c16!important;text-shadow:none}.theme-toggle{display:none!important}
}
@media screen{
  /* Motion helpers driven by theme.js. */
  html body :is(button,.workspace-link,.market-book){position:relative;overflow:hidden}
  html body .press-ripple{position:absolute;border-radius:50%;background:currentColor;pointer-events:none}
  html body :is(.staff-topbar,.driver-header,.market-bar,.topbar){transition:box-shadow 240ms ease,background-color 240ms ease}
  html.page-scrolled body :is(.staff-topbar,.driver-header,.market-bar,.topbar){box-shadow:0 14px 40px var(--glass-shadow),0 2px 8px var(--glass-shadow),inset 0 1px 0 var(--glass-highlight)}
}
@media screen{
  /* Privacy and deletion notices on sign-in and booking forms, and the legal page. */
  html body .legal-links{margin:16px 0 0;font-size:13px;text-align:center;color:var(--muted)}
  html body .legal-links a,html body .legal-body a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
  html body .legal-page{max-width:860px;margin:0 auto;padding:12px 16px 40px}
  html body .legal-top{position:relative;top:0;width:auto;max-width:none;margin:12px 0 16px;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
  html body .legal-body{line-height:1.75}
  html body .legal-body h2{margin:26px 0 8px;font-size:17px}
}
