:root{--bg: #f1f5fb;--card: #ffffff;--line: #dde5ef;--text: #1f2a3a;--muted: #6b7a8f;--ink: #18222f;--primary: #5b4bdb;--primary-2: #4636c4;--kick: #53fc18;--good: #1f9d61;--bad: #d64545;--warn: #c97a12;--radius: 18px;--shadow: 0 10px 30px -14px rgba(30, 40, 90, .28), 0 2px 6px rgba(30, 40, 90, .06);color-scheme:light}*{box-sizing:border-box}body{margin:0;color:var(--text);font:16px/1.55 Nunito,system-ui,-apple-system,Segoe UI,sans-serif;background:radial-gradient(1100px 480px at 90% -10%,#e4defd 0%,transparent 60%),radial-gradient(900px 480px at -10% 0%,#dcf6e9 0%,transparent 55%),var(--bg);min-height:100vh}a{color:var(--primary-2);font-weight:700}h1,h2,h3{font-family:"Baloo 2",Nunito,system-ui,sans-serif;margin:0;line-height:1.15;color:var(--ink)}h1{font-size:clamp(30px,4.4vw,48px);font-weight:800}h2{font-size:22px}h3{font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:6px}.muted{color:var(--muted)}.center{text-align:center}.page{max-width:1120px;margin:0 auto;padding:0 16px}.top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 0}.brand{display:flex;align-items:center;gap:8px;font:800 22px "Baloo 2",sans-serif;color:var(--ink);text-decoration:none}.logo{font-size:26px}.who{display:flex;align-items:center;gap:10px;font-weight:700}.who img{width:32px;height:32px;border-radius:50%}main{padding-bottom:32px}footer{padding:24px 0 32px;text-align:center;font-size:14px}.hero{text-align:center;padding:40px 0 28px}.hero .lead{max-width:620px;margin:12px auto 22px}.lead{font-size:18px;color:var(--muted);margin:8px 0 0}.intro{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px;padding:18px 0 22px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:12px 22px;border-radius:12px;border:0;background:var(--primary);color:#fff;font:800 16px Nunito,sans-serif;text-decoration:none;cursor:pointer;margin:4px}.btn:hover{background:var(--primary-2)}.btn.kick{background:var(--kick);color:#0b1a05}.btn.kick:hover{filter:brightness(.95)}.btn.ghost{background:transparent;color:var(--primary-2);box-shadow:inset 0 0 0 2px var(--line)}.btn.ghost:hover{background:#eef1fb}.btn.small{padding:7px 12px;font-size:14px;border-radius:10px;margin:0}button.link{background:none;border:0;color:var(--muted);font:inherit;font-weight:700;cursor:pointer;text-decoration:underline}.notice{padding:12px 16px;border-radius:12px;font-weight:700;margin:0 0 16px}.notice.bad{background:#fde8e8;color:var(--bad)}.notice.good{background:#e3f6ec;color:var(--good)}.notice.warn{background:#fff3df;color:var(--warn);margin:0}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}@media(max-width:380px){.grid{grid-template-columns:1fr}}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:10px;transition:border-color .2s}.card.on{border-color:#b9b0f3}.card p{margin:0;color:var(--muted)}.card-head{display:flex;align-items:center;gap:12px}.card-head>div{flex:1;min-width:0}.icon{font-size:34px;width:52px;height:52px;display:grid;place-items:center;background:#f2f0fd;border-radius:14px;flex:none}.tag{font-size:12px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.switch{flex:none;display:inline-flex;align-items:center;gap:8px;padding:4px 10px 4px 4px;border-radius:999px;border:0;background:#e6e9f0;cursor:pointer;font:800 13px Nunito,sans-serif;color:var(--muted);transition:background .2s}.switch .knob{width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000040;transition:transform .2s}.switch.on{background:var(--good);color:#fff;flex-direction:row-reverse;padding:4px 4px 4px 10px}.switch:disabled{opacity:.6;cursor:wait}.switch:focus-visible{outline:3px solid #b9b0f3;outline-offset:2px}.links{display:flex;flex-wrap:wrap;gap:8px;border-top:1px solid var(--line);padding-top:12px;margin-top:auto}.obs{width:100%;margin-top:6px}.obs-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 0;border-top:1px dashed var(--line);font-weight:700}.obs-row:first-of-type{border-top:0}.admin{margin-top:28px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:18px}.admin>p{margin:4px 0 10px}.bot-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid var(--line)}.ok{color:var(--good);font-weight:700;font-size:14px}.warn-text{color:var(--warn);font-weight:700;font-size:14px}.page.wide{max-width:none;padding:0 20px}.layout{display:grid;grid-template-columns:236px minmax(0,1fr);gap:24px;align-items:start}.side{position:sticky;top:12px;display:flex;flex-direction:column;gap:2px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:10px;box-shadow:var(--shadow)}.nav{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:12px;color:var(--ink);text-decoration:none;font-weight:800}.nav:hover{background:#f2f0fd}.nav.active{background:var(--primary);color:#fff}.nav.off:not(.active){color:var(--muted)}.nav-icon{font-size:20px;width:26px;text-align:center}.nav-name{flex:1}.nav-group{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);padding:12px 10px 4px}.dot{width:8px;height:8px;border-radius:50%;background:#cfd6e2;flex:none}.dot.on{background:var(--good)}.nav.active .dot{box-shadow:0 0 0 2px #fff}.content{min-width:0;display:flex;flex-direction:column;gap:16px}.content .intro{padding:4px 0 0}.app-view{display:flex;flex-direction:column;gap:16px}.app-head{display:flex;align-items:center;gap:14px}.app-title{flex:1;min-width:0}.app-title h1{font-size:clamp(26px,3vw,36px)}.app-title p{margin:2px 0 0}.off-card{align-items:flex-start}details.obs summary{cursor:pointer;list-style:none}details.obs summary::-webkit-details-marker{display:none}details.obs summary h3{display:inline;margin:0}details.obs summary:after{content:" ▾";color:var(--muted)}details.obs:not([open]) summary:after{content:" ▸"}.pages{display:flex;flex-wrap:wrap;gap:8px;padding-top:8px}.panel-host{display:block;min-height:320px}@media(max-width:860px){.layout{grid-template-columns:1fr}.side{position:static;flex-direction:row;overflow-x:auto;padding:6px}.nav-group{display:none}.nav{flex:none}.nav-name{white-space:nowrap}}
