@font-face{font-family:Poppins;src:url(/fonts/Poppins-Regular.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Poppins;src:url(/fonts/Poppins-Bold.woff2)format("woff2");font-weight:700;font-display:swap}:root{--bg:#0f121a;--panel:#171c2a;--line:#2c3346;--text:#eef4f8;--muted:#a8b3c5;--turquoise:#29d9cc;--purple:#9e4ceb;--purple-text:#bb8bf5;--orange:#ff8c1f;--white-ring:#fff;--radius:14px}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}.site-bg{z-index:-1;pointer-events:none;display:block;position:fixed;top:0;bottom:0;left:0;right:0}body{color:var(--text);-webkit-font-smoothing:antialiased;background:0 0;margin:0;font-family:Poppins,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;line-height:1.6}a{color:var(--turquoise)}.wrap{width:min(1240px,100% - 40px);margin-inline-start:auto;margin-inline-end:auto}.hero{padding:36px 0 56px}.hero-head{text-align:center;margin-bottom:28px}.hero-logo{width:88px;height:88px;margin:0 auto 10px;display:block}.hero h1{letter-spacing:.18em;margin:0;font-size:clamp(34px,7vw,54px);font-weight:700}.hero .tagline{color:var(--turquoise);letter-spacing:.04em;margin:4px 0 0;font-weight:700}.hero-grid{justify-items:center;gap:44px;display:grid}.col{width:100%;max-width:460px}.col--game{text-align:center}.col h2{letter-spacing:.1em;margin:0 0 6px;font-size:20px}.col-lead{color:var(--muted);margin:0 0 18px;font-size:15px}#game{--ui:1;aspect-ratio:9/16;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);touch-action:none;-webkit-user-select:none;user-select:none;width:min(420px,100%,43.875vh);margin:0 auto;position:relative;overflow:hidden}.orb-canvas{width:100%;height:100%;display:block}.hint{color:var(--muted);margin:14px 0 0;font-size:15px}.orb-hud{pointer-events:none;font-weight:700;position:absolute;top:0;bottom:0;left:0;right:0}.orb-score,.orb-combo,.orb-popup{white-space:nowrap;text-align:center;position:absolute;left:50%;translate:-50% -50%}.orb-score{font-size:calc(92px * var(--ui));transform-origin:50%;top:5.5%}.orb-combo{font-size:calc(46px * var(--ui));color:#ffffffe6;top:10.5%}.orb-popup{font-size:calc(92px * var(--ui));opacity:0;transform-origin:50%;top:42%}.orb-bar-bg{width:51.8%;height:calc(16px * var(--ui));background:#ffffff29;border-radius:999px;position:absolute;top:15%;left:50%;overflow:hidden;translate:-50% -50%}.orb-bar-fill{border-radius:999px;width:0;height:100%}.orb-power{width:calc(170px * var(--ui));height:calc(170px * var(--ui));border:calc(4px * var(--ui)) solid var(--turquoise);border-radius:calc(28px * var(--ui));color:var(--white-ring);pointer-events:auto;cursor:pointer;background:0 0;place-items:center;padding:0;transition:opacity .15s;display:grid;position:absolute;top:93.5%;left:87%;translate:-50% -50%}.orb-power:disabled{cursor:default}.orb-power-icon{width:calc(115px * var(--ui));height:auto;display:block}.orb-power:disabled .orb-power-icon{filter:brightness(.5)}.orb-power-curtain{border-radius:inherit;background:#000000c7;justify-content:center;align-items:center;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}.orb-power-count{font-size:calc(72px * var(--ui));color:#ffffffd9}.orb-end{text-align:center;background:#0a0c12db;flex-direction:column;justify-content:center;align-items:center;gap:4%;padding:6%;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}.orb-end[hidden]{display:none}.orb-end.is-in{animation:.22s ease-out end-in}@keyframes end-in{0%{opacity:0;transform:translateY(10px)}}.orb-end-title{font-size:calc(76px * var(--ui));letter-spacing:.14em;margin:0}.orb-end-stats{width:100%;max-width:calc(760px * var(--ui));gap:calc(14px * var(--ui));font-size:calc(40px * var(--ui));display:grid}.orb-end-row{color:var(--muted);justify-content:space-between;display:flex}.orb-end-row strong{color:var(--text)}.orb-retry{font-family:inherit;font-weight:700;font-size:calc(44px * var(--ui));letter-spacing:.12em;border-radius:calc(16px * var(--ui));padding:calc(22px * var(--ui)) calc(80px * var(--ui));background:var(--turquoise);color:#06212a;cursor:pointer;border:none;transition:transform 80ms}.orb-retry:active{transform:scale(.96)}.orb-fade{opacity:0;pointer-events:none;background:#000;transition:opacity .2s linear;position:absolute;top:0;bottom:0;left:0;right:0}.orb-fade.is-on{opacity:1;pointer-events:auto}.cta{background:var(--turquoise);color:#06212a;letter-spacing:.03em;border-radius:999px;align-items:center;gap:10px;margin-top:22px;padding:13px 26px;font-weight:700;text-decoration:none;display:inline-flex}.cta:hover{filter:brightness(1.08)}.cta--ghost{border:1px solid var(--line);color:var(--text);background:0 0}section{border-top:1px solid var(--line);padding:56px 0}h2{letter-spacing:.06em;margin:0 0 8px;font-size:clamp(22px,4vw,30px)}.section-lead{color:var(--muted);max-width:62ch;margin:0 0 32px;font-size:17px}.closing{text-align:center}.closing .section-lead{margin-inline-start:auto;margin-inline-end:auto}.mode{background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--dot,var(--turquoise));border-radius:var(--radius);margin-bottom:12px;padding:14px 16px}.mode h3{letter-spacing:.06em;color:var(--dot-text,var(--dot,var(--turquoise)));margin:0 0 4px;font-size:16px}.mode p{color:var(--muted);margin:0;font-size:15px;line-height:1.55}.steps{counter-reset:step;margin:0;padding:0;list-style:none}.steps li{counter-increment:step;margin-bottom:20px;padding-left:40px;position:relative}.steps li:before{content:counter(step);border:1px solid var(--turquoise);width:26px;height:26px;color:var(--turquoise);border-radius:50%;place-items:center;font-size:13px;font-weight:700;display:grid;position:absolute;top:0;left:0}.steps h3{margin:2px 0 4px;font-size:16px}.steps p{color:var(--muted);margin:0;font-size:15px;line-height:1.55}.gallery{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:24px;display:grid}.gallery figure{margin:0}.gallery img{border-radius:var(--radius);border:1px solid var(--line);width:100%;height:auto;display:block}.gallery figcaption{color:var(--muted);margin-top:12px;font-size:15px}footer{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 24px;padding:32px 0 48px;font-size:15px;display:flex}footer nav{flex-wrap:wrap;gap:20px;display:flex}.pagehead{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;padding:28px 0 8px;display:flex}.sitemark{color:var(--text);align-items:center;gap:12px;text-decoration:none;display:flex}.sitemark img{width:44px;height:44px;display:block}.sitemark span{letter-spacing:.18em;font-size:19px;font-weight:700}.sitemark:hover span{color:var(--turquoise)}.langswitch{gap:8px;display:flex}.langswitch button{background:var(--panel);color:var(--muted);border:1px solid var(--line);cursor:pointer;border-radius:10px;padding:9px 20px;font-family:inherit;font-size:15px}.langswitch button.is-active{background:var(--turquoise);border-color:var(--turquoise);color:#06212a;font-weight:700}.policy{max-width:820px;padding-bottom:40px}.policy [hidden]{display:none}.policy h1{letter-spacing:.02em;margin:28px 0 4px;font-size:clamp(28px,4vw,36px)}.policy h2{color:var(--turquoise);border-bottom:1px solid var(--line);margin:44px 0 10px;padding-bottom:8px;font-size:20px}.policy p,.policy li{color:var(--muted);font-size:16px;line-height:1.7}.policy strong,.policy b{color:var(--text)}.policy .meta{margin:0 0 4px;font-size:15px}.policy ul{padding-left:22px}.policy li{margin:8px 0}.policy code{background:var(--panel);border:1px solid var(--line);color:var(--turquoise);border-radius:5px;padding:2px 7px;font-size:14px}.policy table{border-collapse:collapse;width:100%;margin-top:14px;display:block;overflow-x:auto}.policy th,.policy td{text-align:left;border:1px solid var(--line);vertical-align:top;min-width:180px;padding:12px 14px;font-size:15px;line-height:1.6}.policy th{background:var(--panel);color:var(--turquoise);white-space:nowrap}.policy td{color:var(--muted)}@media (min-width:1080px){.hero-grid{grid-template-columns:minmax(240px,1fr) auto minmax(240px,1fr);place-items:start stretch;gap:40px}.col--game{grid-area:1/2;width:auto}.col--modes{grid-area:1/1}.col--how{grid-area:1/3}.col{max-width:none}#game{width:min(480px,45vh)}.col--modes,.col--how{padding-top:4px}.wrap{width:min(1600px,100% - 72px)}.col h2{font-size:22px}.col-lead,.mode p,.steps p{font-size:16px}.mode h3,.steps h3{font-size:17px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.orb-end.is-in{animation:none}}
