.board-shell{position:relative;background:#36654d;border-radius:13px;padding:27px 21px 25px;border:1px solid #285640;box-shadow:0 5px #244d3b,0 9px 16px #223d2012}.board{display:grid;grid-template-rows:repeat(8,1fr);aspect-ratio:1;background:#27543f;border:1px solid #214d39;border-radius:3px;overflow:hidden;gap:1px}.board-row{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:1px;min-height:0}.board-cell{min-width:0;min-height:0;position:relative}.square{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;border:none;border-radius:0;background:#56825e;padding:0;cursor:default}.board-row:nth-child(odd) .board-cell:nth-child(2n) .square,.board-row:nth-child(2n) .board-cell:nth-child(odd) .square{background:#53805b}.square.is-legal{cursor:pointer}.square:focus{outline:none}.board[data-keyboard-navigation=true] .square:focus{outline:3px solid #b9f6ca;outline-offset:-4px;z-index:1}.coordinate-row{position:absolute;top:8px;left:22px;right:22px;display:grid;grid-template-columns:repeat(8,1fr);font-size:9px;color:#bbcfad;text-align:center;font-weight:550}.coordinate-column{position:absolute;top:28px;bottom:26px;left:5px;width:12px;display:grid;grid-template-rows:repeat(8,1fr);font-size:9px;color:#bbcfad;text-align:center;font-weight:550}.coordinate-column>span{display:flex;justify-content:center;align-items:center}.coordinate-bottom{top:auto;bottom:6px}.disc{display:block;position:relative;width:78%;height:78%;aspect-ratio:1;perspective:500px;pointer-events:none}.disc-inner{display:block;position:relative;width:100%;height:100%;transform-style:preserve-3d}.disc-face{position:absolute;inset:0;border-radius:50%;backface-visibility:hidden;-webkit-backface-visibility:hidden}.disc-black{background:#25302b;box-shadow:inset 0 2px 2px #ffffff1a,inset 0 -3px #18231f,0 3px 3px #18302160;border:1px solid #23302b}.disc-white{background:#f7f6e9;box-shadow:inset 0 2px #fffefa,inset 0 -3px #d4d9c8,0 3px 3px #17302142;border:1px solid #eeeee0}.disc-back{transform:rotateY(180deg)}.is-flipping .disc-inner{animation:flip-disc .25s ease-in-out both}@keyframes flip-disc{0%{transform:rotateY(0)}to{transform:rotateY(180deg)}}.disc-small{width:35px;height:35px;flex-shrink:0}.disc-small .disc-black{box-shadow:inset 0 1px 2px #ffffff15,inset 0 -2px #19261e,0 2px 3px #243b2d18}.disc-small .disc-white{box-shadow:inset 0 1px #fff,inset 0 -2px #d8dccc,0 2px 4px #23392c15}.legal-dot{display:block;width:18%;height:18%;border-radius:50%;background:#bfcea3;opacity:.8;pointer-events:none}.is-recommended:after{content:"";position:absolute;inset:4px;border:2px solid #efd57c;border-radius:4px;pointer-events:none}.recommended-star{position:absolute;width:42%;height:42%;display:flex;align-items:center;justify-content:center;color:#ffe497;pointer-events:none}.recommended-star>svg{width:100%;height:100%;fill:#f6d579}.chosen-marker{position:absolute;inset:9px;border:2px dashed #faf7d0;border-radius:50%;pointer-events:none}.last-marker{position:absolute;width:17%;height:17%;border-radius:50%;border:1.5px solid #d1d8ba;pointer-events:none}.last-marker.on-white{border-color:#7e936e}.board-preview{border-color:#c7a254;box-shadow:0 5px #9d874c,0 9px 16px #223d2012}.square.cpu-placed{box-shadow:inset 0 0 0 3px #ffe497;z-index:1}.cpu-placement-label{position:absolute;bottom:2px;left:50%;transform:translate(-50%);border-radius:3px;padding:1px 4px;background:#ffe497;color:#25302b;font-size:clamp(8px,1.6vw,10px);font-weight:800;line-height:1.2;pointer-events:none}.cpu-presenting .cpu-placed>.disc{animation:cpu-place .26s ease-out both}.cpu-flipped:before{content:"";position:absolute;inset:6%;border:1px dashed #f8e4a5;border-radius:50%;pointer-events:none}.cpu-presenting .cpu-flipped:before{animation:cpu-flip-mark .36s ease-out var(--flip-delay) both}@keyframes cpu-place{0%{transform:translateY(-7px) scale(1.12);opacity:.5}to{transform:none;opacity:1}}@keyframes cpu-flip-mark{0%{opacity:.35}to{opacity:1}}.cpu-move-summary{display:flex;align-items:center;gap:10px;margin-top:14px;padding:10px 12px;border:1px solid #d9d4ad;border-radius:8px;background:#faf6e6;color:#394d3d;font-size:13px}.cpu-summary-label{padding:4px 6px;border:2px solid #b89849;border-radius:4px;font-size:10px;font-weight:800}.cpu-move-summary small{display:block;margin-top:3px;font-size:11px}@media(hover:hover)and (pointer:fine){.square.is-legal:hover{background:#6a9469!important}.square.is-legal:hover .legal-dot{width:62%;height:62%;background:#243a2e;opacity:.3}}@media(max-width:900px)and (min-width:721px){.board-shell{padding:23px 17px 22px;border-radius:10px}.coordinate-row{top:6px;left:18px;right:18px;font-size:8px}.coordinate-bottom{top:auto;bottom:5px}.coordinate-column{top:24px;bottom:23px;font-size:8px;left:2px}.disc-small{width:29px;height:29px}}@media(max-width:720px){.board-shell{border-radius:10px;padding:24px 17px 22px}.coordinate-row{top:6px;left:18px;right:18px;font-size:8px}.coordinate-bottom{top:auto;bottom:5px}.coordinate-column{top:25px;bottom:23px;font-size:8px;left:2px}.disc{width:79%;height:79%}.disc-small{width:32px;height:32px}.is-recommended:after{inset:3px}.chosen-marker{inset:6px}}@media(prefers-reduced-motion:reduce){.is-flipping .disc-inner{animation:none;transform:rotateY(180deg)}}:root{font-family:Avenir Next,Avenir,Segoe UI,sans-serif;color:#263d32;background:#f7f8f2;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--green: #286248;--green-dark: #1f513b;--muted: #64736a;--line: #e1e6dc;--paper: #fffefa;--ease: cubic-bezier(.2, .65, .3, 1)}*{box-sizing:border-box}body{margin:0;min-width:320px}button,select{font:inherit}button{cursor:pointer;-webkit-tap-highlight-color:transparent}button:disabled{cursor:default;opacity:.43}button,a,select{outline-offset:4px}:focus-visible{outline:3px solid #bc812c}button svg{flex-shrink:0}button{color:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}a{color:inherit}.site-header{height:72px;border-bottom:1px solid var(--line);background:#fcfcf8}.header-inner{width:min(1080px,calc(100% - 80px));height:100%;margin:auto;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:23px;font-weight:750}.brand-coach{font-weight:450;color:#58735f}.brand-mark{display:grid;grid-template-columns:1fr 1fr;gap:3px;width:32px;height:32px;transform:rotate(-7deg)}.brand-mark span{border-radius:50%;background:var(--green)}.brand-mark span:nth-child(2),.brand-mark span:nth-child(3){background:#c9d6b9}.header-help{display:flex;align-items:center;gap:9px;background:none;border:none;padding:12px 0 12px 12px;font-size:13px;font-weight:600}.main{width:min(940px,calc(100% - 80px));margin:0 auto}.page-heading{padding:30px 0 28px;display:flex;justify-content:space-between;gap:20px;align-items:center}.eyebrow{font-size:10px;font-weight:750;line-height:1.5}.heading-eyebrow{display:flex;align-items:center;gap:7px;color:#66815b;margin-bottom:9px;font-size:10px}.tiny-leaf{display:inline-flex}h1{font-size:clamp(28px,3.2vw,38px);font-weight:650;line-height:1.25}h1>span{color:#789450}.page-heading p{color:var(--muted);font-size:13px;line-height:1.6;margin-top:9px}.practice-badge{display:flex;align-items:center;white-space:nowrap;gap:7px;border:1px solid #dae2d5;padding:8px 11px;border-radius:20px;font-size:11px;color:#627959;margin-top:8px}.practice-badge>span{width:6px;height:6px;border-radius:50%;background:#7e9a59}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 328px;gap:38px;align-items:start}.game-area{min-width:0}.scoreboard{background:var(--paper);border:1px solid var(--line);border-radius:14px;display:flex;align-items:center;padding:15px 22px;box-shadow:0 2px 2px #253e2803}.player-score{flex:1;display:flex;align-items:center;gap:12px;position:relative}.player-label{display:flex;flex-direction:column;gap:2px}.player-label strong{font-size:13px;font-weight:650}.player-label>span{color:var(--muted);font-size:10px}.disc-count{font-size:26px;line-height:1;font-weight:600;font-variant-numeric:tabular-nums;margin-left:auto}.active-player:after{content:"";position:absolute;left:7px;bottom:-9px;height:3px;width:21px;border-radius:3px;background:#81a060}.score-vs{font-size:13px;color:#68745f;padding:0 26px}.board-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:79px}.board-heading h2{font-size:15px;font-weight:650}.board-heading p{color:var(--muted);font-size:11px;margin-top:4px}.possible-count{flex-shrink:0;color:#5e6f51;font-size:10px;padding:5px 8px;background:#eef1e8;border-radius:5px}.preview-label{display:inline-flex;align-items:center;gap:5px;font-size:11px;padding:5px 8px;background:#f5e9cb;border-radius:5px}.board-legend{display:flex;justify-content:center;align-items:center;gap:26px;margin-top:17px;color:#7b8578;font-size:10px}.board-legend>span{display:inline-flex;align-items:center;gap:6px}.legend-dot{width:7px;height:7px;background:#9cae8b;border-radius:50%}.legend-ring{width:9px;height:9px;border:1.5px solid #879382;border-radius:50%}.board-legend svg{color:#ad914d}.game-toolbar{display:flex;align-items:center;justify-content:space-between;margin-top:22px;border-top:1px solid var(--line);padding-top:18px}.history-controls{display:flex;gap:7px}.button{display:inline-flex;justify-content:center;align-items:center;gap:9px;min-height:42px;border:1px solid transparent;border-radius:8px;padding:10px 14px;font-size:12px;font-weight:600;line-height:1.4;transition:transform .13s var(--ease),background-color .13s var(--ease),border-color .13s var(--ease)}.button:not(:disabled):active{transform:scale(.98)}.button-full{width:100%}.button-primary{color:#fffefa;background:var(--green);border-color:var(--green)}.button-primary>svg:last-child{margin-left:auto}.button-primary{justify-content:flex-start;padding-left:17px;padding-right:15px;min-height:46px}.button-outline{background:transparent;border-color:#dce3d7;color:#526b53}.button-quiet{background:#eff2e9;color:#526b53}.button-hint{background:#f0f4e9;border-color:#e0e8d6;color:#4d6842;min-height:46px}.button-hint>svg:last-child{margin-left:auto}.button-hint>svg:first-child{margin-right:1px}.button-hint.hint-shown{background:#fcf1d8;color:#836226;border-color:#e8d6ab}.button-history{border-color:#dfe4d9;color:#536750;background:#fafbf7;padding:8px 13px;min-height:37px;font-size:11px}.button-new{background:transparent;color:#5e6e53;font-size:11px;min-height:37px;padding-right:0}.game-notice{display:flex;align-items:flex-start;gap:8px;color:#6c713f;font-size:12px;line-height:1.6;border-radius:7px;background:#f1efdf;padding:12px;margin-top:14px}.game-notice svg{flex-shrink:0;margin-top:2px}.coach-area{display:flex;flex-direction:column;gap:19px}.coach-card{border:1px solid #e0e5d9;border-radius:16px;background:var(--paper);padding:23px;box-shadow:0 4px 16px #34432204;overflow:hidden}.coach-card-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:21px}.coach-label{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:650}.coach-label>svg{color:#895}.coach-status-dot{width:6px;height:6px;border-radius:50%;background:#a5bb83}.coach-message{min-height:275px}.coach-face{color:#668947;display:block;margin-bottom:20px}.feedback-context{color:#8b967f;font-size:9px;font-weight:650;margin-bottom:9px;line-height:1.5}.coach-card h2{font-weight:650;font-size:25px;line-height:1.25;margin-bottom:13px}.coach-card p{font-size:14px;line-height:1.8;color:#66715d}.coach-card p strong{color:#52664b}.coach-card .coach-supporting{margin-top:10px;font-size:12px}.reassurance{display:flex;align-items:center;gap:8px;margin-top:18px;color:#718461;font-size:10px}.reassurance>span{display:inline-flex;align-items:center;justify-content:center;background:#edf2e4;border-radius:50%;width:18px;height:18px}.coach-actions{border-top:1px solid #e9ecdf;padding-top:19px;margin-top:21px;display:flex;flex-direction:column;gap:9px}.coach-card .coach-action-note{font-size:10px;line-height:1.6;text-align:center;color:#8b957e;padding-top:2px}.review-secondary{display:flex;gap:7px}.review-secondary .button{flex:1;gap:5px;padding:9px 7px;font-size:10px;white-space:nowrap}.grade-excellent h2,.grade-good h2{color:#406c3e}.grade-inaccuracy h2,.grade-mistake h2{color:#98752f}.grade-mistake .coach-face,.grade-inaccuracy .coach-face{color:#9b7e41}.thinking-dots{display:inline-flex;align-items:center;gap:3px}.thinking-dots i{background:currentColor;width:4px;height:4px;border-radius:50%;animation:thinking 1s ease-in-out infinite}.thinking-dots i:nth-child(2){animation-delay:.12s}.thinking-dots i:nth-child(3){animation-delay:.24s}@keyframes thinking{0%,80%,to{opacity:.35}40%{opacity:1}}.little-lesson{background:#f2f1e5;border:1px solid #e9e6d3;border-radius:12px;padding:18px}.lesson-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;color:#8d906b}.lesson-top>svg{transform:rotate(10deg)}.lesson-content{display:flex;align-items:flex-start;gap:13px}.mini-board{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#c8d1b3;border:4px solid #e2e7d2;border-radius:5px;width:59px;height:59px;flex-shrink:0;padding:0;overflow:hidden}.mini-board>span{background:#c2cfad;display:flex;align-items:center;justify-content:center}.mini-board>span:first-child{background:#d9c079}.mini-disc{width:10px;height:10px;border-radius:50%;background:#3b5140;box-shadow:0 1px 2px #0003}.little-lesson h3{font-size:13px;color:#5d6b48;font-weight:650;margin-bottom:5px}.little-lesson p{font-size:11px;line-height:1.7;color:#898b73}.practice-loop{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:9px;color:#9a9f8b;padding:5px 2px}.practice-loop>span{display:flex;flex-direction:column;align-items:center;gap:7px;white-space:nowrap}.practice-loop>span>span{display:flex;align-items:center;justify-content:center;width:20px;height:20px;background:#ecf0e6;color:#8c9a7b;border-radius:50%;font-size:9px}.practice-loop .current{color:#526f3e}.practice-loop .current>span{background:#dce6cf;color:#486436}.practice-loop>i{width:33px;height:1px;background:#e0e4d6;margin-top:-18px}.practice-footer{padding:34px 0 30px;display:flex;align-items:center;justify-content:center;gap:8px;font-size:10px;color:#8f9b81}.practice-footer>svg{color:#99aa86}.footer-rule{width:1px;height:10px;background:#dce2d3;margin:0 5px}.result-card{text-align:center}.result-card .eyebrow{color:#8f9a7f}.result-art{width:108px;height:105px;margin:24px auto 16px;display:flex;justify-content:center;align-items:center;position:relative;color:#b89644}.result-art>svg{fill:#f7ecd0}.result-art .coach-face{width:85px;height:85px;margin:0;fill:none}.result-spark{position:absolute;font-size:28px}.result-spark-one{top:4px;left:4px}.result-spark-two{right:4px;bottom:5px;font-size:21px}.final-score{display:flex;justify-content:center;gap:27px;margin:25px 0}.final-score>span{display:flex;flex-direction:column;gap:4px;font-size:11px;color:#7c896f}.final-score strong{font-size:34px;color:var(--green-dark);font-variant-numeric:tabular-nums}.final-score .score-separator{font-size:28px;font-weight:400;padding-top:3px}.result-card .small-note{font-size:10px;margin-top:12px}.draw-discs{display:flex;gap:10px}.draw-discs>span{width:40px;height:40px;border-radius:50%;background:#263b31;box-shadow:0 3px 4px #23382422}.draw-discs>span:last-child{background:#f9f8ef;border:1px solid #e2e2d5}.animate-result.result-win .result-art>svg{animation:celebrate .75s var(--ease) both}.animate-result .result-spark{animation:sparkle .9s var(--ease) both}.animate-result.result-loss .coach-face{animation:encouragement .8s var(--ease) both}.animate-result.result-draw .draw-discs>span{animation:meet-left .7s var(--ease) both}.animate-result.result-draw .draw-discs>span:last-child{animation-name:meet-right}@keyframes celebrate{0%{transform:scale(.8) rotate(-15deg);opacity:0}65%{transform:scale(1.06) rotate(4deg)}to{transform:scale(1) rotate(0);opacity:1}}@keyframes sparkle{0%{opacity:0;transform:scale(.6)}65%{opacity:1;transform:scale(1.15)}to{opacity:1;transform:scale(1)}}@keyframes encouragement{0%{transform:rotate(-6deg);opacity:.5}45%{transform:rotate(5deg)}to{transform:rotate(0);opacity:1}}@keyframes meet-left{0%{transform:translate(-18px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes meet-right{0%{transform:translate(18px);opacity:0}to{transform:translate(0);opacity:1}}.dialog{background:var(--paper);color:#304b3a;border:1px solid var(--line);border-radius:19px;box-shadow:0 24px 70px #122e2a26;width:min(480px,calc(100vw - 32px));padding:27px;max-height:calc(100dvh - 40px)}.dialog::backdrop{background:#17352cc0}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:13px}.dialog-heading h2{font-size:24px;font-weight:650}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;border-radius:50%;background:#edf1e7;flex-shrink:0}.dialog p{font-size:13px;line-height:1.8;color:#748069}.dialog .dialog-note{font-size:11px;margin:20px 0}.field-label{display:block;font-size:12px;font-weight:650;margin-top:24px;margin-bottom:8px}.dialog select{width:100%;min-height:47px;border:1px solid #cfdcc6;background:#f8f9f3;color:#33573d;border-radius:8px;padding:10px;font-size:16px}.level-guide{display:flex;justify-content:space-between;margin-top:8px;font-size:9px;color:#8b9880}.dialog-actions{display:flex;gap:9px;justify-content:flex-end}.dialog-actions .button{min-height:44px}.how-to-list{list-style:none;counter-reset:guide;padding:0;margin:26px 0;display:flex;flex-direction:column;gap:20px}.how-to-list>li{counter-increment:guide;position:relative;padding-left:38px}.how-to-list>li:before{content:counter(guide);position:absolute;left:0;top:0;width:26px;height:26px;background:#e6eedb;color:#5e7f45;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:650}.how-to-list strong{display:block;font-size:14px;margin-bottom:5px}.how-to-list span{font-size:12px;line-height:1.8;color:#7b846f;display:block}.keyboard-note{background:#f0f2e6;padding:13px;border-radius:8px;display:flex;align-items:flex-start;gap:10px}.keyboard-note>svg{margin-top:4px;flex-shrink:0;color:#7b905f}.keyboard-note p{font-size:11px}.color-picker{margin:24px 0 0;padding:0;border:0;min-width:0}.color-picker legend{padding:0;font-size:12px;font-weight:650;margin-bottom:9px}.color-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.color-option{display:flex;align-items:center;gap:9px;min-width:0;padding:15px 12px;border:1px solid #d4decd;border-radius:10px;cursor:pointer;background:#fafbf5}.color-option.selected{border-color:var(--green);background:#edf3e7;box-shadow:inset 0 0 0 1px var(--green)}.color-option:focus-within{outline:3px solid #bc812c;outline-offset:3px}.color-option input{accent-color:var(--green);margin:0;width:14px;height:14px;flex-shrink:0}.color-option .disc-small{width:29px;height:29px}.color-option>span:last-child{display:flex;flex-direction:column;gap:3px;min-width:0}.color-option strong{font-size:13px}.color-option small{font-size:10px;color:#617055;white-space:nowrap}kbd{font:inherit;font-variant-numeric:tabular-nums}.shortcut-key,.shortcut-guide kbd{display:inline-flex;align-items:center;justify-content:center;min-width:19px;height:20px;padding:0 4px;border:1px solid currentColor;border-radius:4px;font-size:10px;font-weight:500;line-height:1}.shortcut-key{flex-shrink:0;margin-left:1px}.button-primary .shortcut-key{color:#e7efdf}.shortcut-guide{margin-top:24px}.shortcut-guide h3{font-size:14px}.shortcut-guide dl{margin:13px 0;display:flex;flex-direction:column;gap:11px}.shortcut-guide dl>div{display:flex;align-items:center;justify-content:space-between;gap:12px}.shortcut-guide dt{flex-shrink:0;font-size:11px}.shortcut-guide dd{margin:0;font-size:11px;color:#617055;text-align:right}.shortcut-guide p{font-size:11px}.shortcut-toggle{display:flex;align-items:center;gap:8px;margin-top:13px;font-size:12px;min-height:36px;cursor:pointer}.shortcut-toggle input{accent-color:var(--green);width:16px;height:16px}@media(max-width:420px){.color-option{padding:13px 9px;gap:7px}.color-option .disc-small{width:24px;height:24px}.color-option small{font-size:9px}.color-option strong{font-size:12px}.shortcut-guide dl>div{align-items:flex-start}.shortcut-guide dd{max-width:125px;line-height:1.5}}@media(hover:hover)and (pointer:fine){.button-primary:not(:disabled):hover{background:var(--green-dark);border-color:var(--green-dark)}.button-outline:not(:disabled):hover,.button-history:not(:disabled):hover{background:#edf2e7;border-color:#c8d5bd}.button-hint:not(:disabled):hover{background:#e6efdc;border-color:#c4d5b4}.header-help:hover,.button-new:hover{color:#2c643e}.icon-button:hover{background:#e2ead8}}@media(min-width:1250px){.main{width:940px}.workspace{grid-template-columns:minmax(0,1fr) 328px;gap:36px}}@media(max-width:900px)and (min-width:721px){.main{width:calc(100% - 44px)}.workspace{grid-template-columns:minmax(0,1fr) 278px;gap:22px}.header-inner{width:calc(100% - 44px)}.coach-card{padding:18px}.coach-card h2{font-size:22px}.coach-card p{font-size:12px}.coach-message{min-height:260px}.review-secondary{flex-direction:column}.scoreboard{padding:14px}.score-vs{padding:0 13px}.player-score{gap:8px}.player-label>span{font-size:9px}.disc-count{font-size:22px}.possible-count{display:none}.board-legend{gap:13px;font-size:9px}.page-heading h1{font-size:29px}.practice-badge{display:none}}@media(max-width:720px){.site-header{height:68px}.header-inner{width:calc(100% - 36px)}.brand{font-size:20px;gap:9px}.brand-mark{width:27px;height:27px}.header-help{font-size:11px;gap:6px}.main{width:min(540px,calc(100% - 36px))}.page-heading{padding:28px 0 25px}.page-heading h1{font-size:30px;max-width:340px}.page-heading p{font-size:12px;max-width:320px}.heading-eyebrow{font-size:9px}.practice-badge{display:none}.workspace{grid-template-columns:minmax(0,1fr);gap:26px}.scoreboard{padding:14px 19px}.score-vs{padding:0 18px}.player-score{gap:10px}.disc-count{font-size:25px}.board-heading{min-height:75px}.board-heading h2{font-size:14px}.board-heading p{font-size:10px}.possible-count{font-size:9px;padding:5px 6px}.board-legend{gap:21px;font-size:9px;margin-top:15px}.game-toolbar{margin-top:18px;padding-top:14px}.button-history,.button-new{min-height:42px}.coach-card{padding:23px}.coach-message{min-height:0}.coach-card-top{padding-bottom:19px}.coach-face{float:left;margin-right:15px;margin-bottom:12px;width:47px;height:47px}.feedback-context{padding-top:3px}.coach-card h2{font-size:24px;margin-bottom:18px}.coach-message p{clear:both}.coach-card p{font-size:13px}.coach-actions{margin-top:20px}.coach-label{font-size:13px}.coach-card .coach-action-note{font-size:11px}.reassurance{font-size:11px;margin-top:14px}.review-secondary .button{font-size:12px;min-height:43px}.button{font-size:13px}.little-lesson{padding:18px 21px}.little-lesson h3{font-size:14px}.little-lesson p{font-size:12px}.lesson-content{gap:16px}.lesson-top{margin-bottom:12px}.practice-loop{padding:0 35px;font-size:10px}.practice-loop>i{width:48px}.practice-footer{font-size:10px;padding-bottom:max(24px,env(safe-area-inset-bottom))}.footer-note,.footer-rule{display:none}.result-art .coach-face{float:none}.result-card h2{margin-bottom:13px}}@media(max-width:375px){.main{width:calc(100% - 24px)}.header-inner{width:calc(100% - 28px)}.brand{font-size:18px}.header-help{font-size:10px}.page-heading h1{font-size:28px}.possible-count{display:none}.scoreboard{padding:13px 14px}.score-vs{padding:0 15px}.board-legend{gap:13px}.review-secondary .button{font-size:11px}.dialog{padding:20px}.dialog-actions{flex-direction:column-reverse}.dialog-actions .button{width:100%;justify-content:center}.dialog-heading h2{font-size:21px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.feedback-context,.coach-card .coach-action-note,.practice-footer,.practice-loop,.little-lesson p,.little-lesson .lesson-top,.board-legend,.dialog .dialog-note,.level-guide,.how-to-list span,.dialog p{color:#66715d}.heading-eyebrow,.reassurance,.practice-badge{color:#5e754c}.game-area,.coach-area{scroll-margin-top:14px}.mobile-preview-actions{display:none}@media(max-width:720px){.mobile-preview-actions{display:flex;gap:9px;margin-top:18px}.mobile-preview-actions .button{flex:1}.coach-actions-preview{display:none}.coach-card p{font-size:14px}}:root{--play-board-width: clamp(300px, calc(100dvh - 334px) , 560px)}.site-header{height:60px}.header-inner{width:min(1080px,calc(100% - 40px))}.header-identity{display:flex;align-items:center;gap:24px}.header-identity h1{font-size:13px;font-weight:500;color:var(--muted);line-height:1.3}.main{width:min(calc(var(--play-board-width) + 356px),calc(100% - 40px));padding-top:14px}.workspace{grid-template-columns:minmax(0,var(--play-board-width)) minmax(0,328px);gap:28px}.scoreboard{padding:10px 16px;border-radius:10px}.board-heading{min-height:54px;padding:7px 0}.board-legend{margin-top:12px;gap:18px}.game-toolbar{margin-top:10px;padding-top:8px}.cpu-move-summary{margin-top:10px;padding:7px 10px}.cpu-move-summary small{display:none}.coach-card{padding:20px}.coach-card-top{padding-bottom:14px}.coach-message{min-height:0}.coach-face{width:44px;height:44px;margin-bottom:12px}.coach-card h2{font-size:23px;margin-bottom:10px}.coach-card p{line-height:1.65}.coach-actions{margin-top:16px;padding-top:14px}.coach-area{gap:14px}.practice-footer{padding-top:18px;padding-bottom:18px}@media(max-width:900px)and (min-width:721px){.workspace{grid-template-columns:minmax(0,1fr) 278px;gap:20px}.header-identity{gap:16px}.header-identity h1{font-size:11px}}@media(max-width:720px){.site-header{height:60px}.header-inner{width:calc(100% - 28px)}.header-identity{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.header-identity h1{font-size:10px;padding-left:36px}.brand{font-size:19px}.brand-mark{width:24px;height:24px}.main{width:min(500px,calc(100% - 24px));padding-top:8px}.workspace{grid-template-columns:minmax(0,1fr);gap:18px}.game-area{width:100%}.board-shell{width:min(100%,max(260px,calc(100dvh - 304px)));margin-inline:auto}.scoreboard{padding:9px 12px}.player-score{gap:8px}.scoreboard .disc-small{width:26px;height:26px}.player-label>span{white-space:nowrap}.score-vs{padding:0 10px}.disc-count{font-size:23px}.board-heading{min-height:50px}.board-heading h2{font-size:13px}.board-heading p{font-size:10px}.board-legend{display:none}.game-toolbar{margin-top:8px;padding-top:6px}.history-controls{gap:5px}.button-history{padding-inline:9px}.game-toolbar .shortcut-key{display:none}.game-toolbar .button{white-space:nowrap}.cpu-move-summary{font-size:12px;gap:8px;padding:6px 8px;margin-top:9px}.coach-card{padding:18px}.coach-face{margin-right:12px}.coach-card h2{font-size:22px}.mobile-preview-actions{margin-top:12px}}@media(min-width:721px)and (max-height:720px){.little-lesson{padding:12px}.lesson-top{margin-bottom:8px}.practice-loop{display:none}}.coach-message p{font-size:16px;line-height:1.65}.coach-message .coach-supporting{font-size:14px}.mobile-coach-controls{display:flex;gap:8px;margin-top:10px;min-height:44px}.mobile-coach-controls .button{min-height:44px;flex:1;padding:8px;font-size:12px}.coach-sheet{position:fixed;inset:auto 0 0;margin:0 auto;width:min(100%,560px);max-width:100%;max-height:85dvh;padding:16px 18px max(16px,env(safe-area-inset-bottom));border-radius:20px 20px 0 0;display:flex;flex-direction:column;overflow:hidden;animation:coach-sheet-in .18s var(--ease) both}.coach-sheet.is-closing{animation:coach-sheet-out .18s var(--ease) both;pointer-events:none}.coach-sheet .dialog-heading{flex-shrink:0;margin-bottom:8px}.coach-sheet .dialog-heading h2{font-size:18px}.coach-sheet .dialog-heading h2:focus{outline:none}.coach-sheet>.coach-card{display:flex;flex-direction:column;min-height:0;padding:0;border:0;border-radius:0;box-shadow:none}.coach-sheet .coach-card-top{display:none}.coach-sheet .coach-message{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:4px 2px}.coach-sheet .coach-actions{flex-shrink:0;margin-top:12px;padding-top:12px}.coach-sheet .coach-actions .button{min-height:44px}.coach-sheet .coach-message p{font-size:16px}.coach-sheet .coach-message .coach-supporting{font-size:14px}@keyframes coach-sheet-in{0%{transform:translateY(30px);opacity:0}to{transform:none;opacity:1}}@keyframes coach-sheet-out{0%{transform:none;opacity:1}to{transform:translateY(30px);opacity:0}}@media(max-width:720px){.cpu-move-summary{display:none}.board-heading p{min-height:13px}.practice-footer{padding-top:14px}}@media(prefers-reduced-motion:reduce){.coach-sheet,.coach-sheet.is-closing{animation:none}}.analysis-confidence{font-size:14px!important;font-weight:700;color:var(--text-muted, #637561)}@media(max-width:720px){.coach-sheet .coach-action-note{margin-top:6px}}.level-description{margin-top:10px;font-size:14px;line-height:1.5}.hint-reason{font-size:14px;line-height:1.45;color:#526b53;margin-top:6px}
