@font-face{font-family:Manrope;font-style:normal;font-weight:500;font-display:block;src:url(/fonts/manrope-latin-500-normal-BYYD-dBL.woff2) format("woff2")}@font-face{font-family:Manrope;font-style:normal;font-weight:600;font-display:block;src:url(/fonts/manrope-latin-600-normal-4f0koTD-.woff2) format("woff2")}@font-face{font-family:Manrope;font-style:normal;font-weight:700;font-display:block;src:url(/fonts/manrope-latin-700-normal-BZp_XxE4.woff2) format("woff2")}:root{--navy: #07111c;--navy-2: #0f172a;--black: #05080d;--red: #e63947;--light: #f3f5f8;--text-light: #f7f9fc;--text-light-2: #bdc7d5;--text-dark: #111827;--text-dark-2: #475569;--star: #f5b82e;--ease-in: cubic-bezier(.22, 1, .36, 1);--ease-cam: cubic-bezier(.65, 0, .35, 1)}*{box-sizing:border-box}html,body,#root{margin:0;width:100%;height:100%;overflow:hidden;background:#000}body{font-family:Manrope,system-ui,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:geometricPrecision;cursor:none;-webkit-user-select:none;user-select:none}body.debug{cursor:default}.viewport{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#000}.viewport.capture{align-items:flex-start;justify-content:flex-start}.stage{position:relative;width:1920px;height:1080px;flex-shrink:0;overflow:hidden;background:var(--navy);transform-origin:center center}.capture .stage{transform-origin:top left}.scene{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;font-family:Manrope,sans-serif;animation:scene-in var(--fade-in) ease-out both,scene-out var(--fade-out) ease-in calc(var(--scene-dur) - var(--fade-out)) forwards}@keyframes scene-in{0%{opacity:0}}@keyframes scene-out{to{opacity:0}}.abs{position:absolute}.scene-body{position:absolute;top:0;right:0;bottom:0;left:0}.rise{animation:rise var(--dur, .8s) var(--ease-in) var(--d, 0ms) both}@keyframes rise{0%{opacity:0;transform:translateY(var(--rise, 36px))}}.fade{animation:fade var(--dur, .8s) var(--ease-in) var(--d, 0ms) both}@keyframes fade{0%{opacity:0}}.mask{display:inline-block;overflow:hidden;vertical-align:top;padding:.14em 0 .1em;margin:-.14em 0 -.1em}.mask>span{display:inline-block;animation:mask-up var(--dur, .9s) var(--ease-in) var(--d, 0ms) both}@keyframes mask-up{0%{transform:translateY(105%)}}.wipe-lr{animation:wipe-lr var(--dur, .9s) var(--ease-in) var(--d, 0ms) both}@keyframes wipe-lr{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}.wipe-center{animation:wipe-center var(--dur, .9s) var(--ease-in) var(--d, 0ms) both}@keyframes wipe-center{0%{clip-path:inset(0 50% 0 50%)}to{clip-path:inset(0 0 0 0)}}.bar{width:96px;height:10px;background:var(--red);border-radius:2px;flex-shrink:0;transform-origin:left center;animation:bar-grow .7s var(--ease-in) var(--d, 0ms) both}@keyframes bar-grow{0%{transform:scaleX(0)}}.star{display:inline-block;animation:star-in .6s var(--ease-in) var(--d, 0ms) both}@keyframes star-in{0%{opacity:0;transform:scale(.8)}}.badge{font-size:28px;font-weight:700;color:#fff;background:var(--red);border-radius:999px;white-space:nowrap}.num{font-variant-numeric:tabular-nums}.photo{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.photo-inner{position:absolute;top:0;right:0;bottom:0;left:0;will-change:transform}.photo-inner img{width:100%;height:100%;object-fit:cover;display:block}.photo-fallback-dark{background:radial-gradient(90% 70% at 70% 30%,#7896b938,#7896b900 60%),radial-gradient(60% 50% at 30% 90%,#c8d7e61a,#c8d7e600 70%),linear-gradient(160deg,#1d2c3e,#101c2b 55%,#07111c)}.photo-fallback-light{background:radial-gradient(80% 60% at 40% 30%,#ffffffb3,#fff0 70%),linear-gradient(170deg,#d9e0e8,#c3ccd7 60%,#aab5c3)}.photo-label{position:absolute;left:24px;bottom:24px;font:500 20px/1.3 ui-monospace,monospace;color:#fff;background:#0000008c;border:1px dashed rgba(255,255,255,.5);padding:8px 12px;border-radius:6px;max-width:80%}.cam{animation:cam var(--scene-dur) var(--ease-cam) var(--d, 0ms) both}@keyframes cam{0%{transform:translate(var(--cam-x0, 0px)) scale(var(--cam-s0, 1))}to{transform:translate(var(--cam-x1, 0px)) scale(var(--cam-s1, 1.06))}}.drift{animation:drift var(--scene-dur) linear both}@keyframes drift{to{transform:translate(120px,-60px)}}.dolly{animation:shot-dolly var(--shot-dur) var(--ease-cam) var(--d) both}@keyframes shot-dolly{0%{transform:scale(1.08)}to{transform:scale(1)}}.uline{position:relative;white-space:nowrap}.uline:after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:6px;background:var(--red);border-radius:1px;transform-origin:left center;animation:bar-grow .7s var(--ease-in) var(--d, 0ms) both}.arrow-osc{animation:arrow-osc 2.4s ease-in-out var(--d, 0ms) infinite}@keyframes arrow-osc{0%,to{transform:translate(0)}50%{transform:translate(var(--ax),var(--ay))}}.notif{animation:notif-in .6s var(--ease-in) var(--d, 0ms) both,notif-flash .7s ease-out calc(var(--d, 0ms) + .6s) both}@keyframes notif-in{0%{opacity:0;transform:translateY(-24px)}}@keyframes notif-flash{0%{filter:brightness(1)}30%{filter:brightness(1.35)}to{filter:brightness(1)}}.snow{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;transition:opacity .8s ease}.debug-panel{position:absolute;top:16px;right:16px;z-index:100;width:440px;padding:16px 18px;border-radius:10px;background:#000000b8;color:#e5e7eb;font:500 18px/1.45 ui-monospace,SFMono-Regular,Menlo,monospace}.debug-panel b{color:#fff}.debug-timeline{display:flex;gap:2px;height:10px;margin:10px 0 6px}.debug-timeline>div{position:relative;background:#ffffff2e;border-radius:2px;overflow:hidden}.debug-timeline>div>i{position:absolute;inset:0 auto 0 0;background:var(--red)}
