body:has(.home-page){--home-sq:clamp(98px,16.5vw,262px);--home-checker-svg:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Crect%20width%3D%2264%22%20height%3D%2264%22%20fill%3D%22%2310161d%22%2F%3E%3Crect%20width%3D%2232%22%20height%3D%2232%22%20fill%3D%22%231b222e%22%2F%3E%3Crect%20x%3D%2232%22%20y%3D%2232%22%20width%3D%2232%22%20height%3D%2232%22%20fill%3D%22%231b222e%22%2F%3E%3C%2Fsvg%3E");background-image:radial-gradient(ellipse 92% 78% at 50% 26%,rgba(147,197,253,.09),transparent 56%),var(--home-checker-svg),radial-gradient(circle at 20% 0,#1d4ed8 0,#0b1226 38%,#060b19 100%);background-size:auto,calc(var(--home-sq) * 2) calc(var(--home-sq) * 2),auto;background-position:50%,0 0,50%;background-repeat:no-repeat,repeat,no-repeat;background-attachment:scroll,scroll,scroll;background-color:#060b19}body:has(.analyze-viewport){background:radial-gradient(circle at 18% 0,#38bdf8 0,#0284c7 14%,#0c3568 34%,#060f28 100%);overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(125,211,252,.5) rgba(10,32,80,.85)}body:has(.analyze-viewport)::-webkit-scrollbar{width:10px}body:has(.analyze-viewport)::-webkit-scrollbar-track{background:rgba(10,32,80,.8)}body:has(.analyze-viewport)::-webkit-scrollbar-thumb{background:linear-gradient(180deg,rgba(147,197,253,.45),rgba(59,130,246,.35));border-radius:999px;border:2px solid rgba(6,12,24,.9)}body:has(.coach-layout){scrollbar-width:thin;scrollbar-color:rgba(129,178,253,.42) rgba(8,15,32,.82)}body:has(.coach-layout)::-webkit-scrollbar{width:10px}body:has(.coach-layout)::-webkit-scrollbar-track{background:rgba(8,15,32,.75)}body:has(.coach-layout)::-webkit-scrollbar-thumb{background:linear-gradient(180deg,rgba(147,197,253,.45),rgba(59,130,246,.35));border-radius:999px;border:2px solid rgba(6,12,24,.9)}.home-page{position:relative;flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:14px;min-height:calc(100dvh - 96px)}.home-page .card{margin-bottom:0}.home-page-bg{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}.home-page>:not(.home-page-bg){position:relative;z-index:1}.home-page-bg-vignette{position:absolute;inset:0;background:radial-gradient(ellipse 92% 72% at 50% 24%,rgba(147,197,253,.07),transparent 58%),radial-gradient(ellipse 110% 90% at 50% 108%,rgba(0,0,0,.18),transparent 52%);mix-blend-mode:soft-light;pointer-events:none}.home-page-bg-piece{position:absolute;color:rgba(234,242,255,.11);pointer-events:none;filter:blur(1px)}.home-page-bg-piece--knight{width:min(44vw,400px);height:min(56vw,500px);right:-7%;bottom:6%;transform:rotate(-11deg)}.home-page-bg-piece--king{width:min(38vw,340px);height:min(50vw,440px);left:-11%;top:14%;transform:rotate(7deg)}@media (prefers-contrast:more){body:has(.home-page){background-image:radial-gradient(circle at 20% 0,#1d4ed8 0,#0b1226 38%,#060b19 100%);background-size:auto;background-repeat:no-repeat}.home-page-bg-piece{display:none}.home-page-bg-vignette{opacity:.45}}.home-page .hero-copy{background:linear-gradient(155deg,rgba(8,19,42,.78),rgba(13,28,58,.68));backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.home-page .card:not(.session-flow){background:linear-gradient(180deg,rgba(10,21,46,.72),rgba(8,15,32,.78));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.home-page .session-flow.card{background:radial-gradient(circle at 85% 10%,rgba(59,130,246,.18),transparent 45%),linear-gradient(180deg,rgba(6,16,36,.78),rgba(8,14,30,.78));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.home-page .feature-card{background-color:rgba(9,23,47,.55);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.home-page .feature-card:before{background:linear-gradient(0deg,rgba(2,6,16,.82),rgba(2,6,16,.35))}.analyze-viewport.page-shell{--gr-u:8px;--gr-4:calc(var(--gr-u) * 0.5);--gr-8:var(--gr-u);--gr-12:calc(var(--gr-u) * 1.5);--gr-16:calc(var(--gr-u) * 2);--gr-20:calc(var(--gr-u) * 2.5);--gr-radius:10px;--gr-radius-sm:8px;--gr-radius-pill:999px;--gr-card-pad:14px;--gr-board-pad:10px;--gr-card-shadow:0 10px 28px rgba(3,8,19,.34);--gr-board-side-max:420px;--gr-board-side-min:280px;--gr-board-measure-inset:10px;--gr-board-chrome-below:62px;--gr-viewport-pad-bottom:var(--gr-8);--gr-fs-11:0.8125rem;--gr-fs-12:0.875rem;--gr-fs-13:0.9375rem;--gr-fs-14:1rem;--gr-fs-15:1.0625rem;--gr-fs-16:1.125rem;--gr-leading-tight:1.32;--gr-leading-body:1.4;--gr-rail-width-min:300px;--gr-grid-gap:10px;display:flex;flex-direction:column;flex:1 1 auto;height:auto;min-height:0;overflow:visible;gap:var(--gr-8);margin-bottom:0}.analyze-viewport .analyze-tab-bar{margin-bottom:0;flex-shrink:0;padding:12px 16px}.analyze-viewport .analyze-tab-eyebrow{margin:0 0 10px}.analyze-viewport .analyze-tab-buttons{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.analyze-viewport .analyze-tab-buttons button{flex:0 1 auto;min-width:min(160px,100%)}.analyze-viewport .analyze-tab-hint{margin:10px 0 0;font-size:var(--gr-fs-12);line-height:var(--gr-leading-body)}.analyze-viewport>:last-child{flex:0 0 auto;min-height:0;min-width:0}@media (min-width:901px){.analyze-viewport>:last-child{min-height:min(62vh,780px)}}.analyze-viewport>.two-col{display:grid;grid-gap:var(--gr-grid-gap);gap:var(--gr-grid-gap);align-items:start}@media (min-width:901px){.analyze-viewport>.two-col{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.app-main:has(.analyze-viewport){min-height:100dvh;height:auto;padding:12px 10px;overflow:visible}.app-main:has(.analyze-viewport) .topbar{margin-bottom:12px}.app-main:has(.analyze-viewport)>.app-main-body{overflow:visible}.app-main>.topbar{flex-shrink:0}.topbar{position:-webkit-sticky;position:sticky;top:12px;z-index:20;justify-content:space-between;gap:12px;padding:14px 16px;border:1px solid rgba(147,197,253,.24);border-radius:16px;background:rgba(7,16,36,.76);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);margin-bottom:18px}.topbar,.topbar-leading{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;min-width:0}.topbar-leading{gap:10px;flex:0 1 auto}.brand{color:#eff6ff;font-size:1.1rem;font-weight:700;letter-spacing:.2px;min-height:44px;display:inline-flex}.brand,.topbar-links{min-width:0;align-items:center}.topbar-links{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end;flex:1 1 auto}.topbar-links a{padding:7px 10px;min-height:44px;display:inline-flex;align-items:center;border-radius:8px;color:#cfe4ff}.topbar-links a:hover{background:rgba(96,165,250,.14);transform:translateY(-1px);transition:all .2s ease}.topbar-links a.topbar-link--active{background:rgba(96,165,250,.24);color:#f8fafc;font-weight:700}.topbar-logout{width:auto;margin:0;padding:7px 10px;min-height:44px;border-radius:8px;border:1px solid rgba(147,197,253,.35);background:rgba(15,23,42,.65);color:#cfe4ff;font-weight:600}.topbar-logout:hover:not(:disabled){background:rgba(26,42,72,.85);border-color:rgba(147,197,253,.55)}.topbar-signed-in{padding:7px 10px;border-radius:8px;color:#86efac;font-size:14px;font-weight:600}.topbar-account-wrap{position:relative;display:inline-flex;align-items:center}.topbar-account-trigger{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:6px 10px;border-radius:10px;border:1px solid rgba(147,197,253,.35);background:rgba(15,23,42,.65);color:#cfe4ff;font-weight:600;cursor:pointer}.topbar-account-trigger:hover{background:rgba(26,42,72,.85)}.topbar-account-chevron{font-size:12px;opacity:.85}.topbar-account-label{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-avatar{width:28px;height:28px;border-radius:999px;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.topbar-avatar img{width:100%;height:100%;object-fit:cover}.topbar-avatar--fallback{font-size:11px;font-weight:800;background:rgba(96,165,250,.35);color:#f8fafc}.topbar-account-menu{position:absolute;right:0;top:calc(100% + 8px);min-width:188px;padding:8px;border-radius:12px;border:1px solid rgba(147,197,253,.24);background:rgba(7,16,36,.96);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 12px 40px rgba(0,0,0,.35);z-index:250}.topbar-account-menu a,.topbar-account-menu button{display:block;width:100%;text-align:left;padding:8px 10px;border-radius:8px;border:none;background:transparent;color:#cfe4ff;font:inherit;cursor:pointer;text-decoration:none}.topbar-account-menu a:hover,.topbar-account-menu button:hover{background:rgba(96,165,250,.14)}.topbar-menu-toggle{display:none;flex-shrink:0}.page-shell{display:grid;grid-gap:16px;gap:16px;margin-bottom:18px}.page-shell.two-col{grid-template-columns:1.1fr .9fr}.profile-header-row{display:flex;gap:18px;align-items:flex-start;margin-bottom:18px}.profile-avatar-large{width:96px;height:96px;border-radius:999px;overflow:hidden;flex-shrink:0;border:1px solid rgba(147,197,253,.35);background:rgba(15,23,42,.5)}.profile-avatar-large img{width:100%;height:100%;object-fit:cover}.profile-avatar-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:800;background:rgba(96,165,250,.25);color:#f8fafc}.profile-meta-block{flex:1 1;min-width:0}.profile-meta-line{margin:0 0 8px;color:#e2e8f0;font-size:.95rem}@media (min-width:941px){.page-shell.two-col.coach-layout{grid-template-columns:7fr 3fr}.page-shell.two-col.coach-layout .coach-page-board-wrap.board-wrap{--coach-board-max-width:min(700px,70dvh)}}.panel-title{margin-top:0;margin-bottom:6px}.muted{margin-top:0;color:#b9d6ff}.form-grid{display:grid;grid-gap:10px;gap:10px}.inline-two{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.form-actions{margin-top:4px}.feedback-error{margin-top:4px;color:#fda4af;font-weight:600}.feedback-success{margin-top:4px;color:#86efac;font-weight:600}.pill-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.pill{border:1px solid rgba(147,197,253,.4);border-radius:999px;padding:6px 10px;color:#dbeafe;font-size:13px}.list-clean{margin:0;padding-left:18px}.list-clean li{margin-bottom:8px;color:#d6e8ff}.auth-links{margin-top:12px;color:#c7defe}.demo-creds-strip{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:rgba(52,211,153,.07);border:1px solid rgba(52,211,153,.25);border-radius:8px;padding:9px 13px;font-size:12.5px}.demo-creds-badge{background:rgba(52,211,153,.18);color:#6ee7b7;border:1px solid rgba(52,211,153,.35);border-radius:4px;padding:1px 7px;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;flex-shrink:0}.demo-creds-text{color:#a7f3d0;flex-shrink:0}.demo-creds-text strong{color:#d1fae5}.demo-creds-vals{display:flex;align-items:center;gap:6px;color:rgba(167,243,208,.7);font-family:monospace;font-size:12px;letter-spacing:.02em}.demo-creds-sep{color:rgba(52,211,153,.4)}.demo-creds-fill-btn{margin-left:auto;padding:5px 12px;border-radius:6px;border:1px solid rgba(52,211,153,.4);background:rgba(52,211,153,.12);color:#6ee7b7;font-size:12px;font-weight:600;cursor:pointer;flex-shrink:0;transition:background .15s}.demo-creds-fill-btn:active,.demo-creds-fill-btn:hover{background:rgba(52,211,153,.22)}.beta-redirect-popup{position:relative;background:rgba(99,102,241,.09);border:1px solid rgba(99,102,241,.3);border-radius:10px;padding:14px 16px;display:flex;flex-direction:column;gap:6px}.beta-redirect-close{position:absolute;top:10px;right:10px;background:transparent;border:none;color:rgba(165,180,252,.6);cursor:pointer;padding:2px;display:flex;align-items:center;transition:color .15s}.beta-redirect-close:hover{color:#a5b4fc}.beta-redirect-title{margin:0;font-size:13.5px;font-weight:700;color:#c7d2fe}.beta-redirect-body{margin:0;font-size:13px;color:rgba(199,210,254,.8);line-height:1.5;padding-right:18px}.beta-redirect-cta{display:inline-flex;align-items:center;margin-top:4px;font-size:13px;font-weight:600;color:#818cf8;text-decoration:none;transition:color .15s}.beta-redirect-cta:hover{color:#a5b4fc}.mt-sm{margin-top:14px}.lesson-list{display:grid;grid-gap:10px;gap:10px}.lesson-item{text-align:left;padding:12px;border-radius:12px;border:1px solid rgba(143,184,246,.25);background:rgba(9,20,42,.75)}.lesson-item.active{border-color:#60a5fa;box-shadow:inset 0 0 0 1px rgba(96,165,250,.5)}.lesson-item span{display:block;color:#b7d5ff;margin-top:4px}.lesson-item small{display:block;color:#93c5fd;margin-top:6px}.lessons-hero{display:grid;grid-template-columns:1.15fr .85fr;grid-gap:12px;gap:12px;align-items:stretch}.lessons-hero-copy{padding:4px 2px;display:flex;flex-direction:column;min-width:0}.lessons-hero-art{position:relative;overflow:hidden;width:100%;min-height:280px;max-width:420px;justify-self:end;align-self:stretch;border-radius:12px;border:1px solid rgba(147,197,253,.24)}.lessons-hero-art .responsive-cover-image__media{object-fit:cover;object-position:center}.lessons-hero-puzzle{margin-top:auto;padding-top:16px;border-top:1px solid rgba(147,197,253,.13)}.lessons-hero-puzzle-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.lessons-hero-puzzle-title-row{display:flex;align-items:center;gap:10px}.lessons-hero-puzzle-icon{width:34px;height:34px;border-radius:9px;background:linear-gradient(135deg,rgba(37,99,235,.22),rgba(109,40,217,.2));border:1px solid rgba(147,197,253,.22);display:flex;align-items:center;justify-content:center;font-size:14px;color:#93c5fd;flex-shrink:0}.lessons-hero-puzzle-title{font-size:.875rem;font-weight:700;color:#dbeafe;line-height:1.2}.lessons-hero-puzzle-sub{font-size:.7rem;color:#4a7a9b;margin-top:2px;letter-spacing:.01em}.lessons-hero-puzzle-stats{display:flex;gap:16px}.lessons-hero-puzzle-stat{display:flex;flex-direction:column;align-items:center;gap:2px}.lessons-hero-puzzle-stat-val{font-size:1rem;font-weight:700;color:#93c5fd;line-height:1}.lessons-hero-puzzle-stat-lbl{font-size:.58rem;color:#3d6a8a;text-transform:uppercase;letter-spacing:.08em;font-weight:600}.lessons-hero-puzzle-cats{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.lessons-hero-puzzle-cat{padding:4px 11px;border-radius:999px;font-size:.72rem;font-weight:600;border:1px solid rgba(147,197,253,.22);background:rgba(10,20,42,.6);color:#5a8db8;cursor:pointer;transition:border-color .14s,color .14s,background .14s,box-shadow .14s;width:auto;margin:0;letter-spacing:.02em;box-shadow:none}.lessons-hero-puzzle-cat:hover:not(:disabled){border-color:rgba(147,197,253,.45);color:#93c5fd;background:rgba(15,30,58,.75);transform:none;box-shadow:none}.lessons-hero-puzzle-cat.active{background:rgba(29,78,216,.22);border-color:rgba(96,165,250,.55);color:#93c5fd;box-shadow:0 0 0 3px rgba(29,78,216,.12)}.lessons-hero-puzzle-focus{font-size:.72rem;color:#3d6a8a;line-height:1.5;margin-bottom:14px;min-height:2.2em}.lessons-hero-puzzle-cta{display:inline-flex;align-items:center;gap:6px;padding:9px 20px;background:linear-gradient(135deg,rgba(29,78,216,.2),rgba(109,40,217,.16));border:1px solid rgba(147,197,253,.32);border-radius:9px;color:#bfdbfe;font-size:.82rem;font-weight:700;text-decoration:none;letter-spacing:.02em;transition:background .18s,border-color .18s,color .18s,box-shadow .18s;box-shadow:0 2px 8px rgba(0,0,0,.2)}.lessons-hero-puzzle-cta:hover{background:linear-gradient(135deg,rgba(37,99,235,.32),rgba(109,40,217,.26));border-color:rgba(147,197,253,.52);color:#e0f2fe;text-decoration:none;box-shadow:0 4px 16px rgba(29,78,216,.25)}.lessons-hero-cta-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.lessons-hero-openings-link{background:transparent;border-color:rgba(147,197,253,.22);color:#93c5fd}.lessons-layout .card{position:relative}.lesson-theme-0{background-image:linear-gradient(0deg,rgba(2,6,16,.82),rgba(2,6,16,.36)),url(/lessons/lesson-1.jpg)}.lesson-theme-0,.lesson-theme-1{background-size:cover;background-position:50%}.lesson-theme-1{background-image:linear-gradient(0deg,rgba(2,6,16,.82),rgba(2,6,16,.36)),url(/lessons/lesson-2.jpg)}.lesson-theme-2{background-image:linear-gradient(0deg,rgba(2,6,16,.82),rgba(2,6,16,.36)),url(/lessons/lesson-3.jpg);background-size:cover;background-position:50%}.lesson-item.lesson-theme-0,.lesson-item.lesson-theme-1,.lesson-item.lesson-theme-2{border-color:rgba(147,197,253,.42)}.lesson-stage-art{min-height:150px;border-radius:12px;border:1px solid rgba(147,197,253,.26);margin-bottom:12px}.lessons-puzzle-strip{display:flex;align-items:center;gap:16px;padding:11px 16px;text-decoration:none;color:inherit;border-color:rgba(96,165,250,.22);transition:border-color .15s,background .15s}.lessons-puzzle-strip:hover{border-color:rgba(96,165,250,.5);background:rgba(96,165,250,.05)}.lessons-puzzle-strip-left{display:flex;align-items:center;gap:8px;flex:1 1;min-width:0;color:#7aaddc}.lessons-puzzle-strip-title{font-size:.82rem;font-weight:600;color:#c5dff5;white-space:nowrap}.lessons-puzzle-strip-sub{font-size:.72rem;color:#4a7a9b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lessons-puzzle-strip-stats{display:flex;gap:20px;flex-shrink:0}.lessons-puzzle-strip-stat{display:flex;flex-direction:column;align-items:center;gap:1px;font-size:.62rem;color:#4a7a9b;text-transform:uppercase;letter-spacing:.05em;font-weight:600}.lessons-puzzle-strip-val{font-size:.9rem;font-weight:700;color:#a0c4e0;line-height:1}.lessons-puzzle-strip-cta{font-size:.75rem;font-weight:600;color:#4a9fd4;flex-shrink:0;letter-spacing:.02em}.lesson-demo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.lesson-demo-card{display:grid;grid-template-columns:110px 1fr;grid-gap:10px;gap:10px;align-items:stretch;padding:10px}.lesson-demo-card>div{min-width:0}.lesson-demo-thumb{position:relative;overflow:hidden;border-radius:8px;border:1px solid rgba(147,197,253,.28);min-height:120px}.responsive-cover-image__media{object-fit:cover;z-index:0}.responsive-cover-image__overlay{position:absolute;inset:0;pointer-events:none;z-index:1}.lesson-demo-progress{width:100%;height:5px;border-radius:999px;background:rgba(96,165,250,.15);overflow:hidden;margin:5px 0}.lesson-demo-progress>div{height:100%;border-radius:999px;background:linear-gradient(90deg,#8b5cf6,#a78bfa)}.lesson-demo-card .panel-title{font-size:.82rem;margin-bottom:3px}.lesson-demo-card .muted{font-size:.72rem;line-height:1.4;margin-bottom:2px}.lesson-demo-card small{font-size:.67rem}.lesson-demo-card .form-actions{margin-top:8px}.lesson-demo-card .form-actions button{padding:5px 12px;font-size:.75rem}.lesson-demo-card .form-actions a.lesson-demo-start-link{display:inline-block;padding:5px 12px;font-size:.75rem;border-radius:8px;border:1px solid rgba(147,197,253,.35);background:rgba(59,130,246,.22);color:#e8f2ff;font-weight:600;text-decoration:none}.lesson-demo-card .form-actions a.lesson-demo-start-link:hover{background:rgba(59,130,246,.35);border-color:rgba(147,197,253,.5)}.lessons-wip-banner{grid-column:1/-1;display:flex;align-items:center;gap:12px;padding:14px 0 8px;margin-top:4px}.lessons-wip-banner-line{flex:1 1;height:1px;background:linear-gradient(90deg,rgba(251,191,36,.5),transparent)}.lessons-wip-banner-line--right{background:linear-gradient(270deg,rgba(251,191,36,.5),transparent)}.lessons-wip-banner-chip{display:flex;align-items:center;gap:7px;background:rgba(251,191,36,.08);border:1px solid rgba(251,191,36,.3);border-radius:8px;padding:7px 14px;font-size:.74rem;font-weight:600;color:rgba(251,191,36,.85);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}.lessons-wip-banner-icon{width:14px;height:14px;flex-shrink:0;opacity:.8}.beginner-school-lesson-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.beginner-school-lesson-card{display:block;padding:12px;min-height:0}.beginner-school-lesson-card .panel-title{font-size:.95rem;line-height:1.25;margin-bottom:6px}.beginner-school-lesson-card .muted{font-size:.82rem;line-height:1.45;margin-bottom:8px}.beginner-school-lesson-card .form-actions{margin-top:6px}.lesson-live-panel{display:grid;grid-template-columns:220px 1fr;grid-gap:14px;gap:14px;align-items:stretch}.lesson-live-art{border-radius:12px;border:1px solid rgba(147,197,253,.3);min-height:220px;background-size:cover;background-position:50%}.lesson-trainer-grid{display:grid;grid-template-columns:.95fr 1.05fr;grid-gap:14px;gap:14px}.lesson-trainer-list{display:grid;grid-gap:10px;gap:10px;align-content:start}.lesson-trainer-item{text-align:left;border-radius:12px;border:1px solid rgba(147,197,253,.25);background:rgba(9,20,42,.75);padding:12px}.lesson-trainer-item.active{border-color:rgba(96,165,250,.7);box-shadow:inset 0 0 0 1px rgba(96,165,250,.45)}.lesson-trainer-item span{display:block;color:#b7d5ff;margin-top:5px}.lesson-live-header{display:grid;grid-template-columns:1fr 220px;grid-gap:12px;gap:12px;align-items:stretch}.lesson-live-header .lesson-live-art{min-height:140px}.lesson-browse-label{font-size:11px;color:#fbbf24;text-align:center;margin:8px 0 2px;letter-spacing:.02em}.lesson-controls-bar{gap:6px;margin-top:12px;padding:8px 10px;background:rgba(8,16,34,.7);border-radius:14px;border:1px solid rgba(147,197,253,.1)}.lesson-controls-bar,.lesson-ctrl-btn{display:flex;align-items:center;justify-content:center}.lesson-ctrl-btn{width:46px;height:46px;min-width:46px;margin:0;padding:0;border-radius:10px;background:#131f35;border:1px solid rgba(147,197,253,.14);color:#7da8d4;cursor:pointer;flex-shrink:0;transition:background .15s,border-color .15s,color .15s,transform .1s}.lesson-ctrl-btn:hover:not(:disabled){background:#1c2f4e;border-color:rgba(147,197,253,.32);color:#c7defe;transform:translateY(-1px)}.lesson-ctrl-btn:active:not(:disabled){transform:translateY(0)}.lesson-ctrl-btn:disabled{background:#0c1525;border-color:rgba(147,197,253,.06);color:#2e4060;cursor:not-allowed}.lesson-ctrl-btn--hint{color:#94a3c0}.lesson-ctrl-btn--hint-active{color:#fbbf24;border-color:rgba(251,191,36,.35);background:rgba(251,191,36,.08)}.lesson-ctrl-btn--hint-active:hover:not(:disabled){background:rgba(251,191,36,.15);border-color:rgba(251,191,36,.5)}.lesson-ctrl-btn--next{background:linear-gradient(135deg,#2b6cf0,#1e53c8);border-color:rgba(59,130,246,.45);color:#fff;width:50px;height:50px;min-width:50px;border-radius:11px}.lesson-ctrl-btn--next:hover:not(:disabled){background:linear-gradient(135deg,#3b7cf8,#2b6cf0);border-color:rgba(99,160,255,.6);color:#fff}.lesson-ctrl-btn--next:disabled{background:#1a2840;border-color:rgba(147,197,253,.08);color:#2e4060}.lesson-divider{border:0;border-top:1px solid rgba(147,197,253,.22);margin:8px 0 14px}.lesson-practice-shell{display:grid;grid-template-columns:1.5fr .65fr;grid-gap:14px;gap:14px;align-items:stretch}.lesson-practice-shell,.lesson-practice-shell>*{min-width:0;overflow:hidden}.lesson-practice-shell.game-review-main{flex:1 1;min-height:0;max-height:none;overflow:visible;gap:10px;grid-template-rows:auto;grid-template-columns:minmax(0,1fr) minmax(220px,min(36vw,320px));align-items:start}.lesson-practice-board .board-wrap{position:relative;max-width:min(680px,100%);overflow:hidden}.lesson-practice-side select,.lesson-practice-side textarea{width:100%;max-width:100%;box-sizing:border-box}.lesson-practice-board.game-review-board-anchor .board-wrap,.lesson-practice-board.game-review-board-anchor .game-review-board-wrap{max-width:100%}.lesson-practice-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.lesson-practice-side{display:grid;align-content:start;grid-gap:8px;gap:8px}.beginner-school-practice.lesson-practice-shell{min-width:0}.beginner-school-board-card{min-width:0;overflow:hidden}.beginner-school-board-wrap.board-wrap{max-width:100%;box-sizing:border-box;width:100%;display:flex;justify-content:flex-start;align-items:flex-start;margin-left:0;margin-right:auto}.beginner-school-board-loading{width:100%;max-width:520px;aspect-ratio:1;min-height:220px;max-height:min(90vw,520px);border-radius:8px;background:linear-gradient(135deg,rgba(15,30,60,.72),rgba(8,18,38,.88));box-sizing:border-box}.analysis-game-review-root .game-review-board-wrap{position:relative}.analysis-game-review-root .game-review-square-reaction{position:absolute;top:-6px;right:-4px;z-index:6;width:26px;height:26px;min-width:0;padding:0;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 1px 4px rgba(0,0,0,.42);border:2px solid hsla(0,0%,100%,.55);pointer-events:none;color:#fff}.analysis-game-review-root .game-review-square-reaction__glyph{font-size:10px;font-weight:700;line-height:1;font-family:Georgia,Times New Roman,Times,serif;letter-spacing:-.04em;text-shadow:0 1px 1px rgba(0,0,0,.3)}.analysis-game-review-root .game-review-square-reaction--emoji .game-review-square-reaction__glyph{font-size:12px;font-family:system-ui,Segoe UI,sans-serif;letter-spacing:0;text-shadow:none;line-height:1}.analysis-game-review-root .game-review-square-reaction--sprite{width:26px;height:26px;min-width:0;padding:0;border:none!important}.analysis-game-review-root .game-review-square-reaction__img{display:block;width:26px;height:26px;object-fit:contain;border-radius:50%}.game-review-shell{--gr-u:8px;--gr-board-side-max:420px;--gr-board-side-min:252px;--gr-board-measure-inset:12px;--gr-board-chrome-below:72px;--gr-viewport-pad-bottom:12px;display:flex;flex-direction:column;flex:1 1;min-height:0;overflow:visible;gap:10px}.game-review-session>.card,.game-review-shell>.card{padding:var(--gr-card-pad,12px);border-radius:var(--gr-radius,10px);margin-bottom:0;box-shadow:var(--gr-card-shadow,0 10px 28px rgba(3,8,19,.34))}.game-review-shell>.card.game-review-setup-card{flex-shrink:0}.game-review-setup-card .panel-title{font-size:var(--gr-fs-16,1.125rem);margin-bottom:6px}.game-review-shell .panel-title{font-size:var(--gr-fs-16,1.125rem);margin-bottom:var(--gr-4,4px);margin-top:0;line-height:var(--gr-leading-tight,1.32)}.game-review-session{display:flex;flex-direction:column;flex:1 1;min-height:0;overflow:visible;gap:12px}.game-review-session>.card{margin-bottom:0}.game-review-setup-collapsed{display:flex;flex-wrap:wrap;align-items:center;gap:var(--gr-8,8px) var(--gr-12,12px)}.game-review-setup-collapsed .muted{font-size:var(--gr-fs-14,1rem)}.game-review-header--dock{flex-shrink:0;max-height:none;overflow:visible;padding:16px}.game-review-header--dock::-webkit-scrollbar{display:none}.game-review-header--dock .pill-row{gap:var(--gr-4,4px);margin:0}.game-review-header--dock .pill{font-size:var(--gr-fs-13,.9375rem);padding:6px 10px;border-radius:var(--gr-radius-sm,8px)}.game-review-header--dock .form-actions{margin-top:var(--gr-8,8px);gap:var(--gr-8,8px)}.game-review-header--dock .form-actions button{padding:9px 12px;font-size:var(--gr-fs-14,1rem)}.game-review-header--dock .eyebrow{font-size:var(--gr-fs-12,.875rem);margin:0 0 var(--gr-4,4px);letter-spacing:.06em}.game-review-header--dock .game-review-hero{margin-top:8px;padding:12px 14px}.game-review-header--dock .game-review-hero h3{font-size:1.2rem;margin-bottom:6px}.game-review-header--dock .game-review-hero .coach-hook{font-size:var(--gr-fs-14,1rem);line-height:1.5;display:block;overflow:visible}.game-review-header--dock .game-review-eval-graph--compact{margin-top:var(--gr-8,8px)}.game-review-eval-graph-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.game-review-eval-graph-title{font-size:var(--gr-fs-13,.9375rem);font-weight:600;color:#e8f1ff;letter-spacing:.02em}.game-review-eval-graph-chip{font-size:var(--gr-fs-12,.875rem);font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:#bae6fd;padding:4px 10px;border-radius:var(--gr-radius-sm,8px);background:rgba(30,58,138,.55);border:1px solid rgba(125,211,252,.28)}.game-review-eval-bar-wrap{display:flex;align-items:center;gap:10px;margin-bottom:4px}.game-review-eval-bar-side{flex:0 0 auto;font-size:var(--gr-fs-11,.8125rem);font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.06em;width:2.75rem}.game-review-eval-bar-side:last-of-type{text-align:right}.game-review-eval-bar-track{position:relative;flex:1 1 auto;min-width:0;height:14px;border-radius:999px;overflow:visible;border:1px solid rgba(148,163,184,.35);box-shadow:inset 0 1px 3px rgba(0,0,0,.35)}.game-review-eval-bar-grad{position:absolute;inset:0;border-radius:999px;background:linear-gradient(90deg,#b91c1c,#475569 50%,#15803d);opacity:.92}.game-review-eval-bar-mid{position:absolute;left:50%;top:-2px;bottom:-2px;width:2px;margin-left:-1px;background:rgba(248,250,252,.9);border-radius:1px;z-index:1;pointer-events:none}.game-review-eval-bar-nib{position:absolute;z-index:2;width:12px;height:12px;border-radius:50%;background:#f8fafc;border:2px solid rgba(15,23,42,.95);box-shadow:0 2px 8px rgba(0,0,0,.45);pointer-events:none}.game-review-eval-bar-caption{margin:0 0 10px!important;font-size:var(--gr-fs-12,.875rem)!important;text-align:center;color:#94a3b8!important}.game-review-eval-svg{display:block;border-radius:10px;overflow:hidden;box-shadow:0 4px 20px rgba(0,0,0,.25)}.game-review-eval-graph--compact .game-review-eval-svg{max-height:64px}.game-review-eval-graph--compact .game-review-eval-bar-track{height:12px}.game-review-header--dock .game-review-patterns-wrap{margin-top:var(--gr-8,8px)}.game-review-header--dock .game-review-patterns-wrap .muted{font-size:var(--gr-fs-12,.875rem);margin:0 0 var(--gr-4,4px)!important}.game-review-header--dock .game-review-dock-section{margin-top:var(--gr-12,12px)}.game-review-header--dock .game-review-dock-section .muted{font-size:var(--gr-fs-13,.9375rem);margin-bottom:var(--gr-8,8px)!important}.game-review-header--dock .game-review-hero .coach-hook+.coach-hook{margin-top:6px!important}.game-review-guided-hint{font-size:var(--gr-fs-13,.9375rem)!important;line-height:1.45!important;margin:var(--gr-4,4px) 0 var(--gr-8,8px)!important}.game-review-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-gap:12px;gap:12px;align-items:start;width:100%;min-width:0}.game-review-workspace--solo{grid-template-columns:minmax(0,1fr);max-width:100%}.game-review-board-coach-inner{display:flex;flex-flow:row wrap;align-items:flex-start;gap:10px 14px;width:100%}.game-review-board-col{flex:0 1 auto;min-width:0;display:flex;flex-direction:column;align-items:flex-start}.game-review-board-anchor .game-review-board-coach-pane{flex:1 1 170px;min-width:140px;max-width:280px;display:flex;flex-direction:column;padding:8px 10px 9px;border-radius:10px;background:radial-gradient(ellipse 120% 80% at 10% 0,rgba(129,140,248,.12),transparent 48%),linear-gradient(165deg,rgba(15,23,42,.92),rgba(26,31,53,.9));border:1px solid rgba(148,163,184,.14);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.04)}.game-review-moves-column{display:flex;flex-direction:column;gap:12px;min-width:0;align-self:stretch}.game-review-cc-eyebrow{margin:0 0 6px;font-size:.65rem;text-transform:uppercase;letter-spacing:.16em;color:rgba(186,230,253,.72);font-weight:700}.game-review-cc-strip{display:flex;align-items:flex-start;gap:8px;margin-bottom:8px}.game-review-cc-avatar{flex-shrink:0;width:38px;height:38px;border-radius:50%;background:linear-gradient(145deg,#3b82f6,#1d4ed8);display:grid;place-items:center;box-shadow:0 3px 10px rgba(37,99,235,.4);border:1px solid rgba(191,219,254,.35)}.game-review-cc-avatar-face{font-size:1.05rem;line-height:1;filter:drop-shadow(0 1px 2px rgba(0,0,0,.35))}.game-review-cc-bubble{flex:1 1;min-width:0;position:relative;padding:9px 11px;border-radius:11px 12px 12px 5px;background:rgba(248,250,252,.97);color:#0f172a;box-shadow:0 3px 14px rgba(15,23,42,.14)}.game-review-cc-bubble:before{content:"";position:absolute;left:-5px;top:12px;width:0;height:0;border-top:7px solid transparent;border-bottom:7px solid transparent;border-right:8px solid rgba(248,250,252,.97)}.game-review-cc-bubble-text{margin:0;font-size:.84rem;line-height:1.4;font-weight:500;letter-spacing:.01em}.game-review-cc-opening-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:7px;border-top:1px solid rgba(148,163,184,.18)}.game-review-cc-opening-name{font-size:.8rem;font-weight:600;color:#e2e8f0;letter-spacing:.02em}.game-review-cc-opening-meta{display:flex;align-items:center;gap:8px;color:rgba(186,230,253,.75);flex-shrink:0}.game-review-cc-icon{opacity:.85}.game-review-coach-rail{padding:12px 14px!important}.game-review-coach-details{border:0;margin:0}.game-review-coach-details-summary{cursor:pointer;font-size:.9rem;font-weight:600;color:#cbd5e1;list-style:none;padding:4px 0 8px}.game-review-coach-details-summary::-webkit-details-marker{display:none}.game-review-coach-details-summary:after{content:" â–¼";font-size:.7rem;opacity:.65}.game-review-coach-details[open] .game-review-coach-details-summary:after{content:" â–²"}.game-review-moves-column .game-review-movelist{flex:1 1 auto;min-height:0;max-height:none}.game-review-moves-column .game-review-movelist-scroll{max-height:min(40dvh,400px)}.game-review-board-anchor{display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;height:auto;min-height:0;min-width:0;overflow:visible;padding:14px!important}.game-review-board-anchor .board-wrap,.game-review-board-anchor .game-review-board-wrap{flex:0 0 auto;min-width:0;width:-moz-fit-content;width:fit-content;max-width:100%;align-self:flex-start;display:flex;justify-content:flex-start;align-items:center;overflow:visible;margin:0;padding:0;border-radius:0}.game-review-board-caption{flex-shrink:0;font-size:var(--gr-fs-12,.875rem);line-height:1.45;text-align:left;max-width:56ch;margin:6px 0 0}.lesson-practice-board.game-review-board-anchor{align-self:start;min-height:0;width:100%;max-width:none}.game-review-move-compare{width:100%;margin-top:12px;padding-top:12px;border-top:1px solid rgba(148,163,184,.16)}.game-review-move-compare-pair{display:flex;flex-wrap:wrap;align-items:stretch;gap:12px 16px}.game-review-move-compare-item{flex:1 1 120px;min-width:0;display:flex;flex-direction:column;gap:4px}.game-review-move-compare-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.14em;color:rgba(148,163,184,.88);font-weight:700}.game-review-move-compare-san{font-size:1.125rem;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:.03em;line-height:1.2}.game-review-move-compare-item--played .game-review-move-compare-san{color:#fbbf24}.game-review-move-compare-item--engine .game-review-move-compare-san{color:#4ade80}.game-review-move-compare-divider{flex:0 0 auto;width:1px;min-height:2.25rem;align-self:center;background:rgba(148,163,184,.2)}.game-review-move-compare--match .game-review-move-compare-divider{opacity:.35}.game-review-move-compare-badge{display:inline-block;margin-top:8px;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:rgba(74,222,128,.95)}.game-review-move-compare-placeholder{margin:12px 0 0;padding-top:12px;border-top:1px solid rgba(148,163,184,.12);font-size:.8125rem;line-height:1.45;max-width:52ch}@media (max-width:520px){.game-review-move-compare-divider{display:none}.game-review-move-compare-pair{gap:10px 12px}}.game-review-eval-graph--compact .muted{font-size:var(--gr-fs-12,.875rem);margin-bottom:var(--gr-4,4px)!important}.game-review-eval-graph--compact .graph-foot{font-size:var(--gr-fs-12,.875rem);margin-top:var(--gr-4,4px)!important}@media (max-width:960px){.lesson-practice-shell.game-review-main{grid-template-columns:1fr;align-items:stretch}.game-review-workspace{grid-template-columns:1fr}.lesson-practice-board.game-review-board-anchor{min-height:min(56vmin,440px);width:100%}.game-review-board-coach-inner{flex-direction:column}.game-review-board-anchor .game-review-board-coach-pane{max-width:none;width:100%;flex:1 1 auto}.game-review-moves-column .game-review-movelist-scroll{max-height:min(36dvh,360px)}}@media (max-width:639px){.analyze-viewport.page-shell{--gr-board-side-min:244px;--gr-board-chrome-below:70px;--gr-rail-width-min:0px}.game-review-header--dock{max-height:none}}.game-review-coach,.game-review-movelist{min-width:0}.game-review-movelist{display:flex;flex-direction:column;overflow:hidden;min-height:0}.game-review-coach{display:flex;flex-direction:column;overflow:visible}.game-review-movelist-hint{font-size:var(--gr-fs-12,.875rem);line-height:1.45;margin:0 0 var(--gr-4,4px)!important}.game-review-movelist .panel-title,.game-review-movelist>.game-review-movelist-hint{flex-shrink:0}.game-review-movelist-scroll{display:flex;flex-direction:column;gap:4px;flex:1 1 auto;min-height:0;max-height:min(58dvh,560px);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding-right:4px;margin-top:8px;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:rgba(129,178,253,.55) rgba(15,23,42,.65)}.game-review-movelist-scroll::-webkit-scrollbar{width:10px}.game-review-movelist-scroll::-webkit-scrollbar-track{background:rgba(15,23,42,.72);border-radius:999px;margin:6px 0;border:1px solid rgba(148,163,184,.12)}.game-review-movelist-scroll::-webkit-scrollbar-thumb{background:linear-gradient(180deg,rgba(147,197,253,.55),rgba(59,130,246,.42));border-radius:999px;border:2px solid rgba(15,23,42,.85);box-shadow:inset 0 0 0 1px rgba(129,178,253,.15)}.game-review-movelist-scroll::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,rgba(186,230,253,.7),rgba(96,165,250,.55))}.game-review-movelist-scroll::-webkit-scrollbar-thumb:active{background:linear-gradient(180deg,rgba(96,165,250,.75),rgba(37,99,235,.55))}.game-review-move-row{display:flex;width:100%;text-align:left;align-items:center;gap:8px;padding:8px 10px;min-height:0;margin-bottom:0;border-radius:9px;border:1px solid rgba(148,163,184,.22);background:rgba(7,16,36,.38);cursor:pointer;font-size:.95rem;line-height:1.4;color:inherit;font-family:inherit}.game-review-move-row.is-active{background:rgba(96,165,250,.16)}.game-review-move-row.is-key{border-color:rgba(96,165,250,.72);box-shadow:0 0 0 1px rgba(129,178,253,.32);background:rgba(96,165,250,.11)}.game-review-move-no{width:1.75rem;flex-shrink:0;opacity:.85;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:.82rem}.game-review-move-emoji{width:1.65rem;flex-shrink:0;text-align:center;font-size:1.05rem;line-height:1;-webkit-user-select:none;-moz-user-select:none;user-select:none}.game-review-pill-move-grade{display:inline-flex;align-items:center;gap:.15em;max-width:100%}.game-review-pill-emoji{font-size:1.05em;line-height:1}.game-review-move-san{flex:1 1;min-width:0;font-weight:600;letter-spacing:.01em}.game-review-move-meta{font-size:.8rem;opacity:.9;max-width:min(8.25rem,40%);text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.game-review-coach-scroll{display:flex;flex-direction:column;gap:8px;min-height:0;overflow:visible;padding-right:0;margin-top:8px}.game-review-coach-scroll::-webkit-scrollbar{display:none}.game-review-coach .panel-title{flex-shrink:0}.game-review-coach .pill-row{gap:var(--gr-4,4px);margin:0 0 6px}.game-review-coach .pill{font-size:var(--gr-fs-12,.875rem);padding:6px 10px;border-radius:var(--gr-radius-sm,8px)}.game-review-coach .coach-section-label{font-size:var(--gr-fs-12,.875rem);letter-spacing:.06em;margin:6px 0 3px}.game-review-coach .coach-section-label:first-of-type{margin-top:var(--gr-4,4px)}.game-review-coach .muted{font-size:.95rem;line-height:1.5}.game-review-coach .form-actions{margin-top:var(--gr-8,8px);gap:var(--gr-8,8px)}.game-review-coach .form-actions button{padding:9px 12px;font-size:var(--gr-fs-13,.9375rem)}.game-review-coach .card{padding:8px 10px!important;margin-top:6px;border-radius:var(--gr-radius,10px)}.game-review-hero{margin-top:14px;padding:14px 16px;border-radius:12px;border:1px solid rgba(129,178,253,.28);background:linear-gradient(135deg,rgba(15,28,58,.75),rgba(8,16,36,.65))}.game-review-hero h3{margin:0 0 8px;font-size:1.15rem;line-height:1.3;color:#f0f7ff}.game-review-hero .coach-hook{margin:0;font-size:14px;color:#b7d5ff;line-height:1.45}.coach-section-label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#7ea5d8;font-weight:700;margin:14px 0 4px}.coach-section-label:first-of-type{margin-top:4px}.game-review-training-links{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.game-review-training-links a{display:inline-block;padding:4px 10px;border-radius:var(--gr-radius-sm,8px);font-size:.72rem;font-weight:600;text-decoration:none;background:rgba(30,64,175,.35);border:1px solid rgba(147,197,253,.35);color:#e8f1ff}.game-review-training-links a:hover{background:rgba(59,130,246,.35)}.game-review-line-replay{margin-top:6px;padding-top:6px;border-top:1px solid rgba(148,163,184,.22)}.game-review-retry-lead{font-size:var(--gr-fs-13,.9375rem);line-height:1.45}.game-review-retry{margin-top:4px}.game-review-retry-board{display:flex;justify-content:flex-start;margin:10px 0 12px;max-width:100%}.game-review-retry-board>div{max-width:100%}.game-review-retry-feedback{border-radius:var(--gr-radius,10px)}.game-review-board-anchor .game-review-board-nav{margin-top:6px}.game-review-board-nav{display:flex;justify-content:flex-start;align-items:center;gap:6px;margin-top:0;flex-wrap:wrap;flex-shrink:0;width:-moz-fit-content;width:fit-content;max-width:100%}.game-review-nav-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;min-height:30px;padding:0;border-radius:var(--gr-radius-sm,8px);cursor:pointer;background:rgba(15,23,42,.72);border:1px solid rgba(148,163,184,.28);color:rgba(226,232,240,.92);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.06);transition:background .15s ease,border-color .15s ease,color .15s ease}.game-review-nav-icon-btn:hover:not(:disabled){background:rgba(30,41,59,.88);border-color:rgba(186,200,220,.42);color:#f8fafc}.game-review-nav-icon-btn:focus-visible{outline:2px solid rgba(129,178,253,.75);outline-offset:2px}.game-review-nav-icon-btn:disabled{opacity:.36;cursor:not-allowed}.game-review-nav-icon-btn svg{flex-shrink:0;width:17px;height:17px}.lesson-practice-side-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px}.lesson-practice-side-head .panel-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1 1}.lesson-step-panel{margin:0 0 12px;padding:12px 14px 14px;border-radius:12px;border:1px solid rgba(100,116,139,.35);background:linear-gradient(165deg,rgba(30,41,59,.65),rgba(15,23,42,.88));box-shadow:inset 0 1px 0 hsla(0,0%,100%,.04)}.lesson-step-panel__eyebrow{margin:0 0 8px;font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(148,197,255,.92)}.lesson-step-panel__title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:10px}.lesson-step-panel__title{margin:0;flex:1 1;min-width:0;font-size:1.05rem;font-weight:700;line-height:1.25;letter-spacing:-.02em;color:#f8fafc}.lesson-step-panel__step-pill{flex-shrink:0;display:inline-flex;align-items:baseline;gap:1px;padding:4px 9px 5px;border-radius:999px;font-size:.72rem;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:.02em;color:rgba(226,232,240,.95);background:rgba(15,23,42,.75);border:1px solid rgba(148,163,184,.35)}.lesson-step-panel__step-pill-num{color:#e0f2fe}.lesson-step-panel__step-pill-sep{margin:0 1px;font-weight:600;color:rgba(148,163,184,.75)}.lesson-step-panel__step-pill-total{color:rgba(203,213,225,.88);font-weight:600}.lesson-step-panel__hint{margin:0;font-size:.84rem;line-height:1.45;color:rgba(186,200,220,.9)}.lesson-target-move{display:flex;flex-direction:column;gap:6px;padding:10px 12px;border-radius:10px;background:rgba(15,23,42,.55);border:1px solid rgba(56,189,248,.22)}.lesson-target-move__kicker{font-size:.65rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:rgba(125,211,252,.88)}.lesson-target-move__main{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px 14px}.lesson-target-move__san{display:inline-block;padding:5px 12px 6px;border-radius:8px;font-size:1.12rem;font-weight:800;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:.04em;color:#0f172a;background:linear-gradient(180deg,#e0f2fe,#bae6fd);border:1px solid rgba(14,116,144,.35);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.65)}.lesson-target-move__spoken{font-size:.86rem;line-height:1.35;font-weight:500;color:rgba(226,232,240,.92);max-width:100%}.lesson-mobile-coach-note{display:none}.lesson-coach-note{margin:12px 0 16px;padding:14px 16px 15px;max-height:min(38vh,280px);overflow-y:auto;border-radius:8px;border:1px solid rgba(71,85,105,.55);border-left:3px solid rgba(148,163,184,.85);background:rgba(15,23,42,.45)}.lesson-coach-note__label{margin:0 0 8px;font-size:.8125rem;font-weight:600;color:rgba(148,163,184,.98);letter-spacing:0;text-transform:none}.lesson-coach-note__text{margin:0;font-size:1rem;line-height:1.58;font-weight:400;color:rgba(241,245,249,.98);text-decoration:none}.puzzle-cta-section{margin-top:6px}.puzzle-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:24px}.puzzle-cta-copy{flex:1 1}.puzzle-cta-copy .panel-title{margin-bottom:6px}.puzzle-cta-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 28px;background:linear-gradient(135deg,rgba(96,165,250,.18),rgba(147,51,234,.18));border:1px solid rgba(147,197,253,.38);border-radius:10px;color:#bfdbfe;font-weight:600;font-size:.95rem;letter-spacing:.01em;text-decoration:none;white-space:nowrap;transition:background .18s,border-color .18s,color .18s;flex-shrink:0}.puzzle-cta-btn:hover{background:linear-gradient(135deg,rgba(96,165,250,.3),rgba(147,51,234,.3));border-color:rgba(147,197,253,.6);color:#e0f2fe;text-decoration:none}.puzzles-page{display:flex;flex-direction:column;gap:14px}.puzzles-page .card{margin-bottom:0}.lessons-catalog-layout{display:flex;flex-direction:column;gap:14px;overflow-x:hidden}.lessons-catalog-layout .card{margin-bottom:0}@keyframes skel-shimmer{0%{background-position:-600px 0}to{background-position:600px 0}}.skel-block{border-radius:6px;background:linear-gradient(90deg,rgba(30,41,59,.8),rgba(51,65,85,.55) 45%,rgba(71,85,105,.45) 55%,rgba(30,41,59,.8));background-size:1200px 100%;animation:skel-shimmer 1.4s ease-in-out infinite}.lessons-skel-hero.card{display:grid;grid-template-columns:1.15fr .85fr;grid-gap:12px;gap:12px;align-items:stretch;min-height:260px}.lessons-skel-hero-copy{display:flex;flex-direction:column;gap:10px;padding:4px 2px}.lessons-skel-hero-img{border-radius:12px;border:1px solid rgba(147,197,253,.16);min-height:260px}.lessons-skel-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.lessons-skel-card.card{display:grid;grid-template-columns:110px 1fr;grid-gap:10px;gap:10px;align-items:stretch;padding:10px}.lessons-skel-thumb{border-radius:8px;min-height:120px}.lessons-skel-body{display:flex;flex-direction:column;gap:8px;padding:2px 0}@media (max-width:767px){.lessons-skel-hero.card{grid-template-columns:1fr}.lessons-skel-hero-img{display:none}.lessons-skel-grid{grid-template-columns:1fr}}.puzzles-hero{display:grid;grid-template-columns:1fr auto;grid-gap:20px;gap:20px;align-items:center}.puzzles-hero-copy{padding:4px 0}.puzzles-hero-title{font-size:1.75rem;margin-bottom:8px}.puzzles-hero-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.puzzles-coming-pill{background:rgba(251,191,36,.12);border-color:rgba(251,191,36,.4);color:#fde68a}.puzzles-board-preview{display:grid;grid-template-columns:repeat(8,32px);grid-template-rows:repeat(8,32px);border:1px solid rgba(147,197,253,.22);border-radius:6px;overflow:hidden;opacity:.72}.puzzles-sq{width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:18px;line-height:1}.puzzles-sq--light{background:#c9daf0}.puzzles-sq--dark{background:#3e6fa3}.puzzles-sq-piece{color:#0f1b2d;text-shadow:0 0 2px hsla(0,0%,100%,.5);-webkit-user-select:none;-moz-user-select:none;user-select:none}.puzzles-stats-bar{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:10px;gap:10px}.puzzles-stat-card{display:flex;flex-direction:column;gap:10px;padding:18px 20px}.puzzles-stat-icon{display:flex;align-items:center;color:#4a9fd4;opacity:.85}.puzzles-stat-value{font-size:1.75rem;font-weight:700;color:#e0f2fe;line-height:1;letter-spacing:-.02em}.puzzles-stat-label{font-size:.72rem;color:#5a8aaa;text-transform:uppercase;letter-spacing:.07em;font-weight:600}.puzzles-config-grid{display:grid;grid-template-columns:1.4fr 1fr;grid-gap:14px;gap:14px;align-items:start}.puzzles-side-stack{display:flex;flex-direction:column;gap:14px}.puzzles-config-card{height:100%;box-sizing:border-box}.puzzles-band-list{display:flex;flex-direction:column;gap:8px}.puzzles-band-btn{display:flex;align-items:center;gap:10px;padding:10px 14px;background:rgba(15,23,42,.5);border:1px solid rgba(147,197,253,.2);border-radius:9px;color:#94b8d8;cursor:pointer;transition:border-color .15s,background .15s,color .15s;text-align:left;margin:0!important;width:100%}.puzzles-band-btn:hover{border-color:rgba(147,197,253,.45);color:#c9e0f5;background:rgba(30,50,80,.5)}.puzzles-band-btn--active{background:rgba(37,99,235,.18)!important;border-color:rgba(96,165,250,.55)!important;color:#bfdbfe!important}.puzzles-band-label{font-weight:600;font-size:.9rem;color:inherit;flex:1 1}.puzzles-band-sub{font-size:.75rem;color:#6b8faf}.puzzles-band-btn--active .puzzles-band-sub{color:#93c5fd}.puzzles-band-check{font-size:.8rem;color:#60a5fa;font-weight:700;margin-left:auto}.puzzles-toggle-group{display:flex;flex-direction:column;gap:8px}.puzzles-toggle-btn{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 14px;background:rgba(15,23,42,.5);border:1px solid rgba(147,197,253,.2);border-radius:9px;cursor:pointer;transition:border-color .15s,background .15s;text-align:left;margin:0!important;width:100%}.puzzles-toggle-btn:hover{border-color:rgba(147,197,253,.42);background:rgba(30,50,80,.5)}.puzzles-toggle-btn--active{background:rgba(37,99,235,.18)!important;border-color:rgba(96,165,250,.55)!important}.puzzles-toggle-label{font-weight:600;font-size:.875rem;color:#c9e0f5}.puzzles-toggle-desc{font-size:.75rem;color:#6b8faf}.puzzles-toggle-btn--active .puzzles-toggle-label{color:#bfdbfe}.puzzles-toggle-btn--active .puzzles-toggle-desc{color:#93c5fd}.puzzles-color-group{display:flex;gap:8px}.puzzles-color-btn{flex:1 1;display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 6px;background:rgba(15,23,42,.5);border:1px solid rgba(147,197,253,.2);border-radius:9px;cursor:pointer;transition:border-color .15s,background .15s,color .15s;font-size:.8rem;color:#94b8d8;margin:0!important;width:auto}.puzzles-color-btn:hover{border-color:rgba(147,197,253,.42);color:#c9e0f5}.puzzles-color-btn--active{background:rgba(37,99,235,.18)!important;border-color:rgba(96,165,250,.55)!important;color:#bfdbfe!important}.puzzles-color-icon{font-size:1.4rem;line-height:1}.puzzles-themes-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.puzzles-clear-btn{padding:6px 14px;background:hsla(0,91%,71%,.1);border:1px solid hsla(0,91%,71%,.3);border-radius:8px;color:#fca5a5;font-size:.8rem;font-weight:600;cursor:pointer;white-space:nowrap;flex-shrink:0;margin:0!important;width:auto;transition:background .14s,border-color .14s}.puzzles-clear-btn:hover{background:hsla(0,91%,71%,.2);border-color:hsla(0,91%,71%,.5)}.puzzles-themes-grid{display:flex;flex-wrap:wrap;gap:8px}.puzzles-theme-chip{padding:7px 14px;background:rgba(15,23,42,.55);border:1px solid rgba(147,197,253,.22);border-radius:999px;color:#94b8d8;font-size:.825rem;font-weight:500;cursor:pointer;transition:border-color .12s,background .12s,color .12s;white-space:nowrap;margin:0!important;width:auto}.puzzles-theme-chip:hover{border-color:rgba(147,197,253,.5);color:#c9e0f5}.puzzles-theme-chip--active{background:rgba(37,99,235,.2)!important;border-color:rgba(96,165,250,.6)!important;color:#bfdbfe!important}.puzzles-theme-check{font-weight:700;color:#60a5fa}.puzzles-start-card{background:linear-gradient(135deg,rgba(10,22,50,.8),rgba(20,10,44,.8));border-color:rgba(147,197,253,.28)}.puzzles-start-summary{display:flex;align-items:center;justify-content:space-between;gap:24px}.puzzles-start-actions{display:flex;flex-direction:column;align-items:stretch;gap:8px;min-width:220px}.puzzles-start-btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:14px 28px;background:linear-gradient(135deg,rgba(37,99,235,.3),rgba(109,40,217,.3));border:1px solid rgba(147,197,253,.3);border-radius:10px;color:#93c5fd;font-weight:700;font-size:1rem;cursor:not-allowed;opacity:.7;margin:0!important;width:100%}.puzzles-start-soon{font-size:.72rem;font-weight:400;color:#6b8faf;letter-spacing:.03em}.puzzles-back-link{display:block;text-align:center;padding:9px 20px;background:rgba(15,23,42,.5);border:1px solid rgba(147,197,253,.2);border-radius:10px;color:#7aaddc;font-size:.875rem;text-decoration:none;transition:border-color .15s,color .15s}.puzzles-back-link:hover{border-color:rgba(147,197,253,.44);color:#bfdbfe;text-decoration:none}@media (max-width:760px){.puzzles-hero{grid-template-columns:1fr}.puzzles-board-preview{display:none}.puzzles-stats-bar{grid-template-columns:repeat(2,1fr)}.puzzles-config-grid{display:flex;flex-direction:column;gap:14px}.puzzles-start-card{position:fixed;bottom:0;left:0;right:0;z-index:50;border-radius:14px 14px 0 0;border-left:none;border-right:none;border-bottom:none;background:linear-gradient(135deg,rgba(8,18,42,.97),rgba(16,8,36,.97));backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.puzzles-page{padding-bottom:220px}.puzzles-start-summary{flex-direction:column;align-items:flex-start}.puzzles-start-actions{width:100%;min-width:unset}}button,input,select,textarea{width:100%;margin-top:6px;margin-bottom:12px;padding:11px;border-radius:8px;border:1px solid #2d4c77;background:#081429;color:#e7f1ff}.voice-select{-webkit-appearance:none;-moz-appearance:none;appearance:none}.board-wrap{border:1px solid rgba(147,197,253,.28);border-radius:12px;overflow:hidden;padding:10px;background:rgba(8,18,38,.65);width:100%;max-width:100%;box-sizing:border-box;margin:10px auto 12px}.board-wrap.board-wrap--coach-fill{display:flex;justify-content:center;align-items:center}.coach-page-board-wrap.board-wrap{--coach-board-max-width:510px;position:relative;width:100%;max-width:min(var(--coach-board-max-width),100%);min-width:0;margin-left:0;margin-right:auto;aspect-ratio:1/1;box-sizing:border-box;background:radial-gradient(ellipse 92% 88% at 50% 42%,rgba(59,130,246,.07),transparent 55%),linear-gradient(180deg,rgba(10,21,46,.72),rgba(7,15,32,.92));box-shadow:0 10px 28px rgba(3,8,19,.34),inset 0 1px 0 hsla(0,0%,100%,.05)}.coach-page-board-wrap.board-wrap--coach-fill .coach-board-canvas-wrap{flex:1 1 auto;align-self:stretch;width:100%;min-width:0;min-height:0;display:flex;align-items:center;justify-content:flex-start}.coach-page-board-wrap.board-wrap--coach-fill .coach-board-loading{flex:1 1 auto;align-self:stretch;width:100%;min-width:0;min-height:0;max-width:none;max-height:none;aspect-ratio:unset}.coach-board-loading{width:100%;max-width:min(510px,52dvh,100%);aspect-ratio:1;min-height:220px;max-height:min(52dvh,510px);border-radius:8px;background:linear-gradient(135deg,rgba(15,30,60,.72),rgba(8,18,38,.88));box-sizing:border-box}.conversation-log{max-height:220px;overflow-y:auto;margin-bottom:10px;padding-right:4px}.conversation-bubble{border-radius:10px;padding:8px 10px;margin:0 0 8px;line-height:1.4}.conversation-bubble.user{background:rgba(59,130,246,.2)}.conversation-bubble.coach{background:rgba(30,64,175,.24)}.coach-board-section{display:flex;flex-direction:column;padding-top:10px}.coach-board-section>.panel-title{display:none}.coach-board-split{display:flex;flex-direction:row;align-items:flex-start;gap:20px;flex:1 1 auto;min-height:0}.coach-board-split__primary{flex:3 1;display:flex;flex-direction:column;min-width:0;overflow:hidden}.coach-board-split__commentary{flex:2 1;min-width:0;display:flex;flex-direction:column;gap:14px;overflow-y:auto;max-height:calc(100dvh - 90px);scrollbar-width:thin;scrollbar-color:rgba(129,178,253,.45) rgba(15,23,42,.6)}.coach-board-split__commentary::-webkit-scrollbar{width:8px}.coach-board-split__commentary::-webkit-scrollbar-track{background:rgba(15,23,42,.55);border-radius:999px}.coach-board-split__commentary::-webkit-scrollbar-thumb{background:linear-gradient(180deg,rgba(147,197,253,.45),rgba(59,130,246,.35));border-radius:999px;border:2px solid rgba(8,15,32,.9)}@media (max-width:940px){.coach-board-split{flex-direction:column}.coach-board-split__commentary,.coach-board-split__primary{flex:0 0 auto;width:100%}.coach-board-split__commentary{max-height:none;overflow-y:visible}}.coach-board-row{display:flex;align-items:stretch;gap:8px}.coach-eval-bar{display:flex;flex-direction:column;align-items:center;gap:4px;width:33px;min-width:33px;padding-left:7px;box-sizing:border-box;align-self:stretch}.coach-eval-bar-label{font-size:.65rem;font-weight:700;text-align:center;line-height:1;min-height:14px;color:rgba(226,232,240,.9)}.coach-eval-bar-track-shell{position:relative;flex:1 1 auto;width:18px;min-width:18px;min-height:0;align-self:stretch;display:flex;flex-direction:column}.coach-eval-bar-track-shell:after{content:"";position:absolute;left:-5px;right:0;top:50%;height:2px;margin-top:-1px;background:rgba(226,232,240,.92);border-radius:1px;pointer-events:none;z-index:4;box-shadow:0 0 0 1px rgba(15,23,42,.45),0 1px 2px rgba(0,0,0,.35)}.coach-eval-bar-track{flex:1 1 auto;width:100%;min-height:0;border-radius:6px;overflow:hidden;display:flex;flex-direction:column;border:1px solid rgba(0,0,0,.35);box-shadow:inset 0 0 0 1px hsla(0,0%,100%,.06);transition:all .35s ease}.coach-eval-bar-black{background:linear-gradient(180deg,#2a2a2a,#1a1a1a);min-height:0;transition:flex .35s ease}.coach-eval-bar-white{background:linear-gradient(180deg,#f5f5f5,#e8e8e8);min-height:0;transition:flex .35s ease;border-top:1.5px solid rgba(148,163,184,.88);box-sizing:border-box}.coach-right-panel{display:flex;flex-direction:column;gap:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(129,178,253,.45) rgba(15,23,42,.6)}.coach-right-panel::-webkit-scrollbar{width:10px}.coach-right-panel::-webkit-scrollbar-track{background:rgba(15,23,42,.55);border-radius:999px}.coach-right-panel::-webkit-scrollbar-thumb{background:linear-gradient(180deg,rgba(147,197,253,.45),rgba(59,130,246,.35));border-radius:999px;border:2px solid rgba(8,15,32,.9)}.coach-move-list{flex:0 0 auto;max-height:min(500px,58vh);min-height:60px;overflow-y:auto;padding:2px 0 22px;scroll-padding-block-end:16px;border-bottom:1px solid hsla(0,0%,100%,.06);margin-bottom:8px;overflow-anchor:none;overscroll-behavior:contain;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:rgba(129,178,253,.5) rgba(15,23,42,.75)}.coach-move-list::-webkit-scrollbar{width:10px}.coach-move-list::-webkit-scrollbar-track{background:rgba(15,23,42,.72);border-radius:999px;margin:6px 0;border:1px solid rgba(148,163,184,.1)}.coach-move-list::-webkit-scrollbar-thumb{background:linear-gradient(180deg,rgba(147,197,253,.5),rgba(59,130,246,.38));border-radius:999px;border:2px solid rgba(15,23,42,.85);box-shadow:inset 0 0 0 1px rgba(129,178,253,.12)}.coach-move-list::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,rgba(186,230,253,.62),rgba(96,165,250,.48))}@media (prefers-reduced-motion:no-preference){.analyze-premium-moves-scroll,.coach-move-list{scroll-behavior:smooth}}.coach-move-row{display:grid;grid-template-columns:30px 1fr 1fr;grid-gap:0;gap:0;align-items:stretch}.coach-move-row-num{display:flex;align-items:center;justify-content:flex-end;padding-right:6px;font-size:.72rem;color:rgba(226,232,240,.4);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;-webkit-user-select:none;-moz-user-select:none;user-select:none}.coach-move-cell{display:flex;align-items:center;gap:5px;padding:5px 8px;border-radius:4px;cursor:pointer;font-family:inherit;font-size:.84rem;color:rgba(226,232,240,.92);background:transparent;border:none;outline:none;text-align:left;transition:background .12s;min-height:30px}.coach-move-cell:hover{background:hsla(0,0%,100%,.07)}.coach-move-cell--selected{background:rgba(96,165,250,.14);box-shadow:inset 0 0 0 1px rgba(147,197,253,.45);border-radius:6px;scroll-margin-block:12px;scroll-margin-inline:2px}.coach-move-cell--selected:hover{background:rgba(96,165,250,.18)}.coach-move-cell--empty{cursor:default}.coach-move-san{font-weight:600;white-space:nowrap}.coach-book-glyph{font-size:.72rem;line-height:1;opacity:.88;flex-shrink:0}.coach-move-classif{display:inline-block;padding:1px 5px;border-radius:3px;font-size:.6rem;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:.03em;line-height:1.3;white-space:nowrap;flex-shrink:0}.coach-move-classif--loading{background:hsla(0,0%,100%,.12);color:hsla(0,0%,100%,.5);animation:coach-pulse 1.2s ease infinite}.coach-classif-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;font-size:.68rem;font-weight:800;color:#fff;flex-shrink:0;line-height:1;letter-spacing:-.5px}.coach-classif-icon--img{background:transparent;border-radius:0;object-fit:contain}.coach-classif-icon--empty{width:18px;height:18px;background:transparent}.coach-classif-icon--loading{width:18px;height:18px;background:hsla(0,0%,100%,.12);color:hsla(0,0%,100%,.5);animation:coach-pulse 1.2s ease infinite}.coach-opening-name{display:flex;align-items:center;gap:6px;padding:4px 10px 6px;margin-bottom:4px;font-size:.82rem;font-weight:500;color:#c4a86e;letter-spacing:.02em;border-bottom:1px solid hsla(40,42%,60%,.15)}.coach-opening-book-icon{font-size:1rem;line-height:1}.coach-transport{gap:6px;padding:8px 12px;margin-top:6px;border:1px solid rgba(147,197,253,.2);border-radius:12px;background:rgba(15,23,42,.5)}.coach-transport,.coach-transport button{display:flex;justify-content:center;align-items:center}.coach-transport button{width:40px;height:36px;margin:0;border-radius:8px;border:1px solid rgba(148,163,184,.25);background:rgba(30,41,59,.7);color:rgba(226,232,240,.88);font-size:16px;font-weight:700;cursor:pointer;transition:background .15s ease,border-color .15s ease}.coach-transport button:hover:not(:disabled){background:rgba(30,41,59,.95);border-color:rgba(186,200,220,.45);color:#f8fafc}.coach-transport button:disabled{opacity:.3;cursor:not-allowed}.coach-transport-flip{font-size:18px!important;width:44px!important;margin-left:4px!important}.coach-meta-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin-top:10px;padding:8px 12px;border-radius:12px;background:rgba(15,23,42,.55);border:1px solid rgba(147,197,253,.16);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.04)}.coach-meta-stat{display:inline-flex;flex-direction:row;align-items:baseline;gap:6px;padding:4px 10px;border-radius:8px;background:rgba(30,41,59,.75);border:1px solid rgba(148,163,184,.2);line-height:1.2;white-space:nowrap}.coach-meta-stat-label{font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:rgba(148,163,184,.95)}.coach-meta-stat-value{font-size:14px;font-weight:700;color:#e2e8f0}.coach-meta-toggle{display:inline-flex;flex-direction:row;align-items:center;gap:8px;margin-left:auto;padding:6px 12px;min-height:34px;box-sizing:border-box;border-radius:10px;border:1px solid rgba(147,197,253,.28);background:rgba(30,41,59,.65);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:border-color .15s ease,background .15s ease}.coach-meta-toggle:hover{border-color:rgba(186,200,220,.45);background:rgba(51,65,85,.75)}.coach-meta-toggle-input{width:16px;height:16px;margin:0;flex-shrink:0;accent-color:#38bdf8;cursor:pointer}.coach-meta-toggle-text{font-size:13px;font-weight:600;color:#dbeafe;line-height:1.25;white-space:nowrap}@media (max-width:520px){.coach-meta-toggle{margin-left:0;flex:1 1 100%;justify-content:flex-start}.coach-meta-toggle-text{white-space:normal}}@keyframes coach-pulse{0%,to{opacity:.4}50%{opacity:1}}.coach-commentary{flex:0 0 auto;padding:10px 0;border-bottom:1px solid hsla(0,0%,100%,.06);margin-bottom:8px;max-height:min(34vh,280px);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(129,178,253,.45) rgba(15,23,42,.72)}.coach-commentary::-webkit-scrollbar{width:8px}.coach-commentary::-webkit-scrollbar-thumb{background:rgba(96,165,250,.4);border-radius:999px}.coach-review-card{max-height:min(40vh,360px);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;flex-shrink:0;scrollbar-width:thin;scrollbar-color:rgba(129,178,253,.45) rgba(15,23,42,.72)}.coach-review-card::-webkit-scrollbar{width:8px}.coach-review-card::-webkit-scrollbar-thumb{background:rgba(96,165,250,.4);border-radius:999px}.coach-commentary-header{display:flex;align-items:center;gap:8px;margin-bottom:6px;flex-wrap:wrap}.coach-commentary-san{font-size:1.1rem;font-weight:700}.coach-commentary-book-pill{font-size:.72rem;font-weight:600;padding:2px 8px;border-radius:999px;background:hsla(31,28%,53%,.28);color:hsla(34,93%,89%,.95);white-space:nowrap}.coach-commentary-eval{font-size:.78rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;opacity:.7;margin-left:auto}.coach-commentary-text{margin:0;font-size:.88rem;line-height:1.5;color:rgba(226,232,240,.92)}.coach-ask-details{flex:0 0 auto;padding-top:4px}.coach-ask-details summary{margin-bottom:0}.coach-pgn-details{margin-top:8px}.coach-pgn-details summary{font-size:.82rem}.coach-top-moves-box{margin-top:10px;padding:8px 12px 10px;border:1px solid hsla(0,0%,100%,.08);border-radius:8px;background:hsla(0,0%,100%,.03)}.coach-top-moves-heading{display:block;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:rgba(226,232,240,.45);margin-bottom:6px}.coach-top-moves-list{display:grid;grid-gap:5px;gap:5px}.coach-top-moves-item{display:flex;align-items:center;gap:8px}.coach-move-feedback{position:relative;padding:14px 16px 14px 20px;margin-bottom:12px;background:linear-gradient(135deg,rgba(8,18,42,.9),rgba(14,26,54,.8));border:1px solid hsla(0,0%,100%,.09);border-radius:12px;overflow:hidden;flex-shrink:0}.coach-move-feedback:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--classif-color,hsla(0,0%,51%,.35));border-radius:12px 0 0 12px}.coach-move-feedback:after{content:"";position:absolute;left:0;top:0;bottom:0;width:100px;background:radial-gradient(ellipse at 0 50%,var(--classif-glow,hsla(0,0%,51%,.06)),transparent 70%);pointer-events:none}.move-feedback-header{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding-bottom:10px;margin-bottom:12px;border-bottom:1px solid hsla(0,0%,100%,.07)}.move-feedback-title{font-size:1.08rem;font-weight:700;letter-spacing:.01em;color:#e2e8f0}.move-feedback-body{display:flex;flex-direction:column;gap:8px}.move-feedback-primary{margin:0;font-size:.875rem;line-height:1.72;color:rgba(226,232,240,.88)}.move-feedback-better{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;padding:4px 12px 4px 10px;background:rgba(152,188,73,.1);border:1px solid rgba(152,188,73,.3);border-radius:20px;font-size:.8rem;font-weight:600;color:#a8d060;white-space:nowrap;margin-top:2px}.move-feedback-better-label{opacity:.55;font-weight:500}.move-feedback-better-arrow{font-size:.85em;opacity:.6}.move-feedback-line-details{margin-top:4px}.move-feedback-line-summary{cursor:pointer;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:rgba(148,163,184,.5);-webkit-user-select:none;-moz-user-select:none;user-select:none;padding:4px 0;list-style:none;display:flex;align-items:center;gap:5px;transition:color .15s}.move-feedback-line-summary::-webkit-details-marker{display:none}.move-feedback-line-summary:hover{color:rgba(148,163,184,.85)}.move-feedback-line-summary:before{content:"â–¶";font-size:.6em;transition:transform .15s}details[open] .move-feedback-line-summary:before{transform:rotate(90deg)}.move-feedback-line-list{padding:8px 0 2px 8px;display:flex;flex-direction:column;gap:4px;border-left:2px solid hsla(0,0%,100%,.06);margin-left:4px}.move-feedback-line-item{font-size:.78rem;opacity:.7;display:flex;align-items:center;gap:6px}.move-feedback-line-rank{font-weight:700;color:rgba(148,163,184,.7);min-width:1.2em}.move-feedback-line-move{font-weight:600;color:rgba(226,232,240,.85)}.move-feedback-line-eval{font-size:.72rem;padding:1px 6px;background:hsla(0,0%,100%,.06);border-radius:6px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.move-feedback-line-pv{opacity:.5;font-size:.75rem}.move-seq{display:flex;flex-wrap:wrap;margin-top:2px}.move-seq,.move-seq__chip{align-items:center;gap:4px}.move-seq__chip{display:inline-flex;padding:2px 8px 2px 5px;border-radius:999px;font-size:.76rem;font-weight:500;line-height:1.5;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none}.move-seq__chip--white{background:hsla(48,40%,90%,.92);color:#1a1a2e;border:1px solid hsla(48,40%,90%,.3)}.move-seq__chip--black{background:rgba(28,28,48,.95);color:rgba(220,225,235,.9);border:1px solid rgba(100,100,140,.35)}.move-seq__dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.move-seq__chip--white .move-seq__dot{background:#4a4a4a}.move-seq__chip--black .move-seq__dot{background:rgba(200,210,230,.6)}.move-seq__chip--inline{padding:1px 7px 1px 4px;font-size:.71rem;line-height:1.4;vertical-align:middle;margin:0 1px}.move-seq__chip--inline .move-seq__dot{width:6px;height:6px}.move-seq__chip-wrapper{display:inline-flex;align-items:center;gap:4px}.move-seq__sep{font-size:.6rem;color:rgba(148,163,184,.35);flex-shrink:0}.move-feedback-eval{margin-left:auto;font-size:.75rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;padding:3px 9px;background:hsla(0,0%,100%,.05);border:1px solid hsla(0,0%,100%,.08);border-radius:8px;color:rgba(226,232,240,.6);white-space:nowrap;flex-shrink:0}.move-feedback-mover-chip{font-size:.68rem;letter-spacing:.05em;background:hsla(0,0%,100%,.07);color:rgba(226,232,240,.45)}.move-feedback-coach-chip,.move-feedback-mover-chip{font-weight:700;text-transform:uppercase;padding:2px 7px;border-radius:8px;white-space:nowrap}.move-feedback-coach-chip{font-size:.65rem;letter-spacing:.06em;background:rgba(99,179,237,.15);color:rgba(147,210,248,.75);border:1px solid rgba(99,179,237,.25)}.move-feedback-opening{font-size:.78rem;color:#c4a86e;font-style:italic;margin:0;opacity:.85}.move-feedback-loading{font-size:.82rem;color:rgba(148,163,184,.5);display:flex;align-items:center;gap:8px;padding:4px 0}.move-feedback-loading:before{content:"";display:inline-block;width:12px;height:12px;border:2px solid rgba(96,165,250,.25);border-top-color:rgba(96,165,250,.8);border-radius:50%;animation:spin .8s linear infinite;flex-shrink:0}@keyframes spin{to{transform:rotate(1turn)}}.coach-tutor-reply{margin-top:8px;padding:12px 14px;background:linear-gradient(135deg,rgba(30,55,120,.18),rgba(15,30,80,.14));border:1px solid rgba(96,165,250,.18);border-left:3px solid rgba(96,165,250,.5);border-radius:10px;font-size:.875rem;line-height:1.65;color:rgba(226,232,240,.9)}.move-meaning-list{display:grid;grid-gap:8px;gap:8px}.move-meaning-item{display:flex;align-items:center;gap:10px;border:1px solid rgba(147,197,253,.24);border-radius:10px;padding:8px 10px;background:rgba(8,18,38,.55)}.move-meaning-text{color:#cfe4ff;font-size:14px}button{background:linear-gradient(135deg,#2563eb,#1d4ed8 55%,#1e40af);border:0;cursor:pointer;font-weight:700;letter-spacing:.03em;transition:transform .15s ease,box-shadow .15s ease,background .2s ease;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.14),0 4px 14px rgba(29,78,216,.4),0 1px 4px rgba(0,0,0,.3)}button:hover:not(:disabled){background:linear-gradient(135deg,#3b82f6,#2563eb 55%,#1d4ed8);transform:translateY(-2px);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.18),0 8px 24px rgba(37,99,235,.52),0 2px 8px rgba(0,0,0,.35)}button:active:not(:disabled){transform:translateY(0);transition-duration:.05s;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.08),0 2px 8px rgba(29,78,216,.3),0 1px 3px rgba(0,0,0,.25)}button:disabled{background:rgba(30,41,59,.75);color:rgba(148,163,184,.65);cursor:not-allowed;box-shadow:none;transform:none}button.secondary{background:rgba(15,23,42,.9);border:1px solid rgba(147,197,253,.32);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.05),0 2px 8px rgba(0,0,0,.25)}button.secondary:hover:not(:disabled){background:rgba(26,40,65,.95);border-color:rgba(147,197,253,.52);transform:translateY(-1px);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.08),0 4px 14px rgba(0,0,0,.3)}.page-shell .card .form-actions button[type=submit]{padding:13px;letter-spacing:.05em;font-size:.9375rem;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.18),0 6px 20px rgba(29,78,216,.52),0 2px 8px rgba(0,0,0,.35)}.analyze-tab-row button,.game-review-header .form-actions button,.game-review-shell .form-actions button{width:auto;margin-right:10px;margin-top:0}.game-mode-toggle button{margin-right:8px}.analyze-viewport .analyze-tab-buttons button,.game-mode-toggle button{width:auto;margin-top:0;margin-bottom:0}.course-map-wrap{position:relative;margin-top:8px;border-radius:12px;overflow:hidden;background:radial-gradient(ellipse 70% 55% at 10% 50%,rgba(59,130,246,.07) 0,transparent 55%),radial-gradient(ellipse 70% 55% at 90% 50%,rgba(167,139,250,.06) 0,transparent 55%),linear-gradient(180deg,rgba(6,14,36,.55),rgba(4,10,26,.55));border:1px solid rgba(147,197,253,.12);padding:22px 8px 18px}.course-map-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:rgba(147,197,253,.18) transparent}.course-map-track{display:flex;align-items:flex-start;min-width:560px;padding:0 20px}.course-map-node{display:flex;flex-direction:column;align-items:center;gap:11px;flex-shrink:0;width:96px}.course-map-ring{width:76px;height:76px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:3px solid transparent;cursor:pointer;transition:transform .22s ease,box-shadow .22s ease;position:relative}.course-map-ring:hover{transform:scale(1.1) translateY(-3px)}.course-map-node[data-part="1"] .course-map-ring{background:linear-gradient(145deg,#1a3660,#0c1f42);border-color:#60a5fa;color:#93c5fd;box-shadow:0 0 0 4px rgba(96,165,250,.12),0 8px 24px rgba(96,165,250,.22)}.course-map-node[data-part="2"] .course-map-ring{background:linear-gradient(145deg,#2d1b58,#1a1038);border-color:#a78bfa;color:#c4b5fd;box-shadow:0 0 0 4px rgba(167,139,250,.12),0 8px 24px rgba(167,139,250,.22)}.course-map-node[data-part="3"] .course-map-ring{background:linear-gradient(145deg,#3b1f08,#231308);border-color:#fb923c;color:#fdba74;box-shadow:0 0 0 4px rgba(251,146,60,.12),0 8px 24px rgba(251,146,60,.22)}.course-map-node[data-part="4"] .course-map-ring{background:linear-gradient(145deg,#3a2602,#231602);border-color:#fbbf24;color:#fde68a;box-shadow:0 0 0 4px rgba(251,191,36,.12),0 8px 24px rgba(251,191,36,.22)}.course-map-node[data-part="5"] .course-map-ring{background:linear-gradient(145deg,#3b1530,#220d1d);border-color:#f472b6;color:#f9a8d4;box-shadow:0 0 0 4px rgba(244,114,182,.12),0 8px 24px rgba(244,114,182,.22)}.course-map-node.cmap-done .course-map-ring{background:linear-gradient(145deg,#1a4a36,#0f2e22);border-color:#34d399;color:#6ee7b7;box-shadow:0 0 0 4px rgba(52,211,153,.15),0 8px 28px rgba(52,211,153,.28)}.course-map-node-num{font-size:1.8rem;font-weight:900;line-height:1}.course-map-node-check{font-size:1.6rem;font-weight:900;line-height:1}.course-map-label{text-align:center;width:100%}.course-map-label-eyebrow{font-size:.67rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#4a7aaa;margin-bottom:3px}.course-map-node.cmap-done .course-map-label-eyebrow{color:#4ade80}.course-map-label-title{font-size:.78rem;font-weight:700;color:#dbeafe;line-height:1.25}.course-map-label-count{font-size:.68rem;color:#4a7aaa;margin-top:4px}.course-map-node.cmap-done .course-map-label-count{color:#4ade80}.course-map-connector{flex:1 1;display:flex;align-items:center;height:76px;padding:0 2px;min-width:12px}.course-map-connector-line{flex:1 1;height:2px;border-radius:999px;background:repeating-linear-gradient(90deg,rgba(147,197,253,.32),rgba(147,197,253,.32) 5px,transparent 0,transparent 11px)}.course-map-connector-arrow{font-size:16px;color:rgba(147,197,253,.4);flex-shrink:0;margin-left:2px;line-height:1}@media (max-width:640px){.course-map-ring{width:62px;height:62px}.course-map-node{width:80px}.course-map-node-num{font-size:1.5rem}.course-map-track{min-width:460px}}.beginner-school-lesson-card .form-actions{display:flex;align-items:center;gap:8px;margin-top:8px}.beginner-school-lesson-card .form-actions button{flex:1 1;min-width:0;padding:9px 12px;font-size:.82rem}.hero{display:grid;grid-template-columns:1.2fr 1fr;grid-gap:16px;gap:16px;margin-bottom:0}.hero-copy{border-radius:16px;border:1px solid rgba(147,197,253,.2);background:linear-gradient(155deg,rgba(8,19,42,.95),rgba(13,28,58,.85));padding:24px}.hero-copy h1{margin:10px 0;font-size:clamp(30px,4vw,44px);line-height:1.1}.hero-copy p{color:#b7d5ff;font-size:16px}.eyebrow{margin:0;text-transform:uppercase;letter-spacing:1.4px;font-size:12px;color:#89bcff;font-weight:700}.hero-journey-pill{display:inline-flex;align-items:center;gap:9px;margin:10px 0 4px;padding:9px 16px 9px 12px;max-width:100%;border-radius:999px;border:1px solid #c5a059;background:linear-gradient(180deg,rgba(8,10,18,.98),rgba(2,4,10,.98));color:#d4bc6e;font-size:.8125rem;font-weight:600;letter-spacing:.035em;line-height:1.25;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.05),0 1px 0 rgba(197,160,89,.12)}.hero-journey-pill-crown{flex-shrink:0;color:#c5a059}.hero-journey-pill span{min-width:0}.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.btn-ghost,.btn-primary,.btn-secondary{display:inline-flex;align-items:center;justify-content:center;width:auto;min-height:44px;padding:10px 14px;border-radius:10px;font-weight:600}.btn-primary{background:linear-gradient(90deg,#3b82f6,#2563eb);color:#eff6ff}.btn-ghost{border:1px solid rgba(147,197,253,.45);color:#cfe4ff}.btn-secondary{max-width:160px}.hero-art{position:relative;overflow:hidden;min-height:420px;border-radius:16px;border:1px solid rgba(147,197,253,.18)}.status-card h2{margin-top:0}.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:14px;gap:14px;margin-bottom:0}.feature-card{min-height:220px;border:1px solid rgba(154,194,255,.2);border-radius:14px;padding:16px;background-color:#09172f;position:relative;overflow:hidden;transition:transform .2s ease,border-color .2s ease}.feature-card__photo{object-fit:cover;z-index:0}.feature-card__shade{position:absolute;inset:0;z-index:1;background:linear-gradient(0deg,rgba(2,6,16,.88),rgba(2,6,16,.26));pointer-events:none}.feature-card h3,.feature-card p{position:relative;z-index:2}.feature-card p{color:#c4deff}.feature-card:hover{transform:translateY(-3px);border-color:rgba(147,197,253,.5)}.session-flow{padding:22px;background:radial-gradient(circle at 85% 10%,rgba(59,130,246,.22),transparent 45%),linear-gradient(180deg,rgba(6,16,36,.95),rgba(8,14,30,.95))}.session-flow-head h2{margin:4px 0 6px}.session-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px;margin-top:14px}.session-step{border:1px solid rgba(147,197,253,.25);border-radius:12px;background:rgba(10,24,52,.7);padding:14px;min-height:170px;position:relative;overflow:hidden}.session-step:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent,rgba(15,23,42,.22))}.session-step span{display:inline-block;font-size:12px;letter-spacing:1px;border:1px solid rgba(147,197,253,.45);padding:4px 8px;border-radius:999px;color:#bfdbfe}.session-step h3{margin:10px 0 8px;font-size:18px}.session-step p{margin:0;color:#c7defe}@media (max-width:940px){.hero{grid-template-columns:1fr}.hero-journey-pill{font-size:.75rem;padding:8px 14px 8px 10px}.hero-art{min-height:240px}.feature-grid{grid-template-columns:repeat(2,1fr)}.feature-card{min-height:190px}.session-steps{grid-template-columns:repeat(2,1fr)}.session-step{min-height:140px}.lessons-hero,.page-shell.two-col{grid-template-columns:1fr}.lessons-hero-art{min-height:220px;max-width:100%;justify-self:stretch;align-self:auto;aspect-ratio:16/7}.lessons-hero-puzzle{margin-top:16px;padding-top:14px}.lessons-hero-puzzle-stats{gap:12px}.lesson-demo-grid{grid-template-columns:repeat(2,1fr)}.beginner-school-lesson-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lesson-live-header,.lesson-live-panel,.lesson-practice-shell,.lesson-trainer-grid{grid-template-columns:1fr}.puzzle-cta-inner{flex-direction:column;align-items:flex-start}.puzzle-cta-btn{width:100%;justify-content:center}}@media (max-width:600px){.feature-grid{grid-template-columns:1fr}.feature-card{min-height:160px}.session-steps{grid-template-columns:1fr}.session-step{min-height:120px}.beginner-school-lesson-grid,.inline-two,.lesson-demo-grid{grid-template-columns:1fr}.lesson-demo-card{grid-template-columns:100px 1fr}.lessons-puzzle-strip-stats{display:none}.lessons-hero-art{min-height:200px;max-width:100%;justify-self:stretch}.lessons-wip-banner{gap:8px}.lessons-wip-banner-line{flex:0 0 18px;min-width:18px}.lessons-wip-banner-chip{flex:1 1;min-width:0;white-space:normal;text-align:center;justify-content:center;padding:6px 10px;font-size:.68rem;letter-spacing:.04em;line-height:1.45}}@media (max-width:480px){.lesson-demo-card{grid-template-columns:1fr}.lesson-demo-thumb{min-height:120px;max-height:150px;border-radius:10px}.lessons-hero-puzzle-header{flex-direction:column;align-items:flex-start;gap:8px}.lessons-hero-puzzle-stats{flex-direction:row;width:100%;justify-content:space-around;gap:12px;padding-top:8px;border-top:1px solid rgba(147,197,253,.1)}.lessons-hero-art{min-height:150px;aspect-ratio:16/5}.lessons-hero-puzzle-focus{min-height:0;font-size:.7rem}}.variation-overlay{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:16px}.variation-overlay-backdrop{position:absolute;inset:0;background:rgba(4,9,22,.82);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.variation-overlay-content{position:relative;display:flex;flex-direction:column;background:radial-gradient(ellipse 70% 48% at 50% 0,rgba(59,130,246,.12),transparent 55%),linear-gradient(180deg,rgba(12,24,52,.98),rgba(8,16,36,.99));border:1px solid rgba(148,188,255,.22);border-radius:16px;padding:0;max-width:min(1180px,96vw);width:100%;min-height:min(640px,88vh);max-height:92vh;box-shadow:0 24px 80px rgba(0,0,0,.58),inset 0 1px 0 hsla(0,0%,100%,.04);overflow:hidden}.variation-overlay-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid rgba(148,188,255,.12)}.variation-overlay-title{margin:0;font-size:1.05rem;font-weight:600;color:#eaf2ff}.variation-overlay-close{background:none;border:none;color:#94a3b8;font-size:1.4rem;cursor:pointer;padding:4px 10px;line-height:1;border-radius:8px}.variation-overlay-close:hover{color:#eaf2ff;background:rgba(148,188,255,.1)}.variation-overlay-body{display:grid;grid-template-columns:minmax(320px,1.28fr) minmax(260px,.85fr);grid-gap:0;gap:0;flex:1 1;min-height:min(560px,78vh);overflow:auto}@media (max-width:540px){.variation-overlay-body{grid-template-columns:1fr;min-height:0}}.variation-overlay-board-wrap{display:flex;align-items:center;justify-content:center;padding:20px 24px;min-height:320px;background:radial-gradient(ellipse 92% 72% at 50% 38%,rgba(147,197,253,.06),transparent 58%),radial-gradient(ellipse 120% 100% at 50% 100%,rgba(0,0,0,.22),transparent 50%),rgba(5,11,26,.65)}.variation-overlay-sidebar{display:flex;flex-direction:column;padding:20px 22px;gap:16px;min-width:0;background:linear-gradient(180deg,rgba(10,22,48,.75),rgba(8,16,36,.88));border-left:1px solid rgba(148,188,255,.12)}@media (max-width:540px){.variation-overlay-sidebar{border-left:none;border-top:1px solid rgba(148,188,255,.1)}}.variation-overlay-speech-wrap{display:flex;align-items:flex-start;gap:12px}.variation-overlay-tutor-icon{font-size:1.75rem;line-height:1;color:rgba(147,197,253,.85);flex-shrink:0;filter:drop-shadow(0 1px 2px rgba(0,0,0,.35))}.variation-overlay-speech-bubble{flex:1 1;min-width:0;background:linear-gradient(165deg,rgba(15,30,58,.95),rgba(8,18,38,.98));color:#e8f0ff;border-radius:12px;padding:14px 16px;min-height:72px;box-shadow:0 8px 24px rgba(3,8,19,.38),inset 0 1px 0 hsla(0,0%,100%,.06);border:1px solid rgba(147,197,253,.2)}.variation-overlay-coach-text{font-size:1rem;line-height:1.55;color:#e2e8f0;margin:0}.variation-overlay-summary{font-size:.95rem;color:#94a3b8;margin:12px 0 0;padding-top:12px;border-top:1px solid rgba(148,188,255,.12)}.variation-overlay-progress-card{font-size:.9rem;color:#94a3b8;background:rgba(15,23,42,.6);border-radius:12px;padding:12px 16px;border:1px solid rgba(148,188,255,.12)}.variation-overlay-move{color:#93c5fd;font-weight:600}.variation-overlay-controls{display:flex;flex-direction:column;gap:12px;margin-top:auto;padding-top:12px}.variation-overlay-controls-actions,.variation-overlay-controls-playback{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.variation-overlay-controls-actions{justify-content:flex-end}.variation-overlay-controls button{flex-shrink:0;padding:10px 16px;border-radius:10px;border:1px solid rgba(148,188,255,.3);background:rgba(15,23,42,.95);color:#e2e8f0;font-size:.9rem;cursor:pointer;font-weight:500}.variation-overlay-controls button:hover:not(:disabled){background:rgba(30,58,138,.5);border-color:rgba(148,188,255,.4)}.variation-overlay-controls button:disabled{opacity:.45;cursor:not-allowed}.variation-overlay-best-btn{background:rgba(34,197,94,.2)!important;border-color:rgba(34,197,94,.4)!important;color:#86efac!important}.variation-overlay-back-btn{background:rgba(59,130,246,.25)!important;border-color:rgba(59,130,246,.5)!important;font-weight:600;color:#bfdbfe!important}.coach-pending-content .coach-pending-header-actions{display:flex;align-items:center;gap:8px}.coach-pending-cancel{margin:0;padding:8px 14px;width:auto;background:rgba(30,58,100,.9);border:1px solid rgba(148,188,255,.35);color:#eaf2ff;border-radius:10px;cursor:pointer;font-size:.9rem}.coach-pending-cancel:hover{background:rgba(50,80,130,.95)}.coach-pending-sidebar{gap:14px}.coach-pending-lead{margin:0;font-size:1.05rem;font-weight:600;color:#e8f1ff}.coach-pending-analyze{margin:0;font-size:.95rem;color:#b9d6ff;line-height:1.45}.coach-pending-quote{color:#f8fafc;font-style:italic}.coach-pending-thinking{margin:0;font-size:1rem;color:#93c5fd;min-height:1.4em}.coach-pending-stage{margin:0;padding:12px 14px;border-radius:10px;background:rgba(15,34,62,.75);border:1px solid rgba(148,188,255,.15);color:#dbe8ff;font-size:.95rem;line-height:1.45}.coach-pending-slow{margin:0;font-size:.92rem;color:#fcd34d}.coach-pending-foot{margin:auto 0 0;font-size:.82rem;opacity:.9}.coach-quick-panel-root{position:fixed;inset:0;z-index:95}.coach-quick-panel-root--passthrough{pointer-events:none}.coach-quick-panel-root--passthrough .coach-quick-panel.sheet{pointer-events:auto}.coach-quick-panel-backdrop{position:absolute;inset:0;border:none;padding:0;margin:0;cursor:pointer;background:rgba(0,0,0,.38);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.coach-quick-panel.sheet{position:absolute;left:0;right:0;bottom:0;max-height:min(380px,48vh);overflow:auto;background:linear-gradient(180deg,rgba(12,24,52,.98),rgba(8,16,36,.99));border:1px solid rgba(148,188,255,.22);border-radius:18px 18px 0 0;padding:14px 18px 20px;box-shadow:0 -16px 48px rgba(0,0,0,.5);animation:coach-quick-panel-in .24s ease-out}@keyframes coach-quick-panel-in{0%{transform:translateY(100%);opacity:.88}to{transform:translateY(0);opacity:1}}.coach-quick-panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.coach-quick-panel-badge{letter-spacing:.06em;color:#7dd3fc}.coach-deep-mode-badge,.coach-quick-panel-badge{font-size:.72rem;text-transform:uppercase;font-weight:600}.coach-deep-mode-badge{display:block;letter-spacing:.07em;color:#fcd34d;margin-bottom:4px}.coach-reply-scroll-anchor{scroll-margin-top:88px}.coach-quick-panel-lead{margin:0 0 6px;font-size:.8rem;color:#94a3b8}.coach-quick-panel-quote{margin:0 0 8px;font-size:1rem;line-height:1.5;color:#f1f5f9}.coach-quick-panel-preview{margin:0 0 12px;font-size:.88rem}.coach-quick-panel-stage{margin:8px 0 0;padding:10px 12px;border-radius:10px;background:rgba(15,34,62,.75);border:1px solid rgba(148,188,255,.14);color:#dbe8ff;font-size:.92rem;line-height:1.45}.coach-quick-panel-foot{margin:14px 0 12px;font-size:.8rem}.coach-quick-panel-cancel{width:100%}@media (min-width:720px){.coach-quick-panel.sheet{left:auto;right:24px;bottom:24px;max-width:400px;max-height:min(420px,70vh);border-radius:16px;animation:coach-quick-panel-in-desktop .24s ease-out;box-shadow:0 20px 60px rgba(0,0,0,.45)}@keyframes coach-quick-panel-in-desktop{0%{transform:translateY(16px) scale(.98);opacity:.85}to{transform:translateY(0) scale(1);opacity:1}}.coach-quick-panel-backdrop{background:rgba(0,0,0,.22)}}.lesson-scene-root{display:flex;flex-direction:column;gap:16px;max-width:1100px;margin:0 auto}.lesson-scene-header{margin-bottom:0}.lesson-scene-layout{display:grid;grid-gap:16px;gap:16px;align-items:start}@media (min-width:900px){.lesson-scene-layout{grid-template-columns:minmax(280px,1fr) minmax(360px,1.1fr)}}.lesson-scene-coach{position:relative;overflow:hidden}.lesson-scene-eyebrow{margin:0 0 8px;font-size:.65rem;text-transform:uppercase;letter-spacing:.14em;color:rgba(186,230,253,.75);font-weight:700}.lesson-scene-coach-strip{display:flex;align-items:flex-start;gap:10px}.lesson-scene-avatar{flex-shrink:0;width:40px;height:40px;border-radius:50%;background:linear-gradient(145deg,#3b82f6,#1d4ed8);display:grid;place-items:center;font-size:1.1rem;box-shadow:0 3px 12px rgba(37,99,235,.35);border:1px solid rgba(191,219,254,.35)}.lesson-scene-bubble{flex:1 1;min-width:0;padding:10px 12px;border-radius:12px 12px 12px 4px;background:rgba(248,250,252,.97);color:#0f172a;box-shadow:0 3px 14px rgba(15,23,42,.12)}.lesson-scene-bubble-text{margin:0;font-size:.9rem;line-height:1.45;font-weight:500}.lesson-scene-callout{min-height:0;margin-top:10px;border-radius:8px;transition:background .2s ease}.lesson-scene-callout--contrast,.lesson-scene-callout--primary{padding:0}.lesson-scene-wrong-badge{position:absolute;top:12px;right:12px;width:36px;height:36px;border-radius:50%;background:hsla(0,91%,71%,.95);color:#fff;font-size:1.25rem;font-weight:800;display:grid;place-items:center;pointer-events:none;box-shadow:0 4px 14px rgba(220,38,38,.45);opacity:0}.lesson-scene-board{padding-bottom:14px}.lesson-scene-dots{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.lesson-scene-dot{width:8px;height:8px;border-radius:50%;background:rgba(148,163,184,.35)}.lesson-scene-dot--active{background:rgba(96,165,250,.95);transform:scale(1.25)}.cc-analysis-root{display:flex;flex-direction:column;gap:14px;flex:1 1 auto;min-width:0}.cc-analysis-setup.card{background:rgba(8,14,28,.5);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid hsla(0,0%,100%,.08);box-shadow:0 8px 32px rgba(0,0,0,.35);margin-bottom:0}.cc-analysis-setup-summary{cursor:pointer;font-weight:600;font-size:.95rem;color:rgba(248,250,252,.95);padding:4px 0}.cc-analysis-setup-body{padding-top:10px}.cc-analysis-setup-lead{margin-top:0;font-size:.8125rem}.cc-analysis-label{display:block;margin-bottom:6px;font-size:.8125rem}.cc-analysis-textarea{background:rgba(2,6,14,.65);border:1px solid hsla(0,0%,100%,.1);color:#e2e8f0;border-radius:8px}.cc-analysis-engine-grid input,.cc-analysis-engine-grid select{background:rgba(2,6,14,.65);border:1px solid hsla(0,0%,100%,.12);color:#e2e8f0;border-radius:6px}.cc-analysis-primary-run{background:linear-gradient(180deg,#3b82f6,#2563eb);border:none;color:#fff;font-weight:600;padding:10px 20px;border-radius:8px;box-shadow:0 4px 16px rgba(37,99,235,.35)}.cc-analysis-primary-run:disabled{opacity:.55}.cc-analysis-layout{display:flex;flex-direction:row;align-items:stretch;gap:16px;flex:1 1 auto;min-height:0;min-width:0;justify-content:center;flex-wrap:wrap}.cc-analysis-left-rail{display:flex;flex-direction:column;align-items:center;gap:10px;padding:12px 8px;width:48px;flex-shrink:0;background:rgba(4,8,18,.55);border-radius:12px;border:1px solid hsla(0,0%,100%,.06)}.cc-analysis-rail-btn{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;color:rgba(203,213,225,.75);transition:background .15s ease,color .15s ease}.cc-analysis-rail-btn:hover{background:hsla(0,0%,100%,.08);color:#f8fafc}.cc-analysis-board-column{display:flex;flex-direction:column;align-items:center;gap:8px;flex:0 0 auto}.cc-analysis-player{display:flex;align-items:center;gap:10px;width:100%;max-width:480px;padding:0 4px}.cc-analysis-player--bottom,.cc-analysis-player--top{flex-direction:row}.cc-analysis-avatar{width:28px;height:28px;border-radius:50%;background:linear-gradient(145deg,#64748b,#475569);border:1px solid hsla(0,0%,100%,.15);flex-shrink:0}.cc-analysis-player-name{font-size:.875rem;font-weight:600;color:rgba(248,250,252,.92)}.cc-analysis-board-row{display:flex;flex-direction:row;align-items:stretch;gap:10px}.cc-analysis-eval-bar{display:flex;flex-direction:column;align-items:center;gap:6px;width:28px;flex-shrink:0;align-self:stretch;min-height:200px}.cc-analysis-eval-bar-track{flex:1 1 auto;width:14px;min-height:180px;border-radius:6px;overflow:hidden;border:1px solid rgba(0,0,0,.35);box-shadow:inset 0 0 0 1px hsla(0,0%,100%,.06)}.cc-analysis-eval-bar-black{background:linear-gradient(180deg,#2a2a2a,#1a1a1a);min-height:0}.cc-analysis-eval-bar-white{background:linear-gradient(180deg,#f5f5f5,#e8e8e8);min-height:0;border-top:1.5px solid rgba(148,163,184,.88);box-sizing:border-box}.cc-analysis-eval-bar-label{font-size:.65rem;font-weight:700;color:rgba(226,232,240,.9);text-align:center;line-height:1.1;max-width:36px;word-break:break-all}.cc-analysis-board-wrap{border-radius:4px;overflow:hidden;box-shadow:0 0 0 2px rgba(0,0,0,.45),0 16px 48px rgba(0,0,0,.55)}.cc-analysis-board-placeholder{min-height:200px;display:grid;place-items:center;background:rgba(8,14,28,.45);border:1px solid hsla(0,0%,100%,.08)}.cc-analysis-glass{flex:1 1 320px;max-width:420px;min-width:280px;display:flex;flex-direction:column;gap:12px;padding:14px 16px 16px;border-radius:14px;background:rgba(6,10,22,.62);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid hsla(0,0%,100%,.1);box-shadow:0 16px 48px rgba(0,0,0,.5);color:rgba(248,250,252,.92);max-height:min(90vh,820px)}.cc-analysis-tabs{display:flex;flex-direction:row;gap:4px;border-bottom:1px solid hsla(0,0%,100%,.08);padding-bottom:10px}.cc-analysis-tab{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:8px;border:none;background:transparent;color:rgba(148,163,184,.95);font-size:.8125rem;font-weight:600;cursor:pointer;font-family:inherit}.cc-analysis-tab:disabled{opacity:.4;cursor:not-allowed}.cc-analysis-tab--active{background:rgba(59,130,246,.22);color:#93c5fd;box-shadow:0 0 0 1px rgba(59,130,246,.25)}.cc-analysis-tab-icon{display:flex;opacity:.95}.cc-analysis-status{margin:0;font-size:.8125rem}.cc-analysis-engine-chips{display:flex;flex-wrap:wrap;gap:8px}.cc-analysis-engine-chip{font-size:.75rem;font-weight:700;padding:6px 10px;border-radius:8px;background:hsla(0,0%,100%,.08);border:1px solid hsla(0,0%,100%,.12);color:#f8fafc}.cc-analysis-nl-block{display:flex;flex-direction:column;gap:8px;font-size:.8125rem;line-height:1.45}.cc-analysis-nl-line{display:flex;align-items:flex-start;gap:10px;margin:0;color:rgba(226,232,240,.95)}.cc-analysis-nl-line--dim{color:rgba(148,163,184,.9)}.cc-analysis-nl-chip{flex-shrink:0;min-width:26px;height:22px;padding:0 6px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:.65rem;font-weight:800;color:#fff;box-shadow:0 1px 4px rgba(0,0,0,.35);border:1.5px solid hsla(0,0%,100%,.35)}.cc-analysis-nl-chip--best{background:linear-gradient(145deg,#22c55e,#15803d);font-size:.7rem}.cc-analysis-alt-lines{margin:4px 0 0;padding-left:1.1rem;color:rgba(148,163,184,.88);font-size:.75rem;line-height:1.5}.cc-analysis-alt-eval{font-weight:700;color:rgba(203,213,225,.95)}.cc-analysis-opening{display:flex;align-items:center;gap:8px;font-size:.75rem;color:rgba(203,213,225,.9);padding:6px 0}.cc-analysis-opening-book{font-size:1rem;line-height:1}.cc-analysis-accuracy-strip{display:flex;gap:8px;font-size:.75rem;font-weight:600;color:rgba(148,163,184,.95)}.cc-analysis-class-table-wrap{padding:10px 0 4px;border-top:1px solid hsla(0,0%,100%,.08);border-bottom:1px solid hsla(0,0%,100%,.06)}.cc-analysis-class-table-title{margin:0 0 8px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:rgba(148,163,184,.95)}.cc-analysis-class-table{width:100%;border-collapse:collapse;font-size:.8125rem}.cc-analysis-class-table thead th{text-align:left;font-weight:600;color:rgba(148,163,184,.85);padding:4px 0 6px;border-bottom:1px solid hsla(0,0%,100%,.1)}.cc-analysis-class-table-count{text-align:right;width:3rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cc-analysis-class-table tbody td{padding:6px 0;border-bottom:1px solid hsla(0,0%,100%,.05);color:rgba(248,250,252,.92);vertical-align:middle}.cc-analysis-class-table tbody tr:last-child td{border-bottom:none}.cc-analysis-class-table-swatch{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:8px;vertical-align:middle;box-shadow:0 0 0 1px rgba(0,0,0,.25)}.cc-analysis-class-table-foot{margin:8px 0 0;font-size:.6875rem;line-height:1.45}.cc-analysis-movelist-wrap{flex:1 1 auto;min-height:120px;overflow:hidden;display:flex;flex-direction:column}.cc-analysis-movelist{overflow-y:auto;display:flex;flex-direction:column;gap:2px;padding-right:4px;flex:1 1 auto}.cc-analysis-movelist::-webkit-scrollbar{width:6px}.cc-analysis-movelist::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.12);border-radius:4px}.cc-analysis-move-row{display:grid;grid-template-columns:28px 28px 1fr auto;align-items:center;grid-gap:6px;gap:6px;width:100%;padding:8px 10px;border:none;border-radius:8px;background:hsla(0,0%,100%,.03);color:inherit;font-family:inherit;font-size:.8125rem;text-align:left;cursor:pointer;transition:background .12s ease}.cc-analysis-move-row:hover{background:hsla(0,0%,100%,.07)}.cc-analysis-move-row--active{background:rgba(59,130,246,.35);box-shadow:inset 0 0 0 1px rgba(59,130,246,.45)}.cc-analysis-move-idx{font-weight:700;color:rgba(148,163,184,.95);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cc-analysis-move-chip{width:24px;height:22px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:.55rem;font-weight:800;color:#fff;border:1.5px solid hsla(0,0%,100%,.35);box-shadow:0 1px 3px rgba(0,0,0,.3)}.cc-analysis-move-chip--empty{visibility:hidden}.cc-analysis-move-san{font-weight:600;letter-spacing:.02em}.cc-analysis-move-acc{font-size:.7rem;color:rgba(148,163,184,.9);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cc-analysis-transport{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:8px;gap:8px;margin-top:4px}.cc-analysis-transport--under-board{width:min(100%,470px);max-width:calc(28px + 10px + 432px);margin-top:14px;margin-bottom:6px;align-self:center;flex-shrink:0}.cc-analysis-transport--under-board .cc-analysis-transport-btn{border-radius:12px;border:1px solid rgba(148,163,184,.28);background:rgba(15,23,42,.94);min-height:46px;box-shadow:0 2px 8px rgba(0,0,0,.25)}.cc-analysis-transport--under-board .cc-analysis-transport-btn:hover:not(:disabled){background:rgba(30,41,59,.98);border-color:rgba(186,230,253,.35)}.cc-analysis-transport-btn{padding:12px 8px;border-radius:10px;border:1px solid hsla(0,0%,100%,.1);background:rgba(30,41,59,.85);color:rgba(248,250,252,.95);font-size:1rem;font-weight:700;cursor:pointer;font-family:inherit;transition:background .12s ease}.cc-analysis-transport-btn:hover:not(:disabled){background:rgba(51,65,85,.95)}.cc-analysis-transport-btn:disabled{opacity:.35;cursor:not-allowed}.cc-analysis-footer-actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:6px;padding-top:8px;border-top:1px solid hsla(0,0%,100%,.08);font-size:.8125rem}.cc-analysis-footer-link{background:none;border:none;color:rgba(148,163,184,.95);cursor:pointer;font-family:inherit;padding:4px 8px}.cc-analysis-footer-link:hover:not(:disabled){color:#e2e8f0}.cc-analysis-footer-link:disabled{opacity:.4;cursor:not-allowed}.cc-analysis-footer-link--star{color:#fbbf24}.cc-analysis-footer-dot{color:rgba(100,116,139,.8)}.cc-analysis-glass-hint{margin:0;font-size:.875rem}.cc-analysis-coach-details{margin-top:8px;padding-top:10px;border-top:1px solid hsla(0,0%,100%,.08);font-size:.8125rem;color:rgba(203,213,225,.9)}.cc-analysis-coach-details summary{cursor:pointer;font-weight:600;color:rgba(148,163,184,.95)}.cc-analysis-coach-inner{padding-top:10px}.analysis-game-review-root.cc-analysis-root .game-review-square-reaction{border:2px solid rgba(0,0,0,.2)}@media (max-width:900px){.cc-analysis-layout{flex-direction:column;align-items:stretch}.cc-analysis-left-rail{flex-direction:row;width:100%;justify-content:center;padding:8px}.cc-analysis-glass{max-width:none;max-height:none}}.table-responsive,.table-scroll{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}.table-scroll table{width:100%;max-width:none}@media (max-width:767px){.app-main{padding:max(10px,env(safe-area-inset-top,0px)) max(10px,env(safe-area-inset-right,0px)) max(12px,env(safe-area-inset-bottom,0px)) max(10px,env(safe-area-inset-left,0px))}.home-page,.lessons-catalog-layout,.puzzles-page{gap:12px}.topbar{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:0;row-gap:0;padding:12px 14px;top:max(8px,env(safe-area-inset-top,0px));z-index:200;backdrop-filter:none;-webkit-backdrop-filter:none;background:rgba(7,16,36,.94)}.topbar-leading{justify-content:space-between;width:auto;position:relative;z-index:201;isolation:isolate}.brand,.topbar-leading{flex:1 1 auto;min-width:0}.brand{font-size:clamp(1rem,4.2vw,1.1rem);line-height:1.25;margin-right:8px;padding-right:2px;min-height:44px;display:flex;align-items:center}.topbar-menu-toggle{flex-shrink:0;position:relative;z-index:2;width:48px;height:48px;margin:0 0 0 auto;padding:0;border-radius:12px;border:1px solid rgba(147,197,253,.35);background:rgba(15,23,42,.65);color:#cfe4ff;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:rgba(147,197,253,.28)}.topbar-menu-toggle,.topbar-menu-toggle-visual{display:inline-flex;align-items:center;justify-content:center}.topbar-menu-toggle-visual{line-height:1}.topbar-menu-toggle-bars{display:block;width:18px;height:2px;background:currentColor;border-radius:1px;box-shadow:0 -6px 0 currentColor,0 6px 0 currentColor}.topbar-menu-toggle-x{display:block;font-size:1.5rem;font-weight:300;line-height:1;margin-top:-2px}.topbar:not(.topbar--open) .topbar-links{pointer-events:none}.topbar--open .topbar-links{pointer-events:auto}.topbar-links{display:none;position:fixed;inset:0;padding:max(92px,calc(52px + env(safe-area-inset-top, 0px))) 16px max(28px,env(safe-area-inset-bottom,0px));margin:0;flex-direction:column;align-items:stretch;align-self:stretch;flex:none;gap:6px;flex-wrap:nowrap;justify-content:flex-start;background:rgba(7,16,36,.97);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);z-index:200;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;border:none;border-radius:0;box-sizing:border-box}.topbar--open .topbar-links{display:flex}.topbar-links a{border-radius:10px}.topbar-links .topbar-logout,.topbar-links a{padding:14px;min-height:48px;display:flex;align-items:center;font-size:1rem}.topbar-links .topbar-logout{justify-content:flex-start}.topbar-signed-in{min-height:48px;display:flex;align-items:center;padding:14px}.topbar-links .topbar-account-wrap{width:100%;flex-direction:column;align-items:stretch}.topbar-links .topbar-account-trigger{min-height:48px;padding:14px;width:100%;justify-content:flex-start;border-radius:10px;font-size:1rem}.topbar-account-menu{position:static;margin-top:8px;margin-left:0;box-shadow:none;width:100%}.card{padding:14px;margin-bottom:14px}.home-page .card,.lessons-catalog-layout .card,.puzzles-page .card{margin-bottom:0}.page-shell{gap:12px;margin-bottom:14px}.hero-copy{padding:16px}.hero-copy h1{font-size:clamp(1.375rem,6.5vw,1.85rem)}.hero-copy p{font-size:15px;line-height:1.55}.btn-ghost,.btn-primary,.btn-secondary{min-height:44px;padding:12px 16px;display:inline-flex;align-items:center;justify-content:center}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),select,textarea{font-size:16px}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),select{min-height:44px}textarea{min-height:6rem}.variation-overlay{padding:max(8px,env(safe-area-inset-top,0px)) max(8px,env(safe-area-inset-right,0px)) max(8px,env(safe-area-inset-bottom,0px)) max(8px,env(safe-area-inset-left,0px));box-sizing:border-box}.variation-overlay-content{max-height:min(92dvh,calc(100dvh - 16px));min-height:0;max-width:100%;width:100%;border-radius:14px}.variation-overlay-close{min-width:44px;min-height:44px;padding:8px;display:inline-flex;align-items:center;justify-content:center}.variation-overlay-board-wrap,.variation-overlay-sidebar{padding:14px 16px}.coach-quick-panel.sheet{max-height:min(85dvh,620px);padding-left:max(18px,env(safe-area-inset-left,0px));padding-right:max(18px,env(safe-area-inset-right,0px));padding-bottom:max(20px,env(safe-area-inset-bottom,0px))}.home-page{min-height:calc(100dvh - 88px)}.beginner-school-board-wrap.board-wrap{padding:8px 8px 10px 6px}.beginner-school-practice .lesson-practice-side{min-width:0}.coach-layout .board-wrap.board-wrap--coach-fill{padding:8px 8px 10px 6px}.coach-layout .coach-page-board-wrap.board-wrap{margin-left:auto;margin-right:auto}.coach-page-board-wrap.board-wrap--coach-fill .coach-board-canvas-wrap{justify-content:center}.coach-layout .card{min-width:0;overflow-x:hidden}.coach-right-panel{max-height:none;overflow:visible}.coach-move-list{max-height:min(360px,52vh)}.coach-board-row{justify-content:center}.lesson-trainer-header{padding:10px 12px;gap:10px}.lesson-trainer-header-board{width:72px;height:72px}.lesson-trainer-title{font-size:1rem}.lesson-top-bar{padding:3px 0;margin-bottom:2px}.lesson-top-btn{padding:4px 10px;font-size:.77rem}.lesson-step-panel{padding:10px 12px 12px}.lesson-controls-bar{padding:6px 8px;gap:4px;margin-top:8px}.lesson-ctrl-btn{width:42px;height:42px;min-width:42px}.lesson-ctrl-btn--next{width:46px;height:46px;min-width:46px}.lesson-practice-board.card{padding-left:8px;padding-right:8px}.app-main:has(.lesson-practice-shell){padding-left:max(5px,env(safe-area-inset-left,0px));padding-right:max(5px,env(safe-area-inset-right,0px))}.lesson-mobile-coach-note{display:block;font-size:.83rem;line-height:1.45;color:rgba(186,230,253,.8);padding:6px 0 2px;margin-top:6px;border-top:1px solid rgba(147,197,253,.12)}.lesson-coach-note{display:none}}body:has(.coach-bot-page){scrollbar-width:thin;scrollbar-color:rgba(129,178,253,.42) rgba(8,15,32,.82)}.coach-bot-page{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:16px;padding-bottom:max(24px,env(safe-area-inset-bottom,0px));padding-left:max(0px,env(safe-area-inset-left,0px));padding-right:max(0px,env(safe-area-inset-right,0px));box-sizing:border-box;width:100%;max-width:100%;overflow-x:hidden}.coach-bot-hero .coach-bot-lead{max-width:52rem;line-height:1.55}.coach-bot-hero.card{padding:clamp(14px,4vw,20px)}.coach-bot-grid{display:grid;grid-template-columns:minmax(260px,320px) minmax(280px,1fr) minmax(240px,300px);grid-template-rows:auto auto;grid-gap:14px;gap:14px;align-items:start}.coach-bot-setup{grid-column:1;grid-row:1/span 2}.coach-bot-board-card{grid-column:2;grid-row:1}.coach-bot-side{grid-column:3;grid-row:1}.coach-bot-movelist{grid-column:2/span 2;grid-row:2}.bot-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);grid-gap:20px;gap:20px;width:100%}@media (min-width:941px){.bot-layout{grid-template-columns:minmax(0,7fr) minmax(300px,3fr)}}@media (max-width:767px){.bot-layout{grid-template-columns:minmax(0,1fr);gap:14px}}.bot-board-section,.bot-right-section{min-width:0}.bot-board-section{display:flex;flex-direction:column;gap:8px;align-items:center;justify-content:center}.bot-board-section .material-adv-strip--coach{margin:0}.bot-board-section>*{width:100%;max-width:min(700px,70dvh)}.bot-right-section{gap:0}.bot-player-row{display:flex;align-items:center;gap:10px;padding:10px 2px}.bot-player-avatar{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:15px;flex-shrink:0}.bot-player-avatar--bot{background:rgba(56,189,248,.18);border:1px solid rgba(56,189,248,.32);color:#7dd3fc}.bot-player-avatar--you{background:rgba(74,222,128,.16);border:1px solid rgba(74,222,128,.32);color:#86efac}.bot-player-info{display:flex;flex-direction:column;gap:2px;flex:1 1;min-width:0}.bot-player-name{font-size:13px;font-weight:700;color:#dde8ff;line-height:1.2}.bot-player-meta{font-size:11px;font-weight:500;color:#5a78a8;line-height:1.2}.bot-player-thinking-dot{width:7px;height:7px;border-radius:50%;background:#7dd3fc;flex-shrink:0;animation:bot-pulse 1.2s ease-in-out infinite}@keyframes bot-pulse{0%,to{opacity:.35;transform:scale(.85)}50%{opacity:1;transform:scale(1.1)}}@media (prefers-reduced-motion:reduce){.bot-player-thinking-dot{animation:none;opacity:.7}}.bot-board-wrap{position:relative;width:100%}.bot-action-bar{display:flex;flex-wrap:wrap;gap:8px;padding:12px 0 6px}.bot-start-btn{width:100%;padding:14px 24px;font-size:15px;font-weight:700;letter-spacing:.01em;border-radius:11px;border:none;cursor:pointer;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;box-shadow:0 4px 20px rgba(37,99,235,.45),inset 0 1px 0 hsla(0,0%,100%,.12);transition:box-shadow .15s ease,transform .12s ease}.bot-start-btn:hover:not(:disabled){box-shadow:0 6px 28px rgba(37,99,235,.58),inset 0 1px 0 hsla(0,0%,100%,.16);transform:translateY(-1px)}.bot-start-btn:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 12px rgba(37,99,235,.4)}.bot-start-btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.bot-action-btn{display:inline-flex;align-items:center;gap:5px;padding:9px 14px;font-size:12px;font-weight:600;border-radius:9px;border:1px solid rgba(148,188,255,.22);background:rgba(14,38,92,.68);color:#a8c4f0;cursor:pointer;white-space:nowrap;text-decoration:none;transition:background .12s,border-color .12s,color .12s}.bot-action-btn:hover:not(:disabled){background:rgba(24,58,145,.85);border-color:rgba(148,188,255,.42);color:#dde8ff}.bot-action-btn:disabled{opacity:.3;cursor:not-allowed}.bot-action-btn--danger{color:#f87171;border-color:rgba(239,68,68,.26)}.bot-action-btn--danger:hover:not(:disabled){background:rgba(120,28,28,.52);border-color:rgba(239,68,68,.48);color:#fca5a5}.bot-action-btn--ghost{background:transparent;border-color:transparent;color:#4e6a96;padding-inline:8px}.bot-action-btn--ghost:hover:not(:disabled){background:transparent;border-color:transparent;color:#a8c4f0}.bot-action-btn--analyze{background:rgba(37,99,235,.14);border-color:rgba(96,165,250,.34);color:#93c5fd}.bot-transport{margin-top:4px}.bot-board-footer{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;padding:8px 10px;border:1px solid rgba(147,197,253,.18);border-radius:12px;background:rgba(15,23,42,.5)}@media (max-width:1024px),(pointer:coarse){.bot-board-footer .coach-transport button{width:44px;height:44px}.bot-board-footer .bot-text-action{min-height:44px;display:inline-flex;align-items:center}.bot-board-footer .bot-status-bar{font-size:14px}.bot-setup-select{min-height:44px}}.bot-board-footer .coach-transport.bot-board-footer-controls{margin:0;padding:0;border:none;background:none;width:auto;flex-shrink:0}.bot-board-footer .bot-status-bar{flex:1 1 180px;min-width:0}.bot-board-footer .bot-inline-actions{margin-left:auto}.bot-status-bar{font-size:13px;font-weight:500;color:#3e5880;flex:1 1;display:flex;align-items:center;gap:6px}.bot-status-bar--thinking{color:#7dd3fc;font-weight:600}.bot-status-bar--your-move{color:#86efac;font-weight:600}.bot-status-bar--gameover{color:#dde8ff;font-weight:700}.bot-hint-san{font-weight:700;color:#7dd3fc;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;padding:1px 7px;border-radius:5px;background:rgba(56,189,248,.12);border:1px solid rgba(56,189,248,.22)}.bot-inline-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.bot-text-action{padding:5px 13px;border-radius:6px;border:1.5px solid rgba(148,163,184,.32);background:transparent;font-size:12px;font-weight:600;letter-spacing:.01em;color:rgba(203,213,225,.88);cursor:pointer;text-decoration:none;transition:background .15s,border-color .15s,color .15s;white-space:nowrap}.bot-text-action:hover{background:rgba(148,163,184,.09);border-color:rgba(148,163,184,.55);color:#e2e8f0}.bot-text-action--danger{color:hsla(0,94%,82%,.9);border-color:rgba(239,68,68,.45);background:transparent}.bot-text-action--danger:hover{background:rgba(239,68,68,.12);border-color:rgba(239,68,68,.7);color:#fca5a5}.bot-right-section{display:flex;flex-direction:column;overflow:hidden}.bot-setup{border-bottom:1px solid rgba(148,188,255,.1);padding-bottom:4px;transition:opacity .25s}.bot-setup--dim{opacity:.35;pointer-events:none}.bot-setup-row{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid rgba(148,188,255,.07)}.bot-setup-row:last-child{border-bottom:none}.bot-setup-row--color{align-items:flex-start;flex-direction:column;gap:8px}.bot-setup-label{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#3a5480;flex-shrink:0;white-space:nowrap}.bot-setup-select{flex:1 1;min-width:0;padding:8px 10px;border-radius:8px;border:1px solid rgba(148,188,255,.18);background:rgba(5,14,44,.75);color:#c8daf8;font-size:13px;font-weight:600}.bot-color-toggle{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px;width:100%}.bot-color-btn{padding:12px 8px;border-radius:9px;border:1px solid rgba(148,188,255,.13);background:rgba(5,14,44,.5);color:#3e5880;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:5px;transition:background .12s,border-color .12s,color .12s}.bot-color-btn-glyph{font-size:22px;line-height:1}.bot-color-btn-label{font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.bot-color-btn--active{background:rgba(37,99,235,.2);border-color:rgba(96,165,250,.48);color:#c8daf8}.bot-color-btn:hover:not(:disabled):not(.bot-color-btn--active){background:rgba(18,48,115,.5);border-color:rgba(148,188,255,.26);color:#7a9ed8}.bot-color-btn:disabled{opacity:.28;cursor:not-allowed}.bot-postgame{padding:16px;border-bottom:1px solid rgba(148,188,255,.1);display:flex;flex-direction:column}.bot-postgame-links{display:flex;gap:14px;margin-top:10px}.bot-moves-header{display:flex;align-items:center;justify-content:space-between;padding:10px 16px 8px;border-bottom:1px solid rgba(148,188,255,.1)}.bot-move-list{flex:1 1;min-height:0;overflow-y:auto;padding-bottom:16px;scrollbar-width:thin;scrollbar-color:rgba(129,178,253,.45) rgba(15,23,42,.6)}.bot-moves-pair{display:grid;grid-template-columns:2rem 1fr 1fr;font-size:13px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;border-bottom:1px solid rgba(148,188,255,.055)}.bot-moves-pair:last-child{border-bottom:none}.bot-moves-san{padding:7px 10px;color:#c8daf8}.bot-coach-feed{opacity:.1;pointer-events:none;padding:10px 16px;font-size:12px;color:#c8daf8}.coach-bot-board-wrap{position:relative;max-width:min(526px,100%);width:100%;margin:0 auto;display:flex;justify-content:center}.coach-bot-board-wrap>div{max-width:100%}.coach-bot-board-loading{aspect-ratio:1;width:100%;max-width:min(520px,calc(100vw - 32px));margin:0 auto;border-radius:10px;background:rgba(8,15,32,.55)}.coach-bot-label{display:block;font-size:.9rem;margin-top:10px;margin-bottom:4px}.coach-bot-select{width:100%;max-width:280px;padding:8px 10px;border-radius:8px;border:1px solid rgba(147,197,253,.35);background:rgba(6,12,24,.85);color:#eaf2ff}@media (max-width:768px){.coach-bot-select{max-width:none;min-height:44px;font-size:16px}}.coach-bot-hint{font-size:.88rem;margin:6px 0 0;line-height:1.45}.coach-bot-fieldset{border:1px solid rgba(147,197,253,.22);border-radius:10px;padding:10px 12px;margin:12px 0 0}.coach-bot-legend{padding:0 6px;font-size:.85rem;color:rgba(234,242,255,.82)}.coach-bot-radio{display:inline-flex;align-items:center;gap:6px;margin-right:14px;font-size:.95rem}.coach-bot-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;padding:10px;border-radius:12px;border:1px solid rgba(147,197,253,.18);background:rgba(15,23,42,.45)}.coach-bot-actions button{margin:0;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .15s ease,border-color .15s ease,opacity .15s ease}.coach-bot-action-btn{padding:8px 14px;border:1px solid rgba(148,163,184,.28);background:rgba(30,41,59,.72);color:rgba(226,232,240,.92)}.coach-bot-action-btn:hover:not(:disabled){background:rgba(51,65,85,.85);border-color:rgba(186,200,220,.4);color:#f8fafc}.coach-bot-action-btn:disabled{opacity:.38;cursor:not-allowed}.coach-bot-action-btn--analyze,a.coach-bot-action-btn--analyze{background:rgba(99,102,241,.18);border-color:rgba(99,102,241,.45);color:#a5b4fc;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.coach-bot-action-btn--analyze:hover,a.coach-bot-action-btn--analyze:hover{background:rgba(99,102,241,.32);border-color:rgba(129,140,248,.65);color:#c7d2fe}@media (max-width:768px){.coach-bot-actions{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.coach-bot-actions .coach-bot-btn-primary{grid-column:1/-1;min-height:48px;font-size:1rem}.coach-bot-actions .coach-bot-action-btn{min-height:44px;padding:10px 12px}}.coach-bot-btn-primary{padding:9px 16px;border:1px solid rgba(125,211,252,.35);background:rgba(37,99,235,.42);color:#f1f5f9;box-shadow:none}.coach-bot-btn-primary:hover:not(:disabled){background:rgba(37,99,235,.58);border-color:rgba(147,197,253,.48)}.coach-bot-btn-primary:disabled{opacity:.5;cursor:not-allowed;background:rgba(30,41,59,.55);border-color:rgba(148,163,184,.22);color:rgba(226,232,240,.65)}.coach-bot-board-header{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:8px}.coach-bot-material-strip.material-adv-strip--coach-top{margin-top:4px}.coach-bot-material-strip.material-adv-strip--coach-bottom{margin-bottom:2px}.coach-bot-best-hint{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin-top:10px;padding:8px 12px;border-radius:10px;border:1px solid rgba(148,163,184,.16);background:rgba(15,23,42,.42)}.coach-bot-best-hint-label{font-size:.7rem;letter-spacing:.07em;text-transform:uppercase;font-weight:700}.coach-bot-best-hint-san{font-size:1.05rem;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:#e2e8f0}.coach-bot-best-hint-placeholder,.coach-bot-best-hint-wait{font-size:.95rem;min-width:1.25rem}.coach-bot-best-hint-btn{margin-top:0!important;margin-left:auto}.coach-bot-best-hint-err{flex-basis:100%;font-size:.82rem;color:#fca5a5;margin:0}.coach-bot-promotion-pick{position:absolute;left:50%;top:50%;bottom:auto;transform:translate(-50%,-50%);z-index:30;width:calc(100% - 44px);max-width:320px;padding:8px 10px;border-radius:12px;border:1px solid rgba(125,211,252,.22);background:linear-gradient(165deg,rgba(15,23,42,.94),rgba(8,15,32,.92));box-shadow:0 12px 40px rgba(2,6,15,.55),inset 0 1px 0 hsla(0,0%,100%,.06);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.coach-bot-promotion-title{margin:0 0 8px;font-size:.74rem;font-weight:600;letter-spacing:.02em;text-align:center;color:rgba(226,232,240,.92)}.coach-bot-promotion-btns{display:flex;flex-wrap:wrap;gap:5px;align-items:stretch;justify-content:center}.coach-bot-promotion-btn{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:60px;padding:7px 6px;border-radius:9px;border:1px solid rgba(56,189,248,.28);background:rgba(30,41,59,.75);color:#f1f5f9;font-size:.68rem;font-weight:600;cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .12s ease}.coach-bot-promotion-btn:hover{background:rgba(51,65,85,.92);border-color:rgba(125,211,252,.45);transform:translateY(-1px)}.coach-bot-promotion-glyph{font-size:1.2rem;line-height:1;color:#e0f2fe;text-shadow:0 1px 2px rgba(0,0,0,.45)}.coach-bot-promotion-label{font-size:.58rem;font-weight:600;color:rgba(203,213,225,.95);letter-spacing:.03em;text-transform:uppercase}.coach-bot-promotion-cancel{flex:1 1 100%;margin-top:1px;padding:6px 9px;border-radius:8px;border:1px solid rgba(148,163,184,.28);background:rgba(15,23,42,.55);color:rgba(226,232,240,.88);font-size:.76rem;font-weight:600;cursor:pointer;transition:background .15s ease,border-color .15s ease}.coach-bot-promotion-cancel:hover{background:rgba(30,41,59,.75);border-color:rgba(186,200,220,.35)}.coach-bot-result-scrim{position:absolute;inset:0;z-index:25;display:flex;align-items:center;justify-content:center;border-radius:4px;animation:cbr-scrim-in .25s ease both}@keyframes cbr-scrim-in{0%{opacity:0}to{opacity:1}}.coach-bot-result-scrim--loss{background:rgba(4,6,16,.82)}.coach-bot-result-scrim--win{background:rgba(2,10,5,.76)}.coach-bot-result-scrim--draw{background:rgba(4,4,8,.76)}.coach-bot-result-card{position:relative;width:calc(100% - 40px);max-width:295px;padding:26px 22px 20px;border-radius:20px;text-align:center;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);animation:cbr-card-in .38s cubic-bezier(.22,1,.36,1) .05s both}@keyframes cbr-card-in{0%{opacity:0;transform:scale(.84) translateY(18px)}to{opacity:1;transform:scale(1) translateY(0)}}.coach-bot-result-card--loss{background:linear-gradient(158deg,rgba(6,8,22,.97),rgba(10,12,32,.95));box-shadow:0 0 0 1px rgba(99,102,241,.28),0 0 40px rgba(79,70,229,.14),0 24px 60px rgba(0,0,0,.65)}.coach-bot-result-card--win{background:linear-gradient(158deg,rgba(4,20,10,.97),rgba(6,32,14,.95));box-shadow:0 0 0 1px rgba(52,211,153,.28),0 0 40px rgba(16,185,129,.14),0 24px 60px rgba(0,0,0,.65)}.coach-bot-result-card--draw{background:linear-gradient(158deg,rgba(16,13,4,.97),rgba(26,20,4,.95));box-shadow:0 0 0 1px rgba(251,191,36,.26),0 0 40px rgba(245,158,11,.12),0 24px 60px rgba(0,0,0,.65)}.coach-bot-result-close{position:absolute;top:12px;right:12px;width:28px;height:28px;padding:0;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:rgba(148,163,184,.45);border-radius:7px;cursor:pointer;transition:color .15s ease,background .15s ease}.coach-bot-result-close:hover:not(:disabled){color:rgba(226,232,240,.85);background:hsla(0,0%,100%,.07);transform:none;box-shadow:none}.coach-bot-result-icon{width:56px;height:56px;margin:0 auto 14px;border-radius:50%;display:flex;align-items:center;justify-content:center}.coach-bot-result-card--loss .coach-bot-result-icon{color:#a5b4fc;background:rgba(99,102,241,.12);box-shadow:0 0 0 1px rgba(99,102,241,.22)}.coach-bot-result-card--win .coach-bot-result-icon{color:#fbbf24;background:rgba(251,191,36,.11);box-shadow:0 0 0 1px rgba(251,191,36,.2)}.coach-bot-result-card--draw .coach-bot-result-icon{color:#94a3b8;background:rgba(148,163,184,.09);box-shadow:0 0 0 1px rgba(148,163,184,.18)}.coach-bot-result-headline{margin:0;font-size:1.45rem;font-weight:800;letter-spacing:-.03em;line-height:1.1}.coach-bot-result-card--loss .coach-bot-result-headline{color:#c7d2fe}.coach-bot-result-card--win .coach-bot-result-headline{color:#fde68a}.coach-bot-result-card--draw .coach-bot-result-headline{color:#cbd5e1}.coach-bot-result-sub{margin:9px 0 0;font-size:.875rem;line-height:1.55;color:rgba(203,213,225,.72)}.coach-bot-result-btns{margin-top:22px;display:flex;gap:8px;justify-content:center;flex-wrap:wrap}@media (max-width:520px){.coach-bot-best-hint{flex-direction:column;align-items:stretch}.coach-bot-best-hint-btn{margin-left:0!important;width:100%;text-align:center;padding:8px 10px!important}.coach-bot-result-btns{flex-direction:column}.coach-bot-result-btns .coach-bot-action-btn,.coach-bot-result-btns .coach-bot-btn-primary{width:100%;min-height:42px}}.coach-bot-pill{font-size:.78rem;letter-spacing:.04em;text-transform:uppercase;padding:4px 10px;border-radius:999px;background:rgba(59,130,246,.22);border:1px solid rgba(147,197,253,.28)}.coach-bot-thinking{margin-top:8px}.coach-bot-result-banner{margin-top:10px;padding:10px 12px;border-radius:12px;border:1px solid transparent;display:flex;gap:6px;flex-wrap:wrap;line-height:1.35}.coach-bot-result-banner strong{font-weight:700}.coach-bot-result-banner--win{background:rgba(16,185,129,.16);border-color:rgba(52,211,153,.4)}.coach-bot-result-banner--loss{background:rgba(239,68,68,.16);border-color:hsla(0,91%,71%,.45)}.coach-bot-result-banner--draw{background:rgba(250,204,21,.14);border-color:rgba(250,204,21,.4)}.coach-bot-status{font-size:1rem;line-height:1.45;margin:0 0 10px}.coach-bot-dl{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px 12px;gap:8px 12px;margin:0;font-size:.92rem}.coach-bot-dl dt{margin:0;color:rgba(234,242,255,.65)}.coach-bot-dl dd{margin:0;font-weight:600}.coach-bot-summary-inner{margin-top:12px;padding:12px;background:rgba(8,15,32,.55)}.coach-bot-analyze-link{display:inline-flex;align-items:center;gap:4px;margin-top:10px;font-size:.85rem;font-weight:700;color:#818cf8;text-decoration:none;letter-spacing:.01em;transition:color .15s}.coach-bot-analyze-link:hover{color:#a5b4fc}.coach-bot-feed-title{margin-top:16px}.coach-bot-feed-placeholder{font-size:.9rem;line-height:1.5}.coach-bot-moves{margin:0;padding-left:1.1rem;font-size:.95rem;line-height:1.55;column-count:2;column-gap:24px}.coach-bot-mv-num{color:rgba(234,242,255,.55);margin-right:4px}@media (max-width:1100px){.coach-bot-grid{grid-template-columns:1fr;grid-template-rows:none}.coach-bot-board-card,.coach-bot-movelist,.coach-bot-setup,.coach-bot-side{grid-column:auto;grid-row:auto}}@media (max-width:768px){.coach-bot-page.page-shell{gap:12px;margin-left:0;margin-right:0;padding-left:max(12px,env(safe-area-inset-left,12px));padding-right:max(12px,env(safe-area-inset-right,12px))}.coach-bot-hero .panel-title{font-size:clamp(1.35rem,5.5vw,1.75rem)}.coach-bot-hero .coach-bot-lead{font-size:.92rem;line-height:1.5}.coach-bot-grid{display:flex;flex-direction:column;gap:12px}.coach-bot-board-card{order:-1}.coach-bot-setup{order:0}.coach-bot-side{order:1}.coach-bot-movelist{order:2}.coach-bot-board-header{flex-direction:column;align-items:stretch;gap:8px}.coach-bot-moves{column-count:1;max-height:min(280px,42vh);overflow-y:auto;-webkit-overflow-scrolling:touch;padding-right:4px}.coach-bot-side .card.coach-bot-summary-inner{padding:10px}.coach-bot-setup input[type=range]{width:100%;min-height:32px;touch-action:pan-y}.coach-bot-board-card.card,.coach-bot-movelist.card,.coach-bot-setup.card,.coach-bot-side.card{margin-bottom:0}}@supports not (height:100dvh){@media (max-width:767px){.variation-overlay-content{max-height:min(92vh,calc(100vh - 16px))}.home-page{min-height:calc(100vh - 88px)}}}.lesson-top-bar{display:flex;align-items:center;justify-content:space-between;padding:6px 2px;margin-bottom:4px}.lesson-top-bar-right{display:flex;align-items:center;gap:6px}.lesson-top-btn{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:8px;border:1px solid rgba(147,197,253,.15);background:rgba(15,25,46,.7);color:#94a3c0;font-size:13px;font-weight:500;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.lesson-top-btn:hover{background:rgba(30,50,90,.8);color:#c7d9f5;border-color:rgba(147,197,253,.28)}.lesson-top-btn--active{color:#4ade80;border-color:rgba(74,222,128,.35);background:rgba(74,222,128,.08)}.lesson-top-btn--active:hover{background:rgba(74,222,128,.15);border-color:rgba(74,222,128,.5)}.lesson-trainer-header{display:flex;align-items:center;gap:16px;padding:16px 20px;margin-bottom:0}.lesson-trainer-header-text{flex:1 1;min-width:0}.lesson-trainer-title{font-size:1.15rem;font-weight:700;color:#e2eaf5;margin:2px 0 4px;line-height:1.25}.lesson-trainer-sub{font-size:.82rem;color:#7a93b8;margin:0}.lesson-trainer-header-board{flex-shrink:0;display:grid;grid-template-columns:repeat(8,1fr);width:88px;height:88px;border-radius:6px;overflow:hidden;border:1px solid rgba(147,197,253,.12)}.lth-sq{background:#c8d8e4;display:flex;align-items:center;justify-content:center}.lth-sq--d{background:#5c7a9b}.lth-sq-piece{font-size:10px;line-height:1;-webkit-user-select:none;-moz-user-select:none;user-select:none}@media (max-width:430px){.lesson-trainer-header-board{width:72px;height:72px}.lesson-trainer-title{font-size:1rem}.hero-copy h1{font-size:clamp(1.25rem,7vw,1.65rem)}.eyebrow{font-size:11px;letter-spacing:1.1px}}.lesson-cel-backdrop{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:rgba(4,10,24,.72);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);opacity:0;transition:opacity .35s ease;cursor:pointer}.lesson-cel-backdrop--in{opacity:1}.lesson-cel-card{cursor:default;position:relative;width:min(420px,calc(100vw - 32px));background:linear-gradient(160deg,#0f1f3d,#0a1628);border:1px solid rgba(251,191,36,.22);border-radius:20px;padding:40px 32px 32px;display:flex;flex-direction:column;align-items:center;text-align:center;box-shadow:0 0 0 1px hsla(0,0%,100%,.04),0 24px 64px rgba(0,0,0,.55),0 0 40px rgba(251,191,36,.08);transform:translateY(0);animation:lesson-cel-rise .45s cubic-bezier(.34,1.56,.64,1) both}@keyframes lesson-cel-rise{0%{transform:translateY(28px) scale(.93);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.lesson-cel-icon{position:relative;margin-bottom:18px}.lesson-cel-icon svg{filter:drop-shadow(0 0 12px rgba(251,191,36,.55));animation:lesson-cel-pulse 2.2s ease-in-out infinite}@keyframes lesson-cel-pulse{0%,to{filter:drop-shadow(0 0 10px rgba(251,191,36,.5))}50%{filter:drop-shadow(0 0 22px rgba(251,191,36,.85))}}.lesson-cel-glow{position:absolute;inset:-12px;border-radius:50%;background:radial-gradient(circle,rgba(251,191,36,.14) 0,transparent 70%);pointer-events:none}.lesson-cel-headline{font-size:1.75rem;font-weight:800;color:#f0f6ff;margin:0 0 8px;letter-spacing:-.02em;line-height:1.15;text-shadow:0 2px 16px rgba(251,191,36,.18)}.lesson-cel-sub{font-size:.9rem;color:#7a93b8;margin:0 0 28px;line-height:1.5;max-width:300px}.lesson-cel-progress-track{width:100%;height:3px;background:rgba(147,197,253,.1);border-radius:99px;overflow:hidden;margin-bottom:8px}.lesson-cel-progress-bar{height:100%;background:linear-gradient(90deg,#fbbf24,#f59e0b);border-radius:99px;transition:width .1s linear}.lesson-cel-timer-label{font-size:.75rem;color:#475d7a;margin:0 0 24px;letter-spacing:.02em}.lesson-cel-actions{display:flex;flex-direction:column;gap:10px;width:100%}.lesson-cel-btn{width:100%;padding:12px 20px;border-radius:10px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .18s ease;display:flex;align-items:center;justify-content:center;gap:6px}.lesson-cel-btn--primary{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#0a1628;border:none;box-shadow:0 4px 18px rgba(251,191,36,.3)}.lesson-cel-btn--primary:hover{background:linear-gradient(135deg,#fcd34d,#fbbf24);box-shadow:0 6px 24px rgba(251,191,36,.45);transform:translateY(-1px)}.lesson-cel-btn--ghost{background:transparent;color:#475d7a;border:1px solid rgba(147,197,253,.12)}.lesson-cel-btn--ghost:hover{color:#94a3c0;border-color:rgba(147,197,253,.22);background:rgba(147,197,253,.04)}.lesson-cel-btn--engine{background:linear-gradient(135deg,#0891b2,#0e7490);color:#e0f7ff;font-weight:700;gap:8px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(34,211,238,.35)}.lesson-cel-btn--engine:hover{background:linear-gradient(135deg,#22d3ee,#0891b2);box-shadow:0 6px 24px rgba(34,211,238,.35);color:#fff}.btn-engine-explore{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;margin-top:8px;padding:7px 14px;font-size:.78rem;font-weight:600;color:#67e8f9;background:rgba(8,145,178,.12);border:1px solid rgba(34,211,238,.22);border-radius:8px;cursor:pointer;transition:background .18s,border-color .18s,color .18s;letter-spacing:.01em}.btn-engine-explore:hover{background:rgba(8,145,178,.25);border-color:rgba(34,211,238,.48);color:#a5f3fc}.engine-analysis-panel{display:flex;flex-direction:column;gap:10px}.engine-analysis-subtitle{font-size:.75rem!important;margin:-6px 0 2px}.engine-eval-card{display:flex;flex-direction:column;gap:6px;padding:8px 10px;border-radius:8px;border:1px solid hsla(0,0%,100%,.08);background:hsla(0,0%,100%,.03)}.engine-eval-header{display:flex;justify-content:space-between;align-items:center;font-size:.82rem;color:#cbd5e1}.engine-eval-header strong{color:#f8fafc;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.engine-eval-track{display:flex;width:100%;height:12px;border-radius:999px;overflow:hidden;border:1px solid hsla(0,0%,100%,.1)}.engine-eval-fill{height:100%;transition:width .22s ease}.engine-eval-fill--white{background:linear-gradient(90deg,#f8fafc,#e2e8f0)}.engine-eval-fill--black{background:linear-gradient(90deg,#334155,#0f172a)}.engine-eval-caption{font-size:.72rem!important;margin:0}.engine-lines-panel{display:flex;flex-direction:column;gap:6px;margin-top:4px}.engine-line-row{display:flex;align-items:flex-start;gap:10px;padding:8px 10px;border-radius:8px;background:hsla(0,0%,100%,.03);border:1px solid hsla(0,0%,100%,.06);font-size:.82rem}.engine-line-row--best{border-color:rgba(0,200,100,.28);background:rgba(0,200,100,.07)}.engine-line-row--second{border-color:rgba(56,148,255,.25);background:rgba(56,148,255,.06)}.engine-line-row--third{border-color:rgba(168,85,247,.22);background:rgba(168,85,247,.06)}.engine-line-eval{font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;min-width:44px;color:#e2e8f0;white-space:nowrap}.engine-line-row--best .engine-line-eval{color:#4ade80}.engine-line-row--second .engine-line-eval{color:#60a5fa}.engine-line-row--third .engine-line-eval{color:#c084fc}.engine-line-moves{color:#94a3b8;line-height:1.45;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.8rem;flex:1 1;word-break:break-word}.engine-loading-text{font-size:.78rem!important;color:#475d7a!important;text-align:center;padding:6px 0}.engine-clarification-card{display:flex;flex-direction:column;gap:8px;border-radius:8px;border:1px solid hsla(0,0%,100%,.08);background:hsla(0,0%,100%,.03);padding:10px}.engine-clarification-card--good{border-color:rgba(34,197,94,.3);background:rgba(34,197,94,.08)}.engine-clarification-card--bad{border-color:rgba(239,68,68,.3);background:rgba(239,68,68,.08)}.engine-clarification-head{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:.8rem;color:#cbd5e1}.engine-clarification-chip{font-size:.72rem;border-radius:999px;padding:3px 8px;border:1px solid rgba(148,163,184,.35);background:rgba(148,163,184,.12);color:#e2e8f0;font-weight:600}.lesson-ctrl-btn--engine-exit{color:#67e8f9;border-color:rgba(34,211,238,.28)}.lesson-ctrl-btn--engine-exit:hover{background:rgba(8,145,178,.2);color:#a5f3fc}.dashboard-shell,.profile-shell{width:min(1160px,100%);margin:0 auto;padding:clamp(14px,2vw,24px);display:grid;grid-gap:16px;gap:16px}.dashboard-hero h1{margin:4px 0 10px;font-size:clamp(1.4rem,2.5vw,2rem);color:#eaf1ff}.profile-title{margin:4px 0 8px;font-size:clamp(1.25rem,2.1vw,1.7rem);color:#ebf3ff}.dashboard-hero-actions{margin-top:14px;display:flex;flex-wrap:wrap;gap:10px}.dashboard-stats-grid,.profile-stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px}.dashboard-stat-card h2{margin:6px 0 0;color:#eef5ff;font-size:clamp(1.15rem,2.2vw,1.75rem)}.dashboard-stat-label{margin:0;color:#89a2c7;font-size:.82rem;text-transform:uppercase;letter-spacing:.06em}.dashboard-content-grid{display:grid;grid-template-columns:1.2fr 1fr;grid-gap:12px;gap:12px}.dashboard-quick-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.profile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px}.profile-checkbox-row{display:flex;align-items:center;gap:10px;color:#b8c6dc;font-size:.92rem}.profile-checkbox-row input{accent-color:#60a5fa}.feedback-success{margin:0;color:#9ef2b5}@media (max-width:1020px){.dashboard-stats-grid,.profile-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-grid{grid-template-columns:1fr}}@media (max-width:780px){.dashboard-content-grid,.dashboard-quick-actions{grid-template-columns:1fr}}.coach-play-btn{background:linear-gradient(135deg,rgba(56,189,248,.18),rgba(99,102,241,.18));color:rgba(186,230,253,.95);border:1px solid rgba(56,189,248,.28);border-radius:8px;padding:7px 20px;font-size:.82rem;font-weight:600;letter-spacing:.03em;cursor:pointer;transition:background .15s,border-color .15s}.coach-play-btn:hover{background:linear-gradient(135deg,rgba(56,189,248,.28),rgba(99,102,241,.28));border-color:rgba(56,189,248,.5)}@media (min-width:768px){.coach-game-status-bar{display:none}}.coach-game-status-bar{display:flex;align-items:center;gap:8px;padding:6px 10px;background:rgba(15,23,42,.7);border:1px solid rgba(56,189,248,.2);border-radius:8px;margin:4px 0;font-size:.77rem;flex-wrap:wrap}.coach-game-status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#22c55e;box-shadow:0 0 6px #22c55e;flex-shrink:0}.coach-game-status-elo{display:flex;align-items:center;gap:5px;color:rgba(148,163,184,.9);font-weight:500}.coach-game-thinking{color:rgba(250,204,21,.8);font-style:italic;font-size:.74rem}.coach-game-speech{flex:1 1;color:rgba(186,230,253,.88);font-size:.74rem;line-height:1.35}.coach-game-resign-btn{margin-left:auto;background:transparent;color:hsla(0,94%,82%,.9);border:1.5px solid rgba(239,68,68,.45);border-radius:6px;padding:4px 12px;font-size:12px;font-weight:600;letter-spacing:.01em;cursor:pointer;transition:background .15s,border-color .15s,color .15s;flex-shrink:0}.coach-game-resign-btn:hover:not(:disabled){background:rgba(239,68,68,.12);border-color:rgba(239,68,68,.7);color:#fca5a5}.coach-game-resign-btn:disabled{opacity:.4;cursor:not-allowed}.coach-analyzing-banner{position:absolute;bottom:0;left:0;right:0;height:54px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,rgba(6,18,52,.94),rgba(10,35,95,.92));border-top:1px solid rgba(125,211,252,.28);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);overflow:hidden;pointer-events:none;z-index:20;animation:coach-banner-in .35s ease forwards}.coach-analyzing-banner--fading{animation:coach-banner-out .6s ease forwards}@keyframes coach-banner-in{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes coach-banner-out{to{opacity:0;transform:translateY(6px)}}.coach-analyzing-banner__scan{position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(125,211,252,.1) 50%,transparent);animation:coach-banner-scan 1.8s linear infinite}@keyframes coach-banner-scan{0%{transform:translateX(-100%)}to{transform:translateX(200%)}}.coach-analyzing-banner__content{position:relative;display:flex;align-items:center;gap:10px;z-index:1}.coach-analyzing-banner__spinner{width:20px;height:20px;color:rgba(125,211,252,.9);animation:coach-banner-spin 1.1s linear infinite;flex-shrink:0}@keyframes coach-banner-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.coach-analyzing-banner__text{font-size:.82rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:rgba(186,230,253,.92)}.coach-play-btn-wrap{display:flex;justify-content:center}.coach-play-btn-mobile-wrap{display:none}.coach-game-modal-backdrop{position:fixed;inset:0;background:rgba(2,6,18,.85);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.coach-game-modal{background:linear-gradient(170deg,#0d1b35,#070f22);border:1px solid rgba(56,189,248,.18);border-radius:20px;padding:20px 22px 18px;max-width:460px;width:100%;box-shadow:0 32px 80px rgba(0,0,0,.65),inset 0 0 0 1px rgba(56,189,248,.06)}.coach-game-modal-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px}.coach-game-modal-icon{font-size:2rem;line-height:1;flex-shrink:0;filter:drop-shadow(0 0 10px rgba(56,189,248,.4))}.coach-game-modal-title{font-size:1.35rem;font-weight:800;color:#f1f5f9;margin:0 0 4px;letter-spacing:-.01em}.coach-game-modal-subtitle{font-size:.78rem;color:rgba(148,163,184,.65);margin:0;line-height:1.5}.coach-game-modal-section{margin-bottom:14px}.coach-game-modal-label{display:block;font-size:.65rem;text-transform:uppercase;letter-spacing:.1em;color:rgba(148,163,184,.45);margin-bottom:7px;font-weight:600}.coach-game-elo-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:6px;gap:6px}.coach-game-elo-card{display:flex;flex-direction:column;align-items:center;gap:1px;padding:7px 4px;border-radius:10px;border:1px solid rgba(56,189,248,.12);background:rgba(15,23,42,.7);cursor:pointer;transition:all .15s}.coach-game-elo-card:hover{border-color:rgba(56,189,248,.35);background:rgba(56,189,248,.07)}.coach-game-elo-card.active{border-color:rgba(56,189,248,.6);background:rgba(56,189,248,.12);box-shadow:0 0 12px rgba(56,189,248,.12)}.coach-game-elo-icon{font-size:.95rem;line-height:1}.coach-game-elo-rating{font-size:.88rem;font-weight:800;color:#e2e8f0;line-height:1.2}.coach-game-elo-label{font-size:.56rem;font-weight:500;color:rgba(148,163,184,.6);text-transform:uppercase;letter-spacing:.05em}.coach-game-elo-card.active .coach-game-elo-rating{color:#7dd3fc}.coach-game-elo-card.active .coach-game-elo-label{color:rgba(125,211,252,.7)}.coach-game-elo-card--gm{grid-column:1/-1;flex-direction:row;gap:8px;padding:8px 14px;border-color:rgba(167,139,250,.25);background:linear-gradient(135deg,rgba(167,139,250,.06),rgba(15,23,42,.7));justify-content:center}.coach-game-elo-card--gm .coach-game-elo-icon{font-size:.95rem}.coach-game-elo-card--gm .coach-game-elo-rating{font-size:.9rem;color:#c4b5fd}.coach-game-elo-card--gm .coach-game-elo-label{font-size:.64rem;color:rgba(196,181,253,.65);text-transform:uppercase;letter-spacing:.08em}.coach-game-elo-card--gm:hover{border-color:rgba(167,139,250,.5);background:linear-gradient(135deg,rgba(167,139,250,.12),rgba(15,23,42,.7))}.coach-game-elo-card--gm.active{border-color:rgba(167,139,250,.7);background:linear-gradient(135deg,rgba(167,139,250,.15),rgba(99,102,241,.08));box-shadow:0 0 20px rgba(167,139,250,.15)}.coach-game-elo-card--gm.active .coach-game-elo-rating{color:#ddd6fe}.coach-game-elo-card--gm.active .coach-game-elo-label{color:rgba(221,214,254,.7)}.coach-game-color-toggle{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.coach-game-color-btn{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:8px;padding:10px;border-radius:10px;border:1.5px solid rgba(56,189,248,.12);background:rgba(15,23,42,.7);cursor:pointer;transition:all .15s}.coach-game-color-btn:hover{border-color:rgba(56,189,248,.35);background:rgba(56,189,248,.07)}.coach-game-color-btn.active{box-shadow:0 0 20px rgba(56,189,248,.12)}.coach-game-color-btn--white.active{border-color:rgba(241,245,249,.55);background:rgba(241,245,249,.06)}.coach-game-color-btn--black.active{border-color:rgba(56,189,248,.55);background:rgba(56,189,248,.09)}.coach-game-color-piece{font-size:1.35rem;line-height:1;flex-shrink:0}.coach-game-color-name{font-size:.82rem;font-weight:700;color:#e2e8f0}.coach-game-color-desc{display:none}.coach-game-color-btn--white.active .coach-game-color-piece{filter:drop-shadow(0 0 6px rgba(255,255,255,.5))}.coach-game-color-btn--black.active .coach-game-color-piece{filter:drop-shadow(0 0 6px rgba(56,189,248,.5))}.coach-game-modal-actions{display:flex;flex-direction:column;gap:6px;margin-top:16px}.coach-game-start-btn{width:100%;padding:11px 0;border-radius:10px;font-size:.9rem;font-weight:800;letter-spacing:.01em;border:none;background:linear-gradient(135deg,#0ea5e9,#6366f1);color:#fff;cursor:pointer;transition:all .15s;box-shadow:0 4px 20px rgba(14,165,233,.3);display:flex;align-items:center;justify-content:center;gap:8px}.coach-game-start-btn:hover{transform:translateY(-1px);box-shadow:0 6px 28px rgba(14,165,233,.4)}.coach-game-start-arrow{font-size:1.1rem;transition:transform .15s}.coach-game-start-btn:hover .coach-game-start-arrow{transform:translateX(3px)}.coach-game-cancel-btn{width:100%;padding:9px 0;border-radius:10px;font-size:.82rem;font-weight:500;border:1px solid rgba(100,116,139,.2);background:transparent;color:rgba(148,163,184,.5);cursor:pointer;transition:all .12s}.coach-game-cancel-btn:hover{border-color:rgba(100,116,139,.4);color:rgba(148,163,184,.8)}.coach-game-recap-modal{max-width:460px}.coach-game-recap-loading{display:flex;align-items:center;gap:12px;color:rgba(148,163,184,.7);font-size:.85rem;padding:20px 0;justify-content:center}@keyframes coach-spin{to{transform:rotate(1turn)}}.coach-game-recap-spinner{width:18px;height:18px;border:2px solid rgba(56,189,248,.3);border-top-color:rgba(56,189,248,.9);border-radius:50%;animation:coach-spin .8s linear infinite}.coach-game-recap-result{text-align:center;margin-bottom:14px}.coach-game-recap-badge{display:inline-block;padding:5px 18px;border-radius:999px;font-size:.95rem;font-weight:700}.coach-game-recap-badge--win{background:rgba(34,197,94,.18);color:rgba(134,239,172,.95);border:1px solid rgba(34,197,94,.3)}.coach-game-recap-badge--loss{background:rgba(239,68,68,.15);color:hsla(0,94%,82%,.9);border:1px solid rgba(239,68,68,.25)}.coach-game-recap-badge--draw{background:rgba(148,163,184,.12);color:rgba(203,213,225,.85);border:1px solid rgba(148,163,184,.2)}.coach-game-recap-summary{font-size:.85rem;color:rgba(203,213,225,.88);line-height:1.55;margin:0 0 14px}.coach-game-recap-key-moment{background:rgba(56,189,248,.07);border:1px solid rgba(56,189,248,.15);border-radius:8px;padding:10px 14px;margin-bottom:14px}.coach-game-recap-key-label{font-size:.68rem;text-transform:uppercase;letter-spacing:.07em;color:rgba(56,189,248,.6);display:block;margin-bottom:5px}.coach-game-recap-key-text{font-size:.82rem;color:rgba(186,230,253,.85);line-height:1.45;margin:0}.coach-game-recap-encouragement{font-size:.8rem;color:rgba(148,163,184,.65);font-style:italic;margin:0 0 4px;line-height:1.45}.puzzles-active-pill{background:rgba(56,189,248,.15);color:#38bdf8;border:1px solid rgba(56,189,248,.3);font-size:.78rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;border-radius:99px;padding:4px 12px}a.puzzles-start-btn{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(135deg,#3b82f6,#6366f1);color:#fff;font-weight:700;font-size:1.05rem;border-radius:10px;padding:14px 32px;text-decoration:none;cursor:pointer;opacity:1;transition:opacity .15s,transform .12s;box-shadow:0 4px 16px rgba(99,102,241,.35)}a.puzzles-start-btn:hover{opacity:.9;transform:translateY(-2px)}@media (max-width:767px){.coach-transport button{width:44px;height:44px}.coach-transport-flip{height:44px!important}.coach-transport{gap:6px;padding:8px 10px;flex-wrap:wrap;justify-content:center}.game-review-nav-icon-btn{width:44px;min-height:44px;padding:0 2px}.coach-move-cell,.lesson-top-btn{min-height:44px;padding-top:10px;padding-bottom:10px}.coach-quick-panel-cancel,.puzzle-cta-btn{min-height:44px}.coach-eval-bar{width:26px;min-width:26px;padding-left:6px}.coach-board-row{gap:4px}.cc-analysis-eval-bar{width:20px;min-width:20px}.cc-analysis-eval-bar-track{width:10px;min-height:120px}.cc-analysis-board-row{gap:6px}.session-flow.card{padding:14px}.session-flow-head h2{font-size:clamp(1.15rem,5.5vw,1.5rem)}.session-step{min-height:110px;padding:12px}.feature-card:hover{transform:none}.profile-header-row{flex-wrap:wrap;gap:12px;align-items:center}.coach-bot-board-wrap{max-width:100%}.coach-commentary{max-height:min(42vh,320px)}.lesson-coach-note{max-height:min(44vh,300px)}.game-review-moves-column .game-review-movelist-scroll{max-height:min(30dvh,300px)}.board-wrap{padding:8px;overflow:hidden}.conversation-log{max-height:min(280px,38vh)}.bot-move-list,.coach-review-card{max-height:none}.bot-text-action{min-height:44px;display:inline-flex;align-items:center}.bot-start-btn{min-height:44px}.bot-board-footer .bot-status-bar{flex-basis:100%;order:2}.bot-board-footer .bot-inline-actions{margin-left:0;order:1}.bot-setup-row{padding:12px}}@media (max-width:359px){.dashboard-quick-actions,.dashboard-stats-grid,.profile-stats-grid{grid-template-columns:1fr}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions>*{text-align:center;justify-content:center;width:100%}.card{padding:12px}.session-step{min-height:95px}}@media (max-width:767px){.app-main:has(.coach-layout){height:auto;max-height:none;overflow:visible;padding:0}.app-main:has(.coach-layout)>.topbar{position:relative;top:0;flex-shrink:0;border-radius:0;border-left:none;border-right:none;border-top:none;margin-bottom:0;padding:10px 14px}.app-main:has(.coach-layout)>.app-main-body{flex:1 1 auto;overflow:visible;display:flex;flex-direction:column}.app-main-body .page-shell:has(.coach-layout){display:flex!important;flex-direction:column;flex:1 1 auto;overflow:visible;gap:0;margin:0;padding:0}.page-shell.two-col.coach-layout{display:flex!important;flex-direction:column;flex:1 1 auto;overflow:visible;gap:0;margin:0;padding:0}.coach-board-section.card{flex-shrink:0;overflow:visible;border-radius:0;border-left:none;border-right:none;border-top:none;margin:0;padding:6px 10px 12px}.coach-board-section>.panel-title{display:none}.coach-board-split__commentary{max-height:none;overflow-y:visible;padding-bottom:8px}.coach-board-split--playing .coach-board-split__commentary,.coach-play-btn-wrap{display:none}.coach-play-btn-mobile-wrap{display:flex;justify-content:center;padding:10px 0 4px}.coach-game-status-elo{display:none}.coach-game-status-bar{padding:8px 12px;min-height:40px;align-items:flex-start;gap:8px 6px}.coach-game-speech{font-size:.84rem;line-height:1.5;color:rgba(224,242,254,.97)}.card.coach-right-panel{flex-shrink:0;overflow:visible;border-radius:0;border-left:none;border-right:none;border-bottom:none;margin:0;padding:10px 12px max(24px,env(safe-area-inset-bottom,0px));max-height:none!important}}@media (max-width:767px){.app-main:has(.analyze-viewport){height:auto;max-height:none;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:0}.app-main:has(.analyze-viewport)>.topbar{position:relative;top:0;flex-shrink:0;border-radius:0;border-left:none;border-right:none;border-top:none;margin-bottom:0;padding:10px 14px}.app-main:has(.analyze-viewport)>.app-main-body{flex:1 1 auto;overflow:visible;display:flex;flex-direction:column}.analyze-viewport.page-shell{flex:0 0 auto;overflow:visible;display:flex;flex-direction:column;gap:4px;padding:4px 0;margin:0}.analyze-viewport .analyze-tab-bar{flex-shrink:0;border-radius:0;border-left:none;border-right:none;margin:0;padding:8px 12px}.analyze-viewport>.two-col,.analyze-viewport>:last-child{flex:0 0 auto!important;overflow:visible!important}.analyze-viewport .analyze-premium-main{flex:0 0 auto;overflow:visible;display:flex!important;flex-direction:column;align-items:stretch;row-gap:4px;column-gap:0}.analyze-viewport .analyze-premium-col--board{flex-shrink:0;overflow:visible;padding:0;-webkit-padding-end:0!important;padding-inline-end:0!important;width:100%;align-items:stretch}.analyze-viewport .analyze-premium-glass{max-height:none!important;border-radius:0;border-left:none;border-right:none;width:calc(100% + 20px);margin-inline:-10px;padding:8px 14px max(20px,env(safe-area-inset-bottom,0px))}.analyze-viewport .analyze-premium-glass,.analyze-viewport .analyze-premium-glass-body{flex:0 0 auto;min-height:0!important;overflow:visible}.analyze-viewport .analyze-premium-moves-scroll{overflow:visible;max-height:none;min-height:0!important}.analyze-viewport .cc-analysis-layout{flex:1 1!important;min-height:0;overflow:hidden;flex-direction:column!important;align-items:stretch;flex-wrap:nowrap!important}.analyze-viewport .cc-analysis-board-column{flex-shrink:0}.analyze-viewport .cc-analysis-glass{flex:1 1;min-height:0;max-height:none!important;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;border-radius:0}}@media (max-width:480px){.lesson-trainer-header-board{display:none}.lesson-ctrl-btn{width:40px;height:40px;min-width:40px}.lesson-ctrl-btn--next{width:44px;height:44px;min-width:44px}.lesson-controls-bar{gap:3px}.lesson-step-panel{padding:8px 10px 10px}.engine-analysis-panel{gap:8px}.engine-line-row{padding:6px 8px;gap:8px}.engine-eval-card{padding:6px 8px}}