:root{--bg:#020617;--card:#0f172ae6;--card-strong:#0f172afa;--muted:#94a3b8;--text:#f8fafc;--text-soft:#cbd5e1;--border:#94a3b829;--blue:#2563eb;--blue-light:#60a5fa;--green:#22c55e;--amber:#f59e0b;--red:#ef4444;--radius:22px;--shadow:0 22px 70px #00000059;color:var(--text);background:var(--bg);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}html{scroll-behavior:smooth}body{min-width:320px;min-height:100vh;color:var(--text);background:radial-gradient(circle at 0 0,#2563eb38,#0000 34%),radial-gradient(circle at 100% 0,#0ea5e91f,#0000 30%),#020617;margin:0;overflow-x:hidden}button,input,textarea,a{font:inherit}button,a{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a{color:inherit;text-decoration:none}img,svg,canvas,table{max-width:100%}.page{width:100%;min-height:100vh;overflow-x:hidden}.container,.landingWrap{width:min(100% - 32px,1180px);margin:0 auto}.appShell{padding:42px 0 80px}.card,.heroCard,.statCard,.quickNavCard,.collapsibleCard,.premiumMiniCard,.landingPreviewCard,.landingFeatureCard,.landingPriceCard,.landingInfoCard,.landingStepCard,.aboutCard,.ratingGuideCard{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 18px 45px #00000038}.card,.heroCard{padding:24px}.primaryBtn,.secondaryBtn,.secondaryButton,.ghostButton,.landingPrimaryBtn,.landingSecondaryBtn{text-align:center;border-radius:16px;justify-content:center;align-items:center;min-height:48px;padding:12px 18px;font-weight:900;transition:transform .15s,border-color .15s,background .15s,opacity .15s;display:inline-flex}.primaryBtn,.landingPrimaryBtn{color:#fff;background:linear-gradient(135deg,#2563eb,#1d4ed8);border:0;box-shadow:0 16px 32px #2563eb47}.secondaryBtn,.landingSecondaryBtn{color:#fff;border:1px solid var(--border);background:#1e293bf2}.secondaryButton{color:#f8fafc;background:#0f172ae6;border:1px solid #94a3b83d;border-radius:999px}.ghostButton{color:#cbd5e1;background:0 0;border:1px solid #94a3b83d;border-radius:999px}.primaryBtn:hover,.secondaryBtn:hover,.secondaryButton:hover,.ghostButton:hover,.landingPrimaryBtn:hover,.landingSecondaryBtn:hover{border-color:#60a5fa8c;transform:translateY(-1px)}.secondaryButton:disabled,.ghostButton:disabled,.primaryBtn:disabled,.secondaryBtn:disabled{transform:none}.landingWrap{padding-top:24px}.landingHero{border:1px solid var(--border);box-shadow:var(--shadow);background:linear-gradient(135deg,#0f172af5,#020617f5),radial-gradient(circle at 100% 0,#2563eb47,#0000 36%);border-radius:32px;margin-bottom:28px;padding:28px}.landingNav{justify-content:space-between;align-items:center;gap:22px;margin-bottom:56px;display:flex}.landingBrand{align-items:center;gap:12px;display:flex}.landingBrandIcon{background:linear-gradient(135deg,#2563eb,#38bdf8);border-radius:16px;place-items:center;width:48px;min-width:48px;height:48px;font-size:1.5rem;display:grid;box-shadow:0 14px 30px #2563eb59}.landingBrandTitle{margin:0;font-size:1.05rem;font-weight:900}.landingBrandSubtitle{color:var(--muted);margin:2px 0 0;font-size:.85rem}.landingNavLinks{align-items:center;gap:16px;display:flex}.landingNavLinks a{color:#cbd5e1;font-size:.92rem;font-weight:800}.landingNavLinks a:hover{color:#fff}.landingHeroGrid{grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);align-items:center;gap:28px;display:grid}.landingPill,.landingEyebrow,.landingMiniLabel,.eyebrow,.premiumLabel{color:#bfdbfe;background:#2563eb26;border:1px solid #60a5fa38;border-radius:999px;align-items:center;gap:8px;width:fit-content;margin:0 0 14px;padding:7px 11px;font-size:.78rem;font-weight:900;display:inline-flex}.landingMiniLabel{color:var(--muted);background:0 0;border:0;margin-bottom:8px;padding:0}.landingHeroCopy h1{letter-spacing:-.07em;max-width:720px;margin:0 0 20px;font-size:clamp(2.6rem,6vw,5.2rem);line-height:.95}.landingSubtext{max-width:660px;color:var(--text-soft);margin:0;font-size:1.08rem;line-height:1.65}.landingHeroActions{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.landingStats{grid-template-columns:repeat(3,1fr);gap:14px;margin-top:28px;display:grid}.landingStatCard{border:1px solid var(--border);background:#1e293bbf;border-radius:20px;padding:18px}.landingStatCard strong{font-size:1.25rem;line-height:1.1;display:block}.landingStatCard span{color:var(--muted);margin-top:4px;font-size:.9rem;display:block}.landingPreviewCard{gap:16px;padding:22px;display:grid}.landingPreviewTop,.landingPriceTop{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.landingPreviewCard h3,.landingPreviewCard h4,.landingInfoCard h4,.landingFeatureCard h3,.landingPriceCard h3{margin:0 0 8px}.landingPreviewCard p,.landingInfoCard p,.landingFeatureCard p,.landingPriceCard p{color:var(--text-soft);line-height:1.5}.landingPreviewGrid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.landingInfoCard{box-shadow:none;background:#0206176b;padding:16px}.landingFitBadge,.landingPriceBadge,.chip,.sectionBadge,.verdict{white-space:nowrap;border-radius:999px;align-items:center;width:fit-content;padding:7px 10px;font-size:.78rem;font-weight:900;display:inline-flex}.landingFitBadge,.landingPriceBadge,.chip,.sectionBadge{color:#dbeafe;background:#2563eb2e;border:1px solid #60a5fa38}.landingVerdictList{gap:10px;margin-top:12px;display:grid}.landingVerdictRow{background:#1e293bc7;border:1px solid #94a3b824;border-radius:14px;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:12px 14px;display:grid}.landingVerdictRow strong{margin-bottom:3px;display:block}.landingVerdictRow span{color:var(--muted);font-size:.86rem}.verdict.keep{color:#bbf7d0;background:#22c55e26;border:1px solid #22c55e47}.verdict.improve{color:#fde68a;background:#f59e0b26;border:1px solid #f59e0b47}.verdict.avoid{color:#fecaca;background:#ef444426;border:1px solid #ef444447}.verdict.test{color:#dbeafe;background:#60a5fa24;border:1px solid #60a5fa3d}.landingContentSection,.aboutSection,.ratingGuideSection{margin-bottom:28px}.landingSectionHeading{max-width:760px;margin-bottom:18px}.landingSectionHeading h2{letter-spacing:-.055em;margin:0 0 14px;font-size:clamp(2rem,4vw,3.4rem);line-height:1}.landingSectionHeading p{color:var(--text-soft);line-height:1.6}.landingFeatureGrid,.landingPricingGrid{grid-template-columns:repeat(2,1fr);gap:18px;display:grid}.landingFeatureCard{align-items:flex-start;gap:14px;padding:20px;display:flex}.landingFeatureIcon{background:#2563eb2e;border:1px solid #60a5fa38;border-radius:16px;flex:0 0 46px;place-items:center;width:46px;height:46px;font-size:1.35rem;display:grid}.landingStepsList{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.landingStepCard{min-height:190px;padding:20px}.landingStepNumber{color:#eff6ff;background:#2563eb38;border-radius:18px;place-items:center;width:54px;height:54px;margin-bottom:20px;font-size:1.25rem;font-weight:900;display:grid}.landingStepCard h3{margin:0 0 8px}.landingStepCard p{color:var(--text-soft);margin:0}.landingPriceCard{padding:24px}.landingPriceCardPremium{background:linear-gradient(#2563eb26,#0f172af0);border-color:#60a5fa52}.landingPriceCard ul{color:var(--text-soft);margin:18px 0 0;padding-left:20px}.landingPriceCard li{margin-bottom:10px}.aboutGrid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.aboutCard{padding:20px}.aboutCard h3{margin:0 0 10px}.aboutCard p{color:var(--text-soft);margin:0;line-height:1.55}.ratingGuideGrid{grid-template-columns:repeat(5,1fr);gap:14px;display:grid}.ratingGuideCard{padding:18px}.ratingGuideTop h3{margin:0;font-size:1.35rem}.ratingGuideTop p{color:var(--muted);margin:5px 0 0;font-weight:800}.ratingGuideDescription{color:var(--text-soft);margin:14px 0;font-size:.92rem;line-height:1.5}.ratingOpeningColumns{gap:14px;display:grid}.ratingOpeningColumns h4{color:#bfdbfe;margin:0 0 8px;font-size:.9rem}.ratingOpeningList,.supportedOpeningGrid{flex-wrap:wrap;gap:7px;display:flex}.ratingOpeningBtn,.supportedOpeningGrid span{color:#dbeafe;text-align:left;background:#2563eb29;border:1px solid #60a5fa38;border-radius:999px;padding:7px 9px;font-size:.78rem;font-weight:850;display:inline-flex}.ratingOpeningBtn:hover,.landingOpeningBtn:hover,.inlineOpeningBtn:hover{background:#2563eb40;border-color:#60a5fa8c}.mobileSectionRevealBtn{display:none}.landingOpeningBtn,.inlineOpeningBtn{color:#fff;text-align:left;background:0 0;border:1px solid #0000;padding:0;font-weight:900}.landingOpeningBtn{border-radius:10px;font-size:1rem}.inlineOpeningBtn{border-radius:8px}.heroTop{justify-content:space-between;gap:18px;display:flex}.heroTitleWrap h1{letter-spacing:-.06em;margin:0 0 14px;font-size:clamp(2.1rem,4vw,4rem);line-height:1}.subtext{max-width:780px;color:var(--text-soft);line-height:1.6}.searchRow,.topBar{grid-template-columns:minmax(220px,1fr) auto;align-items:center;gap:12px;margin-top:22px;display:grid}.input{border:1px solid var(--border);color:#fff;background:#020617a6;border-radius:16px;outline:none;min-height:48px;padding:12px 14px}.input:focus{border-color:#60a5faa6}.appActionPanel{gap:.75rem;display:grid}.appActionButtons{flex-wrap:wrap;gap:.65rem;width:100%;display:flex}.appActionButtons .primaryBtn,.appActionButtons .secondaryButton,.appActionButtons .ghostButton{justify-content:center;align-items:center;min-height:46px;display:inline-flex!important}.filtersRow{margin-top:16px}.checkboxRow{color:var(--text-soft);align-items:center;gap:8px;display:inline-flex}.statusMessage,.successMessage{border-radius:14px;margin-top:.75rem;padding:.75rem .9rem;font-size:.95rem;line-height:1.4}.statusMessage{color:#dbeafe;background:#2563eb24;border:1px solid #60a5fa38}.successMessage{color:#dcfce7;background:#22c55e1f;border:1px solid #22c55e38}.placeholderGrid,.grid3{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.smallCard h3{margin-top:0}.smallCard p{color:var(--text-soft);margin-bottom:0}.statsGrid{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px;display:grid}.statCard{gap:8px;padding:24px;display:grid}.statLabel{color:var(--muted);font-weight:800}.statValue{word-break:break-word;font-size:2rem;font-weight:950;line-height:1}.smallStatValue{font-size:1rem}.quickNavCard{margin-bottom:18px}.quickNavCard h2{margin:0 0 16px;font-size:2rem}.quickNavGrid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.quickNavBtn{border-radius:14px;min-height:52px;padding:12px;font-weight:900}.collapsibleCard{margin-bottom:14px}.sectionToggle{color:#fff;background:0 0;border:0;justify-content:space-between;align-items:center;width:100%;padding:0;display:flex}.sectionToggleLeft{align-items:center;gap:10px;min-width:0;display:flex}.sectionToggle h2{margin:0;font-size:1.45rem}.sectionArrow{color:var(--blue-light);font-size:1.2rem}.sectionBody{padding-top:18px}.twoCol,.analysisGrid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.chips{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.profileSummary{color:var(--text-soft);line-height:1.6}.list,.gamePickerList{gap:10px;display:grid}.listItem,.gamePickerButton{color:#fff;background:#1e293bc7;border:1px solid #94a3b824;border-radius:15px;padding:13px 14px}.listItem{justify-content:space-between;align-items:center;gap:14px;display:flex}.smallText{color:var(--muted);font-size:.86rem}.rightStat{text-align:right;justify-items:end;gap:5px;display:grid}.premiumMiniCard{background:#2563eb1a;padding:18px}.premiumCard{background:radial-gradient(circle at 100% 0,#facc151f,#0000 36%),#0f172ae6;border:1px solid #facc1538;margin-bottom:18px}.premiumHeader{flex-direction:column;gap:.4rem;display:flex}.premiumBadge{color:#fef9c3;background:#facc1524;border:1px solid #facc153d;border-radius:999px;width:fit-content;padding:.35rem .65rem;font-size:.8rem;font-weight:800}.lockedFeatureGrid,.openingExplainGrid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.9rem;margin-top:1rem;display:grid}.lockedFeature,.openingExplainCard{background:#0206176b;border:1px solid #94a3b824;border-radius:18px;padding:1rem}.recommendationDetails{margin-top:1.5rem}.openingExplainCard h4{color:#f8fafc;margin:0 0 .5rem}.openingExplainCard p{color:#cbd5e1;margin:.45rem 0;line-height:1.45}.openingExplainCard span{color:#bfdbfe;background:#2563eb24;border:1px solid #60a5fa38;border-radius:999px;margin-top:.5rem;padding:.3rem .55rem;font-size:.8rem;font-weight:700;display:inline-flex}.explainPracticeBtn{margin-top:.75rem}.chartList{gap:12px;display:grid}.chartRow{grid-template-columns:180px 1fr 60px;align-items:center;gap:12px;display:grid}.openingChartPracticeLink{width:100%;color:inherit;text-align:left;background:0 0;border:1px solid #0000;border-radius:14px;padding:8px}.openingChartPracticeLink:hover{background:#2563eb1f;border-color:#60a5fa8c}.chartLabel{font-weight:800}.chartBarWrap{background:#1e293bf2;border-radius:999px;height:12px;overflow:hidden}.chartBar{background:linear-gradient(90deg,#2563eb,#38bdf8);border-radius:999px;height:100%}.chartValue{text-align:right;color:var(--text-soft);font-weight:900}.spacerTop{margin-top:18px}th,td{border-bottom:1px solid var(--border);text-align:left;padding:13px 10px}th{color:var(--muted);font-size:.85rem}.gamePickerButton{text-align:left;width:100%}.gamePickerButtonActive{background:#2563eb2e;border-color:#60a5fa99}.gamePickerTop{justify-content:space-between;gap:8px;margin-bottom:5px;display:flex}.boardMeta{color:var(--text-soft);flex-wrap:wrap;gap:10px 16px;margin-bottom:14px;display:flex}.tableOpeningBtn{color:#bfdbfe;text-align:left;background:0 0;border:1px solid #0000;border-radius:10px;padding:7px 9px;font-weight:900}.tableOpeningBtn:hover,.openingPracticeLink:hover{background:#2563eb2e;border-color:#60a5fa8c}.openingPracticeLink{cursor:pointer;text-align:left;width:100%}.loadingCard{background:radial-gradient(circle at top right, #2563eb29, transparent 34%), var(--card);border-color:#60a5fa57;align-items:center;gap:16px;margin-bottom:18px;display:flex}.loadingCard h3{margin:0 0 4px}.loadingCard p{color:var(--text-soft);margin:0}.loadingSpinner{border:4px solid #60a5fa2e;border-top-color:#60a5fa;border-radius:999px;flex:0 0 42px;width:42px;height:42px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.emptyState{background:#1e293ba6;border:1px solid #94a3b824;border-radius:16px;padding:16px}.emptyState h3{margin:0 0 6px}.emptyState p{color:var(--text-soft);margin:0;line-height:1.5}.feedbackCard{margin-top:18px}.feedbackCard textarea,.feedbackCard input{box-sizing:border-box;color:#f8fafc;width:100%;font:inherit;background:#02061780;border:1px solid #94a3b838;border-radius:16px;outline:none;margin-top:.7rem;padding:.85rem 1rem}.feedbackCard textarea:focus,.feedbackCard input:focus{border-color:#60a5faa6}.feedbackCard button{margin-top:.8rem}.siteFooter{border:1px solid var(--border);background:#0f172ab8;border-radius:24px;justify-content:space-between;align-items:flex-start;gap:24px;margin:10px 0 34px;padding:24px;display:flex}.footerBrand{margin-bottom:14px}.footerDisclaimer{max-width:760px;color:var(--muted);margin:0;font-size:.92rem;line-height:1.55}.footerLinks{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.footerLinks a{color:#dbeafe;background:#2563eb29;border:1px solid #60a5fa38;border-radius:999px;padding:9px 12px;font-size:.85rem;font-weight:850}.trainingPlanList{gap:14px;display:grid}.trainingPlanItem{background:#1e293bc7;border:1px solid #94a3b824;border-radius:18px;grid-template-columns:48px 1fr;gap:14px;padding:16px;display:grid}.trainingStepNumber{color:#dbeafe;background:#2563eb3d;border-radius:14px;place-items:center;width:42px;height:42px;font-weight:950;display:grid}.trainingStepContent h3{margin:0 0 8px}.trainingStepContent p{color:var(--text-soft);margin:0;line-height:1.55}.trainingPracticeBtn{width:fit-content;min-height:42px;margin-top:12px;padding:9px 14px}.replayCard{overflow:hidden}.replayLayout,.practiceLayout{grid-template-columns:minmax(260px,420px) minmax(260px,1fr);align-items:start;gap:18px;display:grid}.replayHeader,.practiceTop{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px;display:flex}.replayTitle{margin:0 0 8px;font-size:1.25rem}.replayMeta{color:var(--text-soft);margin:0}.replayBoardWrap,.replayMovesWrap,.movesPanel{min-width:0}.replayBoardBox,.practiceBoardBox{width:100%;max-width:420px;margin:0 auto}.cleanReplayBoard{aspect-ratio:1;-webkit-user-select:none;user-select:none;touch-action:none;background:#0f172a;border:1px solid #ffffff24;border-radius:16px;grid-template-rows:repeat(8,1fr);grid-template-columns:repeat(8,1fr);width:100%;display:grid;overflow:hidden;box-shadow:0 18px 40px #00000047}.cleanReplaySquare{justify-content:center;align-items:center;min-width:0;min-height:0;display:flex;position:relative;overflow:hidden}.cleanReplayLight{background:#dbe4ef}.cleanReplayDark{background:#52627a}.cleanReplayPiece{text-align:center;pointer-events:none;font-family:DejaVu Sans,Segoe UI Symbol,"Noto Sans Symbols 2",Arial Unicode MS,serif;font-size:clamp(25px,4.2vw,42px);line-height:1;display:block;transform:translateY(8%)}.cleanReplayPiece-p{font-size:clamp(21px,3.7vw,35px);transform:translateY(12%)}.cleanReplayPiece-r,.cleanReplayPiece-n,.cleanReplayPiece-b{font-size:clamp(23px,3.9vw,38px)}.cleanReplayPiece-q,.cleanReplayPiece-k{font-size:clamp(24px,4.1vw,40px)}.cleanReplayWhitePiece{color:#f8fafc;text-shadow:0 1px #0f172af2,0 2px 3px #0f172acc}.cleanReplayBlackPiece{color:#020617;text-shadow:0 1px #ffffff38,0 2px 3px #0f172a4d}.cleanReplayRank,.cleanReplayFile{z-index:2;opacity:.45;pointer-events:none;font-size:9px;font-weight:800;position:absolute}.cleanReplayRank{top:3px;left:4px}.cleanReplayFile{bottom:3px;right:4px}.cleanReplayLight .cleanReplayRank,.cleanReplayLight .cleanReplayFile{color:#334155}.cleanReplayDark .cleanReplayRank,.cleanReplayDark .cleanReplayFile{color:#e2e8f0}.replayControls{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:10px;display:flex}.controlBtn,.replayFlipBtn{color:#fff;background:#2563eb;border:0;border-radius:14px;min-height:42px;font-weight:900}.controlBtn{min-width:52px;min-height:48px;font-size:1rem}.replayFlipBtn{padding:9px 14px}.replayStatus{color:var(--text-soft);text-align:center;margin-top:8px;font-weight:800}.replayMovesHeader,.replayMoveRow{grid-template-columns:44px minmax(80px,1fr) minmax(80px,1fr);align-items:center;gap:8px;display:grid}.replayMovesHeader{color:var(--muted);margin-bottom:8px;font-size:12px;font-weight:700}.replayMoveRow{margin-bottom:6px}.moveNumber{color:var(--muted);font-size:13px}.moveBtn{border:1px solid var(--border);min-width:0;color:var(--text);text-align:left;text-overflow:ellipsis;white-space:nowrap;background:#ffffff0a;border-radius:10px;padding:8px 10px;font-weight:700;overflow:hidden}.moveBtn:hover{border-color:#60a5fa99}.moveBtn.activeMove{background:#2563eb59;border-color:#60a5fae6}.replayWarning,.replayEmptyState{color:#fde68a;background:#f59e0b1f;border:1px solid #f59e0b40;border-radius:14px;margin-bottom:14px;padding:12px 14px}.practiceCard{background:radial-gradient(circle at top right, #2563eb29, transparent 34%), var(--card);border-color:#60a5fa52;margin-bottom:18px}.practiceTop h2{letter-spacing:-.04em;margin:0 0 8px;font-size:clamp(1.8rem,3vw,2.6rem)}.practiceActions{flex-wrap:wrap;gap:10px;display:flex}.practicePanel{align-content:start;gap:14px;display:grid}.practiceProgress{background:#1e293bc7;border:1px solid #94a3b824;border-radius:16px;justify-content:space-between;align-items:center;gap:14px;padding:14px;display:flex}.practiceProgress span{color:var(--muted);font-weight:800}.practiceProgress strong{color:#bfdbfe;font-size:1.6rem}.practiceProgressBarWrap{background:#1e293bf2;border:1px solid #94a3b829;border-radius:999px;width:100%;height:10px;margin:0 0 18px;overflow:hidden}.practiceProgressBar{background:linear-gradient(90deg,#2563eb,#38bdf8);border-radius:999px;height:100%;transition:width .25s}.practiceMoveLine{flex-wrap:wrap;gap:8px;display:flex}.practiceMovePill{border:1px solid var(--border);color:var(--text);background:#1e293bc7;border-radius:999px;padding:9px 12px;font-weight:900}.practiceMoveDone{color:#bbf7d0;background:#22c55e29;border-color:#22c55e57}.practiceMoveCurrent{color:#dbeafe;background:#2563eb47;border-color:#60a5fa8c}.practiceSelectedSquare{outline-offset:-3px;outline:3px solid #38bdf8}.practiceMessage{color:#dbeafe;background:#2563eb24;border:1px solid #60a5fa40;border-radius:14px;padding:12px 14px;font-weight:800}.practiceComplete{color:#bbf7d0;background:#22c55e24;border:1px solid #22c55e47;border-radius:14px;padding:14px;font-weight:900}.practiceHintBtn{width:fit-content}.practiceDraggablePiece{cursor:grab;pointer-events:auto}.practiceDraggablePiece:active{cursor:grabbing}.practiceComingSoon{gap:14px;display:grid}.practiceComingSoon h3{margin:0;font-size:1.5rem}.practiceComingSoon p{color:var(--text-soft);margin:0;line-height:1.55}@media (width<=1100px){.ratingGuideGrid,.statsGrid{grid-template-columns:repeat(2,1fr)}}@media (width<=900px){.landingHeroGrid,.twoCol,.analysisGrid,.replayLayout,.practiceLayout,.landingFeatureGrid,.landingPricingGrid,.placeholderGrid,.grid3,.aboutGrid{grid-template-columns:1fr}.landingStepsList{grid-template-columns:1fr 1fr}.searchRow,.topBar{grid-template-columns:1fr}.quickNavGrid{grid-template-columns:1fr 1fr}.replayBoardBox,.practiceBoardBox{max-width:min(92vw,420px)}.siteFooter{display:grid}.footerLinks{justify-content:flex-start}}@media (width<=760px){.landingWrap,.container,.appShell{width:100%;max-width:100%;padding-left:.85rem;padding-right:.85rem;overflow-x:hidden}.landingWrap{padding-top:12px}.appShell{padding-top:0;padding-bottom:44px}.landingHero,.heroCard,.card,.landingContentSection,.ratingGuideSection{border-radius:20px;padding:.95rem}.landingHero{min-height:auto;margin-bottom:.8rem}.landingNav{align-items:flex-start;gap:1rem;margin-bottom:.8rem}.landingNavLinks,.landingBrandSubtitle,.landingPill,.landingStats,.landingPreviewCard,.landingSecondaryBtn{display:none!important}.landingBrand{width:100%}.landingBrandIcon{width:42px;min-width:42px;height:42px}.landingHeroGrid{grid-template-columns:1fr;gap:.8rem}.landingHeroCopy h1{letter-spacing:-.05em;max-width:12ch;margin-bottom:.65rem;font-size:2rem;line-height:1.02}.landingSubtext{max-width:34ch;margin-bottom:.85rem;font-size:.92rem;line-height:1.45}.landingHeroActions{grid-template-columns:1fr;gap:.55rem;display:grid}.landingPrimaryBtn{width:100%;min-height:44px}#features,#about,#how-it-works,#premium,.siteFooter{display:none!important}.heroCard{margin-top:0}.heroTitleWrap .eyebrow{display:none}.heroTitleWrap h1{margin-bottom:.45rem;font-size:1.55rem;line-height:1.05}.heroTitleWrap .subtext,.subtext{margin-bottom:.9rem;font-size:.9rem;line-height:1.4}.searchRow,.topBar,.searchRow.topBar,.appActionPanel{grid-template-columns:1fr;gap:.55rem;display:grid}.appActionButtons{grid-template-columns:1fr;gap:.55rem;display:grid!important}.appActionButtons .primaryBtn,.appActionButtons .secondaryButton,.appActionButtons .ghostButton,.savedProfileButton,.demoAccountButton{opacity:1;visibility:visible!important;width:100%!important;min-height:44px!important;display:flex!important}.input{width:100%;min-width:0;font-size:16px}.filtersRow{margin-top:.65rem}.checkboxRow{align-items:flex-start;gap:.6rem;font-size:.9rem}.checkboxRow input{margin-top:.18rem}.statusMessage,.successMessage,.errorBox{border-radius:14px;font-size:.9rem}.placeholderGrid{display:none!important}.statsGrid{grid-template-columns:1fr 1fr;gap:.55rem}.statCard{min-height:auto;padding:.8rem}.statLabel{font-size:.72rem}.statValue{font-size:1rem}.smallStatValue{font-size:.9rem}.quickNavCard{padding:.85rem}.quickNavCard h2{margin-bottom:.6rem;font-size:1rem}.quickNavGrid{grid-template-columns:1fr 1fr;gap:.5rem}.quickNavBtn{width:100%;min-height:40px;padding:.6rem .65rem;font-size:.82rem}.premiumCard{display:none!important}.collapsibleCard{margin-bottom:.7rem}.sectionToggle{align-items:flex-start;gap:.8rem;min-height:48px;padding:.75rem}.sectionToggleLeft h2{font-size:1rem;line-height:1.2}.sectionBadge{white-space:normal;text-align:right;max-width:42%;font-size:.72rem;line-height:1.2}.sectionBody{padding:.75rem}.twoCol,.analysisGrid,.landingPreviewGrid,.landingFeatureGrid,.aboutGrid,.landingPricingGrid{grid-template-columns:1fr}.chips{gap:.45rem}.chip{font-size:.78rem}.profileSummary{font-size:.95rem;line-height:1.55}.list{gap:.65rem}.listItem{align-items:flex-start;gap:.75rem;min-width:0;padding:.75rem}.listItem strong,.chartLabel,.gamePickerTop strong{word-break:break-word;overflow-wrap:anywhere}.smallText{font-size:.78rem}.rightStat{text-align:right;min-width:68px}.recommendationDetails{display:none!important}.chartRow{border-radius:16px;grid-template-columns:1fr;gap:.45rem;padding:.85rem}.chartValue{text-align:left;font-size:.9rem}.trainingPlanItem{border-radius:16px;grid-template-columns:auto 1fr;gap:.75rem;padding:.9rem}.trainingStepNumber{width:34px;min-width:34px;height:34px}.trainingStepContent h3{font-size:1rem}.trainingStepContent p{font-size:.92rem;line-height:1.5}.trainingPracticeBtn{width:100%}.boardSection,.analysisGrid,#opening-practice{gap:1rem;width:100%;max-width:100%;overflow-x:hidden}.boardSection>div,.analysisGrid>div{min-width:0}.react-chessboard,[data-boardid],[class*=chessboard]{max-width:100%!important}.gamePickerList{max-height:240px;padding-right:.15rem;overflow-y:auto}.gamePickerButton{border-radius:16px;padding:.85rem}.gamePickerTop{align-items:flex-start;gap:.5rem}.gamePickerTop span{flex:none}.boardMeta{border-radius:16px;grid-template-columns:1fr;gap:.55rem;padding:.85rem;font-size:.9rem;display:grid}.tableWrap{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}table{min-width:560px}th,td{padding:.7rem .6rem;font-size:.85rem}.feedbackCard{margin-top:.8rem;padding:.9rem}.feedbackCard h2{font-size:1.05rem}.feedbackCard p{font-size:.88rem;line-height:1.4}.feedbackCard textarea{min-height:92px}.feedbackCard textarea,.feedbackCard input{font-size:16px}#rating-openings{display:block!important}.ratingGuideSection{margin-top:.8rem;margin-bottom:.8rem;padding:.9rem}.ratingGuideHeading{margin-bottom:0}.ratingGuideHeading h2{margin-bottom:.35rem;font-size:1.25rem}.ratingGuideHeading p:not(.landingEyebrow){margin-bottom:.75rem;font-size:.88rem;line-height:1.4}.mobileSectionRevealBtn{color:#dbeafe;background:#2563eb1f;border:1px solid #60a5fa47;border-radius:999px;justify-content:center;align-items:center;width:100%;min-height:42px;font-weight:800;display:inline-flex}.ratingGuideClosed .ratingGuideBody{display:none!important}.ratingGuideOpen .ratingGuideBody{margin-top:.85rem;display:block!important}.ratingGuideOpen .ratingGuideGrid{grid-template-columns:1fr;gap:.65rem}.ratingGuideCard{border-radius:16px;padding:.8rem}.ratingGuideTop{margin-bottom:.45rem}.ratingGuideTop h3{font-size:1rem}.ratingGuideTop p,.ratingGuideDescription{font-size:.82rem;line-height:1.35}.ratingGuideDescription{margin-bottom:.65rem}.ratingOpeningColumns{grid-template-columns:1fr;gap:.65rem}.ratingOpeningColumns h4{margin-bottom:.4rem;font-size:.82rem}.ratingOpeningList{gap:.4rem}.ratingOpeningBtn{padding:.45rem .6rem;font-size:.78rem}}@media (width<=430px){.landingWrap,.container,.appShell{padding-left:.65rem;padding-right:.65rem}.landingHero,.heroCard,.card,.landingContentSection,.ratingGuideSection{border-radius:18px;padding:.85rem}.landingHeroCopy h1{font-size:1.8rem}.landingSectionHeading h2,.heroTitleWrap h1{font-size:1.55rem}.sectionBadge{display:none}.listItem{flex-direction:column}.rightStat{text-align:left;justify-content:space-between;align-items:center;gap:.75rem;width:100%;min-width:0;display:flex}.trainingPlanItem{grid-template-columns:1fr}.trainingStepNumber{width:30px;height:30px}.landingVerdictRow{align-items:flex-start;gap:.65rem}.verdict{white-space:nowrap}.replayBoardBox,.practiceBoardBox{max-width:94vw}.cleanReplayBoard{border-radius:12px}.cleanReplayRank,.cleanReplayFile{font-size:7px}.quickNavBtn{font-size:.78rem}}@media (width>=761px){.ratingGuideBody{display:block!important}}@media (width<=700px){.savedHistoryRow,.premiumLockedInline{align-items:flex-start}.premiumLockedInline{flex-direction:column}.lockIcon{width:40px;height:40px}}.statsGrid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.filtersRow{flex-wrap:wrap;align-items:center;gap:12px 18px;display:flex}.savedHistoryRow .ghostButton{min-height:38px;padding:8px 14px}.premiumLockedInline .premiumBadge{margin-bottom:4px}@media (width<=760px){.premiumCard{padding:.95rem;display:block!important}.premiumCard h2{margin:0;font-size:1.15rem;line-height:1.2}.premiumCard p{font-size:.9rem;line-height:1.45}.lockedFeatureGrid{grid-template-columns:1fr;gap:.55rem}.lockedFeature{border-radius:14px;padding:.75rem;font-size:.88rem}.savedHistoryRow{grid-template-columns:1fr;gap:.65rem;font-size:.86rem;display:grid}.savedHistoryRow .ghostButton{width:100%}.filtersRow{grid-template-columns:1fr;gap:.65rem;display:grid}.premiumLockedInline{border-radius:16px;padding:.9rem}.premiumLockedInline h3{font-size:.98rem}.premiumLockedInline p{font-size:.88rem}}.savedHistoryRow{color:#cbd5e1;background:#0f172ab8;border:1px solid #94a3b82e;border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;padding:12px 14px;font-size:.92rem;display:flex}.premiumLockedInline{background:linear-gradient(135deg,#facc1514,#60a5fa0f),#0f172abd;border:1px solid #facc153d;border-radius:18px;justify-content:space-between;align-items:center;gap:16px;margin-top:18px;padding:18px;display:flex}.premiumLockedInline h3{color:#f8fafc;margin:8px 0 6px;font-size:1rem}.premiumLockedInline p{color:#cbd5e1;margin:0;font-size:.94rem;line-height:1.5}.lockIcon{background:#facc151f;border:1px solid #facc1547;border-radius:999px;flex:none;place-items:center;width:46px;height:46px;font-size:1.25rem;display:grid}@media (width<=700px){.savedHistoryRow,.premiumLockedInline{align-items:flex-start}.premiumLockedInline{flex-direction:column}.lockIcon{width:40px;height:40px}}.platformSelector{flex-wrap:wrap;grid-column:1/-1;gap:.5rem;display:flex}.platformButton{color:#cbd5e1;background:#0f172ac7;border:1px solid #94a3b838;border-radius:999px;min-height:40px;padding:.55rem .9rem;font-weight:850}.platformButtonActive{color:#fff;background:#2563eb40;border-color:#60a5faa6}.apiStatus{border-radius:999px;width:fit-content;margin-top:.75rem;padding:.45rem .7rem;font-size:.82rem;font-weight:850}.apiStatus-online{color:#bbf7d0;background:#22c55e1f;border:1px solid #22c55e40}.apiStatus-checking{color:#dbeafe;background:#2563eb1f;border:1px solid #60a5fa38}.apiStatus-warning,.apiStatus-offline{color:#fecaca;background:#ef44441f;border:1px solid #ef444440}@media (width<=760px){.platformSelector{grid-template-columns:1fr 1fr;display:grid}.platformButton{width:100%}.apiStatus{text-align:center;width:100%}}*{box-sizing:border-box}body{color:#e2e8f0;background:#0f172a;margin:0;font-family:Arial,Helvetica,sans-serif}#root{min-height:100vh}.page{min-height:100vh;padding:32px 16px}.container{max-width:1100px;margin:0 auto}.hero{margin-bottom:24px}.eyebrow{text-transform:uppercase;letter-spacing:1.5px;color:#94a3b8;margin-bottom:8px;font-size:12px}h1{color:#f8fafc;margin:0 0 12px;font-size:40px;line-height:1.1}h2,h3{color:#f8fafc;margin-top:0}.subtext{color:#cbd5e1;max-width:760px;margin-bottom:20px}.searchRow{flex-wrap:wrap;gap:12px;margin-bottom:10px;display:flex}input{color:#f8fafc;background:#111827;border:1px solid #334155;border-radius:12px;flex:1;min-width:240px;padding:14px 16px;font-size:16px}button{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:12px;padding:14px 18px;font-size:16px;font-weight:600}button:hover{background:#1d4ed8}button:disabled{opacity:.7;cursor:not-allowed}.helper{color:#94a3b8;font-size:14px}.card{background:#111827;border:1px solid #1f2937;border-radius:18px;padding:20px;box-shadow:0 10px 30px #00000040}.errorBox{color:#fecaca;background:#7f1d1d;border:1px solid #b91c1c;border-radius:14px;margin-bottom:20px;padding:16px}.placeholderGrid,.statsGrid,.twoCol{gap:16px;display:grid}.placeholderGrid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.statsGrid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:16px}.statCard{flex-direction:column;gap:8px;display:flex}.statLabel{color:#94a3b8;font-size:14px}.statValue{color:#f8fafc;font-size:28px;font-weight:700}.twoCol{grid-template-columns:2fr 1fr;margin:16px 0}.stack{gap:16px;display:grid}.list{gap:10px;display:grid}.listItem{background:#0b1220;border:1px solid #1e293b;border-radius:12px;justify-content:space-between;gap:12px;padding:12px 14px;display:flex}.tableWrap{overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;vertical-align:top;border-bottom:1px solid #1f2937;padding:12px 10px}th{color:#94a3b8;font-size:14px;font-weight:600}td{color:#e2e8f0}section.card{margin-bottom:16px}code{background:#020617;border-radius:6px;padding:2px 6px}@media (width<=850px){h1{font-size:30px}.twoCol{grid-template-columns:1fr}.listItem{flex-direction:column}}
