:root{color:#241217;--canvas:#f8f2f3;--atmosphere:#f3e4e8;--surface:#fffdfd;--surface-muted:#f3e7ea;--ink:#241217;--muted:#6e555b;--border:#dcc9cd;--border-strong:#c8a6ae;--brand-deep:#4a0e1d;--brand-deep-raised:#6e2a3b;--brand:#b71943;--brand-hover:#941434;--brand-soft:#f7dde4;--brand-selected:#fff0f4;--brand-border:#e8b9c6;--header-muted:#e4c5cd;--on-brand:#fff;--success:#2f6b4f;--success-soft:#e4efe8;--success-border:#b6d4c1;--warning:#855700;--warning-soft:#fff1cf;--warning-border:#d9b65f;--info:#405c72;--info-soft:#e8eff4;--info-border:#bdcedb;--danger:#b42318;--danger-soft:#fee4e2;--danger-border:#ef9b94;background:#f8f2f3;font-family:Inter,system-ui,Helvetica,Arial,sans-serif;font-size:15px;line-height:1.5}*{box-sizing:border-box}body{min-height:100vh;color:var(--ink);background:linear-gradient(180deg, var(--atmosphere) 0, var(--canvas) 280px);margin:0}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:2px solid var(--on-brand);outline-offset:2px;box-shadow:0 0 0 5px var(--brand)}.narrow-note{display:none}@media (width<=1179px){.narrow-note{background:var(--warning-soft);color:var(--warning);margin:0;padding:10px 20px;display:block}}.topbar,.page,.workspace{width:min(1360px,100% - 80px);margin:0 auto}@media (width<=800px){.topbar,.page,.workspace{width:min(1360px,100% - 32px)}}.site-header{color:var(--on-brand);background:var(--brand-deep);border-bottom:1px solid var(--brand-deep-raised)}.topbar{align-items:center;gap:28px;min-height:72px;display:flex}.brand{color:var(--on-brand);align-items:center;gap:10px;font-weight:650;text-decoration:none;display:flex}.brand:hover{text-decoration:none}.mark{background:var(--brand);width:34px;height:34px;color:var(--on-brand);border-radius:10px;place-items:center;font-weight:700;display:grid;box-shadow:inset 0 0 0 1px #ffffff2e}.nav{flex:1;gap:22px;display:flex}.nav a{min-height:40px;color:var(--header-muted);border-radius:10px;align-items:center;padding:8px 12px;font-weight:650;text-decoration:none;display:inline-flex}.nav a:hover{color:var(--on-brand);background:#ffffff14}.nav a.active,.nav a[aria-current=page]{color:var(--on-brand);background:var(--brand)}.site-header.public .nav{justify-content:flex-end}.account{color:var(--header-muted);align-items:center;gap:14px;display:flex;position:relative}.account summary{cursor:pointer;border-radius:10px;align-items:center;min-height:40px;padding:8px 10px;display:inline-flex}.account summary:hover{color:var(--on-brand);background:#ffffff14}.account-menu{z-index:20;background:var(--surface);border:1px solid var(--border-strong);border-radius:10px;min-width:180px;padding:12px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 12px 30px #2412172e}.account a,.account button{color:var(--ink);text-align:left;background:0 0;border:0;padding:0}.fixture-ribbon,.banner{border:1px solid #0000;border-radius:14px;align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.fixture-ribbon,.banner.review{background:var(--warning-soft);border-color:var(--warning-border)}.banner.info{background:var(--info-soft);border-color:var(--info-border)}.banner.soft{background:var(--brand-soft);border-color:var(--brand-border)}.banner.warning{background:var(--warning-soft);border-color:var(--warning-border)}.banner.danger{background:var(--danger-soft);border-color:var(--danger-border)}.banner.ordered{background:var(--success-soft);border-color:var(--success-border)}.banner strong{display:block}.banner p,.fixture-ribbon p{color:var(--muted);margin:3px 0 0}.mark-line{background:var(--warning);border-radius:999px;align-self:stretch;width:5px}.banner.info .mark-line{background:var(--info)}.banner.soft .mark-line{background:var(--brand)}.banner.warning .mark-line{background:var(--warning)}.banner.danger .mark-line{background:var(--danger)}.banner.ordered .mark-line{background:var(--success)}.page{padding:28px 0 72px}.page h1,.section-title{letter-spacing:0;margin:0;font-size:36px;line-height:1.2}.lede,.muted{color:var(--muted)}.row{justify-content:space-between;align-items:center;gap:16px;display:flex}.stack{gap:14px;display:grid}.cluster{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.button,.choice{border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;min-height:40px;padding:8px 16px;font-weight:650;text-decoration:none;display:inline-flex}.button.primary,.choice.primary{background:var(--brand);color:var(--on-brand)}.button.primary:hover{background:var(--brand-hover);text-decoration:none}.button.secondary,.choice.secondary{background:var(--surface);color:var(--brand);border-color:var(--border-strong)}.button.secondary:hover{background:var(--brand-selected);border-color:var(--brand);text-decoration:none}.button.ghost{color:var(--muted);background:0 0}.button.ghost:hover{color:var(--brand);background:var(--brand-soft);text-decoration:none}.button:disabled{opacity:.5;cursor:not-allowed}.badge{background:var(--surface-muted);min-height:26px;color:var(--muted);border:1px solid #0000;border-radius:999px;align-items:center;padding:3px 9px;font-size:13px;font-weight:650;display:inline-flex}.badge.saved,.badge.planning,.badge.extracted,.badge.archived{background:var(--surface-muted);color:var(--muted);border-color:var(--border)}.badge.sourcing{background:var(--info-soft);color:var(--info);border-color:var(--info-border)}.badge.ready{background:var(--brand-selected);color:var(--brand);border-color:var(--brand)}.badge.ordering,.badge.edited{background:var(--ink);color:var(--on-brand)}.badge.ordered,.badge.completed{background:var(--success-soft);color:var(--success);border-color:var(--success-border)}.badge.confirmed{background:var(--surface);color:var(--success);border-color:var(--success)}.badge.review,.badge.needs-review,.badge.stale{background:var(--warning-soft);color:var(--warning);border-color:var(--warning-border)}.badge.conflicting{background:var(--danger-soft);color:var(--danger);border-color:var(--danger-border)}.card,.panel{background:var(--surface);border:1px solid var(--border);border-radius:14px}.card{padding:18px 20px}.cards{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}@media (width<=980px){.cards{grid-template-columns:1fr}}.mode-card{appearance:none;min-height:280px;color:var(--ink);text-align:left;border-color:var(--border-strong);align-content:start;gap:12px;padding:24px;display:grid}.mode-card:hover{border-color:var(--brand)}.mode-card[aria-pressed=true]{background:var(--brand-selected);border-color:var(--brand);box-shadow:inset 0 4px 0 var(--brand)}.mode-card h2{margin:0;font-size:24px}.letter{border-radius:14px;place-items:center;width:56px;height:56px;font-size:24px;font-weight:700;display:grid}.letter.compare{background:var(--brand-soft);color:var(--brand)}.letter.plan{background:var(--warning-soft);color:var(--warning)}.letter.repeat{background:var(--success-soft);color:var(--success)}.filters{gap:8px;display:flex}.filters button[aria-pressed=true]{background:var(--brand);color:var(--on-brand);border-color:var(--brand)}.purchase-row,.need-row,.fact-row,.dest-row,.cycle-row{border-color:var(--border-strong);align-items:center;gap:14px;padding:14px 16px;display:grid}.purchase-row:hover{border-color:var(--brand);background:var(--brand-selected);text-decoration:none}.purchase-row{grid-template-columns:56px 1fr auto auto}.need-row{grid-template-columns:28px 1fr auto auto}.fact-row{grid-template-columns:minmax(140px,180px) 1fr auto auto auto}.dest-row{grid-template-columns:auto 1fr auto}.cycle-row{grid-template-columns:28px 1fr auto auto auto}@media (width<=900px){.purchase-row,.fact-row,.cycle-row,.dest-row{grid-template-columns:1fr}}.hero-continue{background:var(--brand-deep);color:var(--on-brand);border:1px solid var(--brand-deep-raised);border-radius:14px;justify-content:space-between;align-items:center;gap:24px;padding:24px;display:flex}.hero-continue p{color:var(--header-muted)}.field{gap:7px;display:grid}.field span,.eyebrow{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:12px;font-weight:700}input,select,textarea{border:1px solid var(--border-strong);background:var(--surface);border-radius:10px;width:100%;min-height:44px;padding:10px 12px}textarea{resize:vertical;min-height:96px}.form-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (width<=800px){.form-grid{grid-template-columns:1fr}}.workspace{grid-template-columns:240px 1fr;align-items:start;gap:28px;padding:24px 0 72px;display:grid}.workspace.wide{grid-template-columns:1fr}.side{gap:8px;display:grid;position:sticky;top:16px}.side a{color:var(--muted);border-radius:10px;padding:10px 12px;font-weight:650;text-decoration:none}.side a:hover{color:var(--brand);background:var(--brand-soft)}.side a.active{background:var(--brand);color:var(--on-brand);box-shadow:inset 4px 0 0 var(--brand-deep)}.purchase-head h1{margin:0;font-size:36px}.steps{flex-wrap:wrap;gap:8px;display:flex}.step{background:var(--surface-muted);color:var(--muted);border-radius:999px;align-items:center;gap:7px;padding:6px 10px;font-size:13px;font-weight:650;display:inline-flex}.step.current{background:var(--brand);color:var(--on-brand)}.step.done{background:var(--brand-soft);color:var(--brand)}.step i{background:var(--surface);width:22px;height:22px;color:var(--brand);border-radius:999px;place-items:center;font-style:normal;display:grid}.budget{background:var(--brand-deep);color:var(--on-brand);border:1px solid var(--brand-deep-raised);border-radius:14px;gap:8px;padding:18px;display:grid}.budget .eyebrow,.budget p{color:var(--header-muted)}.budget .amount{letter-spacing:0;font-size:28px;font-weight:700}.budget .track{background:var(--brand-deep-raised);border-radius:999px;height:7px;overflow:hidden}.budget .used{background:var(--brand);height:7px}.table-wrap{border:1px solid var(--border-strong);background:var(--surface);border-radius:14px;overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-top:1px solid var(--border);vertical-align:top;padding:12px 16px}thead th{background:var(--surface-muted);color:var(--muted);letter-spacing:.06em;border-top:0;font-size:12px}.selected-column{background:var(--brand-selected);box-shadow:inset 3px 0 0 var(--brand), inset -1px 0 0 var(--border-strong)}thead .selected-column{color:var(--brand);box-shadow:inset 3px 0 0 var(--brand), inset -1px 0 0 var(--border-strong), inset 0 4px 0 var(--brand)}.fail{color:var(--danger)}.pass{color:var(--success)}.unknown{color:var(--warning)}.shot{text-align:center;height:132px;color:var(--on-brand);letter-spacing:.06em;background:linear-gradient(160deg, var(--brand-soft), var(--brand) 70%, var(--brand-deep));border-radius:10px;place-items:center;padding:12px;font-size:12px;font-weight:700;display:grid}.candidate-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}@media (width<=1100px){.candidate-grid{grid-template-columns:1fr}}.candidate{border-color:var(--border-strong);border-top:4px solid #0000;align-content:start;gap:10px;display:grid}.candidate.selected{background:var(--brand-selected);border-color:var(--border-strong);border-top-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand)}.candidate.selected .button.secondary{background:var(--brand);color:var(--on-brand);border-color:var(--brand)}.proposal{border-color:var(--border-strong);align-content:start;gap:10px;min-height:280px;display:grid}.proposal.working{background:var(--brand-selected);box-shadow:inset 0 4px 0 var(--brand)}.extension{background:var(--canvas);border:1px solid var(--border-strong);border-radius:18px;width:min(420px,100%);margin:24px auto;overflow:hidden;box-shadow:0 12px 30px #24121724}.extension header{background:var(--brand-deep);color:var(--on-brand);align-items:center;gap:10px;padding:14px 16px;display:flex}.extension .body{gap:14px;padding:18px;display:grid}.check{align-items:flex-start;gap:10px;display:flex}.check input{width:20px;height:20px;margin-top:2px}.dialog-back{background:#24121761;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.dialog{background:var(--surface);border:1px solid var(--border-strong);border-radius:14px;gap:12px;width:min(480px,100%);padding:22px;display:grid}.error{color:var(--danger)}.skip{opacity:.62}.qty{border:1px solid var(--border-strong);background:var(--surface);border-radius:10px;align-items:center;gap:8px;padding:4px 8px;display:inline-flex}.qty button{width:28px;height:28px;color:var(--brand);background:0 0;border:0;font-weight:700}.two{grid-template-columns:1.4fr .8fr;align-items:start;gap:18px;display:grid}@media (width<=980px){.two,.workspace{grid-template-columns:1fr}}.legal{max-width:760px}.legal h1{font-size:36px}.footer-links{color:var(--muted);gap:16px;padding-bottom:40px;display:flex}
