: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;--form-max:27rem;--gap-tight:calc(var(--unit) * 0.75);--gap-group:calc(var(--unit) * 2.5);--gap-block:calc(var(--unit) * 4);--gap-section:calc(var(--unit) * 7);--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;--accent:#4a5bd7;--accent-soft:rgba(74,91,215,0.12);--warm:#e0a04a;--radius:10px;--radius-sm:7px;--radius-lg:16px;--sh-1:0 1px 2px rgba(22,24,29,0.05);--sh-2:0 4px 14px rgba(22,24,29,0.07),0 1px 3px rgba(22,24,29,0.04);--sh-3:0 14px 36px rgba(22,24,29,0.1);--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(--accent);outline-offset:2px}.shell{min-height:100vh;display:flex;flex-direction:column;position:relative}.aurora{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}.aurora:before{content:"";position:absolute;top:-16vmax;left:-16vmax;width:40vmax;height:40vmax;border-radius:46% 54% 58% 42%/50% 44% 56% 50%;background:rgba(74,91,215,.34);filter:blur(72px);will-change:transform,border-radius,filter;animation:drift 48s var(--ease) infinite alternate,morph 27s ease-in-out infinite,tint 39s ease-in-out infinite}@keyframes morph{0%,to{border-radius:46% 54% 58% 42%/50% 44% 56% 50%}33%{border-radius:62% 38% 40% 60%/40% 62% 38% 60%}66%{border-radius:38% 62% 55% 45%/58% 40% 60% 42%}}@keyframes tint{0%,to{filter:blur(72px) hue-rotate(0deg)}35%{filter:blur(72px) hue-rotate(-48deg)}70%{filter:blur(72px) hue-rotate(46deg)}}@keyframes drift{0%{transform:translateZ(0) scale(1)}25%{transform:translate3d(70vw,12vh,0) scale(1.12)}50%{transform:translate3d(84vw,62vh,0) scale(.94)}75%{transform:translate3d(18vw,76vh,0) scale(1.08)}to{transform:translate3d(0,24vh,0) scale(1)}}@media (prefers-reduced-motion:reduce){.aurora:before{animation:none}}.aurora+.bar,.aurora~.foot,.aurora~main{position:relative;z-index:1}.shell:has(.aurora) .bar{background:transparent;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.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:flex-start;gap:calc(var(--unit) * 2)}.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-2);font-weight:500}.label,.mono{font-size:var(--step-1)}.mono{font-family:var(--mono)}.stack{gap:var(--gap-group)}.field,.stack{display:flex;flex-direction:column}.field{gap:var(--gap-tight)}.field .error,.field .hint{margin-top:0}.column{max-width:var(--form-max)}.column .lead{font-size:var(--step-0);margin-top:calc(var(--unit) * 1.5)}.form{max-width:var(--form-max);margin-top:var(--gap-block)}.form input[type=number]{max-width:10rem}.form .row{margin-top:var(--gap-tight);gap:calc(var(--unit) * 2)}.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-sm);cursor:pointer;font-weight:500;box-shadow:var(--sh-1);transition:background var(--duration) var(--ease),box-shadow var(--duration) var(--ease),transform var(--duration) var(--ease)}.btn:hover:not(:disabled){background:#24272e;box-shadow:var(--sh-2)}.btn:active:not(:disabled){transform:translateY(1px);box-shadow:none}.btn:disabled{opacity:.35;cursor:not-allowed;box-shadow:none}.btn-ghost{background:var(--bg);color:var(--ink);border-color:var(--line-strong)}.btn-ghost:hover:not(:disabled){background:var(--bg-2);border-color:var(--ink-3)}.btn-quiet{background:transparent;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(2,minmax(0,1fr));grid-gap:calc(var(--unit) * 1.5);gap:calc(var(--unit) * 1.5);max-width:46rem;margin-top:var(--gap-block)}@media (max-width:720px){.cards{grid-template-columns:1fr}}.card{display:flex;flex-direction:column;gap:var(--gap-tight);text-align:left;padding:calc(var(--unit) * 3.5);border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);cursor:pointer;text-decoration:none;color:inherit;box-shadow:var(--sh-1);transition:border-color var(--duration) var(--ease),box-shadow var(--duration) var(--ease),transform var(--duration) var(--ease);min-height:148px}.card:hover{border-color:var(--line-strong);box-shadow:var(--sh-2);transform:translateY(-2px)}.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;padding-top:var(--gap-group);font-size:var(--step-1);color:var(--ink-2);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.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);color:var(--ink-3)}.dropzone{margin-top:var(--gap-block);max-width:40rem;border:1px dashed var(--line-strong);border-radius:var(--radius);background:var(--bg);box-shadow:var(--sh-1);padding:calc(var(--unit) * 9) 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(--accent);background:var(--bg-2);box-shadow:var(--sh-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{margin-top:var(--gap-block);border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-2);padding:calc(var(--unit) * 2) calc(var(--unit) * 2.5);display:flex;flex-direction:column;gap:var(--unit);max-width:var(--measure);color:var(--ink-2);font-size:var(--step-1)}.swatches{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));grid-gap:calc(var(--unit) * 2);gap:calc(var(--unit) * 2);margin-top:calc(var(--unit) * 4)}.swatch-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);box-shadow:var(--sh-1);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=file],input[type=number],input[type=password],input[type=text],select,textarea{border:1px solid var(--line-strong);border-radius:var(--radius-sm);min-height:calc(var(--unit) * 5.5);padding:calc(var(--unit) * 1.25) calc(var(--unit) * 1.75);background:var(--bg);width:100%;transition:border-color var(--duration) var(--ease),box-shadow var(--duration) var(--ease)}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}input:hover:not(:disabled),select:hover:not(:disabled),textarea:hover:not(:disabled){border-color:var(--ink-3)}textarea{line-height:1.5;resize:vertical}input[type=color]{padding:2px;min-height:34px;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{box-shadow:var(--sh-1);background:var(--bg);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);background:var(--bg);box-shadow:var(--sh-1);overflow:hidden;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:has(input:checked),.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);background:var(--bg);box-shadow:var(--sh-1);font-size:var(--step-2);line-height:1.2;cursor:pointer;transition:border-color var(--duration) var(--ease),box-shadow var(--duration) var(--ease),transform var(--duration) var(--ease)}.choice:hover{border-color:var(--line-strong);box-shadow:var(--sh-2);transform:translateY(-2px)}.choice-main{padding:calc(var(--unit) * 3.5);border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);box-shadow:var(--sh-1);display:flex;flex-direction:column;gap:var(--gap-tight)}.choice-main h2{font-size:var(--step-2);letter-spacing:-.01em}.choice-main .row{margin-top:var(--gap-group);gap:calc(var(--unit) * 2)}.choice-main .hint{margin-top:0}.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{align-items:stretch;gap:var(--gap-tight);padding:calc(var(--unit) * 2);border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);box-shadow:var(--sh-1)}.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);scroll-margin-top:calc(var(--unit) * 2)}.deck-slide .slide{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--sh-2)}.account-bar{position:fixed;top:calc(var(--unit) * 2.5);left:0;right:0;z-index:3;padding:0 var(--gutter);pointer-events:none}.account{display:block;max-width:var(--page-max);margin:0 auto;text-align:right;font-size:var(--step-1);color:var(--ink-2);pointer-events:auto}.busy{display:flex;flex-direction:column}.busy-note{order:-1}.busy[data-busy=true]>:not(.busy-note){opacity:.45;pointer-events:none;transition:opacity var(--duration) var(--ease)}.busy-note{margin:var(--gap-block) 0 0;color:var(--ink-2);font-size:var(--step-1)}.busy-note:before{content:"";display:inline-block;width:7px;height:7px;margin-right:var(--unit);border-radius:50%;background:var(--ink);animation:pulse 1s var(--ease) infinite}@keyframes pulse{50%{opacity:.25}}@media (prefers-reduced-motion:reduce){.busy-note:before{animation:none}}.btn-ghost:active:not(:disabled),.btn:active:not(:disabled),.card:active{transform:scale(.99)}.btn,.btn-ghost,.card{transition:transform .16s var(--ease),border-color var(--duration) var(--ease),background var(--duration) var(--ease),color var(--duration) var(--ease)}.choice{display:flex;flex-direction:column;gap:var(--gap-tight);max-width:46rem;margin-top:var(--gap-block);padding:calc(var(--unit) * 3);border:1px solid var(--ink);border-radius:var(--radius)}.choice .row{margin-top:var(--gap-group);align-items:baseline;gap:calc(var(--unit) * 2)}.recut{margin-top:var(--gap-section)}.panel{margin-top:var(--gap-block);padding:calc(var(--unit) * 3);border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);box-shadow:var(--sh-1);display:flex;flex-direction:column;gap:var(--gap-group)}.panel .hint{margin-top:0}.palette{display:flex;gap:var(--unit);flex-wrap:wrap}.swatch{width:calc(var(--unit) * 5);height:calc(var(--unit) * 5);border-radius:var(--radius-sm);border:1px solid var(--line);box-shadow:var(--sh-1)}.section-head{margin-top:var(--gap-section);margin-bottom:var(--gap-group)}.card-row{gap:calc(var(--unit) * 2);padding:calc(var(--unit) * 1.5) calc(var(--unit) * 2);border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);box-shadow:var(--sh-1);transition:box-shadow var(--duration) var(--ease),border-color var(--duration) var(--ease)}.card-row:hover{border-color:var(--line-strong);box-shadow:var(--sh-2)}.card-row .btn-ghost{border:none;box-shadow:none;background:transparent;padding-inline:0;font-weight:500}.card-row .btn-ghost:hover{background:transparent;color:var(--accent)}.card-row .hint{margin-top:0;font-size:var(--step-1);color:var(--ink-3)}.footnote{margin-top:var(--gap-section);padding-top:var(--gap-group);border-top:1px solid var(--line)}.footnote a{color:var(--ink-2)}.footnote a:hover{color:var(--accent)}.gate{min-height:calc(100vh - 22rem);display:flex;align-items:center;justify-content:center}.gate-card{width:100%;max-width:var(--form-max);padding:calc(var(--unit) * 5) calc(var(--unit) * 4.5);border:1px solid var(--line);border-radius:var(--radius-lg);background:rgba(255,255,255,.86);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--sh-3)}.gate-card .form{margin-top:var(--gap-group)}.gate-card .lead{font-size:var(--step-0);margin-top:var(--gap-tight)}@media (max-width:640px){.gate{min-height:0}.gate-card{padding:calc(var(--unit) * 3)}}.plan-slide>.btn-quiet{align-self:flex-end;margin-top:var(--gap-tight)}.sheet-form,main>.actions:first-of-type,main>.stack,main>form.stack{margin-top:var(--gap-block)}.sheet-form{padding:calc(var(--unit) * 4);border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);box-shadow:var(--sh-1);max-width:40rem}.sheet-form>.form,.sheet-form>.stack{margin-top:0}@media (max-width:640px){.sheet-form{padding:calc(var(--unit) * 2.5)}}.thumb-form{position:relative;line-height:0}.thumb{width:calc(var(--unit) * 11);height:calc(var(--unit) * 8);object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--line)}.thumb,.thumb-drop{box-shadow:var(--sh-1)}.thumb-drop{position:absolute;top:calc(var(--unit) * -.75);right:calc(var(--unit) * -.75);min-width:calc(var(--unit) * 2.5);padding:0 calc(var(--unit) * .5);line-height:calc(var(--unit) * 2.5);border-radius:50%;background:var(--bg);border:1px solid var(--line-strong);color:var(--ink-2);cursor:pointer}.thumb-drop:hover{color:var(--ink);border-color:var(--ink-3)}.verdict{margin-top:var(--gap-group);max-width:46rem}.actions-sticky{position:-webkit-sticky;position:sticky;bottom:0;z-index:2;padding:calc(var(--unit) * .75) 0;background:linear-gradient(to top,var(--bg) 70%,transparent)}.plan-slide textarea{field-sizing:content;min-height:3lh;max-height:60vh}.plan-art{display:flex;align-items:center;gap:var(--unit)}.project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));grid-gap:calc(var(--unit) * 1.5);gap:calc(var(--unit) * 1.5);margin-top:calc(var(--unit) * 1.5)}.project-card{position:relative}.project-open{display:block;width:100%;padding:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);overflow:hidden;text-align:left;cursor:pointer;box-shadow:var(--sh-1);transition:box-shadow .15s ease,transform .15s ease,border-color .15s ease}.project-open:hover{box-shadow:var(--sh-2);transform:translateY(-1px);border-color:var(--line-strong)}.project-tile{display:flex;align-items:flex-end;aspect-ratio:4/3;padding:calc(var(--unit) * 1.25);background:var(--tile);color:var(--tile-ink)}.project-tile-name{font-size:1.7rem;font-weight:700;line-height:1.1;letter-spacing:-.01em;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.project-meta{display:flex;align-items:center;gap:calc(var(--unit) * .75);padding:calc(var(--unit) * .9) calc(var(--unit) * 1.1);border-top:1px solid var(--line)}.project-swatch{flex:none;width:calc(var(--unit) * 2.25);height:calc(var(--unit) * 2.25);border-radius:var(--radius-sm);background:var(--tile)}.project-lines{display:grid;min-width:0}.project-name,.project-when{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-name{font-weight:600;color:var(--ink)}.project-when{font-size:.85rem;color:var(--ink-2)}.project-drop-form{position:absolute;top:calc(var(--unit) * .6);right:calc(var(--unit) * .6);opacity:0;transition:opacity .15s ease}.project-card:hover .project-drop-form,.project-drop-form:focus-within{opacity:1}.project-drop{width:calc(var(--unit) * 2.5);height:calc(var(--unit) * 2.5);border-radius:50%;border:1px solid var(--line-strong);background:var(--bg);color:var(--ink-2);line-height:1;cursor:pointer}.project-drop:hover{color:var(--ink);border-color:var(--ink-3)}