:root{--ink:#16181d;--ink-2:#5b6068;--ink-3:#9aa0a8;--line:#e3e5e8;--line-strong:#c9ccd1;--bg:#ffffff;--bg-2:#f6f7f8;--focus:#16181d;--unit:8px;--gutter:24px;--page-max:1080px;--measure:62ch;--step-1:13px;--step-0:15px;--step-1-up:19px;--step-2:26px;--step-3:38px;--step-4:54px;--font:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Helvetica,Arial,sans-serif;--mono:ui-monospace,SFMono-Regular,Menlo,monospace;--radius:2px;--duration:220ms;--ease:cubic-bezier(0.2,0.7,0.3,1)}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{font-family:var(--font);font-size:var(--step-0);line-height:1.55;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.shell{min-height:100vh;display:flex;flex-direction:column}.bar{border-bottom:1px solid var(--line);position:-webkit-sticky;position:sticky;top:0;background:var(--bg);z-index:2}.bar-inner{max-width:var(--page-max);margin:0 auto;padding:calc(var(--unit) * 2) var(--gutter);display:flex;align-items:baseline;justify-content:space-between;gap:var(--gutter)}.wordmark{letter-spacing:.16em;text-transform:uppercase;font-weight:500}.step-label,.wordmark{font-size:var(--step-1)}.step-label{color:var(--ink-3);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.progress{height:2px;background:var(--line)}.progress-fill{height:100%;background:var(--ink);transition:width var(--duration) var(--ease)}main{flex:1 1;max-width:var(--page-max);width:100%;margin:0 auto;padding:calc(var(--unit) * 8) var(--gutter) calc(var(--unit) * 6)}.foot{position:-webkit-sticky;position:sticky;bottom:0;background:var(--bg);border-top:1px solid var(--line)}.foot-inner{max-width:var(--page-max);margin:0 auto;padding:calc(var(--unit) * 2) var(--gutter);display:flex;gap:var(--unit);align-items:center}h1{font-size:var(--step-3);line-height:1.1;letter-spacing:-.02em}.display,h1{font-weight:600}.display{font-size:var(--step-4);line-height:1.05;letter-spacing:-.03em}h2{font-size:var(--step-1-up);line-height:1.25;font-weight:500}.lead{font-size:var(--step-1-up);margin-top:calc(var(--unit) * 2)}.hint,.lead{color:var(--ink-2);max-width:var(--measure)}.hint{margin-top:var(--unit)}.label{letter-spacing:.09em;text-transform:uppercase;color:var(--ink-3);font-weight:500}.label,.mono{font-size:var(--step-1)}.mono{font-family:var(--mono)}.stack{display:flex;flex-direction:column;gap:calc(var(--unit) * 4)}.btn{border:1px solid var(--ink);background:var(--ink);color:var(--bg);padding:calc(var(--unit) * 1.5) calc(var(--unit) * 3);border-radius:var(--radius);cursor:pointer;transition:opacity var(--duration) var(--ease)}.btn:hover:not(:disabled){opacity:.82}.btn:disabled{opacity:.35;cursor:not-allowed}.btn-ghost{color:var(--ink);border-color:var(--line-strong)}.btn-ghost,.btn-quiet{background:transparent}.btn-quiet{border-color:transparent;color:var(--ink-2);padding-inline:var(--unit)}.btn-quiet:hover{color:var(--ink)}.spacer{flex:1 1}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:var(--unit);margin-top:calc(var(--unit) * 6)}.card,.cards{gap:var(--unit)}.card{display:flex;flex-direction:column;text-align:left;padding:calc(var(--unit) * 3);border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);cursor:pointer;text-decoration:none;color:inherit;transition:border-color var(--duration) var(--ease),transform var(--duration) var(--ease);min-height:168px}.card:hover{border-color:var(--ink)}.card[aria-disabled=true]{cursor:not-allowed;color:var(--ink-3)}.card[aria-disabled=true]:hover{border-color:var(--line)}.card-time{margin-top:auto;font-size:var(--step-1);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.badge,.card-time{color:var(--ink-3)}.badge{align-self:flex-start;font-size:var(--step-1);letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--line-strong);padding:1px calc(var(--unit) * .75)}.dropzone{margin-top:calc(var(--unit) * 5);border:1px dashed var(--line-strong);border-radius:var(--radius);padding:calc(var(--unit) * 10) calc(var(--unit) * 4);text-align:center;display:flex;flex-direction:column;gap:calc(var(--unit) * 2);align-items:center;transition:border-color var(--duration) var(--ease),background var(--duration) var(--ease)}.dropzone[data-over=true]{border-color:var(--ink);background:var(--bg-2)}.error{margin-top:calc(var(--unit) * 2);padding:var(--unit) calc(var(--unit) * 2);border-left:2px solid var(--ink);background:var(--bg-2);color:var(--ink)}.steps{margin-top:calc(var(--unit) * 5);display:flex;flex-direction:column;gap:var(--unit);max-width:var(--measure)}.step-row{display:flex;gap:calc(var(--unit) * 1.5);align-items:baseline;animation:rise var(--duration) var(--ease) both}.step-tick{color:var(--ink-3);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}@keyframes rise{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.sheet,.step-row{animation:none}}.notes{border-top:1px solid var(--line);padding-top:calc(var(--unit) * 2);display:flex;flex-direction:column;gap:var(--unit);max-width:var(--measure);color:var(--ink-2);font-size:var(--step-1)}.notes,.swatches{margin-top:calc(var(--unit) * 4)}.swatches{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));grid-gap:calc(var(--unit) * 2);gap:calc(var(--unit) * 2)}.swatch-card{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column}.swatch-chip{height:92px;border-bottom:1px solid var(--line)}.swatch-body{padding:calc(var(--unit) * 1.5);display:flex;flex-direction:column;gap:var(--unit)}input[type=color],input[type=email],input[type=number],input[type=password],input[type=text],select,textarea{border:1px solid var(--line-strong);border-radius:var(--radius);padding:calc(var(--unit) * .75) var(--unit);background:var(--bg);width:100%}input[type=color]{padding:2px;height:34px;cursor:pointer}.row{display:flex;gap:var(--unit);align-items:center}.confidence{font-size:var(--step-1);color:var(--ink-3)}.confidence[data-low=true]{color:var(--ink)}.font-cards{gap:calc(var(--unit) * 3);margin-top:calc(var(--unit) * 4)}.font-card,.font-cards{display:flex;flex-direction:column}.font-card{border:1px solid var(--line);border-radius:var(--radius);padding:calc(var(--unit) * 3);gap:calc(var(--unit) * 1.5)}.specimen{font-size:var(--step-2);line-height:1.2}.note{font-size:var(--step-1);color:var(--ink-2);border-left:2px solid var(--line-strong);padding-left:var(--unit)}.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:calc(var(--unit) * 2);gap:calc(var(--unit) * 2);margin-top:calc(var(--unit) * 4)}.tile{border:1px solid var(--line);border-radius:var(--radius);display:flex;flex-direction:column}.tile-art{height:132px;display:flex;align-items:center;justify-content:center;padding:var(--unit);background:var(--bg-2);border-bottom:1px solid var(--line)}.tile-art img{max-width:100%;max-height:100%;object-fit:contain}.tile-body{padding:calc(var(--unit) * 1.5);display:flex;flex-direction:column;gap:var(--unit)}.checks{display:flex;flex-wrap:wrap;gap:calc(var(--unit) * .5)}.check{display:inline-flex;align-items:center;gap:6px;font-size:var(--step-1);border:1px solid var(--line-strong);border-radius:var(--radius);padding:2px calc(var(--unit) * .75);cursor:pointer}.check[data-on=true]{border-color:var(--ink);background:var(--ink);color:var(--bg)}.check input{position:absolute;opacity:0;pointer-events:none}.lists{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:calc(var(--unit) * 4);gap:calc(var(--unit) * 4);margin-top:calc(var(--unit) * 4)}.list{flex-direction:column}.list,.list-item{display:flex;gap:var(--unit)}.list-item{align-items:center}.rules-list{display:flex;flex-direction:column;gap:calc(var(--unit) * 1.5);margin-top:calc(var(--unit) * 4);max-width:100%}.rule-row{grid-template-columns:1fr auto auto;grid-gap:var(--unit);align-items:center}.choices,.rule-row{display:grid;gap:var(--unit)}.choices{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:var(--unit);margin-top:calc(var(--unit) * 5)}.choice{min-height:168px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);font-size:var(--step-2);cursor:pointer;transition:border-color var(--duration) var(--ease)}.choice:hover{border-color:var(--ink)}.sheets{display:flex;flex-direction:column;gap:calc(var(--unit) * 4);margin-top:calc(var(--unit) * 5);align-items:center}.sheet{width:100%;max-width:620px;border:1px solid var(--line);background:var(--bg);animation:sheet-in .52s var(--ease) both}.sheet img{display:block;width:100%;height:auto}.sheet-num{font-size:var(--step-1);color:var(--ink-3);padding:var(--unit) calc(var(--unit) * 1.5);border-top:1px solid var(--line);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}@keyframes sheet-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.actions{display:flex;gap:var(--unit);flex-wrap:wrap;margin-top:calc(var(--unit) * 3)}@media (max-width:640px){:root{--gutter:16px;--step-3:30px;--step-4:36px}main{padding-top:calc(var(--unit) * 4)}.rule-row{grid-template-columns:1fr}}.plan-slide{gap:calc(var(--unit) * .5);padding:var(--unit);border:1px solid var(--line);border-radius:var(--radius)}.deck-preview,.plan-slide{display:flex;flex-direction:column}.deck-preview{gap:calc(var(--unit) * 1.5);margin-top:calc(var(--unit) * 2)}.deck-slide{display:flex;flex-direction:column;gap:calc(var(--unit) * .5)}.deck-slide .slide{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--sh-2)}.account{position:fixed;top:calc(var(--unit) * 2);right:var(--gutter);z-index:3;font-size:var(--step-1);color:var(--ink-3)}