/* Look & feel follows www.iphost.net: Manrope, #464255 ink, #B45F9D magenta, #FF5000/#FAA052 orange. */
@font-face{font-family:"Manrope";font-style:normal;font-weight:400 800;font-display:swap;src:url(manrope-greek.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}
@font-face{font-family:"Manrope";font-style:normal;font-weight:400 800;font-display:swap;src:url(manrope-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Manrope";font-style:normal;font-weight:400 800;font-display:swap;src:url(manrope-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
  color-scheme:light;
  --bg:#f5f5f5; --surface:#fff; --line:#e7e7e7; --text:#464255; --muted:#6b6878;
  --brand:#b45f9d; --link:#9e4c88; --accent:#ff5000; --logo:#231f20;
  --ink:#464255; --ink-text:#fff; --ink-hover:#b45f9d;
  --grad:linear-gradient(90deg,#faa052 27%,#b6619c 100%);
  --foot-bg:#464358;
  --ok:#1f9d55; --ok-bg:#e7f6ed;
  --perf:#8b5cf6; --perf-bg:#f0eafe;
  --part:#e58a00; --part-bg:#fff2dc;
  --major:#d93025; --major-bg:#fde8e6;
  --maint:#2f7dd1; --maint-bg:#e5f0fc;
  --none:#d9d8de;
  --radius:16px; --pill:35px;
  --shadow:0 0 20px rgba(0,0,0,.08);
  --shadow-top:0 0 20px rgba(0,0,0,.15);
}
/* www.iphost.net is light-only, so dark is opt-in: <html data-theme="dark"> */
:root[data-theme="dark"]{
  color-scheme:dark;
  --bg:#1d1b25; --surface:#292731; --line:#3c3948; --text:#f1eff5; --muted:#aaa7b6;
  --brand:#d48cc0; --link:#e0a1cf; --accent:#ff6a26; --logo:#f1eff5;
  --ink:#f1eff5; --ink-text:#24222c; --ink-hover:#e0a1cf;
  --foot-bg:#15141b;
  --ok:#3ccf7a; --ok-bg:#12291c;
  --perf:#a78bfa; --perf-bg:#221c3a;
  --part:#f5a524; --part-bg:#33260d;
  --major:#ff6b60; --major-bg:#3a1714;
  --maint:#5aa2f0; --maint-bg:#14263b;
  --none:#3c3948; --shadow:none; --shadow-top:0 0 20px rgba(0,0,0,.5);
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;min-height:100vh;display:flex;flex-direction:column;background:var(--bg);color:var(--text);font:400 16px/1.55 "Manrope",system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:var(--link);transition:color .2s}
a:hover{color:var(--accent)}
.wrap{width:100%;max-width:1140px;margin:0 auto;padding-left:20px;padding-right:20px}
.skip{position:absolute;left:-999px;top:8px;background:var(--surface);padding:8px 14px;border-radius:var(--pill);z-index:30}
.skip:focus{left:8px}
.muted{color:var(--muted)}
:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:4px}

.top{position:relative;z-index:5;background:var(--surface);box-shadow:var(--shadow-top)}
.top::before{content:"";display:block;height:4px;background:var(--grad)}
.top-in{display:flex;flex-wrap:wrap;align-items:center;gap:12px 28px;padding-top:18px;padding-bottom:18px}
.brand,.brand:hover{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--logo)}
.brand-logo{display:block;height:32px;width:auto}
.brand-sub{padding-left:12px;border-left:1px solid var(--line);font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.tabs{display:flex;gap:4px;margin-right:auto}
.tabs a{position:relative;padding:10px 15px;color:var(--text);text-decoration:none;font-size:15px;font-weight:600;text-transform:uppercase}
.tabs a::after{content:"";position:absolute;left:15px;right:15px;bottom:4px;height:3px;border-radius:3px;background:var(--grad);transform:scaleX(0);transform-origin:left}
.tabs a:hover{color:var(--brand)}
.tabs a[aria-current="page"]{color:var(--brand)}
.tabs a:hover::after,.tabs a[aria-current="page"]::after{transform:scaleX(1)}
.tools{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.seg,.range{display:inline-flex;padding:3px;border:1px solid var(--line);border-radius:var(--pill);background:var(--bg)}
.seg button,.range button{background:transparent;border:0;border-radius:var(--pill);padding:4px 12px;font:inherit;font-size:13px;font-weight:600;color:var(--muted);cursor:pointer}
.seg button:hover,.range button:hover{color:var(--text)}
.seg button[aria-pressed="true"],.range button[aria-pressed="true"]{background:var(--ink);color:var(--ink-text)}
.btn{display:inline-block;padding:8px 18px;border-radius:var(--pill);border:1px solid var(--line);background:var(--surface);color:var(--text);text-decoration:none;font:inherit;font-size:14px;font-weight:600;line-height:1.4;cursor:pointer;transition:background .3s,border-color .3s,color .3s}
.btn:hover{border-color:var(--brand);color:var(--brand)}
.btn.primary{border-color:var(--ink);background:var(--ink);color:var(--ink-text);font-size:13px;text-transform:uppercase}
.btn.primary:hover{border-color:var(--ink-hover);background:var(--ink-hover);color:var(--ink-text)}
select.btn{padding-right:12px}

main{flex:1 0 auto;padding-top:32px;padding-bottom:56px;outline:0}
h1{font-size:30px;font-weight:800;line-height:1.2;letter-spacing:-.01em;margin:0 0 6px}
h2{font-size:19px;font-weight:700;line-height:1.3;margin:0}
.lead{margin:0 0 22px;color:var(--muted)}

.banner{display:flex;gap:14px;align-items:center;padding:20px 24px;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);margin-bottom:18px}
.banner .dot{width:16px;height:16px;border-radius:50%;flex:none}
.banner h1{font-size:22px;margin:0}
.banner p{margin:2px 0 0;color:var(--muted)}
.banner.ok{background:var(--ok-bg);border-color:transparent}.banner.ok .dot{background:var(--ok)}
.banner.perf{background:var(--perf-bg);border-color:transparent}.banner.perf .dot{background:var(--perf)}
.banner.part{background:var(--part-bg);border-color:transparent}.banner.part .dot{background:var(--part)}
.banner.major{background:var(--major-bg);border-color:transparent}.banner.major .dot{background:var(--major)}
.banner.maint{background:var(--maint-bg);border-color:transparent}.banner.maint .dot{background:var(--maint)}

.counters{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin-bottom:28px}
.counter{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px;box-shadow:var(--shadow)}
.counter b{display:block;font-size:30px;font-weight:800;line-height:1.1}
.counter span{color:var(--muted);font-size:13px;font-weight:500}
.counter i{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px}

.sec{margin:32px 0 12px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.sec>a{font-size:14px;font-weight:600;text-decoration:none}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;margin-bottom:16px}
.card>header{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid var(--line)}
.card>header .sub{color:var(--muted);font-size:13px}

.svc{padding:14px 20px;border-top:1px solid var(--line)}
.card>header+.svc{border-top:0}
.svc-h{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px}
.svc-n{font-weight:700}
.svc-d{color:var(--muted);font-size:13px}
.badge{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;white-space:nowrap}
.badge::before{content:"";width:9px;height:9px;border-radius:50%;background:currentColor}
.badge.s1{color:var(--ok)}.badge.s2{color:var(--perf)}.badge.s3{color:var(--part)}.badge.s4{color:var(--major)}.badge.s5{color:var(--muted)}.badge.s6{color:var(--maint)}

.bar{display:flex;gap:2px;height:32px;align-items:stretch;touch-action:manipulation}
.bar i{flex:1 1 0;min-width:2px;border-radius:3px;background:var(--ok)}
.bar i.l0{background:var(--ok)}
.bar i.l1{background:var(--none)}
.bar i.l2{background:var(--maint)}
.bar i.l3{background:var(--perf)}
.bar i.l4{background:var(--part)}
.bar i.l5{background:var(--major)}
.bar i.on{outline:2px solid var(--text);outline-offset:1px}
.bar-l{display:flex;justify-content:space-between;color:var(--muted);font-size:12px;margin-top:4px}

.tip{position:fixed;z-index:20;max-width:300px;background:var(--ink);color:var(--ink-text);padding:10px 12px;border-radius:12px;font-size:12.5px;line-height:1.4;pointer-events:none;box-shadow:0 6px 20px rgba(0,0,0,.25)}
.tip b{display:block;margin-bottom:2px}
.tip ul{margin:4px 0 0;padding-left:16px}

.inc{padding:16px 20px;border-top:1px solid var(--line)}
.card>header+.inc{border-top:0}
.inc-h{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 12px;align-items:baseline}
.inc-t{font-weight:700}
.inc-m{color:var(--muted);font-size:13px}
.inc-b{margin:6px 0 0;white-space:pre-line}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.chip{font-size:12px;border:1px solid var(--line);border-radius:var(--pill);padding:2px 10px;color:var(--muted)}
.pill{display:inline-block;font-size:12px;font-weight:700;padding:2px 10px;border-radius:var(--pill);background:var(--bg);border:1px solid var(--line)}
.pill.fixed{color:var(--ok)}
.pill.open{color:var(--major)}
.pill.maint{color:var(--maint)}
.empty{padding:20px;color:var(--muted)}
.more{display:block;margin:20px auto 0}
.err{background:var(--major-bg);border:1px solid transparent;border-radius:var(--radius);padding:16px 20px;margin-bottom:18px}
.err button{margin-left:8px}
.month{margin:28px 0 12px;font-size:15px;font-weight:700;color:var(--muted);text-transform:capitalize}

.foot{flex:none;background:var(--foot-bg);color:#fff;font-size:14px}
.foot::before{content:"";display:block;height:4px;background:var(--grad)}
.foot-in{display:flex;flex-wrap:wrap;align-items:center;gap:8px 24px;padding-top:22px;padding-bottom:22px}
.foot a{color:#fff;text-decoration:none;font-weight:500}
.foot a:hover{color:#faa052}
.foot :focus-visible{outline-color:#faa052}
.foot-in .muted{margin-left:auto;color:rgba(255,255,255,.7)}

@media (max-width:720px){
  body{font-size:15px}
  .wrap{padding-left:16px;padding-right:16px}
  main{padding-top:24px;padding-bottom:40px}
  .top-in{gap:10px 16px;padding-top:14px;padding-bottom:12px}
  .brand-logo{height:26px}
  .tabs{order:3;width:100%;margin-right:0;margin-left:-15px}
  h1{font-size:25px}
  .counters{grid-template-columns:repeat(2,1fr);gap:10px}
  .banner{padding:16px 18px}.banner h1{font-size:19px}
  .svc,.inc,.card>header{padding-left:16px;padding-right:16px}
  .svc-h{flex-direction:column;gap:2px}
  .bar{height:24px}
  .foot-in .muted{margin-left:0;width:100%}
}
@media (prefers-reduced-motion:no-preference){
  .bar i{transition:opacity .15s}.bar i:hover{opacity:.75}
  .tabs a::after{transition:transform .25s}
}
