:root{--bg:#0f1117;--panel:#161922;--panel2:#1d212c;--ink:#e6e8ee;--muted:#9aa3b2;--line:#272c39;--accent:#4f8cff;--accent2:#7c5cff;--green:#2ecc71;--red:#ff5c5c;--amber:#ffb020;--code:#0b0d13;--radius:12px}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--bg);color:var(--ink);font:16px/1.65 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.mono,code,kbd,pre{font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:50;gap:14px;padding:12px 22px;background:rgba(15,17,23,.85);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}.brand,.topbar{display:flex;align-items:center}.brand{font-weight:700;gap:9px}.brand .logo{width:26px;height:26px;border-radius:7px;background:linear-gradient(135deg,var(--accent),var(--accent2));display:grid;place-items:center;font-size:15px}.brand small{color:var(--muted);font-weight:500}.topbar .right{margin-left:auto;display:flex;align-items:center;gap:14px;color:var(--muted);font-size:14px}.btn{border:0;border-radius:8px;padding:7px 14px;font-weight:600;font-size:13px;cursor:pointer;display:inline-flex;align-items:center;gap:6px}.btn.primary{background:var(--accent);color:#04122e}.btn.run{background:var(--green);color:#06210f}.btn.check{background:var(--accent);color:#04122e}.btn.ghost{color:var(--muted)}.btn.ghost,.btn.hint{background:transparent;border:1px solid var(--line)}.btn.hint{color:var(--amber)}.btn:disabled{opacity:.5;cursor:not-allowed}.container{max-width:920px;margin:0 auto;padding:34px 22px 120px}.eyebrow{color:var(--accent);font-weight:600;letter-spacing:.04em;font-size:13px;text-transform:uppercase}h1{font-size:34px;line-height:1.2;margin:6px 0 4px}.lead{color:var(--muted);font-size:17px;margin:0 0 26px}h2{font-size:24px;margin:42px 0 12px;padding-top:12px;border-top:1px solid var(--line)}h3{font-size:18px;margin:26px 0 8px;color:#cdd3e0}h4{margin:4px 0 6px}ol,p,ul{margin:12px 0}ol,ul{padding-left:22px}li{margin:5px 0}strong{color:#fff}.ic{border:1px solid var(--line);border-radius:6px;font-size:.9em}.ic,kbd{background:var(--panel2);padding:1px 6px}kbd{border:solid var(--line);border-width:1px 1px 2px;border-radius:5px;font-size:.85em}.box{border:1px solid var(--line);border-left:3px solid var(--accent);background:var(--panel);border-radius:10px;padding:14px 16px;margin:18px 0}.box .t{font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:var(--accent);margin-bottom:6px}.box.note{border-left-color:var(--amber)}.box.note .t{color:var(--amber)}.box.warn{border-left-color:var(--red)}.box.warn .t{color:var(--red)}.box.setup{border-left-color:var(--green)}.box.setup .t{color:var(--green)}pre.code{background:var(--code);border:1px solid var(--line);border-radius:10px;padding:14px 16px;overflow:auto;font-size:13.5px;line-height:1.55;margin:14px 0;white-space:pre;color:#e9ecf3}.pr{color:#6f7891}.pr2{color:var(--green)}.tok-k{color:#ff8fb3}.tok-s{color:#9be08a}.tok-n{color:#ffd479}.tok-f{color:#7fc4ff}.tok-c{color:#6f7891;font-style:italic}.tok-o{color:#ff9d6b}table.op,table.sig{border-collapse:collapse;margin:14px 0;width:100%;font-size:14px}table.op td,table.sig td{border:1px solid var(--line);padding:7px 11px;vertical-align:top}table.sig td:first-child{white-space:nowrap;color:#ffd479;font-family:monospace}.shot{display:block;margin:14px 0;border:1px solid var(--line);border-radius:10px;max-width:300px;background:#fff}.cell{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;margin:16px 0;background:var(--panel)}.cell .head{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid var(--line);background:var(--panel2);font-size:13px;color:var(--muted)}.cell .head .dot{width:11px;height:11px;border-radius:50%;background:#3a4150}.cell .head .ttl{margin-left:4px;font-weight:600;color:#cdd3e0}.cell .head .lng{margin-left:auto;font-size:11px;letter-spacing:.1em;text-transform:uppercase}.cell .editor,.cell textarea{width:100%;border:0;outline:0;background:var(--code);color:#e9ecf3;padding:14px 16px;font-family:JetBrains Mono,ui-monospace,Consolas,monospace;font-size:14px;line-height:1.6;display:block;min-height:90px;-moz-tab-size:4;tab-size:4;resize:vertical}.toolbar{display:flex;align-items:center;gap:8px;padding:10px 12px;background:var(--panel2);border-top:1px solid var(--line);flex-wrap:wrap}.out{background:var(--code);font-family:monospace;font-size:13.5px;white-space:pre-wrap}.out.show{padding:12px 16px;border-top:1px solid var(--line)}.out .label{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.1em;margin-bottom:6px;font-family:sans-serif}.card{border:1px solid var(--line);border-radius:14px;background:var(--panel);padding:16px 18px;margin:14px 0;display:block}.card:hover{border-color:var(--accent);text-decoration:none}.row{display:flex;align-items:center;gap:12px}.muted{color:var(--muted)}.badge{font-size:11px;font-weight:700;padding:3px 10px;border-radius:999px;background:var(--panel2);border:1px solid var(--line)}.badge.free{color:var(--green)}.badge.locked{color:var(--muted)}.badge.easy{color:var(--green)}.badge.medium{color:var(--amber)}.badge.hard{color:var(--red)}.ex{border:1px solid var(--line);border-radius:14px;margin:20px 0;overflow:hidden;background:linear-gradient(180deg,var(--panel),var(--bg))}.exhead{display:flex;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid var(--line)}.exhead .no{font-family:monospace;color:var(--muted);font-size:13px}.exhead h3{margin:0;font-size:16px;color:#fff;flex:1 1}.exhead .state{font-size:18px}.ex .body{padding:10px 18px 18px}.reveal{display:none;padding:10px 14px;border:1px dashed var(--line);border-radius:10px;margin:10px 0;background:rgba(79,140,255,.05)}.reveal.show{display:block}.reveal .h{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--accent);margin-bottom:4px}.verdict{display:flex;align-items:center;gap:8px;font-weight:700;margin:0 0 8px}.verdict.ok{color:var(--green)}.verdict.fail{color:var(--red)}.case{font-size:13px;color:var(--muted);margin:3px 0}.case .s{font-weight:700}.case.p .s{color:var(--green)}.case.f .s{color:var(--red)}.case pre{margin:4px 0 0;background:#06080d;border:1px solid var(--line);border-radius:6px;padding:6px 9px;font-size:12px;white-space:pre-wrap}.paywall{border:1px solid var(--line);border-radius:16px;padding:30px;text-align:center;background:linear-gradient(135deg,rgba(79,140,255,.08),rgba(124,92,255,.08))}.input{background:var(--code);border:1px solid var(--line);border-radius:8px;color:var(--ink);padding:9px 11px;font-size:14px;width:100%;margin:6px 0}.plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:18px;gap:18px;margin:24px 0 8px;align-items:stretch}.plan{border:1px solid var(--line);border-radius:16px;background:var(--panel);padding:22px 20px;display:flex;flex-direction:column;position:relative}.plan.feat{border-color:var(--accent);background:linear-gradient(180deg,rgba(79,140,255,.1),var(--panel))}.plan .tag{position:absolute;top:-11px;left:20px;background:var(--accent);color:#04122e;font-size:11px;font-weight:800;letter-spacing:.06em;padding:3px 10px;border-radius:999px}.plan .pname,.plan .tag{text-transform:uppercase}.plan .pname{font-size:13px;font-weight:700;letter-spacing:.08em;color:var(--accent)}.plan.feat .pname{color:var(--accent2)}.plan .price{font-size:38px;font-weight:800;margin:10px 0 2px;letter-spacing:-.02em}.plan .price small{font-size:15px;font-weight:600;color:var(--muted)}.plan .once{font-size:12px;color:var(--muted);margin-bottom:14px}.plan .save{color:var(--green);font-weight:700;font-size:13px;margin-bottom:14px}.plan .meta{font-size:13px;color:var(--muted);margin:0 0 12px}.plan ul.feats{list-style:none;margin:6px 0 18px;padding:0;font-size:14px;flex:1 1}.plan ul.feats li{margin:7px 0;padding-left:22px;position:relative;color:#cdd3e0}.plan ul.feats li:before{content:"✓";position:absolute;left:0;color:var(--green);font-weight:800}.plan ul.feats li.no{color:var(--muted)}.plan ul.feats li.no:before{content:"–";color:var(--line)}.plan .cta{margin-top:auto}.plan .cta .btn{width:100%;justify-content:center;padding:11px 14px;font-size:14px}.plan .owned{width:100%;text-align:center;padding:11px;border:1px solid var(--line);border-radius:8px;color:var(--green);font-weight:700;font-size:14px}.btn.big{padding:11px 18px;font-size:15px}.btn.outline{background:transparent;color:var(--accent);border:1px solid var(--accent)}.faq{border-top:1px solid var(--line);margin-top:8px;padding-top:6px}.faq h4{margin:18px 0 4px;color:#fff;font-size:15px}.faq p{margin:0 0 6px;font-size:14px}.faq p,.trust{color:var(--muted)}.trust{display:flex;gap:18px;flex-wrap:wrap;margin:18px 0 4px;font-size:13px}.trust span{display:flex;align-items:center;gap:7px}.sitefooter{border-top:1px solid var(--line);margin-top:40px;padding:22px;color:var(--muted);font-size:13px}.sitefooter .inner{max-width:920px;margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px}.sitefooter a{color:var(--muted)}.sitefooter a:hover{color:var(--ink)}.sitefooter .sep{opacity:.4}.sitefooter .copy{flex:1 1;min-width:180px}