*{box-sizing:border-box}:root{color:#fff7db;background:#05020b;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--gold: #e8ba55;--gold-bright: #fff1a5;--rose: #ff6fba;--ink: #07030d}html,body,#root{min-height:100%;margin:0}body{min-width:320px;overflow-x:hidden}button,input,a{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.scene{position:relative;min-height:100vh;min-height:100dvh;overflow-x:hidden;overflow-y:auto;isolation:isolate;background:radial-gradient(circle at 50% 0%,rgba(255,233,145,.24),transparent 32rem),radial-gradient(circle at 18% 72%,rgba(255,83,174,.18),transparent 20rem),linear-gradient(160deg,#05020b,#130416 54%,#05020b)}.scene:before,.scene:after{position:fixed;inset:0;pointer-events:none;content:""}.scene:before{z-index:-1;background:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:34px 34px;-webkit-mask-image:radial-gradient(circle at center,black,transparent 78%);mask-image:radial-gradient(circle at center,black,transparent 78%)}.scene:after{z-index:3;opacity:.2;background-image:repeating-linear-gradient(0deg,rgba(255,255,255,.12) 0,rgba(255,255,255,.12) 1px,transparent 1px,transparent 5px);mix-blend-mode:overlay}.matrix-canvas{position:fixed;inset:0;z-index:-3;opacity:.72}.ambient-orb{position:fixed;z-index:-2;width:18rem;height:18rem;border-radius:999px;filter:blur(20px);opacity:.42;animation:drift 16s ease-in-out infinite alternate}.orb-one{top:-5rem;right:-6rem;background:radial-gradient(circle,rgba(255,227,133,.82),rgba(255,111,186,.18),transparent 68%)}.orb-two{left:-7rem;bottom:5rem;background:radial-gradient(circle,rgba(255,111,186,.46),rgba(214,163,48,.2),transparent 70%);animation-delay:-4s}.phone-shell{position:relative;z-index:2;width:min(100%,31rem);min-height:100vh;min-height:100dvh;margin:0 auto;padding:max(1rem,env(safe-area-inset-top)) 1rem max(1.5rem,env(safe-area-inset-bottom));display:flex;flex-direction:column;justify-content:center;gap:.85rem}.topline{display:flex;align-items:center;justify-content:space-between;color:#fff6d1b8;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;text-shadow:0 0 16px rgba(255,211,103,.5)}.progress{height:.18rem;overflow:hidden;border-radius:999px;background:#ffffff1f;box-shadow:0 0 22px #ffcf532e}.progress span{display:block;width:100%;height:100%;transform-origin:left;border-radius:inherit;background:linear-gradient(90deg,#ff6fba,#fff1a5,#e8ba55);transition:transform .58s cubic-bezier(.16,1,.3,1);box-shadow:0 0 18px #ffda6fd1}.card{position:relative;overflow:hidden;min-height:31rem;padding:1.4rem;border:1px solid rgba(255,236,174,.28);border-radius:2rem;background:linear-gradient(145deg,#ffffff29,#ffffff09),#090312bd;box-shadow:0 1.5rem 5rem #00000094,inset 0 0 0 1px #ffffff0f,0 0 3.8rem #e2ad402e;-webkit-backdrop-filter:blur(18px) saturate(1.22);backdrop-filter:blur(18px) saturate(1.22)}.card:before{position:absolute;inset:-1px;z-index:-1;border-radius:inherit;content:"";background:radial-gradient(circle at 22% 18%,rgba(255,240,161,.5),transparent 18rem),radial-gradient(circle at 78% 82%,rgba(255,111,186,.26),transparent 16rem),linear-gradient(145deg,#fff0a15c,#ff6fba1f,#fff0a13d);opacity:.58;animation:aura 7.5s ease-in-out infinite}.card:after{position:absolute;inset:0;pointer-events:none;content:"";background:radial-gradient(circle at 20% 0%,rgba(255,244,188,.12),transparent 18rem),linear-gradient(115deg,transparent 0%,rgba(255,255,255,.065) 42%,transparent 48%);transform:translate(-34%);animation:sheen 12s ease-in-out infinite}.card.pulse{animation:pulse .52s ease}.stack{position:relative;z-index:2;min-height:27.8rem;display:flex;flex-direction:column;justify-content:center;gap:1rem}.eyebrow{margin:0;color:var(--gold-bright);font-size:.74rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;text-shadow:0 0 20px rgba(255,229,136,.72)}h1{max-width:12ch;margin:0;color:#fff8dc;font-size:clamp(2.2rem,12vw,4rem);line-height:.88;letter-spacing:-.08em;text-wrap:balance;text-shadow:0 0 1.8rem rgba(255,229,137,.34),0 0 .2rem rgba(255,255,255,.4)}.copy,.letter-copy p,.notice,.soft-end{color:#fff7ddc7;font-size:1rem;line-height:1.68}.copy{margin:0}.choices{display:grid;grid-template-columns:1fr;gap:.75rem;margin-top:.25rem}.action{position:relative;display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:3.45rem;padding:.9rem 1rem;border:1px solid rgba(255,235,164,.28);border-radius:1.15rem;color:#fff6cc;cursor:pointer;text-decoration:none;background:linear-gradient(135deg,#ffffff24,#ffffff09),#ffffff0b;box-shadow:inset 0 0 0 1px #ffffff0d,0 .8rem 2rem #00000047;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease}.action:active{transform:scale(.975)}.action:focus-visible,.answer-input:focus-visible{outline:2px solid rgba(255,244,177,.92);outline-offset:3px}.action.primary,.action.hot{border-color:#ffed9eb8;color:#16080b;font-weight:900;background:radial-gradient(circle at 50% 0%,rgba(255,255,255,.74),transparent 52%),linear-gradient(135deg,#fff0a3,#e7b243 52%,#ff83c2);box-shadow:0 0 1.8rem #ffcf576b,0 1rem 2.4rem #00000057}.action.hot{animation:bait 2.4s ease-in-out infinite}.action.muted{opacity:.48;filter:saturate(.64)}.answer-input{width:100%;min-height:4rem;border:1px solid rgba(255,235,164,.38);border-radius:1.2rem;outline:none;color:#fff9dd;background:#05020a94;padding:0 1.05rem;font-size:1.1rem;letter-spacing:.04em;box-shadow:inset 0 0 2rem #ffd56314,0 0 #ffeea800;transition:border-color .18s ease,box-shadow .18s ease}.answer-input:focus{border-color:#fff2b1e0;box-shadow:inset 0 0 2rem #ffd5631f,0 0 1.6rem #ffd5633d}.answer-input::placeholder{color:#fff7dd5c}.after{animation:rise .56s cubic-bezier(.16,1,.3,1)}.notice{position:relative;z-index:2;margin:1rem 0 0;padding:.85rem 1rem;border:1px solid rgba(255,237,169,.18);border-radius:1rem;color:#fff4c4;background:#ffffff12;box-shadow:inset 0 0 1.4rem #ffda6f14}.inline-response{margin:0;padding:.85rem 1rem;border:1px solid rgba(255,237,169,.2);border-radius:1rem;color:#fff4c4;background:#ffffff12;box-shadow:inset 0 0 1.4rem #ffda6f14;line-height:1.55;overflow-wrap:anywhere}.letter-stage h1{max-width:9ch}.letter-copy{display:grid;gap:.9rem}.letter-copy p{margin:0}.soft-end{text-align:center;color:#fff4c694}.read-more-box,.loading-panel{display:grid;gap:.85rem;margin-top:.6rem;padding:1rem;border:1px solid rgba(255,235,164,.2);border-radius:1.15rem;background:#05020a5c;box-shadow:inset 0 0 1.8rem #ffd56314}.read-more-title{margin:0;color:#fff4bd;font-size:1rem;font-weight:800;line-height:1.4}.loading-stage h1{max-width:10ch}.loading-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;color:#fff7ddb8;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase}.loading-row strong{color:#fff1a5;font-size:1.2rem;letter-spacing:0;text-shadow:0 0 18px rgba(255,218,111,.72)}.loading-bar{height:.42rem;overflow:hidden;border-radius:999px;background:#ffffff1a}.loading-bar span{display:block;width:100%;height:100%;transform-origin:left;border-radius:inherit;background:linear-gradient(90deg,#ff6fba,#fff1a5,#e8ba55);box-shadow:0 0 18px #ffda6fb8;transition:transform .9s linear}.sudoku-stage h1,.audio-stage h1,.love-input-stage h1{max-width:11ch}.sudoku-meta{display:flex;align-items:center;justify-content:space-between;color:#fff7ddb8;font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.sudoku-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:hidden;border:2px solid rgba(255,241,165,.7);border-radius:1.15rem;background:#05020a75;box-shadow:0 0 2rem #ffd5631f}.sudoku-grid input{width:100%;aspect-ratio:1;border:1px solid rgba(255,235,164,.18);outline:none;color:#fff6cc;background:#ffffff0b;text-align:center;font-size:clamp(1.4rem,9vw,2.2rem);font-weight:900}.sudoku-grid input:nth-child(2),.sudoku-grid input:nth-child(6),.sudoku-grid input:nth-child(10),.sudoku-grid input:nth-child(14){border-right-color:#fff1a5b8;border-right-width:2px}.sudoku-grid input:nth-child(n+5):nth-child(-n+8){border-bottom-color:#fff1a5b8;border-bottom-width:2px}.sudoku-grid input.given{color:#16080b;opacity:1;background:linear-gradient(135deg,#fff0a3,#e7b243);-webkit-text-fill-color:#16080b}.sudoku-grid input:focus-visible{position:relative;z-index:1;box-shadow:inset 0 0 0 3px #ff6fbaa3}.audio-player{width:100%;min-height:3.4rem;border:1px solid rgba(255,235,164,.22);border-radius:1.15rem;background:#ffffff14}.config-list{display:grid;gap:.7rem}.config-list code{display:block;padding:.85rem 1rem;border:1px solid rgba(255,235,164,.22);border-radius:.85rem;color:#fff4bd;background:#00000038;overflow-wrap:anywhere}.spark-burst{position:absolute;top:50%;left:50%;z-index:4;pointer-events:none}.spark-burst span{position:absolute;width:.2rem;height:.2rem;border-radius:999px;background:#fff4ad;box-shadow:0 0 .7rem #ffe986a8;animation:spark .9s ease-out both;animation-delay:var(--delay);transform:rotate(var(--angle)) translate(0)}@media (min-width: 720px){.phone-shell{padding-block:2rem}.card{min-height:42rem;border-radius:2.4rem}}@media (max-height: 680px){.phone-shell{justify-content:flex-start}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important;transition-duration:1ms!important}}@keyframes drift{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(1.3rem,-1.8rem,0) scale(1.08)}}@keyframes aura{0%,to{opacity:.46;filter:saturate(.9) brightness(.96)}50%{opacity:.72;filter:saturate(1.12) brightness(1.08)}}@keyframes sheen{0%,42%{transform:translate(-46%);opacity:0}55%{opacity:1}76%,to{transform:translate(46%);opacity:0}}@keyframes pulse{0%,to{transform:scale(1)}45%{transform:scale(1.004)}}@keyframes bait{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-.06rem) scale(1.006)}}@keyframes rise{0%{opacity:0;transform:translateY(.35rem)}to{opacity:1;transform:translateY(0)}}@keyframes spark{0%{opacity:0;transform:rotate(var(--angle)) translate(0) scale(.4)}28%{opacity:1}to{opacity:0;transform:rotate(var(--angle)) translate(var(--distance)) scale(0)}}
