@import "https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,600;9..144,700&family=Space+Grotesk:wght@400;500;700&display=swap";:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#fbf3e8;--bg-accent:#f4c05b2e;--panel:#fffbf5e0;--panel-border:#4b32181f;--text:#2a1f17;--muted:#715e4c;--up:#f97316;--down:#0f766e;--core:#fff4d7;--ring:#2a1f1724;--primary:#2a1f17;--primary-contrast:#fff8ed;--shadow:0 28px 70px #412a1226}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;color:var(--text);background:radial-gradient(circle at top left, var(--bg-accent), transparent 28%), radial-gradient(circle at 85% 15%, #0f766e1f, transparent 24%), linear-gradient(135deg, #fcf8f0 0%, var(--bg) 48%, #f6ebda 100%);margin:0;font-family:Space Grotesk,Avenir Next,Helvetica Neue,sans-serif}body:before{content:"";pointer-events:none;background-image:linear-gradient(#2a1f1708 1px,#0000 1px),linear-gradient(90deg,#2a1f1708 1px,#0000 1px);background-size:48px 48px;position:fixed;inset:0;-webkit-mask-image:radial-gradient(circle,#000,#0000 80%);mask-image:radial-gradient(circle,#000,#0000 80%)}button,input{font:inherit}button{cursor:pointer}#root{min-height:100vh}.app-shell{width:min(1180px,100% - 2rem);margin:0 auto;padding:2rem 0 3rem}.panel{background:var(--panel);border:1px solid var(--panel-border);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:28px;animation:.7s both rise;position:relative;overflow:hidden}.panel:after{content:"";pointer-events:none;background:radial-gradient(circle,#f9731624,#0000 70%);border-radius:999px;width:180px;height:180px;position:absolute;inset:auto -40px -60px auto}.hero{grid-template-columns:1.7fr 1fr;align-items:end;gap:1.5rem;padding:2rem;display:grid}.hero h1,.stage h2{letter-spacing:-.04em;margin:0;font-family:Fraunces,Georgia,serif;font-weight:700}.hero h1{font-size:clamp(3rem,6vw,5.4rem);line-height:.95}.hero-text,.history-card p,.preset-card span,.formula{color:var(--muted);line-height:1.6}.eyebrow,.stat-label{text-transform:uppercase;letter-spacing:.16em;color:var(--muted);font-size:.75rem}.hero-stats,.metrics{gap:.85rem;display:grid}.hero-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.hero-stats div,.metric-card{background:#ffffffad;border:1px solid #2a1f1714;border-radius:18px;padding:1rem}.hero-stats strong,.metric-card strong{margin-top:.45rem;font-size:1rem;display:block}.workspace{grid-template-columns:1.35fr .95fr;gap:1.5rem;margin-top:1.5rem;display:grid}.stage,.sidebar{padding:1.5rem}.stage-header,.history-title{justify-content:space-between;align-items:center;gap:1rem;display:flex}.status-pill{color:#0b5a54;background:#0f766e1a;border-radius:999px;padding:.6rem .9rem;font-size:.9rem}.cake-figure{width:min(100%,420px);margin:1rem auto;display:block}.cake-ring{fill:#ffffff6b;stroke:var(--ring);stroke-width:2px}.cake-up{fill:var(--up)}.cake-down{fill:var(--down)}.cake-core{fill:var(--core);stroke:#2a1f171f;stroke-width:1.5px}.controls,.preset-list,.history-list{gap:.85rem;display:grid}.controls{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:1.25rem}button{color:var(--text);background:#ffffffb8;border:1px solid #2a1f171f;border-radius:16px;padding:.9rem 1rem;transition:transform .16s,background .16s,border-color .16s}button:hover{background:#fffffff2;border-color:#2a1f1733;transform:translateY(-1px)}button.primary{background:var(--primary);color:var(--primary-contrast)}.speed-control,.form-grid label,.formula-input{gap:.55rem;display:grid}.speed-control{margin-top:1rem}.sidebar{gap:1rem;display:grid}.sidebar-block{gap:.9rem;display:grid}.formula-preview{background:#ffffff9e;border:1px solid #2a1f1714;border-radius:16px;gap:.25rem;padding:.95rem 1rem;display:grid}.formula-preview strong{font-size:1rem}.formula-preview small{color:var(--muted)}.preset-card,.history-card{text-align:left;background:#ffffff9e;border-radius:18px;padding:1rem}.preset-card{gap:.35rem;display:grid}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;display:grid}input{background:#ffffffc7;border:1px solid #2a1f171f;border-radius:14px;width:100%;padding:.82rem .9rem}.error-text{color:#b42318;margin:0}.history-card small,.history-empty{color:var(--muted)}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media (width<=900px){.hero,.workspace,.hero-stats,.controls,.metrics{grid-template-columns:1fr}}
