.demo-source-hidden svg{visibility:hidden}#board{position:relative}#board-coach{position:absolute;inset:0;pointer-events:none;z-index:7;direction:rtl}.board-caption{position:absolute;top:16%;left:4%;right:4%;padding:10px 14px;background:#fff7e8f5;border:2px solid #71804f;border-radius:13px;color:#30291f;text-align:center;font-size:clamp(13px,2.4vw,19px);line-height:1.9;box-shadow:0 4px 16px #0003}.coach-tag{position:absolute;transform:translate(-50%,-70%);background:#805900;color:#fff;border:1px solid #fff2b3;border-radius:7px;padding:2px 6px;font-size:clamp(10px,1.6vw,14px);white-space:nowrap;box-shadow:0 2px 5px #0006}.coach-tag.destination{background:#125f70}#overlay.lesson-intro{padding:0;background:#eee2c6;align-items:stretch}#overlay.lesson-intro #dialog{width:100%;max-width:none;max-height:100dvh;min-height:100dvh;border-radius:0;display:flex;flex-direction:column;justify-content:center;padding:clamp(24px,6vw,80px);overflow:auto}.lesson-intro #dialog-content,.lesson-intro #dialog-title,.lesson-intro .eyebrow{width:100%;max-width:760px;margin-left:auto;margin-right:auto}.lesson-intro .intro-rule{font-size:clamp(21px,3.5vw,32px);line-height:2}.lesson-intro .intro-step{color:#596b3c}@media(max-height:480px){#overlay.lesson-intro #dialog{justify-content:flex-start;padding:16px}.lesson-intro .intro-rule{font-size:20px;line-height:1.8}.board-caption{padding:5px;font-size:12px}}#game-root.learning{grid-template-columns:minmax(0,1fr)330px}#practice{padding:20px;border-radius:18px;box-shadow:0 8px 24px #39271918}#practice h2{font-size:21px;line-height:1.8}#practice p{font-size:16px;line-height:2.1;margin:12px 0}#practice-task{white-space:pre-line;background:#ecedd8;border-right:4px solid #667d47;padding:12px;border-radius:8px}#practice button{font-size:14px;padding:10px;min-height:44px}#practice-demo{background:#49583c;color:#fff6de;flex-basis:100%}#feedback{min-height:3em}.square.guide-from{outline:3px solid #d49a12;outline-offset:-4px;animation:teach-source 2.4s ease-in-out infinite}.square.guide-to{outline:4px dashed #1d8194;outline-offset:-5px;animation:teach-target 2.4s ease-in-out infinite}@keyframes teach-source{50%{box-shadow:inset 0 0 0 7px #efc34f8c}}@keyframes teach-target{50%{box-shadow:inset 0 0 0 9px #49bfd071}}.demo-ghost{position:fixed;z-index:8;pointer-events:none;filter:drop-shadow(0 0 6px #ffce4e);display:flex;align-items:center;justify-content:center}.demo-caption{position:fixed;bottom:12px;left:12px;right:12px;max-width:650px;margin:auto;background:#fff5dc;color:#30291f;border:2px solid #667d47;border-radius:14px;padding:14px;text-align:center;font-size:17px;line-height:1.9;z-index:9;pointer-events:none;box-shadow:0 4px 20px #0003}.demo-ghost svg{width:87%;height:87%}@media(max-width:900px) and (min-width:721px){#game-root.learning{grid-template-columns:minmax(0,1fr)290px}}@media(max-width:720px){#game-root.learning{grid-template-columns:1fr}.learning #practice{padding:17px}.learning .board-frame{width:100%}.learning aside{align-self:start}#practice p{font-size:16px}}@media(max-height:480px) and (min-width:500px){#game-root.learning{grid-template-columns:minmax(0,1fr)300px}.learning aside{max-height:calc(100vh - 70px);overflow:auto;align-self:start}.learning .board-frame{width:min(100%,calc(100vh - 65px))}}@media(prefers-reduced-motion:reduce){.square.guide-from,.square.guide-to{animation:none}.square.guide-from{box-shadow:inset 0 0 0 6px #efc34f8c}.square.guide-to{box-shadow:inset 0 0 0 6px #49bfd071}}