@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(/xadrez/assets/manrope-latin-400-normal-PaqtzbVb.woff2) format("woff2"),url(/xadrez/assets/manrope-latin-400-normal-8tf8FM3T.woff) format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(/xadrez/assets/manrope-latin-500-normal-BYYD-dBL.woff2) format("woff2"),url(/xadrez/assets/manrope-latin-500-normal-DMZssgOp.woff) format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(/xadrez/assets/manrope-latin-600-normal-4f0koTD-.woff2) format("woff2"),url(/xadrez/assets/manrope-latin-600-normal-BqgrALkZ.woff) format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(/xadrez/assets/manrope-latin-700-normal-BZp_XxE4.woff2) format("woff2"),url(/xadrez/assets/manrope-latin-700-normal-DGRFkw-m.woff) format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/xadrez/assets/cormorant-garamond-latin-400-normal-B-1hWBU7.woff2) format("woff2"),url(/xadrez/assets/cormorant-garamond-latin-400-normal-B7YtguxJ.woff) format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/xadrez/assets/cormorant-garamond-latin-500-normal-BsRWmXhO.woff2) format("woff2"),url(/xadrez/assets/cormorant-garamond-latin-500-normal-zIXX3Q-H.woff) format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/xadrez/assets/cormorant-garamond-latin-600-normal-Co1r35X9.woff2) format("woff2"),url(/xadrez/assets/cormorant-garamond-latin-600-normal-2CBVLo0M.woff) format("woff")}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:500;src:url(/xadrez/assets/cormorant-garamond-latin-500-italic-Y14P-dkT.woff2) format("woff2"),url(/xadrez/assets/cormorant-garamond-latin-500-italic-DhNIfkTX.woff) format("woff")}.account-dialog{max-height:70vh;overflow-y:auto;padding:2px 4px 12px}.account-section{padding:22px 0;border-bottom:1px solid var(--line,#dedfd5)}.account-section:first-of-type{padding-top:4px}.account-section h3{display:flex;gap:9px;align-items:center;margin:0 0 12px}.account-email{overflow-wrap:anywhere}.account-danger h3,.danger-action{color:#934c40}.account-delete-confirm{padding:18px;border:1px solid #bc8b80;border-radius:12px;background:#faf2eb}.account-delete-confirm>div{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.account-verification{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 20px;margin-bottom:24px;background:#f5ecdc;border:1px solid #e4d7bf;border-radius:12px}.account-verification p{margin:0;font-size:13px}.player-list-row .player-actions{display:flex;flex-shrink:0}.setting-line select{max-width:190px}.account-delete-confirm .button.primary{background:#934c40;color:#fff}.account-delete-confirm .button{height:auto;min-height:44px}@media(max-width:600px){.account-verification{align-items:flex-start;flex-direction:column}.player-list-row{flex-wrap:wrap}.player-list-row .player-actions{margin-left:auto}.account-dialog{max-height:65vh}.setting-line select{max-width:150px}}.teacher-choice{display:flex;align-items:center;gap:12px;padding:16px;margin:18px 0;border:1px solid var(--line);border-radius:9px;background:#eef3e7;color:#536d45;cursor:pointer}.teacher-choice>span{flex:1}.teacher-choice strong,.teacher-choice small{display:block}.teacher-choice strong{font-size:12px;font-weight:600}.teacher-choice small{font-size:10px;line-height:1.7;margin-top:5px}.teacher-choice input{width:18px;height:18px;padding:0;accent-color:#607b4b;flex-shrink:0}.mode-picker button:disabled{opacity:.45;cursor:default}.training-coach{background:#f3f6ec;border:1px solid var(--line);border-radius:10px;padding:18px;margin-bottom:22px;color:#536d45}.coach-heading{display:flex;gap:12px;align-items:center}.coach-heading>svg{flex-shrink:0;stroke-width:1.5}.coach-heading h3{font-family:var(--serif);font-size:25px;margin-top:5px}.coach-disclaimer,.coach-advice p{font-size:11px;line-height:1.85;margin-top:12px;color:#667b58}.coach-advice h4{font-size:13px;line-height:1.6;margin-top:18px;font-weight:600}.coach-observation,.coach-feedback{padding:13px 0;border-top:1px solid var(--line);margin-top:12px}.coach-observation>strong,.coach-feedback>strong{display:block;font-size:11px;line-height:1.6}.coach-observation p,.coach-feedback p{margin-top:5px}.coach-observation small,.coach-undo-note{display:block;font-size:9px;line-height:1.7;margin-top:7px;color:#738567}.coach-feedback>.eyebrow{display:block;margin-bottom:8px}.coach-advice>.button{margin-top:12px}.training-coach>.button{margin-top:14px}.game-offline{display:flex;gap:12px;align-items:center;padding:14px 17px;background:#f1ede0;border:1px solid #ded6bc;border-radius:8px;margin-bottom:18px;color:#786844}.game-offline svg{flex-shrink:0}.game-offline p{font-size:11px;line-height:1.8}.challenge-inbox{margin-top:30px;padding:24px;border:1px solid var(--line);border-radius:11px;background:#fffef980}.challenge-inbox h2{font-family:var(--serif);font-size:30px}.challenge-list{margin-top:20px}.challenge-row{display:flex;align-items:center;gap:14px;padding:17px 0;border-top:1px solid var(--line)}.challenge-row>div{flex:1;min-width:0}.challenge-row strong{display:block;font-size:12px;overflow-wrap:anywhere}.challenge-row small{display:block;color:#738567;font-size:10px;line-height:1.7;margin-top:4px}.challenge-row>.button{flex-shrink:0}.challenge-summary{display:flex;align-items:flex-start;gap:16px;margin:23px 0;color:#607b4b}.challenge-summary>svg{margin-top:5px;flex-shrink:0}.challenge-summary h3{font-family:var(--serif);font-size:31px}.challenge-summary p{font-size:12px;line-height:1.8;margin-top:10px}.challenge-summary small{display:block;font-size:11px;margin-top:10px}.home-teacher-button{margin-top:16px}@media(max-width:540px){.challenge-inbox{padding:18px}.challenge-row{flex-wrap:wrap;gap:12px}.challenge-row>.button{margin-left:43px}.challenge-row>div{flex-basis:calc(100% - 55px)}.coach-heading h3{font-size:23px}.teacher-choice{padding:13px}.training-coach{padding:16px}.learn-bottom>.button{white-space:normal}}@media(min-width:1600px){body .main-content{padding-top:48px;padding-left:65px;padding-right:65px}body .home-hero{gap:70px}body .hero-copy h1{font-size:85px}body .hero-copy>p{font-size:14px;max-width:370px}body .hero-actions .button{font-size:12px;padding:15px 20px}body .home-hero{padding-bottom:43px}body .mode-card{padding:23px 20px}body .mode-card p{font-size:10px}body .mode-card .eyebrow{font-size:7px}body .mode-card h3{font-size:30px}body .home-learn{gap:30px}body .home-learn-copy h2{font-size:46px}body .home-lesson-card h3{font-size:30px}body .home-lesson-card p{font-size:10px;max-width:210px}body .home-lesson-piece{width:100px;height:100px}body .home-lesson-card>div:not(.home-lesson-piece){margin-top:72px}body .home-lesson-action{font-size:10px}}@media(max-width:1200px){body .sidebar{width:205px;padding-left:14px;padding-right:14px}body .main-shell{margin-left:205px}body .main-content{padding:30px 30px 0}body .topbar{padding:0 30px}body .brand{font-size:23px}body .brand strong{font-size:31px}body .nav-item{font-size:11px;gap:10px;padding:12px 10px}body .home-hero{gap:25px}body .hero-copy h1{font-size:58px}body .hero-copy h1 em{font-size:.85em}body .hero-copy>p{font-size:11px}body .hero-actions{gap:8px}body .hero-actions .button{padding:11px 10px;font-size:9px;gap:7px}body .hero-proof{gap:12px}body .hero-proof>span{font-size:7px}body .hero-board-composition{padding:12px 12px 0}body .preview-bottom{font-size:11px}body .preview-top{font-size:6px;letter-spacing:.08em}body .mode-card{gap:9px;padding:16px 11px}body .mode-icon{width:31px;height:31px}body .mode-icon svg{width:20px}body .mode-card h3{font-size:24px}body .mode-card p{font-size:7px}body .mode-card .eyebrow{font-size:5.5px}body .home-learn{gap:15px}body .home-learn-copy h2{font-size:33px}body .home-learn-copy p{font-size:9px}body .home-lesson-card{padding:15px}body .home-lesson-card h3{font-size:23px}body .home-lesson-card .eyebrow{font-size:5.5px}body .game-layout{grid-template-columns:minmax(0,1fr) 245px;gap:22px}body .lesson-workspace{grid-template-columns:minmax(0,1fr) 270px;gap:25px}body .lesson-step h2{font-size:32px}body .lesson-step p{font-size:11px}body .page-heading h1,body .learn-header h1{font-size:53px}body .community-grid{grid-template-columns:1.2fr 1fr;gap:20px}body .ranking-card,body .players-card{padding:20px}body .ranking-card .section-title{gap:10px;flex-wrap:wrap}body .game-card-grid{grid-template-columns:repeat(2,1fr)}body .tournament-detail-grid{grid-template-columns:1fr 250px}body .toast{left:calc(50% + 102px)}}@media(max-width:1000px){body .sidebar{width:188px;padding:28px 10px 15px}body .main-shell{margin-left:188px}body .brand{font-size:20px;padding-left:8px}body .brand strong{font-size:29px}body .brand-mark{width:38px;height:45px}body .brand-mark .piece-svg{width:35px;height:40px}body .brand-caption{font-size:6.5px;margin-left:9px;margin-bottom:35px}body .nav-item{font-size:10px;gap:8px;padding:11px 9px}body .nav-item svg{width:17px}body .nav-new{font-size:6px}body .membership-card{padding:14px 12px}body .membership-card strong{font-size:18px}body .topbar{padding:0 25px;height:68px}body .main-content{padding:27px 25px 0}body .home-greeting{margin-bottom:21px}body .home-hero{gap:20px;padding-bottom:25px}body .hero-copy h1{font-size:49px}body .hero-copy h1 em{font-size:.85em}body .hero-kicker{font-size:6px;letter-spacing:.12em;margin-bottom:15px}body .hero-copy>p{font-size:10px;margin:17px 0 20px}body .hero-actions{flex-direction:column;align-items:flex-start}body .hero-actions .button{min-height:36px;padding:9px 11px;font-size:9px}body .hero-actions .button svg{width:14px;height:14px}body .hero-proof{gap:10px;margin-top:18px}body .hero-proof>span:last-child{display:none}body .preview-top .preview-ornament{display:none}body .preview-bottom{font-size:9px}body .hero-board-frame{padding:5px}body .preview-piece{width:20px;height:23px}body .quota-chip{font-size:8px;gap:6px}body .mode-cards{gap:10px;padding-top:20px;margin-bottom:28px}body .mode-card{flex-wrap:wrap;gap:8px;padding:13px 11px}body .mode-card>div:nth-child(2){flex:1}body .mode-card>svg{display:none}body .mode-icon{width:27px;height:27px}body .mode-card h3{font-size:21px}body .mode-card .eyebrow{font-size:5px}body .mode-card p{font-size:7px;line-height:1.7}body .home-learn{grid-template-columns:1fr 1fr}body .home-learn-copy{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:5px 20px;padding:0}body .home-learn-copy>.eyebrow{grid-column:1}body .home-learn-copy>h2{grid-column:1;grid-row:2/4;margin-top:8px}body .home-learn-copy>p{grid-column:2;grid-row:2;margin-top:5px;max-width:260px;font-size:10px}body .home-learn-copy>.text-button{grid-column:2;grid-row:3;margin-top:5px;align-self:start}body .home-lesson-card{min-height:235px;margin-top:6px}body .home-lesson-card h3{font-size:27px}body .home-lesson-card p{font-size:9px;max-width:190px}body .home-current-list{grid-template-columns:1fr}body .game-layout{grid-template-columns:minmax(0,1fr)}body .board-area{max-width:570px;width:100%;margin:auto}body .game-inspector{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding-top:0}body .inspector-header{grid-column:1/-1;margin-bottom:0;padding-top:15px}body .inspector-header h2{font-size:31px}body .inspector-header p{font-size:11px}body .invite-card,body .state-card{grid-column:1/-1}body .moves-panel{grid-column:1}body .game-actions{grid-column:2;border:0;margin:0;padding:0}body .save-note,body .request-card{grid-column:1/-1}body .pgn-export{justify-content:flex-start}body .game-inspector>.button.ghost:not(.pgn-export){grid-column:1/-1}body .learn-progress-card{width:160px;padding:17px}body .learn-header h1,body .page-heading h1{font-size:47px}body .learn-header p{font-size:11px;max-width:320px}body .learn-header{gap:20px}body .learn-section-heading h2{font-size:28px}body .learn-section-caption{display:none}body .lesson-grid{grid-template-columns:repeat(2,1fr);gap:17px}body .lesson-workspace{grid-template-columns:1fr;gap:20px}body .lesson-stage{max-width:540px;margin:auto;width:100%}body .lesson-coach{display:grid;grid-template-columns:1fr 1fr;gap:0 25px;padding-top:5px}body .lesson-step{grid-column:1}body .lesson-demo{grid-column:2;grid-row:1/3;border:0;padding:0;margin:0}body .lesson-controls{grid-column:2;grid-row:3;margin-top:15px}body .lesson-dots{grid-column:1/-1}body .lesson-feedback{grid-column:1;margin-top:15px}body .lesson-hint,body .lesson-hint-copy{grid-column:1}body .lesson-finished{grid-column:1/-1;text-align:center}body .lesson-success-icon{margin:auto}body .lesson-finished .lesson-controls{max-width:310px;margin:25px auto 0}body .lesson-finished>.text-button{margin:18px auto auto}body .community-grid{grid-template-columns:1fr}body .settings-grid{gap:18px}body .settings-card{padding:19px}body .theme-picker{gap:7px}body .card-heading{gap:8px}body .card-heading h2{font-size:27px}body .setting-line{gap:12px}body .setting-line strong{font-size:10px}body .check-row,body .quiet-hours{gap:10px}body .account-detail{gap:10px;font-size:9px}body .tournament-detail-grid{grid-template-columns:1fr}body .tournament-sidebar{max-width:none}body .championship-banner{padding:24px;gap:20px}body .championship-mark{width:70px;height:70px}body .championship-mark svg{width:35px}body .championship-banner h2{font-size:32px}body .tournament-card-grid{gap:16px}body .tournament-card{padding:20px}body .tournament-card h2{font-size:29px}body .tournament-card .tiny-status{font-size:7px}body .toast{left:calc(50% + 94px)}}@media(max-width:760px){body .sidebar{position:fixed;width:244px;transform:translate(-100%);transition:transform .22s;z-index:100;padding:27px 19px 20px;box-shadow:15px 0 60px #1b302c22}body .sidebar.mobile-open{transform:translate(0)}body .sidebar-scrim{display:block;position:fixed;inset:0;border:0;background:#18342c55;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:90}body .brand{font-size:24px}body .brand strong{font-size:34px}body .brand-mark{width:43px;height:49px}body .brand-caption{font-size:8px;margin-left:10px;margin-bottom:35px}body .nav-item{font-size:12px;padding:12px;gap:11px}body .nav-item svg{width:19px}body .nav-new{font-size:7px}body .membership-card strong{font-size:22px}body .membership-card p{font-size:11px}body .main-shell{margin:0}body .topbar{height:65px;padding:0 20px;position:sticky;top:0}body .topbar-left{gap:8px}body .topbar-right{gap:12px}body .topbar-breadcrumb{font-size:10px;gap:8px}body .topbar-breadcrumb>span{display:none}body .topbar-breadcrumb>svg{display:none}body .mobile-menu-button{display:inline-flex}body .local-badge{font-size:8px;gap:4px}body .account-button>span:last-child{display:none}body .main-content{padding:27px 24px 85px;min-height:calc(100vh - 65px)}body .mobile-bottom-nav{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:space-around;align-items:center;background:#f5f7eedf;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border-top:1px solid #dde6d2;padding:9px 12px calc(9px + env(safe-area-inset-bottom));z-index:70;box-shadow:0 -5px 25px #193e2810}body .mobile-bottom-nav>button{border:0;background:transparent;display:flex;align-items:center;justify-content:center;gap:4px;flex-direction:column;padding:5px 7px;min-width:50px;font-size:8px;color:#99a88c}body .mobile-bottom-nav>button.active{color:#567b44}body .mobile-bottom-nav>button svg{stroke-width:1.6}body .home-greeting{margin-bottom:25px}body .home-greeting .eyebrow{font-size:7px}body .home-date{font-size:9px}body .home-hero{grid-template-columns:1fr 1fr;gap:22px;padding-bottom:28px}body .hero-copy h1{font-size:55px}body .hero-copy h1 em{font-size:.82em}body .hero-kicker{font-size:6px}body .hero-copy>p{font-size:11px;margin:18px 0 20px}body .hero-proof{gap:12px}body .hero-board-composition{padding:10px 10px 0;border-radius:9px}body .mode-card{padding:15px 12px}body .mode-card h3{font-size:24px}body .mode-card .eyebrow{font-size:5.5px}body .mode-card p{font-size:8px}body .home-learn-copy h2{font-size:38px}body .home-lesson-card{padding:20px}body .home-lesson-card .eyebrow{font-size:6px}body .home-lesson-card h3{font-size:29px}body .home-lesson-piece{width:90px;height:90px}body .home-learn{gap:20px}body .home-footer{margin-top:28px;padding-bottom:0}body .page-heading h1,body .learn-header h1{font-size:50px}body .lesson-title h1{font-size:43px}body .game-heading{margin-bottom:15px}body .game-content{padding-top:20px}body .game-layout{gap:20px}body .board-area{max-width:550px}body .clock{min-width:87px;font-size:25px;padding:9px 11px}body .game-inspector{gap:20px}body .inspector-header h2{font-size:33px}body .learn-header{margin-bottom:34px}body .learn-progress-card{width:160px}body .learn-section-heading h2{font-size:31px}body .lesson-card h3{font-size:29px}body .lesson-card p{font-size:11px}body .settings-card{padding:23px}body .setting-line strong{font-size:11px}body .account-detail{font-size:10px}body .community-grid{gap:22px}body .ranking-card,body .players-card{padding:25px}body .toast{left:50%;bottom:85px;max-width:calc(100vw - 30px)}body .toast p{font-size:10px}body .notifications-popover{position:fixed;top:58px;right:15px;width:min(365px,calc(100vw - 30px));max-height:calc(100dvh - 145px)}body .championship-banner h2{font-size:35px}}@media(max-width:560px){body .main-content{padding:23px 20px 85px}body .topbar{padding:0 14px;height:61px}body .topbar-right{gap:9px}body .topbar-breadcrumb{font-size:9px}body .local-badge{display:none}body .topbar-right>.button.small{font-size:9px;min-height:32px;padding:8px 10px}body .topbar-right>.button.small svg{width:13px}body .home-greeting{margin-bottom:22px;gap:12px;align-items:flex-start}body .quota-chip{font-size:7px;flex-direction:column;align-items:flex-end;gap:5px;max-width:130px;text-align:right}body .quota-dots i{width:4px;height:4px}body .home-hero{grid-template-columns:1fr;gap:27px;padding:0 0 25px}body .hero-copy{padding:0}body .hero-kicker{font-size:7px;letter-spacing:.12em;margin-bottom:19px}body .hero-copy h1{font-size:66px;line-height:.98}body .hero-copy h1 em{font-size:.88em}body .hero-copy>p{font-size:12px;max-width:300px;line-height:1.8;margin:20px 0 23px}body .hero-actions{flex-direction:row;align-items:center;gap:10px}body .hero-actions .button{min-height:42px;font-size:10px;padding:11px 13px}body .hero-actions .button svg{width:15px;height:15px}body .hero-actions .button:first-child>svg:last-child{display:none}body .hero-proof{gap:18px;margin-top:20px}body .hero-proof>span{font-size:8px}body .hero-proof>span:last-child{display:flex}body .hero-board-composition{padding:13px 13px 0;max-width:430px;width:100%;margin:auto;border-radius:11px}body .hero-board-frame{padding:7px}body .preview-top{font-size:7px;letter-spacing:.1em;padding-bottom:13px}body .preview-top .preview-ornament{display:inline}body .preview-bottom{font-size:12px;padding:12px 0}body .preview-piece{width:25px;height:27px}body .mode-cards{grid-template-columns:1fr;gap:10px;margin-bottom:33px;padding-top:22px}body .mode-card{flex-wrap:nowrap;padding:15px 16px;gap:15px}body .mode-card h3{font-size:27px;margin:3px 0 4px}body .mode-card .eyebrow{font-size:6px}body .mode-card p{font-size:9px}body .mode-icon{width:38px;height:38px}body .mode-icon svg{width:24px;height:24px}body .mode-card>svg{display:block;flex-shrink:0;width:16px;height:16px}body .home-learn{grid-template-columns:1fr 1fr;gap:14px}body .home-learn-copy{display:block;padding:0 0 8px}body .home-learn-copy h2{font-size:43px;margin-top:14px}body .home-learn-copy>p{font-size:11px;max-width:300px;margin-top:16px}body .home-learn-copy>.text-button{font-size:11px;margin-top:16px}body .home-lesson-card{padding:15px;min-height:267px}body .home-lesson-card h3{font-size:23px}body .home-lesson-card .eyebrow{font-size:5.5px;letter-spacing:.09em}body .home-lesson-card p{font-size:8px}body .home-lesson-piece{width:73px;height:83px;right:0;top:2px}body .home-lesson-action{font-size:7px;padding-top:12px;margin-top:16px;gap:4px}body .home-lesson-action svg{width:12px}body .home-footer{flex-direction:column;gap:10px;margin-top:27px;padding-top:17px}body .home-footer>span:first-child{font-size:15px}body .home-footer>span:last-child{font-size:7px}body .home-current .section-title{gap:12px;align-items:flex-end}body .home-current .section-title h2{font-size:30px}body .home-current .section-title .text-button{font-size:8px;white-space:nowrap}body .home-current .section-title .text-button svg{width:12px}body .page-heading{align-items:flex-start;flex-direction:column;margin-bottom:26px;gap:21px}body .page-heading h1,body .learn-header h1{font-size:48px;line-height:1.03;margin-top:12px}body .page-heading>.heading-icon{display:none}body .page-heading>.button{font-size:10px;min-height:40px;padding:11px 15px}body .play-choice-grid{grid-template-columns:1fr;gap:18px}body .play-choice{min-height:295px;padding:27px}body .play-choice>svg{margin-bottom:24px}body .play-choice h2{font-size:43px}body .play-choice p{font-size:11px;max-width:290px}body .lobby-section{padding:20px;margin-top:25px}body .lobby-section>.section-title{flex-direction:column;align-items:flex-start;gap:15px}body .lobby-section .section-title h2{font-size:31px}body .lobby-list .button{font-size:8px;gap:5px;padding:9px}body .lobby-list .button svg{width:12px}body .game-heading{flex-direction:row;align-items:center;margin-bottom:18px}body .game-layout{gap:20px}body .player-strip{gap:10px;min-height:51px}body .player-strip .avatar{width:35px;height:35px;font-size:10px}body .player-info strong{font-size:11px}body .player-info>span{font-size:7px;line-height:1.5}body .clock{min-width:75px;font-size:23px;padding:9px}body .clock svg{width:23px}body .board-frame{padding:5px;margin:10px 0;box-shadow:0 6px 20px #2d42290b}body .square-coordinate.rank{top:3px;left:3px}body .square-coordinate.file{bottom:3px;right:3px}body .square-coordinate{font-size:7px}body .legal-ring{border-width:3px}body .game-inspector{display:flex;flex-direction:column;gap:18px}body .inspector-header{padding-top:10px;padding-bottom:20px;margin-bottom:0}body .inspector-header h2{font-size:34px}body .inspector-header p{font-size:11px}body .moves-panel{order:3}body .move-list{max-height:150px}body .game-actions{order:4;margin-top:0;border-top:1px solid var(--line);padding-top:18px}body .game-actions>.button{max-width:100%}body .action-grid{grid-template-columns:repeat(3,1fr);gap:8px}body .action-grid>button{font-size:8px;gap:5px;justify-content:center}body .action-grid>button svg{width:15px;height:15px}body .save-note{order:7;margin:0}body .pgn-export{order:6;margin:0;font-size:9px}body .game-inspector>.button.ghost{margin:0}body .invite-card,body .state-card{margin:0;padding:20px}body .invite-card p,body .state-card p{font-size:11px}body .request-card{margin:0}body .learn-header{flex-direction:column;align-items:flex-start;gap:24px;margin-bottom:34px}body .learn-header p{font-size:12px;max-width:330px}body .learn-progress-card{width:100%;display:grid;grid-template-columns:35px 70px 1fr;gap:6px 12px;align-items:center;padding:17px}body .learn-progress-card>svg{grid-column:1;grid-row:1/3}body .learn-progress-value{font-size:38px;margin:0;grid-column:2;grid-row:1/3}body .learn-progress-value small{font-size:11px}body .learn-progress-card>span:not(.learn-progress-value){grid-column:3;margin:0;font-size:9px}body .lesson-progress{grid-column:3;margin:0}body .learn-progress-card>small{display:none}body .learn-section-heading h2{font-size:33px;margin-top:10px}body .lesson-grid{gap:14px}body .lesson-card{padding:16px;min-height:280px}body .lesson-icon{width:65px;height:77px;margin:10px 0 14px}body .lesson-card h3{font-size:27px;line-height:1.04}body .lesson-card p{font-size:9px}body .lesson-category{font-size:6px}body .lesson-completed,body .lesson-duration{font-size:7px}body .lesson-card-action{font-size:8px;margin-top:19px;gap:4px}body .lesson-card-action>svg{width:14px}body .learn-bottom{flex-direction:column;align-items:flex-start;padding:22px;gap:20px}body .learn-bottom h3{font-size:28px}body .learn-bottom p{font-size:10px;line-height:1.8}body .learn-bottom>.button{width:100%}body .lesson-title{flex-direction:column;align-items:flex-start;gap:15px;margin-bottom:24px}body .lesson-title h1{font-size:43px;line-height:1.05}body .lesson-title .eyebrow{font-size:7px;letter-spacing:.1em}body .lesson-title>.lesson-duration{font-size:8px}body .lesson-workspace{display:flex;flex-direction:column;gap:24px}body .lesson-stage{padding:13px;border-radius:9px}body .lesson-stage-label{font-size:7px;letter-spacing:.08em;margin-bottom:12px}body .lesson-board{padding:5px}body .lesson-board-caption{font-size:7px;margin-top:13px}body .lesson-coach{display:flex;flex-direction:column;padding:0;gap:0}body .lesson-step h2{font-size:36px;margin-top:11px}body .lesson-step p{font-size:12px;margin-top:17px;line-height:1.9}body .lesson-demo{border-top:1px solid var(--line);padding-top:22px;margin-top:24px}body .lesson-demo p{font-size:11px}body .lesson-controls,body .lesson-feedback{margin-top:22px}body .lesson-hint{margin-top:23px}body .lesson-hint-copy{margin-top:13px}body .lesson-dots{margin-top:25px}body .settings-grid{grid-template-columns:1fr;gap:21px}body .settings-card{padding:23px}body .card-heading h2{font-size:31px}body .setting-line strong{font-size:12px}body .setting-line p{font-size:10px}body .settings-card>.card-description{font-size:11px}body .theme-picker{gap:12px;margin:25px 0}body .mini-board{max-height:105px}body .theme-picker>button>span{font-size:10px}body .notification-options label{font-size:11px}body .notification-options>.form-footnote{font-size:9px}body .quiet-hours{gap:17px}body .quiet-hours>label{font-size:10px}body .settings-save{flex-direction:column;align-items:stretch;gap:18px;padding-bottom:10px}body .settings-save>span{font-size:10px}body .game-card-grid{grid-template-columns:1fr;gap:17px}body .saved-game-card{padding:23px}body .saved-game-card h3{font-size:32px}body .empty-state{padding:50px 0 30px}body .empty-state h2{font-size:34px}body .empty-state p{font-size:11px}body .ranking-card,body .players-card{padding:21px}body .ranking-card .section-title{gap:12px}body .ranking-card .section-title h2{font-size:30px}body .ranking-row{gap:10px}body .ranking-row>div strong{font-size:11px}body .championship-banner{gap:20px;padding:24px 21px;align-items:flex-start}body .championship-mark{width:50px;height:50px;flex-shrink:0}body .championship-mark svg{width:29px}body .championship-banner h2{font-size:33px;line-height:1.05}body .championship-banner p{font-size:10px}body .championship-banner .eyebrow{font-size:6px}body .tournament-card-grid{grid-template-columns:1fr}body .tournament-card{padding:25px}body .tournament-card h2{font-size:34px}body .tournament-card .tiny-status{font-size:8px}body .standings-head,body .standings-row{grid-template-columns:1fr 19px 19px 27px;gap:6px}body .standings-row>div{gap:7px}body .standings-row .rank-number{min-width:12px;font-size:8px}body .standings-row .avatar{width:25px;height:25px;font-size:8px}body .standings-row>div strong{font-size:10px}body .tournament-games>button{flex-wrap:wrap;gap:9px;padding:13px}body .tournament-games>button>span:first-child{flex-basis:100%}body .tournament-games>button .tiny-status{font-size:7px}body .tournament-games>button>svg{margin-left:auto}body .modal{padding:25px 22px;border-radius:12px;max-height:calc(100dvh - 30px)}body .modal-head h2{font-size:36px}body .modal-head p{font-size:11px}body .game-kind-picker>button{padding:15px 5px;font-size:8px}body .segmented>button{font-size:9px}body .color-row .segmented{width:185px}body .promotion-picker{gap:7px}body .promotion-picker .piece-svg{width:53px;height:60px}body .premium-price strong{font-size:78px}body .premium-benefits>span{font-size:10px}body .button-row{flex-wrap:wrap}body .toast{bottom:83px;width:calc(100vw - 30px);gap:8px;padding:12px}body .toast p{font-size:10px;flex:1}body .toast .icon-button{width:24px;height:24px}body .home-current-list>button{padding:16px}body .sidebar-bottom{padding-top:25px}}@media(max-width:360px){body .hero-copy h1{font-size:58px}body .main-content{padding-left:16px;padding-right:16px}body .hero-actions{gap:7px}body .hero-actions .button{font-size:9px;padding:11px}body .hero-proof{gap:11px}body .hero-proof>span{font-size:7px}body .home-lesson-card h3{font-size:21px}body .home-lesson-action{font-size:6px}body .topbar-breadcrumb{font-size:8px}body .lesson-card{padding:13px}body .lesson-card h3{font-size:24px}body .lesson-card-action{font-size:7px}body .game-kind-picker>button{font-size:7px}body .settings-card{padding:20px}body .check-row{gap:8px}body .check-row label{font-size:10px}body .mobile-bottom-nav>button{min-width:45px;padding:5px}body .toast p{font-size:9px}}@media(prefers-reduced-motion:reduce){body *,body *:before,body *:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}body .hero-copy>p,body .home-learn-copy p,body .inspector-header p,body .lesson-step p,body .lesson-demo p,body .lesson-finished>p,body .study-caption p,body .learn-header p,body .championship-banner p,body .empty-state p,body .card-description,body .form-footnote,body .modal-head p,body .invite-welcome p{color:#66765c}body .eyebrow,body .hero-kicker,body .field-heading,body .section-label,body .lesson-category,body .lesson-stage-label{color:#6d7e60}body .hero-proof>span,body .home-date,body .quota-chip,body .mode-card p,body .home-lesson-card p,body .home-lesson-action,body .lesson-card p,body .lesson-duration,body .learn-section-caption,body .learn-progress-card>small,body .lesson-board-caption,body .setting-line p,body .notification-options label,body .quiet-hours>label,body .save-note,body .player-info>span,body .board-bottom,body .saved-game-card p,body .saved-card-bottom,body .player-list-row small,body .ranking-row small,body .tournament-sidebar>p,body .invite-card p,body .state-card p,body .invite-card small,body .account-detail,body .settings-save>span{color:#6b7a60}body .mode-card .eyebrow{font-size:7px}body .mode-card p{font-size:10px}body .hero-proof>span{font-size:9px}body .home-lesson-card .eyebrow{font-size:7px}body .home-lesson-card p{font-size:10px}body .home-lesson-action{font-size:9px}body .card-description,body .form-footnote,body .setting-line p{font-size:10px}body .player-info>span{font-size:9px}body .section-label{font-size:9px}body .game-actions .action-grid>button{font-size:10px}body .save-note{font-size:9px}body .inspector-header .eyebrow{font-size:8px}body .player-info strong{font-size:13px}@media(min-width:1001px){body .board-area{max-width:min(100%,max(340px,calc(100dvh - 320px)));width:100%;margin-inline:auto}body .lesson-stage{max-width:min(100%,max(340px,calc(100dvh - 380px)));margin-inline:auto;width:100%}}@media(max-width:1200px)and (min-width:761px){body .mode-card .eyebrow{font-size:6px}body .mode-card p{font-size:9px}body .home-lesson-card .eyebrow{font-size:6px}}@media(max-width:560px){body .home-lesson-card .eyebrow{font-size:6px}body .home-lesson-card p{font-size:9px}body .home-lesson-action{font-size:8px}body .player-info>span{font-size:8px}body .hero-proof>span{font-size:8px}body .mode-card .eyebrow{font-size:7px}body .game-actions .action-grid>button{font-size:9px}body .hero-copy h1{font-size:clamp(52px,16.9vw,66px)}body .home-hero{padding-top:0}}.study-library-heading{margin-top:42px}.study-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:18px 0 30px}.study-card{border:1px solid #dce5d0;background:#eef2e6;border-radius:11px;text-align:left;padding:24px;display:flex;flex-direction:column;gap:12px;transition:transform .17s,background .17s}.study-card:hover{transform:translateY(-3px);background:#e6eedc}.study-card:nth-child(2){background:#efedde;border-color:#e3ddc4}.study-card:nth-child(3){background:#eaf0e7;border-color:#dce5d8}.study-card h3{font-size:31px;line-height:1.1;margin:0}.study-card p{font-size:11px;line-height:1.85;color:#66765c;flex:1}.study-card .lesson-card-action{width:100%;margin-top:5px}.study-card>svg{color:#8ba175;stroke-width:1.4;margin:6px 0}.study-coach>h2{font-size:36px;line-height:1.07;margin:15px 0 23px}.study-caption p{font-size:12px;line-height:1.95}.study-controls{display:flex;gap:8px;justify-content:center;align-items:center;margin-top:18px}.study-controls .button{padding:10px;min-height:40px}.study-controls .button.primary{flex:1;font-size:10px}.study-moves{display:flex;flex-wrap:wrap;gap:7px;padding-top:23px;margin-top:25px;border-top:1px solid #dce5d0}.study-moves>button{display:flex;gap:5px;align-items:center;background:#eef3e7;border:1px solid #dce7d0;border-radius:5px;padding:7px 9px;font-size:11px;color:#728767;transition:background .15s}.study-moves>button>span{font-size:8px;color:#97a78a}.study-moves>button.is-current{background:#244b3f;color:#fafcf1;border-color:#244b3f}.study-moves>button.is-current>span{color:#c8d5ba}.study-coach>.text-button{font-size:9px;margin-top:20px}.study-coach>.lesson-board-caption{text-align:left}.study-coach .lesson-demo{grid-column:auto}.study-caption{min-height:104px}.study-coach .lesson-board-caption{line-height:1.9}@media(max-width:1000px){body .study-grid{grid-template-columns:1fr;gap:16px}body .study-card{min-height:190px;gap:10px}body .study-card h3{font-size:34px}body .study-coach{display:flex;flex-direction:column;padding-top:4px}body .study-caption{min-height:0}body .study-coach>h2{font-size:35px;margin:12px 0 20px}body .study-coach .lesson-demo{padding-top:20px;border-top:1px solid #dce5d0;margin-top:20px}body .study-coach>.lesson-board-caption{margin-top:20px}body .study-coach>.text-button{margin-top:15px}}@media(prefers-reduced-motion:reduce){body .piece-moving,body .page-enter,body .page-enter>*{animation:none}}.sidebar{overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#ccd7be transparent}.sidebar>nav,.sidebar-bottom,.brand,.brand-caption{flex-shrink:0}.premium-price>span>strong{font-size:clamp(43px,8vw,70px)}@media(max-height:780px){body .sidebar{padding-top:22px}body .brand-caption{margin-bottom:25px}body .sidebar-bottom{padding-top:25px}}.move-pair .move-san{background:transparent;border:0;padding:0;text-align:left;font:inherit;letter-spacing:inherit;border-radius:4px;cursor:default}.moves-panel .reader-toggle~.move-list .move-san{cursor:pointer}.move-pair .move-san.reading{background:#dbe6cf;box-shadow:0 0 0 4px #dbe6cf}.reader-toggle{display:flex;align-items:center;gap:10px;margin:12px 0 10px;padding:11px 13px;border:1px solid var(--line);border-radius:9px;background:#f3f6ec;color:#536d45;cursor:pointer}.reader-toggle input{width:17px;height:17px;padding:0;accent-color:#607b4b;flex-shrink:0}.reader-toggle>span{flex:1;min-width:0}.reader-toggle strong,.reader-toggle small{display:block}.reader-toggle strong{font-size:11px;font-weight:600}.reader-toggle small{font-size:9px;line-height:1.6;margin-top:3px;color:#738567}.notation-reader{margin:0 0 12px;padding:15px;border:1px solid var(--line);border-radius:10px;background:#fffef9;color:#3c5345}.notation-nav{display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:#7d877d}.notation-parts{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 4px}.notation-part{display:flex;flex-direction:column;align-items:center;gap:5px;min-width:52px;padding:9px 10px 8px;border:1px solid #d5ddc9;border-radius:8px;background:#f3f6ec}.notation-part strong{font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:19px;font-weight:600;color:#244b3f}.notation-part small{font-size:8px;line-height:1.3;letter-spacing:.04em;text-transform:uppercase;color:#738567;text-align:center}.notation-part:hover,.notation-part:focus-visible,.notation-part.open{background:#e4ecd8;border-color:#9db28a}.notation-part.capture strong,.notation-part.mate strong{color:#9b3d2e}.notation-part.check strong{color:#a2701f}.notation-meaning,.notation-hint,.notation-empty{font-size:11px;line-height:1.8;margin-top:10px}.notation-hint,.notation-empty{color:#8a967d}.notation-sentence{font-size:12px;line-height:1.8;margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.notation-sentence span{font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:#8a967d;margin-right:4px}.notation-setting .segmented{flex-shrink:0}@media(max-width:560px){.notation-part{min-width:46px}}.review-open{margin-top:12px}.review-panel{margin-top:14px;padding:16px;border:1px solid var(--line);border-radius:10px;background:#fffef9;color:#3c5345;display:flex;flex-direction:column;gap:12px}.review-working{display:flex;align-items:center;gap:9px;font-size:11px;color:#607b4b}.spin{animation:review-spin 1s linear infinite}@keyframes review-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.spin{animation:none}}.review-counts{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;font-size:11px}.review-counts>strong{width:100%;font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:#7d877d;font-weight:600}.review-counts .grade{display:inline-flex;flex-direction:column;align-items:center;min-width:54px;padding:6px 8px;border-radius:7px;background:#f3f6ec;font-size:15px;font-weight:600}.review-counts .grade small{font-size:8px;font-weight:500;letter-spacing:.03em;color:#738567;margin-top:2px;text-align:center}.grade.best,.review-move.best .dot{color:#3f7a4a}.grade.good,.review-move.good .dot{color:#6c8c52}.grade.inaccuracy,.review-move.inaccuracy .dot{color:#a2701f}.grade.mistake,.review-move.mistake .dot{color:#b8561f}.grade.blunder,.review-move.blunder .dot{color:#9b3d2e}.review-moment,.review-detail,.review-locked{padding:12px 14px;border-radius:9px;background:#f3f6ec;font-size:11px;line-height:1.8}.review-moment>strong,.review-moves>strong{display:block;font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:#7d877d;margin-bottom:4px}.review-moment .button{margin-top:8px}.review-clean{font-size:11px;color:#607b4b}.review-list{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}.review-move{display:inline-flex;align-items:center;gap:4px;padding:5px 8px;border:1px solid var(--line);border-radius:7px;background:#fffef9;font-size:11px}.review-move>span{font-size:9px;color:#a0ab90}.review-move .dot{width:7px;height:7px;border-radius:50%;background:currentColor;display:inline-block}.review-move.selected{background:#dbe6cf;border-color:#9db28a}.review-detail{margin-top:10px}.review-locked{display:flex;align-items:center;gap:10px;flex-wrap:wrap;color:#7a6330;background:#f6f0df}.review-locked svg{flex-shrink:0}.review-locked p{flex:1;min-width:150px}.review-preview-note{margin:10px 0 0;font-size:10px;line-height:1.7;color:#738567}.notation-form{display:flex;gap:8px;margin-top:12px}.notation-form input{flex:1;min-width:0;padding:11px 13px;border:1px solid #cdd7c1;border-radius:8px;background:#fffef9;font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:16px;color:#244b3f}.lesson-card.is-locked{background:#f6f1e2;border-color:#e3d7b4}.lesson-card.is-locked .lesson-duration{color:#8a6c28;display:inline-flex;align-items:center;gap:4px}.study-notation{margin-top:14px}.notation-part[role=listitem]{cursor:default}.social-login{display:flex;flex-direction:column;gap:10px;margin:4px 0 6px}.social-button{display:flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:0 16px;border-radius:9px;border:1px solid #cdd7c1;font-size:13px;font-weight:600;text-decoration:none}.social-button.google{background:#fff;color:#3c4043}.social-button.apple{background:#000;border-color:#000;color:#fff}.social-button:hover{filter:brightness(.96)}.social-button.apple:hover{filter:brightness(1.25)}.social-divider{display:flex;align-items:center;gap:10px;font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:#8a967d;margin-top:4px}.social-divider:before,.social-divider:after{content:"";flex:1;height:1px;background:var(--line)}body .brand.brand-long strong{font-size:21px;letter-spacing:-.03em}body .brand.brand-long{font-size:24px}:root{font-family:Manrope,sans-serif;color:#293c34;background:#f8f8f2;font-synthesis:none;font-weight:400;font-size:14px;--ink:#293c34;--muted:#7d877d;--forest:#244b3f;--forest-dark:#183b30;--sage:#e8ede4;--paper:#f8f8f2;--card:#fffef9;--line:#e3e7dc;--gold:#b48b4d;--serif:"Cormorant Garamond",Georgia,serif;--shadow:0 12px 40px #29463208}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer;color:inherit}button:disabled{cursor:default}button:focus-visible,a:focus-visible{outline:3px solid #bf9753;outline-offset:4px}input:focus,select:focus{outline:2px solid #97ad95;outline-offset:2px}button{touch-action:manipulation}button svg{flex-shrink:0}svg{vertical-align:middle}h1,h2,h3,h4,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:500;letter-spacing:-.025em}h1{font-size:60px;line-height:1.06}h2{font-size:32px;line-height:1.15}h3{font-size:26px;line-height:1.15}em{color:#55745d;font-weight:400}input,select{width:100%;border:1px solid var(--line);border-radius:8px;background:#fffefb;padding:12px 13px;color:var(--ink);min-width:0}input::placeholder{color:#92998f}input[type=checkbox]{width:16px;height:16px;accent-color:var(--forest)}input[type=number]{appearance:textfield;-moz-appearance:textfield}input::-webkit-inner-spin-button{appearance:none}fieldset{border:0;padding:0;margin:0}fieldset:disabled{opacity:.47}a{color:var(--forest)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.muted{color:var(--muted)}.center{text-align:center}.full{width:100%}.rotate-180{transform:rotate(180deg)}.app-shell{display:flex;min-height:100vh}.sidebar{width:236px;flex-shrink:0;position:fixed;inset:0 auto 0 0;background:#f0f2e9;border-right:1px solid #e1e6d8;display:flex;flex-direction:column;padding:34px 20px 18px;z-index:30}.brand{background:transparent;border:0;display:flex;align-items:center;gap:10px;text-align:left;padding:0 10px;font-family:var(--serif);font-size:25px;line-height:.88;letter-spacing:-.045em}.brand strong{font-size:35px;font-weight:600}.brand strong>span{color:#a58a56}.brand-mark{width:46px;height:52px;border-radius:11px;background:var(--forest);display:flex;align-items:center;justify-content:center;box-shadow:0 3px #163b30}.brand-mark .piece-svg{width:42px;height:48px;filter:drop-shadow(0 2px 1px #10271d44)}.brand-caption{font-size:8px;letter-spacing:.2em;color:#81917d;margin:21px 0 42px 12px}.sidebar nav{display:flex;flex-direction:column;gap:7px}.nav-label{font-size:9px;letter-spacing:.15em;color:#83907c;margin:0 12px 14px}.nav-item{background:transparent;border:0;border-radius:8px;display:flex;align-items:center;gap:11px;padding:12px 13px;text-align:left;color:#6e7b6b;font-size:12px;font-weight:500;transition:background .15s,color .15s}.nav-item:hover{background:#e7ebdf;color:var(--forest)}.nav-item.active{background:var(--forest);color:#fbfcf1;box-shadow:0 4px 12px #244b3f12}.nav-item>span:first-of-type{flex:1}.nav-count{min-width:20px;height:20px;display:grid;place-items:center;font-size:10px;border-radius:4px;background:#ffffff20}.nav-new{font-size:7px;letter-spacing:.08em;color:#718568;border:1px solid #d9e1cf;padding:3px 4px;border-radius:3px}.nav-item.active .nav-new{color:#e8eadb;border-color:#ffffff40}.sidebar-bottom{margin-top:auto;padding-top:48px}.membership-card{background:#e6ebdc;border:1px solid #dce3cf;border-radius:10px;padding:16px 15px;position:relative}.membership-icon{color:#9b7c45;margin-bottom:10px}.membership-card strong{font-family:var(--serif);font-weight:600;font-size:20px;display:block;line-height:1.15}.membership-card p{font-size:10px;line-height:1.7;color:#7b8770;margin:7px 0 12px}.membership-card button{border:0;background:transparent;padding:0;display:flex;align-items:center;gap:6px;width:100%;font-size:15px;font-weight:700;color:#46643e}.membership-card button>span{font-size:10px;font-weight:500}.membership-card button svg{margin-left:auto}.settings-nav{margin-top:17px;width:100%}.sidebar-footer{display:flex;gap:7px;align-items:center;border-top:1px solid #dfe5d5;padding-top:17px;margin:12px 11px 0;font-size:8px;letter-spacing:.025em;color:#89967d}.live-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#719573;flex-shrink:0;box-shadow:0 0 0 3px #74977212}.main-shell{margin-left:236px;flex:1;min-width:0}.topbar{height:77px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 43px;background:#f8f8f2d9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:relative;z-index:20}.topbar-left,.topbar-right{display:flex;align-items:center;gap:22px}.topbar-breadcrumb{display:flex;align-items:center;gap:12px;font-size:11px;color:#73816c}.topbar-breadcrumb>span{color:#9ba28f;font-size:10px}.local-badge{display:flex;align-items:center;gap:6px;color:#919985;font-size:9px;letter-spacing:.03em}.local-badge>span{width:5px;height:5px;background:#839a78;border-radius:50%}.local-badge.offline{color:#aa714d}.local-badge.offline>span{background:#aa714d}.account-button{border:0;padding:0;background:transparent;display:flex;gap:10px;align-items:center;font-size:11px;font-weight:600}.avatar{width:43px;height:43px;border-radius:50%;background:#e6ebdc;color:#526849;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;flex-shrink:0;border:1px solid #dfe6d3}.avatar.small{width:31px;height:31px;font-size:10px}.avatar.bot-avatar{background:#e8e9df;color:#67735a}.icon-button{border:0;background:transparent;width:32px;height:32px;padding:6px;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;transition:background .15s}.icon-button:hover{background:#e7ecdf}.icon-button:disabled{opacity:.5}.notification-button{position:relative;color:#75816c}.notification-dot{position:absolute;top:3px;right:5px;width:6px;height:6px;border:1px solid var(--paper);border-radius:50%;background:var(--gold)}.notification-button.pressed{background:#e9ecdf}.main-content{padding:37px 43px 0;max-width:1480px;margin:auto;min-height:calc(100vh - 77px)}.button{border:1px solid transparent;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-size:11px;font-weight:600;padding:13px 18px;min-height:44px;transition:background .16s,transform .16s,box-shadow .16s}.button.primary{background:var(--forest);color:#fbfcf2;box-shadow:0 4px 12px #244b3f0a}.button.primary:hover:not(:disabled){background:var(--forest-dark);transform:translateY(-1px);box-shadow:0 6px 15px #244b3f16}.button.secondary{background:transparent;border-color:#dce2d5;color:#516a48}.button.secondary:hover:not(:disabled){background:#edf0e5;border-color:#cbd6bf}.button.ghost{background:transparent;color:#859078;border:0;min-height:34px;padding:8px}.button.small{padding:9px 12px;min-height:34px;font-size:10px;border-radius:6px}.button.danger{background:#9b5143;color:#fff}.button:disabled{opacity:.5;transform:none;box-shadow:none}.button-row{display:flex;gap:10px;align-items:center;justify-content:flex-end}.text-button{display:inline-flex;align-items:center;gap:10px;border:0;background:transparent;font-size:11px;font-weight:600;padding:5px 0;color:#55754b}.text-button:hover{color:#254c39}.eyebrow{font-family:Manrope,sans-serif;font-size:8px;font-weight:600;letter-spacing:.15em;color:#8c977d;display:inline-flex;align-items:center;gap:7px;line-height:1.6}.section-title{display:flex;justify-content:space-between;align-items:center;gap:18px}.section-title h2{font-size:29px}.section-title>span{font-size:10px;color:#8d977f}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:32px}.page-heading h1{margin-top:12px}.page-heading p{font-size:12px;color:var(--muted);margin-top:14px}.heading-icon{color:#b4bea5;stroke-width:1.2}.status-pill{display:inline-flex;align-items:center;gap:6px;background:#eef1e7;border:1px solid #dfe5d5;padding:7px 10px;border-radius:20px;font-size:10px;color:#72826a;white-space:nowrap}.back-link{background:transparent;border:0;display:inline-flex;gap:8px;align-items:center;color:#7e8d74;font-size:10px;padding:0;margin-bottom:20px}.back-link:hover{color:var(--forest)}.page-enter{animation:page-in .38s ease-out}.page-enter>*{animation:fade-rise .45s both}.page-enter>*:nth-child(2){animation-delay:55ms}.page-enter>*:nth-child(3){animation-delay:.11s}.page-enter>*:nth-child(4){animation-delay:.16s}.page-enter>*:nth-child(5){animation-delay:.21s}@keyframes page-in{0%{opacity:.4}to{opacity:1}}@keyframes fade-rise{0%{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}.home-greeting{display:flex;align-items:center;justify-content:space-between;margin-bottom:29px}.home-greeting>div{display:flex;flex-direction:column;gap:6px}.home-date{font-size:10px;color:#97a089}.quota-chip{display:flex;align-items:center;gap:10px;font-size:9px;color:#8a967d}.quota-dots{display:flex;gap:3px}.quota-dots i{height:5px;width:5px;border-radius:50%;background:#dde3d3}.quota-dots i.available{background:#7e9a6f}.home-hero{display:grid;grid-template-columns:1fr 1fr;gap:43px;align-items:center;padding:6px 0 34px}.hero-copy{padding-bottom:12px}.hero-kicker{font-size:8px;font-weight:500;color:#859678;letter-spacing:.17em;display:flex;gap:9px;align-items:center;margin-bottom:21px}.hero-kicker>span{width:18px;height:1px;background:#a0ae8d}.hero-copy h1{font-size:clamp(50px,4.7vw,76px);line-height:1.02;letter-spacing:-.044em;font-weight:500}.hero-copy h1 em{font-size:.91em;white-space:nowrap}.hero-copy>p{color:#8b957f;line-height:1.85;font-size:12px;max-width:320px;margin:22px 0 27px}.hero-actions{display:flex;gap:10px;flex-wrap:wrap}.hero-actions .button{min-height:43px;padding:12px 15px;font-size:10px}.hero-proof{display:flex;gap:19px;flex-wrap:wrap;margin-top:24px}.hero-proof>span{display:flex;align-items:center;gap:6px;color:#939d85;font-size:8px}.hero-proof svg{width:12px;height:12px;stroke-width:1.5}.hero-board-composition{padding:15px 16px 0;border:1px solid #e0e4d7;background:#f0f2e8;border-radius:12px;position:relative;box-shadow:0 20px 50px #35432d07}.preview-top{display:flex;align-items:center;gap:8px;font-size:7px;letter-spacing:.13em;color:#8c987f;padding:1px 0 13px}.preview-top .live-dot{width:4px;height:4px}.preview-ornament{margin-left:auto;font-size:7px;font-variant-numeric:tabular-nums;color:#a6ae9a;letter-spacing:.12em}.hero-board-frame{padding:8px;background:#fbfbf3;border:1px solid #d3ddc6;border-radius:5px;box-shadow:0 8px 20px #293f3115}.hero-board-frame .chessboard{border-radius:2px;overflow:hidden}.preview-bottom{display:flex;justify-content:space-between;align-items:center;gap:5px;padding:12px 2px;font-family:var(--serif);font-size:13px;font-style:italic;color:#859275}.preview-piece{width:26px;height:27px;display:block}.preview-piece .piece-svg{width:100%;height:100%}.mode-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;border-top:1px solid var(--line);padding-top:25px;margin-bottom:36px}.mode-card{display:flex;align-items:center;gap:14px;text-align:left;background:#fffef855;border:1px solid #e2e7d7;border-radius:9px;padding:19px 15px;min-width:0;transition:background .15s,transform .15s}.mode-card:hover{background:#eef2e6;transform:translateY(-2px)}.mode-icon{width:39px;height:39px;border-radius:50%;background:#eaf0e3;color:#789167;display:flex;align-items:center;justify-content:center;flex-shrink:0}.mode-card:nth-child(2) .mode-icon{background:#eeecdf;color:#9d9061}.mode-card:nth-child(3) .mode-icon{background:#e5eae5;color:#6f897b}.mode-card .eyebrow{font-size:6px;letter-spacing:.1em}.mode-card h3{font-size:25px;margin:5px 0}.mode-card p{font-size:8px;color:#97a087;line-height:1.5}.mode-card>svg{margin-left:auto;color:#9fab8e;width:14px;height:14px}.home-current{margin-bottom:35px}.home-current .section-title{margin-bottom:18px}.home-current .section-title h2{font-size:28px;margin-top:7px}.home-current-list{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.home-current-list>button{border:1px solid var(--line);background:#fffef980;border-radius:9px;text-align:left;display:flex;align-items:center;gap:12px;padding:15px}.home-current-list>button:hover{background:#edf1e6}.home-current-list .avatar{width:34px;height:34px;font-size:10px}.home-current-list strong{font-size:11px;display:block}.home-current-list small{display:block;color:#929e85;font-size:8px;margin-top:5px}.home-current-list svg{margin-left:auto;color:#819470;flex-shrink:0}.home-learn{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:22px;align-items:stretch;margin-top:6px}.home-learn-copy{padding:14px 14px 12px 0}.home-learn-copy h2{font-size:38px;line-height:1.05;margin-top:13px}.home-learn-copy p{font-size:10px;line-height:1.9;color:#98a08d;margin-top:15px;max-width:245px}.home-learn-copy .text-button{margin-top:16px;font-size:9px}.home-lesson-card{border:1px solid #e1e7d7;border-radius:10px;background:#eff2e6;padding:17px 19px;text-align:left;position:relative;overflow:hidden;min-height:232px;display:flex;flex-direction:column}.home-lesson-card:hover{background:#e9efdf}.home-lesson-card.knight{background:#eeeede;border-color:#e3e4d1}.home-lesson-card.knight:hover{background:#e8e8d6}.lesson-number{color:#a7b194;font-size:9px;font-variant-numeric:tabular-nums;letter-spacing:.1em}.home-lesson-piece{height:83px;width:80px;position:absolute;right:9px;top:3px;transform:rotate(-9deg);filter:drop-shadow(4px 5px 4px #39463215);opacity:.94}.home-lesson-piece .piece-svg{width:100%;height:100%}.home-lesson-card>div:not(.home-lesson-piece){margin-top:60px}.home-lesson-card .eyebrow{font-size:6px;letter-spacing:.12em}.home-lesson-card h3{font-size:24px;margin-top:8px}.home-lesson-card p{font-size:8px;line-height:1.7;color:#929b84;max-width:160px;margin-top:9px}.home-lesson-action{font-size:8px;display:flex;align-items:center;justify-content:space-between;color:#7f9171;border-top:1px solid #dce4d0;padding-top:13px;margin-top:18px}.home-footer{display:flex;justify-content:space-between;gap:15px;border-top:1px solid var(--line);margin-top:36px;padding:20px 0 22px;color:#a1aa94;font-size:8px}.home-footer>span:first-child{font-family:var(--serif);font-style:italic;font-size:14px}.home-footer>span:last-child{letter-spacing:.15em;font-size:7px}.chessboard{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));width:100%;aspect-ratio:1;background:#e4e9d8;isolation:isolate;--square-light:#edf0e0;--square-dark:#87a17a;--coordinate-light:#8e9f80;--coordinate-dark:#e9eee0;--last-light:#e5e4aa;--last-dark:#adb677}.chessboard[data-theme=wood]{--square-light:#f0e5cd;--square-dark:#b28e66;--coordinate-light:#a68b6a;--coordinate-dark:#f4e8d3;--last-light:#ead399;--last-dark:#c5a657}.chessboard[data-theme=night]{--square-light:#8b9b91;--square-dark:#39594d;--coordinate-light:#39584b;--coordinate-dark:#a8beab;--last-light:#a6b488;--last-dark:#647b46}.board-square{aspect-ratio:1;padding:0;border:0;border-radius:0;position:relative;display:flex;align-items:center;justify-content:center;min-width:0;overflow:visible;transition:background .15s;touch-action:manipulation}.board-square.light{background:var(--square-light)}.board-square.dark{background:var(--square-dark)}.board-square:disabled{opacity:1;color:inherit}.board-square:not(:disabled):hover:after{content:"";position:absolute;inset:0;background:#ffffff0b;pointer-events:none}.board-square.is-last.light{background:var(--last-light)}.board-square.is-last.dark{background:var(--last-dark)}.board-square.is-selected{background:#cfca87;box-shadow:inset 0 0 0 3px #b2a852}.board-square.is-hint{box-shadow:inset 0 0 0 3px #d9b763;background:#d9c38c}.board-square.is-check{background:radial-gradient(ellipse at center,#c2695b99 0%,#c2695b55 60%,transparent 100%),var(--square-dark)}.board-square:focus-visible{outline:3px solid #e8bd66;outline-offset:-3px;z-index:5}.piece-svg{width:88%;height:88%;display:block;pointer-events:none;filter:drop-shadow(0 3px 1px #1d3a2935)}.piece-holder{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:2}.piece-moving{animation:piece-slide .24s cubic-bezier(.2,.75,.3,1) both;z-index:4}.piece-moving .piece-svg{filter:drop-shadow(0 4px 2px #1d3a2940)}@keyframes piece-slide{0%{transform:translate(var(--move-x),var(--move-y))}to{transform:translate(0)}}.square-coordinate{position:absolute;font-size:clamp(7px,.8vw,10px);font-weight:600;line-height:1;pointer-events:none;z-index:6}.square-coordinate.rank{top:5px;left:5px}.square-coordinate.file{bottom:4px;right:5px}.board-square.light .square-coordinate{color:var(--coordinate-light)}.board-square.dark .square-coordinate{color:var(--coordinate-dark)}.legal-dot{width:23%;height:23%;border-radius:50%;background:#29483335;z-index:5;pointer-events:none}.legal-ring{position:absolute;inset:5%;border:4px solid #29483345;border-radius:50%;z-index:5;pointer-events:none}.play-page{padding-bottom:40px}.play-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.play-choice{padding:30px;border-radius:12px;border:1px solid #dbe3d1;display:flex;align-items:flex-start;flex-direction:column;text-align:left;min-height:330px;transition:transform .17s,box-shadow .17s}.play-choice:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.play-choice.computer{background:#edf1e4}.play-choice.friend{background:#ecece0;border-color:#e0e1d0}.play-choice>svg{color:#7a906c;stroke-width:1.2;margin-bottom:28px}.play-choice .eyebrow{font-size:7px}.play-choice h2{font-size:42px;margin-top:12px}.play-choice p{font-size:11px;line-height:1.7;color:#8e9a80;margin-top:15px;max-width:230px}.play-choice>span:last-child{display:flex;justify-content:space-between;align-items:center;width:100%;font-size:11px;font-weight:600;color:#6c835c;margin-top:auto;padding-top:27px}.lobby-section{border:1px solid var(--line);border-radius:12px;padding:26px;margin-top:30px;background:#fffef970}.lobby-section h2{margin-top:8px}.lobby-empty{min-height:145px}.lobby-section>.form-footnote{padding-top:15px;border-top:1px solid var(--line)}.lobby-list{margin-top:20px;display:flex;flex-direction:column;gap:10px}.lobby-list>div{display:flex;align-items:center;gap:12px;border-top:1px solid var(--line);padding-top:14px}.lobby-list strong{font-size:12px}.lobby-list small{display:block;margin-top:5px;font-size:10px;color:#8c997f}.lobby-list .button{margin-left:auto}.game-content{padding-top:25px}.game-heading{margin-bottom:15px}.game-heading .back-link{margin:0}.game-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:30px;padding-bottom:35px;max-width:1100px;margin:auto}.board-area{min-width:0}.board-frame{padding:9px;background:#fefdf3;border:1px solid #d9e1cd;border-radius:6px;box-shadow:0 12px 35px #2d422915;margin:13px 0}.board-frame .chessboard{border-radius:2px;overflow:hidden}.player-strip{display:flex;align-items:center;gap:12px;min-height:57px}.player-strip .avatar{width:40px;height:40px;font-size:12px}.player-info{flex:1;min-width:0}.player-info strong{font-size:12px;font-weight:600;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-info>span{font-size:8px;color:#8b9b7b;display:block;margin-top:5px}.clock{min-width:97px;padding:11px 12px;border:1px solid #dfe6d5;border-radius:7px;font-size:25px;font-weight:500;letter-spacing:.05em;font-variant-numeric:tabular-nums;text-align:center;background:#eef1e7;color:#7f8c75;line-height:1;transition:background .2s}.clock.running{background:var(--forest);color:#f7f9ec;border-color:var(--forest)}.clock.urgent{background:#f0ded2;color:#9b5040;border-color:#e8c6b9}.clock.running.urgent{background:#914d41;color:#fff}.clock svg{display:block;margin:auto}.board-bottom{display:flex;align-items:center;gap:8px;font-size:9px;color:#859776;margin-top:10px}.board-bottom>.icon-button{margin-left:auto}.game-inspector{padding-top:11px;min-width:0}.inspector-header{padding-bottom:22px;border-bottom:1px solid var(--line);margin-bottom:19px}.inspector-header .eyebrow{font-size:7px;letter-spacing:.1em}.inspector-header h2{font-size:32px;line-height:1.05;margin:12px 0}.inspector-header p{font-size:10px;color:#97a087;line-height:1.8}.invite-card,.state-card{background:#eef1e4;border:1px solid #dfe5d1;border-radius:9px;padding:19px;margin-bottom:20px;color:#728663}.invite-card>svg,.state-card>svg{stroke-width:1.4;margin-bottom:16px}.invite-card h3,.state-card h3{color:#41573a;font-size:26px}.invite-card p,.state-card p{font-size:10px;color:#8e9a7d;line-height:1.8;margin:10px 0 14px}.invite-card input{font-size:9px;background:#f9fbf1;margin-bottom:10px}.invite-card small{font-size:8px;color:#8b967b;display:block;margin-top:12px;line-height:1.8}.state-card .button{margin-top:10px}.result-card{background:#efeede;border-color:#e3dfc5}.result-card>svg{color:#a18e55}.section-label{display:flex;justify-content:space-between;align-items:center;color:#8c997e;letter-spacing:.09em;font-size:7px;padding:0 0 11px;border-bottom:1px solid var(--line)}.section-label>span:last-child{letter-spacing:0}.move-list{max-height:235px;min-height:110px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#dbe2ce transparent}.empty-moves{display:flex;align-items:center;gap:20px;padding:30px 10px;color:#a2ac91}.empty-moves>span{font-family:var(--serif);font-size:40px;color:#c6cfb7}.empty-moves p{font-family:var(--serif);font-size:18px;line-height:1.25;font-style:italic}.move-pair{display:grid;grid-template-columns:35px 1fr 1fr;padding:11px 12px;align-items:center;font-size:12px;letter-spacing:.02em}.move-pair:nth-child(2n){background:#edf1e51f}.move-pair>span{font-size:9px;color:#a0ab90}.move-pair strong{font-weight:500}.game-actions{border-top:1px solid var(--line);padding-top:18px;margin-top:15px}.game-actions>.button{font-size:10px}.action-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.action-grid>button{display:flex;align-items:center;gap:7px;border:0;background:transparent;padding:9px 3px;font-size:9px;color:#829174;text-align:left}.action-grid>button:disabled{opacity:.45}.danger-link{color:#ab7460!important}.pgn-export{width:100%;margin-top:14px;font-size:9px}.save-note{display:flex;align-items:flex-start;gap:6px;color:#94a183;font-size:8px;line-height:1.8;margin-top:14px}.save-note svg{margin-top:2px;flex-shrink:0}.request-card{background:#f3edda;border:1px solid #e7dab8;padding:14px;border-radius:8px;margin-bottom:15px;color:#9a8556}.request-card p{font-size:10px;line-height:1.7;margin:10px 0}.hint-note{font-size:10px;color:#8c987b;line-height:1.8;padding:12px 5px}.promotion-picker{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.promotion-picker>button{border:1px solid var(--line);background:#eff2e6;border-radius:7px;padding:10px 2px;display:flex;align-items:center;flex-direction:column;gap:6px;font-size:10px}.promotion-picker>button:hover{background:#e4ecd8}.promotion-picker .piece-svg{width:65px;height:65px}.learn-page{padding-bottom:35px}.learn-header{display:flex;justify-content:space-between;gap:30px;align-items:center;margin-bottom:42px}.learn-header h1{margin-top:13px}.learn-header p{font-size:12px;color:#919d81;line-height:1.9;max-width:420px;margin-top:17px}.learn-progress-card{width:190px;background:#edf1e5;border:1px solid #dfe6d2;border-radius:11px;display:flex;flex-direction:column;align-items:flex-start;padding:22px;color:#839671;flex-shrink:0}.learn-progress-card>svg{stroke-width:1.3}.learn-progress-value{font-family:var(--serif);font-size:50px;line-height:1;margin-top:13px;color:#506c43}.learn-progress-value small{font-family:Manrope,sans-serif;font-size:14px;color:#a0ac8b}.learn-progress-card>span:not(.learn-progress-value){font-size:9px;margin-top:7px}.learn-progress-card>small{font-size:8px;color:#a0ad8e;margin-top:12px}.lesson-progress{width:100%;height:3px;background:#dce4cc;border-radius:3px;margin-top:18px;overflow:hidden}.lesson-progress>span{height:100%;display:block;background:#7c9a65;transition:width .3s}.learn-section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:24px;gap:20px}.learn-section-heading h2{font-size:31px;margin-top:8px}.learn-section-caption{color:#a0aa92;font-size:8px;padding-bottom:3px}.lesson-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.lesson-card{border:1px solid #e0e6d3;border-radius:10px;background:#f1f4e9;display:flex;flex-direction:column;padding:20px;text-align:left;transition:transform .17s,background .17s;position:relative;min-height:282px;overflow:hidden}.lesson-card:nth-child(3n+2){background:#f1efdf;border-color:#e5e1cb}.lesson-card:nth-child(3n){background:#eaf0e6;border-color:#dce6d5}.lesson-card:hover{transform:translateY(-3px);background:#e8efdd}.lesson-card.is-complete{border-color:#b8c8a7}.lesson-card-top{display:flex;justify-content:space-between;align-items:center;gap:7px}.lesson-duration{font-size:8px;color:#a2ad90}.lesson-completed{font-size:8px;color:#74925f;display:flex;align-items:center;gap:4px}.lesson-icon{width:73px;height:85px;margin:8px 0 12px;filter:drop-shadow(3px 5px 3px #35492b14)}.lesson-icon .piece-svg{width:100%;height:100%}.lesson-category{font-size:7px;letter-spacing:.13em;color:#99a788;text-transform:uppercase}.lesson-card h3{font-size:28px;margin-top:8px;line-height:1.05}.lesson-card p{font-size:10px;line-height:1.75;color:#94a183;margin-top:9px;flex:1}.lesson-card-action{border-top:1px solid #dce5ce;display:flex;justify-content:space-between;align-items:center;color:#7e966d;font-size:9px;font-weight:600;padding-top:15px;margin-top:20px}.learn-bottom{border:1px solid var(--line);border-radius:11px;padding:23px;display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:30px;background:#fffef970}.learn-bottom>div{display:flex;align-items:center;gap:18px}.learn-bottom>div>svg{color:#9cad84;stroke-width:1.4}.learn-bottom h3{font-size:26px}.learn-bottom p{font-size:10px;color:#99a58a;margin-top:7px}.lesson-page{padding-bottom:40px}.lesson-title{display:flex;justify-content:space-between;gap:25px;align-items:center;margin-bottom:28px}.lesson-title h1{font-size:46px;margin-top:13px}.lesson-workspace{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:32px;max-width:1100px}.lesson-stage{background:#edf1e4;border:1px solid #dce5d0;border-radius:11px;padding:19px;min-width:0}.lesson-stage-label{display:flex;justify-content:space-between;font-size:8px;color:#91a27d;letter-spacing:.1em;margin-bottom:15px}.lesson-board{padding:8px;background:#fffdf3;border:1px solid #d3dfc5;border-radius:5px;box-shadow:0 6px 18px #2c432d0c}.lesson-board .chessboard{overflow:hidden;border-radius:2px}.lesson-board-caption{font-size:8px;line-height:1.8;text-align:center;color:#96a686;margin-top:15px}.lesson-coach{padding:24px 0 0}.lesson-step h2{font-size:35px;margin-top:12px;line-height:1.06}.lesson-step p{font-size:12px;line-height:1.9;color:#879a77;margin-top:20px}.lesson-demo{border-top:1px solid var(--line);padding-top:22px;margin-top:26px}.lesson-demo>span{display:flex;align-items:center;gap:7px;font-size:10px;color:#98a888}.lesson-demo p{font-size:11px;color:#90a080;line-height:1.9;margin:13px 0 20px}.lesson-demo .button{width:100%}.lesson-controls{display:flex;flex-direction:column;gap:14px;margin-top:24px}.lesson-controls .button{width:100%}.lesson-controls .text-button{justify-content:center;font-size:9px}.lesson-dots{display:flex;gap:5px;margin-top:28px;justify-content:center}.lesson-dots>span{width:6px;height:6px;border-radius:50%;background:#dfe6d3}.lesson-dots>span.is-current{background:#87a471}.lesson-feedback{display:flex;align-items:flex-start;gap:10px;border-radius:8px;padding:16px;margin-top:24px;background:#ecf2e4;border:1px solid #d9e6cb;color:#749561}.lesson-feedback.error{background:#f3edda;border-color:#e7ddba;color:#a38c51}.lesson-feedback>svg{flex-shrink:0;margin-top:2px}.lesson-feedback p{font-size:11px;line-height:1.85}.lesson-hint{display:flex;align-items:center;gap:8px;border:0;background:transparent;font-size:10px;color:#9b9866;padding:0;margin-top:25px}.lesson-hint-copy{font-size:10px;color:#a09b75;line-height:1.9;margin-top:13px}.lesson-finished .eyebrow{margin-top:24px}.lesson-finished h2{font-size:38px;margin-top:12px}.lesson-finished>p{font-size:12px;line-height:1.9;color:#92a27f;margin-top:20px}.lesson-success-icon{width:67px;height:67px;background:#e6efdc;border:1px solid #d5e2c5;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#82a16d}.lesson-finished>.text-button{display:flex;justify-content:center;width:100%;margin-top:22px;font-size:9px}.modal{width:min(490px,calc(100vw - 32px));padding:30px;border:1px solid #dce4d2;background:#f9faf3;border-radius:15px;box-shadow:0 24px 100px #132a2960;color:var(--ink);max-height:calc(100dvh - 40px);overflow-y:auto}.modal.wide{width:min(700px,calc(100vw - 32px))}.modal::backdrop{background:#1e322c66;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal-head{display:flex;justify-content:space-between;gap:15px;margin-bottom:24px}.modal-head .eyebrow{font-size:7px;letter-spacing:.18em}.modal-head h2{font-size:38px;line-height:1.03;margin-top:11px}.modal-head p{font-size:11px;line-height:1.8;color:#929f85;margin-top:13px}.modal-head>.icon-button{margin-top:0;color:#90a080}.segmented{display:flex;gap:3px;border:1px solid #e0e6d6;border-radius:7px;background:#ecf0e5;padding:4px}.segmented>button{flex:1;border:0;background:transparent;border-radius:4px;padding:9px 7px;font-size:10px;white-space:nowrap;color:#8a9a7c;display:flex;align-items:center;justify-content:center;gap:7px;transition:background .16s}.segmented>button.active{background:#fffef7;box-shadow:0 2px 6px #30492309;color:#4b6940}.segmented.compact{padding:3px}.segmented.compact>button{padding:6px 8px;font-size:8px}.auth-tabs{margin-bottom:23px}.form-stack{display:flex;flex-direction:column;gap:18px}.form-stack label{display:flex;flex-direction:column;gap:8px;color:#6e815e;font-size:10px;font-weight:500}.input-wrap{display:flex;align-items:center;gap:10px;border:1px solid #dde4d2;border-radius:8px;padding:0 12px;background:#fffef8;color:#a1b090}.input-wrap input{border:0;background:transparent;padding:12px 0;outline:none;font-size:11px}.input-wrap:focus-within{outline:2px solid #a5b797;outline-offset:2px}.input-wrap .icon-button{width:25px;height:28px;margin-right:-6px;color:#a1b090}.input-wrap>svg{flex-shrink:0}.form-error{color:#a45d4c;font-size:11px;background:#f4e7df;border:1px solid #ead1c5;padding:12px;border-radius:7px;line-height:1.8}.form-footnote{font-size:9px;color:#9aa78b;line-height:1.9}.form-stack>.form-footnote{text-align:center}.game-kind-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:23px}.game-kind-picker>button{display:flex;flex-direction:column;align-items:center;gap:12px;background:#eff2e7;border:1px solid #e0e6d6;border-radius:9px;padding:17px 7px;color:#95a483;font-size:9px}.game-kind-picker>button.selected{color:#516e43;background:#e5eddb;border-color:#afc399}.game-kind-picker svg{stroke-width:1.5}.field-heading{display:block;font-size:8px;letter-spacing:.1em;color:#8fa17c;margin:20px 0 11px}.mode-picker{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.mode-picker>button{display:flex;align-items:center;gap:13px;border:1px solid #e0e6d5;background:#f4f6ed;border-radius:8px;padding:13px 15px;text-align:left;color:#97a684}.mode-picker>button.selected{border-color:#b2c69e;background:#e9f0e1;color:#73915b}.mode-picker strong{display:block;font-size:11px;font-weight:600;color:#6a815c}.mode-picker small{display:block;font-size:9px;color:#9da98c;margin-top:4px}.mode-picker>button>svg:last-child:not(:first-child){margin-left:auto}.compact-field{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#8c9e7a;margin-bottom:20px}.compact-field input{width:75px;text-align:center;padding:8px}.difficulty-note{margin:10px 0 18px}.color-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:23px 0;font-size:10px;color:#90a080}.color-row .segmented{width:200px}.color-dot{width:10px;height:10px;border-radius:50%;display:block}.color-dot.white{background:#fff9e8;border:1px solid #d9d8b8}.color-dot.black{background:#555441;border:1px solid #414333}.modal>.form-footnote{margin-top:15px}.inline-note{display:flex;gap:10px;align-items:flex-start;background:#eff2e6;border:1px solid #e0e6d4;padding:14px;border-radius:8px;color:#92a180;font-size:10px;line-height:1.8}.inline-note>svg{flex-shrink:0;margin-top:2px}.game-kind-picker+.inline-note{margin-bottom:18px}.premium-price{text-align:center;padding:5px 0 25px}.premium-price>svg{display:block;margin:0 auto 15px;color:#b39b62;stroke-width:1.2}.premium-price>span{font-family:var(--serif);font-size:23px;color:#5f7650}.premium-price strong{font-size:85px;font-weight:500;line-height:1;letter-spacing:-.04em}.premium-price small{font-family:Manrope,sans-serif;font-size:11px;color:#97a586}.premium-price p{color:#9aa78a;font-size:9px;margin-top:12px}.premium-benefits{display:flex;flex-direction:column;gap:16px;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:22px}.premium-benefits>span{display:flex;align-items:flex-start;gap:9px;font-size:10px;color:#879b73;line-height:1.7}.premium-benefits svg{flex-shrink:0;color:#90a775}.premium-benefits+.inline-note{margin-bottom:22px}.invite-welcome{padding:10px 0 22px;text-align:center}.invite-welcome svg{color:#8fa77c;stroke-width:1.4}.invite-welcome p{color:#92a180;font-size:12px;line-height:1.9;max-width:320px;margin:20px auto 0}.toast{position:fixed;bottom:25px;left:calc(50% + 118px);transform:translate(-50%);z-index:1000;border:1px solid #dbcbbb;background:#faf6ed;box-shadow:0 10px 50px #18342925;border-radius:9px;display:flex;align-items:center;gap:10px;max-width:560px;width:max-content;padding:14px 12px 14px 17px;color:#a08255;animation:toast-in .2s ease-out}.toast p{font-size:11px;line-height:1.7;max-width:460px}.toast>svg{flex-shrink:0}.toast.success{background:#f3f8eb;border-color:#c6d7b4;color:#74975b}.toast .icon-button{color:inherit}.toast .icon-button:hover{background:#dedfcb}@keyframes toast-in{0%{opacity:0;margin-bottom:-10px}to{opacity:1;margin-bottom:0}}.notifications-popover{position:absolute;right:40px;top:67px;width:365px;max-height:520px;overflow:auto;background:#fcfdf5;border:1px solid #dce5d0;border-radius:12px;padding:20px;box-shadow:0 15px 60px #25443220;z-index:60}.notifications-popover .section-title{margin-bottom:14px}.notifications-popover h3{font-size:25px}.notice-item{width:100%;display:flex;align-items:center;gap:10px;text-align:left;border:0;background:transparent;padding:13px 0;border-bottom:1px solid var(--line)}.notice-item:hover{background:#f0f4e7}.notice-item p{font-size:10px;color:#899d73;line-height:1.7}.notice-item small{font-size:8px;color:#a2b090;display:block;margin-top:5px}.notice-item>svg{margin-left:auto;color:#a2b190}.notice-icon{width:32px;height:32px;border-radius:50%;background:#e9f0df;color:#8da875;flex-shrink:0;display:flex;align-items:center;justify-content:center}.notifications-popover>.text-button{margin-top:16px;font-size:9px}.tabs{display:flex;gap:27px;border-bottom:1px solid var(--line);margin-bottom:26px}.tabs>button{display:flex;align-items:center;gap:8px;border:0;border-bottom:2px solid transparent;background:transparent;padding:14px 0;font-size:11px;color:#98a78a}.tabs>button.active{border-color:#749262;color:#567846}.tabs>button>span{font-size:8px;background:#e8eedc;padding:3px 6px;border-radius:4px}.game-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding-bottom:40px}.saved-game-card{background:#fffef980;border:1px solid var(--line);border-radius:11px;padding:20px;text-align:left;transition:transform .15s,background .15s}.saved-game-card:hover{background:#eff3e7;transform:translateY(-2px)}.saved-card-top{display:flex;justify-content:space-between;gap:10px;align-items:center}.tiny-status{font-size:8px;color:#85a16e;background:#eaf1e1;border:1px solid #dce8cc;padding:5px 8px;border-radius:20px;line-height:1.3}.tiny-status.neutral{background:#eeefe3;border-color:#e0e4d0;color:#9ba885}.saved-game-card h3{font-size:28px;margin-top:18px}.saved-game-card p{font-size:10px;color:#94a184;margin-top:10px}.saved-card-bottom{border-top:1px solid var(--line);padding-top:15px;margin-top:23px;display:flex;justify-content:space-between;align-items:center;font-size:9px;color:#a0ac90}.saved-card-bottom svg{color:#91a67b}.empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;padding:75px 20px 90px;color:#97a588}.empty-state>svg{stroke-width:1.3;color:#b3c09f}.empty-state h2{font-size:35px;margin-top:23px}.empty-state p{font-size:12px;line-height:1.9;max-width:420px;margin-top:15px}.empty-state .button{margin-top:25px}.empty-inline{display:flex;align-items:center;justify-content:center;flex-direction:column;padding:30px 10px;gap:16px;color:#a3b08f}.empty-inline>svg{stroke-width:1.3}.empty-inline p{font-family:var(--serif);font-size:21px;line-height:1.4;text-align:center}.subtle-loading{font-size:11px;color:#98a78b;padding:35px 0}.community-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:24px;padding-bottom:40px}.ranking-card,.players-card{border:1px solid var(--line);background:#fffef97a;border-radius:11px;padding:24px;min-width:0}.ranking-card .section-title h2,.players-card .section-title h2{font-size:28px}.card-description{font-size:10px;line-height:1.8;color:#98a78b;margin-top:13px}.ranking-table{margin:25px 0}.ranking-table-head{display:flex;justify-content:space-between;font-size:7px;letter-spacing:.13em;color:#a2b092;padding-bottom:12px;border-bottom:1px solid var(--line)}.ranking-row{display:flex;align-items:center;gap:11px;padding:16px 0;border-bottom:1px solid #e4e9db}.ranking-row.own{background:#edf3e633;border-radius:4px}.rank-number{font-size:10px;color:#a4b192;min-width:18px;text-align:center;display:inline-block}.rank-number.first{color:#b59c61}.ranking-row .avatar{width:32px;height:32px;font-size:10px}.ranking-row>div strong{font-size:11px;font-weight:500}.ranking-row small{display:block;font-size:8px;color:#a2b090;margin-top:5px}.wins-number{margin-left:auto;font-family:var(--serif);font-size:32px;color:#799363;font-weight:500;line-height:1}.players-card .section-title{margin-bottom:23px}.players-card .section-title>svg{color:#94a782}.player-list{margin-top:19px}.player-list-row{display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--line);padding:14px 0}.player-list-row .avatar{width:35px;height:35px;font-size:10px}.player-list-row>div{flex:1;min-width:0}.player-list-row strong{font-size:11px;display:block;overflow:hidden;text-overflow:ellipsis}.player-list-row small{display:block;font-size:8px;margin-top:5px;color:#a0af90}.player-list-row .icon-button{color:#91a77b;width:28px;height:28px}.player-list-row .challenge-button{background:#eaf1df;color:#7d9c65}.players-card>.form-footnote{margin-top:23px}.championship-banner{display:flex;align-items:center;gap:30px;background:#eaf0df;border:1px solid #dce6cb;border-radius:11px;padding:29px 32px;margin-bottom:30px}.championship-mark{width:99px;height:99px;border-radius:50%;background:#e0e9cf;display:flex;align-items:center;justify-content:center;color:#92a676;flex-shrink:0}.championship-mark svg{stroke-width:1.2}.championship-banner h2{font-size:37px;margin-top:10px}.championship-banner p{font-size:11px;color:#91a17d;line-height:1.8;max-width:460px;margin-top:10px}.tournament-card-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:23px;padding-bottom:40px}.tournament-card{border:1px solid var(--line);border-radius:11px;background:#fffef960;text-align:left;padding:25px;transition:background .15s}.tournament-card:hover{background:#edf2e5}.tournament-card>div{display:flex;justify-content:space-between;align-items:center;gap:10px;color:#94aa7c}.tournament-card>div>svg{stroke-width:1.4}.tournament-card h2{font-size:33px;margin-top:28px}.tournament-card p{font-size:9px;color:#a0ae90;margin-top:9px}.tournament-card>div:last-child{margin-top:22px;padding-top:18px;border-top:1px solid var(--line);font-size:9px}.tournament-card>div:last-child>span{display:flex;align-items:center;gap:8px}.tournament-detail-grid{display:grid;grid-template-columns:1fr 280px;gap:25px;padding-bottom:40px}.standings-table{margin-top:25px}.standings-head{display:grid;grid-template-columns:1fr 28px 28px 40px;gap:10px;font-size:7px;letter-spacing:.11em;color:#a1b08f;border-bottom:1px solid var(--line);padding-bottom:12px;text-align:center}.standings-head>span:first-child{text-align:left}.standings-row{display:grid;grid-template-columns:1fr 28px 28px 40px;gap:10px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line);font-size:10px;color:#92a57c;text-align:center}.standings-row>div{display:flex;align-items:center;gap:10px;text-align:left;min-width:0}.standings-row .avatar{width:29px;height:29px;font-size:9px}.standings-row>div strong{font-weight:500;overflow:hidden;text-overflow:ellipsis}.standings-row>strong:last-child{font-size:23px;font-family:var(--serif);font-weight:600;color:#6d8958}.standings-table+.form-footnote{margin-top:17px}.tournament-games-title{margin:30px 0 18px}.tournament-games-title h2{font-size:25px!important}.tournament-games{display:flex;flex-direction:column;gap:9px}.tournament-games>button{border:1px solid var(--line);border-radius:7px;background:#f5f7ed;padding:13px;text-align:left;display:flex;align-items:center;gap:10px;color:#96a982}.tournament-games>button:not(:disabled):hover{background:#eaf2df}.tournament-games>button>span:first-child{display:flex;align-items:center;gap:10px;flex:1;font-size:10px;min-width:0}.tournament-games>button strong{font-weight:500}.tournament-games small{color:#b3bfa4}.tournament-sidebar{align-self:start}.tournament-sidebar>svg{color:#9eae88;stroke-width:1.4}.tournament-sidebar>h2{font-size:33px;margin-top:18px}.tournament-sidebar>p{font-size:11px;line-height:1.9;color:#9dab8c;margin-top:15px}.tournament-sidebar>.field-heading{margin-top:25px}.tournament-sidebar>input{font-size:9px;margin-bottom:15px}.tournament-sidebar>.button{margin-top:10px}.tournament-sidebar>.inline-note{margin-top:22px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.settings-card{background:#fffef980;border:1px solid var(--line);border-radius:11px;padding:25px;min-width:0}.card-heading{display:flex;align-items:center;gap:12px;color:#8fa67a}.card-heading svg{stroke-width:1.3}.card-heading h2{font-size:29px;color:#607d4b}.theme-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0}.theme-picker>button{border:1px solid #e0e7d2;background:#f7f9ef;border-radius:8px;padding:9px;min-width:0}.theme-picker>button.selected{border-color:#aec79a;background:#eef4e4}.theme-picker>button>span{font-size:9px;color:#93a57d;margin-top:8px;display:flex;justify-content:space-between;align-items:center}.mini-board{display:grid;grid-template-columns:1fr 1fr;aspect-ratio:1;border-radius:4px;overflow:hidden}.mini-board>span{position:relative;display:flex;align-items:center;justify-content:center;background:#edf0e0}.mini-board>span:nth-child(2),.mini-board>span:nth-child(3){background:#87a17a}.mini-board.wood>span{background:#f0e5cd}.mini-board.wood>span:nth-child(2),.mini-board.wood>span:nth-child(3){background:#b28e66}.mini-board.night>span{background:#8b9b91}.mini-board.night>span:nth-child(2),.mini-board.night>span:nth-child(3){background:#39594d}.mini-board .piece-svg{width:93%;height:93%}.setting-line{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:20px 0}.setting-line strong{font-size:11px;font-weight:500;color:#748e61}.setting-line p{font-size:9px;line-height:1.8;color:#a0af8d;margin-top:7px}.setting-line:last-child{padding-bottom:0}.toggle{width:36px;height:21px;border:0;border-radius:14px;background:#dfe5d3;padding:3px;display:flex;align-items:center;flex-shrink:0;transition:background .2s}.toggle>span{height:15px;width:15px;border-radius:50%;background:#fcfdf5;box-shadow:0 1px 2px #354b2715;transition:transform .2s}.toggle.on{background:#7e9e65}.toggle.on>span{transform:translate(15px)}.number-control{display:flex;align-items:center;border:1px solid #dfe7d2;border-radius:6px;padding-right:10px;gap:5px;color:#a1b08d;font-size:9px;flex-shrink:0}.number-control input{width:47px;background:transparent;border:0;text-align:center;padding:9px 6px;font-size:14px;color:#789463}.settings-card>.card-description{margin-bottom:22px}.settings-card>.inline-note{margin-top:20px}.notification-options{margin-top:12px}.notification-options>label{display:flex;flex-direction:column;gap:9px;font-size:10px;color:#8da479}.notification-options select{font-size:10px}.check-row{display:flex;gap:17px;flex-wrap:wrap}.check-row label{display:flex;align-items:center;gap:6px;color:#93a780;font-size:10px}.quiet-hours{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:22px}.quiet-hours>label{font-size:9px;color:#94aa7e;display:flex;flex-direction:column;gap:8px}.notification-options>.form-footnote{margin-top:17px}.account-detail{display:flex;justify-content:space-between;gap:20px;padding:18px 0;border-bottom:1px solid var(--line);font-size:10px;color:#a0b18b}.account-detail:first-of-type{margin-top:20px}.account-detail strong{color:#8fa77a;font-weight:500;text-align:right;overflow-wrap:anywhere}.account-settings>.button{margin-top:20px}.account-settings>.button.ghost{margin-top:10px}.account-settings>.form-footnote{margin-top:15px}.settings-save{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--line);padding:25px 0 40px;margin-top:28px}.settings-save>span{display:flex;align-items:center;gap:7px;font-size:10px;color:#97ac83}.loading-state{min-height:65vh;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#8fa27b;gap:25px;font-size:11px}.loading-state .brand-mark{width:60px;height:65px;animation:loading-breathe 1.8s infinite ease-in-out}@keyframes loading-breathe{0%,to{opacity:.6;transform:translateY(0)}50%{opacity:1;transform:translateY(-4px)}}.mobile-menu-button,.mobile-bottom-nav,.sidebar-scrim{display:none}
