.status-page{--status-green:var(--success);--status-amber:var(--warning);--status-red:#ff7d8b;--status-purple:#8d7cf7;--status-orange:#f08a5d;--status-muted-2:#6f8097;--status-shell:1580px;background:radial-gradient(circle at 78% 8%,rgba(0,212,255,.025),transparent 28%),var(--ink)}
.status-page main .shell,.status-page .status-tools{width:min(calc(100% - 48px),var(--status-shell));max-width:none}
.status-page-hero{padding:96px 0 62px}
.status-page-hero-grid,.status-section-layout{display:grid;grid-template-columns:205px minmax(0,1fr);gap:52px}
.status-page-hero h1{max-width:15ch;margin:0;font-size:clamp(54px,5.6vw,92px);line-height:.94;letter-spacing:-.062em}
.status-page-hero h1 em{color:var(--cyan);font-style:normal}
.status-page-hero p{max-width:880px;margin:26px 0 0;color:var(--muted-strong);font-size:15px;line-height:1.75}
.status-section-label{display:flex;align-items:center;gap:12px;color:var(--status-muted-2);font:700 10px/1.2 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.14em;text-transform:uppercase}
.status-section-label span{color:var(--cyan)}
.status-tools{display:flex;align-items:center;gap:17px;flex-wrap:wrap;margin-top:24px;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--muted);font-size:11px}
.status-tools>span{display:flex;align-items:center;gap:7px}
.status-monitor-state{min-width:275px;margin-right:auto;color:#d0d9e4}
.status-monitor-state>span{display:grid;gap:2px}
.status-monitor-state b{color:#e7f1fa;font-size:11px}
.status-monitor-state small{color:var(--status-muted-2);font-size:9px}
.status-monitor-state.stale b{color:var(--status-red)}
.status-live-dot,.status-key-dot,.status-component-row i,.status-availability-row i,.status-day-summary i{display:inline-block;width:8px;height:8px;flex:0 0 auto;border-radius:50%;background:var(--status-green)}
.status-live-dot{box-shadow:0 0 13px rgba(82,224,178,.34)}
.status-monitor-state.stale .status-live-dot{background:var(--status-red);box-shadow:0 0 13px rgba(255,125,139,.28)}
.status-key-dot.degraded,.status-component-row i.degraded,.status-availability-row i.degraded,.status-day-summary i.degraded{background:var(--status-amber)}
.status-key-dot.partial-outage,.status-component-row i.partial-outage,.status-availability-row i.partial-outage,.status-day-summary i.partial-outage{background:var(--status-orange)}
.status-key-dot.major-outage,.status-component-row i.major-outage,.status-availability-row i.major-outage,.status-day-summary i.major-outage{background:var(--status-red)}
.status-key-dot.maintenance,.status-component-row i.maintenance,.status-availability-row i.maintenance,.status-day-summary i.maintenance{background:var(--status-purple)}
.status-key-dot.unavailable,.status-component-row i.unavailable,.status-availability-row i.unavailable,.status-day-summary i.unavailable{background:#78879a}
.status-reference-section{padding:82px 0;border-bottom:1px solid var(--line)}
.status-section-aside{position:sticky;top:112px;align-self:start}
.status-section-aside p{max-width:190px;margin:15px 0 0;color:var(--status-muted-2);font-size:12px;line-height:1.6}
.status-section-content{min-width:0}
.overall{display:flex;align-items:center;gap:18px;padding:23px 2px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.overall>i{width:12px;height:12px;border-radius:50%;background:var(--status-green);box-shadow:0 0 15px rgba(82,224,178,.32)}
.overall>div{flex:1}.overall span{display:block;color:var(--status-muted-2);font:700 9px ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.1em}
.overall h2{margin:3px 0 0;font-size:30px;letter-spacing:-.035em}.overall small{color:var(--status-muted-2);font-size:10px}
.overall.degraded>i{background:var(--status-amber)}.overall.partial-outage>i{background:var(--status-orange)}.overall.major-outage>i,.overall.unavailable>i{background:var(--status-red)}.overall.maintenance>i{background:var(--status-purple)}
.status-service-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.75fr);gap:46px;margin-top:30px}
.status-group-head{padding-bottom:11px;border-bottom:1px solid var(--line-strong)}
.status-group-head span{color:var(--cyan);font:700 9px ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.11em;text-transform:uppercase}
.status-list{border-top:1px solid var(--line)}
.status-service-primary .status-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:34px}
.status-component-row{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;min-height:85px;padding:15px 0;border-bottom:1px solid var(--line)}
.status-component-main{display:flex;align-items:flex-start;gap:11px;min-width:0}.status-component-main>i{margin-top:5px}.status-component-main>span{min-width:0}
.status-component-row strong{display:block;color:var(--white);font-size:13px}
.status-component-detail{display:block;max-width:500px;margin-top:4px;color:var(--status-muted-2);font-size:10px;line-height:1.45}
.status-component-metric{display:block;min-height:14px;margin-top:6px;color:#91a7bb;font:700 9px/1.4 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.status-component-row>b{padding-top:1px;color:var(--muted);font-size:10px;font-weight:700;text-align:right;white-space:nowrap}
.status-project-note{max-width:480px;margin:16px 0 0;color:var(--status-muted-2);font-size:11px;line-height:1.55}
.status-availability-head{padding:24px 26px;border:1px solid var(--line);background:linear-gradient(180deg,rgba(9,24,45,.72),rgba(4,13,30,.56))}
.status-availability-head>div:first-child{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap}
.status-availability-head>div:first-child span{color:var(--cyan);font:700 9px ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.13em;text-transform:uppercase}
.status-availability-head>div:first-child strong{color:var(--white);font-size:31px;line-height:1;letter-spacing:-.04em}
.status-history-bars{display:grid;grid-template-columns:repeat(30,minmax(5px,1fr));gap:5px;width:100%;margin-top:19px}
.status-history-day{position:relative;display:block;width:100%;height:38px;border-radius:3px;outline:none;background:var(--status-green);box-shadow:inset 0 0 0 1px rgba(255,255,255,.025)}
.status-history-day.degraded{background:var(--status-amber)}.status-history-day.partial-outage{background:var(--status-orange)}.status-history-day.major-outage{background:var(--status-red)}.status-history-day.maintenance{background:var(--status-purple)}.status-history-day.unavailable{background:#78879a}.status-history-day.no-data{background:#142132;opacity:.58}
.status-history-day::before{position:absolute;left:50%;bottom:calc(100% + 5px);z-index:42;width:9px;height:9px;transform:translateX(-50%) rotate(45deg);border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#101d2d;content:"";opacity:0;visibility:hidden}
.status-history-popover{position:absolute;left:50%;bottom:calc(100% + 10px);z-index:41;width:290px;max-width:min(290px,82vw);padding:14px;transform:translateX(-50%);border:1px solid var(--line);border-radius:6px;background:#101d2d;color:#e8f0f8;box-shadow:0 14px 38px rgba(0,0,0,.38);opacity:0;visibility:hidden;pointer-events:none}
.status-history-popover>b{display:block;margin-bottom:11px;font-size:12px}.status-history-popover>p{margin:9px 0 0;color:#b8c5d3;font-size:10px}
.status-day-summary{display:grid;grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 9px;border:1px solid rgba(255,255,255,.045);background:rgba(255,255,255,.035)}
.status-day-summary strong{font-size:11px}.status-day-summary span{color:#c8d3df;font-size:10px;white-space:nowrap}
.status-history-day:hover .status-history-popover,.status-history-day:focus-visible .status-history-popover,.status-history-day:hover::before,.status-history-day:focus-visible::before{opacity:1;visibility:visible}
.status-history-day:nth-child(-n+4) .status-history-popover{left:0;transform:none}.status-history-day:nth-last-child(-n+4) .status-history-popover{right:0;left:auto;transform:none}
.status-availability-head>small{display:block;margin-top:12px;color:var(--status-muted-2);font-size:10px;line-height:1.5}
.status-availability-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:36px;margin-top:24px;border-top:1px solid var(--line)}
.status-availability-row{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;min-height:66px;padding:14px 0;border-bottom:1px solid var(--line)}
.status-availability-row>span:first-child{display:flex;align-items:flex-start;gap:10px;min-width:0}.status-availability-row>span:first-child i{margin-top:5px}.status-availability-row>span:first-child>span{min-width:0}
.status-availability-row strong{display:block;font-size:13px}.status-availability-row>span:first-child small{display:block;margin-top:4px;color:var(--status-muted-2);font-size:9px;line-height:1.4}
.status-availability-row>span:last-child{text-align:right;white-space:nowrap}.status-availability-row b{display:block;color:#e8f0f8;font-size:13px}.status-availability-row>span:last-child small{display:block;margin-top:3px;color:var(--status-muted-2);font-size:9px}
.status-event-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.status-event-card{padding:22px 24px;border:1px solid var(--line);background:rgba(8,18,30,.56)}
.status-event-card.incident{border-left:3px solid var(--status-red)}.status-event-card.maintenance{border-left:3px solid var(--status-purple)}
.status-event-head{display:flex;justify-content:space-between;gap:16px;color:var(--status-muted-2);font:700 9px ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.08em;text-transform:uppercase}
.status-event-card h3{margin:12px 0 7px;font-size:19px}.status-event-card p{margin:0;color:var(--muted);font-size:13px;line-height:1.55}
.status-event-meta{display:flex;gap:18px;flex-wrap:wrap;margin-top:17px;color:var(--status-muted-2);font-size:10px}
.status-event-updates{margin-top:17px;border-top:1px solid var(--line)}.status-event-update{padding:13px 0;border-bottom:1px solid var(--line)}.status-event-update:last-child{padding-bottom:0;border-bottom:0}
.status-event-update>div{display:flex;align-items:baseline;gap:5px;flex-wrap:wrap}.status-event-update strong{color:var(--white);font-size:13px;text-transform:capitalize}.status-event-update span{color:var(--muted);font-size:13px;line-height:1.55}.status-event-update time{display:block;margin-top:4px;color:var(--status-muted-2);font-size:10px}
.status-event-card.history-event{background:rgba(8,18,30,.38)}.status-event-history{gap:16px}
.status-empty{display:flex;align-items:center;gap:17px;padding:26px;border:1px solid var(--line);background:rgba(8,18,30,.4)}.status-empty>span{display:grid;width:34px;height:34px;place-items:center;flex:0 0 auto;border:1px solid rgba(82,224,178,.28);border-radius:50%;color:var(--status-green)}.status-empty strong{display:block;font-size:16px}.status-empty p{margin:4px 0 0;color:var(--muted);font-size:12px}.status-empty.compact{padding:20px}
@media(max-width:1180px){.status-page main .shell,.status-page .status-tools{width:min(calc(100% - 40px),var(--status-shell))}.status-service-primary .status-list,.status-availability-list{grid-template-columns:1fr}}
@media(max-width:960px){.status-page-hero-grid,.status-section-layout{grid-template-columns:1fr;gap:30px}.status-section-aside{position:static}.status-section-aside p{max-width:620px}.status-service-grid,.status-event-list{grid-template-columns:1fr}}
@media(max-width:680px){.status-page main .shell,.status-page .status-tools{width:min(calc(100% - 28px),var(--status-shell))}.status-page-hero{padding:68px 0 44px}.status-page-hero h1{font-size:46px}.status-monitor-state{width:100%;min-width:0;margin-right:0}.overall{align-items:flex-start}.overall small{max-width:130px;text-align:right}.status-component-row{min-height:0}.status-component-row>b{max-width:112px}.status-availability-head{padding:18px}.status-history-bars{gap:2px}.status-history-day{height:27px}.status-history-popover{width:250px;max-width:78vw}.status-availability-list{grid-template-columns:1fr}}

/* Modulr-style daily history detail, driven by recorded NDev day aggregates. */
.status-day-events{display:grid;gap:7px}
.status-day-event{display:grid;grid-template-columns:12px minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 9px;border:1px solid rgba(255,255,255,.045);border-radius:4px;background:rgba(255,255,255,.035)}
.status-day-event>i{width:8px;height:8px;border-radius:50%;background:var(--status-green)}
.status-day-event>strong{font-size:11px;color:#f0f5fa}
.status-day-event>time{font:600 10px/1.2 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#c8d3df;white-space:nowrap}
.status-day-event.degraded>i{background:var(--status-amber)}
.status-day-event.partial-outage>i{background:var(--status-orange)}
.status-day-event.major-outage>i{background:var(--status-red)}
.status-day-event.maintenance>i{background:var(--status-purple)}
.status-day-event.unavailable>i{background:#78879a}
.status-day-affected{margin-top:13px;padding-top:11px;border-top:1px solid var(--line)}
.status-day-affected>span{display:block;margin-bottom:8px;color:var(--status-muted-2);font:700 9px/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.08em}
.status-day-component{padding:7px 0}
.status-day-component+.status-day-component{border-top:1px solid rgba(255,255,255,.045)}
.status-day-component>strong{display:block;margin-bottom:5px;color:#e7eef6;font-size:11px}
.status-day-component>small{display:grid;grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:7px;margin-top:4px;color:#b8c5d3;font-size:10px;line-height:1.35}
.status-day-component>small>i{width:6px;height:6px;border-radius:50%;background:var(--status-green)}
.status-day-component>small>i.degraded{background:var(--status-amber)}
.status-day-component>small>i.partial-outage{background:var(--status-orange)}
.status-day-component>small>i.major-outage{background:var(--status-red)}
.status-day-component>small>i.maintenance{background:var(--status-purple)}
.status-day-component>small>i.unavailable{background:#78879a}
.status-day-component>small>time{font:600 9px/1.2 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#c8d3df;white-space:nowrap}
.status-day-related{margin-top:13px;padding-top:11px;border-top:1px solid var(--line)}
.status-day-related>span{display:block;margin-bottom:7px;color:var(--status-muted-2);font:700 9px/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.08em}
.status-day-related>p{margin:4px 0 0;color:#d8e1ea;font-size:11px;line-height:1.45}
.status-history-popover{width:310px;max-width:min(310px,82vw);max-height:min(520px,72vh);overflow-y:auto;overscroll-behavior:contain;text-align:left}
.status-day-affected.compact{margin-top:0;padding-top:0;border-top:0}
.status-day-affected.compact>span{margin-bottom:6px}
.status-day-affected.compact .status-day-component{padding:5px 0}
.status-day-affected.compact .status-day-component>strong{margin-bottom:3px}
.status-day-affected.compact .status-day-component>small{margin-top:3px}
.status-day-affected.compact+.status-day-related{margin-top:9px;padding-top:9px}
.status-history-popover::-webkit-scrollbar{width:5px}
.status-history-popover::-webkit-scrollbar-thumb{background:rgba(180,198,217,.22);border-radius:999px}/* Launch-ready Status page polish. */
.status-page-hero{padding:86px 0 48px}
.status-page-hero p{max-width:780px;margin-top:22px}
.status-tools{margin-top:0;padding:13px 16px;border:1px solid var(--line);background:rgba(8,18,30,.38)}
.status-monitor-state{min-width:225px}
.status-monitor-state b{font-size:12px}
.status-monitor-state small{font-size:10px}
.status-reference-section{padding:72px 0}
.status-section-aside p{max-width:220px}
.overall{padding:22px 18px;border:1px solid var(--line);background:rgba(8,18,30,.34)}
.status-service-grid{margin-top:24px}
.status-component-row{min-height:78px}
.status-component-metric[hidden],.status-component-metric:empty{display:none}
.status-project-note{max-width:390px;margin-top:13px}
.status-availability-head,.status-event-card,.status-empty{border-radius:6px}
.status-history-day{transition:transform .14s ease,filter .14s ease}
.status-history-day:hover,.status-history-day:focus-visible{z-index:3;transform:translateY(-2px);filter:brightness(1.07)}
.status-event-card h3{line-height:1.25}
.footer-status .status-key-dot{margin-top:1px}
@media(max-width:680px){.status-page-hero{padding:64px 0 38px}.status-tools{padding:13px 14px}.status-reference-section{padding:58px 0}.overall{padding:18px 14px}}

/* ===== NDev Status Mobile Launch QA v1 ===== */
@media (max-width: 680px) {
  .status-page main .shell,
  .status-page .status-tools {
    width: min(calc(100% - 28px), var(--status-shell));
  }

  .status-page-hero h1 {
    max-width: 100%;
    font-size: clamp(38px, 11.6vw, 46px);
  }

  .status-tools {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px 14px;
  }

  .status-monitor-state {
    grid-column: 1 / -1;
    width: 100%;
  }

  .status-tools > span:not(.status-monitor-state) {
    min-width: 0;
    font-size: 10px;
    line-height: 1.35;
  }

  .overall {
    display: grid;
    grid-template-columns: 12px minmax(0, 1fr);
    align-items: start;
    gap: 14px;
  }

  .overall > i { margin-top: 5px; }

  .overall small {
    grid-column: 2;
    max-width: none;
    text-align: left;
  }

  .status-component-row,
  .status-availability-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: start;
  }

  .status-component-row > b,
  .status-availability-row > span:last-child {
    max-width: 108px;
    white-space: normal;
  }

  .status-event-head { flex-wrap: wrap; }

  .status-history-popover {
    width: 260px;
    max-width: min(260px, calc(100vw - 44px));
  }
}

@media (max-width: 460px) {
  .status-tools { grid-template-columns: 1fr; }
  .status-monitor-state { grid-column: auto; }

  .status-component-row,
  .status-availability-row {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .status-component-row > b,
  .status-availability-row > span:last-child {
    max-width: none;
    text-align: left;
  }

  .status-day-event {
    grid-template-columns: 10px minmax(0, 1fr);
  }

  .status-day-event > time {
    grid-column: 2;
    white-space: normal;
  }

  .status-day-component > small {
    grid-template-columns: 8px minmax(0, 1fr);
  }

  .status-day-component > small > time {
    grid-column: 2;
    white-space: normal;
  }
}

/* ===== NDev Status Mobile Horizontal-Overflow Fix v2 ===== */
@media (max-width: 680px) {
  .status-page {
    width: 100%;
    max-width: 100%;
    overflow-x: clip;
  }

  .status-page main,
  .status-page .status-reference-section,
  .status-page .status-section-layout,
  .status-page .status-section-content,
  .status-page .status-availability-head,
  .status-page .status-availability-list,
  .status-page .status-history-bars {
    min-width: 0;
    max-width: 100%;
  }

  .status-page .status-history-bars {
    overflow: visible;
  }

  /* Hidden absolutely-positioned day popovers were able to enlarge the
     mobile scrollable area. On phones the focused/tapped popover becomes a
     viewport-contained panel instead. */
  .status-page .status-history-day::before {
    display: none;
  }

  .status-page .status-history-popover,
  .status-page .status-history-day:nth-child(-n+4) .status-history-popover,
  .status-page .status-history-day:nth-last-child(-n+4) .status-history-popover {
    position: fixed;
    z-index: 80;
    top: 50%;
    right: 14px;
    bottom: auto;
    left: 14px;
    width: auto;
    max-width: none;
    max-height: min(68dvh, 520px);
    transform: translateY(-50%);
    box-sizing: border-box;
  }
}

@media (max-width: 430px) {
  .status-page .status-history-popover,
  .status-page .status-history-day:nth-child(-n+4) .status-history-popover,
  .status-page .status-history-day:nth-last-child(-n+4) .status-history-popover {
    right: 12px;
    left: 12px;
  }
}
