:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#e9f1ff;--muted:#a7b5cb;--surface:#111b2e;--surface-2:#16233b;--line:#2b3c5a;--accent:#62d6a4;--danger:#ff9a9a;color:var(--ink);background:#09111f;font-family:Arial,Helvetica,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 100% 0,#17335a,#09111f 44rem);min-height:100vh;margin:0}a{color:inherit}button{font:inherit}.landing{max-width:48rem;margin:auto;padding:14vh 2rem}.eyebrow{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;font-size:.8rem;font-weight:700}h1{max-width:18ch;margin:.35rem 0 1.25rem;font-size:clamp(2.1rem,6vw,4.5rem);line-height:1.03}.lead,.muted{color:var(--muted);line-height:1.6}.lead{max-width:58ch;margin-bottom:2rem;font-size:1.15rem}.actions{flex-wrap:wrap;gap:.75rem;display:flex}.button,.secondary-button{cursor:pointer;border-radius:.5rem;padding:.75rem 1rem;font-weight:700;text-decoration:none;display:inline-block}.button{background:var(--accent);color:#06130d;border:0}.secondary-button{border:1px solid var(--line);color:var(--ink)}.portal-shell{min-height:100vh}.topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:1.5rem;padding:1rem max(1.5rem,50vw - 36rem);display:flex}.topbar nav{gap:1.25rem;margin-right:auto;display:flex}.topbar nav a{color:var(--muted);text-decoration:none}.brand{font-weight:800;text-decoration:none}.text-button{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:.25rem}.portal-content{max-width:72rem;margin:auto;padding:3.5rem 1.5rem}.status-grid,.device-list{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:1rem;margin:2rem 0;display:grid}.status-grid article,.state-card,.panel{background:color-mix(in srgb, var(--surface) 93%, transparent);border:1px solid var(--line);border-radius:.75rem;padding:1.25rem}.status-grid span{color:var(--muted);margin-bottom:.5rem;font-size:.85rem;display:block}.status-grid strong{overflow-wrap:anywhere;font-size:1.1rem}.panel{flex-direction:column;gap:.75rem;display:flex}.state-card{max-width:52rem}.danger-button{border:1px solid var(--danger);color:var(--danger);cursor:pointer;background:0 0;border-radius:.4rem;align-self:flex-start;padding:.45rem .65rem}.form-error{color:var(--danger)}@media (max-width:40rem){.topbar{flex-wrap:wrap;align-items:flex-start}.topbar nav{order:3;width:100%}}
