:root{--bg: #f4f7f7;--card: #ffffff;--text: #0f2326;--muted: #5b7476;--accent: #128d85;--accent-text: #ffffff;--border: #d5e2e1;--error: #b3261e;color-scheme:light dark;font-family:IBM Plex Sans,system-ui,-apple-system,Segoe UI,sans-serif}@media(prefers-color-scheme:dark){:root{--bg: #0d1a1c;--card: #152a2c;--text: #eef5f4;--muted: #9db5b2;--accent: #5ec4b8;--accent-text: #0b1b1e;--border: #24403f;--error: #ff8a80}}body{margin:0;background:var(--bg);color:var(--text)}main{max-width:440px;margin:0 auto;padding:32px 16px}header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}h1{font-size:18px;margin:0}h2{font-size:20px;margin:0 0 12px}.card{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:20px}label{display:block;font-size:14px;margin:12px 0}input{display:block;width:100%;box-sizing:border-box;margin-top:6px;padding:10px;font-size:16px;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text)}p.code-shown{font-family:ui-monospace,Menlo,monospace;font-size:26px;letter-spacing:4px;text-align:center;margin:4px 0 14px}input.code{font-family:ui-monospace,Menlo,monospace;font-size:22px;letter-spacing:3px;text-align:center}button{font:inherit;padding:10px 16px;border-radius:6px;border:0;background:var(--accent);color:var(--accent-text);font-weight:600;cursor:pointer}button:disabled{opacity:.55;cursor:default}button.secondary{background:transparent;color:var(--text);border:1px solid var(--border)}button.link{background:none;color:var(--accent);padding:0;font-weight:500}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.muted{color:var(--muted);font-size:14px}.error{color:var(--error);font-size:14px}a{color:var(--accent)}h1,h2,h3,.brand{font-family:Space Grotesk,system-ui,sans-serif}h1 a.home{color:inherit;text-decoration:none}h3{font-size:15px;margin:18px 0 4px}.btn{display:inline-flex;flex-direction:column;align-items:center;gap:2px;padding:11px 20px;border-radius:999px;background:var(--accent);color:var(--accent-text);font-weight:600;text-decoration:none;border:1px solid var(--accent)}.btn small{font-weight:500;font-size:12px;opacity:.8}.btn.ghost{background:transparent;color:var(--text);border-color:var(--border)}.btn.disabled{background:transparent;color:var(--muted);border-color:var(--border)}.actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:8px 0}.landing{--bg: #0d1a1c;--card: #152a2c;--text: #eef5f4;--muted: #9db5b2;--accent: #5ec4b8;--accent-text: #0b1b1e;--border: #24403f;min-height:100vh;color:var(--text);background:radial-gradient(1100px 700px at 75% 8%,#1b3a3b 0%,transparent 60%),#0d1a1c}body:has(.landing){background:#0d1a1c}.landing>*{max-width:1120px;margin-left:auto;margin-right:auto;padding-left:24px;padding-right:24px;box-sizing:border-box}.landing a{color:var(--accent)}.landing nav.top{display:flex;justify-content:space-between;align-items:center;padding-top:22px;padding-bottom:22px}.landing .brand{color:var(--accent);letter-spacing:3px;text-transform:uppercase;font-size:13px;font-weight:600}.landing .links{display:flex;gap:20px;align-items:center;font-size:14px}.landing .links a{color:var(--text);text-decoration:none}.landing .links a.pill{border:1px solid var(--border);border-radius:999px;padding:7px 14px}.landing header.hero{display:block;margin:0 auto;padding-top:72px;padding-bottom:48px}.landing .eyebrow{color:var(--accent);letter-spacing:3px;text-transform:uppercase;font-size:12px;font-weight:600;margin:0 0 14px}.landing h1{font-size:clamp(40px,7vw,76px);line-height:1.04;letter-spacing:-1.5px;margin:0 0 22px}.landing h1 em{font-style:normal;color:var(--accent)}.landing h2{font-size:clamp(26px,3.6vw,40px);letter-spacing:-.5px;margin:0 0 28px;line-height:1.15}.landing .lead{font-size:clamp(17px,2vw,21px);color:#c6d6d4;max-width:640px;line-height:1.5;margin:0 0 30px}.landing .tags,.landing .chips{display:flex;flex-wrap:wrap;gap:10px;margin:26px 0 0;padding:0}.landing .chips{margin:0 0 28px}.landing .tag{border:1px solid var(--border);border-radius:999px;padding:7px 14px;font-size:14px;color:var(--text)}.landing .tag.on{background:var(--accent);border-color:var(--accent);color:var(--accent-text);font-weight:600}.landing .photo{margin-top:8px;margin-bottom:0}.landing .photo img{width:100%;height:auto;max-height:560px;object-fit:cover;display:block;border-radius:14px;border:1px solid var(--border);box-shadow:0 30px 80px #00000073}.landing .photo figcaption{font-size:12px;color:var(--muted);margin-top:8px;text-align:right}.landing section{padding-top:96px}.landing .grid{display:grid;gap:18px}.landing .grid.three{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.landing .tile{background:var(--card);border-radius:14px;padding:24px}.landing .tile h3{margin:0 0 8px;font-size:19px}.landing .tile p{margin:0;color:#c6d6d4;line-height:1.5;font-size:15px}.landing .tile .big{font-family:Space Grotesk,sans-serif;font-size:40px;font-weight:700;color:var(--accent);margin-bottom:6px;line-height:1}.landing .tile .btn{margin-top:14px}.landing .tile .hash{font-family:ui-monospace,Menlo,monospace;font-size:11px;color:var(--muted);word-break:break-all;margin-top:10px}.landing .split{display:grid;grid-template-columns:1.3fr 1fr;gap:48px;align-items:center}.landing .split p{color:#c6d6d4;line-height:1.6;font-size:17px}.landing .ticks{list-style:none;padding:24px;margin:0;background:var(--card);border-radius:14px}.landing .ticks li{padding:10px 0 10px 28px;position:relative;border-bottom:1px solid var(--border)}.landing .ticks li:last-child{border-bottom:0}.landing .ticks li:before{content:"";position:absolute;left:4px;top:17px;width:9px;height:9px;border-radius:50%;background:var(--accent)}.landing .muted{color:var(--muted)}.landing .note{margin-top:18px;color:#c6d6d4;font-size:14px}.landing .notes{color:#c6d6d4;line-height:1.7}.landing .after{margin-top:28px;color:#c6d6d4}.landing details{margin-top:12px;color:var(--muted)}.landing footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;padding-top:80px;padding-bottom:40px;color:var(--muted);font-size:14px}@media(max-width:760px){.landing .split{grid-template-columns:1fr;gap:24px}.landing>*{padding-left:16px;padding-right:16px}.landing nav.top .links a:not(.pill){display:none}.landing header.hero{padding-top:40px}.landing section{padding-top:64px}}
