:root{color:#f7f4eb;background:#000;font-family:Bahnschrift,Segoe UI,Arial,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box}html{min-width:320px;min-height:100%}body{margin:0;min-height:100vh}button,input{font:inherit}button{cursor:pointer}#root{min-height:100vh}:root{--paper: #f7f4eb;--muted: rgba(247, 244, 235, .64);--green: #53f3a3;--amber: #ffc44d;--line: rgba(247, 244, 235, .18)}.story-shell{position:relative;display:grid;min-height:100vh;overflow:hidden;background:linear-gradient(rgba(83,243,163,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(65,214,255,.04) 1px,transparent 1px),#000;background-size:46px 46px,46px 46px,auto;color:var(--paper);isolation:isolate}.story-shell:before{position:absolute;inset:0;z-index:-1;content:"";background:linear-gradient(180deg,#00000057,#000000eb),repeating-linear-gradient(0deg,rgba(255,255,255,.035) 0,rgba(255,255,255,.035) 1px,transparent 1px,transparent 5px);pointer-events:none}.story-stage{display:grid;align-content:center;justify-items:center;gap:28px;width:min(940px,calc(100vw - 32px));min-height:100vh;margin:0 auto;padding:44px 0}.scene-2 .story-stage{width:min(1220px,calc(100vw - 32px));gap:24px}.scene-eyebrow{justify-self:start;color:var(--green);font-family:Consolas,Courier New,monospace;font-size:.78rem;letter-spacing:.22em;text-transform:uppercase}.terminal-copy{width:100%;min-height:240px;padding:clamp(22px,4vw,42px);border:1px solid var(--line);border-radius:8px;background:#0000009e;box-shadow:inset 0 0 0 1px #53f3a312,0 24px 80px #00000085}.terminal-copy.is-intro{min-height:330px}.typewriter{min-height:8.4em;margin:0;white-space:pre-line;color:var(--paper);font-family:Consolas,Courier New,monospace;font-size:clamp(1.04rem,1.7vw,1.38rem);line-height:1.72}.typewriter:first-line{color:#fff;font-family:Bahnschrift,Segoe UI,sans-serif;font-size:clamp(2rem,5vw,4.8rem);font-weight:800;line-height:1.05}.typewriter.is-form-copy:first-line{font-size:clamp(1.82rem,4vw,3.6rem)}.caret{display:inline-block;width:.65ch;height:1.1em;margin-left:3px;background:var(--green);transform:translateY(.16em);animation:blink .85s steps(2,start) infinite}@keyframes blink{50%{opacity:0}}.stage-button,.form-button{min-width:min(360px,100%);min-height:58px;border:0;border-radius:8px;background:linear-gradient(90deg,var(--amber),#fff 45%,var(--green));color:#050505;font-size:1.02rem;font-weight:800;letter-spacing:0;text-transform:uppercase;box-shadow:0 0 0 1px #fff3,0 18px 52px #53f3a32e;transition:opacity .22s ease,transform .22s ease,filter .22s ease}.stage-button:hover,.form-button:hover{filter:brightness(1.08);transform:translateY(-2px)}.stage-button.is-hidden{pointer-events:none;opacity:0;transform:translateY(12px)}.scene-image-wrap{width:min(1120px,100%);height:min(58vh,640px);min-height:360px;overflow:hidden;border:1px solid rgba(255,196,77,.42);border-radius:8px;background:#000000bd;box-shadow:0 28px 80px #ff4f7924}.scene-image{display:block;width:100%;height:100%;object-fit:contain}.card-form{display:grid;gap:16px;width:min(520px,100%);padding:20px;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:linear-gradient(180deg,#ffffff17,#ffffff09),#000000b8}.fake-card{display:grid;align-content:space-between;min-height:190px;padding:22px;border:1px solid rgba(255,255,255,.22);border-radius:8px;background:linear-gradient(135deg,#ff4f79e0,#ffc44dc7 46%,#41d6ffb8),#111;color:#050505;box-shadow:inset 0 0 42px #ffffff29}.chip{width:54px;height:40px;border-radius:8px;background:linear-gradient(90deg,rgba(0,0,0,.28) 1px,transparent 1px),linear-gradient(rgba(0,0,0,.22) 1px,transparent 1px),#fff6bcd1;background-size:13px 100%,100% 13px,auto}.card-number-preview{overflow-wrap:anywhere;font-family:Consolas,Courier New,monospace;font-size:clamp(1.18rem,4.6vw,1.88rem);font-weight:800;letter-spacing:0}.card-meta{display:flex;justify-content:space-between;gap:14px;font-family:Consolas,Courier New,monospace;font-weight:800}.card-form label{display:grid;gap:8px;color:var(--muted);font-size:.82rem;text-transform:uppercase}.card-form input{width:100%;min-height:52px;border:1px solid rgba(255,255,255,.2);border-radius:8px;background:#0009;color:#fff;outline:0;padding:0 14px;font-family:Consolas,Courier New,monospace;font-size:1.12rem}.card-form input:focus{border-color:var(--green);box-shadow:0 0 0 3px #53f3a329}.form-row{display:grid;grid-template-columns:minmax(0,1fr) 120px;gap:14px}.form-button{width:100%;min-width:0;margin-top:4px}.form-note{min-height:1.4em;margin:0;color:#fff0;font-size:.88rem;line-height:1.45;transition:color .18s ease}.form-note.is-visible{color:var(--muted)}.confetti-layer{position:fixed;inset:0;z-index:5;overflow:hidden;pointer-events:none}.confetti-piece{position:absolute;top:-24px;left:var(--left);width:var(--piece-width);height:var(--piece-height);border-radius:2px;background:var(--color);animation:confetti-fall var(--duration) cubic-bezier(.18,.76,.32,1) var(--delay) forwards;transform:rotate(var(--rotate))}@keyframes confetti-fall{0%{opacity:1;transform:translate3d(0,-20px,0) rotate(var(--rotate))}to{opacity:0;transform:translate3d(var(--drift),110vh,0) rotate(calc(var(--rotate) + 680deg))}}@media(max-width:720px){.story-stage{gap:20px;padding:28px 0}.scene-eyebrow{font-size:.68rem}.terminal-copy,.terminal-copy.is-intro{min-height:360px;padding:20px}.typewriter{font-size:.98rem;line-height:1.62}.stage-button,.form-button{min-height:54px;font-size:.92rem}.form-row{grid-template-columns:1fr}.fake-card{min-height:170px}.scene-image-wrap{width:100%;height:auto;min-height:0;aspect-ratio:16 / 10}}
