.loading{position:fixed;inset:0;z-index:var(--z-loading);display:flex;align-items:center;justify-content:center;background:var(--void);transition:opacity .8s var(--ease-out)}.loading--fade-out{opacity:0;pointer-events:none}.loading__content{display:flex;flex-direction:column;align-items:center;gap:var(--space-xl);width:min(300px,80vw)}.loading__title{font-family:var(--font-heading);font-weight:200;font-size:.8rem;color:var(--text-muted);letter-spacing:.4em;text-transform:uppercase}.loading__bar{width:100%;height:1px;background:#ffffff0f;border-radius:var(--radius-full);overflow:hidden}.loading__fill{height:100%;background:linear-gradient(90deg,var(--accent-cool),var(--accent-violet));border-radius:inherit;transition:width .1s linear;box-shadow:0 0 10px #4fc3f74d}.loading__meta{display:flex;justify-content:space-between;width:100%;font-family:var(--font-mono);font-size:.55rem;color:var(--text-muted);letter-spacing:.1em;text-transform:uppercase;opacity:.5}.opening{position:fixed;inset:0;z-index:var(--z-sequence);background:var(--void);display:flex;flex-direction:column;align-items:center;justify-content:center;transition:opacity 1.5s var(--ease-out);overflow:hidden}.opening--fade-out{opacity:0;pointer-events:none}.opening__starfield{position:absolute;inset:0;overflow:hidden;pointer-events:none}.opening__star{position:absolute;border-radius:50%;background:var(--star-white);opacity:0;animation:starDrift var(--star-duration, 20s) linear infinite,starTwinkle var(--twinkle-duration, 3s) ease-in-out infinite;animation-delay:var(--star-delay, 0s)}@keyframes starDrift{0%{transform:translateY(0) translate(0);opacity:0}10%{opacity:var(--star-brightness, .5)}90%{opacity:var(--star-brightness, .5)}to{transform:translateY(-30vh) translate(calc(var(--drift-x, 10px)));opacity:0}}@keyframes starTwinkle{0%,to{opacity:var(--star-brightness, .3)}50%{opacity:calc(var(--star-brightness, .3) * 1.8)}}.opening__light{position:absolute;top:50%;left:50%;width:4px;height:4px;border-radius:50%;background:var(--star-white);transform:translate(-50%,-50%);opacity:0;transition:all 2.5s var(--ease-out);z-index:2}.opening__light--visible{opacity:1;width:8px;height:8px;box-shadow:0 0 30px #e8e6e399,0 0 60px #e8e6e34d,0 0 120px #4fc3f726,0 0 200px #9c6cff0d;animation:lightPulse 4s ease-in-out infinite}@keyframes lightPulse{0%,to{box-shadow:0 0 30px #e8e6e399,0 0 60px #e8e6e34d,0 0 120px #4fc3f726}50%{box-shadow:0 0 40px #e8e6e3cc,0 0 80px #e8e6e366,0 0 160px #4fc3f740,0 0 240px #9c6cff1a}}.opening__lens-flare{position:absolute;top:50%;left:0;width:100%;height:2px;transform:translateY(-50%);opacity:0;z-index:3;pointer-events:none;background:linear-gradient(90deg,transparent 0%,transparent 20%,rgba(79,195,247,.05) 35%,rgba(255,255,255,.15) 48%,rgba(255,255,255,.4) 50%,rgba(255,255,255,.15) 52%,rgba(79,195,247,.05) 65%,transparent 80%,transparent 100%)}.opening__lens-flare--visible{animation:lensFlareSlide 4s var(--ease-out) forwards}@keyframes lensFlareSlide{0%{opacity:0;transform:translateY(-50%) scaleX(0)}20%{opacity:1;transform:translateY(-50%) scaleX(.3)}60%{opacity:.6;transform:translateY(-50%) scaleX(1)}to{opacity:.2;transform:translateY(-50%) scaleX(1.2)}}.opening__flare-hex{position:absolute;top:50%;left:50%;width:20px;height:20px;border-radius:50%;opacity:0;z-index:3;pointer-events:none}.opening__flare-hex--visible{animation:flareHexAppear 3s var(--ease-out) 1s forwards}.opening__flare-hex--1{transform:translate(calc(-50% + 80px),-50%);background:radial-gradient(circle,rgba(79,195,247,.15) 0%,transparent 70%);width:30px;height:30px}.opening__flare-hex--2{transform:translate(calc(-50% - 120px),calc(-50% + 10px));background:radial-gradient(circle,rgba(156,108,255,.1) 0%,transparent 70%);width:15px;height:15px}.opening__flare-hex--3{transform:translate(calc(-50% + 200px),calc(-50% - 5px));background:radial-gradient(circle,rgba(255,215,0,.08) 0%,transparent 70%);width:12px;height:12px}@keyframes flareHexAppear{0%{opacity:0}50%{opacity:1}to{opacity:.4}}.opening__ripples{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1;pointer-events:none}.opening__ripple{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border-radius:50%;border:1px solid rgba(79,195,247,.15);opacity:0}.opening__ripple--visible{animation:rippleExpand var(--ripple-duration, 4s) var(--ease-out) infinite;animation-delay:var(--ripple-delay, 0s)}@keyframes rippleExpand{0%{width:10px;height:10px;opacity:.5;border-width:1.5px}to{width:400px;height:400px;opacity:0;border-width:.5px}}.opening__text-container{position:relative;z-index:5;text-align:center;padding:0 var(--space-xl);min-height:200px;display:flex;flex-direction:column;align-items:center;justify-content:center}.opening__text{font-family:var(--font-heading);font-weight:200;font-size:clamp(1.1rem,3vw,1.6rem);color:var(--text-primary);letter-spacing:.04em;opacity:0;margin-bottom:var(--space-lg);line-height:1.8;position:relative;display:inline-block}.opening__text--typing{opacity:1;overflow:hidden;white-space:nowrap;border-right:2px solid var(--text-primary);animation:typeCursor .7s step-end infinite;text-shadow:0 0 20px rgba(79,195,247,.15),0 0 40px rgba(79,195,247,.05)}.opening__text--done{opacity:1;border-right:none;text-shadow:0 0 20px rgba(79,195,247,.15),0 0 40px rgba(79,195,247,.05)}.opening__text--faded{opacity:.15;transition:opacity 2s var(--ease-out);border-right:none;text-shadow:none}@keyframes typeCursor{0%,to{border-color:transparent}50%{border-color:var(--text-primary)}}.opening__enter{position:absolute;bottom:max(15vh,100px);left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:var(--space-lg);cursor:pointer;animation:fadeUp 1.5s var(--ease-out) forwards;opacity:0;-webkit-tap-highlight-color:transparent}.opening__orb{position:relative;width:80px;height:80px;display:flex;align-items:center;justify-content:center;perspective:400px}.opening__orb-core{width:14px;height:14px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#fff 0%,var(--accent-cool) 50%,var(--nebula-purple) 100%);box-shadow:0 0 20px var(--accent-cool),0 0 40px #4fc3f766,0 0 80px #4fc3f726,0 0 120px #9c6cff1a;animation:orbPulse 2s ease-in-out infinite;z-index:2}.opening__orb-ring{position:absolute;border:1px solid rgba(79,195,247,.25);border-radius:50%}.opening__orb-ring--1{width:40px;height:40px;animation:ring3D-1 4s linear infinite;border-color:#4fc3f74d}.opening__orb-ring--2{width:55px;height:55px;animation:ring3D-2 6s linear infinite;border-color:#9c6cff33}.opening__orb-ring--3{width:70px;height:70px;animation:ring3D-3 8s linear infinite;border-color:#ffd70026}@keyframes ring3D-1{0%{transform:rotateX(60deg) rotate(0)}to{transform:rotateX(60deg) rotate(360deg)}}@keyframes ring3D-2{0%{transform:rotateX(75deg) rotateY(45deg) rotate(0)}to{transform:rotateX(75deg) rotateY(45deg) rotate(-360deg)}}@keyframes ring3D-3{0%{transform:rotateX(45deg) rotateY(-30deg) rotate(0)}to{transform:rotateX(45deg) rotateY(-30deg) rotate(360deg)}}.opening__orb-ripple{position:absolute;border:1px solid rgba(79,195,247,.2);border-radius:50%;width:30px;height:30px;animation:orbRipple 3s ease-out infinite}.opening__orb-ripple--1{animation-delay:0s}.opening__orb-ripple--2{animation-delay:1s}.opening__orb-ripple--3{animation-delay:2s}@keyframes orbRipple{0%{transform:scale(1);opacity:.5}to{transform:scale(4);opacity:0}}@keyframes orbPulse{0%,to{transform:scale(1);box-shadow:0 0 20px var(--accent-cool),0 0 40px #4fc3f74d}50%{transform:scale(1.15);box-shadow:0 0 30px var(--accent-cool),0 0 60px #4fc3f766,0 0 100px #9c6cff26}}.opening__enter-hint{font-family:var(--font-mono);font-size:.65rem;color:var(--text-muted);letter-spacing:.2em;text-transform:uppercase;animation:hintPulse 3s ease-in-out infinite}@keyframes hintPulse{0%,to{opacity:.2}50%{opacity:.5}}.opening__skip{position:fixed;bottom:var(--space-xl);right:var(--space-xl);padding-bottom:calc(var(--space-xl) + var(--safe-bottom));background:none;border:1px solid rgba(255,255,255,.08);color:var(--text-muted);font-family:var(--font-mono);font-size:.65rem;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;opacity:.3;transition:all var(--duration-normal) var(--ease-out);-webkit-tap-highlight-color:transparent;padding:8px 16px;border-radius:var(--radius-sm);z-index:10}.opening__skip:hover{opacity:.7;border-color:#fff3;background:#ffffff08}.opening__vignette{position:absolute;inset:0;pointer-events:none;z-index:0;background:radial-gradient(ellipse at center,transparent 30%,rgba(0,0,0,.4) 70%,rgba(0,0,0,.8) 100%)}@media(max-width:768px){.opening__enter{bottom:max(12vh,80px)}.opening__text{font-size:clamp(1rem,5vw,1.3rem);padding:0 var(--space-md)}.opening__orb{width:65px;height:65px}@keyframes rippleExpand{0%{width:10px;height:10px;opacity:.5}to{width:250px;height:250px;opacity:0}}}.bigbang{position:fixed;inset:0;z-index:var(--z-sequence);background:var(--void);display:flex;align-items:center;justify-content:center;overflow:hidden}.bigbang--fade-out{animation:bigbangFadeOut 2s var(--ease-out) forwards}.bigbang__text{position:absolute;z-index:10;font-family:var(--font-heading);font-weight:100;font-size:clamp(3rem,12vw,10rem);color:transparent;letter-spacing:.5em;text-transform:uppercase;pointer-events:none;opacity:0;background:linear-gradient(135deg,gold,#fff,#4fc3f7 60%,gold);background-size:300% 300%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 40px rgba(255,215,0,.6)) drop-shadow(0 0 80px rgba(79,195,247,.4))}.bigbang__text--visible{animation:textReveal 1.2s var(--ease-out) forwards,textGlow 1.2s ease-in-out forwards,textShimmer 1.2s linear forwards}.bigbang__text--explode{animation:textExplode .6s var(--ease-out) forwards}@keyframes textReveal{0%{opacity:0;letter-spacing:1.5em;filter:drop-shadow(0 0 0 transparent) blur(10px)}40%{opacity:1;filter:drop-shadow(0 0 20px rgba(255,215,0,.4)) blur(0px)}to{opacity:1;letter-spacing:.3em;filter:drop-shadow(0 0 60px rgba(255,215,0,.8)) drop-shadow(0 0 120px rgba(79,195,247,.5))}}@keyframes textShimmer{0%{background-position:0% 50%}to{background-position:100% 50%}}@keyframes textGlow{0%{text-shadow:none}50%{text-shadow:0 0 20px rgba(255,215,0,.3),0 0 60px rgba(255,215,0,.2),0 0 100px rgba(79,195,247,.15)}to{text-shadow:0 0 40px rgba(255,215,0,.5),0 0 80px rgba(255,215,0,.3),0 0 160px rgba(79,195,247,.3)}}@keyframes textExplode{0%{opacity:1;transform:scale(1);letter-spacing:.3em}50%{opacity:.8;transform:scale(1.3);letter-spacing:.8em}to{opacity:0;transform:scale(3);letter-spacing:2em;filter:blur(20px)}}.bigbang__singularity{position:absolute;top:50%;left:50%;width:4px;height:4px;border-radius:50%;background:#fff;transform:translate(-50%,-50%);opacity:0;z-index:5}.bigbang__singularity--active{animation:singularityPulse 1.5s ease-in-out forwards}.bigbang__singularity--explode{animation:singularityExplode .5s cubic-bezier(.25,.46,.45,.94) forwards}@keyframes singularityPulse{0%{opacity:0;width:2px;height:2px;box-shadow:0 0 10px #fff}50%{opacity:1;width:8px;height:8px;box-shadow:0 0 20px #fff,0 0 40px #ffd70080,0 0 80px #4fc3f74d}to{opacity:1;width:12px;height:12px;box-shadow:0 0 30px #fff,0 0 60px #ffd700cc,0 0 120px #4fc3f780,0 0 200px #9c6cff4d}}@keyframes singularityExplode{0%{width:12px;height:12px;opacity:1}to{width:300vmax;height:300vmax;opacity:.95;box-shadow:0 0 100px #fff,0 0 200px #ffd70080}}.bigbang__flash{position:absolute;inset:0;background:radial-gradient(circle at center,#ffffff 0%,rgba(255,245,220,.95) 20%,rgba(79,195,247,.4) 50%,rgba(156,108,255,.2) 70%,transparent 100%);opacity:0;z-index:20;pointer-events:none}.bigbang__flash--active{animation:flashBurst 1.5s cubic-bezier(.16,1,.3,1) forwards}@keyframes flashBurst{0%{opacity:1}30%{opacity:.9}to{opacity:0}}.bigbang__rings{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:8;pointer-events:none}.bigbang__ring{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border-radius:50%;border:2px solid rgba(255,255,255,.6);opacity:0}.bigbang__ring--1{animation:ringExpand 1.5s cubic-bezier(.16,1,.3,1) forwards;border-color:#ffd70099}.bigbang__ring--2{animation:ringExpand 1.5s cubic-bezier(.16,1,.3,1) .1s forwards;border-color:#4fc3f780}.bigbang__ring--3{animation:ringExpand 1.5s cubic-bezier(.16,1,.3,1) .2s forwards;border-color:#9c6cff66}.bigbang__ring--4{animation:ringExpand 1.5s cubic-bezier(.16,1,.3,1) .35s forwards;border-color:#ff6b354d}@keyframes ringExpand{0%{width:0;height:0;opacity:.8;border-width:3px}60%{opacity:.4}to{width:200vmax;height:200vmax;opacity:0;border-width:1px}}.bigbang__particles{position:absolute;inset:0;z-index:9;pointer-events:none}.bigbang__particle{position:absolute;top:50%;left:50%;width:3px;height:3px;border-radius:50%;background:#fff;opacity:0}.bigbang__particle--active{animation:particleFly var(--fly-duration, 2s) var(--ease-out) forwards}@keyframes particleFly{0%{opacity:1;transform:translate(-50%,-50%) translate(0) scale(1)}30%{opacity:.9}to{opacity:0;transform:translate(-50%,-50%) translate(var(--tx, 100px),var(--ty, 100px)) scale(.2)}}.bigbang__streaks{position:absolute;inset:0;z-index:7;pointer-events:none;opacity:0}.bigbang__streaks--active{animation:streaksShow 1.8s var(--ease-out) forwards}@keyframes streaksShow{0%{opacity:0}10%{opacity:.7}to{opacity:0}}.bigbang__streak{position:absolute;top:50%;left:50%;height:1px;transform-origin:left center;background:linear-gradient(90deg,rgba(255,255,255,.8),transparent);opacity:.7}.bigbang__afterglow{position:absolute;inset:0;z-index:6;opacity:0;background:radial-gradient(ellipse at center,rgba(79,195,247,.08) 0%,rgba(156,108,255,.04) 40%,transparent 70%);pointer-events:none}.bigbang__afterglow--active{animation:afterglowFade 3s ease-in-out forwards}@keyframes afterglowFade{0%{opacity:0}30%{opacity:1}to{opacity:0}}@keyframes bigbangFadeOut{0%{opacity:1;background:transparent}to{opacity:0;pointer-events:none}}@media(max-width:768px){.bigbang__text{font-size:clamp(2rem,10vw,5rem);letter-spacing:.3em}}.memory-editor-modal{position:fixed;inset:0;z-index:9995;display:flex;align-items:center;justify-content:center;padding:20px}.memory-editor-modal__backdrop{position:absolute;inset:0;background:#040612e0;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.memory-editor-modal__container{position:relative;width:100%;max-width:580px;max-height:90vh;overflow-y:auto;background:radial-gradient(circle at 50% 0%,#1a1437f2,#0a0c1cfa);border:1px solid rgba(168,85,247,.4);border-radius:20px;padding:24px;box-shadow:0 20px 60px #000c,0 0 30px #a855f740;box-sizing:border-box;animation:modalPopIn .3s cubic-bezier(.16,1,.3,1) forwards}@keyframes modalPopIn{0%{opacity:0;transform:scale(.94) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.memory-editor-modal__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:12px}.memory-editor-modal__header h2{font-family:Outfit,sans-serif;font-size:1.25rem;color:#f3e8ff;margin:0;letter-spacing:.04em}.memory-editor-modal__close{background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:50%;width:32px;height:32px;color:#cbd5e1;font-size:1.1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.memory-editor-modal__close:hover{background:#fff3;color:#fff}.memory-editor-modal__error{background:#ef444433;border:1px solid rgba(239,68,68,.4);color:#fca5a5;padding:10px 14px;border-radius:10px;font-size:.8rem;margin-bottom:16px}.memory-editor-modal__form{display:flex;flex-direction:column;gap:16px}.memory-editor-modal__field{display:flex;flex-direction:column;gap:6px;flex:1}.memory-editor-modal__field label{font-family:Space Grotesk,monospace;font-size:.72rem;color:#c084fc;letter-spacing:.08em;text-transform:uppercase}.memory-editor-modal__field input,.memory-editor-modal__field textarea{background:#0f1228cc;border:1px solid rgba(165,180,252,.25);border-radius:10px;color:#fff;font-family:Space Grotesk,sans-serif;font-size:.9rem;padding:10px 14px;box-sizing:border-box;outline:none;transition:border-color .2s ease,box-shadow .2s ease}.memory-editor-modal__field input:focus,.memory-editor-modal__field textarea:focus{border-color:#c084fc;box-shadow:0 0 12px #c084fc4d}.memory-editor-modal__row{display:flex;gap:12px}.memory-editor-modal__star-section{background:#a855f714;border:1px solid rgba(168,85,247,.25);border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:12px;margin-top:4px}.memory-editor-modal__star-section h3{font-family:Space Grotesk,monospace;font-size:.8rem;color:#e879f9;margin:0;letter-spacing:.08em;text-transform:uppercase}.memory-editor-modal__actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:10px}.editor-btn{padding:10px 20px;border-radius:20px;font-family:Space Grotesk,monospace;font-size:.8rem;font-weight:600;letter-spacing:.08em;cursor:pointer;transition:all .2s ease}.editor-btn--cancel{background:#ffffff14;border:1px solid rgba(255,255,255,.15);color:#94a3b8}.editor-btn--cancel:hover{background:#ffffff26;color:#fff}.editor-btn--save{background:linear-gradient(135deg,#a855f7,#6366f1);border:none;color:#fff;box-shadow:0 0 16px #a855f766}.editor-btn--save:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 0 24px #a855f799}.editor-btn--save:disabled{opacity:.6;cursor:not-allowed}.memory-viewer{position:fixed;inset:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;background:#0000;backdrop-filter:blur(0px);-webkit-backdrop-filter:blur(0px);transition:all .6s var(--ease-out);opacity:0;pointer-events:none;padding:var(--space-xl);padding-top:calc(var(--space-xl) + var(--safe-top));padding-bottom:calc(var(--space-xl) + var(--safe-bottom))}.memory-viewer--visible{background:#000000bf;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);opacity:1;pointer-events:auto}.memory-viewer__content{position:relative;max-width:560px;width:100%;max-height:86vh;overflow-y:auto;touch-action:pan-y;-webkit-overflow-scrolling:touch;background:#0c0c1ce0;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid rgba(79,195,247,.25);border-radius:var(--radius-xl);padding:var(--space-2xl);box-shadow:0 20px 60px #000c,0 0 30px #4fc3f726;transform:scale(.95) translateY(20px);transition:transform .6s var(--ease-out);scrollbar-width:thin;scrollbar-color:rgba(79,195,247,.3) transparent}.memory-viewer--visible .memory-viewer__content{transform:scale(1) translateY(0)}.memory-viewer__content::-webkit-scrollbar{width:3px}.memory-viewer__content::-webkit-scrollbar-track{background:transparent}.memory-viewer__content::-webkit-scrollbar-thumb{background:var(--glass-border);border-radius:var(--radius-full)}.memory-viewer__date{display:flex;align-items:center;gap:var(--space-md);margin-bottom:var(--space-lg)}.memory-viewer__date-line{flex:1;height:1px;background:var(--glass-border)}.memory-viewer__date-text{font-family:var(--font-mono);font-size:.7rem;color:var(--text-muted);letter-spacing:.15em;white-space:nowrap}.memory-viewer__title{font-family:var(--font-heading);font-weight:300;font-size:clamp(1.3rem,4vw,1.8rem);color:var(--text-primary);margin-bottom:var(--space-xl);letter-spacing:.02em;line-height:1.3}.memory-viewer__photo{margin-bottom:var(--space-xl)}.memory-viewer__photo-frame{position:relative;border-radius:var(--radius-md);overflow:hidden;background:#ffffff05;aspect-ratio:4/3;opacity:0;transition:opacity .8s var(--ease-out)}.memory-viewer__photo-frame--loaded{opacity:1}.memory-viewer__photo-frame img{width:100%;height:100%;object-fit:cover}.memory-viewer__caption{font-family:var(--font-mono);font-size:.7rem;color:var(--text-muted);margin-top:var(--space-sm);letter-spacing:.05em}.memory-viewer__text--solemn{border-left:2px solid rgba(255,77,77,.4);padding-left:var(--space-md);margin-left:-2px}.memory-viewer__paragraph{font-family:var(--font-heading);font-weight:200;font-size:clamp(.95rem,2.5vw,1.1rem);color:var(--text-secondary);line-height:1.9;margin-bottom:var(--space-sm);opacity:0;transform:translateY(8px);animation:memoryTextFade .8s var(--ease-out) forwards}.memory-viewer__paragraph--bold{color:gold;font-weight:500;font-size:clamp(1.02rem,2.7vw,1.15rem);text-shadow:0 0 10px rgba(255,215,0,.25)}@keyframes memoryTextFade{to{opacity:1;transform:translateY(0)}}.memory-viewer__messages{display:flex;flex-direction:column;gap:var(--space-sm);margin-bottom:var(--space-xl)}.memory-viewer__message{max-width:80%;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-lg);opacity:0;transform:translateY(10px);animation:memoryTextFade .5s var(--ease-out) forwards}.memory-viewer__message--sent{align-self:flex-end;background:#4fc3f71f;border:1px solid rgba(79,195,247,.15);border-bottom-right-radius:var(--space-xs)}.memory-viewer__message--received{align-self:flex-start;background:var(--glass-bg);border:1px solid var(--glass-border);border-bottom-left-radius:var(--space-xs)}.memory-viewer__message-text{font-size:.9rem;color:var(--text-primary);line-height:1.5}.memory-viewer__message-time{display:block;font-family:var(--font-mono);font-size:.55rem;color:var(--text-muted);margin-top:4px;letter-spacing:.05em}.memory-viewer__location{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-md);margin-bottom:var(--space-xl)}.memory-viewer__location-pin{color:var(--accent-warm);opacity:.7}.memory-viewer__location-name{font-family:var(--font-mono);font-size:.8rem;color:var(--text-secondary);letter-spacing:.05em}.memory-viewer__close{position:absolute;top:var(--space-md);right:var(--space-md);background:none;border:none;color:var(--text-muted);cursor:pointer;padding:var(--space-sm);transition:color var(--duration-normal) var(--ease-out);-webkit-tap-highlight-color:transparent}.memory-viewer__close:hover{color:var(--text-primary)}.memory-viewer__discovered{display:flex;align-items:center;gap:var(--space-sm);font-family:var(--font-mono);font-size:.6rem;color:var(--text-muted);letter-spacing:.1em;text-transform:uppercase;margin-top:var(--space-lg);padding-top:var(--space-lg);border-top:1px solid var(--glass-border)}.memory-viewer__discovered-dot{width:6px;height:6px;border-radius:50%;background:var(--accent-cool);animation:discoveredPulse 2s ease-in-out infinite}@keyframes discoveredPulse{0%,to{opacity:.5;box-shadow:0 0 4px var(--accent-cool)}50%{opacity:1;box-shadow:0 0 10px var(--accent-cool)}}.memory-viewer__chat-btn{width:100%;margin-top:var(--space-lg);padding:12px var(--space-lg);background:linear-gradient(135deg,#9c6cff40,#4fc3f740);border:1px solid rgba(156,108,255,.5);border-radius:var(--radius-md);color:var(--text-primary);font-family:var(--font-mono);font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;box-shadow:0 0 20px #9c6cff40;transition:all var(--duration-normal) var(--ease-out)}.memory-viewer__chat-btn:hover{background:linear-gradient(135deg,#9c6cff66,#4fc3f766);border-color:#ffd700b3;box-shadow:0 0 30px #9c6cff66;transform:translateY(-2px)}@media(max-width:768px){.memory-viewer{padding:16px;align-items:center}.memory-viewer__content{max-height:88vh;padding:22px 18px;border-radius:20px;margin-bottom:0}}.invite-modal{position:fixed;inset:0;z-index:9995;display:flex;align-items:center;justify-content:center;padding:20px}.invite-modal__backdrop{position:absolute;inset:0;background:#040612e0;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.invite-modal__container{position:relative;width:100%;max-width:520px;background:radial-gradient(circle at 50% 0%,#1a1437f2,#0a0c1cfa);border:1px solid rgba(99,102,241,.4);border-radius:20px;padding:24px;box-shadow:0 20px 60px #000c,0 0 30px #6366f140;box-sizing:border-box;animation:modalPopIn .3s cubic-bezier(.16,1,.3,1) forwards}.invite-modal__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:12px}.invite-modal__header h2{font-family:Outfit,sans-serif;font-size:1.15rem;color:#e0e7ff;margin:0}.invite-modal__close{background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:50%;width:32px;height:32px;color:#cbd5e1;font-size:1.1rem;cursor:pointer;display:flex;align-items:center;justify-content:center}.invite-modal__error{background:#ef444433;border:1px solid rgba(239,68,68,.4);color:#fca5a5;padding:10px 14px;border-radius:10px;font-size:.8rem;margin-bottom:16px}.invite-modal__form{display:flex;flex-direction:column;gap:16px}.invite-modal__field{display:flex;flex-direction:column;gap:6px;flex:1}.invite-modal__field label{font-family:Space Grotesk,monospace;font-size:.72rem;color:#a5b4fc;letter-spacing:.08em;text-transform:uppercase}.invite-modal__field select,.invite-modal__field input{background:#0f1228cc;border:1px solid rgba(165,180,252,.25);border-radius:10px;color:#fff;font-family:Space Grotesk,sans-serif;font-size:.88rem;padding:10px 14px;outline:none}.invite-modal__role-picker{display:flex;flex-direction:column;gap:10px;margin-top:4px}.role-option{display:flex;align-items:flex-start;gap:12px;padding:12px;background:#0f122899;border:1px solid rgba(255,255,255,.1);border-radius:12px;cursor:pointer;transition:all .2s ease}.role-option:hover{background:#6366f11f;border-color:#6366f14d}.role-option--active{background:#6366f133;border-color:#818cf8;box-shadow:0 0 14px #6366f140}.role-option input{margin-top:3px;accent-color:#818cf8}.role-option__info{display:flex;flex-direction:column;gap:2px}.role-option__info strong{font-size:.85rem;color:#f1f5f9}.role-option__info span{font-size:.72rem;color:#94a3b8}.invite-modal__row{display:flex;gap:12px}.invite-modal__actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:10px}.invite-btn{padding:10px 20px;border-radius:20px;font-family:Space Grotesk,monospace;font-size:.8rem;font-weight:600;letter-spacing:.08em;cursor:pointer;transition:all .2s ease}.invite-btn--cancel{background:#ffffff14;border:1px solid rgba(255,255,255,.15);color:#94a3b8}.invite-btn--generate{background:linear-gradient(135deg,#6366f1,#a855f7);border:none;color:#fff;box-shadow:0 0 16px #6366f166}.invite-modal__result{display:flex;flex-direction:column;gap:16px}.invite-modal__success-badge{background:#10b98126;border:1px solid rgba(16,185,129,.4);color:#34d399;padding:10px 14px;border-radius:10px;font-size:.82rem;font-weight:600}.invite-modal__url-box{display:flex;gap:8px}.invite-modal__url-box input{flex:1;background:#0a0c1ce6;border:1px solid rgba(99,102,241,.4);border-radius:10px;color:#38bdf8;font-family:Space Grotesk,monospace;font-size:.8rem;padding:10px}.invite-btn--copy{background:#38bdf8;border:none;color:#05060f;font-weight:700}.invite-modal__hint{font-size:.78rem;color:#94a3b8;line-height:1.4;margin:0}.hud{position:fixed;inset:0;z-index:var(--z-hud);pointer-events:none}.hud *{pointer-events:auto}.hud__identity-pill{position:absolute;top:calc(var(--space-xl) + var(--safe-top));left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:4px;background:#0d101abf;backdrop-filter:blur(12px);border:1px solid rgba(139,92,246,.3);padding:6px 16px;border-radius:var(--radius-full);box-shadow:0 0 20px #8b5cf626;pointer-events:auto;z-index:12}.hud__universe-title{font-family:var(--font-mono);font-size:.75rem;font-weight:600;color:var(--accent-cool, #a78bfa);letter-spacing:.12em;text-transform:uppercase}.hud__user-info{display:flex;align-items:center;gap:6px;font-size:.65rem;font-family:var(--font-mono);color:var(--text-muted)}.hud__user-name{color:#e2e8f0;font-weight:500}.hud__role-chip{padding:1px 6px;border-radius:4px;font-size:.55rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.hud__role-chip--owner{background:#eab30833;color:#eab308;border:1px solid rgba(234,179,8,.4)}.hud__role-chip--admin{background:#a855f733;color:#c084fc;border:1px solid rgba(168,85,247,.4)}.hud__role-chip--traveler{background:#3b82f633;color:#60a5fa;border:1px solid rgba(59,130,246,.4)}.hud__role-chip--guest{background:#64748b33;color:#94a3b8;border:1px solid rgba(100,116,139,.4)}.hud__guest-chip{background:#ef444433;color:#f87171;border:1px solid rgba(239,68,68,.4);padding:1px 6px;border-radius:4px;font-size:.55rem;font-weight:700}.identity-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:12px;font-family:var(--font-mono);font-size:.7rem;font-weight:600;letter-spacing:.08em}.identity-badge--universe{background:#8b5cf626;border:1px solid rgba(139,92,246,.4);color:#c084fc}.identity-badge--role{border:1px solid currentColor}.identity-badge--owner{background:#eab30826;color:#fde047}.identity-badge--admin{background:#a855f726;color:#e879f9}.identity-badge--traveler{background:#3b82f626;color:#93c5fd}.identity-badge--guest{background:#ef444426;border:1px solid rgba(239,68,68,.4);color:#fca5a5}.hud__discovery{position:absolute;top:calc(var(--space-xl) + var(--safe-top));left:var(--space-xl);display:flex;flex-direction:column;gap:var(--space-2xs);animation:fadeIn 1s var(--ease-out) forwards;opacity:0;animation-delay:.5s}.hud__label{font-family:var(--font-mono);font-size:.6rem;color:var(--text-muted);letter-spacing:.15em;text-transform:uppercase}.hud__counter{font-family:var(--font-mono);font-size:1.2rem;font-weight:300;display:flex;align-items:baseline;gap:2px}.hud__count{color:var(--accent-cool);font-weight:400}.hud__separator{color:var(--glass-border-hover);font-size:.9rem;margin:0 2px}.hud__total{color:var(--text-muted)}.hud__spam-hint{margin-top:6px;font-family:var(--font-mono);font-size:.65rem;color:#ffb6c1d9;letter-spacing:.05em;max-width:240px;line-height:1.4;text-shadow:0 0 10px rgba(255,105,180,.3)}.hud__actions-bar{position:absolute;top:calc(var(--space-xl) + var(--safe-top));right:var(--space-xl);display:flex;align-items:center;gap:8px;z-index:10}.hud__letter-btn{display:flex;align-items:center;gap:6px;padding:6px 14px;background:#ffd7001f;border:1px solid rgba(255,215,0,.35);border-radius:var(--radius-full);color:gold;font-family:var(--font-mono);font-size:.7rem;letter-spacing:.1em;cursor:pointer;box-shadow:0 0 15px #ffd70026;transition:all var(--duration-normal) var(--ease-out);white-space:nowrap}.hud__letter-btn:hover{background:#ffd70040;border-color:gold;box-shadow:0 0 20px #ffd70066;transform:translateY(-1px)}.hud__chat-access{display:flex;align-items:center;gap:var(--space-sm);padding:6px 14px;background:#9c6cff2e;border:1px solid rgba(156,108,255,.5);border-radius:var(--radius-full);color:var(--text-primary);font-family:var(--font-mono);font-size:.7rem;letter-spacing:.12em;cursor:pointer;box-shadow:0 0 20px #9c6cff4d;transition:all var(--duration-normal) var(--ease-out);animation:chatBtnPulse 2s ease-in-out infinite;white-space:nowrap}.hud__chat-access:hover{background:#9c6cff59;border-color:#ffd700b3;transform:translateY(-1px);box-shadow:0 0 30px #9c6cff80}.hud__chat-pulse{width:8px;height:8px;border-radius:50%;background:var(--star-gold);box-shadow:0 0 10px var(--star-gold)}@keyframes chatBtnPulse{0%,to{border-color:#9c6cff66;box-shadow:0 0 15px #9c6cff4d}50%{border-color:#ffd700b3;box-shadow:0 0 25px #ffd70080}}.hud__unread-badge{background:#ef4444;color:#fff;font-size:.65rem;font-weight:700;border-radius:10px;padding:1px 6px;margin-left:2px;box-shadow:0 0 8px #ef4444}.hud__sound{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-full);width:32px;height:32px;display:flex;align-items:center;justify-content:center;color:var(--text-muted);cursor:pointer;transition:all var(--duration-normal) var(--ease-out);-webkit-tap-highlight-color:transparent;flex-shrink:0}.hud__sound:hover{color:var(--text-secondary);border-color:var(--glass-border-hover);background:var(--glass-bg-hover)}.hud__meta{position:absolute;bottom:var(--space-xl);right:var(--space-xl);display:flex;flex-direction:column;align-items:flex-end;gap:2px;animation:fadeIn 1s var(--ease-out) forwards;opacity:0;animation-delay:.9s}.hud__meta-item{font-family:var(--font-mono);font-size:.6rem;color:var(--text-muted);letter-spacing:.1em;opacity:.5}@media(max-width:768px){.hud__discovery{top:calc(var(--space-md) + var(--safe-top));left:var(--space-md)}.hud__actions-bar{top:calc(var(--space-md) + var(--safe-top));right:var(--space-md);gap:6px}.hud__letter-btn,.hud__chat-access{padding:5px 10px;font-size:.65rem}.hud__spam-hint{max-width:170px;font-size:.6rem}}@media(max-width:480px){.hud__identity-pill{top:calc(8px + var(--safe-top));padding:3px 10px;max-width:85vw;font-size:.65rem}.hud__universe-title{font-size:.65rem}.hud__user-info{font-size:.55rem}.hud__discovery{top:calc(54px + var(--safe-top));left:10px;gap:0}.hud__label{font-size:.5rem}.hud__counter{font-size:.95rem}.hud__spam-hint{display:none}.hud__actions-bar{top:calc(54px + var(--safe-top));right:10px;gap:4px;max-width:75vw;flex-wrap:wrap;justify-content:flex-end}.hud__letter-btn,.hud__chat-access{padding:4px 8px;font-size:.6rem}.hud__sound{width:26px;height:26px}}.letter{position:fixed;inset:0;z-index:var(--z-sequence);display:flex;align-items:center;justify-content:center;background:transparent;transition:background 2s var(--ease-out);padding:var(--space-xl);overflow-y:auto;touch-action:pan-y;-webkit-overflow-scrolling:touch}.letter--dark{background:#05050ef5;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}.letter__paper{max-width:620px;width:100%;max-height:85vh;overflow-y:auto;touch-action:pan-y;-webkit-overflow-scrolling:touch;padding:var(--space-3xl) var(--space-2xl);background:#0e0e1cd9;border:1px solid rgba(79,195,247,.18);border-radius:24px;box-shadow:0 20px 60px #000c,0 0 30px #4fc3f71a;opacity:0;transform:scale(.92) translateY(15px);transition:all 1.2s cubic-bezier(.16,1,.3,1);scrollbar-width:thin;scrollbar-color:rgba(79,195,247,.3) transparent}.letter__paper--visible{opacity:1;transform:scale(1) translateY(0)}.letter__paper::-webkit-scrollbar{width:5px}.letter__paper::-webkit-scrollbar-thumb{background:#4fc3f74d;border-radius:4px}.letter__header-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-md)}.letter__date-tag{font-family:var(--font-mono, monospace);font-size:.75rem;color:#4fc3f7cc;letter-spacing:.1em;text-transform:uppercase}.letter__edit-btn{background:linear-gradient(135deg,#a855f740,#ec489940);border:1px solid rgba(216,180,254,.4);color:#f472b6;border-radius:16px;padding:4px 12px;font-size:.72rem;font-weight:600;font-family:var(--font-mono, monospace);cursor:pointer;box-shadow:0 0 12px #a855f740;transition:all .2s ease}.letter__edit-btn:hover{background:linear-gradient(135deg,#a855f766,#ec489966);border-color:#f472b6b3;color:#fff;transform:translateY(-1px)}.letter__title{font-family:Space Grotesk,sans-serif;font-weight:300;font-size:clamp(1.4rem,4vw,1.9rem);color:gold;margin-bottom:var(--space-2xl);opacity:0;transform:translateY(10px);transition:all 1s var(--ease-out);letter-spacing:.05em;text-shadow:0 0 15px rgba(255,215,0,.3);text-transform:uppercase}.letter__title--visible{opacity:1;transform:translateY(0)}.letter__body{display:flex;flex-direction:column;gap:1.2rem;margin-bottom:var(--space-2xl)}.letter__paragraph{font-family:Space Grotesk,sans-serif;font-weight:300;font-size:clamp(.92rem,2.5vw,1.08rem);color:#ffffffd1;line-height:1.8;opacity:0;transform:translateY(10px);transition:all .8s cubic-bezier(.16,1,.3,1)}.letter__paragraph--visible{opacity:1;transform:translateY(0)}.letter__paragraph--highlight{color:gold;font-weight:500;font-size:clamp(1rem,2.7vw,1.15rem);text-shadow:0 0 10px rgba(255,215,0,.3)}.letter__actions{display:flex;align-items:center;justify-content:space-between;margin-top:var(--space-xl);padding-top:var(--space-md);border-top:1px solid rgba(255,255,255,.08)}.letter__skip,.letter__continue{display:flex;align-items:center;gap:var(--space-sm);background:#ffffff0d;border:1px solid rgba(255,255,255,.15);border-radius:20px;color:#ffffffd9;font-family:Space Grotesk,sans-serif;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;padding:8px 18px;cursor:pointer;transition:all .25s ease;-webkit-tap-highlight-color:transparent}.letter__skip:hover,.letter__continue:hover{background:#4fc3f72e;border-color:#4fc3f780;color:#fff;transform:translateY(-1px)}@media(max-width:768px){.letter{padding:var(--space-md)}.letter__paper{padding:var(--space-xl) var(--space-md);max-height:88vh}}.final{position:fixed;inset:0;z-index:var(--z-sequence);display:flex;flex-direction:column;align-items:center;justify-content:center;background:#000000eb;backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);transition:opacity 1.5s var(--ease-out);padding:var(--space-xl);gap:var(--space-2xl)}.final--fade-out{opacity:0;pointer-events:none}.final__prelude{font-family:var(--font-heading);font-weight:200;font-size:clamp(.95rem,3vw,1.2rem);color:var(--text-secondary);text-align:center;letter-spacing:.03em;line-height:1.8;max-width:500px;opacity:0;transform:translateY(15px);transition:all 1.5s var(--ease-out)}.final__prelude--visible{opacity:1;transform:translateY(0)}.final__question{font-family:var(--font-heading);font-weight:300;font-size:clamp(1.8rem,6vw,3rem);color:var(--text-primary);text-align:center;letter-spacing:.02em;line-height:1.3;opacity:0;transform:translateY(20px) scale(.95);transition:all 1.5s var(--ease-out)}.final__question--visible{opacity:1;transform:translateY(0) scale(1)}.final__choices{display:flex;gap:var(--space-3xl);margin-top:var(--space-xl);opacity:0;transform:translateY(20px);transition:all 1s var(--ease-out)}.final__choices--visible{opacity:1;transform:translateY(0)}.final__choice{position:relative;background:none;border:1px solid var(--glass-border);border-radius:var(--radius-xl);padding:var(--space-lg) var(--space-3xl);cursor:pointer;transition:all var(--duration-slow) var(--ease-out);overflow:hidden;-webkit-tap-highlight-color:transparent}.final__choice-glow{position:absolute;inset:0;opacity:0;transition:opacity var(--duration-slow) var(--ease-out);border-radius:inherit}.final__choice--yes .final__choice-glow{background:radial-gradient(circle at center,rgba(79,195,247,.15),transparent 70%)}.final__choice--no .final__choice-glow{background:radial-gradient(circle at center,rgba(156,108,255,.1),transparent 70%)}.final__choice:hover .final__choice-glow{opacity:1}.final__choice-text{position:relative;z-index:1;font-family:var(--font-heading);font-weight:400;font-size:clamp(1rem,3vw,1.4rem);color:var(--text-primary);letter-spacing:.15em}.final__choice:hover{border-color:var(--glass-border-hover);transform:scale(1.05)}.final__choice--yes:hover{border-color:#4fc3f74d;box-shadow:0 0 40px #4fc3f71a}.final__choice--no:hover{border-color:#9c6cff33;box-shadow:0 0 40px #9c6cff14}.final__choice:active{transform:scale(.98)}@media(max-width:768px){.final__choices{flex-direction:column;gap:var(--space-xl);width:100%;max-width:280px}.final__choice{padding:var(--space-lg) var(--space-xl);text-align:center}}.yes-path{position:fixed;inset:0;z-index:var(--z-sequence);display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--void);transition:opacity 1.5s var(--ease-out);padding:var(--space-xl);gap:var(--space-2xl)}.yes-path--fade-out{opacity:0;pointer-events:none}.yes-path__terminal{display:flex;flex-direction:column;gap:var(--space-lg);align-items:center}.yes-path__line{opacity:0;transform:translateY(10px);transition:all 1s var(--ease-out)}.yes-path__line--visible{opacity:1;transform:translateY(0)}.yes-path__cursor{color:var(--accent-cool);margin-right:var(--space-sm);animation:blinkCaret 1s step-end infinite;font-size:.8rem}.yes-path__connection{font-family:var(--font-mono);font-size:clamp(.9rem,2.5vw,1.1rem);color:var(--accent-cool);letter-spacing:.05em}.yes-path__follow-up{font-family:var(--font-heading);font-weight:200;font-size:clamp(1rem,3vw,1.3rem);color:var(--text-secondary);letter-spacing:.03em}.yes-path__dots{display:flex;gap:var(--space-sm)}.yes-path__dot{width:4px;height:4px;border-radius:50%;background:var(--accent-cool);animation:dotPulse 1.5s ease-in-out infinite}@keyframes dotPulse{0%,to{opacity:.2;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}}.no-path{position:fixed;inset:0;z-index:var(--z-sequence);display:flex;flex-direction:column;align-items:center;justify-content:center;background:#000000f2;padding:var(--space-xl);gap:var(--space-xl)}.no-path__text{font-family:var(--font-heading);font-weight:200;font-size:clamp(1rem,3vw,1.3rem);color:var(--text-secondary);text-align:center;letter-spacing:.03em;line-height:1.8;max-width:500px;opacity:0;transform:translateY(10px);transition:all 1.5s var(--ease-out)}.no-path__text--center{position:absolute}.no-path__text--visible{opacity:1;transform:translateY(0)}.no-path__text--faded{opacity:.15;transition:opacity 2s var(--ease-out)}.no-path__choices{display:flex;flex-direction:column;gap:var(--space-xl);align-items:center;animation:fadeUp 1s var(--ease-out) forwards;opacity:0}.no-path__choice{background:none;border:1px solid var(--glass-border);border-radius:var(--radius-xl);padding:var(--space-md) var(--space-2xl);color:var(--text-secondary);font-family:var(--font-heading);font-weight:300;font-size:clamp(.9rem,2.5vw,1.1rem);letter-spacing:.05em;cursor:pointer;transition:all var(--duration-normal) var(--ease-out);min-width:250px;text-align:center;-webkit-tap-highlight-color:transparent}.no-path__choice:hover{border-color:var(--glass-border-hover);color:var(--text-primary);background:var(--glass-bg)}.no-path__choice:active{transform:scale(.98)}.no-path__ending{display:flex;flex-direction:column;align-items:center;gap:var(--space-xl);max-width:500px}.no-path__chat-btn{display:flex;align-items:center;gap:var(--space-sm);background:none;border:1px solid rgba(79,195,247,.2);border-radius:var(--radius-full);padding:var(--space-sm) var(--space-xl);color:var(--accent-cool);font-family:var(--font-mono);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:all var(--duration-normal) var(--ease-out);animation:fadeIn 1s var(--ease-out) forwards;opacity:0;margin-top:var(--space-lg);-webkit-tap-highlight-color:transparent}.no-path__chat-btn:hover{border-color:#4fc3f766;box-shadow:0 0 20px #4fc3f71a}.no-path__chat-dot{width:6px;height:6px;border-radius:50%;background:var(--accent-cool);animation:discoveredPulse 2s ease-in-out infinite}.no-path__leave-btn{background:none;border:1px solid var(--glass-border);border-radius:var(--radius-full);padding:var(--space-sm) var(--space-xl);color:var(--text-muted);font-family:var(--font-mono);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:all var(--duration-normal) var(--ease-out);animation:fadeIn 1s var(--ease-out) forwards;opacity:0;margin-top:var(--space-lg);-webkit-tap-highlight-color:transparent}.no-path__leave-btn:hover{color:var(--text-secondary);border-color:var(--glass-border-hover)}@media(max-width:768px){.no-path__choice{min-width:220px;padding:var(--space-md) var(--space-xl)}}.chat{position:fixed;inset:0;z-index:var(--z-sequence, 8000);display:flex;flex-direction:column;background:radial-gradient(circle at 50% 0%,#141937f2,#080a18fa 70%,#05060f);animation:chatFadeIn .6s cubic-bezier(.16,1,.3,1) forwards;opacity:0;width:100%;max-width:100vw;overflow-x:hidden;box-sizing:border-box}@keyframes chatFadeIn{0%{opacity:0;transform:scale(.99)}to{opacity:1;transform:scale(1)}}.chat__header{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;padding-top:calc(14px + var(--safe-top, 0px));background:#0a0c1cd1;border-bottom:1px solid rgba(255,255,255,.08);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);min-height:64px;flex-shrink:0;box-shadow:0 4px 30px #0006;position:relative;z-index:20}.chat__header:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(99,102,241,.4) 30%,rgba(168,85,247,.4) 70%,transparent 100%)}.chat__header-info{display:flex;align-items:center;gap:14px}.chat__header-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#6366f14d,#a855f74d);border:1.5px solid rgba(165,180,252,.3);display:flex;align-items:center;justify-content:center;position:relative;box-shadow:0 0 15px #6366f140;flex-shrink:0}.chat__online-dot{width:9px;height:9px;border-radius:50%;background:#10b981;position:absolute;bottom:-1px;right:-1px;border:2px solid #080a18;box-shadow:0 0 10px #10b981;animation:onlinePulse 2.5s ease-in-out infinite alternate}@keyframes onlinePulse{0%{box-shadow:0 0 4px #10b981}to{box-shadow:0 0 12px #10b981;transform:scale(1.1)}}.chat__header-text{display:flex;flex-direction:column;gap:2px}.chat__header-name{font-family:Space Grotesk,system-ui,-apple-system,sans-serif;font-weight:600;font-size:.95rem;color:#f8fafc;letter-spacing:.02em;text-shadow:0 0 10px rgba(248,250,252,.2)}.chat__header-status{font-family:Space Grotesk,monospace;font-size:.62rem;color:#94a3b8;letter-spacing:.12em;text-transform:uppercase}.chat__header-meta{display:flex;align-items:center;gap:10px}.chat__call-btn{background:linear-gradient(135deg,#6366f133,#a855f726);border:1px solid rgba(165,180,252,.35);border-radius:20px;color:#c7d2fe;font-family:Space Grotesk,monospace;font-size:.72rem;font-weight:600;letter-spacing:.08em;padding:7px 16px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:all .25s cubic-bezier(.16,1,.3,1);box-shadow:0 2px 10px #0003}.chat__call-btn:hover{background:linear-gradient(135deg,#6366f166,#a855f759);border-color:#a5b4fc;color:#fff;box-shadow:0 0 20px #6366f166;transform:translateY(-1px)}.chat__call-btn:active{transform:translateY(0)}.chat__role-btn{background:#0f1226b3;border:1px solid rgba(255,255,255,.12);border-radius:20px;color:#94a3b8;font-family:Space Grotesk,monospace;font-size:.68rem;font-weight:500;letter-spacing:.08em;padding:7px 15px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:all .25s ease}.chat__role-btn:hover{background:#ffffff1a;border-color:#4fc3f766;color:#fff}.chat__role-btn--active{background:#4fc3f726;border-color:#4fc3f799;color:#38bdf8;box-shadow:0 0 16px #38bdf840}.chat__role-dot{width:7px;height:7px;border-radius:50%;background:#64748b;transition:background .2s ease,box-shadow .2s ease}.chat__role-btn--active .chat__role-dot{background:#38bdf8;box-shadow:0 0 8px #38bdf8}.chat__back-btn{background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:20px;color:#cbd5e1;font-family:Space Grotesk,monospace;font-size:.7rem;letter-spacing:.08em;padding:7px 15px;cursor:pointer;transition:all .25s cubic-bezier(.16,1,.3,1);white-space:nowrap}.chat__back-btn:hover{background:#ffffff1f;border-color:#ffffff40;color:#fff;transform:translateY(-1px)}.chat__messages{flex:1;overflow-y:auto;overflow-x:hidden;padding:24px;display:flex;flex-direction:column;gap:16px;width:100%;box-sizing:border-box;scroll-behavior:smooth}.chat__messages.custom-scrollbar::-webkit-scrollbar{width:6px}.chat__messages.custom-scrollbar::-webkit-scrollbar-track{background:transparent}.chat__messages.custom-scrollbar::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:10px}.chat__messages.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:#6366f166}.chat__message{display:flex;animation:messageSlideIn .35s cubic-bezier(.16,1,.3,1) forwards;opacity:0;position:relative;width:100%;min-width:0;box-sizing:border-box}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.chat__message--me{justify-content:flex-end}.chat__message--received{justify-content:flex-start}.chat__message--system{justify-content:center}.chat__message-wrapper{display:flex;align-items:center;position:relative;touch-action:pan-y;max-width:100%;min-width:0;box-sizing:border-box}.chat__message--me .chat__message-wrapper{justify-content:flex-end}.chat__message--received .chat__message-wrapper{justify-content:flex-start}.chat__swipe-reply-icon{position:absolute;left:-32px;top:50%;transform:translateY(-50%);color:#38bdf8;display:flex;align-items:center;justify-content:center;background:#38bdf826;border-radius:50%;width:26px;height:26px;box-shadow:0 0 10px #38bdf84d}.chat__message-system{display:flex;align-items:center;gap:8px;font-family:Space Grotesk,monospace;font-size:.7rem;color:#e2e8f0bf;letter-spacing:.05em;padding:8px 18px;background:#1e234666;border:1px solid rgba(165,180,252,.2);border-radius:20px;box-shadow:0 4px 15px #0003;backdrop-filter:blur(10px)}.chat__message-system svg{color:#a5b4fc;opacity:.8}.chat__message-bubble{display:block;position:relative;width:fit-content;max-width:72%;min-width:65px;padding:8px 12px 6px 14px;border-radius:18px;box-sizing:border-box;word-wrap:break-word;overflow-wrap:break-word;word-break:normal;transition:transform .2s ease,box-shadow .2s ease}.chat__message-bubble:after{content:"";display:table;clear:both}.chat__message--me .chat__message-bubble{background:linear-gradient(135deg,#6366f147,#4fc3f738);border:1px solid rgba(165,180,252,.32);border-bottom-right-radius:4px;box-shadow:0 6px 20px #00000059,0 0 15px #6366f11f;backdrop-filter:blur(12px)}.chat__message--me .chat__message-bubble:hover{border-color:#a5b4fc80;box-shadow:0 8px 25px #0006,0 0 20px #6366f133}.chat__message--received .chat__message-bubble{background:linear-gradient(135deg,#141830d9,#0f1226e6);border:1px solid rgba(255,255,255,.12);border-bottom-left-radius:4px;box-shadow:0 6px 20px #0006;backdrop-filter:blur(12px)}.chat__message--received .chat__message-bubble:hover{border-color:#ffffff38}.chat__message-author{font-family:Space Grotesk,monospace;font-size:.65rem;color:#fbbf24;letter-spacing:.06em;margin-bottom:5px;font-weight:600;text-shadow:0 0 8px rgba(251,191,36,.3)}.chat__message-quote{background:#0000004d;border-left:3.5px solid #38bdf8;border-radius:8px;padding:6px 12px;margin-bottom:8px;display:flex;flex-direction:column;gap:2px;box-shadow:inset 0 1px 3px #0003;transition:background .2s ease,transform .15s ease}.chat__message-quote:hover{background:#00000080;transform:scale(1.01)}.chat__quote-author{font-family:Space Grotesk,monospace;font-size:.62rem;color:#38bdf8;font-weight:600}.chat__quote-snippet{font-size:.78rem;color:#ffffffbf;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat__media-photo-box{border-radius:12px;overflow:hidden;margin-bottom:8px;cursor:pointer;max-width:300px;border:1px solid rgba(255,255,255,.15);transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s ease;box-shadow:0 6px 20px #0006}.chat__media-photo-box:hover{transform:scale(1.025);box-shadow:0 10px 30px #0009,0 0 20px #6366f14d}.chat__media-photo{width:100%;height:auto;display:block;object-fit:cover;max-height:320px}.chat__media-video-box{border-radius:12px;overflow:hidden;margin-bottom:8px;max-width:320px;border:1px solid rgba(255,255,255,.15);box-shadow:0 6px 20px #0006}.chat__media-video{width:100%;height:auto;display:block;max-height:340px;border-radius:10px}.chat__audio-pill{display:flex;align-items:center;gap:12px;padding:10px 16px;background:#0a0c1c80;border-radius:24px;border:1px solid rgba(56,189,248,.25);margin-bottom:6px;box-shadow:inset 0 1px 3px #0000004d}.chat__audio-play-btn{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#38bdf8,#818cf8);border:none;color:#05060f;font-size:.85rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s ease,box-shadow .2s ease;flex-shrink:0;box-shadow:0 0 12px #38bdf866}.chat__audio-play-btn:hover{transform:scale(1.12);box-shadow:0 0 20px #38bdf8b3}.chat__audio-waves{display:flex;align-items:center;gap:4px;height:18px}.chat__audio-wave-bar{width:3.5px;height:14px;background:#fff6;border-radius:3px}.chat__audio-wave-bar--anim{animation:audioWave .75s ease-in-out infinite alternate}.chat__audio-wave-bar--anim:nth-child(2){animation-delay:.15s}.chat__audio-wave-bar--anim:nth-child(3){animation-delay:.3s}@keyframes audioWave{0%{height:4px;background:#38bdf8}to{height:18px;background:#fbbf24;box-shadow:0 0 8px #fbbf24}}.chat__audio-label{font-family:Space Grotesk,monospace;font-size:.7rem;color:#ffffffd9;letter-spacing:.05em;font-weight:500}.chat__message-text{font-size:.93rem;color:#f1f5f9;line-height:1.42;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word;word-break:normal;display:inline}.chat__message-meta{display:inline-flex;align-items:center;gap:3px;float:right;margin-left:10px;margin-top:3px;font-size:.58rem;white-space:nowrap;line-height:1;user-select:none;vertical-align:baseline}.chat__message-time{font-family:Space Grotesk,monospace;font-size:.56rem;color:#94a3b8;letter-spacing:.04em;opacity:.85;white-space:nowrap}.chat__message-read{font-size:.6rem;color:#64748b;opacity:.5;white-space:nowrap;transition:all .25s ease}.chat__message-read--read{color:#38bdf8;opacity:.9;text-shadow:0 0 6px rgba(56,189,248,.5)}.chat__message-reply-btn{position:absolute;top:50%;transform:translateY(-50%);background:#0f1226eb;border:1px solid rgba(56,189,248,.35);border-radius:50%;width:28px;height:28px;color:#38bdf8;font-size:.75rem;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:all .2s ease;box-shadow:0 4px 15px #0006;z-index:10}.chat__message--me .chat__message-reply-btn{left:-36px}.chat__message--received .chat__message-reply-btn{right:-36px}.chat__message-wrapper:hover .chat__message-reply-btn,.chat__message-bubble:hover .chat__message-reply-btn{opacity:1;pointer-events:auto}.chat__message-reply-btn:hover{background:#38bdf840;border-color:#38bdf8;color:#fff;box-shadow:0 0 15px #38bdf866;transform:translateY(-50%) scale(1.15)}.chat__recording-bar{display:flex;align-items:center;justify-content:space-between;background:#1c0a14f5;border-top:1px solid rgba(239,68,68,.5);padding:14px 24px;backdrop-filter:blur(20px);flex-shrink:0;animation:drawerSlideUp .3s cubic-bezier(.16,1,.3,1) forwards;box-shadow:0 -6px 25px #ef444426}@keyframes drawerSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.chat__recording-status{display:flex;align-items:center;gap:12px}.chat__recording-dot{width:12px;height:12px;border-radius:50%;background:#ef4444;box-shadow:0 0 12px #ef4444;animation:recPulse .9s ease-in-out infinite alternate}@keyframes recPulse{0%{opacity:.3}to{opacity:1;transform:scale(1.25)}}.chat__recording-time{font-family:Space Grotesk,monospace;font-size:.95rem;color:#fff;font-weight:600}.chat__recording-label{font-size:.85rem;color:#ffffffbf}.chat__recording-actions{display:flex;align-items:center;gap:14px}.chat__rec-btn{width:40px;height:40px;border-radius:50%;border:none;font-size:1.1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s ease,box-shadow .2s ease}.chat__rec-btn:hover{transform:scale(1.12)}.chat__rec-btn--cancel{background:#ffffff1f;color:#fff}.chat__rec-btn--send{background:#10b981;color:#fff;box-shadow:0 0 15px #10b98180}.chat__lightbox{position:fixed;inset:0;z-index:9999;background:#04050ff0;backdrop-filter:blur(24px);display:flex;align-items:center;justify-content:center;padding:24px;animation:chatFadeIn .25s ease-out forwards}.chat__lightbox-content{position:relative;max-width:90vw;max-height:90vh}.chat__lightbox-content img{max-width:100%;max-height:85vh;border-radius:16px;box-shadow:0 20px 60px #000000e6,0 0 30px #6366f140;border:1px solid rgba(255,255,255,.15)}.chat__lightbox-close{position:absolute;top:-45px;right:0;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:50%;width:36px;height:36px;color:#fff;font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.chat__lightbox-close:hover{background:#ffffff40;transform:scale(1.1)}.chat__emoji-picker{background:#0c0e1ef5;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-top:1px solid rgba(56,189,248,.25);padding:14px 20px;max-height:180px;overflow-y:auto;flex-shrink:0;animation:drawerSlideUp .25s cubic-bezier(.16,1,.3,1) forwards}.chat__emoji-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(40px,1fr));gap:8px}.chat__emoji-item{background:none;border:none;font-size:1.4rem;cursor:pointer;padding:6px;border-radius:10px;transition:transform .18s ease,background .18s ease;display:flex;align-items:center;justify-content:center;-webkit-tap-highlight-color:transparent}.chat__emoji-item:hover,.chat__emoji-item:active{background:#ffffff1f;transform:scale(1.3)}.chat__reply-bar{display:flex;align-items:center;justify-content:space-between;background:#0f122af2;border-top:1px solid rgba(56,189,248,.35);border-left:4px solid #38bdf8;padding:10px 20px;backdrop-filter:blur(16px);flex-shrink:0;animation:drawerSlideUp .2s ease-out forwards}.chat__reply-bar-content{display:flex;flex-direction:column;gap:3px;overflow:hidden}.chat__reply-bar-label{display:flex;align-items:center;gap:6px;font-family:Space Grotesk,monospace;font-size:.68rem;color:#38bdf8;font-weight:600}.chat__reply-bar-text{font-size:.82rem;color:#ffffffd9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat__reply-bar-close{background:#ffffff14;border:none;border-radius:50%;width:28px;height:28px;color:#94a3b8;font-size:.9rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.chat__reply-bar-close:hover{background:#fff3;color:#fff}.chat__input-container{padding:16px 24px;padding-bottom:calc(16px + var(--safe-bottom, 0px));border-top:1px solid rgba(255,255,255,.08);background:#080a18bf;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);flex-shrink:0;position:relative;z-index:20}.chat__input-wrapper{display:flex;align-items:flex-end;gap:8px;background:#0f1226d9;border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:8px 10px 8px 16px;transition:border-color .25s ease,box-shadow .25s ease}.chat__input-wrapper:focus-within{border-color:#6366f199;box-shadow:0 0 20px #6366f133}.chat__attach-btn,.chat__mic-btn,.chat__emoji-toggle{background:none;border:none;font-size:1.25rem;cursor:pointer;padding:6px 8px;border-radius:10px;transition:transform .2s ease,opacity .2s ease,background .2s ease;opacity:.8;display:flex;align-items:center;justify-content:center}.chat__attach-btn:hover,.chat__mic-btn:hover,.chat__emoji-toggle:hover,.chat__emoji-toggle--active{opacity:1;transform:scale(1.15);background:#ffffff14}.chat__mic-btn{color:#ef4444}.chat__input{flex:1;background:none;border:none;outline:none;color:#f8fafc;font-family:Inter,system-ui,-apple-system,sans-serif;font-size:.95rem;line-height:1.5;resize:none;min-height:26px;max-height:120px;padding:4px 0}.chat__input::placeholder{color:#64748b}.chat__send{width:40px;height:40px;border-radius:12px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#64748b;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .25s cubic-bezier(.16,1,.3,1);flex-shrink:0;-webkit-tap-highlight-color:transparent}.chat__send--active{color:#fff;background:linear-gradient(135deg,#6366f1,#a855f7);border-color:transparent;box-shadow:0 0 15px #6366f180}.chat__send--active:hover{transform:scale(1.08);box-shadow:0 0 25px #6366f1b3}.chat__input-hint{text-align:center;margin-top:8px}.chat__input-hint span{font-family:Space Grotesk,monospace;font-size:.6rem;color:#64748b;letter-spacing:.06em;opacity:.5}@media(max-width:768px){.chat__header{padding:10px 16px;padding-top:calc(10px + var(--safe-top, 0px));min-height:56px}.chat__header-info{gap:10px}.chat__header-avatar{width:34px;height:34px}.chat__header-name{font-size:.88rem}.chat__header-meta{gap:6px}.chat__call-btn,.chat__role-btn,.chat__back-btn{padding:5px 10px;font-size:.62rem}.chat__messages{padding:16px;gap:12px}.chat__message-bubble{max-width:86%;padding:8px 12px 6px;border-radius:16px}.chat__input-container{padding:10px 14px;padding-bottom:calc(10px + var(--safe-bottom, 0px))}.chat__input-wrapper{padding:6px 8px 6px 12px;border-radius:16px}.chat__send{width:36px;height:36px}.chat__message-reply-btn{display:none}}.chat__header-status--typing{color:#38bdf8!important;font-weight:600;animation:typingPulse 1.2s ease-in-out infinite alternate;text-shadow:0 0 10px rgba(56,189,248,.6)}@keyframes typingPulse{0%{opacity:.6;transform:translateY(0)}to{opacity:1;transform:translateY(-1px)}}.chat__message--typing{margin-bottom:4px}.chat__typing-bubble{display:flex!important;align-items:center;justify-content:center;gap:6px;padding:12px 18px!important;background:linear-gradient(135deg,#141830f2,#0f1226f2)!important;border:1px solid rgba(56,189,248,.3)!important;border-radius:20px!important;box-shadow:0 6px 20px #0006,0 0 15px #38bdf826!important;min-width:60px!important;width:fit-content!important}.chat__typing-dot{width:7px;height:7px;border-radius:50%;background:#38bdf8;box-shadow:0 0 8px #38bdf8cc;animation:instagramTypingBounce 1.4s ease-in-out infinite}.chat__typing-dot:nth-child(1){animation-delay:0s}.chat__typing-dot:nth-child(2){animation-delay:.2s;background:#818cf8;box-shadow:0 0 8px #818cf8cc}.chat__typing-dot:nth-child(3){animation-delay:.4s;background:#c084fc;box-shadow:0 0 8px #c084fccc}@keyframes instagramTypingBounce{0%,60%,to{transform:translateY(0) scale(.9);opacity:.4}30%{transform:translateY(-6px) scale(1.25);opacity:1}}.end-screen{position:fixed;inset:0;z-index:var(--z-sequence);display:flex;align-items:center;justify-content:center;background:var(--void);animation:fadeIn 2s var(--ease-out) forwards;opacity:0}.end-screen__content{display:flex;flex-direction:column;align-items:center;gap:var(--space-2xl)}.end-screen__text{font-family:var(--font-heading);font-weight:200;font-size:clamp(.9rem,2.5vw,1.1rem);color:var(--text-muted);letter-spacing:.05em}.end-screen__star{width:4px;height:4px;border-radius:50%;background:var(--star-white);opacity:.3;box-shadow:0 0 10px #e8e6e333;animation:orbPulse 4s ease-in-out infinite}.identity-overlay{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;background:#03030ceb;backdrop-filter:blur(25px);-webkit-backdrop-filter:blur(25px);animation:fadeIn .6s var(--ease-out) forwards}.identity-card{width:min(92%,460px);padding:32px;background:#0c0c1ee0;border:1px solid rgba(79,195,247,.25);border-radius:var(--radius-xl, 24px);box-shadow:0 20px 50px #0009,0 0 30px #4fc3f71a;text-align:center;transition:transform .3s ease;max-height:90vh;overflow-y:auto}.identity-card--shake{animation:identityShake .4s ease}@keyframes identityShake{0%,to{transform:translate(0)}20%,60%{transform:translate(-10px)}40%,80%{transform:translate(10px)}}.identity-logo{font-family:var(--font-mono, monospace);font-size:.7rem;letter-spacing:.25em;color:#4fc3f7;text-transform:uppercase;margin-bottom:8px}.identity-title{font-family:var(--font-heading, sans-serif);font-size:1.6rem;font-weight:300;color:var(--text-primary, #ffffff);letter-spacing:.02em;margin-bottom:6px}.identity-subtitle{font-family:var(--font-body, sans-serif);font-size:.85rem;color:var(--text-secondary, #a0a0c0);margin-bottom:24px}.identity-tabs{display:flex;background:#0006;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:4px;margin-bottom:20px}.identity-tab-btn{flex:1;padding:10px;background:none;border:none;border-radius:8px;color:#88a;font-family:var(--font-heading);font-size:.85rem;cursor:pointer;transition:all .2s ease}.identity-tab-btn--active{background:#4fc3f726;color:#4fc3f7;border:1px solid rgba(79,195,247,.3)}.identity-invite-banner{background:linear-gradient(135deg,#4fc3f726,#9c6cff26);border:1px solid rgba(79,195,247,.4);border-radius:12px;padding:12px;font-size:.8rem;color:#e0f7fa;margin-bottom:20px;line-height:1.4}.identity-form{display:flex;flex-direction:column;gap:14px;text-align:left}.identity-input-group{display:flex;flex-direction:column;gap:6px}.identity-input-group label{font-family:var(--font-mono, monospace);font-size:.7rem;color:#99b;letter-spacing:.08em;text-transform:uppercase}.identity-input{width:100%;padding:12px 16px;background:#0006;border:1px solid rgba(255,255,255,.15);border-radius:12px;color:#fff;font-family:var(--font-body, sans-serif);font-size:.95rem;outline:none;transition:border-color .2s ease}.identity-input:focus{border-color:#4fc3f7;box-shadow:0 0 10px #4fc3f733}.identity-error-msg{font-size:.8rem;color:#ff5252;font-family:var(--font-mono, monospace);margin-top:4px}.identity-success-msg{font-size:.8rem;color:#66bb6a;font-family:var(--font-mono, monospace);margin-top:4px}.identity-submit-btn{width:100%;padding:12px;background:linear-gradient(135deg,#4fc3f733,#9c6cff33);border:1px solid rgba(79,195,247,.4);border-radius:12px;color:#fff;font-family:var(--font-heading);font-weight:500;font-size:.95rem;cursor:pointer;transition:all .2s ease;margin-top:8px}.identity-submit-btn:hover:not(:disabled){background:linear-gradient(135deg,#4fc3f759,#9c6cff59);border-color:#4fc3f7cc;box-shadow:0 4px 15px #4fc3f74d}.identity-submit-btn:disabled{opacity:.5;cursor:not-allowed}.identity-secondary-btn{background:#ffffff0d;border:1px solid rgba(255,255,255,.12);border-radius:12px;color:#ccc;padding:10px 16px;font-size:.85rem;cursor:pointer;transition:all .2s ease}.identity-secondary-btn:hover{background:#ffffff1a;color:#fff}.identity-universe-list{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.identity-universe-item{display:flex;align-items:center;justify-content:space-between;padding:16px;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:16px;transition:all .25s ease;text-align:left}.identity-universe-item:hover{background:#4fc3f714;border-color:#4fc3f766;transform:translateY(-2px)}.identity-universe-info{display:flex;flex-direction:column}.identity-universe-title{font-family:var(--font-heading);font-weight:500;font-size:1.05rem;color:#fff}.identity-universe-sub{font-size:.78rem;color:#88a;margin-top:2px}.identity-role-badge{display:inline-block;padding:2px 8px;border-radius:6px;font-family:var(--font-mono);font-size:.65rem;text-transform:uppercase;letter-spacing:.05em;margin-top:4px}.identity-role-badge--owner{background:#ffd70026;color:gold;border:1px solid rgba(255,215,0,.3)}.identity-role-badge--admin{background:#4fc3f726;color:#4fc3f7;border:1px solid rgba(79,195,247,.3)}.identity-role-badge--traveler{background:#9c6cff26;color:#9c6cff;border:1px solid rgba(156,108,255,.3)}.identity-role-badge--guest{background:#ffffff1a;color:#aaa;border:1px solid rgba(255,255,255,.2)}.identity-enter-btn{padding:8px 14px;background:#4fc3f726;border:1px solid rgba(79,195,247,.4);border-radius:10px;color:#4fc3f7;font-size:.82rem;cursor:pointer;transition:all .2s ease}.identity-enter-btn:hover{background:#4fc3f74d;color:#fff}.identity-actions-row{display:flex;gap:10px;justify-content:center;margin-top:16px}.identity-user-tag{font-family:var(--font-mono);font-size:.78rem;color:#88a;margin-bottom:16px}.welcome-overlay{position:fixed;inset:0;z-index:9000;display:flex;align-items:center;justify-content:center;background:#030308d9;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);padding:20px;animation:welcomeFadeIn .8s ease-out forwards}@keyframes welcomeFadeIn{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.welcome-card{width:100%;max-width:440px;background:#0c0c16bf;border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:36px 28px;text-align:center;box-shadow:0 20px 50px #0009,0 0 30px #9c6cff26}.welcome-logo{font-family:Space Grotesk,sans-serif;font-size:.75rem;letter-spacing:.25em;color:gold;margin-bottom:12px;text-transform:uppercase}.welcome-title{font-family:Cinzel,serif;font-size:2rem;font-weight:400;color:#fff;margin:0 0 12px;letter-spacing:.05em}.welcome-subtitle{font-family:Space Grotesk,sans-serif;font-size:.88rem;color:#ffffffa6;line-height:1.6;margin-bottom:8px}.welcome-glowing-hint{font-family:Space Grotesk,sans-serif;font-size:.85rem;color:#c084fc;margin:0 0 28px;letter-spacing:.06em;text-shadow:0 0 12px rgba(192,132,252,.6),0 0 24px rgba(168,85,247,.4);animation:welcomeGlowPulse 2.5s ease-in-out infinite alternate}@keyframes welcomeGlowPulse{0%{opacity:.75;text-shadow:0 0 8px rgba(192,132,252,.4)}to{opacity:1;text-shadow:0 0 16px rgba(192,132,252,.9),0 0 30px rgba(240,171,252,.7)}}.welcome-actions{display:flex;flex-direction:column;gap:12px}.welcome-btn{width:100%;padding:14px 20px;border-radius:12px;font-family:Space Grotesk,sans-serif;font-size:.88rem;font-weight:500;letter-spacing:.08em;cursor:pointer;transition:all .3s cubic-bezier(.16,1,.3,1);display:flex;align-items:center;justify-content:center;gap:8px}.welcome-btn--primary{background:linear-gradient(135deg,#7c4dff,#4fc3f7);color:#fff;border:none;box-shadow:0 4px 20px #7c4dff66}.welcome-btn--primary:hover{transform:translateY(-2px);box-shadow:0 6px 25px #7c4dff99}.welcome-btn--secondary{background:#ffffff0d;color:#ffffffb3;border:1px solid rgba(255,255,255,.12)}.welcome-btn--secondary:hover{background:#ffffff1a;color:#fff;border-color:#ffffff40}.welcome-btn--jumping{background:linear-gradient(135deg,#a855f74d,#7c4dff40);color:#f0abfc;border:1px solid rgba(192,132,252,.6);box-shadow:0 0 15px #a855f759;animation:buttonJump 1.8s ease-in-out infinite}@keyframes buttonJump{0%,to{transform:translateY(0);box-shadow:0 4px 15px #a855f759}50%{transform:translateY(-8px);box-shadow:0 12px 28px #c084fcb3}}.desktop-suggestion-banner{position:fixed;bottom:28px;left:50%;transform:translate(-50%);z-index:999999;width:calc(100% - 32px);max-width:380px;background:#0a0a18eb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(79,195,247,.35);border-radius:18px;padding:16px 20px;box-shadow:0 16px 40px #000000b3,0 0 25px #4fc3f740;animation:bannerSlideUp .6s cubic-bezier(.16,1,.3,1) forwards}@keyframes bannerSlideUp{0%{opacity:0;transform:translate(-50%,25px)}to{opacity:1;transform:translate(-50%)}}.desktop-suggestion-content{display:flex;flex-direction:column;align-items:center;text-align:center}.desktop-suggestion-tag{font-family:Space Grotesk,sans-serif;font-size:.65rem;letter-spacing:.22em;color:gold;margin-bottom:6px;text-transform:uppercase}.desktop-suggestion-text{font-family:Space Grotesk,sans-serif;font-size:.8rem;color:#ffffffe0;margin:0 0 12px;line-height:1.45}.desktop-suggestion-btn{background:#4fc3f71f;border:1px solid rgba(79,195,247,.35);border-radius:20px;padding:8px 18px;color:#fff;font-family:Space Grotesk,sans-serif;font-size:.75rem;letter-spacing:.05em;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .2s ease}.desktop-suggestion-btn:hover,.desktop-suggestion-btn:active{background:#4fc3f740;border-color:#4fc3f799}.desktop-suggestion-x{font-size:.65rem;opacity:.7}.call-modal{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;animation:callFadeIn .3s ease-out forwards}@keyframes callFadeIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.call-modal__backdrop{position:absolute;inset:0;background:#050714d9;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.call-modal__container{position:relative;width:92%;max-width:680px;height:80vh;max-height:600px;background:#121628bf;border:1px solid rgba(255,255,255,.12);border-radius:24px;box-shadow:0 24px 60px #0009,0 0 40px #6366f133;display:flex;flex-direction:column;overflow:hidden}.call-modal__header{height:54px;padding:0 20px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.08);background:#ffffff05}.call-modal__badge{display:flex;align-items:center;gap:8px;font-size:.75rem;font-weight:700;letter-spacing:.08em;color:#a5b4fc}.call-modal__dot{width:8px;height:8px;border-radius:50%;background:#10b981;box-shadow:0 0 10px #10b981;animation:dotPulse 1.5s infinite}@keyframes dotPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.4);opacity:.6}}.call-modal__timer{font-family:monospace;font-size:.9rem;font-weight:600;color:#e2e8f0;background:#ffffff0f;padding:4px 10px;border-radius:12px}.call-modal__permission-error{padding:8px 16px;background:#ef444426;border-bottom:1px solid rgba(239,68,68,.3);font-size:.8rem;color:#fca5a5;text-align:center;line-height:1.4}.call-modal__peer-muted-badge{position:absolute;bottom:12px;left:12px;background:#000000a6;color:#fca5a5;font-size:.75rem;padding:4px 10px;border-radius:20px;backdrop-filter:blur(6px)}.call-modal__body{flex:1;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.call-modal__video-grid{width:100%;height:100%;position:relative;background:#090d16}.call-modal__video-remote{width:100%;height:100%;position:relative;display:flex;align-items:center;justify-content:center}.call-modal__video-elem{width:100%;height:100%;object-fit:cover}.call-modal__remote-audio{position:absolute;width:1px;height:1px;opacity:.01;pointer-events:none}.call-modal__video-placeholder{display:flex;flex-direction:column;align-items:center;gap:16px;color:#94a3b8}.call-modal__video-local{position:absolute;top:16px;right:16px;width:140px;height:95px;border-radius:14px;overflow:hidden;border:2px solid rgba(255,255,255,.25);box-shadow:0 8px 20px #00000080;background:#1e293b}.call-modal__video-elem--off{opacity:.2}.call-modal__local-off-label{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:.7rem;color:#94a3b8}.call-modal__avatar-container{display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative}.call-modal__pulse-rings{position:absolute;width:160px;height:160px;pointer-events:none}.ring{position:absolute;inset:0;border-radius:50%;border:1px solid rgba(99,102,241,.3);animation:rippleRing 3s infinite cubic-bezier(.215,.61,.355,1)}.ring--2{animation-delay:1s}.ring--3{animation-delay:2s}@keyframes rippleRing{0%{transform:scale(.8);opacity:.8}to{transform:scale(2.2);opacity:0}}.call-modal__avatar-orb{width:110px;height:110px;border-radius:50%;background:linear-gradient(135deg,#6366f1,#a855f7);display:flex;align-items:center;justify-content:center;font-size:2.6rem;font-weight:700;color:#fff;box-shadow:0 0 35px #6366f180;margin-bottom:20px;z-index:2}.call-modal__peer-name{font-size:1.4rem;font-weight:600;color:#f8fafc;margin:0 0 6px;z-index:2}.call-modal__status-text{font-size:.88rem;color:#a5b4fc;margin:0;z-index:2}.call-modal__actions{height:90px;padding:0 20px;display:flex;align-items:center;justify-content:center;border-top:1px solid rgba(255,255,255,.08);background:#0a0e1c99;position:relative;z-index:10}.call-modal__incoming-actions,.call-modal__active-controls{display:flex;align-items:center;gap:24px;position:relative;z-index:10}.call-btn{display:flex;flex-direction:column;align-items:center;gap:6px;background:transparent;border:none;color:#e2e8f0;cursor:pointer;font-size:.75rem;transition:all .2s ease;position:relative;z-index:10;pointer-events:auto}.call-btn svg{width:48px;height:48px;padding:12px;border-radius:50%;transition:transform .2s ease,box-shadow .2s ease}.call-btn:hover svg{transform:scale(1.08)}.call-btn--accept svg{background:#10b981;color:#fff;box-shadow:0 4px 16px #10b98166}.call-btn--decline svg,.call-btn--end svg{background:#ef4444;color:#fff;box-shadow:0 4px 16px #ef444466}.call-btn--tool svg{background:#ffffff1a;color:#f1f5f9;border:1px solid rgba(255,255,255,.15)}.call-btn--active-danger svg{background:#ef4444;color:#fff;border-color:#ef4444}.call-btn--echo svg{background:#6366f140;color:#a5b4fc;border:1px solid #6366f1;box-shadow:0 0 12px #6366f14d}.call-btn--echo:hover svg{background:#6366f1;color:#fff;box-shadow:0 0 20px #6366f199}.call-modal__ended-actions{display:flex;align-items:center;gap:20px}.call-btn--return-chat svg{background:linear-gradient(135deg,#6366f1,#a855f7);color:#fff;box-shadow:0 4px 18px #6366f180}.call-btn--return-chat:hover svg{transform:scale(1.12);box-shadow:0 0 25px #a855f7b3}.call-btn--close-modal svg{background:#ffffff1a;color:#94a3b8;border:1px solid rgba(255,255,255,.15)}.call-btn--close-modal:hover svg{color:#fff;background:#fff3}@media(max-width:640px){.call-modal__container{width:95%;height:85vh}.call-modal__video-local{width:100px;height:70px;top:10px;right:10px}}.notif-container{position:fixed;top:20px;right:20px;z-index:9990;display:flex;flex-direction:column;gap:12px;max-width:360px;width:90%;pointer-events:none}.notif-toast{pointer-events:auto;background:#0f172ae0;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:14px;box-shadow:0 12px 30px #0006,0 0 20px #6366f126;animation:notifSlideIn .35s cubic-bezier(.16,1,.3,1) forwards;transition:transform .2s ease,opacity .2s ease}@keyframes notifSlideIn{0%{opacity:0;transform:translate(40px) scale(.95)}to{opacity:1;transform:translate(0) scale(1)}}.notif-toast--call{border-color:#6366f180;box-shadow:0 12px 30px #00000080,0 0 25px #6366f14d}.notif-toast__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.notif-toast__type-tag{font-size:.68rem;font-weight:700;letter-spacing:.06em;color:#a5b4fc}.notif-toast__close{background:transparent;border:none;color:#94a3b8;cursor:pointer;font-size:.85rem;padding:2px 6px;border-radius:4px;transition:color .2s ease}.notif-toast__close:hover{color:#fff}.notif-toast__body{display:flex;gap:12px;align-items:flex-start;margin-bottom:10px}.notif-toast__avatar{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,#6366f1,#a855f7);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:1rem;flex-shrink:0}.notif-toast__content{flex:1;min-width:0}.notif-toast__title{margin:0 0 2px;font-size:.9rem;font-weight:600;color:#f8fafc;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notif-toast__text{margin:0 0 4px;font-size:.8rem;color:#cbd5e1;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.notif-toast__time{font-size:.68rem;color:#64748b}.notif-toast__actions{display:flex;gap:8px;justify-content:flex-end}.notif-toast__btn{padding:6px 12px;border-radius:8px;font-size:.75rem;font-weight:600;border:none;cursor:pointer;transition:all .2s ease}.notif-toast__btn--primary{background:#6366f1;color:#fff}.notif-toast__btn--primary:hover{background:#4f46e5}.notif-toast__btn--accept{background:#10b981;color:#fff}.notif-toast__btn--decline{background:#ef4444;color:#fff}.notif-toast__btn--secondary{background:#ffffff14;color:#94a3b8}.notif-toast__btn--secondary:hover{background:#ffffff26;color:#fff}.portal-overlay{position:fixed;inset:0;z-index:999;display:flex;align-items:center;justify-content:center;background:#03000ad9;backdrop-filter:blur(12px);animation:portalFadeIn .6s cubic-bezier(.16,1,.3,1) forwards}@keyframes portalFadeIn{0%{opacity:0;backdrop-filter:blur(0px)}to{opacity:1;backdrop-filter:blur(12px)}}.portal-card{position:relative;width:90%;max-width:440px;padding:40px 32px;background:#0f0720bf;border:1px solid rgba(192,132,252,.3);border-radius:24px;box-shadow:0 0 60px #a855f740,inset 0 0 30px #c084fc1a;text-align:center;overflow:hidden}.portal-card__glow{position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle at center,rgba(168,85,247,.15) 0%,transparent 60%);pointer-events:none;animation:portalGlowPulse 4s ease-in-out infinite alternate}@keyframes portalGlowPulse{0%{transform:scale(.9);opacity:.5}to{transform:scale(1.1);opacity:.9}}.portal-card__content{position:relative;z-index:2}.portal-card__badge{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;background:#a855f726;border:1px solid rgba(192,132,252,.3);border-radius:999px;font-family:Inter,monospace,sans-serif;font-size:.75rem;letter-spacing:.15em;color:#c084fc;margin-bottom:24px}.portal-card__dot{width:6px;height:6px;border-radius:50%;background:#f0abfc;box-shadow:0 0 8px #f0abfc;animation:blinkDot 1.5s ease-in-out infinite}@keyframes blinkDot{0%,to{opacity:1}50%{opacity:.2}}.portal-card__title{font-family:Inter,sans-serif;font-size:1.35rem;font-weight:700;letter-spacing:.08em;color:#f3e8ff;margin:0 0 12px;text-shadow:0 0 20px rgba(192,132,252,.4)}.portal-card__prompt{font-family:Inter,sans-serif;font-size:1.1rem;letter-spacing:.2em;color:#a855f7;margin:0 0 32px}.portal-card__actions{display:flex;flex-direction:column;gap:14px}.portal-btn{display:flex;align-items:center;justify-content:center;gap:10px;padding:16px 24px;border-radius:14px;font-family:Inter,sans-serif;font-size:.95rem;font-weight:600;letter-spacing:.1em;cursor:pointer;transition:all .25s cubic-bezier(.16,1,.3,1)}.portal-btn--enter{background:linear-gradient(135deg,#a855f7,#7e22ce);color:#fff;border:none;box-shadow:0 4px 20px #a855f766}.portal-btn--enter:hover{transform:translateY(-2px);box-shadow:0 6px 28px #a855f799;background:linear-gradient(135deg,#c084fc,#9333ea)}.portal-btn--notyet{background:#ffffff0d;color:#d8b4fe;border:1px solid rgba(192,132,252,.2)}.portal-btn--notyet:hover{background:#ffffff1a;border-color:#c084fc66;color:#fff}.portal-btn__arrow{font-size:1.1rem;transition:transform .2s ease}.portal-btn--enter:hover .portal-btn__arrow{transform:translate(4px)}.virtual-joystick{position:fixed;bottom:40px;left:40px;width:120px;height:120px;z-index:1000;touch-action:none;user-select:none;-webkit-user-select:none}.virtual-joystick__base{position:absolute;inset:0;border-radius:50%;background:#a855f726;border:2px solid rgba(192,132,252,.4);box-shadow:0 0 20px #a855f74d;backdrop-filter:blur(8px)}.virtual-joystick__knob{position:absolute;top:50%;left:50%;width:50px;height:50px;margin-top:-25px;margin-left:-25px;border-radius:50%;background:linear-gradient(135deg,#c084fc,#9333ea);border:2px solid #ffffff;box-shadow:0 0 15px #c084fccc;pointer-events:none;transition:transform .05s linear}.virtual-joystick--active .virtual-joystick__base{background:#a855f74d;border-color:#f0abfccc}.game-container{position:fixed;inset:0;z-index:900;background:#020005;overflow:hidden}.game-canvas{width:100%;height:100%;display:block}.game-hud{position:fixed;top:24px;left:24px;right:24px;display:flex;justify-content:space-between;align-items:center;z-index:950;pointer-events:none}.game-hud__item{display:flex;flex-direction:column;gap:4px;padding:12px 20px;background:#0f0720bf;border:1px solid rgba(192,132,252,.3);border-radius:16px;backdrop-filter:blur(12px);box-shadow:0 4px 20px #0006}.game-hud__label{font-family:Inter,monospace,sans-serif;font-size:.7rem;letter-spacing:.15em;color:#c084fc}.game-hud__val{font-family:Inter,sans-serif;font-size:1.35rem;font-weight:700;color:#fff;letter-spacing:.05em}.game-hud__val--urgent{color:#ef4444;animation:pulseUrgent .8s ease-in-out infinite alternate}@keyframes pulseUrgent{0%{opacity:1;transform:scale(1)}to{opacity:.6;transform:scale(1.08)}}.game-controls-hint{position:fixed;bottom:24px;left:50%;transform:translate(-50%);padding:10px 20px;background:#0f072099;border:1px solid rgba(192,132,252,.2);border-radius:999px;font-family:Inter,monospace,sans-serif;font-size:.75rem;letter-spacing:.15em;color:#d8b4fe;z-index:950;pointer-events:none}.game-modal-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#03000ad9;backdrop-filter:blur(16px);animation:fadeIn .4s ease forwards}.game-modal-card{position:relative;width:90%;max-width:460px;padding:40px 32px;background:#0f0720d9;border:1px solid rgba(192,132,252,.35);border-radius:24px;box-shadow:0 0 60px #a855f74d;text-align:center}.game-modal__badge{display:inline-block;padding:6px 16px;background:#a855f733;border:1px solid rgba(192,132,252,.4);border-radius:999px;font-family:Inter,monospace,sans-serif;font-size:.75rem;letter-spacing:.2em;color:#f0abfc;margin-bottom:20px}.game-modal__badge--lost{background:#ef444433;border-color:#ef444466;color:#fca5a5}.game-modal__title{font-family:Inter,sans-serif;font-size:1.8rem;font-weight:700;color:#fff;margin:0 0 10px;letter-spacing:.02em}.game-modal__subtitle{font-family:Inter,sans-serif;font-size:1rem;color:#c084fc;margin:0 0 32px;line-height:1.5}.game-modal__actions{display:flex;flex-direction:column;gap:14px}.game-btn{display:flex;align-items:center;justify-content:center;padding:16px 24px;border-radius:14px;font-family:Inter,sans-serif;font-size:.95rem;font-weight:600;letter-spacing:.05em;cursor:pointer;transition:all .25s ease}.game-btn--primary{background:linear-gradient(135deg,#a855f7,#7e22ce);color:#fff;border:none;box-shadow:0 4px 20px #a855f766}.game-btn--primary:hover{transform:translateY(-2px);box-shadow:0 6px 28px #a855f799}.game-btn--secondary{background:#ffffff0d;color:#d8b4fe;border:1px solid rgba(192,132,252,.2)}.game-btn--secondary:hover{background:#ffffff1a;border-color:#c084fc66;color:#fff}:root{--void: #000000;--deep-space: #050510;--midnight: #0a0a1a;--cosmos: #0d1117;--nebula-purple: #2d1b69;--nebula-blue: #1a1a4e;--nebula-rose: #3d1a3e;--star-white: #e8e6e3;--star-gold: #ffd700;--star-blue: #7ec8e3;--accent-warm: #ff6b35;--accent-cool: #4fc3f7;--accent-rose: #e91e8a;--accent-violet: #9c6cff;--glass-bg: rgba(255, 255, 255, .03);--glass-bg-hover: rgba(255, 255, 255, .06);--glass-border: rgba(255, 255, 255, .08);--glass-border-hover: rgba(255, 255, 255, .15);--glass-shadow: 0 8px 32px rgba(0, 0, 0, .4);--text-primary: rgba(255, 255, 255, .92);--text-secondary: rgba(255, 255, 255, .55);--text-muted: rgba(255, 255, 255, .25);--text-accent: var(--accent-cool);--font-heading: "Outfit", -apple-system, sans-serif;--font-body: "Space Grotesk", -apple-system, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--space-3xl: 64px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--duration-fast: .15s;--duration-normal: .3s;--duration-slow: .6s;--duration-cinematic: 1.2s;--z-canvas: 0;--z-overlay: 100;--z-hud: 200;--z-modal: 300;--z-sequence: 400;--z-loading: 500;--z-top: 999;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--safe-right: env(safe-area-inset-right, 0px)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body,#root{width:100%;height:100%;overflow:hidden;background:var(--void);color:var(--text-primary);font-family:var(--font-body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;touch-action:none}.text-heading{font-family:var(--font-heading);font-weight:300;letter-spacing:.02em;line-height:1.2}.text-body{font-family:var(--font-body);font-weight:300;letter-spacing:.01em;line-height:1.7}.text-mono{font-family:var(--font-mono);font-weight:400;font-size:.85em;letter-spacing:.04em}.text-xs{font-size:.7rem}.text-sm{font-size:.8rem}.text-base{font-size:1rem}.text-lg{font-size:1.25rem}.text-xl{font-size:1.5rem}.text-2xl{font-size:2rem}.text-3xl{font-size:2.5rem}.text-4xl{font-size:3.5rem}.glass-panel{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:var(--glass-shadow);transition:all var(--duration-normal) var(--ease-out)}.glass-panel:hover{background:var(--glass-bg-hover);border-color:var(--glass-border-hover)}.glass-panel--glow{box-shadow:var(--glass-shadow),0 0 30px #4fc3f70d,inset 0 1px #ffffff0d}.film-grain{position:fixed;inset:-50%;width:200%;height:200%;z-index:var(--z-overlay);pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='1'/%3E%3C/svg%3E");animation:grain .5s steps(1) infinite}@keyframes grain{0%,to{transform:translate(0)}10%{transform:translate(-5%,-10%)}20%{transform:translate(-15%,5%)}30%{transform:translate(7%,-25%)}40%{transform:translate(-5%,25%)}50%{transform:translate(-15%,10%)}60%{transform:translate(15%)}70%{transform:translateY(15%)}80%{transform:translate(3%,35%)}90%{transform:translate(-10%,10%)}}.scanlines{position:fixed;inset:0;z-index:var(--z-overlay);pointer-events:none;opacity:.03;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(255,255,255,.03) 2px,rgba(255,255,255,.03) 4px)}.animated-border{position:relative;overflow:hidden}.animated-border:before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(135deg,#4fc3f74d,#9c6cff1a,#ff6b351a,#4fc3f74d);background-size:300% 300%;animation:borderGlow 6s ease-in-out infinite;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}@keyframes borderGlow{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.fade-in{animation:fadeIn var(--duration-cinematic) var(--ease-out) forwards;opacity:0}.fade-up{animation:fadeUp var(--duration-cinematic) var(--ease-out) forwards;opacity:0}.type-reveal{overflow:hidden;white-space:nowrap;border-right:2px solid var(--text-muted);animation:typeReveal 3s steps(40) forwards,blinkCaret .7s step-end infinite}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes typeReveal{0%{max-width:0}to{max-width:100%}}@keyframes blinkCaret{0%,to{border-color:transparent}50%{border-color:var(--text-muted)}}.custom-cursor{cursor:none}@media(max-width:768px){:root{--space-lg: 16px;--space-xl: 24px;--space-2xl: 32px;--space-3xl: 48px}.text-4xl{font-size:2rem}.text-3xl{font-size:1.75rem}.text-2xl{font-size:1.5rem}.text-xl{font-size:1.25rem}}@media(max-width:480px){.text-4xl{font-size:1.75rem}.text-3xl{font-size:1.5rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.film-grain,.scanlines{display:none}}.custom-scrollbar::-webkit-scrollbar{width:4px}.custom-scrollbar::-webkit-scrollbar-track{background:transparent}.custom-scrollbar::-webkit-scrollbar-thumb{background:var(--glass-border);border-radius:var(--radius-full)}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:var(--glass-border-hover)}::selection{background:#4fc3f733;color:var(--text-primary)}.r27-bypass-btn{position:fixed;top:16px;right:16px;z-index:9999;display:inline-flex;align-items:center;gap:6px;padding:6px 14px;font-family:var(--font-mono, monospace);font-size:.75rem;font-weight:600;letter-spacing:.08em;color:#ffffffd9;background:#0a0a1acc;border:1px solid rgba(79,195,247,.35);border-radius:20px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);cursor:pointer;box-shadow:0 4px 15px #00000080,0 0 12px #4fc3f733;transition:all .25s cubic-bezier(.16,1,.3,1);user-select:none}.r27-bypass-btn:hover{background:#4fc3f72e;border-color:#4fc3f7d9;color:#fff;box-shadow:0 4px 20px #4fc3f766;transform:translateY(-1px) scale(1.03)}.r27-bypass-btn:active{transform:translateY(0) scale(.97)}.r27-bypass-dot{width:6px;height:6px;border-radius:50%;background:#4fc3f7;box-shadow:0 0 8px #4fc3f7;animation:r27Pulse 2s infinite ease-in-out}@keyframes r27Pulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.3)}}.r27-admin-bar{position:fixed;top:16px;right:16px;z-index:9999;display:flex;align-items:center;gap:8px}
