/* Public status follows the pearl, blue, and divider-led Upload120 pages. */
.status-page { --status-ink: #252a30; --status-muted: #555e69; --status-line: rgba(74,88,104,.18); --status-paper: #fffdf8; --status-band: #edf4f8; color: var(--status-ink); background: var(--pearl); }
.status-page main { display: block; }
.status-page .tile { padding-inline: 32px; color: var(--status-ink); }
.status-page .tile-inner { width: min(1440px, 100%); max-width: 1440px; margin-inline: auto; }
.status-page .eyebrow { margin: 0 0 18px; color: var(--status-muted); font-size: 13px; font-weight: 600; letter-spacing: 0; text-transform: none; }
.status-page .status-hero { padding-block: 88px 72px; background: var(--pearl); border-bottom: 1px solid var(--status-line); }
.status-page .status-layout { grid-template-columns: minmax(0, 1.1fr) minmax(0, .85fr); gap: clamp(40px, 7vw, 100px); align-items: center; }
.status-page .status-hero h1 { margin: 0; color: var(--status-ink); font-size: clamp(48px, 6.8vw, 88px); font-weight: 600; line-height: 1.02; letter-spacing: -.055em; }
.status-page .status-hero .lead { max-width: 46ch; margin: 26px 0 0; color: var(--status-muted); font-size: 19px; line-height: 1.6; }
.status-page .status-metrics { gap: 32px; max-width: 480px; margin-top: 36px; }
.status-page .status-metrics > div { gap: 8px; padding: 20px 0 0; border: 0; border-top: 1px solid var(--status-line); border-radius: 0; background: transparent; }
.status-page .status-metrics strong { color: var(--status-ink); font-size: 30px; font-weight: 600; }
.status-page .status-metrics span { color: var(--status-muted); font-size: 13px; line-height: 1.5; }
.status-page .status-live-card { grid-template-columns: 12px minmax(0, 1fr); gap: 22px; padding: 32px; border: 1px solid var(--status-line); border-radius: var(--radius-lg); color: var(--status-ink); background: var(--status-paper); box-shadow: none; }
.status-page .status-live-card > .status-dot { align-self: start; margin-top: 7px; box-shadow: none; background: #687787; }
.status-page .status-live-card[data-status="live"] .status-dot { background: #23734e; }
.status-page .status-live-card:is([data-status="degraded"], [data-status="working"], [data-status="notice"]) .status-dot { background: #a3671d; }
.status-page .status-live-card:is([data-status="error"], [data-status="down"]) .status-dot { background: #b33e4c; }
.status-page #statusTitle { display: block; color: var(--status-ink); font-size: 26px; font-weight: 600; letter-spacing: -.025em; line-height: 1.2; }
.status-page .status-live-card p { margin-top: 12px; color: var(--status-muted); font-size: 15px; line-height: 1.6; }
.status-page .status-live-card .status-checked { margin-top: 22px; font-size: 12px; }
.status-page .status-live-card button { grid-column: 2; justify-self: start; }
.status-page .status-grid { width: min(1504px, 100%); margin-inline: auto; gap: clamp(40px, 7vw, 100px); padding: 72px 32px 88px; grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr); }
.status-page .status-panel { padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.status-page .status-panel h2 { margin: 0 0 28px; color: var(--status-ink); font-size: clamp(28px, 3vw, 38px); font-weight: 600; line-height: 1.15; letter-spacing: -.035em; }
.status-page .status-system, .status-page .status-activity-list li { min-height: 64px; padding-block: 14px; border-color: var(--status-line); color: var(--status-ink); font-size: 15px; line-height: 1.4; }
.status-page .status-system strong { color: #23734e; font-size: 13px; font-weight: 600; text-align: right; }
.status-page .status-system[data-state="maintenance"] strong { color: #8a581c; }
.status-page .status-system[data-state="degraded"] strong { color: #a53443; }
.status-page .status-activity-list strong { font-weight: 500; }
.status-page .status-activity-list time, .status-page .status-privacy-note, .status-page .status-empty { color: var(--status-muted); font-size: 13px; line-height: 1.6; }
.status-page .policy-section { padding-block: 48px 56px; border: 0; background: var(--status-band); }
.status-page .policy-section .tile-inner { padding-left: 0; display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1fr); gap: 40px; align-items: center; }
.status-page .policy-section h2 { margin: 0; color: var(--status-ink); font-size: 30px; font-weight: 600; line-height: 1.2; }
.status-page .policy-section p { margin: 0; color: var(--status-muted); font-size: 15px; line-height: 1.7; }
.status-page .policy-section a { color: #075da6; text-underline-offset: 3px; }
.status-page .secondary-pill { min-height: 44px; border: 1px solid var(--status-line); border-radius: 10px; color: var(--status-ink); background: transparent; box-shadow: none; }
.status-page .secondary-pill:hover { background: var(--status-band); }
.status-page :is(a, button):focus-visible { outline: 2px solid #1674c5; outline-offset: 4px; }
.status-page .status-no-script { padding: 24px 32px; color: var(--status-muted); }
html[data-upload120-theme="dark"] .status-page { --status-ink: #f1f3f7; --status-muted: #b0b6c2; --status-line: #2a2d35; --status-paper: #1a1c22; --status-band: #111216; }
html[data-upload120-theme="dark"] .status-page .status-system[data-state="operational"] strong { color: #90d4b1; }
html[data-upload120-theme="dark"] .status-page .status-system[data-state="maintenance"] strong { color: #e7bc7b; }
html[data-upload120-theme="dark"] .status-page .status-system[data-state="degraded"] strong { color: #ffa4ae; }
html[data-upload120-theme="dark"] .status-page .policy-section a { color: #82b7ff; }
@media (max-width: 900px) {
  .status-page .status-layout, .status-page .status-grid { grid-template-columns: 1fr; }
  .status-page .status-hero { padding-block: 60px; }
  .status-page .status-live-card { max-width: 680px; }
  .status-page .status-grid { gap: 48px; padding-block: 56px 64px; }
}
@media (max-width: 600px) {
  .status-page .tile { padding-inline: 16px; }
  .status-page .status-hero { padding-block: 48px; }
  .status-page .status-hero h1 { font-size: clamp(42px, 11vw, 60px); }
  .status-page .status-hero .lead { font-size: 16px; }
  .status-page .status-live-card { padding: 24px 20px; gap: 16px; }
  .status-page #statusTitle { font-size: 23px; }
  .status-page .status-grid { padding-inline: 16px; }
  .status-page .policy-section .tile-inner { grid-template-columns: 1fr; gap: 20px; }
  .status-page .status-activity-list time { white-space: normal; text-align: right; }
}
@media (prefers-reduced-motion: reduce) { .status-page * { scroll-behavior: auto !important; transition: none !important; animation: none !important; } }

html[data-upload120-theme="dark"] body.status-page .policy-section { background: var(--status-band); }
html[data-upload120-theme="dark"] body.status-page .policy-section .tile-inner { background: transparent; }

/* Fewer cards (Oct 2026, both themes): the live status reads straight on the page. */
.status-page .status-live-card { padding-inline: 0; border: 0; border-top: 1px solid var(--status-line); border-radius: 0; background: none; box-shadow: none; }
