:root{--cy-bg: #06080e}*{box-sizing:border-box}html,body,#root{margin:0;height:100%;background:var(--cy-bg);overflow:hidden;font-family:Rajdhani,Segoe UI,system-ui,sans-serif;color:#e8f0ff}.cy-root{position:fixed;inset:0;cursor:none}.cy-root canvas{display:block}.cy-hud{position:fixed;inset:0;pointer-events:none;z-index:10;-webkit-user-select:none;user-select:none}.cy-fade{position:fixed;inset:0;background:#000;transition:opacity .1s linear;pointer-events:none;z-index:50}.cy-intro{position:fixed;inset:0;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 40%,rgba(40,12,60,.35),transparent 60%),radial-gradient(ellipse at 50% 100%,rgba(0,60,90,.4),transparent 70%),#04050a;pointer-events:auto;cursor:default}.cy-intro-inner{text-align:center;padding:2rem;max-width:640px}.cy-glitch{font-size:clamp(2.4rem,8vw,5.5rem);font-weight:800;letter-spacing:.12em;color:#fff;text-shadow:0 0 12px #ff2d6f,0 0 28px #ff2d6f88,0 0 4px #19d3ff;position:relative}.cy-glitch:before,.cy-glitch:after{content:attr(data-text);position:absolute;inset:0;opacity:.7}.cy-glitch:before{color:#19d3ff;animation:cy-shift 2.6s infinite linear alternate}.cy-glitch:after{color:#ff2d6f;animation:cy-shift 3.1s infinite linear alternate-reverse}@keyframes cy-shift{0%{transform:translate(0)}20%{transform:translate(-2px,1px)}40%{transform:translate(2px,-1px)}60%{transform:translate(-1px,-1px)}to{transform:translate(1px,1px)}}.cy-kicker{margin-bottom:.7rem;color:#cdd9ee;letter-spacing:.34em;text-transform:uppercase;font-size:.78rem;font-weight:600;text-shadow:0 0 10px rgba(25,211,255,.45)}.cy-sub{margin:.8rem auto 2rem;max-width:30rem;color:#9fb6d6;letter-spacing:.1em;line-height:1.5;text-transform:uppercase;font-size:.82rem}.cy-btn{pointer-events:auto;cursor:pointer;background:linear-gradient(180deg,#1a1030,#0a0818);color:#fff;border:1px solid #ff2d6f;padding:.9rem 2.4rem;font-size:1rem;letter-spacing:.25em;font-weight:700;border-radius:2px;box-shadow:0 0 18px #ff2d6f55,inset 0 0 14px #ff2d6f22;transition:transform .12s ease,box-shadow .2s ease}.cy-btn:hover{transform:translateY(-2px);box-shadow:0 0 30px #ff2d6f99,inset 0 0 18px #ff2d6f44}.cy-loading{color:#7fa6cc;letter-spacing:.1em;display:flex;gap:.6rem;align-items:center;justify-content:center}.cy-spinner{width:14px;height:14px;border:2px solid #19d3ff44;border-top-color:#19d3ff;border-radius:50%;animation:cy-spin .8s linear infinite}@keyframes cy-spin{to{transform:rotate(360deg)}}.cy-controls{margin-top:1.8rem;display:flex;flex-wrap:wrap;gap:1.1rem;justify-content:center;color:#7f93b3;font-size:.8rem;letter-spacing:.06em}.cy-controls b{color:#d7e6ff}.cy-reticle{position:fixed;left:50%;top:50%;width:7px;height:7px;margin:-3.5px 0 0 -3.5px;border-radius:50%;background:#ffffff59;box-shadow:0 0 4px #fff6;transition:all .15s ease}.cy-reticle.is-active{width:13px;height:13px;margin:-6.5px 0 0 -6.5px;background:transparent;border:1.5px solid #ff5e8f;box-shadow:0 0 10px #ff2d6f,inset 0 0 6px #ff2d6f}.cy-prompt{position:fixed;left:50%;bottom:16%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:.2rem;background:#060810b8;border:1px solid rgba(255,255,255,.12);padding:.7rem 1.4rem;border-radius:4px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font-size:.95rem;letter-spacing:.04em;text-align:center}.cy-prompt em{color:#8aa2c4;font-size:.75rem;font-style:normal;letter-spacing:.12em;text-transform:uppercase}.cy-key{display:inline-grid;place-items:center;min-width:1.5rem;height:1.5rem;padding:0 .35rem;margin:0 .3rem;border:1px solid #ffffff55;border-radius:4px;background:#ffffff14;font-weight:700;font-size:.8rem}.cy-resume{position:fixed;left:50%;top:58%;transform:translate(-50%);pointer-events:auto;cursor:pointer;color:#cfe0ff;letter-spacing:.25em;text-transform:uppercase;font-size:.8rem;padding:.6rem 1.2rem;border:1px solid #ffffff33;border-radius:3px;background:#06081099}.cy-offer{position:fixed;left:50%;bottom:14%;transform:translate(-50%);text-align:center;background:#060810c7;border:1px solid rgba(255,255,255,.14);padding:1.1rem 2rem;border-radius:6px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:cy-rise .3s ease}@keyframes cy-rise{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}.cy-offer-name{font-size:1.4rem;font-weight:800;letter-spacing:.1em;text-shadow:0 0 16px currentColor}.cy-offer p{margin:.3rem 0 .9rem;color:#9fb6d6;letter-spacing:.06em}.cy-offer-actions{display:flex;gap:1.6rem;justify-content:center;font-size:.9rem}.cy-drinking{position:fixed;inset:0;display:grid;place-items:center;color:#cfe0ff;letter-spacing:.4em;text-transform:uppercase;font-size:1rem;z-index:60;pointer-events:none}.cy-flash{position:fixed;inset:0;z-index:49;pointer-events:none;mix-blend-mode:screen;transition:opacity .08s linear}.cy-reticle.is-active{animation:cy-reticle-pulse 1.1s ease-in-out infinite}@keyframes cy-reticle-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.25)}}.cy-prompt{animation:cy-prompt-in .18s ease both}@keyframes cy-prompt-in{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}.cy-touchpad{position:fixed;inset:0;pointer-events:auto;touch-action:none;z-index:12;-webkit-tap-highlight-color:transparent}.cy-joy-base,.cy-joy-thumb{position:fixed;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none;z-index:13}.cy-joy-base{width:116px;height:116px;border:2px solid #ffffff2b;background:radial-gradient(circle,#19d3ff1a,#06080e47);box-shadow:0 0 22px #19d3ff38}.cy-joy-thumb{width:54px;height:54px;background:radial-gradient(circle at 35% 30%,#e8fbff,#19d3ff);box-shadow:0 0 18px #19d3ffb3}.cy-touch-btn{pointer-events:auto;z-index:20;-webkit-tap-highlight-color:transparent;cursor:pointer;background:linear-gradient(180deg,#1a1030eb,#060810eb);color:#fff;border:1px solid #ff2d6f;padding:.85rem 1.6rem;font:inherit;font-size:.95rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700;border-radius:4px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 0 18px #ff2d6f55}.cy-touch-btn:active{transform:translateY(1px)}.cy-touch-btn.cy-ghost{border-color:#fff5;box-shadow:none;background:#060810b3;font-weight:600;opacity:.92}.cy-accept{position:fixed;left:50%;bottom:calc(15% + env(safe-area-inset-bottom,0px));transform:translate(-50%)}.cy-touch-actions{gap:.9rem;margin-top:.4rem}.cy-textbtn{pointer-events:auto;cursor:pointer;background:none;border:none;color:#8aa6cc;font:inherit;font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;padding:.4rem .6rem;transition:color .15s ease}.cy-textbtn:hover{color:#e8f0ff}.cy-list-toggle{display:block;margin:1.6rem auto 0}.cy-btn-sm{padding:.7rem 1.6rem;font-size:.85rem;letter-spacing:.2em}.cy-list{position:fixed;inset:0;z-index:30;pointer-events:auto;overflow-y:auto;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 0%,rgba(40,12,60,.4),transparent 60%),radial-gradient(ellipse at 50% 100%,rgba(0,60,90,.4),transparent 70%),#04050a;cursor:default}.cy-list-inner{width:100%;max-width:620px;padding:2.4rem 1.4rem;text-align:center}.cy-list-title{margin:0;font-size:clamp(1.5rem,5vw,2.6rem);font-weight:800;letter-spacing:.1em;color:#fff;text-shadow:0 0 14px #ff2d6f88,0 0 4px #19d3ff}.cy-list-sub{margin:.5rem 0 1.8rem;color:#9fb6d6;letter-spacing:.1em;text-transform:uppercase;font-size:.8rem}.cy-list-items{display:flex;flex-direction:column;gap:.7rem;text-align:left}.cy-list-item{display:grid;grid-template-columns:1fr auto;grid-template-areas:"name go" "tag go";align-items:center;gap:0 1rem;padding:.9rem 1.2rem;border:1px solid #ffffff22;border-radius:6px;background:#080a12b8;text-decoration:none;transition:transform .12s ease,background .2s ease,box-shadow .2s ease}.cy-list-item:hover{transform:translateY(-2px);background:#0e121ed9;box-shadow:0 0 18px #ffffff0f}.cy-list-name{grid-area:name;font-weight:800;font-size:1.15rem;letter-spacing:.06em;text-shadow:0 0 12px currentColor}.cy-list-tag{grid-area:tag;color:#9fb6d6;font-size:.85rem;letter-spacing:.03em}.cy-list-go{grid-area:go;font-weight:700;font-size:.85rem;letter-spacing:.08em}.cy-list-actions{margin-top:1.8rem;display:flex;flex-direction:column;align-items:center;gap:.6rem}
