.vl-screen{position:relative;width:100%;min-height:100vh;background:var(--paper);overflow:hidden;user-select:none;display:flex}.vl-stars{position:absolute;inset:0;pointer-events:none}.vl-stars circle{fill:var(--ink)}.vl-progress{position:absolute;top:28px;left:50%;transform:translate(-50%);display:flex;gap:0;align-items:center;z-index:2}.vl-progress .vl-dot{width:6px;height:6px;border-radius:99px;background:#f5e9dc40;transition:all .35s cubic-bezier(.25,.8,.35,1)}.vl-progress .vl-dot.active{background:var(--accent);width:8px;height:8px}.vl-progress .vl-dot.done{background:var(--ink)}.vl-progress .vl-bar{width:16px;height:1px;background:#f5e9dc26}.vl-stage{position:absolute;inset:90px 0 140px;display:flex;align-items:center;justify-content:center;perspective:1200px}.vl-card{position:absolute;left:50%;top:50%;width:90px;height:140px;border-radius:8px;transform-style:preserve-3d;transition:transform 1.4s cubic-bezier(.4,0,.2,1);will-change:transform}.vl-card .vl-face,.vl-card .vl-back{position:absolute;inset:0;border-radius:8px;backface-visibility:hidden;-webkit-backface-visibility:hidden}.vl-card .vl-back{background:linear-gradient(180deg,#34193f,#1f0d2a,#100618);border:1.5px solid var(--gold);box-shadow:0 0 20px #e8a4b826,0 8px 16px -4px #00000080;overflow:hidden}.vl-card .vl-back svg{position:absolute;inset:0;width:100%;height:100%;display:block}.vl-card .vl-face{background:var(--ink);border:1.5px solid var(--accent);transform:rotateY(180deg);box-shadow:0 0 30px #e8a4b866,0 8px 24px -4px #0009;overflow:hidden;color:var(--paper);padding:8px;display:flex;flex-direction:column}.vl-card .vl-face .vl-face-frame{position:absolute;inset:5px;border:1px dashed var(--paper);border-radius:5px;opacity:.35;pointer-events:none}.vl-card .vl-face .vl-face-num{text-align:center;font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;opacity:.7}.vl-card .vl-face .vl-face-glyph{min-height:100vh;display:grid;place-items:center;font-size:42px;color:var(--accent);text-shadow:0 0 16px rgba(232,164,184,.5)}.vl-card .vl-face .vl-face-name{text-align:center;font-size:9px;font-weight:700;letter-spacing:1px;text-transform:uppercase;opacity:.85}.vl-card .vl-face .vl-face-img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:var(--paper);border-radius:6.5px;display:block}.vl-pos-label{position:absolute;left:50%;top:50%;text-align:center;font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--accent);opacity:0;transition:opacity .4s ease-out;pointer-events:none}.vl-pos-label.show{opacity:1}.vl-caption{position:absolute;bottom:60px;left:0;right:0;text-align:center;z-index:2;padding:0 24px}.vl-caption .vl-phase{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:2px;color:var(--ink)}.vl-caption .vl-hint{margin-top:12px;font-size:11px;font-weight:500;color:var(--muted);letter-spacing:.3px;opacity:.7}.vl-glow{position:absolute;left:50%;top:50%;margin:-100px 0 0 -100px;width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,rgba(232,164,184,.25) 0%,transparent 60%);pointer-events:none;opacity:0;transition:opacity .4s,transform .6s}.vl-glow.show{opacity:1}.vl-glow.pulse{animation:vl-pulse 1.6s ease-in-out infinite}@keyframes vl-pulse{0%{transform:scale(1);opacity:.5}50%{transform:scale(1.1);opacity:.95}to{transform:scale(1);opacity:.5}}@media(prefers-reduced-motion:reduce){.vl-card{transition:opacity .5s ease-out}.vl-glow.pulse{animation:none}}:root{--paper: #1a0f24;--paperHi: #241432;--ink: #f5e9dc;--muted: #b89bba;--line: #3d2552;--accent: #e8a4b8;--gold: #d4a574;--soft: #2d1a3f;--warmpink: #3a1a3f;--postit: #3d2552;--cream: #241432}*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;padding:0;min-height:100vh}body{font-family:Work Sans,-apple-system,system-ui,sans-serif;background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior:none}input,textarea,button{font-family:inherit;color:inherit}button{cursor:pointer}a{color:inherit}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-thumb{background:#b89bba4d;border-radius:2px}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}textarea,input[type=text]{width:100%;border:1.5px solid var(--ink);border-radius:10px;padding:10px 12px;background:var(--paper);color:var(--ink);font-size:14px;line-height:1.35}textarea{resize:none;font-family:inherit}
