:root{--jc-verified:#1a7f37;--jc-derived:#0969da;--jc-partial:#9a6700;--jc-suggested:#8250df;--jc-negative:#57606a;--jc-danger:#cf222e;--jc-bg:#faf9f7;--jc-surface:#ffffff;--jc-ink:#1f2328;--jc-ink-muted:#59636e;--jc-line:#d9d5cf;--jc-accent:#0b6e5f;--jc-accent-ink:#ffffff;--jc-sp-xs:4px;--jc-sp-sm:8px;--jc-sp-md:16px;--jc-sp-lg:24px;--jc-sp-xl:40px;--jc-radius-card:12px;--jc-radius-pill:999px;--jc-font:"Avenir Next","Segoe UI Variable",Seravek,Corbel,source-sans-pro,sans-serif}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--jc-bg);color:var(--jc-ink);font-family:var(--jc-font);line-height:1.5}main{max-width:640px;margin:0 auto;padding:var(--jc-sp-xl) var(--jc-sp-md)}.brandbar{border-bottom:1px solid var(--jc-line);background:var(--jc-surface)}.brandbar>div{max-width:860px;margin:0 auto;padding:13px var(--jc-sp-md)}.brandbar a{font-size:1.05rem;font-weight:700;color:var(--jc-accent);text-decoration:none}.brandbar a,h1{letter-spacing:-.02em}h1{font-size:2rem;margin:0 0 var(--jc-sp-sm)}p.lede{color:var(--jc-ink-muted);margin:0 0 var(--jc-sp-lg)}.card{background:var(--jc-surface);border:1px solid var(--jc-line);border-radius:var(--jc-radius-card);padding:var(--jc-sp-lg);margin-bottom:var(--jc-sp-md)}.btn{display:inline-block;background:var(--jc-accent);color:var(--jc-accent-ink);border:none;border-radius:var(--jc-radius-pill);padding:12px 28px;font-size:1rem;font-family:inherit;font-weight:600;cursor:pointer;text-decoration:none;transition:background-color .15s ease,transform .1s ease}.btn:hover:not(:disabled){background:color-mix(in oklab,var(--jc-accent) 88%,black)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:default}.btn-secondary{background:transparent;color:var(--jc-accent);border:1.5px solid var(--jc-accent)}.btn-secondary:hover:not(:disabled){background:color-mix(in oklab,var(--jc-accent) 8%,transparent)}.chip{display:inline-block;border:1px solid var(--jc-line);background:var(--jc-surface);border-radius:var(--jc-radius-pill);padding:10px 15px;margin:0 var(--jc-sp-sm) var(--jc-sp-sm) 0;font-size:.9rem;cursor:pointer;color:var(--jc-ink);max-width:100%;overflow-wrap:break-word;transition:border-color .15s ease}.chip:hover,.chip[data-on=true]{border-color:var(--jc-accent)}.chip[data-on=true]{background:var(--jc-accent);color:var(--jc-accent-ink)}input[type=email],input[type=text],textarea{width:100%;padding:12px 14px;font-size:1rem;font-family:inherit;border:1px solid var(--jc-line);border-radius:8px;background:var(--jc-surface);color:var(--jc-ink)}:where(a,button,input,textarea,[tabindex]):focus-visible{outline:2px solid var(--jc-accent);outline-offset:2px}.door{display:flex;align-items:center;gap:var(--jc-sp-md);width:100%;text-align:left;background:var(--jc-surface);border:1px solid var(--jc-line);border-radius:var(--jc-radius-card);padding:var(--jc-sp-md) var(--jc-sp-lg);margin-bottom:var(--jc-sp-sm);font-family:inherit;font-size:1rem;cursor:pointer}.door:hover:not(:disabled){border-color:var(--jc-accent)}.door:disabled{cursor:default;opacity:.6}.door .door-title{font-weight:600}.door .door-sub{color:var(--jc-ink-muted);font-size:.85rem}.door .soon{margin-left:auto;font-size:.75rem;color:var(--jc-partial);border:1px solid var(--jc-partial);border-radius:var(--jc-radius-pill);padding:2px 10px;white-space:nowrap}.feed{list-style:none;padding:0;margin:0}.feed li{padding:var(--jc-sp-sm) 0;border-bottom:1px dashed var(--jc-line)}.feed li:last-child{border-bottom:none}.error{color:var(--jc-danger)}.mobile-hint{display:none}@media (max-width:640px){.mobile-hint{display:block}}.verified-seal{gap:8px;font-size:.85rem;color:var(--jc-verified);background:color-mix(in oklab,var(--jc-verified) 9%,var(--jc-surface));border:1px solid color-mix(in oklab,var(--jc-verified) 30%,transparent);padding:6px 14px;margin-bottom:var(--jc-sp-md)}.badge,.verified-seal{display:inline-flex;align-items:center;font-weight:600;border-radius:var(--jc-radius-pill)}.badge{gap:5px;font-size:.72rem;line-height:1;padding:3px 9px;border:1px solid transparent;white-space:nowrap}.badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;flex:none}.badge[data-cls=verified]{color:var(--jc-verified);border-color:color-mix(in oklab,var(--jc-verified) 32%,transparent);background:color-mix(in oklab,var(--jc-verified) 8%,var(--jc-surface))}.badge[data-cls=derived]{color:var(--jc-derived);border-color:color-mix(in oklab,var(--jc-derived) 32%,transparent);background:color-mix(in oklab,var(--jc-derived) 8%,var(--jc-surface))}.badge[data-cls=partial]{color:var(--jc-partial);border-color:color-mix(in oklab,var(--jc-partial) 32%,transparent);background:color-mix(in oklab,var(--jc-partial) 8%,var(--jc-surface))}.badge[data-cls=suggested]{color:var(--jc-suggested);border-color:color-mix(in oklab,var(--jc-suggested) 32%,transparent);background:color-mix(in oklab,var(--jc-suggested) 8%,var(--jc-surface))}.badge[data-cls=negative]{color:var(--jc-negative);border-color:color-mix(in oklab,var(--jc-negative) 32%,transparent);background:color-mix(in oklab,var(--jc-negative) 8%,var(--jc-surface))}.badge-legend{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;color:var(--jc-ink-muted);font-size:.8rem;margin:0 0 var(--jc-sp-md)}.cv-doc{padding:var(--jc-sp-lg) var(--jc-sp-lg) var(--jc-sp-md)}.cv-doc section+section{margin-top:var(--jc-sp-md)}.cv-doc h3{font-size:.95rem;margin:0 0 var(--jc-sp-xs);padding-bottom:4px;border-bottom:1px solid var(--jc-line)}.cv-line{display:flex;align-items:baseline;gap:var(--jc-sp-sm);padding:7px 0}.cv-line+.cv-line{border-top:1px dashed var(--jc-line)}.cv-line .badge{flex:none;position:relative;top:1px}.cv-line-text{flex:1 1 auto;min-width:0;overflow-wrap:break-word}.cv-fix{flex:none;background:none;border:none;padding:0;font:inherit;font-size:.8rem;color:var(--jc-accent);cursor:pointer;opacity:.7}.cv-fix:hover{opacity:1;text-decoration:underline}.deck-progress{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:var(--jc-sp-sm);margin-bottom:var(--jc-sp-sm)}@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}.btn:active:not(:disabled){transform:none}}@media (max-width:480px){h1{font-size:1.5rem}main{padding:var(--jc-sp-lg) var(--jc-sp-md)}}