@font-face{font-family:Arcade;src:local('Avenir Next'),local('Avenir'),local('Century Gothic');font-display:swap}
:root{font-family:Arcade,'Trebuchet MS',Arial,sans-serif;color:#e8edf9;background:#090e1c;color-scheme:dark;font-synthesis:none;--blue:#8aaeff;--muted:#9aa9c3;--line:#a9c6ff20;--glass:linear-gradient(145deg,#27334a85,#131d31b8);--shadow:0 15px 45px #0003,inset 0 1px 0 #ffffff09}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden}body{width:100vw;height:100vh;height:100dvh;display:grid;grid-template-rows:auto auto minmax(0,1fr);background:radial-gradient(ellipse at 18% 18%,#23436f44,transparent 50%),radial-gradient(ellipse at 90% 80%,#6039a92b,transparent 48%),#090e1c;isolation:isolate}body:before{content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(#b6cfff04 1px,transparent 1px),linear-gradient(90deg,#b6cfff04 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(#000,transparent)}
button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:default;opacity:.45}button:focus-visible,a:focus-visible,select:focus-visible{outline:2px solid #a6c6ff;outline-offset:3px}svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.svg-library{position:absolute;width:0;height:0;overflow:hidden}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header{position:sticky;top:0;z-index:40;min-height:68px;padding:10px max(24px,calc((100vw - 1370px)/2));padding-top:max(10px,env(safe-area-inset-top));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#101929b8;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}.brand{display:flex;gap:10px;align-items:center;color:#edf3ff;text-decoration:none;font-size:19px;font-weight:900;letter-spacing:-.8px}.brand img{object-fit:contain}.brand-site{color:#8cb3ff}.brand small{display:block;font-size:7px;font-weight:600;letter-spacing:2px;margin-top:4px;color:var(--muted)}.header-center{color:var(--muted);font-size:11px;display:flex;align-items:center;gap:8px}.status-dot{display:inline-block;width:6px;height:6px;background:#70e3c4;box-shadow:0 0 10px #70e3c43b;border-radius:50%;flex-shrink:0}.site-header nav{display:flex;gap:8px;align-items:center}.icon-button{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);background:#a7c6ff09;border-radius:11px;color:#b4c7e8}.icon-button:hover{background:#a7c6ff18}.install-button{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:11px;background:#729cff17;color:#b8ceff;border:1px solid #729cff35;font-size:11px;font-weight:700}.install-button svg{width:16px;height:16px}
main{grid-row:3;width:100%;max-width:1370px;min-height:0;margin:0 auto;padding:20px 24px max(10px,env(safe-area-inset-bottom));display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:16px}.page-heading{display:flex;align-items:center;justify-content:space-between}.eyebrow{font-size:8px;letter-spacing:2px;font-weight:700;color:#a6b8d8;display:flex;gap:8px;align-items:center}.tiny-grid{color:#80d9e3;font-size:14px}h1{position:relative;width:max-content;font-size:40px;line-height:1.1;letter-spacing:-2px;margin:6px 0;font-weight:900}h1>span:first-child{color:#bdd0ff;background:linear-gradient(110deg,#e8efff,#91b8ff 65%,#b5a0f4);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.title-spark{position:absolute;right:-25px;top:-3px;font-size:23px;color:#85dfd2;transform:rotate(15deg)}.page-heading p{font-size:11px;color:var(--muted);margin:0}.personal-best{display:flex;gap:12px;align-items:center;border:1px solid var(--line);background:var(--glass);border-radius:15px;padding:12px 19px;box-shadow:var(--shadow);backdrop-filter:blur(18px)}.personal-best>svg{color:#b7a2ef;fill:#b7a2ef15;width:24px;height:24px}.personal-best span{font-size:7px;font-weight:700;letter-spacing:1.5px;color:#a4b2cc;display:block}.personal-best strong{font-size:22px;display:block;margin-top:3px;font-variant-numeric:tabular-nums}
.game-layout{min-height:0;display:grid;grid-template-columns:minmax(180px,230px) minmax(0,1fr) minmax(180px,235px);gap:28px;align-items:stretch}.journey-column,.community-column{min-height:0;display:flex;flex-direction:column;gap:14px}.session-card,.journey-card,.members-card,.quick-guide,.tool-button{border:1px solid var(--line);border-radius:20px;background:var(--glass);box-shadow:var(--shadow);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.session-card{padding:20px}.card-kicker{display:flex;gap:7px;align-items:center;font-size:7px;letter-spacing:1px;font-weight:700;color:#acbbd5}.small-orbit{width:7px;height:7px;border:1.6px solid #8bafff;border-radius:3px;transform:rotate(30deg)}.live-pill{margin-left:auto;background:#70e3c410;color:#8cdcc9;padding:5px 6px;border-radius:5px;letter-spacing:.4px;font-size:6px}.score-label{margin-top:22px;font-size:10px;color:var(--muted)}.score{font-size:43px;font-weight:900;letter-spacing:-2px;margin-top:3px;font-variant-numeric:tabular-nums;line-height:1.2}.score span{font-size:11px;font-weight:500;color:var(--muted);letter-spacing:0;margin-left:7px}.goal-row{font-size:10px;display:flex;justify-content:space-between;margin-top:20px;color:var(--muted)}.goal-row strong{font-weight:500;color:#c0d0ef}.progress-track{height:6px;border-radius:10px;background:#b3c9ff10;position:relative;margin-top:10px;margin-right:5px}.progress-track>span{display:block;height:100%;width:0;background:linear-gradient(90deg,#759bff,#7de1d3);border-radius:10px;transition:width .45s;box-shadow:0 0 12px #8eafff3b}.progress-track svg{position:absolute;right:-5px;top:-4px;width:14px;height:14px;fill:#bca2ec;stroke:#d8c5fa;stroke-width:1.5}.moves-row{display:flex;gap:12px;align-items:center;border-top:1px solid var(--line);margin-top:22px;padding-top:18px}.moves-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:#94b3ff12;color:#a4bded}.moves-row strong{font-size:26px;line-height:1;display:block;font-variant-numeric:tabular-nums}.moves-row span{display:block;font-size:9px;color:var(--muted);margin-top:5px}.moves-decoration{margin-left:auto;font-size:31px;color:#738cba}.session-tip{font-size:8px;margin:18px 0 0;color:#91a4c6;text-align:center}.journey-card{padding:17px}.section-label{font-size:7px;letter-spacing:1px;font-weight:700;display:flex;align-items:center;justify-content:space-between;color:#a4b5d3}.section-label>span{font-size:7px;color:#8d9bb5;letter-spacing:.6px}.section-label>span[data-i18n]:first-child{font-size:inherit;color:inherit;letter-spacing:inherit}.level-list{margin-top:12px;display:flex;flex-direction:column;gap:2px}.level-item{position:relative;width:100%;border:0;background:transparent;text-align:left;display:flex;align-items:center;gap:10px;padding:8px 0;border-radius:10px}.level-item:disabled{opacity:.65}.level-circle{display:flex;align-items:center;justify-content:center;background:#bacdff08;color:#93a5c5;border:1px solid var(--line);border-radius:11px;width:30px;height:30px;flex-shrink:0;font-size:10px;font-weight:700}.level-circle svg{width:13px;height:13px}.level-item.active .level-circle{background:linear-gradient(135deg,#466cc3,#7a62b9);color:white;box-shadow:0 0 20px #789fff20;border-color:#a6bcff50}.level-item.completed .level-circle{color:#8ee1ca;background:#70e3c410}.level-item strong{display:block;font-size:10px;font-weight:600;letter-spacing:-.2px}.level-item small{display:block;color:#91a2bf;font-size:7px;margin-top:4px}.level-item.active strong{color:#bbd1ff}.level-arrow{margin-left:auto;color:#9ab8ed;width:14px}.restart-button{border:0;background:transparent;color:#a2b5d7;font-size:10px;display:flex;align-items:center;justify-content:center;gap:7px;margin:0 auto;padding:8px}.restart-button svg{width:13px;height:13px}
.play-column{min-width:0;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;gap:10px}.board-heading{display:flex;align-items:center;justify-content:space-between;min-height:30px;gap:8px}.board-heading>div{display:flex;align-items:center;gap:10px;min-width:0}.level-tag{font-size:8px;font-weight:700;letter-spacing:.5px;color:#b2caff;border:1px solid #8badff30;background:#8badff10;padding:6px 8px;border-radius:7px;white-space:nowrap}.board-heading h2{font-size:13px;font-weight:600;letter-spacing:-.4px;margin:0}.board-size{font-size:9px;color:#94a7c8;white-space:nowrap}.board-size>span{font-size:6px;letter-spacing:1px;margin-left:5px}.board-stage{min-width:0;min-height:0;display:grid;place-items:center;container-type:size}.board-frame{position:relative;width:min(100cqw,100cqh);aspect-ratio:1;border:1px solid #a7c5ff30;border-radius:23px;padding:11px;background:linear-gradient(140deg,#5479af26,#8468b81a 60%,#69c4d51a);box-shadow:0 18px 45px #0004,inset 0 1px 1px #c3daff15}.board{position:relative;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));height:100%;gap:5px;touch-action:none;user-select:none;isolation:isolate}.tile{position:relative;aspect-ratio:1;min-width:0;min-height:0;padding:0;border:0;border-radius:12px;background:transparent;transition:transform .22s;z-index:1;opacity:1!important}.token{width:100%;height:100%;border:1px solid color-mix(in srgb,var(--edge) 60%,#27344e);border-radius:12px;background:linear-gradient(145deg,color-mix(in srgb,var(--tint) 23%,#26344e),color-mix(in srgb,var(--tint) 12%,#172238));box-shadow:0 2px 0 #03081680,inset 0 1px 0 #ffffff20;display:flex;align-items:center;justify-content:center;transition:transform .24s,box-shadow .2s;position:relative;overflow:hidden}.token:before{content:'';position:absolute;inset:3px;border:1px solid #ffffff09;border-radius:9px}.logo-window{display:flex;align-items:center;justify-content:center;position:relative;width:87%;height:78%;background:var(--logo-surface,#fff);border-radius:6px;padding:3px;pointer-events:none}.member-art{display:block;fill:none;stroke:none;width:100%;height:100%;overflow:hidden;flex-shrink:1;pointer-events:none}.tile:hover .token{transform:translateY(-2px);box-shadow:0 3px 0 #03081680,0 0 15px #92b5ff20}.tile.selected{z-index:2;outline:2px solid #a3c7ff;outline-offset:1px}.tile.selected .token{transform:scale(.92);box-shadow:inset 0 0 0 2px #c1d6ff}.tile.hinted{animation:hint 1s ease-in-out infinite;z-index:2}.tile.clearing .token{animation:clear .3s ease-in forwards}.tile.invalid{animation:shake .25s}.tile:focus-visible{z-index:3;outline-offset:1px}.board-decoration{display:none}.board-message{display:flex;align-items:center;justify-content:center;gap:7px;min-height:24px;font-size:10px;line-height:1.5;color:#a4b7d9;text-align:center}.message-spark{font-size:18px;color:#85d8d1}.board-tools{display:flex;gap:10px}.tool-button{flex:1;min-width:0;display:flex;align-items:center;gap:10px;border-radius:14px;padding:10px 12px;text-align:left;font-size:11px;font-weight:600}.tool-button:hover{border-color:#9cbcff70}.tool-button small{display:block;font-size:7px;font-weight:400;color:var(--muted);margin-top:4px}.tool-icon{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:10px;flex-shrink:0}.tool-icon svg{width:18px;height:18px}.hint-icon{background:#d5bc7e14;color:#e2c98f}.shuffle-icon{background:#b9a1f318;color:#c5adfc}.tool-suffix{margin-left:auto;font-size:10px;color:#b2c7ed;padding:2px 5px;border:1px solid var(--line);border-radius:5px}
.members-card{padding:20px 17px 0}.members-card .section-label>span:last-child{font-size:14px;color:#c3a6f1}.members-card h2{font-size:21px;letter-spacing:-.8px;line-height:1.15;margin:18px 0 9px}.members-card>p{font-size:10px;color:var(--muted);line-height:1.7;margin:0 0 18px}.member-list{display:flex;flex-direction:column;gap:11px}.member{display:flex;align-items:center;gap:9px;color:inherit;text-decoration:none}.member:hover strong{text-decoration:underline;text-underline-offset:3px}.member-logo{width:36px;height:32px;border:1px solid var(--edge);background:var(--logo-surface,#fff);border-radius:8px;padding:3px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.member strong{display:block;font-size:9px;font-weight:600}.member small{display:block;font-size:7px;color:var(--muted);margin-top:3px}.member>span:last-child{margin-left:auto;width:4px;height:4px;background:var(--edge);border-radius:50%}.member-footer{border-top:1px solid var(--line);margin-top:18px;padding:13px 0;display:flex;gap:7px;align-items:center;font-size:8px;color:var(--muted)}.quick-guide{border-style:dashed;padding:16px}.guide-icon{width:25px;height:25px;display:flex;align-items:center;justify-content:center;border-radius:8px;background:#a6c3ff12;color:#abc7fc;font-size:19px}.quick-guide h3{font-size:11px;margin:10px 0 7px}.quick-guide p{font-size:9px;line-height:1.7;color:var(--muted);margin:0}.quick-guide button{display:flex;align-items:center;gap:7px;color:#afc9ff;font-size:9px;padding:0;margin-top:10px;border:0;background:transparent}.quick-guide button svg{width:13px;height:13px}footer{display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid var(--line);padding:10px 0 0;color:#8f9fbc;font-size:8px;min-width:0}footer>span:first-child{display:flex;gap:7px;align-items:center}footer>span:nth-child(2){font-size:7px;letter-spacing:1.3px}.footer-spark{color:#b5a0f4}
.float-layer{position:absolute;inset:0;pointer-events:none;overflow:hidden;border-radius:23px;z-index:5}.float-points{position:absolute;left:50%;top:45%;color:#e6f0ff;font-size:44px;font-weight:900;letter-spacing:-2px;text-shadow:0 2px 12px #182745,0 0 20px #5d9aff;animation:float 1s ease-out forwards;white-space:nowrap}.float-points small{display:block;font-size:12px;letter-spacing:1px;text-align:center;color:#c5adfc;margin-top:4px}.toast{position:fixed;bottom:max(24px,env(safe-area-inset-bottom));left:50%;transform:translate(-50%,20px);opacity:0;pointer-events:none;z-index:100;background:#243451ee;border:1px solid #a6c4ff35;color:#eaf1ff;padding:13px 20px;border-radius:13px;font-size:12px;max-width:90vw;text-align:center;transition:.2s;backdrop-filter:blur(18px)}.toast.visible{opacity:1;transform:translate(-50%,0)}dialog{border:1px solid #a8c6ff35;border-radius:24px;max-width:calc(100vw - 28px);max-height:calc(100dvh - 28px);overflow:auto;width:440px;padding:34px 28px 26px;color:#e8edf9;box-shadow:0 20px 100px #0008;text-align:center;background:#152037ed;backdrop-filter:blur(24px)}dialog::backdrop{background:#030814aa;backdrop-filter:blur(8px)}.modal-close{position:absolute;right:12px;top:12px;width:30px;height:30px}.modal-close svg{width:17px;height:17px}.modal-eyebrow{font-size:9px;letter-spacing:1.5px;color:#b0c8ef;font-weight:700;margin-top:8px}.modal-hero{width:60px;height:60px;margin:0 auto 16px;background:#9dbbff14;border:1px solid var(--line);border-radius:19px;display:flex;align-items:center;justify-content:center;font-size:30px;color:#b0caff}.modal-hero svg{width:30px;height:30px}.modal-title{font-size:28px;letter-spacing:-1.2px;margin:12px 0}.modal-body{font-size:12px;line-height:1.8;color:#a9b9d5}.primary-button{display:flex;justify-content:center;align-items:center;gap:9px;width:100%;margin-top:22px;padding:14px;border:1px solid #b9cdff30;border-radius:12px;background:linear-gradient(110deg,#496fcb,#7760b3);color:white;font-size:13px;box-shadow:0 5px 20px #789fff18}.primary-button:hover{filter:brightness(1.12)}.primary-button svg{width:17px;height:17px}.secondary-button{display:block;width:100%;padding:12px;border:0;background:transparent;color:#b3c8ec;font-size:11px;margin-top:7px}.how-steps{text-align:left;display:flex;flex-direction:column;gap:17px;margin:24px 0}.how-step{display:flex;gap:12px;align-items:flex-start}.how-step>span{width:26px;height:26px;display:flex;align-items:center;justify-content:center;background:#a7c3ff15;color:#b8d0ff;border-radius:8px;font-size:10px;flex-shrink:0}.how-step strong{display:block;font-size:12px;margin:3px 0 5px}.how-step p{font-size:11px;color:var(--muted);margin:0;line-height:1.7}.keyboard-note{padding:12px;border-radius:10px;background:#a7c3ff08;font-size:10px;color:#a2b5d5;line-height:1.7}.results-stars{display:flex;justify-content:center;gap:13px;color:#e4c68b;margin:16px 0}.results-stars svg{width:38px;height:38px;fill:#dfbc7144}.results-stars svg.dim{color:#53627e;fill:#a5b9e010}.result-score{font-size:49px;font-weight:900;letter-spacing:-2px;margin:20px 0 3px}.result-score-label{font-size:11px;color:var(--muted)}.confetti{position:fixed;top:-20px;width:9px;height:13px;z-index:200;pointer-events:none;animation:confetti 2.8s linear forwards}.noscript{position:fixed;inset:30%;background:#152037;padding:30px;border:2px solid #8aaeff;border-radius:20px;z-index:100;text-align:center}.settings-field{display:flex;flex-direction:column;gap:10px;text-align:left;font-size:12px;font-weight:600;margin-top:24px}.settings-field select{font:inherit;font-size:13px;color:#d5e2ff;background:#202d46;border:1px solid #a5c1ff30;border-radius:12px;padding:13px 10px;max-width:100%;width:100%;cursor:pointer}.settings-current{font-size:10px;line-height:1.7;color:#9fb1d0;text-align:left;margin:8px 0 20px}.settings-sound{display:flex;align-items:center;justify-content:center;gap:9px;background:#a5c1ff0a;border:1px solid var(--line);border-radius:12px;padding:12px;width:100%;font-size:12px}.settings-sound svg{width:18px;height:18px}
.pwa-update-bar[hidden]{display:none}.pwa-update-bar{z-index:30;background:#1c2b47ed;border-bottom:1px solid #9ebfff30;color:#d3e2ff;backdrop-filter:blur(22px)}.update-inner{max-width:1370px;margin:auto;padding:12px 24px;display:flex;align-items:center;gap:12px}.update-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:#98b8ff14;flex-shrink:0;color:#9de5dc}.update-icon svg{width:17px;height:17px}.update-copy{flex:1;min-width:0}.update-copy strong{display:block;font-size:12px}.update-copy p{font-size:10px;line-height:1.6;color:#adbfde;margin:3px 0 0}.update-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.update-actions button{font-size:11px;border-radius:10px;padding:10px 13px;border:1px solid transparent;background:transparent;color:#bdceec}.update-actions #update-now{background:linear-gradient(110deg,#496fcb,#7760b3);color:white;border-color:#b7ceff30}.update-actions button:hover:not(:disabled){filter:brightness(1.2);background-color:#a8c4ff15}.settings-update-check{margin-top:12px;padding:10px}.settings-update-check+.primary-button{margin-top:10px}
@keyframes hint{50%{transform:scale(.91);filter:brightness(1.15);outline:2px solid #89e2d0}}@keyframes clear{30%{transform:scale(1.12);filter:brightness(1.2)}100%{transform:scale(0) rotate(15deg);opacity:0}}@keyframes shake{25%,75%{transform:translateX(-3px)}50%{transform:translateX(3px)}}@keyframes float{0%{opacity:0;transform:translate(-50%,10px) scale(.7)}20%{opacity:1;transform:translate(-50%,-10px) scale(1)}80%{opacity:1}100%{opacity:0;transform:translate(-50%,-70px) scale(1.05)}}@keyframes confetti{to{transform:translate(var(--drift),105vh) rotate(650deg);opacity:0}}
@media(max-width:1120px){.game-layout{grid-template-columns:200px minmax(0,1fr);gap:24px}.community-column{display:none}.header-center{display:none}.board-size>span{display:none}}
@media(max-height:850px) and (min-width:651px){main{padding-top:14px;gap:12px}.page-heading h1{font-size:34px}.eyebrow{font-size:7px}.session-card{padding:16px}.score-label{margin-top:14px}.score{font-size:36px}.goal-row{margin-top:13px}.moves-row{margin-top:15px;padding-top:13px}.session-tip{display:none}.journey-card{padding:14px}.level-list{margin-top:8px}.level-item{padding:6px 0}.quick-guide{display:none}.members-card{padding:16px 15px 0}.members-card h2{margin-top:14px;font-size:19px}.members-card>p{margin-bottom:12px}.member-list{gap:9px}.member-footer{margin-top:14px}.journey-column{gap:12px}}
@media(max-height:650px) and (min-width:651px){.site-header{min-height:54px;padding-top:7px;padding-bottom:7px}.brand img{width:33px;height:33px}.page-heading .eyebrow,.page-heading p{display:none}.page-heading h1{font-size:29px;margin:0}.personal-best{padding:6px 12px}.personal-best strong{font-size:17px}.personal-best>svg{width:19px;height:19px}.card-kicker,.session-tip,.moves-icon,.moves-decoration{display:none}.score-label{margin-top:0}.score{font-size:30px}.moves-row{padding-top:10px;margin-top:13px}.moves-row strong{font-size:23px}.level-circle{width:25px;height:25px;border-radius:8px}.level-item strong{font-size:9px}.level-item small{font-size:6px}.journey-card{padding:12px}.journey-column{gap:8px}.restart-button{padding:4px;font-size:9px}.members-card>p,.members-card h2,.member small,.member-footer{display:none}.member-list{margin:14px 0;gap:9px}.member-logo{width:32px;height:28px}.member strong{font-size:8px}footer{padding-top:7px;font-size:7px}.board-message{font-size:9px}.tool-button{padding:7px 10px}.tool-icon{width:27px;height:27px}}
@media(max-width:650px){.site-header{min-height:58px;padding:8px 14px;padding-top:max(8px,env(safe-area-inset-top))}.brand{font-size:16px;gap:7px}.brand img{width:32px;height:32px}.brand small{font-size:6px;letter-spacing:1.3px}.site-header nav{gap:6px}.icon-button{width:33px;height:33px;border-radius:10px}.icon-button svg{width:18px;height:18px}.install-button{width:33px;height:33px;padding:8px;justify-content:center;border-radius:10px}.install-button span{display:none}main{padding:12px 12px max(8px,env(safe-area-inset-bottom));gap:10px}.page-heading h1{font-size:30px;letter-spacing:-1.7px;margin:4px 0}.eyebrow{font-size:6px;letter-spacing:1.2px}.tiny-grid{font-size:10px}.title-spark{font-size:18px;right:-21px;top:0}.page-heading p{font-size:9px;max-width:210px;line-height:1.5}.personal-best{padding:8px 10px;border-radius:12px;gap:7px}.personal-best>svg{width:17px;height:17px}.personal-best span{font-size:6px;letter-spacing:.7px;max-width:82px;line-height:1.4}.personal-best strong{font-size:18px}.game-layout{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto auto;gap:9px}.journey-column{display:contents}.session-card{grid-row:1;display:grid;grid-template-columns:1fr 1fr 1fr;column-gap:14px;border-radius:14px;padding:10px 14px;align-items:center}.card-kicker,.session-tip,.moves-icon,.moves-decoration{display:none}.score-label{grid-column:1;grid-row:1;font-size:8px;margin:0}.score{grid-column:1;grid-row:2;font-size:27px;letter-spacing:-1px;margin:0}.score span{font-size:9px;margin-left:4px}.goal-row{display:flex;flex-direction:column;gap:5px;grid-column:2;grid-row:1 / 3;margin:0 0 8px;font-size:8px;align-self:start;padding-top:2px}.goal-row strong{font-size:11px}.progress-track{grid-column:2;grid-row:2;align-self:end;margin:0 6px 2px 0;height:4px}.progress-track svg{width:11px;height:11px;top:-3px}.moves-row{grid-column:3;grid-row:1/3;margin:0;padding:0 0 0 14px;border-top:0;border-left:1px solid var(--line);justify-content:center}.moves-row>div:nth-child(2){display:flex;flex-direction:column-reverse;gap:6px}.moves-row strong{font-size:24px}.moves-row span{font-size:8px;margin:0}.play-column{grid-row:2;gap:7px}.board-heading{min-height:24px}.board-heading>div{gap:7px}.board-heading h2{font-size:11px}.board-size{font-size:8px}.level-tag{font-size:7px;padding:5px 7px}.board-frame{padding:8px;border-radius:18px}.board{gap:4px}.tile,.token{border-radius:9px}.token:before{border-radius:6px;inset:2px}.logo-window{padding:2px;border-radius:4px}.board-message{font-size:9px;min-height:26px;line-height:1.4;gap:5px}.message-spark{font-size:16px}.board-tools{gap:8px}.tool-button{padding:8px;gap:7px;font-size:10px;border-radius:12px}.tool-icon{width:27px;height:27px;border-radius:8px}.tool-icon svg{width:16px;height:16px}.tool-button small{font-size:6px;margin-top:3px}.journey-card{grid-row:3;padding:9px 12px;border-radius:14px}.journey-card .section-label{font-size:6px}.level-list{flex-direction:row;gap:8px;margin-top:6px}.level-item{gap:6px;padding:2px 0;flex:1;align-items:center}.level-circle{width:24px;height:24px;border-radius:8px;font-size:8px}.level-item strong{font-size:8px;line-height:1.3;max-width:80px}.level-item small,.level-item .level-arrow{display:none}.restart-button{grid-row:4;padding:2px;margin:0 auto;font-size:9px}.community-column{display:none}footer{padding-top:8px;font-size:6px;gap:10px}footer>span:nth-child(2){display:none}footer .status-dot{width:4px;height:4px}.update-inner{padding:9px 12px;gap:8px;flex-wrap:wrap}.update-icon{width:27px;height:27px;border-radius:8px}.update-copy strong{font-size:10px}.update-copy p{font-size:9px;line-height:1.4}.update-actions{width:100%;padding-left:35px}.update-actions button{padding:7px 11px;font-size:10px}.modal-title{font-size:25px}dialog{padding:32px 22px 23px}.float-points{font-size:34px}}
@media(max-width:650px) and (max-height:740px){main{padding-top:9px;gap:8px}.page-heading p,.page-heading .eyebrow{display:none}.page-heading h1{font-size:27px;margin:0}.personal-best{padding:6px 10px}.personal-best strong{font-size:16px}.personal-best>svg{width:16px;height:16px}.session-card{padding:8px 12px}.score{font-size:24px}.moves-row strong{font-size:22px}.journey-card{padding:7px 10px}.journey-card .section-label{display:none}.level-list{margin:0}.game-layout{gap:7px}.play-column{gap:6px}.board-message{min-height:24px;font-size:8px}.tool-button small{display:none}.tool-button{padding:7px 8px}.tool-icon{width:24px;height:24px}.update-copy p{font-size:8px}.update-inner{padding:7px 12px}.update-actions button{padding:6px 10px}footer{padding-top:6px}}
@media(max-height:500px){.site-header{min-height:48px;padding-top:5px;padding-bottom:5px}.brand img{width:29px;height:29px}.brand small,.header-center{display:none}main{padding:8px 14px;gap:8px;grid-template-rows:minmax(0,1fr)}.page-heading,footer{display:none}.game-layout{grid-template-columns:160px minmax(0,1fr);grid-template-rows:minmax(0,1fr);gap:16px}.community-column{display:none}.journey-column{display:flex;gap:8px}.session-card{display:block;padding:12px}.score-label{font-size:8px}.score{font-size:26px}.goal-row{display:flex;flex-direction:row;font-size:8px;margin-top:10px;padding:0}.progress-track{margin-top:7px}.moves-row{display:flex;border-left:0;border-top:1px solid var(--line);margin-top:12px;padding:10px 0 0;justify-content:flex-start}.moves-row>div:nth-child(2){flex-direction:row;align-items:baseline;gap:9px}.moves-row strong{font-size:22px}.moves-row span{font-size:8px}.card-kicker,.session-tip,.moves-icon,.moves-decoration{display:none}.journey-card{padding:8px}.journey-card .section-label,.level-item small{display:none}.level-list{margin:0;flex-direction:row;gap:6px}.level-item{justify-content:center;padding:0}.level-item strong,.level-arrow{display:none}.level-circle{width:28px;height:28px}.restart-button{font-size:8px;padding:3px}.play-column{grid-row:1;grid-column:2;gap:5px}.board-heading{min-height:22px}.board-heading h2{font-size:10px}.board-message{font-size:8px;min-height:18px}.tool-button{padding:5px 8px;font-size:9px}.tool-button small{display:none}.tool-icon{width:23px;height:23px}.update-inner{padding:7px 14px;flex-wrap:nowrap}.update-copy p{font-size:8px}.update-actions{width:auto;padding:0}.update-actions button{padding:7px 10px;font-size:9px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
/* Short portrait screens reserve the remaining room for the playable board. */
@media(max-width:650px) and (min-height:501px) and (max-height:640px){main{grid-template-rows:minmax(0,1fr);gap:0}.page-heading,footer{display:none}.journey-card{padding:5px 10px}.level-item strong{display:none}.level-item{justify-content:center}.level-circle{width:24px;height:24px}.board-message{position:absolute;width:1px;height:1px;min-height:0;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.play-column{grid-template-rows:auto minmax(0,1fr) auto}.board-frame{padding:5px;border-radius:13px}.board{gap:3px}.tile,.token{border-radius:6px}.logo-window{padding:1px;border-radius:3px}}
/* The desktop board owns the full height below the header. */
main{max-width:none;padding:10px 24px max(10px,env(safe-area-inset-bottom));display:block;position:relative}.game-layout{height:100%;grid-template-columns:220px minmax(0,1fr) 220px;gap:24px}.play-column{display:grid;grid-template-rows:minmax(0,1fr);gap:0}.journey-column{gap:10px}.page-heading{flex-shrink:0}.page-heading .eyebrow,.page-heading p{display:none}.page-heading h1{font-size:31px;margin:0 0 3px}.personal-best{padding:9px 14px;flex-shrink:0}.personal-best strong{font-size:19px}.board-heading{flex-shrink:0;min-height:24px}.board-heading h2{font-size:11px}.board-heading .board-size{display:none}.session-card{padding:14px;flex-shrink:0}.card-kicker,.session-tip{display:none}.score-label{margin:0}.score{font-size:32px}.goal-row{margin-top:12px}.moves-row{margin-top:14px;padding-top:12px}.moves-row strong{font-size:24px}.moves-icon{width:31px;height:31px}.journey-card{padding:11px 14px;flex-shrink:0}.level-list{margin-top:7px}.level-item{padding:5px 0}.level-circle{width:26px;height:26px;border-radius:9px}.level-item strong{font-size:9px}.level-item small{font-size:6px}.restart-button{font-size:9px;padding:4px}.board-tools{flex-direction:column;gap:7px}.tool-button{padding:8px 10px;font-size:10px;flex:none}.tool-icon{width:27px;height:27px}.board-message{font-size:8px;min-height:0}.message-spark{display:none}.quick-guide,footer{display:none}.community-column{gap:12px}.members-card{padding:16px 14px 0}.members-card h2{font-size:19px;margin-top:12px}.members-card>p{font-size:9px;margin-bottom:13px}.member-list{gap:10px}.member-footer{margin-top:15px}
@media(max-width:1120px) and (min-width:651px){.game-layout{grid-template-columns:190px minmax(0,1fr);gap:18px}.community-column{display:none}}
@media(max-height:760px) and (min-width:651px){.journey-column{gap:7px}.page-heading h1{font-size:26px}.board-heading{min-height:20px}.session-card{padding:12px}.score{font-size:28px}.goal-row{margin-top:9px}.moves-row{margin-top:10px;padding-top:9px}.moves-icon,.moves-decoration{display:none}.journey-card{padding:9px 12px}.level-item{padding:4px 0}.level-item small{display:none}.restart-button{font-size:8px;padding:3px}.tool-button{padding:6px 8px}.tool-button small{display:none}.tool-icon{width:23px;height:23px}.board-message{line-height:1.4;font-size:8px}.board-tools{gap:6px}.personal-best{padding:7px 12px}}
@media(max-width:650px) and (min-height:501px){main{padding:8px 12px max(8px,env(safe-area-inset-bottom))}.game-layout{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto auto auto;gap:8px}.journey-column{display:contents}.page-heading,.board-heading,.community-column{display:none}.session-card{grid-row:1;display:grid;padding:9px 13px}.score{font-size:26px}.goal-row{margin:0 0 8px}.moves-row{margin:0;padding:0 0 0 14px;border-top:0}.play-column{grid-row:2;grid-column:1;grid-template-rows:minmax(0,1fr);gap:0}.board-tools{grid-row:3;flex-direction:row;gap:8px}.tool-button{flex:1;min-width:0;padding:9px}.tool-button small{display:none}.journey-card{display:block;grid-row:4;padding:8px 12px}.journey-card .section-label{display:none}.level-list{margin:0;gap:8px}.level-item{padding:0;justify-content:flex-start}.level-item strong{display:block;font-size:8px}.restart-button{grid-row:5;padding:2px}.board-message{position:absolute;width:1px;height:1px;min-height:0;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.board-frame{padding:8px;border-radius:18px}}
@media(max-height:500px){main{padding:7px 12px}.game-layout{grid-template-columns:160px minmax(0,1fr);grid-template-rows:minmax(0,1fr);gap:16px}.journey-column{display:flex;gap:6px}.page-heading,.board-heading,.community-column,.board-message{display:none}.session-card{display:block;padding:10px}.score{font-size:25px}.goal-row{margin-top:7px}.moves-row{margin-top:8px;padding-top:7px}.journey-card{padding:6px}.level-list{flex-direction:row;margin:0}.level-item{justify-content:center}.level-item strong{display:none}.board-tools{flex-direction:row;gap:5px;order:3}.tool-button{padding:6px;gap:4px;font-size:8px;flex:1}.tool-icon{width:19px;height:19px}.tool-icon svg{width:14px;height:14px}.tool-suffix{display:none}.restart-button{order:4}.play-column{grid-row:1;grid-column:2;grid-template-rows:minmax(0,1fr)}.board-frame{padding:7px;border-radius:17px}}

/* Larger profile links fill the available member panel without shrinking the board. */
.community-column .members-card{display:flex;flex-direction:column;flex:1;min-height:0;padding:16px 12px 12px}
.members-card h2,.members-card>p,.members-card .member-footer{display:none}
.members-card .member-list{display:grid;grid-template-rows:repeat(7,minmax(0,1fr));flex:1;min-height:0;gap:6px;margin:12px 0 0}
.member{min-height:0;display:grid;grid-template-columns:68px minmax(0,1fr) 12px;gap:9px;padding:4px;border:1px solid transparent;border-radius:12px;transition:background .18s,border-color .18s}
.member:hover{background:#a8c4ff0c;border-color:#a8c4ff30}
.member:focus-visible{outline:2px solid #a6c6ff;outline-offset:1px;background:#a8c4ff0c}
.member .member-logo{width:68px;height:100%;max-height:60px;min-height:0;border-radius:10px;padding:4px;align-self:center;box-shadow:0 3px 10px #0002}
.member strong{font-size:11px;line-height:1.45;overflow-wrap:anywhere}
.member small{display:none}
.member-link-icon{width:12px;height:12px;color:#9db8e6;transform:rotate(-45deg);justify-self:end}
@media(max-height:600px){.member{grid-template-columns:58px minmax(0,1fr) 11px;gap:7px;padding:2px}.member .member-logo{width:58px;max-height:48px;padding:3px}.member strong{font-size:10px}.members-card .member-list{gap:4px;margin-top:9px}}
