@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Fraunces:opsz,wght@9..144,400;9..144,700;9..144,900&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--sand:#fff8ec;--sand2:#f6ead8;--ink:#152c35;--muted:#617079;--line:#dbcdbb;--pacific:#1e79b9;--deep:#113e58;--sun:#ffd45c;--white:#fffdfa;--display:Fraunces,Georgia,serif;--body:Manrope,system-ui,sans-serif}
body{background:var(--sand);color:var(--ink);font-family:var(--body)}header{background:var(--sand);border-color:var(--line)}h1,h2,h3{font-family:var(--display)}h1{font-weight:700;letter-spacing:-.04em}h2{letter-spacing:-.03em}a{color:var(--pacific)}.card,.panel,.tool{background:var(--white);border-color:var(--line);border-radius:20px}.hero{background:linear-gradient(145deg,#d8edf5,var(--sand2));border-radius:24px}.art{background:linear-gradient(145deg,#bfe4f4,#ffd45c);border-radius:22px}.poster{border-radius:15px}.band{background:#f6ead8;border-radius:20px}.eyebrow,.stepnum{font-family:'DM Mono',monospace;color:var(--pacific)}button,.button{font-family:var(--body);background:var(--deep);border-radius:10px}button.secondary{background:#e5edf0;color:var(--deep)}.tab{background:transparent;color:var(--muted)}.tab[aria-pressed=true]{background:var(--pacific);color:white}.flow-output{white-space:pre-wrap;overflow-wrap:anywhere;max-height:650px;overflow:auto}.flow-steps{counter-reset:flow}.flow-steps li{padding:7px 0}.flow-status{min-height:1.6em}.flow-links{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.flow-links a{padding:8px 0}.flow-field{min-width:0}input,textarea,select{max-width:100%}:focus-visible{outline:3px solid var(--pacific);outline-offset:3px}@media(max-width:650px){.hero h1{font-size:clamp(36px,10vw,47px)}nav{gap:13px}.shell{padding:18px}.formgrid{grid-template-columns:1fr}.flow-links{display:block}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}@media print{.no-print{display:none!important}.flow-output{max-height:none;overflow:visible}}
