/* Shared Delivrone Web design system. Loaded LAST by every owned Hub page.
   Product layouts, business colours, imagery and remote content stay independent. */
:root {
  color-scheme: light;
  --ds-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  --ds-background: #f5f5f7;
  --ds-surface: #ffffff;
  --ds-secondary: #eef1f5;
  --ds-border: #d8dde5;
  --ds-text: #1d2531;
  --ds-muted: #606b7a;
  --ds-blue: #006bd7;
  --ds-blue-soft: #eaf3ff;
  --ds-green: #167348;
  --ds-orange: #925600;
  --ds-red: #bc302b;
  --ds-radius: 12px;
  --bg: var(--ds-background); --surface: var(--ds-surface);
  --surface-2: var(--ds-secondary); --line: var(--ds-border);
  --text: var(--ds-text); --muted: var(--ds-muted);
  --mint: var(--ds-blue); --accent: var(--ds-blue); --mint-dark: var(--ds-blue-soft);
  --success: var(--ds-green); --success-dark: #eaf6ef;
  --warning: var(--ds-orange); --danger: var(--ds-red);
  --review-bg: var(--bg); --review-panel: var(--surface); --review-line: var(--line);
  --review-text: var(--text); --review-muted: var(--muted); --review-blue: var(--mint);
  font-family: var(--ds-font); background: var(--bg); color: var(--text);
}
body, body.portal-mode { font-family: var(--ds-font); background: var(--bg); color: var(--text); }
body.portal-mode { --bg: var(--ds-background); --surface: var(--ds-surface); --surface-2: var(--ds-secondary); --line: var(--ds-border); --text: var(--ds-text); --muted: var(--ds-muted); --mint: var(--ds-blue); --mint-dark: var(--ds-blue-soft); --danger: var(--ds-red); }
button, input, select, textarea { font-family: inherit; }
h1, h2, h3 { color: var(--text); letter-spacing: -.035em; }
.hero h1, .rally-hero h1, .review-hero h1, .maintenance-heading h1, .tablets-app h1 { font-size: clamp(32px, 4.2vw, 60px); line-height: 1.1; letter-spacing: -.05em; }
label { color: var(--muted); }
input, select, textarea { color: var(--text); background-color: var(--surface); border-color: var(--line); border-radius: var(--ds-radius); accent-color: var(--mint); }
input::placeholder, textarea::placeholder { color: #707b89; opacity: 1; }
:where(a, button, input, select, textarea, summary):focus-visible { outline: 3px solid var(--mint); outline-offset: 3px; }
.primary, .portal-mode dialog .primary { background: var(--mint); color: #fff; font-weight: 650; border-radius: var(--ds-radius); }
.secondary, .icon-button, .button-link.secondary { color: var(--text); background: var(--surface); border-color: var(--line); font-weight: 600; border-radius: var(--ds-radius); }
.topbar, .review-topbar, .maintenance-topbar { border-bottom-color: var(--line); }
.briefops-product-word { color: var(--text); }
.delivrone-systems-brand { mix-blend-mode: normal; filter: none; }
.brand-back, .account-role-line { color: var(--muted); }
.panel, .line-card, .choice-card, .review-item, .access-card, .publish-panel, .line-section, .result-card { box-shadow: 0 4px 18px #243c5a05; }
.choice-icon:not(.moon), .result-success-icon { color: #fff; }
.steps .step.active, .steps .step.done { color: var(--text); }
.step.active > span { color: #fff; }
.step.done > span { color: var(--mint); }
.result-card .mitti-create-link { color: #fff; }
.decision-option.go { color: var(--success); }
.decision-option.vigilance { color: var(--warning); }
.decision-option.no-go { color: var(--danger); }
.decision-option.go:has(input:checked) { background: var(--success); border-color: var(--success); color: #fff; }
.decision-option.vigilance:has(input:checked) { background: #f5a623; border-color: #bd7400; color: #382000; }
.decision-option.no-go:has(input:checked) { background: var(--danger); border-color: var(--danger); color: #fff; }
dialog, .portal-mode dialog { color: var(--text); background: var(--surface); border: 1px solid var(--line); border-radius: 22px; box-shadow: 0 24px 80px #21334b24; }
dialog::backdrop, .admin-dialog::backdrop, .capture-viewer::backdrop { background: #23354b55; backdrop-filter: blur(8px); }
.hub-splash { background: var(--bg); }
.hub-splash-logo { filter: none; }
.hub-splash-caption { color: var(--muted); }
.rally-orbit strong, .plan-drop-icon { background: var(--mint-dark); color: var(--mint); box-shadow: none; }
.rally-orbit i { border-color: var(--surface); }
.viewer-arrow { color: var(--text); }
/* Tablet console shares presentation, never its permissions or command logic. */
.tablets-app header { background: var(--surface); border-color: var(--line); }
.tablets-app a { color: var(--mint); }
.tablets-app p, .tablets-app .stat span, .tablets-app footer, .tablets-app .records small { color: var(--muted); }
.tablets-app button { background: var(--mint); color: #fff; border-color: transparent; border-radius: var(--ds-radius); font-weight: 600; }
.tablets-app button:hover { background: #0054b1; }
.tablets-app nav { border-color: var(--line); }
.tablets-app nav button { color: var(--muted); background: transparent; border-color: var(--line); }
.tablets-app nav button[aria-selected=true] { color: var(--mint); background: var(--mint-dark); border-color: #a7c9f0; }
.tablets-app .stat, .tablets-app .card { background: var(--surface); border-color: var(--line); box-shadow: 0 4px 18px #243c5a05; }
.tablets-app .badge { background: #eaf6ef; color: var(--success); }
.tablets-app .badge.off { background: #fff0ef; color: var(--danger); }
.tablets-app .danger { background: #fff0ef; color: var(--danger); border-color: #e8b6b3; }
.tablets-app .danger:hover { background: #ffe3e1; }
.tablets-app .records article { border-color: var(--line); }
.tablets-app #message.error, .tablets-app #editError, .tablets-app #fleetError { color: var(--danger); }
@media (max-width: 800px) { .maintenance-topbar, .maintenance-brand { flex-wrap: wrap; } .maintenance-topbar { padding: 16px 0; } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; } }
