:root{--bg:#000;--text:#f5f5f7;--muted:#a1a1a6;--line:rgba(243,217,164,.14);--gold:#d9a35f;--gold-hi:#f3d9a4;--card:#111214;--font:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,"Helvetica Neue",Arial,"Hiragino Sans","Noto Sans JP",sans-serif;--mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:radial-gradient(1200px 600px at 50% -200px,rgba(217,163,95,.16),transparent 70%),#000;color:var(--text);font:16px/1.55 var(--font);-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}.w{max-width:1200px;margin:0 auto;padding:0 18px}
.skip{position:absolute;left:-999px;top:8px;background:var(--gold-hi);color:#000;padding:8px 14px;border-radius:8px;z-index:50}.skip:focus{left:8px}
/* header (matches privaku.com .ph) */
.ph{position:sticky;top:0;z-index:30;background:rgba(0,0,0,.82);backdrop-filter:saturate(1.4) blur(12px);-webkit-backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid rgba(243,217,164,.12)}
.phw{max-width:1200px;margin:0 auto;padding:8px 18px;display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px}
.ph .logo{display:flex;gap:8px;align-items:center;font-weight:700;font-size:19px;min-height:44px;margin-right:auto;color:#f5f5f7;letter-spacing:.02em}
.logo img{width:52px;height:52px;margin:-13px 0}
.devtag{display:inline-flex;align-items:center;height:22px;padding:0 9px;border:1px solid rgba(217,163,95,.6);border-radius:999px;color:var(--gold-hi);font-size:11px;font-weight:650;letter-spacing:.12em;text-transform:uppercase;margin-left:2px}
.pn{display:flex;gap:4px;align-items:center;font-size:15px;order:2;flex-wrap:wrap}
.pn a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 12px;border-radius:999px;color:#a1a1a6;white-space:nowrap}
.pn a:hover,.pn a[aria-current]{color:var(--gold-hi)}.pn a[aria-current]{background:rgba(243,217,164,.08)}
.pn a.ext{border:1px solid rgba(243,217,164,.22);color:var(--gold-hi)}
a:focus-visible{outline:2px solid var(--gold-hi);outline-offset:2px;border-radius:8px}
@media(max-width:900px){.phw{padding:8px 14px}.pn{width:100%;font-size:13.5px;display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.pn a{padding:0 4px;min-height:40px;border:1px solid rgba(243,217,164,.14);background:rgba(255,255,255,.03);color:#f5f5f7}.pn a.ext{color:var(--gold-hi)}}
/* hero */
.hero{text-align:center;padding:64px 0 40px}
.hero h1{margin:0;font-size:clamp(34px,6.4vw,72px);line-height:1.05;letter-spacing:-.035em}
.hero h1 b,.grad{font-weight:inherit;background:linear-gradient(90deg,var(--gold-hi),var(--gold));-webkit-background-clip:text;background-clip:text;color:transparent}
.hero p.lede{color:var(--muted);font-size:clamp(16px,2.2vw,19px);max-width:680px;margin:16px auto 20px}
.eyebrow{font-size:13px;font-weight:650;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin:0 0 12px}
.btn{display:inline-block;margin:6px;padding:12px 22px;border-radius:99px;background:var(--gold-hi);color:#000;font-weight:600}.btn.o{background:none;border:1px solid rgba(243,217,164,.4);color:var(--gold-hi)}
.prod-ic{width:88px;height:88px;border-radius:22%;margin:0 auto 18px;display:grid;place-items:center;background:linear-gradient(145deg,rgba(243,217,164,.18),rgba(156,107,47,.14));border:1px solid var(--line);overflow:hidden}
.prod-ic img{width:100%;height:100%;display:block}.prod-ic svg{width:44px;height:44px}
.sub{display:block;margin-top:12px;font-size:clamp(17px,2.4vw,22px);font-weight:600;letter-spacing:-.01em;color:var(--text)}
/* badges */
.bd{display:inline-block;font-size:11px;font-weight:700;border-radius:99px;padding:2px 9px;margin-bottom:10px;letter-spacing:.02em}
.live{background:var(--gold);color:#000}.beta{border:1px solid var(--gold);color:var(--gold-hi)}.soon{border:1px solid #666;color:#c7c7cc}
/* bento */
.bento{display:grid;gap:14px;grid-template-columns:1fr}
.tile{display:block;border-radius:28px;padding:26px;background:var(--card);border:1px solid rgba(255,255,255,.08);position:relative;overflow:hidden;transition:border-color .2s}
a.tile:hover{border-color:var(--gold)}
.tile h3{font-size:24px;margin:0 0 6px;letter-spacing:-.02em;line-height:1.15}.tile small{display:block;color:var(--muted);font-size:14.5px;line-height:1.5}
.tile .cta{color:var(--gold-hi);font-weight:600;display:block;margin-top:14px;font-size:15px}
.big{background:radial-gradient(500px 300px at 80% 100%,rgba(217,163,95,.33),transparent),#141210}.big h3{font-size:clamp(30px,3.6vw,44px)}.big small{max-width:420px;font-size:16px}
.big .chips{margin-top:18px}
.ic{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(145deg,rgba(243,217,164,.18),rgba(156,107,47,.14));border:1px solid var(--line);color:var(--gold-hi);margin-bottom:14px;overflow:hidden}
.ic img{width:100%;height:100%}.ic svg,.card .ic svg{width:22px;height:22px}
svg.i{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:0}.chip{font-size:12.5px;padding:4px 10px;border-radius:99px;background:rgba(255,255,255,.05);border:1px solid var(--line);color:#e8d5b5;font-family:var(--mono)}
@media(min-width:900px){.bento{grid-template-columns:repeat(4,1fr);grid-auto-rows:minmax(200px,auto)}.big{grid-column:span 2;grid-row:span 2}.wide{grid-column:span 2}.full{grid-column:1/-1}}
/* promise */
.promise{background:linear-gradient(135deg,var(--gold-hi),var(--gold));color:#000;border-radius:28px;padding:30px}.promise h2{margin:0 0 18px;font-size:clamp(24px,3vw,32px);letter-spacing:-.02em;line-height:1.2}
.pr{display:grid;gap:14px}.pr b{display:block;font-size:16px}.pr small{color:#2b2214;font-size:14.5px;display:block}
@media(min-width:700px){.pr{grid-template-columns:repeat(3,1fr)}}
/* content sections */
.sec{padding:44px 0}.sec h2{font-size:clamp(26px,3.6vw,38px);letter-spacing:-.03em;line-height:1.12;margin:0 0 10px}
.sec .lead{color:var(--muted);max-width:680px;margin:0 0 28px;font-size:17px}
.grid{display:grid;gap:14px}.g2{grid-template-columns:1fr}.g3{grid-template-columns:1fr}.g4{grid-template-columns:1fr}
@media(min-width:700px){.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1000px){.g4{grid-template-columns:repeat(4,1fr)}}
.card{background:var(--card);border:1px solid rgba(255,255,255,.08);border-radius:22px;padding:24px}
.card h3{margin:0 0 6px;font-size:18px;letter-spacing:-.01em}.card p{margin:0;color:var(--muted);font-size:15px}
.card p+p{margin-top:8px}
.steps{counter-reset:s;list-style:none;padding:0;margin:0;display:grid;gap:12px}
.steps li{counter-increment:s;position:relative;padding:18px 20px 18px 64px;background:var(--card);border:1px solid rgba(255,255,255,.08);border-radius:18px;color:var(--muted);font-size:15.5px}
.steps li b{color:var(--text)}
.steps li::before{content:counter(s);position:absolute;left:18px;top:16px;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--gold-hi),var(--gold));color:#000;font-weight:700;font-size:14px}
code{font-family:var(--mono);font-size:.9em;color:#e8d5b5;background:rgba(255,255,255,.06);padding:1px 6px;border-radius:6px;overflow-wrap:anywhere}
pre{margin:12px 0 0;padding:16px 18px;border:1px solid var(--line);border-radius:14px;background:#0b0b0d;color:#e8d5b5;font:13.5px/1.6 var(--mono);overflow:auto;white-space:pre}
pre code{background:none;padding:0;color:inherit}
.pre-label{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin:22px 0 0;font-weight:650}
.dl{display:flex;flex-wrap:wrap;justify-content:center;gap:4px;margin-top:6px}
.meta{margin:28px auto 0;display:grid;grid-template-columns:repeat(4,auto);gap:12px 34px;justify-content:center;font-size:14px;max-width:960px}
.meta div{text-align:left}.meta dt{font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin:0 0 4px}.meta dd{margin:0;color:var(--text)}
@media(max-width:800px){.meta{grid-template-columns:repeat(2,1fr);gap:16px 18px;justify-content:stretch;padding:0 4px}}
.flow{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;margin:8px 0 0}
.file{min-width:170px;text-align:center;padding:18px 18px;border-radius:18px;background:var(--card);border:1px solid rgba(255,255,255,.1);font-family:var(--mono);font-size:14px;color:#e8d5b5}
.file small{display:block;font-family:var(--font);color:var(--muted);font-size:12.5px;margin-top:4px}
.file.pvk{border-color:var(--gold);background:radial-gradient(200px 120px at 50% 120%,rgba(217,163,95,.28),transparent),#141210;color:var(--gold-hi)}
.arrow{color:var(--gold-hi);font-size:22px;text-align:center}.arrow small{display:block;font-size:12px;color:var(--muted)}
.example{background:#0b0b0d;border:1px solid var(--line);border-radius:18px;padding:20px 22px;max-width:760px}
.example p{margin:0 0 6px;color:#e8d5b5;font-size:16px}.example .tag{font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);font-weight:650;margin-bottom:10px;display:block}
.nodes{display:flex;justify-content:center;align-items:center;gap:0;flex-wrap:wrap;margin:6px 0 0}
.node{width:120px;text-align:center;padding:14px 8px;border-radius:18px;background:var(--card);border:1px solid rgba(255,255,255,.1);font-size:13.5px;color:var(--text)}
.node svg{width:26px;height:26px;color:var(--gold-hi);display:block;margin:0 auto 6px}
.link-line{width:46px;height:2px;background:repeating-linear-gradient(90deg,var(--gold) 0 6px,transparent 6px 11px)}
.nonet{margin:14px auto 0;text-align:center;color:var(--muted);font-size:14px}
.callout{border:1px solid rgba(217,163,95,.35);background:rgba(217,163,95,.06);border-radius:16px;padding:16px 18px;color:var(--muted);font-size:15px}
.callout a,.sec a.u,.card a{color:var(--gold-hi)}
.cross{display:grid;gap:14px}@media(min-width:700px){.cross{grid-template-columns:repeat(2,1fr)}}@media(min-width:1000px){.cross{grid-template-columns:repeat(4,1fr)}}
.cross a{display:block;padding:18px;border-radius:18px;background:rgba(255,255,255,.04);border:1px solid var(--line)}.cross a:hover{border-color:var(--gold)}
.cross b{display:block}.cross small{color:var(--muted);font-size:14px}
.cta-band{text-align:center;padding:40px 22px;border-radius:28px;border:1px solid var(--line);background:radial-gradient(600px 240px at 50% 0%,rgba(217,163,95,.14),transparent),#0b0a09}
.cta-band h2{margin:0 0 8px}.cta-band p{color:var(--muted);margin:0 0 14px}
/* footer (matches privaku.com home) */
footer{padding:44px 0 34px;margin-top:40px;text-align:center;color:var(--muted);font-size:14px;border-top:1px solid rgba(243,217,164,.08)}footer a{color:var(--gold-hi)}footer p{margin:8px 0}footer p a{display:inline-block;padding:4px 2px}
.mij{display:inline-flex;gap:7px;align-items:center;border:1px solid rgba(217,163,95,.4);border-radius:99px;padding:5px 14px;color:var(--gold-hi);font-size:13px;font-weight:600;line-height:1;white-space:nowrap}.mij i{width:11px;height:11px;min-width:11px;border-radius:50%;background:#bc002d;flex:none;display:inline-block}
.social{display:flex;flex-wrap:wrap;gap:10px 16px;justify-content:center;margin:14px auto 8px;font-size:14px}
@media(max-width:600px){.w{padding:0 14px}.hero{padding:36px 0 28px}.tile{padding:22px;border-radius:22px}.sec{padding:32px 0}.promise{padding:24px;border-radius:22px}.link-line{width:22px}.node{width:96px;font-size:12.5px}}
.upcoming{background:radial-gradient(600px 260px at 85% 120%,rgba(217,163,95,.30),transparent),#141210}.upcoming h3{font-size:clamp(28px,3.2vw,40px)}
.tile-pre{margin:18px 0 0;font-size:12.5px;padding:12px 14px;white-space:pre-wrap;overflow-wrap:anywhere;max-width:460px}
.ar{display:inline-block}
@media(max-width:600px){pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12.5px}.flow{flex-direction:column;gap:8px}.flow .file{width:100%;max-width:280px}.ar{transform:rotate(90deg)}}
.btnrow{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.btnrow .btn{margin:0}.btn.sm{padding:10px 18px;font-size:14.5px}
.llm{background:radial-gradient(420px 220px at 100% 0%,rgba(255,210,30,.10),transparent),var(--card)}.try{background:radial-gradient(420px 220px at 0% 100%,rgba(217,163,95,.22),transparent),#141210}
.card.dim{border-style:dashed;opacity:.85}a.card{display:block}a.card:hover{border-color:var(--gold)}
.cross{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))!important}
.pn .sm{display:none}
@media(max-width:900px){.pn{grid-template-columns:repeat(4,1fr);font-size:12.5px}.pn .lg{display:none}.pn .sm{display:inline}}
/* updates form: copied from privaku.com/join/ */
.join-hero{padding:48px 0 12px;text-align:center}.join-hero h1{margin:0 0 10px;font-size:clamp(28px,6vw,42px);letter-spacing:-.02em;line-height:1.15}.join-hero h1 span{color:var(--gold)}.join-hero .lead{margin:0 auto;max-width:520px;color:var(--muted);font-size:16px}
.join-wrap{max-width:520px;margin:0 auto;padding:8px 0 40px}
.glass{background:linear-gradient(180deg,rgba(243,217,164,.10),rgba(15,13,10,.92) 40%,#0a0908);border:1px solid rgba(217,163,95,.35);border-radius:22px;box-shadow:0 18px 50px rgba(0,0,0,.55),inset 0 1px 0 rgba(243,217,164,.18);padding:22px 18px 18px}
.apps-pick{display:flex;flex-direction:column;gap:10px;margin:0 0 16px;border:0;padding:0}.apps-pick legend{font-size:13px;font-weight:600;color:var(--gold-hi);margin:0 0 4px;padding:0}
.app-opt{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border-radius:14px;border:1px solid rgba(217,163,95,.22);background:rgba(0,0,0,.35);cursor:pointer}
.app-opt:has(input:checked){border-color:rgba(243,217,164,.55);background:rgba(217,163,95,.10)}.app-opt input{margin-top:3px;accent-color:#d9a35f;width:18px;height:18px;flex:none}
.app-opt strong{display:block;color:#f5f5f7;font-size:15px}.app-opt span{display:block;color:var(--muted);font-size:13px;margin-top:2px;line-height:1.4}
.talk-beta-field{display:flex;flex-direction:column;gap:6px;width:100%;margin:0 0 12px}.talk-beta-field label{font-size:13px;font-weight:600;color:var(--gold-hi)}
.talk-beta-field input{appearance:none;-webkit-appearance:none;border:1px solid rgba(217,163,95,.28);background:rgba(0,0,0,.45);color:#f5f5f7;border-radius:12px;padding:12px 14px;font-size:16px;min-height:48px;width:100%}
.talk-beta-field input:focus{outline:2px solid rgba(243,217,164,.7);outline-offset:2px}
.btn-gold{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:48px;border:0;cursor:pointer;font:700 16px var(--font);background:linear-gradient(135deg,#f3d9a4,#d9a35f 55%,#b07a3c);color:#0b0906;border-radius:999px;box-shadow:0 10px 40px rgba(217,163,95,.25),inset 0 1px 0 rgba(255,255,255,.5)}
.beta-status{margin:12px 0 0;font-size:14px;color:var(--muted)}.beta-status.ok{color:#8fdf9a}.beta-status.err{color:#f0a0a0}
.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.glass+.back,.join-wrap .note{display:block}.join-wrap .note{margin:14px 0 0;font-size:12.5px;color:var(--muted);line-height:1.5;text-align:center}
.back{display:inline-block;margin:18px 0 0;color:var(--gold);font-weight:600;font-size:14.5px}
.card a.btn{color:#000}.card a.btn.o{color:var(--gold-hi)}
