@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Nunito:wght@400;600;700;800;900&display=swap";:root{color:#292443;font-synthesis:none;background:#f8f4ff;font-family:Nunito,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 10% 10%,#ffe9f4 0,#0000 28%),radial-gradient(circle at 90% 16%,#e7e4ff 0,#0000 30%),#f8f4ff;min-width:320px;margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:default}button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:3px;outline:3px solid #7b55ee}.site-shell{flex-direction:column;min-height:100dvh;display:flex}.site-header{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:3;background:#fff9;border-bottom:1px solid #e9e1f5;height:77px}.header-inner{justify-content:space-between;align-items:center;max-width:1200px;height:100%;margin:auto;padding:0 24px;display:flex}.brand{color:#51379a;letter-spacing:-1.5px;background:0 0;border:0;align-items:center;gap:9px;padding:0;font-size:26px;font-weight:900;display:flex}.brand>span:nth-child(2)>span{color:#ff6196}.brand-gem{color:#fff;background:linear-gradient(140deg,#ff90b1,#ff5e95);border-radius:14px;place-items:center;width:40px;height:40px;font-size:26px;display:grid;transform:rotate(-9deg);box-shadow:0 5px #e84981}.brand small{color:#a59db7;letter-spacing:1.1px;margin:9px 0 0 2px;font:800 10px DM Sans,sans-serif}.header-right{color:#8a819e;align-items:center;gap:8px;font-size:12px;font-weight:800;display:flex}.online-dot{background:#aaa;border-radius:50%;width:8px;height:8px}.online-dot.online{background:#45caa3;box-shadow:0 0 0 4px #45caa320}.online-dot.offline{background:#fa6a8d}.header-star{color:#8d631f;background:#fff2ce;border-radius:20px;margin-left:13px;padding:8px 12px;font-size:13px}.lobby,.game{flex:1;width:min(1200px,100% - 40px);margin:32px auto 48px}.hero{background:linear-gradient(115deg,#fff 9%,#ffeff7 49%,#eee4ff 100%);border:1px solid #fff;border-radius:30px;min-height:400px;display:flex;position:relative;overflow:hidden;box-shadow:0 18px 45px #5d3f9d12}.hero-copy{z-index:1;width:54%;padding:58px 0 48px 65px;position:relative}.pill{color:#8556c3;background:#f2e8ff;border-radius:30px;padding:8px 14px;font-size:13px;font-weight:900;display:inline-block}.hero h1{letter-spacing:-2.8px;color:#332653;margin:21px 0 19px;font-size:clamp(38px,4.4vw,60px);font-weight:900;line-height:1.19}.hero h1 em{color:#fd6097;font-style:normal}.hero p{color:#756d89;margin:0;font-size:16px;font-weight:700;line-height:1.75}.hero-tags{flex-wrap:wrap;gap:8px;margin-top:31px;display:flex}.hero-tags span{color:#765f9b;background:#fff;border:1px solid #f0e8f8;border-radius:20px;padding:7px 10px;font-size:11px;font-weight:900;box-shadow:0 3px 9px #7a5a9c0e}.hero-art{place-items:center;width:46%;display:grid;position:relative}.orb{border-radius:50%;position:absolute}.orb-a{opacity:.6;background:#ffcae0;width:400px;height:400px;top:-72px;right:-110px}.orb-b{opacity:.65;background:#ddcaff;width:310px;height:310px;bottom:-190px;right:130px}.hero-board{z-index:1;background:#7d5cb3;border:7px solid #fff;border-radius:23px;grid-template-columns:repeat(7,1fr);gap:5px;width:264px;height:265px;padding:12px;display:grid;position:relative;transform:rotate(-10deg);box-shadow:0 22px #503784,0 28px 36px #4a2b7c52}.hero-jelly{animation:2s ease-in-out infinite bob;animation-delay:var(--delay);border-radius:12px 12px 15px 15px;position:relative;box-shadow:inset 0 3px #ffffff75,inset 0 -5px #00000018,0 3px #00000018}.hero-jelly:before{content:"••";text-align:center;letter-spacing:4px;color:#4e3467;font:900 12px DM Sans;position:absolute;top:9px;left:0;right:0}.hero-jelly i{border-bottom:2px solid #674777;border-radius:50%;width:7px;height:4px;position:absolute;top:23px;left:50%;transform:translate(-50%)}.float-sticker{z-index:2;color:#fe648c;background:#fff;border-radius:20px;padding:10px 14px;font-weight:900;position:absolute;transform:rotate(10deg);box-shadow:0 12px 25px #7d50933b}.sticker-one{font-size:19px;top:64px;left:17px}.sticker-one strong{font-size:15px;display:block}.sticker-two{color:#8158d4;font-size:20px;bottom:57px;right:28px;transform:rotate(-9deg)}@keyframes bob{50%{transform:translateY(-3px)}}.play-card,.rank-card{background:#fff;border:1px solid #eee7f6;border-radius:26px;padding:31px 34px;box-shadow:0 12px 36px #5d3f9d0b}.play-card{margin-top:24px}.section-heading{justify-content:space-between;align-items:end;margin-bottom:24px;display:flex}.eyebrow{color:#a583e9;letter-spacing:2px;font:900 11px DM Sans}.section-heading h2{letter-spacing:-1px;color:#342852;margin:5px 0 0;font-size:25px}.section-heading h2 span{font-size:22px}.wallet{color:#aa7527;background:#fff5d7;border-radius:20px;padding:9px 14px;font-size:13px;font-weight:900}.name-label{color:#5d5078;margin-bottom:8px;font-size:13px;font-weight:900;display:block}#name{color:#3b2d57;background:#fcfaff;border:1.5px solid #e7def2;border-radius:13px;outline:none;width:100%;height:48px;padding:0 15px}#name:focus,#room-code:focus{border-color:#a681e9}.mode-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin-top:20px;display:grid}.mode-card{text-align:left;border:1.5px solid #0000;border-radius:20px;flex-direction:column;align-items:flex-start;min-height:183px;padding:19px 20px;transition:transform .15s,box-shadow .15s;display:flex}.mode-card:hover{transform:translateY(-4px);box-shadow:0 12px 22px #6c4b9d23}.mode-card.solo{background:#fff1f5;border-color:#ffe1ec}.mode-card.versus{background:#f3ecff;border-color:#e6d8ff}.mode-card.coop{background:#e9faf6;border-color:#d5f1e9}.mode-icon{background:#fff;border-radius:14px;place-items:center;width:42px;height:42px;font-size:24px;display:grid;box-shadow:0 5px 10px #68508612}.mode-card strong{color:#3e3157;margin-top:10px;font-size:18px}.mode-card small{color:#8f809d;margin-top:3px;font-size:11px;font-weight:800}.mode-arrow{color:#ef6d9c;margin-top:auto;padding-top:14px;font-size:12px;font-weight:900}.versus .mode-arrow{color:#8661ce}.coop .mode-arrow{color:#36a486}.join-row{color:#766989;border-top:1px dashed #e9e0f2;justify-content:space-between;align-items:center;gap:16px;margin-top:25px;padding-top:23px;font-size:13px;font-weight:900;display:flex}.join-row>div{gap:7px;display:flex}#room-code{text-transform:uppercase;letter-spacing:1.5px;border:1.5px solid #e9dff2;border-radius:11px;outline:none;width:147px;height:41px;padding:0 11px;font-weight:900}.join-btn,.primary{color:#fff;background:#7052be;border:0;border-radius:11px;padding:0 18px;font-weight:900;box-shadow:0 4px #543997}.join-btn:hover,.primary:hover{background:#5e40ad}.rank-card{margin-top:24px}.rank-sub{color:#aea3bc;font-size:12px;font-weight:800}.rank-controls{justify-content:space-between;gap:14px;display:flex}.segmented{background:#f5f1fa;border-radius:12px;gap:5px;padding:4px;display:flex}.segmented button{color:#9a8cae;background:0 0;border:0;border-radius:9px;padding:8px 17px;font-size:12px;font-weight:900}.segmented button.active{color:#6546b1;background:#fff;box-shadow:0 2px 6px #49306819}#rank-mode{color:#75658a;background:#fff;border:1px solid #e8e0ef;border-radius:11px;padding:0 12px;font-size:12px;font-weight:900}.rank-list{margin-top:16px}.rank-row{color:#685e78;border-radius:12px;grid-template-columns:42px 1fr 100px 100px;align-items:center;gap:12px;padding:12px 15px;font-size:13px;display:grid}.rank-row:nth-child(odd){background:#faf8fd}.rank-row.mine{background:#f0e9ff}.rank-row b{text-align:right;color:#49386f;font-size:15px}.rank-num{text-align:center;font-size:18px}.rank-name{font-weight:900}.rank-stage{color:#a79bb6;font-size:11px}.empty-rank{text-align:center;color:#ac9dbb;padding:30px;font-size:13px;font-weight:800;line-height:1.8}.footer{text-align:center;color:#b2a6bf;padding:10px 20px 25px;font-size:11px;font-weight:800}.toast{color:#fff;opacity:0;pointer-events:none;z-index:20;white-space:nowrap;background:#372657;border-radius:15px;padding:12px 19px;font-size:13px;font-weight:900;transition:all .2s;position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);box-shadow:0 10px 30px #3e2c6466}.toast.show{opacity:1;transform:translate(-50%)}@media (width<=800px){.hero-copy{width:55%;padding:45px 25px}.hero-art{width:45%}.hero-board{transform:rotate(-10deg)scale(.77)}.mode-grid{gap:8px}.mode-card{min-height:170px;padding:14px}.arena{flex-direction:column;display:flex}.board-card{max-width:530px}.foe-card{order:0}.versus-divider{flex-direction:row;order:1;width:100%}.self-card{order:2}.game-bottom{grid-template-columns:1fr}.board{width:100%;max-width:380px;max-height:430px;margin:auto}.lobby,.game{width:min(650px,100% - 24px)}.hero{min-height:350px}}@media (width<=560px){.site-header{height:62px}.header-inner{padding:0 15px}.brand{font-size:20px}.brand-gem{border-radius:10px;width:32px;height:32px;font-size:20px}.brand small,.header-right>span:nth-child(2){display:none}.header-star{margin-left:2px}.lobby,.game{margin-top:15px}.hero{min-height:0;display:block}.hero-copy{width:100%;padding:32px 25px 20px}.hero h1{margin:16px 0;font-size:40px}.hero p{font-size:13px}.hero-tags{margin-top:20px}.hero-art{width:100%;height:215px;overflow:hidden}.hero-board{margin-top:-35px;transform:rotate(-10deg)scale(.67)}.orb-a{top:-80px;right:0}.orb-b{bottom:-190px;left:-40px;right:auto}.sticker-one{top:20px;left:35px}.sticker-two{bottom:28px;right:45px}.play-card,.rank-card{border-radius:20px;margin-top:15px;padding:22px 18px}.section-heading h2{font-size:21px}.wallet{padding:7px 10px;font-size:11px}.mode-grid{grid-template-columns:1fr;gap:9px}.mode-card{grid-template-rows:1fr 1fr;grid-template-columns:45px 1fr auto;align-items:center;column-gap:8px;min-height:82px;display:grid}.mode-icon{grid-row:1/3}.mode-card strong{margin:0;font-size:15px}.mode-card small{grid-area:2/2;margin:0}.mode-arrow{grid-area:1/3/3;padding:0;font-size:11px}.join-row{display:block}.join-row>div{margin-top:10px}.join-row #room-code{flex:1}.rank-sub{display:none}.rank-controls{display:block}.segmented{justify-content:space-around}.segmented button{padding:8px 11px}.rank-controls select{width:100%;height:35px;margin-top:9px}.rank-row{grid-template-columns:30px 1fr 63px 70px;gap:4px;padding:10px 8px;font-size:11px}.rank-row b{font-size:12px}.rank-stage{font-size:9px}.game-banner{padding:15px}.game-banner h1{font-size:14px}.room-code{flex-direction:column;gap:2px}.room-code button{padding:5px;font-size:11px}.game-top{margin-bottom:12px}.stage-badge strong{font-size:11px}.timer strong{font-size:14px}.board-card{padding:12px}.board{gap:3px;padding:5px}.tool-panel,.goal-panel{padding:14px}.tool-title small{display:none}.tool{flex-wrap:wrap;min-height:53px;font-size:10px}.tool-icon{font-size:17px}.versus-divider small{display:none}.footer{font-size:10px}}.hero-board{grid-template-columns:repeat(6,1fr)}.hero-slot{background:#ffffff17;border-radius:10px;box-shadow:inset 0 1px 3px #49346b40}.rose{--c:#ff7eaa}.tangerine{--c:#ffa35c}.lemon{--c:#ffd24d}.mint{--c:#4fd3ae}.sky{--c:#6fb3ff}.lilac{--c:#b58cf2}.mode-card.relax{background:#fff8e3;border-color:#ffecb5}.relax .mode-arrow{color:#c98a12}.piece{touch-action:none;cursor:grab;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;filter:drop-shadow(0 -2px #ffffff70)drop-shadow(0 4px #3c1e5a33);-webkit-user-select:none;user-select:none;position:relative}.piece i{background:var(--c);display:block;position:absolute}.face{justify-content:center;align-items:center;gap:calc(var(--fs)*.16);pointer-events:none;display:flex;position:absolute}.face u{width:calc(var(--fs)*.09);height:calc(var(--fs)*.14);min-width:3px;min-height:4px;margin-top:calc(var(--fs)*-.1);background:#4b3453;border-radius:50%;display:block}.face em{width:calc(var(--fs)*.2);height:calc(var(--fs)*.1);border:2px solid #4b3453;border-top:0;border-radius:0 0 10px 10px;min-width:6px;min-height:3px;position:absolute;top:56%;left:50%;transform:translate(-50%)}.mold{margin:0 auto;position:relative}.mold-cell{position:absolute}.mold-cell:after{content:"";background:#ffffffa6;border:2px dashed #9b7fd166;border-radius:26%;transition:background 80ms;position:absolute;inset:2px;box-shadow:inset 0 3px 6px #5a3c8c26}.mold-cell.snap:after{background:var(--c);opacity:.5;border-style:solid;border-color:#fff}.mold-cell.kb-ok:after{background:var(--c);opacity:.6;border:3px solid #ffd35c}.mold-cell.kb-bad:after{background:#e5484d33;border:3px solid #e5484d}.placed{position:absolute}.placed.theirs .piece{cursor:default}.placed .piece.snapped{animation:.34s cubic-bezier(.3,1.6,.5,1) snap}.hint-ghost{pointer-events:none}.hint-ghost .piece{opacity:.45;animation:.7s ease-in-out infinite alternate ghost}.mold.enter{animation:.42s cubic-bezier(.2,1.3,.4,1) mold-in}.mold.complete{animation:.9s ease-in-out mold-done}.mold.complete .placed .piece{animation:.9s ease-in-out jelly}.floating{z-index:50;pointer-events:none;will-change:transform;position:fixed;top:0;left:0}.floating .piece{filter:drop-shadow(0 16px 14px #32145a55);animation:.45s ease-in-out infinite alternate wobble}.floating.bounce-back{opacity:.2;transition:transform .2s ease-in,opacity .2s}.piece.ghosted{opacity:.2}.piece.hinted{animation:.5s ease-in-out infinite alternate hinted}.piece.spin{animation:.26s cubic-bezier(.3,1.5,.5,1) spin}.piece.spin-demo{animation:2.4s ease-in-out infinite spin-demo}.game{flex:1;width:min(760px,100% - 24px);max-width:760px;margin:20px auto 40px}.game-top{justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;display:flex}.back-btn{color:#7c69a0;background:#fff;border:0;border-radius:14px;padding:12px 16px;font-size:14px;font-weight:900;box-shadow:0 3px 10px #6b528812}.big-timer{color:#5b3fa0;text-align:center;background:#fff;border-radius:18px;min-width:120px;padding:4px 20px;font:900 34px DM Sans,sans-serif;box-shadow:0 3px 10px #6b528812}.big-timer.urgent,.round-timer.urgent{color:#f45d76;animation:.5s infinite alternate pulse}.relax-count{color:#6b4ca8;background:#fff;border-radius:16px;padding:10px 16px;font-weight:900;box-shadow:0 3px 10px #6b528812}.score-chip{text-align:right;background:#fff;border-radius:16px;flex-direction:column;padding:6px 14px;display:flex;box-shadow:0 3px 10px #6b528812}.score-chip span{color:#a595b8;font-size:11px;font-weight:900}.score-chip strong{color:#7650bd;font:900 22px DM Sans,sans-serif}.scoreline{color:#5b3fa0;background:#fff;border-radius:18px;align-items:center;gap:12px;padding:9px 16px;font-size:14px;font-weight:900;display:flex;box-shadow:0 3px 10px #6b528812}.scoreline em{font-style:normal}.scoreline em i{vertical-align:-1px;background:#ebe2f6;border-radius:50%;width:13px;height:13px;margin:0 2px;display:inline-block}.scoreline em i.on{background:#ff6d9b;box-shadow:0 0 0 3px #ff6d9b30}.scoreline .round{color:#8a6fc4;background:#f3ecff;border-radius:10px;padding:3px 9px;font-size:12px}.race{background:#fff;border-radius:18px;gap:7px;margin-bottom:12px;padding:12px 16px;display:grid;box-shadow:0 3px 10px #6b528812}.race-row{color:#6b5a86;grid-template-columns:96px 1fr;align-items:center;gap:10px;font-size:13px;font-weight:900;display:grid}.race-row span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.race-bar{background:#f1eaf8;border-radius:9px;height:14px;overflow:hidden}.race-bar i{background:linear-gradient(90deg,#b899f0,#8059d5);border-radius:9px;height:100%;transition:width .25s;display:block}.race-row.foe .race-bar i{background:linear-gradient(90deg,#ffa9c4,#ff6d9b)}.round-timer{text-align:center;color:#5b3fa0;font:900 20px DM Sans,sans-serif}.team-line{color:#2f8a69;text-align:center;background:#e9faf4;border:1px solid #c7efdf;border-radius:16px;margin-bottom:12px;padding:10px 14px;font-size:13px;font-weight:800}.stage{background:linear-gradient(160deg,#f6f0ff,#eadffc);border:1px solid #e3d6f7;border-radius:26px;min-height:220px;padding:16px 16px 22px;position:relative;box-shadow:0 10px 28px #5d3f9d14}.mold-title{color:#46306e;justify-content:center;align-items:center;gap:9px;margin-bottom:14px;display:flex}.mold-emoji{font-size:34px;line-height:1}.mold-title strong{letter-spacing:-.5px;font-size:22px}.level-chip{color:#8b6fc6;background:#fff;border-radius:10px;padding:4px 9px;font-size:12px;font-weight:900}.level-chip.lv3,.level-chip.lv4{color:#e0527f;background:#ffe6ef}.mold-wrap{justify-content:center;display:flex}.stage-overlay{text-align:center;z-index:5;pointer-events:none;border-radius:26px;place-content:center;justify-items:center;gap:8px;display:grid;position:absolute;inset:0}.stage-overlay.countdown{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#fbf8ffd9}.stage-overlay.result{background:#2a174a1f}.result-card{background:#fff;border-radius:24px;justify-items:center;gap:6px;padding:18px 28px;animation:.35s cubic-bezier(.2,1.4,.4,1) pop-in;display:grid;box-shadow:0 16px 40px #3b1f6a40}.stage-overlay.countdown b{color:#7650bd;text-shadow:0 6px #d9c8f5;font:900 110px/1 DM Sans,sans-serif}.stage-overlay span{color:#8a79a3;font-size:16px;font-weight:900}.stage-overlay.result b{font-size:76px;line-height:1;animation:.9s ease-in-out jelly}.stage-overlay.result strong{color:#46306e;letter-spacing:-.6px;font-size:26px}.stage-overlay.result.lose strong{color:#8a79a3}.stage-overlay.result span{color:#e0527f;font-size:17px}.tray{background:#fff;border:1px solid #eadff3;border-radius:24px;margin-top:14px;padding:16px 12px;box-shadow:0 8px 22px #5d3f9d0d}.tray-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;min-height:70px;display:flex}.slot{place-items:center;display:grid}.tray-tip,.tray-empty{text-align:center;color:#8a79a3;margin-top:12px;font-size:14px;font-weight:800}.tray-tip b{color:#7650bd}.tools{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:14px;display:flex}.tool-btn{color:#5b3fa0;background:#fff;border:1px solid #dcd0ee;border-radius:16px;min-height:54px;padding:0 20px;font-size:16px;font-weight:900;box-shadow:0 3px #d7c6ec}.tool-btn:active{transform:translateY(2px);box-shadow:0 1px #d7c6ec}.tool-btn:disabled{opacity:.45}.tool-btn b{color:#e0527f}.waiting{text-align:center;background:#fff;border:2px dashed #d7c4f5;border-radius:20px;margin-bottom:14px;padding:28px}.waiting>span{font-size:40px;display:block}.waiting strong{color:#513783;margin-top:5px;font-size:21px;display:block}.waiting p{color:#8d80a0;font-size:15px}.waiting .code{letter-spacing:2px;color:#7650bd;font:900 20px DM Sans}.waiting button{height:48px;font-size:15px}.waiting .guest-note{margin:12px 0 0;font-size:13px;line-height:1.5}.modal-backdrop{z-index:60;background:#26163f99;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.finish-modal{text-align:center;background:#fff;border-radius:27px;width:100%;max-width:390px;padding:34px;animation:.35s cubic-bezier(.2,1.4,.4,1) pop-in;box-shadow:0 22px 60px #26163f55}.finish-emoji{font-size:58px}.finish-modal h2{color:#4b3670;margin:7px 0;font-size:27px}.finish-modal p{color:#8e7f9d;font-size:16px}.finish-modal p b{color:#7651bc}.finish-score{color:#ac782e;background:#fff5dc;border-radius:12px;margin:18px 0;padding:13px;font-size:14px;font-weight:900;line-height:1.5}.finish-modal button{width:100%;height:52px;font-size:16px}.hero-art{overflow:visible}.hero-mold{z-index:1;filter:drop-shadow(0 18px 24px #4a2b7c30);transform:rotate(-6deg)}.hero-float{z-index:2;animation:2.6s ease-in-out infinite float;position:absolute;top:14%;right:12%}.hero-float .piece{filter:drop-shadow(0 18px 14px #32145a44)}.how-card{background:#fff;border:1px solid #eee7f6;border-radius:26px;margin-top:24px;padding:31px 34px;box-shadow:0 12px 36px #5d3f9d0b}.how-lead{color:#4b3670;margin:-8px 0 20px;font-size:19px;font-weight:800}.how-lead b{color:#fd6097}.how-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.how-step{text-align:center;background:#faf7ff;border:1px solid #f0e8f8;border-radius:18px;padding:16px}.how-pic{place-items:center;height:84px;margin-bottom:10px;display:grid}.how-emoji{font-size:44px}.how-step b{color:#4b3670;font-size:16px;display:block}.how-step p{color:#857a96;margin:6px 0 0;font-size:13px;font-weight:700;line-height:1.55}@keyframes snap{0%{transform:scale(1.16,.86)}45%{transform:scale(.93,1.08)}75%{transform:scale(1.03,.98)}to{transform:none}}@keyframes wobble{0%{transform:scale(1.07)rotate(-3deg)}to{transform:scale(1.09,1.04)rotate(2deg)}}@keyframes jelly{0%,to{transform:none}20%{transform:scale(1.12,.9)}40%{transform:scale(.92,1.1)}60%{transform:scale(1.05,.96)}80%{transform:scale(.98,1.02)}}@keyframes mold-done{0%,to{transform:none}30%{transform:scale(1.06)}55%{transform:scale(.97)}}@keyframes mold-in{0%{opacity:0;transform:translateY(24px)scale(.8)}to{opacity:1;transform:none}}@keyframes ghost{0%{opacity:.25}to{opacity:.6}}@keyframes hinted{to{transform:translateY(-6px)scale(1.06)}}@keyframes spin{0%{transform:rotate(-90deg)scale(.85)}to{transform:none}}@keyframes spin-demo{0%,30%{transform:none}45%,80%{transform:rotate(90deg)}95%,to{transform:rotate(90deg)}}@keyframes pop-in{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:none}}@keyframes float{50%{transform:translateY(-12px)rotate(6deg)}}@keyframes pulse{to{transform:scale(1.05)}}@media (width<=900px){.mode-grid{grid-template-columns:repeat(2,1fr)}.how-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.mode-grid{grid-template-columns:1fr}.how-card{border-radius:20px;margin-top:15px;padding:22px 18px}.how-lead{font-size:16px}.how-step{padding:12px}.how-step p{font-size:12px}.game{margin-top:12px}.game-top{gap:6px}.back-btn{padding:10px 11px;font-size:12px}.big-timer{min-width:92px;padding:4px 12px;font-size:26px}.score-chip strong{font-size:18px}.scoreline{gap:6px;padding:7px 10px;font-size:12px}.scoreline em i{width:10px;height:10px}.stage{padding:12px 8px 16px}.mold-title strong{font-size:19px}.tool-btn{min-height:50px;padding:0 14px;font-size:15px}.hero-mold{transform:rotate(-6deg)scale(.8)}.hero-float{top:4%;right:6%}.in-game .site-header,.in-game .footer{display:none}.in-game .game{margin:10px auto 12px}.game-top{margin-bottom:10px}.race{gap:4px;margin-bottom:10px;padding:8px 12px}.race-row{grid-template-columns:88px 1fr;font-size:12px}.race-bar{height:10px}.round-timer{font-size:17px}.team-line{margin-bottom:10px;padding:7px 10px;font-size:12px}.mold-title{margin-bottom:8px}.mold-emoji{font-size:28px}.tray{margin-top:10px;padding:10px 8px}.tray-row{gap:10px;min-height:50px}.tray-tip{margin-top:8px;font-size:13px}.tools{margin-top:10px}.tool-btn{min-height:46px}}.back-btn,.scoreline span,.score-chip span{white-space:nowrap}.score-chip em{font-style:normal}@media (width>=900px){.game{width:min(1080px,100% - 60px);max-width:1080px}.play-area{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:16px;display:grid}.play-area .tray{margin-top:0}.stage{min-height:100%}}@media (width<=560px){.wide-only{display:none}.back-btn{padding:10px 12px}.score-chip{flex-direction:row;align-items:center;gap:6px;padding:6px 12px}.scoreline .round{padding:2px 6px}}.stage,.tray{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.stage-overlay.countdown b.small{text-shadow:none;font-size:54px}.stage-overlay.countdown span{line-height:1.6}input,select,textarea{font-size:16px!important}body{touch-action:manipulation;-webkit-text-size-adjust:100%}.site-shell{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.site-header{padding-top:env(safe-area-inset-top);height:calc(77px + env(safe-area-inset-top))}.in-game .game{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.toast{bottom:calc(25px + env(safe-area-inset-bottom))}@media (width<=560px){.site-header{height:calc(62px + env(safe-area-inset-top))}}.finish-modal .ghost-btn{color:#7c69a0;background:#fff;border:1px solid #e3d8f3;border-radius:12px;width:100%;height:46px;margin-top:10px;font-size:15px;font-weight:900}.finish-modal .primary:disabled{opacity:.6}.finish-modal .primary.pulse{animation:.6s infinite alternate pulse}.again-note{color:#8a79a3;margin:10px 0 0;font-size:13px!important}.guide{z-index:40;pointer-events:none;transform-origin:0 0;position:fixed;top:0;left:0}.guide .guide-piece{opacity:.55;filter:drop-shadow(0 10px 12px #32145a44)}.guide-finger{filter:drop-shadow(0 4px 4px #0003);font-size:44px;position:absolute;top:45%;left:40%}.guide-bubble{white-space:nowrap;color:#fff;background:#372657;border-radius:14px;padding:7px 12px;font-size:14px;font-weight:900;position:absolute;top:-38px;left:0;box-shadow:0 6px 16px #3726574d}@media (prefers-reduced-motion:reduce){.guide{display:none}}.confetti{z-index:45;pointer-events:none;border-radius:3px;width:10px;height:14px;position:fixed}.new-badge{color:#fff;background:linear-gradient(90deg,#ff7eaa,#b58cf2);border-radius:20px;margin-bottom:2px;padding:4px 12px;font-size:13px;font-style:normal;font-weight:900;animation:.5s infinite alternate pulse}.tool-btn#sound{min-width:54px;padding:0 12px;font-size:20px}.collection-card{background:#fff;border:1px solid #eee7f6;border-radius:26px;margin-top:24px;padding:31px 34px;box-shadow:0 12px 36px #5d3f9d0b}.collect-count{color:#8a79a3;font-size:15px;font-weight:900}.collect-count b{color:#fd6097;font:900 24px DM Sans,sans-serif}.collect-bar{background:#f1eaf8;border-radius:9px;height:10px;margin:-8px 0 18px;overflow:hidden}.collect-bar i{background:linear-gradient(90deg,#ff9ebe,#b58cf2);border-radius:9px;height:100%;display:block}.collect-grid{grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:10px;display:grid}.collect-item{background:#f7f4fb;border:1px dashed #e0d6ee;border-radius:16px;justify-items:center;gap:3px;padding:12px 6px;display:grid;position:relative}.collect-item span{filter:grayscale();opacity:.28;font-size:32px}.collect-item small{color:#b2a6bf;font-size:12px;font-weight:900}.collect-item.got{background:#fff7fb;border:1px solid #ffd9e8}.collect-item.got span{filter:none;opacity:1}.collect-item.got small{color:#6b4ca8}.collect-item em{color:#e0527f;font-size:11px;font-style:normal;font-weight:900;position:absolute;top:6px;right:8px}.collect-tip{color:#8a79a3;text-align:center;margin:14px 0 0;font-size:13px;font-weight:800}@media (width<=560px){.collection-card{border-radius:20px;margin-top:15px;padding:22px 16px}.collect-grid{grid-template-columns:repeat(4,1fr);gap:7px}.collect-item{padding:9px 2px}.collect-item span{font-size:26px}.collect-item small{letter-spacing:-.3px;white-space:nowrap;font-size:12px}}.level-picker{flex-wrap:wrap;justify-content:center;gap:6px;margin:-4px 0 14px;display:flex}.level-picker button{color:#8a79a3;background:#fff;border:1px solid #e0d5f0;border-radius:20px;min-height:34px;padding:6px 12px;font-size:13px;font-weight:900}.level-picker button.on{color:#fff;background:#7650bd;border-color:#7650bd;box-shadow:0 3px #5b3a9c}.side .tools{gap:8px}.side .tool-btn{padding:0 14px}@media (width<=560px){.level-picker{gap:4px;margin:-2px 0 8px}.level-picker button{min-height:30px;padding:4px 9px;font-size:12px}}html.lock-scroll,html.lock-scroll body{overscroll-behavior:none;height:100%;overflow:hidden}html.lock-scroll .site-shell{min-height:0;position:fixed;inset:0;overflow:hidden}html.lock-scroll .site-header,html.lock-scroll .footer{display:none}html.lock-scroll .game{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);margin:8px auto 0}html.lock-scroll .stage,html.lock-scroll .tray{touch-action:none}.sso-row{background:#ffffff8c;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin:0 0 18px;padding:10px 12px;font-size:13px;display:flex}.sso-row .ghost-btn{white-space:nowrap;margin:0}.login-gate{place-items:start center;min-height:100dvh;padding:max(64px,14vh) 16px 32px;display:grid}.gate-card{text-align:center;background:#fff;border:1px solid #eee7f6;border-radius:26px;justify-items:center;gap:16px;width:min(400px,100%);padding:34px 24px 26px;display:grid;box-shadow:0 12px 36px #5d3f9d14}.gate-card .brand-gem{border-radius:15px;place-items:center;width:48px;height:48px;font-size:26px;display:grid}.gate-card h1{letter-spacing:-1.5px;color:#332653;margin:0;font-size:34px;font-weight:900}.gate-card h1 span{color:#ff5d9e}.gate-card p{color:#7c69a0;margin:0;font-size:14px;font-weight:700}.gate-btn{color:#fff;background:linear-gradient(135deg,#ff7eaa,#a681e9);border:0;border-radius:16px;width:100%;min-height:54px;font-size:17px;font-weight:900;box-shadow:0 10px 24px #a681e933}.gate-btn:disabled{color:#7c69a0;box-shadow:none;background:#e7def2}.toast{white-space:normal;text-align:center;max-width:calc(100vw - 32px);line-height:1.35}.back-btn{min-height:44px}#room-code{height:44px}.join-btn{min-height:44px}.sso-row .ghost-btn{min-height:44px;padding:0 14px}.level-picker button{min-height:36px}@media (width<=560px){.level-picker button{min-height:34px;padding:4px 10px}}@media (orientation:landscape) and (height<=520px) and (width>=600px){.game{width:auto;max-width:none;margin:6px 96px 8px 12px}html.lock-scroll .game{margin:4px 96px 0 12px}.play-area{grid-template-columns:minmax(0,1.3fr) minmax(200px,1fr);align-items:start;gap:10px;display:grid}.play-area .tray{margin-top:0;padding:8px}.stage{min-height:0;padding:8px 8px 10px}.game-top{margin-bottom:6px}.mold-title{margin-bottom:4px}.mold-title strong{font-size:17px}.level-picker{gap:4px;margin:0 0 6px}.level-picker button{min-height:32px;padding:2px 9px;font-size:12px}.tools{gap:6px;margin-top:6px}.tool-btn{min-height:44px;padding:0 10px;font-size:14px}.tray-row{gap:8px;min-height:40px}.tray-tip,.tray-empty{margin-top:6px;font-size:12px}}.modal-backdrop{-webkit-overflow-scrolling:touch;overflow-y:auto}@media (height<=560px){.modal-backdrop{align-items:start;padding:10px}.finish-modal{border-radius:18px;padding:16px 20px 18px}.finish-emoji{font-size:34px}.finish-modal h2{margin:4px 0;font-size:22px}.finish-modal p{margin:6px 0;font-size:14px}.finish-score{margin:10px 0;padding:9px}.finish-modal button{height:44px}.finish-modal .ghost-btn{height:42px;margin-top:6px}}.back-btn.armed{color:#fff;background:#ff6196;box-shadow:0 3px #e84981}#gamenow-about{z-index:auto;color:#4a3f63;background:#fff;border-top:1px solid #eee7f6;position:static}#gamenow-about h1{color:#332653}#gamenow-about a{color:#6a45d8}#gamenow-about .gamenow-about-links{color:#7c69a0}html.jr-playing #gamenow-about,html.lock-scroll #gamenow-about{display:none}@media (pointer:coarse){.level-picker button{min-height:40px}#rank-mode,#room-code{font-size:16px}}@media (width<=380px){.side .tools{gap:6px}.side .tool-btn{padding:0 9px;font-size:14px}.side .tool-btn#sound{min-width:44px;padding:0 8px}}@media (orientation:landscape) and (height<=520px) and (width>=600px){.race{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:center;gap:4px 12px;margin-bottom:6px;padding:6px 12px}.race-row{grid-template-columns:auto minmax(0,1fr);gap:6px;font-size:12px}.race-row span{max-width:90px}.race-bar{height:10px}.round-timer{font-size:16px}.team-line{margin-bottom:6px;padding:5px 10px;font-size:12px}}.hero-cta{flex-wrap:wrap;gap:10px;margin-top:26px;display:flex}.hero-cta button{cursor:pointer;border:0;border-radius:16px;min-height:54px;padding:0 24px;font-size:18px;font-weight:900;transition:transform .15s}.hero-cta button:hover{transform:translateY(-2px)}.hero-play{color:#fff;background:#fd6097;box-shadow:0 5px #d43f75}.hero-daily{color:#4f7fc0;background:#fff;box-shadow:0 5px #d6e6fb;border:1.5px solid #d6e6fb!important}.hero .hero-tags{color:#8a7aa3;margin-top:18px;font-size:14px;font-weight:800;line-height:1.5;display:block}.mode-grid{grid-template-columns:repeat(5,1fr)}.mode-card.daily{background:#eef5ff;border-color:#d6e6fb}.daily .mode-arrow{color:#3f78c2}.mode-card small{font-size:13px}.collect-chip,.daily-chip{color:#b07a12;background:#fff8e3;border-radius:10px;padding:4px 9px;font-size:12px;font-weight:900}.daily-chip{color:#3f78c2;background:#eef5ff}.tray-tip .kb-tip{color:#9a8cb0;margin-top:6px;font-size:12px;display:block}.tool-btn small{color:#9a8cb0;font-size:12px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.stage-overlay.result{animation:.4s step-end both result-late}@keyframes result-late{0%{opacity:0}to{opacity:1}}.finish-save{border-top:1px dashed #e9e0f2;margin-top:16px;padding-top:12px}.finish-save p{margin:6px 0;font-size:13px}@media (width<=900px){.mode-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=560px){.mode-grid{grid-template-columns:1fr}.hero-copy{padding:24px 22px 14px}.hero h1{margin:12px 0;font-size:36px}.hero-cta{margin-top:16px;margin-right:26px}.hero-cta button{flex:1;min-height:52px;padding:0 12px;font-size:16px}.hero .hero-tags{margin-top:12px;font-size:13px}.hero-art{height:150px}.hero-mold{transform:rotate(-6deg)scale(.62)}.mode-card small{font-size:12px}}.hint-panel{color:#5b3fa0;background:#fff9e9;border:1px solid #d7c4f5;border-radius:15px;gap:3px;margin-top:10px;padding:11px 42px 11px 14px;font-size:13px;font-weight:800;line-height:1.35;display:grid;position:relative;box-shadow:0 4px 14px #5d3f9d12}.hint-panel strong{color:#45316c}.hint-panel .hint-close{color:#5b3fa0;background:#fff;border:1px solid #d7c4f5;border-radius:9px;width:30px;height:30px;font-size:22px;line-height:1;position:absolute;top:8px;right:8px}.hint-panel .hint-more,.hint-panel .problem-actions button{color:#5b3fa0;cursor:pointer;background:#fff;border:1px solid #d7c4f5;border-radius:9px;width:max-content;min-height:32px;margin-top:5px;padding:5px 10px;font-size:13px;font-weight:800;line-height:1.3;position:static}.hint-panel .problem-actions button:disabled{opacity:.55;cursor:default}.placement-problem{color:#81435a;background:#fff5f5;border-color:#ef9aaf}.placement-problem strong{color:#913d55}.mold-cell.hole-cell{box-shadow:none;background:0 0}.mold-cell.reject:after{background:#ff6d9b88;border:3px solid #e54869;box-shadow:0 0 0 3px #e5486955,inset 0 3px 6px #5a3c8c26}.floating[data-fit]:before{z-index:1;color:#fff;border-radius:50%;place-items:center;width:26px;height:26px;font:900 16px/1 system-ui,sans-serif;display:grid;position:absolute;top:-12px;left:-12px;box-shadow:0 2px 6px #32145a55}.floating[data-fit=ok]:before{content:"✓";background:#2f9e61;border:2px solid #fff}.floating[data-fit=blocked]:before{content:"⊘";background:#4b3453;border:2px dashed #fff}.finish-fb:empty{display:none}.finish-fb .gamenow-fb-card{text-align:left;margin:10px 0}.mold-title{flex-wrap:wrap}.goal-chip,.combo-chip{color:#c58a00;white-space:nowrap;background:#fff;border-radius:10px;align-items:center;gap:5px;padding:3px 9px;font-size:12px;font-weight:900;display:inline-flex;box-shadow:0 2px 6px #6b528814}.goal-chip b{letter-spacing:1px;color:#f5b400;text-shadow:0 1px #b0800033;font-size:14px}.goal-chip span{color:#8a79a3;min-width:2.6em;font:900 12px DM Sans,sans-serif}.goal-chip.lost b{color:#d8c690}.goal-chip.drop{animation:.5s ease-out goal-drop}.combo-chip{color:#fff;background:linear-gradient(90deg,#ff8a5c,#ff5d8f);animation:.6s infinite alternate pulse}@keyframes goal-drop{0%{transform:none}30%{background:#ffe9ef;transform:translateY(3px)scale(.92)}to{transform:none}}.mold-cell.dead:after{background:#ff5d7a2e;border:2px solid #f45d76;animation:.9s ease-in-out infinite alternate dead-glow}@keyframes dead-glow{0%{box-shadow:inset 0 0 #f45d7600}to{box-shadow:inset 0 0 14px #f45d7666}}.stuck-panel{background:#fff1f4;border-color:#ffc9d5}.stuck-panel strong{color:#b8325a}.star-row{gap:4px;margin-top:2px;display:flex}.star-row i{color:#e6dcef;animation:star-pop .42s cubic-bezier(.2,1.6,.4,1) calc(.42s + var(--i) * .17s) both;font-size:30px;font-style:normal;line-height:1}.star-row i.on{color:#ffc21a;text-shadow:0 2px #d08a00,0 0 14px #ffd75a99}@keyframes star-pop{0%{opacity:0;transform:scale(0)rotate(-40deg)}to{opacity:1;transform:none}}.stage-overlay.result .star-why{color:#8a79a3;font-size:13px;font-weight:800}.combo-line{color:#ff5d8f;font-size:14px;font-style:normal;font-weight:900}.race-row.foe.close .race-bar{animation:.45s ease-in-out infinite alternate race-close}.race-row.foe.close span{color:#e0527f}@keyframes race-close{0%{box-shadow:0 0 #ff6d9b00}to{box-shadow:0 0 0 4px #ff6d9b40}}.squish{will-change:transform}.splash-drop{z-index:46;pointer-events:none;border-radius:50%;width:9px;height:9px;position:fixed;box-shadow:inset 0 -2px #0000001a}.mold.complete .placed .piece{animation-delay:var(--d,0s)}.run-card{text-align:left;background:#faf7ff;border:1px solid #ece3f8;border-radius:16px;margin:14px 0 4px;padding:12px 14px}.run-head{color:#6b4ca8;justify-content:space-between;align-items:center;font-size:13px;font-weight:900;display:flex}.run-head span{color:#c58a00}.run-strip{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.run-mold{min-width:42px;animation:pop-in .3s cubic-bezier(.2,1.4,.4,1) calc(var(--i) * 60ms) both;background:#fff;border-radius:11px;justify-items:center;padding:4px 3px;display:grid;box-shadow:0 2px 6px #6b528812}.run-mold b{font-size:22px;line-height:1.1}.run-mold small{letter-spacing:-.5px;color:#f5b400;font-size:10px}.run-mold small.s1{color:#d8b860}.run-more{color:#a595b8;align-self:center;font-size:12px;font-weight:900}.run-total{color:#8a79a3;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;margin-top:10px;font-size:12px;font-weight:900;display:grid}.run-total .collect-bar{height:8px;margin:0}.run-total b{color:#c58a00}.finish-modal p.run-next{color:#7c69a0;margin:8px 0 0;font-size:12px;font-weight:800}.collect-stars{color:#c58a00;text-align:right;font-size:12px;font-style:normal;display:block}.collect-item .mold-stars{letter-spacing:-.5px;color:#f5b400;font-size:10px;font-style:normal;line-height:1}.collect-item .mold-stars.s1{color:#d8b860}@media (width<=560px){.goal-chip,.combo-chip{padding:2px 7px;font-size:11px}.goal-chip b{font-size:12px}.star-row i{font-size:26px}.finish-modal{padding:26px 20px}.run-mold{min-width:38px}}html[data-gamenow-reduce-motion="1"] .star-row i,html[data-gamenow-reduce-motion="1"] .run-mold,html[data-gamenow-reduce-motion="1"] .combo-chip,html[data-gamenow-reduce-motion="1"] .race-row.foe.close .race-bar,html[data-gamenow-reduce-motion="1"] .mold-cell.dead:after,html[data-gamenow-reduce-motion="1"] .mold.complete .placed .piece,html[data-gamenow-reduce-motion="1"] .floating .piece{animation:none}@media (prefers-reduced-motion:reduce){html:not([data-gamenow-reduce-motion="0"]) .star-row i,html:not([data-gamenow-reduce-motion="0"]) .run-mold,html:not([data-gamenow-reduce-motion="0"]) .combo-chip,html:not([data-gamenow-reduce-motion="0"]) .mold-cell.dead:after{animation:none}}@media (width>=900px) and (width<=1415px) and (hover:hover) and (pointer:fine){.in-game .game{width:auto;margin-left:max(24px,100% - 1196px);margin-right:116px}}.game.is-waiting .play-area,.game.is-waiting [data-part=race]{display:none}.lobby.entry{width:min(560px,100% - 32px);margin:28px auto 24px}.lobby.entry-rank,.lobby.entry-molds,.lobby.entry-how-to{width:min(820px,100% - 32px)}.entry-card{background:#fff;border:1px solid #eee7f6;border-radius:26px;padding:22px;box-shadow:0 14px 40px #5d3f9d14}.entry-steps{gap:8px;margin:0 0 16px;padding:0;list-style:none;display:flex}.entry-steps li{color:#a595b8;border:1.5px solid #ebe3f5;border-radius:999px;align-items:center;gap:8px;padding:4px 14px 4px 4px;font-size:14px;font-weight:900;display:flex}.entry-steps b{color:#8a79a3;background:#f3edfb;border-radius:50%;place-items:center;width:28px;height:28px;font:900 13px DM Sans,sans-serif;display:grid}.entry-steps li.on{color:#46306e;border-color:#7052be}.entry-steps li.on b{color:#fff;background:#7052be}.entry-steps li.done b{color:#2f8a69;background:#e6f7ef}.entry-quick{color:#fff;text-align:left;background:linear-gradient(135deg,#ff7aa5,#fd6097 55%,#ef4f8a);border:0;border-radius:20px;align-items:center;gap:12px;width:100%;min-height:76px;padding:14px 20px;transition:transform .15s;display:flex;box-shadow:0 5px #d43f75,0 14px 26px #fd60973d}.entry-quick-text{flex:1;gap:3px;min-width:0;display:grid}.entry-quick strong{letter-spacing:-.5px;font-size:22px;line-height:1.15}.entry-quick small{opacity:.93;font-size:13px;font-weight:800;line-height:1.35}.entry-quick-art{place-items:center;animation:2.6s ease-in-out infinite float;display:grid;transform:rotate(-14deg)}.entry-quick-art .piece{cursor:inherit;filter:drop-shadow(0 4px #b9306466)}.entry-play{font-size:20px}.entry-quick:hover,.entry-mode:hover,.entry-choice:hover{transform:translateY(-1px)}.entry-quick:active{transform:translateY(3px);box-shadow:0 2px #d43f75}.entry-card h2{color:#2f2450;letter-spacing:-.6px;margin:20px 0 12px;font-size:24px;line-height:1.2}.entry-modes{gap:8px;display:grid}.entry-mode{text-align:left;width:100%;min-height:62px;color:inherit;background:#fbf9fe;border:1.5px solid #eee7f6;border-radius:18px;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:12px;padding:7px 16px 7px 8px;transition:transform .15s,border-color .15s;display:grid}.entry-mode:hover{border-color:#d9c8f5}.entry-icon{background:#fff;border-radius:14px;place-items:center;width:46px;height:46px;font-size:24px;display:grid}.entry-text{min-width:0}.entry-text strong{color:#3b2c5e;font-size:17px;line-height:1.2;display:block}.entry-text small{color:#8a79a3;margin-top:2px;font-size:13px;font-weight:700;line-height:1.3;display:block}.entry-arrow{color:#b3a4c9;text-align:center;min-width:16px;font:900 26px/1 DM Sans,sans-serif}.entry-arrow.go{color:#c3b5d8;font-size:16px}.m-relax .entry-icon{background:#fff3cf}.m-daily .entry-icon{background:#e3efff}.m-solo .entry-icon{background:#ffe6ef}.m-friend .entry-icon{background:#e1f6ee}.entry-links{flex-wrap:wrap;justify-content:center;gap:2px 4px;margin-top:12px;display:flex}.entry-link{color:#7c69a0;background:0 0;border:0;border-radius:12px;min-height:44px;padding:0 10px;font-size:14px;font-weight:900}.entry-link i{margin-right:5px;font-style:normal}.entry-link:hover{background:#f5f0fc}.entry-link b{color:#fd6097;font-family:DM Sans,sans-serif}.entry-account{color:#a595b8;flex-wrap:wrap;justify-content:center;align-items:center;gap:0 4px;margin:0;font-size:12px;font-weight:800;display:flex}.entry-account b{color:#6b4ca8}.entry-account .entry-link{font-size:13px}.entry-notice{color:#94650a;background:#fff8e6;border:1px solid #ffe0a3;border-radius:14px;width:100%;min-height:44px;padding:6px 14px;font-size:13px;font-weight:900}.entry-sub{color:#8a79a3;margin:-6px 0 14px;font-size:14px;font-weight:800}.entry-choices.levels{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.entry-choices.friends{gap:10px;display:grid}.entry-choice{text-align:left;min-height:90px;color:inherit;background:#fbf9fe;border:1.5px solid #eee7f6;border-radius:18px;align-content:start;gap:3px;padding:12px 14px;transition:transform .15s,border-color .15s,box-shadow .15s;display:grid}.entry-choice strong{color:#3b2c5e;letter-spacing:-.3px;font-size:18px}.entry-choice small{color:#8a79a3;font-size:12px;font-weight:800;line-height:1.3}.entry-choice em{color:#b98413;margin-top:auto;padding-top:3px;font-size:12px;font-style:normal;font-weight:900}.entry-choice.on{background:#f6f1ff;border-color:#7052be;box-shadow:inset 0 0 0 1.5px #7052be,0 8px 18px #7052be24}.entry-choice.lv3 strong,.entry-choice.lv4 strong{color:#d8487a}.entry-choice.wide{grid-template-columns:46px minmax(0,1fr);align-items:center;gap:12px;min-height:74px;padding:10px 14px 10px 10px}.entry-note{text-align:center;color:#8a79a3;margin:14px 0;font-size:13px;font-weight:800}.entry-actions{grid-template-columns:76px minmax(0,1fr);gap:10px;margin-top:16px;display:grid}.entry-back{color:#7c69a0;background:#fff;border:1.5px solid #e3d8f3;border-radius:18px;min-height:56px;font-size:22px;font-weight:900}.entry-go{color:#fff;text-overflow:ellipsis;white-space:nowrap;background:#7052be;border:0;border-radius:18px;min-height:56px;padding:0 16px;font-size:18px;font-weight:900;overflow:hidden;box-shadow:0 5px #543997}.entry-go:hover{background:#6243b4}.entry-go:active{transform:translateY(3px);box-shadow:0 2px #543997}.entry-join{border-top:1px dashed #e6dcf3;grid-template-columns:minmax(0,1fr);gap:8px;margin-top:18px;padding-top:14px;display:grid}.entry-join label{color:#8a79a3;font-size:13px;font-weight:900}.entry-join>div{gap:8px;display:flex}.entry-join #room-code{border-radius:14px;flex:1;width:auto;min-width:0;height:48px}.entry-join .join-btn{white-space:nowrap;border-radius:14px;min-height:48px}.entry-invite{text-align:center}.entry-invite .invite-mark{font-size:56px;line-height:1.1;animation:2.6s ease-in-out infinite float}.entry-invite h2{margin-top:8px}.entry-invite .entry-sub{margin:0}.entry-invite .code{letter-spacing:3px;color:#7650bd;vertical-align:-2px;font:900 24px DM Sans,sans-serif}.entry-invite .entry-actions{grid-template-columns:1fr}.invite-skip{margin-top:8px}.entry-back-row{color:#7c69a0;background:#fff;border:0;border-radius:14px;min-height:44px;padding:0 16px;font-size:14px;font-weight:900;box-shadow:0 3px 10px #6b528812}.entry-sheet .how-card,.entry-sheet .collection-card,.entry-sheet .rank-card{margin-top:12px;padding:24px 28px}.entry-sheet .section-heading{margin-bottom:14px}.entry-sheet .collect-grid{grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:6px}.entry-sheet .collect-item{border-radius:12px;gap:1px;padding:6px 2px}.entry-sheet .collect-item span{font-size:24px}.entry-sheet .collect-item small{font-size:10.5px}.entry-sheet .collect-tip{margin:10px 0 0}.entry-sheet .how-lead{margin:-4px 0 12px}.entry-sheet .how-pic{height:58px;margin-bottom:6px}.entry-sheet .how-step{padding:12px}.entry-sheet .practice-card{padding:18px 22px}.practice-card h2{color:#342852;margin:0 0 6px;font-size:18px}.practice-card p{color:#7c6d93;margin:4px 0;font-size:13px;font-weight:700;line-height:1.45}.practice-card p:first-of-type{color:#4b3670;font-weight:900}.practice-card .primary{border-radius:14px;width:100%;min-height:48px;margin-top:8px;font-size:15px}.practice-card .ghost-btn{color:#7c69a0;background:#fff;border:1px solid #e3d8f3;border-radius:12px;width:100%;min-height:44px;margin-top:8px;font-size:14px;font-weight:900}html[data-gamenow-reduce-motion="1"] .entry-quick-art,html[data-gamenow-reduce-motion="1"] .invite-mark{animation:none}@media (prefers-reduced-motion:reduce){html:not([data-gamenow-reduce-motion="0"]) .entry-quick-art,html:not([data-gamenow-reduce-motion="0"]) .invite-mark{animation:none}}@media (width<=560px){.lobby.entry{width:auto;margin:10px 12px 12px}.on-entry .footer{display:none}.lobby.entry-how,.lobby.entry-level,.lobby.entry-friend,.lobby.entry-invite{margin-right:48px}.entry-card{border-radius:22px;padding:16px}.entry-steps{margin-bottom:12px}.entry-steps li{padding-right:12px;font-size:13px}.entry-quick{min-height:70px;padding:12px 16px}.entry-quick small{font-size:12px}.entry-card h2{margin:14px 0 10px;font-size:21px}.entry-mode{gap:10px;min-height:58px;padding:6px 12px 6px 6px}.entry-icon{border-radius:12px;width:42px;height:42px;font-size:22px}.entry-mode{grid-template-columns:42px minmax(0,1fr) auto}.entry-text strong{font-size:16px}.entry-text small{font-size:12px}.entry-links{grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;margin-top:6px;display:grid}.entry-links .entry-link{flex-direction:column;justify-content:center;align-items:center;gap:1px;min-height:48px;padding:3px 4px;font-size:12.5px;line-height:1.2;display:flex}.entry-links .entry-link i{margin:0;font-size:17px}.entry-link{padding:0 7px;font-size:13px}.entry-quick-art,.entry-why{display:none}.entry-quick strong{font-size:19px}.entry-choices.levels{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.entry-choice{min-height:80px;padding:10px 12px}.entry-choice strong{font-size:17px}.entry-choice small,.entry-choice em{font-size:11.5px}.entry-note{margin:10px 0}.entry-actions{grid-template-columns:64px minmax(0,1fr);margin-top:12px}.entry-go{font-size:17px}.lobby.entry-rank,.lobby.entry-molds,.lobby.entry-how-to{width:auto;margin:10px 12px 12px}.entry-sheet .collection-card,.entry-sheet .rank-card,.entry-sheet .how-card{margin-top:10px;padding:16px 14px}.entry-sheet .collect-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.entry-sheet .collect-item{align-content:center;min-height:38px;padding:4px 0 3px}.entry-sheet .collect-item span{font-size:19px}.entry-sheet .collect-item small{display:none}.entry-sheet .collect-item .mold-stars{font-size:8px}.entry-sheet .collect-item em{font-size:9px;top:1px;right:3px}.entry-sheet .collect-tip{font-size:12px}.entry-sheet .how-lead{font-size:15px}.entry-sheet .how-pic{height:46px}.entry-sheet .how-step{padding:9px 8px}.entry-sheet .how-step b{font-size:15px}.entry-sheet .how-step p{margin-top:3px;line-height:1.4}}@media (width<=560px) and (height<=620px){.lobby.entry{margin-top:6px}.entry-card{padding:10px 14px}.entry-steps{margin-bottom:8px}.entry-steps li{padding:3px 10px 3px 3px}.entry-steps b{width:24px;height:24px}.entry-quick{min-height:58px;padding:9px 14px}.entry-quick strong{font-size:18px}.entry-card h2{margin:8px 0 7px;font-size:19px}.entry-modes{gap:6px}.entry-mode{grid-template-columns:36px minmax(0,1fr) auto;min-height:50px}.entry-icon{width:36px;height:36px;font-size:19px}.entry-links .entry-link{min-height:42px}.entry-links .entry-link i{font-size:15px}.entry-account .entry-link{min-height:40px}.entry-choices.levels{gap:6px}.entry-choice{min-height:68px;padding:8px 10px}.entry-choice strong{font-size:16px}.entry-note{margin:6px 0;font-size:12px}.entry-actions{margin-top:6px}.entry-back,.entry-go{min-height:50px}.entry-choice.wide{min-height:62px}.entry-join{margin-top:12px;padding-top:10px}}@media (width<=350px){.entry-actions{grid-template-columns:52px minmax(0,1fr)}.entry-go{padding:0 10px;font-size:15px}.entry-back{font-size:20px}}html.jr-port.lock-scroll .game{width:calc(100% - 20px);min-height:0;padding-bottom:calc(env(safe-area-inset-bottom) + 8px);flex-direction:column;flex:1 1 0;margin:6px auto 0;display:flex}html.jr-port.lock-scroll .game-top{flex:none;margin-bottom:8px}html.jr-port.lock-scroll .game-top .back-btn{min-height:44px}html.jr-port.lock-scroll [data-part=race]{flex:none}html.jr-port.lock-scroll .race,html.jr-port.lock-scroll .team-line{margin-bottom:8px}html.jr-port.lock-scroll .play-area{flex-direction:column;flex:1 1 0;gap:8px;min-height:0;display:flex;position:relative}html.jr-port.lock-scroll .stage{box-sizing:border-box;width:var(--jr-stage,100%);height:var(--jr-stage,auto);border-radius:22px;flex-direction:column;flex:none;align-self:center;min-height:0;padding:8px;display:flex}html.jr-port.lock-scroll .stage .mold-wrap{flex:1 1 0;align-items:center;min-height:0}html.jr-port.lock-scroll .mold-title{gap:4px 6px;margin-bottom:6px}html.jr-port.lock-scroll .mold-title strong{font-size:18px}html.jr-port.lock-scroll .mold-emoji{font-size:22px}html.jr-port.lock-scroll .level-picker{flex-wrap:nowrap;gap:4px;margin:0 0 6px}html.jr-port.lock-scroll .level-picker button{flex:1 1 0;min-width:0;max-width:64px;min-height:44px;padding:0 2px}html.jr-port.lock-scroll .side{flex-direction:column;flex:1 0 auto;gap:8px;display:flex}html.jr-port.lock-scroll .tray{flex-direction:column;flex:1 0 auto;justify-content:center;margin:0;padding:10px 8px;display:flex}html.jr-port.lock-scroll .tray-row{gap:10px;min-height:0}html.jr-port.lock-scroll .tools{flex-wrap:nowrap;flex:none;gap:6px;margin:0}html.jr-port.lock-scroll .tool-btn{white-space:normal;flex:1 1 0;min-width:0;min-height:48px;padding:0 6px;font-size:14px;line-height:1.15}html.jr-port.lock-scroll .tool-btn#sound{flex:0 0 52px}html.jr-port.lock-scroll [data-part=hint]{z-index:6;width:calc(min(var(--jr-stage,100%),100%) - 12px);position:absolute;top:4px;left:50%;transform:translate(-50%)}html.jr-port.lock-scroll [data-part=hint] .hint-panel{margin:0;box-shadow:0 8px 22px #5d3f9d33}html.jr-port.lock-scroll .hint-panel .hint-close{width:40px;height:40px;top:4px;right:4px}@media (width<=380px){html.jr-port.lock-scroll .mold-title .collect-chip{display:none}html.jr-port.lock-scroll .mold-title strong{font-size:17px}}@media (orientation:portrait) and (width<=560px){.modal-backdrop{padding:calc(env(safe-area-inset-top) + 10px) 12px calc(env(safe-area-inset-bottom) + 12px);align-items:start}.finish-modal{border-radius:22px;flex-direction:column;padding:18px 18px 16px;display:flex}.finish-emoji{font-size:40px}.finish-modal h2{margin:4px 0;font-size:23px}.finish-modal p{margin:6px 0}.finish-modal .finish-fb{order:2;margin-top:12px}.finish-modal .finish-save{order:3}}.site-header .brand{min-height:44px}@media (height<=560px){.finish-modal{flex-direction:column;display:flex}.finish-modal .finish-fb{order:2;margin-top:10px}.finish-modal .finish-save{order:3}}
