@font-face{font-family:Lora;src:url('/assets/Lora-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Lora;src:url('/assets/Lora-Bold.ttf') format('truetype');font-weight:700;font-display:swap}
:root{color-scheme:light;--ink:#1b3540;--accent:#d93250;--teal:#68a6a6;--paper:#fdfdfd;--mist:#eef4f3;--muted:#698087;--line:rgba(27,53,64,.11);--green:#26866e;--amber:#c58a2a;--red:#d93250;font-family:Lora,Georgia,serif;color:var(--ink);background:var(--mist)}
*{box-sizing:border-box}
html,body{width:100%;height:100%;height:100dvh;overflow:hidden}
body{margin:0;background:radial-gradient(circle at 8% 8%,rgba(104,166,166,.19),transparent 30%),linear-gradient(145deg,#f8fbfa 0%,#eef4f3 100%)}
body:after{content:"";position:fixed;right:-8rem;bottom:-10rem;width:28rem;height:28rem;border:1px solid rgba(104,166,166,.18);border-radius:50%;box-shadow:0 0 0 4rem rgba(104,166,166,.04),0 0 0 8rem rgba(104,166,166,.03);pointer-events:none}
.page{position:relative;z-index:1;width:min(1180px,calc(100% - 48px));height:100%;margin:auto;padding:clamp(18px,3vh,34px) 0 max(14px,env(safe-area-inset-bottom));display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;gap:clamp(12px,2vh,22px)}
.topbar,.panel-heading,.component,.summary{display:flex;align-items:center}
.topbar{justify-content:space-between;min-height:42px}.brand{display:block}.brand img{display:block;width:clamp(118px,11vw,142px);height:auto}.page-title{display:flex;align-items:center;gap:9px;padding:9px 13px;color:var(--ink);border:1px solid var(--line);border-radius:999px;background:rgba(253,253,253,.78);box-shadow:0 6px 18px rgba(27,53,64,.06);font-size:.7rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.live-dot,.legend i,.state i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px rgba(38,134,110,.12)}
.summary{position:relative;gap:20px;min-height:128px;padding:clamp(20px,3vw,34px);overflow:hidden;color:#fff;border-radius:24px;background:linear-gradient(115deg,var(--ink),#274c58);box-shadow:0 18px 50px rgba(27,53,64,.18)}
.summary:after{content:"";position:absolute;width:260px;height:260px;right:-70px;top:-120px;border-radius:50%;border:45px solid rgba(255,255,255,.055)}
.summary-icon{display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;border-radius:15px;background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.12)}
.pulse{width:13px;height:13px;border-radius:50%;background:#a2b3b8;box-shadow:0 0 0 8px rgba(255,255,255,.07)}.operational .pulse{background:#70d2b5}.degraded .pulse{background:#ffd27a}.outage .pulse{background:#ff7991}
.summary-copy{min-width:0}.eyebrow{display:block;margin-bottom:5px;font-size:.67rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--teal)}.summary .eyebrow{color:rgba(255,255,255,.6)}h1,h2,h3,p{margin:0}.summary h1{font-size:clamp(1.55rem,3.2vw,2.35rem);line-height:1.08}.summary p{margin-top:6px;color:rgba(255,255,255,.68);font-size:.86rem}
.dashboard{min-height:0;display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,.75fr);gap:clamp(12px,2vw,20px)}
.panel{min-height:0;padding:clamp(17px,2vw,25px);border:1px solid rgba(255,255,255,.8);border-radius:22px;background:rgba(253,253,253,.88);box-shadow:0 12px 40px rgba(27,53,64,.07);backdrop-filter:blur(12px)}
.panel-heading{justify-content:space-between;margin-bottom:clamp(12px,1.8vh,20px)}.panel h2{font-size:clamp(1.15rem,2vw,1.5rem)}.legend{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:.72rem}.legend i{width:6px;height:6px;box-shadow:none}
.components{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.component{justify-content:space-between;gap:10px;min-width:0;min-height:72px;padding:14px 15px;border:1px solid var(--line);border-radius:15px;background:#fff}.component-copy{min-width:0}.component h3{overflow:hidden;text-overflow:ellipsis;font-size:.88rem;white-space:nowrap}.component small{display:block;margin-top:4px;color:var(--muted);font:400 .69rem Lora,serif}.state{display:flex;align-items:center;gap:6px;flex:none;padding:6px 8px;border-radius:999px;background:var(--mist);font-size:.64rem;font-weight:700}.state i{width:6px;height:6px;box-shadow:none}.state.degraded{color:#95620e;background:#fff4df}.state.degraded i,.bar.degraded{background:var(--amber)}.state.outage{color:#af2942;background:#fff0f3}.state.outage i,.bar.outage{background:var(--red)}
.history-panel{display:flex;flex-direction:column}.bars{display:flex;align-items:stretch;gap:3px;min-height:80px;flex:1;padding:13px;border-radius:15px;background:var(--mist);overflow:hidden}.bar{min-width:3px;flex:1;border-radius:3px;background:var(--green)}.history-panel p{margin-top:14px;color:var(--muted);font-size:.75rem;line-height:1.5}
footer{text-align:center;color:var(--muted);font-size:.75rem}footer a{color:var(--accent);font-weight:700;text-decoration:none}footer a:hover{text-decoration:underline}
@media(max-width:760px){.page{width:calc(100% - 24px);padding:14px 0 max(11px,env(safe-area-inset-bottom));gap:10px}.brand img{width:112px}.page-title{padding:7px 10px;font-size:.61rem}.summary{min-height:105px;padding:18px;border-radius:18px}.summary-icon{flex-basis:40px;width:40px;height:40px;border-radius:12px}.dashboard{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) auto;gap:10px}.panel{padding:15px;border-radius:18px}.services-panel{overflow:hidden}.panel-heading{margin-bottom:10px}.components{gap:7px}.component{min-height:60px;padding:10px;border-radius:12px;align-items:flex-start;flex-direction:column;justify-content:center}.component h3{font-size:.76rem;max-width:100%}.component small{font-size:.61rem}.state{padding:4px 6px;font-size:.56rem}.history-panel{padding:12px 15px}.history-panel .panel-heading{margin:0}.history-panel .eyebrow{display:none}.history-panel h2{font-size:.85rem}.bars{min-height:18px;height:18px;flex:none;padding:3px;margin-top:7px}.history-panel p{margin-top:6px;font-size:.62rem}footer{font-size:.65rem}}
@media(max-width:380px){.page{width:calc(100% - 16px)}.page-title{padding:7px 9px;font-size:.56rem}.summary{gap:12px}.summary h1{font-size:1.35rem}.component{padding:8px}.state{max-width:100%}}
@media(max-height:680px){.page{padding-top:10px;gap:8px}.summary{min-height:88px;padding-top:14px;padding-bottom:14px}.summary-icon{width:38px;height:38px;flex-basis:38px}.panel{padding-top:12px;padding-bottom:12px}.component{min-height:52px}.history-panel{display:none}.dashboard{grid-template-columns:1fr}.components{grid-template-columns:repeat(3,minmax(0,1fr))}footer{font-size:.63rem}}
@media(max-height:680px) and (max-width:620px){.components{grid-template-columns:repeat(2,minmax(0,1fr))}.component{min-height:48px;padding:7px 9px}.component small{display:none}.summary p{font-size:.72rem}}
