:root {
  --navy: #112b42;
  --blue: #176795;
  --line: #d9e7ef;
  --muted: #4e6479;
  background: #f1f7fa;
  color: #142e45;
}
.content { background: radial-gradient(ellipse at 88% 0, #e0f5f4 0, transparent 46%), #f1f7fa; }
.sidebar {
  background: radial-gradient(ellipse at top left, #18485c, transparent 42%), #10283d;
  border-right: 1px solid #214158;
  scrollbar-width: thin;
  scrollbar-color: #507386 #112b42;
}
.sidebar .brand { padding-bottom: 15px; }
.sidebar .brand img { flex: 0 0 auto; }
.sidebar .brand small { color: #8ee9da; }
.sidebar nav a[aria-current="page"] { background: #22495b; box-shadow: inset 3px 0 #7fe6d4; }
.sidebar nav a:focus-visible, .button:focus-visible { outline: 2px solid #5ee1cc; outline-offset: 2px; }
.topbar { background: #fff; box-shadow: 0 3px 12px #123f5610; }
#menu-toggle {
  display: inline-grid;
  place-items: center;
  width: 38px;
  height: 38px;
  padding: 0;
  color: #173b55;
  border-color: var(--line);
  background: #f5fafc;
}
.header-mark { display: none; }
.workspace.desktop-nav-closed { grid-template-columns: minmax(0,1fr); }
.workspace.desktop-nav-closed .sidebar { display: none; }
.workspace.desktop-nav-closed .header-mark { display: block; }
.panel, .metric { border-radius: 14px; box-shadow: 0 4px 14px #173f5710; }
.metric { border-top: 2px solid #69c4c1; }
.pilot-meta { background: #e7f5f7; color: #25445a; }
.pilot-table th { background: #edf5f8; }
.pilot-table tbody tr:hover, .pilot-table tbody tr.is-selected { background: #eaf8f5; }
.pilot-tag.info { background: #e1f1fd; color: #194d75; }
.projection-controls, .day-tabs { display: flex; flex-wrap: wrap; gap: 7px; }
.projection-controls button[aria-pressed="true"], .day-tabs button[aria-pressed="true"] {
  background: #145b68; color: #fff; border-color: #145b68;
}
.projection-controls { justify-content: flex-end; }
.forecast-inspector {
  border: 1px solid #dbe9ef;
  background: linear-gradient(150deg, #f5fbff, #edf9f7);
  border-radius: 13px;
  padding: 14px;
  margin: 12px 0;
}
.day-readout { display: grid; grid-template-columns: repeat(auto-fit, minmax(100px, 1fr)); gap: 8px; margin: 12px 0 0; }
.day-readout div { background: #ffffffd9; border: 1px solid #dbe9ef; padding: 8px 10px; border-radius: 8px; }
.day-readout dt { color: var(--muted); font-size: 12px; }
.day-readout dd { margin: 2px 0 0; font-size: 19px; font-weight: 750; }
.day-readout [data-readout="unfilled"] { color: #8a4511; }
.pilot-outlook { margin: 8px auto 0; }
.pilot-outlook .bar-face { fill: #4c9cc9; }
.pilot-outlook .day-band { fill: #cceeea; opacity: 0; }
.pilot-outlook .day-band.is-selected { opacity: .67; }
.pilot-outlook .hit { cursor: pointer; }
.day-tabs button { padding: 5px 9px; }
#menu-scrim { display: none; }
@media (max-width: 760px) {
  .workspace .header-mark { display: block; }
  .workspace .sidebar.menu-open {
    display: flex; position: fixed; z-index: 11; inset: 0 auto 0 0;
    width: min(290px, 84vw); height: 100dvh; padding: 18px 14px;
    box-shadow: 10px 0 30px #09253538;
  }
  .sidebar.menu-open nav { grid-template-columns: 1fr; }
  #menu-scrim:not([hidden]) {
    display: block; position: fixed; inset: 0; z-index: 10;
    border: 0; border-radius: 0; background: #0b25396e; padding: 0;
  }
  .projection-controls { justify-content: flex-start; }
}
#menu-close { display: none; }
@media (max-width: 760px) {
  .sidebar.menu-open #menu-close {
    display: grid; place-items: center; position: absolute; right: 12px; top: 18px;
    width: 34px; height: 34px; padding: 0; font-size: 20px; line-height: 1;
    background: #22495b; color: #fff; border-color: #61879a;
  }
  .sidebar.menu-open .brand { padding-right: 38px; }
}

:root {
  --blue: #145bb8;
  --muted: #52627a;
  --line: #dbe3f0;
  --surface: #fff;
  --table-head: #f1f4fa;
  --hover: #e6f6ef;
  background: #f1f7fa;
}
.content { min-height: 100dvh; display: flex; flex-direction: column; background: #f1f7fa; }
main.shell { flex: 1 0 auto; margin-top: 0; }
.sidebar { background: #102c47; border-color: #254861; }
.sidebar nav a { padding-block: 8px; gap: 10px; }
.sidebar nav a[aria-current="page"] { background:#1b475b; box-shadow: inset 3px 0 #6be7b5; }
.sidebar .brand small { color:#8cebc4; }
.ui-icon { width: 17px; height: 17px; flex:none; stroke:currentColor; fill:none; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.sidebar .ui-icon { color:#b1d6ea; }
.icon-button,#refresh { display:inline-flex; align-items:center; gap:6px; }
.icon-button { padding-inline:9px; }
.panel,.metric,.topbar { background:var(--surface); }
.panel,.metric { border-radius:10px; box-shadow:0 2px 8px #263a6b0b; }
.metric { border-top-color:#24a878; }
.pilot-table th { background:var(--table-head); }
.pilot-table tbody tr:hover,.pilot-table tbody tr.is-selected { background:var(--hover); }
.pilot-table th,.pilot-table td { padding-block:8px; font-variant-numeric:tabular-nums; }
.ops-strip,.product-footer { display:flex; justify-content:space-between; align-items:center; gap:10px; flex-wrap:wrap; }
.ops-strip { margin-bottom:9px; color:var(--muted); font-size:12px; }
.product-footer { border-top:1px solid var(--line); padding:15px 0; margin-top:14px; font-size:12px; }
.product-footer a { display:inline-flex; align-items:center; gap:5px; color:var(--blue); }
.sign-in-screen { min-height:100dvh; display:grid; place-items:center; padding:22px; }
.sign-in-panel { width:min(100%,390px); padding:28px; margin:0; }
.sign-in-brand { display:grid; justify-items:center; text-align:center; gap:7px; margin-bottom:4px; }
.sign-in-brand .eyebrow { margin:0; color:var(--muted); }
.sign-in-panel h1 { font-size:27px; }
#sign-in-hint { margin-top:-6px; }
#sign-in-status.is-error { color:#963c26; }
[data-theme="dark"] #sign-in-status.is-error { color:#ffc3ad; }
.sign-in-panel input { display:block; width:100%; padding:9px; border:1px solid var(--line); border-radius:6px; font:inherit; background:var(--table-head); color:inherit; }
#sign-in-status { color:var(--muted); font-size:13px; }
:root:not([data-permissions~="approve"]) [data-permission="approve"],
:root:not([data-permissions~="dispatch"]) [data-permission="dispatch"],
:root:not([data-permissions~="receive"]) [data-permission="receive"],
:root:not([data-permissions~="cancel"]) [data-permission="cancel"],
:root:not([data-permissions~="edit"]) [data-permission="edit"],
:root:not([data-permissions~="import"]) [data-permission="import"] { display:none !important; }
:root[data-theme="dark"] {
  color-scheme:dark; color:#e2eaff; background:#0b1827;
  --navy:#e1eaff; --blue:#89c5ff; --muted:#a8b7cf; --line:#33435d;
  --surface:#12283a; --table-head:#193347; --hover:#1b3a46;
}
[data-theme="dark"] .content { background:#0b1827; }
[data-theme="dark"] :is(.topbar,.audit time,th) { color:var(--muted); }
[data-theme="dark"] :is(select,button.secondary,.button,#menu-toggle,.candidate,.queue-row,.pilot-meta,.tag,.pilot-tag,.preset,.day-readout div) {
  background:#1a3349; color:#e0e8ff; border-color:var(--line);
}
[data-theme="dark"] :is(.projection-controls,.day-tabs) button[aria-pressed="true"] { background:#75dcb2; color:#0b1827; border-color:#9de8ca; }
[data-theme="dark"] button:not(.secondary) { color:#0d1832; }
[data-theme="dark"] .forecast-inspector { background:#142037; border-color:var(--line); }
[data-theme="dark"] .pilot-outlook text { fill:#d9e4ff; }
[data-theme="dark"] .pilot-outlook .day-band { fill:#20524d; }
[data-theme="dark"] .pilot-outlook .day-readout dd,[data-theme="dark"] .day-readout [data-readout="unfilled"] { color:#ffc7a4; }
[data-theme="dark"] :is(.warning,#pilot-action-status.pilot-action-error) { color:#ffc7a4; }
[data-theme="dark"] :is(.success,#pilot-action-status:not(.pilot-action-error)) { color:#9cf0d4; }
[data-theme="dark"] .pilot-outlook :is(polyline[stroke="#145f51"],circle[fill="#145f51"]) { stroke:#80e4ca; }
[data-theme="dark"] .pilot-outlook circle[fill="#145f51"] { fill:#80e4ca; }
[data-theme="dark"] #notice { background:#293e59; color:#e2eaff; border-color:var(--line); }
[data-theme="dark"] #notice.error { background:#4a2d39; }
[data-theme="dark"] #observations input { background:#1a3349; color:#e2eaff; }
@media (max-width:560px) {
  #refresh span { display:none; }
  .topbar { padding:8px 12px; }
  .product-footer { justify-content:flex-start; }
}
@media (prefers-reduced-motion:no-preference) {
  .sidebar a, button, .pilot-table tr { transition:background-color .15s ease, color .15s ease; }
}

.content { background: linear-gradient(145deg, #eaf4ff, #f1f7fa 42%, #edf8f2); }
.sidebar { background: linear-gradient(170deg, #102c47 58%, #0f3a3b); }
.hero { background: linear-gradient(115deg, #124078, #10634f); }
[data-theme="dark"] .content { background: linear-gradient(145deg, #0d2035, #0b1827 48%, #0d2628); }
.sign-in-screen { background: radial-gradient(ellipse at 50% 25%, #e2f5ee, #ebf4ff 62%); }
[data-theme="dark"] .sign-in-screen { background: radial-gradient(ellipse at 50% 25%, #113839, #0b1827 68%); }
#pilot-reconciliation fieldset {
  margin: 12px 0; padding: 10px 12px; min-width: 0;
  border: 1px solid var(--line); border-radius: 8px; background: var(--table-head);
}
#pilot-reconciliation legend { font-size: 13px; font-weight: 750; }
.reconcile-transfer { display: flex; align-items: start; gap: 8px; padding-block: 6px; }
.reconcile-transfer input { accent-color: var(--blue); margin-top: 3px; }
#pilot-commit:disabled { cursor: default; }

#sandbox-nav { margin-top: 12px; border-top: 1px solid #497087; padding-top: 10px; }
#sandbox-nav summary { padding: 8px 10px; cursor: pointer; font-size: .9rem; font-weight: 700; }
#account-badge { text-decoration: underline; text-underline-offset: 3px; }
#view-description { max-width: 70ch; }
.support-guide details { padding: 12px 0; border-bottom: 1px solid var(--line); }
.support-guide summary { cursor: pointer; font-weight: 650; }
#support-form :is(input, textarea) {
  display: block; box-sizing: border-box; width: 100%; margin-top: 5px;
  padding: 9px; border: 1px solid var(--line); border-radius: 7px;
  color: inherit; background: var(--table-head); font: inherit;
}
#profile-permissions { margin: 8px 0 14px; }
