:root{--bg-deep: #0d0800;--bg-mid: #1a0f00;--bg-warm: #2a1500;--fire-glow: rgba(255, 120, 30, .22);--ember-glow: rgba(255, 80, 20, .12);--fg: #f5ede0;--fg-soft: #d4c4a8;--fg-dim: #8a7d68;--accent: #FF6B35;--accent-2: #FFB347;--accent-warm: #FFCC80;--accent-glow: rgba(255, 107, 53, .35);--warm-shadow: rgba(255, 179, 71, .25);--card: rgba(255, 240, 220, .04);--card-border: rgba(255, 240, 220, .1);--card-hover: rgba(255, 240, 220, .08);--selected: rgba(255, 107, 53, .14);--selected-border: rgba(255, 107, 53, .6);--font-ui: "Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%}html,body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{background:radial-gradient(ellipse 60% 50% at 50% 38%,var(--bg-warm),transparent 70%),radial-gradient(ellipse 100% 80% at 50% 100%,var(--bg-mid),transparent 65%),var(--bg-deep);color:var(--fg);font-family:var(--font-ui);font-weight:400;letter-spacing:-.005em;overflow-x:hidden;min-height:100dvh}body:before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(ellipse 80% 60% at 50% 38%,transparent 0%,rgba(0,0,0,.45) 95%),radial-gradient(circle at 50% 30%,var(--fire-glow),transparent 55%);z-index:0}button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}button:disabled{cursor:not-allowed;opacity:.55}main{position:relative;z-index:1}.landing{height:100dvh;max-height:100dvh;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;padding:2rem 1.5rem 5rem}.landing-vignette{position:absolute;inset:-10%;background:radial-gradient(circle at 50% 45%,var(--accent-glow),transparent 40%),radial-gradient(circle at 30% 80%,var(--ember-glow),transparent 50%);filter:blur(40px);pointer-events:none;z-index:0;opacity:.95;animation:vignette-drift 18s ease-in-out infinite alternate}.landing-glow{position:absolute;width:560px;height:560px;border-radius:50%;background:radial-gradient(circle,var(--warm-shadow),transparent 70%);filter:blur(70px);pointer-events:none;z-index:0;animation:warm-pulse 6s ease-in-out infinite}.landing-sunbeam{position:absolute;inset:-20%;pointer-events:none;z-index:0;background:conic-gradient(from 0deg,transparent 0deg,rgba(255,120,30,.1) 20deg,transparent 45deg,transparent 75deg,rgba(255,100,20,.07) 95deg,transparent 120deg,transparent 135deg,rgba(255,120,30,.09) 160deg,transparent 185deg,transparent 220deg,rgba(255,100,20,.06) 240deg,transparent 265deg,transparent 295deg,rgba(255,120,30,.08) 315deg,transparent 340deg,transparent 360deg);-webkit-mask:radial-gradient(circle at center,transparent 8%,rgba(0,0,0,.9) 35%,rgba(0,0,0,.5) 65%,transparent 90%);mask:radial-gradient(circle at center,transparent 8%,rgba(0,0,0,.9) 35%,rgba(0,0,0,.5) 65%,transparent 90%);filter:blur(12px);animation:sunbeam-rotate 70s linear infinite;will-change:transform;opacity:.85}@keyframes vignette-drift{0%{transform:translate(0) scale(1)}to{transform:translate(2%,-1%) scale(1.06)}}@keyframes warm-pulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}}@keyframes sunbeam-rotate{to{transform:rotate(360deg)}}.hero{display:flex;flex-direction:column;align-items:center;z-index:1}.hero-title-wrap{text-align:center;animation:hero-pop .9s cubic-bezier(.16,1,.3,1) backwards}.hero-title{display:flex;flex-direction:column;align-items:center;font-weight:900;font-size:clamp(4.5rem,14vw,10rem);letter-spacing:-.04em;line-height:.88;-webkit-user-select:none;user-select:none}.hero-title-line1{color:var(--fg);opacity:.92}.hero-title-line2{background:linear-gradient(135deg,#ff6b35,#ffb347,gold);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 0 40px rgba(255,107,53,.55))}.hero-sub{margin-top:1.5rem;color:var(--fg-soft);font-size:clamp(1rem,2.5vw,1.2rem);font-weight:400;line-height:1.6;text-align:center;opacity:.75;animation:hero-pop .9s cubic-bezier(.16,1,.3,1) .15s backwards}@keyframes hero-pop{0%{opacity:0;transform:translateY(20px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.scan-stage{width:100%;height:100dvh;max-height:100dvh;overflow:hidden;position:relative;z-index:1;display:flex;align-items:center;justify-content:center;animation:scan-stage-in .62s cubic-bezier(.16,1,.3,1)}.scan-stage-center{display:flex;flex-direction:column;align-items:center;gap:2.5rem;width:100%;max-width:680px;padding:2rem 1.5rem}.scan-panel{width:100%;display:flex;align-items:center;justify-content:center}@keyframes scan-stage-in{0%{opacity:0}to{opacity:1}}.scan-caption{margin:0;font-weight:800;font-size:clamp(1.3rem,3vw,2rem);letter-spacing:.22em;text-transform:uppercase;text-align:center;color:#fff;opacity:.75;pointer-events:none}.scan-subcaption{margin:.5rem 0 0;font-weight:700;font-size:clamp(.75rem,1.4vw,.95rem);letter-spacing:.3em;text-transform:uppercase;text-align:center;color:#fff;opacity:.35;pointer-events:none}.cta-block{position:absolute;bottom:3.5rem;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:1rem;z-index:3;animation:cta-pop .9s cubic-bezier(.16,1,.3,1) .4s backwards}@keyframes cta-pop{0%{opacity:0;transform:translate(-50%) translateY(20px) scale(.95)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}.cta{display:flex;align-items:center;gap:.75rem;padding:1.05rem 1.85rem;background:linear-gradient(180deg,#fff,#f0e8d8);color:#1a0d00;font-size:1.05rem;font-weight:600;letter-spacing:-.005em;border-radius:999px;box-shadow:0 22px 50px #0000008c,0 0 0 1px #ffffff1a,inset 0 1px #ffffffd9;transition:transform .14s cubic-bezier(.16,1,.3,1),box-shadow .14s ease;min-width:270px;justify-content:center}.cta:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 28px 60px #000000a6,0 0 0 1px var(--selected-border),0 0 30px var(--warm-shadow),inset 0 1px #ffffffd9}.cta:active:not(:disabled){transform:translateY(0)}.cta-spinner{width:20px;height:20px;border:2.5px solid #c8b898;border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.cta-start{background:linear-gradient(135deg,#ff6b35,#ff9a3c);color:#fff;box-shadow:0 22px 50px #ff6b3559,0 0 0 1px #ff963c8c,0 0 40px #ff6b3540,inset 0 1px #ffffff40}.cta-start:hover:not(:disabled){box-shadow:0 28px 60px #ff6b3580,0 0 0 1px #ffb347a6,0 0 50px #ff6b3559,inset 0 1px #ffffff40}.cta-start-fire{font-size:1.2rem;animation:fire-pulse 1.4s ease-in-out infinite}@keyframes fire-pulse{0%,to{transform:scale(1) rotate(-5deg)}50%{transform:scale(1.15) rotate(5deg)}}.cta-hold{display:inline-flex;align-items:center;gap:.7rem;padding:1.05rem 1.85rem;color:var(--fg-soft);font-size:1rem;font-weight:500}.cta-sub{font-size:.9rem;color:var(--fg-soft);text-align:center;max-width:360px;line-height:1.5;opacity:.7}.cta-error{font-size:.9rem;color:#ffb3b3}.probe-spinner{width:12px;height:12px;border:2px solid rgba(255,179,71,.25);border-top-color:var(--accent-warm);border-radius:50%;animation:spin .7s linear infinite;display:inline-block}.landing-disclaimer{position:fixed;bottom:.75rem;left:50%;transform:translate(-50%);z-index:3;font-size:.68rem;letter-spacing:.04em;opacity:.35;color:var(--fg-soft);white-space:nowrap}.terminal-shell{display:flex;flex-direction:column;align-items:center;gap:.65rem;pointer-events:auto;width:100%}.term{background:#0a0500d9;border:1px solid rgba(255,140,60,.18);border-radius:16px;padding:1.1rem 2rem 1.1rem 1.3rem;width:640px;max-width:100%;position:relative;box-shadow:0 10px 28px #0009,0 0 0 1px #0000004d,inset 0 1px #ff8c3c0d;animation:term-in .42s cubic-bezier(.16,1,.3,1)}@keyframes term-in{0%{opacity:0;transform:translateY(10px) scale(.92)}to{opacity:1;transform:translateY(0) scale(1)}}.term:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 0%,rgba(255,120,30,.06),transparent 70%);pointer-events:none;border-radius:inherit}.term-inner{display:flex;flex-direction:column;gap:.18rem;position:relative;margin-top:18px}.term-row{display:flex;align-items:center;gap:.7rem;font-family:JetBrains Mono,SF Mono,Menlo,Consolas,monospace;font-size:13px;line-height:1.55;color:#f0e0c8;min-height:20px}.term-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;box-shadow:0 0 6px currentColor;opacity:.65;transition:transform .2s ease,opacity .2s ease}.term-dot-pulse{opacity:1;animation:term-dot-pulse .8s ease-in-out infinite}@keyframes term-dot-pulse{0%,to{transform:scale(.9);opacity:.7}50%{transform:scale(1.25);opacity:1}}.term-text{flex:1;min-width:0;overflow-wrap:anywhere}.term-cursor{color:var(--accent-warm);animation:term-cursor-pulse 1.08s ease-in-out infinite;margin-left:2px}@keyframes term-cursor-pulse{0%,to{opacity:.35;transform:scale(.92)}50%{opacity:1;transform:scale(1.08)}}.term-phases{position:absolute;top:12px;left:14px;display:flex;gap:7px;z-index:2}.term-phase{width:7px;height:7px;border-radius:50%;transition:background .3s ease,box-shadow .3s ease}.term-phase-pending{background:#ffc8962e}.term-phase-active{background:#ffb347;box-shadow:0 0 6px #ffb347,0 0 12px #ffb34799;animation:term-phase-pulse 1.4s ease-in-out infinite}.term-phase-done{background:#ff6b35;box-shadow:0 0 4px #ff6b3566}@keyframes term-phase-pulse{0%,to{opacity:.55;transform:scale(1)}50%{opacity:1;transform:scale(1.15)}}.term-timer{position:absolute;top:10px;right:14px;font-family:JetBrains Mono,SF Mono,Menlo,Consolas,monospace;font-size:10.5px;color:#c8a07873;letter-spacing:.04em;font-variant-numeric:tabular-nums;z-index:2}.back-btn{position:fixed;top:1.25rem;left:1.25rem;z-index:50;display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1.05rem .6rem .85rem;border-radius:999px;background:#140a00b8;border:1px solid rgba(255,200,150,.18);color:var(--fg);font-size:.92rem;font-weight:500;letter-spacing:-.005em;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 6px 20px #00000059;transition:all .16s cubic-bezier(.16,1,.3,1)}.back-btn:hover{background:#281405d9;border-color:var(--accent-warm);color:#fff;transform:translate(-2px)}.back-btn svg{display:block}.output{min-height:100dvh;display:flex;flex-direction:column;align-items:center;padding:5rem 1.5rem 6rem;animation:fade-in .4s ease;position:relative}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.output-panel{width:100%;max-width:680px;display:flex;flex-direction:column;gap:1.25rem}.output-header{display:flex;align-items:flex-start;gap:1rem}.output-header-flame{font-size:2.5rem;line-height:1;filter:drop-shadow(0 0 20px rgba(255,107,53,.6));animation:fire-pulse 2s ease-in-out infinite;flex-shrink:0;margin-top:.2rem}.output-header h2{font-weight:700;font-size:clamp(1.5rem,4vw,2.2rem);letter-spacing:-.02em;line-height:1.2;margin-bottom:.35rem}.output-byline{color:var(--fg-soft);font-size:.88rem;opacity:.65}.output-error{margin-top:.5rem}.output-loading{display:flex;align-items:center;gap:.6rem;color:var(--fg-dim);font-size:.95rem}.output-body{font-family:var(--font-ui);font-size:.97rem;line-height:1.7;color:var(--fg-soft);padding:.25rem 0 1rem}.output-body-streaming{background:#ff6b3505}.output-md>*+*{margin-top:.85rem}.output-md h1,.output-md h2,.output-md h3{font-family:var(--font-ui);font-weight:700;color:var(--fg);letter-spacing:-.005em;line-height:1.25}.output-md h1{font-size:clamp(1.6rem,4vw,2.2rem);margin-top:0;margin-bottom:1rem;background:linear-gradient(135deg,#ff6b35,gold);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.output-md h2{font-size:1.1rem;margin-top:1.8rem;letter-spacing:.01em;text-transform:uppercase;color:var(--accent-2);opacity:.9;-webkit-text-fill-color:unset;background:none}.output-md h3{font-size:1.02rem;margin-top:1.2rem;color:var(--fg);-webkit-text-fill-color:unset;background:none}.output-md p{margin:.6rem 0}.output-md ul,.output-md ol{padding-left:1.4rem;margin:.6rem 0}.output-md li{margin-bottom:.35rem}.output-md strong{color:var(--fg);font-weight:700}.output-md em{color:var(--fg-soft);font-style:italic}.output-md hr{border:0;border-top:1px solid var(--card-border);margin:1.5rem 0}.output-md a{color:var(--accent-warm);text-decoration:underline;text-underline-offset:3px}.output-md blockquote{border-left:3px solid var(--accent);padding-left:.9rem;color:var(--fg-soft);opacity:.9}.output-caret{display:inline-block;margin-left:2px;color:var(--accent);animation:term-cursor-pulse 1.08s ease-in-out infinite}.output-actions{display:flex;gap:.6rem;flex-wrap:wrap;align-items:center;margin-top:.5rem}.output-cta{padding:.95rem 1.7rem;font-size:1rem;font-weight:600;border-radius:999px}.primary{background:linear-gradient(135deg,#ff6b35,#ff9a3c);color:#fff;box-shadow:0 10px 28px #ff6b3559,0 0 0 1px #ff963c73,inset 0 1px #fff3;transition:all .16s cubic-bezier(.16,1,.3,1)}.primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 14px 36px #ff6b3580,0 0 0 1px #ffb34799,inset 0 1px #fff3}.secondary{background:var(--card);border:1px solid var(--card-border);color:var(--fg-soft);transition:all .16s ease}.secondary:hover:not(:disabled){background:var(--card-hover);color:var(--fg)}.ghost-btn{padding:.75rem 1.1rem;color:var(--fg-dim);font-size:.9rem;font-weight:500;border-radius:999px;transition:color .14s ease,background .14s ease;background:transparent}.ghost-btn:hover{color:var(--fg);background:var(--card-hover)}.output-sauna-cta{margin-top:2rem;padding:1.5rem;border:1px solid rgba(255,107,53,.2);border-radius:16px;background:#ff6b350a;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.75rem}.output-sauna-cta p{color:var(--fg-soft);font-size:.95rem}.sauna-link{display:inline-flex;align-items:center;padding:.85rem 1.75rem;border-radius:999px;background:linear-gradient(135deg,#ff6b35,#ff9a3c);color:#fff;font-size:1rem;font-weight:700;letter-spacing:-.005em;text-decoration:none;box-shadow:0 10px 28px #ff6b3559,0 0 0 1px #ff963c73;transition:all .16s cubic-bezier(.16,1,.3,1)}.sauna-link:hover{transform:translateY(-2px);box-shadow:0 14px 36px #ff6b3580,0 0 0 1px #ffb34799;text-decoration:none;color:#fff}.output-made-with{font-size:.78rem;color:var(--fg-dim);opacity:.55}.output-made-with a{color:var(--accent-warm);text-decoration:none}.output-made-with a:hover{text-decoration:underline}@media(max-width:600px){.hero-title{font-size:clamp(4rem,18vw,6rem)}.output{padding:4.5rem 1rem 5rem}.output-actions{flex-direction:column;align-items:stretch}.output-cta,.ghost-btn{text-align:center;width:100%}.term{width:100%;padding:1rem 1.25rem 1rem 1rem}}
