:root{--bg-deep: #0a0413;--bg-mid: #170a26;--ink: #fbe9ff;--ink-dim: #b79de0;--ink-faint: #7d5fa8;--accent: #db74ff;--accent-2: #16d0d6;--panel: rgba(23, 10, 38, .72);--border: rgba(205, 179, 255, .18);--font-display: "Bebas Neue", "Lilita One", sans-serif;--font-body: "Libre Franklin", system-ui, sans-serif}*{box-sizing:border-box}html,body{margin:0;padding:0;height:100%;background:radial-gradient(120% 100% at 50% 18%,var(--bg-mid) 0%,var(--bg-deep) 70%);color:var(--ink);font-family:var(--font-body);overflow:hidden;-webkit-font-smoothing:antialiased;overscroll-behavior:none}.lab{position:fixed;inset:0;z-index:0;touch-action:none}.lab canvas{display:block}.hero{position:fixed;top:clamp(1.2rem,4vh,3rem);left:0;right:0;z-index:2;text-align:center;pointer-events:none;padding:0 1rem}.hero:before{content:"";position:absolute;left:50%;top:-2.5rem;transform:translate(-50%);width:min(960px,98vw);height:260px;background:radial-gradient(ellipse 62% 78% at 50% 38%,#0a04139e,#0a041300 72%);z-index:-1;pointer-events:none}.hero__title{margin:0;font-family:var(--font-display);font-weight:400;font-size:clamp(2.6rem,9vw,7rem);line-height:.95;letter-spacing:.04em;background:linear-gradient(100deg,#ff9ad6,#db74ff,#16d0d6,#f6ff94,#ff9ad6);background-size:300% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;animation:titleGradient 14s linear infinite}.hero__subtitle{margin:.5rem 0 0;font-size:clamp(.7rem,1.6vw,.95rem);letter-spacing:.28em;text-transform:uppercase;color:var(--ink-dim)}.hero__hint{margin:.9rem 0 0;font-size:clamp(.62rem,1.3vw,.78rem);letter-spacing:.18em;text-transform:uppercase;color:#e9dfffeb;transition:opacity .6s ease}@keyframes titleGradient{to{background-position:300% 50%}}.orb-label{position:fixed;z-index:3;top:0;left:0;width:min(78vw,230px);padding:.9rem 1.05rem 1rem;display:flex;flex-direction:column;gap:.25rem;background:var(--panel);backdrop-filter:blur(14px) saturate(1.3);-webkit-backdrop-filter:blur(14px) saturate(1.3);border:1px solid var(--border);border-radius:16px;color:var(--ink);text-decoration:none;box-shadow:0 20px 60px -20px #000c;transform:translate(-50%,calc(-100% - 22px));opacity:0;transition:opacity .25s ease;will-change:transform,opacity}.orb-label[data-show]{opacity:1}.orb-label__num{font-family:var(--font-display);font-size:1.5rem;line-height:1;color:var(--accent)}.orb-label__title{font-weight:600;font-size:1rem;line-height:1.2}.orb-label__intro{font-size:.78rem;line-height:1.35;color:var(--ink-dim)}.orb-label__cta{margin-top:.35rem;font-size:.72rem;letter-spacing:.06em;color:var(--accent-2)}.ui{position:fixed;top:max(.9rem,env(safe-area-inset-top));left:.9rem;z-index:4;display:flex;gap:.6rem}.ui__btn{width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--border);border-radius:50%;background:var(--panel);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:var(--ink);cursor:pointer;transition:background .25s ease,transform .25s ease,border-color .25s ease}.ui__btn svg{width:20px;height:20px}.ui__btn:hover{background:#db74ff38;border-color:var(--accent);transform:translateY(-1px)}.ui__btn:active{transform:scale(.94)}.ui__btn:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}.modal{position:fixed;inset:0;z-index:10;display:grid;place-items:center}.modal[hidden]{display:none}.modal__backdrop{position:absolute;inset:0;background:#05020a99;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.modal__panel{position:relative;width:min(92vw,520px);padding:2.6rem 2rem 2rem;border-radius:22px;border:1px solid var(--border);background:linear-gradient(150deg,#28103cf5,#0d061af5);text-align:center;box-shadow:0 30px 90px -30px #000000e6}.modal__panel h2{margin:0 0 1.3rem;font-family:var(--font-display);font-weight:400;font-size:2.6rem;letter-spacing:.04em;background:linear-gradient(100deg,#ff9ad6,#16d0d6);-webkit-background-clip:text;background-clip:text;color:transparent}.modal__tools{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center}.modal__tools span{font-size:.8rem;padding:.45rem .85rem;border-radius:999px;background:#db74ff1f;border:1px solid var(--border);color:var(--ink-dim)}.modal__tools b{color:var(--ink);font-weight:600}.modal__close{position:absolute;top:.7rem;right:.9rem;width:36px;height:36px;border:none;background:none;color:var(--ink-dim);font-size:1.6rem;line-height:1;cursor:pointer;border-radius:50%;transition:color .2s ease,background .2s ease}.modal__close:hover{color:var(--ink);background:#ffffff14}.loader{position:fixed;inset:0;z-index:50;display:grid;place-items:center;background:var(--bg-deep);transition:opacity .8s ease}.loader.is-hidden{opacity:0;pointer-events:none}.loader__inner{display:flex;flex-direction:column;align-items:center;gap:.6rem}.loader__label{font-size:.7rem;letter-spacing:.3em;text-transform:uppercase;color:var(--ink-faint)}.loader__pct{font-family:var(--font-display);font-size:clamp(3rem,12vw,6rem);line-height:1;color:var(--ink);font-variant-numeric:tabular-nums}.strip{position:fixed;left:0;right:0;bottom:0;z-index:5;padding:.6rem 0 max(.6rem,env(safe-area-inset-bottom));background:linear-gradient(to top,#0a0413d1 30%,#0a041300)}.strip[hidden]{display:none}.strip:before,.strip:after{content:"";position:absolute;top:0;bottom:0;width:64px;z-index:2;pointer-events:none}.strip:before{left:0;background:linear-gradient(to right,#0a0413eb,#0a041300)}.strip:after{right:0;background:linear-gradient(to left,#0a0413eb,#0a041300)}.strip__hint{position:absolute;top:.5rem;left:50%;transform:translate(-50%);z-index:3;display:flex;align-items:center;gap:.4rem;padding:.32rem .8rem;border-radius:999px;background:#170a26c7;border:1px solid var(--border);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:#e9dfffeb;pointer-events:none;white-space:nowrap;transition:opacity .5s ease,transform .5s ease}.strip__hint:before{content:"↔";font-size:.9rem;animation:hintSwipe 1.8s ease-in-out infinite}.strip__hint.is-gone{opacity:0;transform:translate(-50%,-6px)}@keyframes hintSwipe{0%,to{transform:translate(-3px)}50%{transform:translate(3px)}}.strip__track{display:flex;gap:12px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none;touch-action:pan-x;cursor:grab;scroll-behavior:auto}.strip__track::-webkit-scrollbar{display:none}.strip__track:active{cursor:grabbing}.strip__item{position:relative;flex:0 0 auto;width:116px;height:84px;border-radius:12px;overflow:hidden;border:1px solid var(--border);text-decoration:none;color:var(--ink);transform:scale(.94);opacity:.7;transition:transform .35s cubic-bezier(.22,1,.36,1),opacity .35s ease,border-color .35s ease;-webkit-user-drag:none}.strip__item:hover{opacity:1;transform:scale(.99)}.strip__item.is-active{opacity:1;transform:scale(1.06);border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),0 14px 36px -12px #db74ff99}.strip__item:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}.strip__media{width:100%;height:100%}.strip__media img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}.strip__media--placeholder{display:grid;place-items:center}.strip__media--placeholder span{font-family:var(--font-display);font-size:1rem;letter-spacing:.08em;color:#140820d9}.strip__num{position:absolute;top:5px;left:7px;font-family:var(--font-display);font-size:.85rem;line-height:1;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.7);pointer-events:none}.strip__cap{position:absolute;left:0;right:0;bottom:0;padding:.6rem .5rem .3rem;font-size:.62rem;line-height:1.15;font-weight:600;text-align:center;background:linear-gradient(to top,#08030feb,#08030f00);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:0;transition:opacity .3s ease;pointer-events:none}.strip__item:hover .strip__cap,.strip__item.is-active .strip__cap{opacity:1}@media (max-width: 640px){.strip__item{width:96px;height:70px}.strip__cap{font-size:.56rem}}body.is-fallback .strip{display:none}.fallback{position:relative;z-index:1;display:none;max-width:1100px;margin:0 auto;padding:clamp(6rem,18vh,12rem) 1.5rem 4rem;height:100%;overflow-y:auto}.fallback.is-active{display:block}.fallback__title{font-family:var(--font-display);font-weight:400;font-size:2.4rem;letter-spacing:.04em;text-align:center;margin:0 0 2rem;color:var(--ink)}.fallback__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}.fallback__list a{display:block;padding:1.1rem 1.3rem;border-radius:16px;border:1px solid var(--border);background:#ffffff08;color:var(--ink);text-decoration:none;transition:border-color .25s ease,background .25s ease,transform .25s ease}.fallback__list a:hover{border-color:var(--accent);background:#db74ff14;transform:translateY(-2px)}.fallback__list .num{font-family:var(--font-display);font-size:1.4rem;color:var(--accent);margin-right:.5rem}.fallback__list .ttl{font-weight:600}.fallback__list .intro{display:block;margin-top:.35rem;font-size:.85rem;color:var(--ink-dim)}body.is-fallback{overflow:auto}body.is-fallback .lab,body.is-fallback .hero,body.is-fallback .ui,body.is-fallback .orb-label{display:none}@media (prefers-reduced-motion: reduce){.hero__title{animation:none;background-position:0 50%}.orb-label,.loader{transition:none}.strip__hint:before{animation:none}}@media (max-width: 640px){.hero{top:4.2rem}.hero__title{font-size:clamp(2.2rem,11vw,3.2rem)}.hero:before{top:-1.5rem;height:200px}.orb-label{width:min(82vw,220px)}}
