.app-shell{color:#073e48;font-family:ui-rounded,SF Pro Rounded,Nunito,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;width:min(1180px,100%);margin:0 auto;padding:24px}.hero-card{display:flex;justify-content:space-between;gap:20px;align-items:center;background:linear-gradient(135deg,#fffaf0,#edf6f1);border:4px solid #ffffff;border-radius:32px;padding:28px;box-shadow:0 18px 45px #6e4b2329}.app-shell button{font:inherit}.eyebrow{margin:0 0 8px;font-weight:900;color:#e56b3f;letter-spacing:.06em;text-transform:uppercase}.app-shell h2{margin:0;font-size:clamp(28px,4vw,48px);line-height:1.04;font-weight:900}.subtitle{margin:12px 0 0;font-size:18px;color:#59635d;max-width:720px}.status-pill{background:#007c79;color:#fff;border-radius:999px;padding:14px 18px;font-weight:800;min-width:210px;text-align:center}.mode-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:18px 0}.mode-card{border:3px solid transparent;border-radius:22px;background:#fffcf5;padding:16px;text-align:left;cursor:pointer;box-shadow:0 8px 24px #3c281414}.mode-card.selected{border-color:#073e48;background:#d2e4dc}.mode-card strong{display:block;font-size:17px;margin:4px 0}.mode-card small{color:#68706b}.mode-emoji{font-size:28px}.play-area{display:grid;grid-template-columns:minmax(320px,680px) minmax(280px,1fr);gap:22px;align-items:start}.board-wrap{background:#d6e4de;border-radius:28px;padding:14px;box-shadow:0 18px 45px #073b4724}.board{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));grid-template-rows:repeat(8,minmax(0,1fr));width:100%;aspect-ratio:1;container-type:inline-size;overflow:hidden;border-radius:min(18px,1%)}.square{position:relative;border:0;display:grid;place-items:center;cursor:pointer;min-width:0;min-height:0;padding:0}.square.light{background:#fff8ec}.square.dark{background:#69aaa4}.square.selected{outline:2.5px solid #073e48;outline-offset:-4px;background-image:linear-gradient(#073e482e,#073e482e)}.square.last-from:before,.square.last-to:before{content:"";position:absolute;inset:3px;border:2px dashed #073e48;border-radius:4px;pointer-events:none;z-index:3}.square.last-to:before{border:2.5px solid #073e48}.square.target.capture:after{content:"";position:absolute;inset:7%;border:2px solid #073e48;border-radius:50%;pointer-events:none;z-index:3}.piece{position:absolute;inset:8%;width:84%;height:84%;pointer-events:none}.coord{position:absolute;top:2px;left:3px;font-size:min(10px,3cqi);font-weight:800;line-height:1;color:#073e48;pointer-events:none}.dot{width:20%;height:20%;background:#073e48;border:1px solid #ffffffa6;border-radius:50%;position:absolute;z-index:2;pointer-events:none}.coach-panel{display:grid;gap:14px}.coach-card{background:#fffcf5;border-radius:24px;padding:20px;box-shadow:0 10px 28px #3d2a1617}.coach-card.primary{border:3px solid #e2ad91}.coach-card h2,.coach-card h3{margin:0 0 10px}.coach-card p{margin:0 0 10px;font-size:17px}.lesson{background:#eaf5df;padding:12px;border-radius:16px}.celebration{background:#fff0bd;padding:12px;border-radius:16px;font-weight:800}.app-shell ul{padding-left:20px;margin:0;color:#56615a}.button-row{display:grid;grid-template-columns:1fr;gap:10px}.action{border:0;border-radius:18px;padding:14px 16px;background:#007c79;color:#fff;font-weight:900;cursor:pointer}.action:disabled{opacity:.45;cursor:not-allowed}.action.danger{background:#c85c40}.app-shell button:focus-visible{outline:3px solid #073e48;outline-offset:-4px}.board-keys{font-size:12px;line-height:1.5;padding-top:10px}@media(max-width:850px){.app-shell{padding:14px}.hero-card{align-items:stretch;flex-direction:column;border-radius:24px;padding:20px}.status-pill{min-width:0}.mode-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.play-area{grid-template-columns:1fr}}.chess-page{background:#fff9ee;color:#073b47}.chess-intro{width:min(1120px,100%);margin:2rem auto;padding:1rem 1.5rem 3rem;display:grid;gap:2rem;align-items:center}.chess-eyebrow{color:#006d70;font-weight:800;letter-spacing:.13em;text-transform:uppercase;font-size:.8rem}.chess-intro h1{font-size:clamp(3rem,6.5vw,5.5rem);font-weight:900;line-height:1.03;letter-spacing:-.045em;margin:1rem 0}.chess-lead{color:#4c6c75;font-size:1.2rem;line-height:1.8}.chess-cta{display:inline-flex;justify-content:space-between;gap:3rem;background:#006d70;color:#fff;border-radius:1rem;padding:1rem 1.5rem;font-weight:800;margin-top:1.5rem;min-height:48px}.chess-cta:hover{background:#005559}.chess-page a:focus-visible{outline:3px solid #bb4e35;outline-offset:4px}.availability{max-width:28rem;font-size:.9rem;line-height:1.7;margin-top:1rem;color:#4c6c75}.chess-intro figure{max-width:480px}.chess-intro img{border-radius:2rem;width:100%;height:auto;box-shadow:0 18px 45px #073b4714}.chess-intro figcaption{font-size:.8rem;color:#4c6c75;text-align:center;margin-top:.8rem}#chess-practice{scroll-margin-top:1rem}.chess-followup{width:min(1120px,100%);margin:3rem auto;padding:1.5rem}.chess-followup h2{font-size:2rem;font-weight:900}.chess-tips{display:grid;gap:1.5rem;margin:1.5rem 0}.chess-tips article{padding:1.5rem;border:1px solid #b8d2cf;border-radius:1.5rem;background:#fffdf7}.chess-tips span{color:#b4432a;font-weight:800}.chess-tips h3{font-size:1.2rem;font-weight:800;margin:.8rem 0}.chess-followup p{line-height:1.8}.chess-followup a{text-decoration:underline;color:#006d70;font-weight:700}.chess-note,.chess-nojs{font-size:.9rem;color:#4c6c75;margin:1.5rem}@media(min-width:800px){.chess-intro{grid-template-columns:1.1fr 1fr}.chess-tips{grid-template-columns:repeat(3,1fr)}}
