:root{--ink:#1f2933;--muted:#52606d;--brand:#0b6e4f;--brand2:#e8f5ef;--line:#e4e7eb;--max:1040px}
*{box-sizing:border-box}body{margin:0;font:16px/1.6 system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--ink)}
a{color:var(--brand)}header,footer,main{max-width:var(--max);margin:0 auto;padding:0 20px}
header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px}
.logo{font-weight:800;font-size:20px;text-decoration:none;color:var(--ink)}.logo span{color:var(--brand)}
nav a{margin-left:18px;text-decoration:none;color:var(--muted)}nav a.btn{color:#fff}
.btn{display:inline-block;background:var(--brand);color:#fff;padding:10px 18px;border-radius:8px;text-decoration:none;font-weight:600;border:0;cursor:pointer;font-size:16px}
.btn.ghost{background:#fff;color:var(--brand);border:1px solid var(--brand)}
.hero{padding:48px 0 24px}.hero h1{font-size:42px;line-height:1.15;margin:0 0 14px;max-width:760px}
.hero p{font-size:19px;color:var(--muted);max-width:680px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin:28px 0}
.card{border:1px solid var(--line);border-radius:12px;padding:18px;background:#fff}
.card h3{margin-top:0}.price{font-size:34px;font-weight:800}.muted{color:var(--muted)}
.band{background:var(--brand2);border-radius:14px;padding:22px;margin:28px 0}
table{border-collapse:collapse;width:100%;margin:14px 0}th,td{border:1px solid var(--line);padding:8px;text-align:left;vertical-align:top}th{background:#f5f7fa}
input,select{font-size:16px;padding:8px;border:1px solid #cbd2d9;border-radius:6px}
.calc label{display:block;margin:10px 0 4px;font-weight:600}.result{font-size:22px;font-weight:700;margin-top:14px}
footer{border-top:1px solid var(--line);margin-top:48px;padding:22px 20px;color:var(--muted);font-size:14px}
footer a{color:var(--muted);margin-right:14px}.note{font-size:14px;color:var(--muted)}
.err{color:#b42318}.btn[disabled]{opacity:.55;cursor:not-allowed}
.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:12px;background:#fff;padding:8px;z-index:9}
a:focus-visible,.btn:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #f0b429;outline-offset:2px}
.card h2.h3{margin-top:0;font-size:1.17em}
.tw{overflow-x:auto;-webkit-overflow-scrolling:touch}.tw table{min-width:560px}
@media(max-width:640px){th,td{padding:6px;font-size:14px}header{flex-wrap:wrap}.hero h1{font-size:31px}nav a:not(.btn){display:none}}
.status-banner{margin:0;padding:10px 16px;font-size:15px;border-bottom:1px solid;display:flex;gap:12px;align-items:center;justify-content:center;flex-wrap:wrap}
.status-banner[hidden]{display:none}.status-banner.outage,.status-banner.degraded{background:#fff4e5;border-color:#f0b429;color:#5c3c00}
.status-banner.info{background:#eef4ff;border-color:#9db8f2;color:#1d3a75}.status-banner.resolved{background:#e7f6ec;border-color:#7cc39a;color:#0b4d2c}
.status-banner a{color:inherit;font-weight:600}.status-banner button{background:none;border:0;font-size:20px;line-height:1;cursor:pointer;color:inherit;padding:0 4px}
.st-overall{font-size:20px;font-weight:700;padding:14px 16px;border-radius:8px;margin:16px 0}.st-operational{background:#e7f6ec;color:#0b4d2c}
.st-degraded,.st-outage{background:#fff4e5;color:#5c3c00}.st-unknown{background:#f2f4f7;color:#344054}
.st-list{list-style:none;padding:0}.st-list li{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #eaecf0}
.st-dot{font-weight:600}.st-dot.operational{color:#0b6e4f}.st-dot.degraded,.st-dot.outage{color:#b54708}.st-dot.unknown{color:#667085}
