:root{--bg: oklch(98.2% .008 80);--bg-soft: oklch(95.5% .012 78);--ink: oklch(20% .012 70);--ink-soft: oklch(38% .012 70);--ink-quiet: oklch(58% .014 72);--rule: oklch(86% .014 75);--rule-soft: oklch(92% .012 75);--accent: oklch(58% .13 42);--accent-ink: oklch(98% .008 80);--accent-soft: oklch(94% .03 45);--tag: oklch(48% .06 50);--crit: oklch(50% .16 28);--crit-soft: oklch(94% .03 28);--warn: oklch(52% .1 80);--warn-soft: oklch(94.5% .035 85);--card: oklch(99.4% .004 80);--serif: "Newsreader", "Iowan Old Style", Georgia, serif;--sans: "Inter Tight", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--mono: "JetBrains Mono", ui-monospace, Menlo, monospace}*{box-sizing:border-box}body{margin:0;font-family:var(--sans);font-size:16px;color:var(--ink);background:var(--bg);line-height:1.55;-webkit-font-smoothing:antialiased}.shell{max-width:680px;margin:0 auto;padding:40px 20px 80px}.shell-center{display:flex;min-height:70vh;align-items:center;justify-content:center;text-align:center}h1{font-family:var(--serif);font-weight:400;font-size:clamp(1.9rem,4.5vw,2.6rem);line-height:1.08;letter-spacing:-.02em;margin:0 0 10px}h2{font-family:var(--serif);font-weight:500;font-size:1.35rem;letter-spacing:-.01em;margin:32px 0 10px}.muted{color:var(--ink-quiet)}.small{font-size:.85rem}.lede{font-size:1.08rem;max-width:56ch}.eyebrow{font-family:var(--mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--tag);margin:0 0 14px}.stepper{display:flex;gap:6px;margin:22px 0 30px}.stepper span{flex:1;height:2px;background:var(--rule)}.stepper span.done{background:var(--accent)}.card{background:var(--card);border:1px solid var(--rule-soft);border-radius:14px;padding:22px;margin-bottom:16px;box-shadow:0 1px #00000008}label{display:block;font-weight:500;font-size:.82rem;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft);margin:18px 0 6px}label:first-child{margin-top:0}input,textarea,select{width:100%;padding:11px 14px;border:1px solid var(--rule);border-radius:10px;font-family:var(--sans);font-size:1rem;background:var(--card);color:inherit}input::placeholder,textarea::placeholder{color:var(--ink-quiet)}textarea{min-height:104px;resize:vertical;line-height:1.5}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--ink-soft);box-shadow:0 0 0 3px var(--rule-soft)}input[type=range]{padding:0;border:none;box-shadow:none;accent-color:var(--accent)}button{font-family:var(--sans);font-size:1rem;border:none;border-radius:999px;padding:12px 22px;cursor:pointer;font-weight:500;transition:transform .15s ease,background .2s ease,color .2s ease}button.primary{background:var(--ink);color:var(--bg);box-shadow:0 1px #0000000a}button.primary:hover:not(:disabled){transform:translateY(-1px);background:var(--accent);color:var(--accent-ink)}button.primary:disabled{background:var(--ink-quiet);cursor:default}button.ghost{background:transparent;color:var(--ink-soft);padding-left:12px;padding-right:12px}button.ghost:hover{color:var(--ink)}.actions{display:flex;justify-content:space-between;align-items:center;margin-top:26px;gap:12px}.actions a{color:var(--tag);font-weight:500;text-decoration-color:var(--rule);text-underline-offset:3px}.error{background:var(--crit-soft);color:var(--crit);border-radius:10px;padding:10px 14px;margin-top:14px;font-size:.9rem}.notice{background:var(--warn-soft);color:var(--warn);border-radius:10px;padding:10px 14px;margin-top:14px;font-size:.9rem}.chip{display:inline-block;padding:2px 10px;border-radius:999px;font-size:.72rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase;margin-left:8px;vertical-align:2px}.chip.core,.chip.hire{background:var(--accent-soft);color:var(--accent)}.chip.internal{background:var(--bg-soft);color:var(--tag)}.chip.ai{background:#dfedfc;color:#23588a}.chip.outsource{background:var(--warn-soft);color:var(--warn)}.chip.deferred{background:var(--bg-soft);color:var(--ink-quiet)}.list-row{display:flex;justify-content:space-between;gap:12px;padding:14px 0;border-bottom:1px solid var(--rule-soft)}.list-row:last-child{border-bottom:none;padding-bottom:2px}.list-row b{font-weight:600}.list-row>div:last-child b{font-family:var(--mono);font-weight:500;font-size:.95rem}.budget-bar{height:10px;border-radius:5px;background:var(--rule-soft);overflow:hidden;margin:12px 0 6px}.budget-bar .fill{height:100%;border-radius:5px;background:var(--accent)}.budget-bar .fill.over{background:var(--crit)}.timeline{list-style:none;padding:0;margin:0}.timeline li{display:flex;gap:14px;padding:12px 0;border-bottom:1px solid var(--rule-soft)}.timeline li:last-child{border-bottom:none}.timeline .month{min-width:48px;height:28px;border-radius:999px;background:var(--bg-soft);color:var(--tag);display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-weight:500;font-size:.78rem}.playbook{margin-top:6px}.playbook summary{cursor:pointer;font-size:.8rem;color:var(--tag);font-family:var(--mono);text-transform:uppercase;letter-spacing:.06em}.playbook summary::marker{color:var(--accent)}.playbook ul{margin:6px 0 2px;padding-left:18px}.timeline .playbook li{display:list-item;font-size:.86rem;color:var(--ink-quiet);padding:2px 0;border-bottom:none}.sourcelink{font-size:.78rem;margin-top:4px}.sourcelink a{color:var(--tag);text-decoration-color:var(--rule);text-underline-offset:2px}.spinner{width:26px;height:26px;border-radius:50%;border:2px solid var(--rule);border-top-color:var(--accent);animation:spin .9s linear infinite;margin:0 auto 14px}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.spinner{animation:none}}
