.cm-chessboard .board.input-enabled .square{cursor:pointer}.cm-chessboard .coordinates,.cm-chessboard .markers-layer,.cm-chessboard .pieces-layer,.cm-chessboard .markers-top-layer{pointer-events:none}.cm-chessboard-content .list-inline{padding-left:0;list-style:none}.cm-chessboard-content .list-inline-item{display:inline-block}.cm-chessboard-content .list-inline-item:not(:last-child){margin-right:1rem}.cm-chessboard-accessibility.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden}.cm-chessboard-accessibility button:disabled,.cm-chessboard-accessibility button:disabled:hover{opacity:.5;cursor:not-allowed;pointer-events:none}.cm-chessboard.default .board .square.white{fill:#ecdab9}.cm-chessboard.default .board .square.black{fill:#c5a076}.cm-chessboard.default.border-type-thin .board .border{stroke:#c5a076;stroke-width:.7%;fill:#c5a076}.cm-chessboard.default.border-type-none .board .border{stroke:#c5a076;stroke-width:0;fill:#c5a076}.cm-chessboard.default.border-type-frame .board .border{fill:#ecdab9;stroke:none}.cm-chessboard.default.border-type-frame .board .border-inner{fill:#c5a076;stroke:#c5a076;stroke-width:.7%}.cm-chessboard.default .coordinates{pointer-events:none;-webkit-user-select:none;user-select:none}.cm-chessboard.default .coordinates .coordinate{fill:#b5936d;cursor:default;font-size:7px}.cm-chessboard.default .coordinates .coordinate.black{fill:#eeddbf}.cm-chessboard.default .coordinates .coordinate.white{fill:#b5936d}.cm-chessboard.default-contrast .board .square.white{fill:#ecdab9}.cm-chessboard.default-contrast .board .square.black{fill:#c5a076}.cm-chessboard.default-contrast.border-type-thin .board .border{stroke:#c5a076;stroke-width:.7%;fill:#c5a076}.cm-chessboard.default-contrast.border-type-none .board .border{stroke:#c5a076;stroke-width:0;fill:#c5a076}.cm-chessboard.default-contrast.border-type-frame .board .border{fill:#ecdab9;stroke:none}.cm-chessboard.default-contrast.border-type-frame .board .border-inner{fill:#c5a076;stroke:#c5a076;stroke-width:.7%}.cm-chessboard.default-contrast .coordinates{pointer-events:none;-webkit-user-select:none;user-select:none}.cm-chessboard.default-contrast .coordinates .coordinate{fill:#b5936d;cursor:default;font-size:7px}.cm-chessboard.default-contrast .coordinates .coordinate.black,.cm-chessboard.default-contrast .coordinates .coordinate.white{fill:#333}.cm-chessboard.green .board .square.white{fill:#e0ddcc}.cm-chessboard.green .board .square.black{fill:#4c946a}.cm-chessboard.green.border-type-thin .board .border{stroke:#4c946a;stroke-width:.7%;fill:#4c946a}.cm-chessboard.green.border-type-none .board .border{stroke:#4c946a;stroke-width:0;fill:#4c946a}.cm-chessboard.green.border-type-frame .board .border{fill:#e0ddcc;stroke:none}.cm-chessboard.green.border-type-frame .board .border-inner{fill:#4c946a;stroke:#4c946a;stroke-width:.7%}.cm-chessboard.green .coordinates{pointer-events:none;-webkit-user-select:none;user-select:none}.cm-chessboard.green .coordinates .coordinate{fill:#468862;cursor:default;font-size:7px}.cm-chessboard.green .coordinates .coordinate.black{fill:#e2e0d0}.cm-chessboard.green .coordinates .coordinate.white{fill:#468862}.cm-chessboard.blue .board .square.white{fill:#d8ecfb}.cm-chessboard.blue .board .square.black{fill:#86afcf}.cm-chessboard.blue.border-type-thin .board .border{stroke:#86afcf;stroke-width:.7%;fill:#86afcf}.cm-chessboard.blue.border-type-none .board .border{stroke:#86afcf;stroke-width:0;fill:#86afcf}.cm-chessboard.blue.border-type-frame .board .border{fill:#d8ecfb;stroke:none}.cm-chessboard.blue.border-type-frame .board .border-inner{fill:#86afcf;stroke:#86afcf;stroke-width:.7%}.cm-chessboard.blue .coordinates{pointer-events:none;-webkit-user-select:none;user-select:none}.cm-chessboard.blue .coordinates .coordinate{fill:#7ba1be;cursor:default;font-size:7px}.cm-chessboard.blue .coordinates .coordinate.black{fill:#dbeefb}.cm-chessboard.blue .coordinates .coordinate.white{fill:#7ba1be}.cm-chessboard.chess-club .board .square.white{fill:#e6d3b1}.cm-chessboard.chess-club .board .square.black{fill:#af6b3f}.cm-chessboard.chess-club.border-type-thin .board .border{stroke:#692e2b;stroke-width:.7%;fill:#af6b3f}.cm-chessboard.chess-club.border-type-none .board .border{stroke:#692e2b;stroke-width:0;fill:#af6b3f}.cm-chessboard.chess-club.border-type-frame .board .border{fill:#692e2b;stroke:none}.cm-chessboard.chess-club.border-type-frame .board .border-inner{fill:#af6b3f;stroke:#692e2b;stroke-width:.7%}.cm-chessboard.chess-club .coordinates{pointer-events:none;-webkit-user-select:none;user-select:none}.cm-chessboard.chess-club .coordinates .coordinate{fill:#e6d3b1;cursor:default;font-size:7px}.cm-chessboard.chess-club .coordinates .coordinate.black{fill:#e6d3b1}.cm-chessboard.chess-club .coordinates .coordinate.white{fill:#af6b3f}.cm-chessboard.chessboard-js .board .square.white{fill:#f0d9b5}.cm-chessboard.chessboard-js .board .square.black{fill:#b58863}.cm-chessboard.chessboard-js.border-type-thin .board .border{stroke:#404040;stroke-width:.7%;fill:#b58863}.cm-chessboard.chessboard-js.border-type-none .board .border{stroke:#404040;stroke-width:0;fill:#b58863}.cm-chessboard.chessboard-js.border-type-frame .board .border{fill:#f0d9b5;stroke:none}.cm-chessboard.chessboard-js.border-type-frame .board .border-inner{fill:#b58863;stroke:#404040;stroke-width:.7%}.cm-chessboard.chessboard-js .coordinates{pointer-events:none;-webkit-user-select:none;user-select:none}.cm-chessboard.chessboard-js .coordinates .coordinate{fill:#404040;cursor:default;font-size:7px}.cm-chessboard.chessboard-js .coordinates .coordinate.black{fill:#f0d9b5}.cm-chessboard.chessboard-js .coordinates .coordinate.white{fill:#b58863}.cm-chessboard.black-and-white .board .square.white{fill:#fff}.cm-chessboard.black-and-white .board .square.black{fill:#9c9c9c}.cm-chessboard.black-and-white.border-type-thin .board .border{stroke:#9c9c9c;stroke-width:.7%;fill:#9c9c9c}.cm-chessboard.black-and-white.border-type-none .board .border{stroke:#9c9c9c;stroke-width:0;fill:#9c9c9c}.cm-chessboard.black-and-white.border-type-frame .board .border{fill:#fff;stroke:none}.cm-chessboard.black-and-white.border-type-frame .board .border-inner{fill:#9c9c9c;stroke:#9c9c9c;stroke-width:.7%}.cm-chessboard.black-and-white .coordinates{pointer-events:none;-webkit-user-select:none;user-select:none}.cm-chessboard.black-and-white .coordinates .coordinate{fill:#909090;cursor:default;font-size:7px}.cm-chessboard.black-and-white .coordinates .coordinate.black{fill:#fff}.cm-chessboard.black-and-white .coordinates .coordinate.white{fill:#909090}.cm-chessboard .keyboard-focus-indicator .keyboard-focus{fill:none;stroke:#06c;stroke-width:3px;pointer-events:none}.cm-chessboard .keyboard-focus-indicator .keyboard-from-square{fill:#0066cc4d;stroke:#06c;stroke-width:2px;pointer-events:none}.cm-chessboard:focus{outline-offset:2px;outline:2px solid #06c}.cm-chessboard .arrow-warning .arrow-head{fill:orange;fill-rule:nonzero}.cm-chessboard .arrow-warning .arrow-line{stroke:orange;stroke-linecap:round;opacity:.6}.cm-chessboard .arrow-danger .arrow-head{fill:red;fill-rule:nonzero}.cm-chessboard .arrow-danger .arrow-line{stroke:red;stroke-linecap:round;opacity:.5}.cm-chessboard .arrow-success .arrow-head{fill:green;fill-rule:nonzero}.cm-chessboard .arrow-success .arrow-line{stroke:green;stroke-linecap:round;opacity:.5}.cm-chessboard .arrow-info .arrow-head{fill:#00f;fill-rule:nonzero}.cm-chessboard .arrow-info .arrow-line{stroke:#00f;stroke-linecap:round;opacity:.4}.cm-chessboard .arrow-secondary .arrow-head{fill:#666;fill-rule:nonzero}.cm-chessboard .arrow-secondary .arrow-line{stroke:#666;stroke-linecap:butt;opacity:.5}.cm-chessboard .markers{pointer-events:none}.cm-chessboard .markers .marker.marker-frame{stroke:#000;stroke-width:1.8px;opacity:.5}.cm-chessboard .markers .marker.marker-frame-primary,.cm-chessboard .markers .marker.marker-frame-info{stroke:#00f;stroke-width:1.8px;opacity:.4}.cm-chessboard .markers .marker.marker-frame-danger{stroke:red;stroke-width:1.8px;opacity:.4}.cm-chessboard .markers .marker.marker-frame-warning{stroke:orange;stroke-width:1.8px;opacity:.4}.cm-chessboard .markers .marker.marker-circle{stroke:#000;stroke-width:3px;opacity:.3}.cm-chessboard .markers .marker.marker-circle-primary,.cm-chessboard .markers .marker.marker-circle-info{stroke:#00f;stroke-width:3px;opacity:.4}.cm-chessboard .markers .marker.marker-circle-info-filled{stroke:#00f;fill:#00f;stroke-width:3px;opacity:.4}.cm-chessboard .markers .marker.marker-circle-danger{stroke:red;stroke-width:3px;opacity:.4}.cm-chessboard .markers .marker.marker-circle-danger-filled{stroke:red;fill:red;stroke-width:3px;opacity:.4}.cm-chessboard .markers .marker.marker-circle-warning{stroke:orange;stroke-width:3px;opacity:.4}.cm-chessboard .markers .marker.marker-circle-warning-filled{stroke:orange;fill:orange;stroke-width:3px;opacity:.4}.cm-chessboard .markers .marker.marker-circle-success{stroke:green;stroke-width:3px;opacity:.4}.cm-chessboard .markers .marker.marker-circle-success-filled{stroke:green;fill:green;stroke-width:3px;opacity:.4}.cm-chessboard .markers .marker.marker-square{fill:#000;opacity:.11}.cm-chessboard .markers .marker.marker-dot,.cm-chessboard .markers .marker.marker-bevel{fill:#000;opacity:.2}:root{--bg:#fff;--bg-alt:#e8f1fb;--bg-deep:#0d2952;--bg-card:#fff;--border:#c5d8f5;--navy:#0d2952;--blue:#1a5dc8;--blue-hover:#154fa8;--blue-light:#4a82d4;--blue-pale:#e8f1fb;--text:#1a2e4a;--text-muted:#5a7099;--text-on-dark:#e8f1fb;--text-dim:#93b0d8;--radius-sm:4px;--radius:8px;--radius-lg:16px;--shadow:0 2px 12px #0d29521a;--shadow-hover:0 6px 24px #0d29522e;--win:#1a7a40;--win-bg:#e6f7ee;--loss:#b42318;--loss-bg:#fdecea;--draw:#5a7099;--draw-bg:#eef2f8;--inaccuracy:#b7791f;--mistake:#dd6b20;--blunder:#c53030;--graph-white:#e8f1fb;--graph-black:#4a6286;--graph-line:#1a5dc8;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0a1e3d;--bg-alt:#0f2a52;--bg-deep:#071427;--bg-card:#122248;--border:#1e3d6e;--blue:#4a82d4;--blue-hover:#6b9be0;--blue-light:#6b9be0;--blue-pale:#0f2a52;--text:#dce9fa;--text-muted:#7ba0cc;--text-on-dark:#dce9fa;--text-dim:#3a5e90;--shadow:0 2px 12px #0000004d;--shadow-hover:0 6px 24px #00000073;--win:#5cce8c;--win-bg:#0e3320;--loss:#f28b82;--loss-bg:#3b1416;--draw:#93b0d8;--draw-bg:#16294a;--inaccuracy:#e3b341;--mistake:#f0883e;--blunder:#f47067;--graph-white:#93b0d8;--graph-black:#071427;--graph-line:#6b9be0;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}html,body{margin:0}body{background:var(--bg);color:var(--text);font-family:DM Sans,system-ui,sans-serif;font-size:15px;line-height:1.6;overflow-x:hidden}#root{flex-direction:column;min-height:100vh;display:flex}main{flex:1}h1,h2,h3{color:var(--text);text-wrap:balance;margin:0 0 .4em;font-family:Spectral,Georgia,serif;line-height:1.2}h1{letter-spacing:-.02em;font-size:2.4rem;font-weight:400}h2{letter-spacing:-.015em;font-size:1.6rem;font-weight:400}h3{font-size:1.2rem;font-weight:600}h1 em,h2 em{color:var(--blue);font-style:italic;font-weight:600}p{margin:0 0 1em}a{color:var(--blue);text-decoration:none}a:hover{color:var(--blue-hover)}.muted{color:var(--text-muted)}.small{font-size:.85rem}.num{font-variant-numeric:tabular-nums}.eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--blue);font-family:DM Sans,sans-serif;font-size:11px;font-weight:600}.container{max-width:1160px;margin-inline:auto;padding-inline:24px}.header{z-index:100;background:var(--bg);border-bottom:1px solid var(--border);position:sticky;top:0}.header .container{align-items:center;gap:28px;height:64px;display:flex}.logo{color:var(--navy);letter-spacing:-.02em;font-family:Spectral,serif;font-size:22px;font-weight:700}.logo span{color:var(--blue);font-style:italic}.logo:hover{color:var(--navy)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .logo,:root:not([data-theme=light]) .logo:hover{color:var(--text-on-dark)}}.nav{flex:1;gap:28px;display:flex}.nav a{color:var(--text-muted);border-bottom:2px solid #0000;padding:4px 0;font-size:14px;font-weight:500;transition:color .2s}.nav a:hover{color:var(--blue)}.nav a.active{color:var(--blue);border-bottom-color:var(--blue)}.user-chip{color:var(--text-muted);align-items:center;gap:10px;font-size:14px;display:flex}@media (width<=640px){.header .container,.nav{gap:14px}.user-chip .name{display:none}}.page{padding:40px 0 72px}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:28px;display:flex}.page-head h1{margin:6px 0 0;font-size:clamp(28px,4vw,40px)}.page-head .sub{color:var(--text-muted);margin:6px 0 0}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px}.card h3{margin-bottom:14px}.card-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:14px;display:flex}.card-head h3{margin:0}.grid{gap:20px;display:grid}.tiles{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:16px;margin-bottom:20px;display:grid}.tile{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:18px 20px;transition:all .2s}.tile:hover{border-color:var(--blue);box-shadow:var(--shadow-hover);transform:translateY(-2px)}.tile .label{letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);font-size:11px;font-weight:600}.tile .value{font-variant-numeric:tabular-nums;margin-top:4px;font-family:Spectral,serif;font-size:2.1rem;font-weight:600;line-height:1.25}.tile .sub{color:var(--text-muted);font-size:.82rem}.icon-box{border-radius:var(--radius);background:var(--blue-pale);flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:18px;display:flex}.icon-box svg{width:24px;height:24px;stroke:var(--blue);fill:none;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round}.btn{border-radius:var(--radius);border:1.5px solid var(--blue);background:var(--blue);color:#fff;cursor:pointer;justify-content:center;align-items:center;gap:8px;padding:10px 22px;font-family:DM Sans,sans-serif;font-size:14px;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.btn:hover{background:var(--blue-hover);border-color:var(--blue-hover);color:#fff;box-shadow:var(--shadow-hover);transform:translateY(-1px)}.btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.btn.secondary{color:var(--blue);background:0 0}.btn.secondary:hover{background:var(--blue-pale);color:var(--blue-hover);box-shadow:none}.btn.ghost{border-color:var(--border);color:var(--text);background:0 0}.btn.ghost:hover{background:var(--bg-alt);border-color:var(--blue-light);color:var(--text);box-shadow:none;transform:none}.btn.sm{padding:6px 14px;font-size:13px}.btn.lg{padding:14px 32px;font-size:16px}.btn.light{color:var(--navy);background:#fff;border-color:#fff}.btn.light:hover{background:var(--blue-pale);border-color:var(--blue-pale);color:var(--navy)}input,select{font:inherit;color:var(--text);background:var(--bg-card);border:1.5px solid var(--border);border-radius:var(--radius);padding:9px 12px;font-size:14px;transition:border-color .2s}input:focus,select:focus{border-color:var(--blue);outline:none}label.field{gap:6px;font-size:14px;font-weight:500;display:grid}.form{gap:14px;display:grid}.error{color:var(--loss);font-size:.9rem}.filters{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:18px;display:flex}.filters input{width:150px}.tabs{background:var(--bg-alt);border:1px solid var(--border);border-radius:999px;gap:2px;padding:4px;display:inline-flex}.tabs button{font:inherit;color:var(--text-muted);cursor:pointer;text-transform:capitalize;background:0 0;border:0;border-radius:999px;padding:6px 16px;font-size:14px;font-weight:500;transition:all .2s}.tabs button:hover{color:var(--blue)}.tabs button.active{background:var(--bg-card);color:var(--blue);box-shadow:var(--shadow)}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:14px}th{text-align:left;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid var(--border);white-space:nowrap;background:var(--bg-alt);padding:12px;font-size:11px;font-weight:600}td{border-bottom:1px solid var(--border);vertical-align:middle;padding:11px 12px}tbody tr:last-child td{border-bottom:0}tr.clickable{cursor:pointer;transition:background .15s}tr.clickable:hover td{background:var(--blue-pale)}td.right,th.right{text-align:right}.card.flush{padding:0;overflow:hidden}.badge{letter-spacing:.06em;text-transform:uppercase;border-radius:20px;padding:2px 10px;font-size:11px;font-weight:600;display:inline-block}.badge.win{color:var(--win);background:var(--win-bg)}.badge.loss{color:var(--loss);background:var(--loss-bg)}.badge.draw{color:var(--draw);background:var(--draw-bg)}.result{white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.result .score{min-width:2.4em;font-family:Spectral,serif;font-size:15px}.color-dot{border:1px solid var(--text-muted);vertical-align:-1px;border-radius:3px;width:12px;height:12px;margin-right:8px;display:inline-block}.color-dot.w{background:#fff}.color-dot.b{background:#1a2e4a}.progress{background:var(--bg-alt);border-radius:99px;height:6px;overflow:hidden}.progress>div{background:var(--blue);border-radius:99px;height:100%;transition:width .4s}.job{border-bottom:1px solid var(--border);gap:6px;padding:12px 0;display:grid}.job:last-child{border-bottom:0}.banner{border-radius:var(--radius-lg);background:var(--bg-alt);border:1px solid var(--border);align-items:center;gap:12px;margin-bottom:16px;padding:14px 18px;display:flex}.hero{text-align:center;padding:104px 0 88px;position:relative;overflow:hidden}.hero-bg-num{color:var(--blue);opacity:.045;pointer-events:none;-webkit-user-select:none;user-select:none;white-space:nowrap;font-family:Spectral,serif;font-size:clamp(220px,30vw,420px);font-style:italic;font-weight:700;line-height:1;position:absolute;top:50%;left:50%;transform:translate(-50%,-52%)}.hero .eyebrow{margin-bottom:20px;position:relative}.hero h1{color:var(--navy);max-width:800px;margin:0 auto;font-size:clamp(38px,6vw,68px);font-weight:300;position:relative}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .hero h1{color:var(--text-on-dark)}}.hero-sub{color:var(--text-muted);max-width:580px;margin:22px auto 0;font-size:18px;line-height:1.7;position:relative}.hero-ctas{flex-wrap:wrap;justify-content:center;gap:14px;margin-top:36px;display:flex;position:relative}.hero-badges{flex-wrap:wrap;justify-content:center;gap:22px;margin-top:28px;display:flex;position:relative}.hero-badge{color:var(--text-muted);align-items:center;gap:7px;font-size:13px;display:inline-flex}.hero-badge:before{content:"";background:var(--blue-light);border-radius:50%;width:6px;height:6px}.section{padding:84px 0}.section.alt{background:var(--bg-alt)}.section-head{margin-bottom:48px}.section-head.center{text-align:center}.section-head h2{margin-top:10px;font-size:clamp(28px,4vw,42px)}.section-head p{color:var(--text-muted);max-width:560px}.section-head.center p{margin-inline:auto}.features{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px;display:grid}.feature{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:32px 28px;transition:all .2s}.feature:hover{border-color:var(--blue);box-shadow:var(--shadow-hover);transform:translateY(-2px)}.feature h3{margin-bottom:10px;font-size:20px}.feature p{color:var(--text-muted);margin:0;font-size:14px;line-height:1.7}.steps{counter-reset:step;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px;display:grid}.step{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:32px 28px;position:relative}.step-num{color:var(--blue-light);margin-bottom:14px;font-family:Spectral,serif;font-size:44px;font-style:italic;font-weight:300;line-height:1}.step h3{margin-bottom:8px;font-size:20px}.step p{color:var(--text-muted);margin:0;font-size:14px;line-height:1.7}.quote-section{background:var(--bg-deep);text-align:center;padding:92px 0}.quote-mark{color:var(--blue-light);opacity:.35;margin-bottom:24px;font-family:Spectral,serif;font-size:84px;line-height:.6;display:block}.quote-section blockquote{color:var(--text-on-dark);max-width:760px;margin:0 auto;font-family:Spectral,serif;font-size:clamp(20px,3vw,28px);font-style:italic;font-weight:300;line-height:1.55}.quote-source{color:#93b0d8;letter-spacing:.08em;text-transform:uppercase;margin-top:30px;font-size:13px}.quote-source strong{color:#c5d8f5;letter-spacing:0;text-transform:none;margin-top:4px;font-size:15px;font-weight:500;display:block}.cta-section{text-align:center}.cta-section h2{font-size:clamp(28px,4vw,40px)}.footer{background:var(--bg-deep);margin-top:auto;padding:44px 0}.footer-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;display:flex}.footer-logo{color:#fff;font-family:Spectral,serif;font-size:20px;font-weight:700}.footer-logo span{color:#6b9be0;font-style:italic}.footer-copy{color:#93b0d8;font-size:13px}.footer-links{flex-wrap:wrap;gap:22px;display:flex}.footer-links a,.footer-links span{color:#93b0d8;font-size:13px}.footer-links a:hover{color:#fff}.auth-wrap{padding:72px 0 96px;position:relative;overflow:hidden}.auth-wrap .hero-bg-num{font-size:clamp(200px,26vw,360px)}.auth-card{max-width:440px;box-shadow:var(--shadow);margin:0 auto;padding:40px 36px;position:relative}.auth-card h2{text-align:center;margin-top:8px;font-size:30px}.google-wrap{justify-content:center;margin:22px 0 4px;display:flex}.auth-divider{color:var(--text-muted);align-items:center;gap:12px;margin:20px 0;font-size:13px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--border);flex:1;height:1px}.link-btn{all:unset;color:var(--blue);cursor:pointer}.link-btn:hover{text-decoration:underline}.link-btn:disabled{opacity:.5;cursor:default}.avatar{object-fit:cover;border:2px solid var(--border);border-radius:50%;width:30px;height:30px}.viewer{grid-template-columns:minmax(0,600px) minmax(300px,1fr);align-items:start;gap:24px;display:grid}@media (width<=960px){.viewer{grid-template-columns:minmax(0,1fr)}}.board-row{grid-template-columns:minmax(0,1fr) 22px;align-items:stretch;gap:10px;display:grid}.board-panel{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:14px}.player{align-items:center;gap:8px;padding:2px 4px 10px;font-size:14px;font-weight:600;display:flex}.player:last-of-type{padding:10px 4px 2px}.player .elo{color:var(--text-muted);font-weight:400}.board-wrap{aspect-ratio:1;border-radius:var(--radius);width:100%;overflow:hidden}.board-wrap .cm-chessboard{width:100%}.evalbar{border-radius:var(--radius);background:var(--graph-black);border:1px solid var(--border);height:100%;position:relative;overflow:hidden}.evalbar>div{background:#f4f8fd;transition:height .3s;position:absolute;bottom:0;left:0;right:0}.evalbar span{text-align:center;z-index:1;font-size:.66rem;font-weight:700;position:absolute;left:0;right:0}.board-controls{justify-content:center;gap:6px;margin-top:12px;display:flex}.moves{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-card);grid-template-columns:46px 1fr 1fr;max-height:380px;font-size:14px;display:grid;overflow-y:auto}.moves .n{color:var(--text-muted);background:var(--bg-alt);font-variant-numeric:tabular-nums;padding:5px 10px;font-family:Spectral,serif}.moves button{all:unset;cursor:pointer;justify-content:space-between;gap:6px;padding:5px 10px;font-weight:500;display:flex}.moves button:hover{background:var(--blue-pale)}.moves button.current{background:var(--blue);color:#fff}.moves button.current .clk{color:#e8f1fb}.moves .final{text-align:center;background:var(--bg-alt);border-top:1px solid var(--border);grid-column:1/-1;padding:10px;font-family:Spectral,serif;font-weight:600}.clk{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.76rem;font-weight:400}.lbl-inaccuracy{color:var(--inaccuracy);font-weight:700}.lbl-mistake{color:var(--mistake);font-weight:700}.lbl-blunder{color:var(--blunder);font-weight:700}.current .lbl-inaccuracy,.current .lbl-mistake,.current .lbl-blunder{color:#fff}.move-info{border-radius:var(--radius-lg);background:var(--bg-alt);border:1px solid var(--border);margin:14px 0;padding:14px 16px;font-size:14px}.engine-lines{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);gap:6px;padding:10px 12px;font-size:13.5px;display:grid}.engine-lines div{align-items:baseline;gap:10px;display:flex}.engine-lines b{font-variant-numeric:tabular-nums;min-width:56px;color:var(--blue)}.summary{grid-template-columns:1fr auto auto;gap:6px 18px;font-size:14px;display:grid}.wdl-cell{align-items:center;gap:10px;min-width:150px;display:flex}.wdl{border-radius:var(--radius-sm);flex:1;gap:2px;height:14px;display:flex;overflow:hidden}.wdl>div{min-width:3px}.loss-pct{text-align:right;min-width:3.2em;color:var(--loss);font-weight:700}th .sort-btn{all:unset;cursor:pointer;align-items:center;gap:4px;display:inline-flex}th .sort-btn:hover{color:var(--blue)}th.right .sort-btn{flex-direction:row}.sort-ind{opacity:.45;font-size:10px}.sort-ind.active{opacity:1;color:var(--blue)}tfoot td{border-top:1px solid var(--border);background:var(--bg-alt);border-bottom:0}.path{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-card);flex-wrap:wrap;align-items:center;gap:2px 4px;min-height:48px;padding:12px 14px;font-size:14px;display:flex}.path button{all:unset;cursor:pointer;border-radius:var(--radius-sm);gap:4px;padding:2px 6px;font-weight:600;display:inline-flex}.path button:hover{background:var(--blue-pale)}.path button.current{background:var(--blue);color:#fff}.path button.current .muted{color:#e8f1fb}.path button.future{color:var(--text-muted);font-weight:400}.sf-tag{letter-spacing:.06em;color:var(--blue);background:var(--blue-pale);border:1px solid var(--border);vertical-align:1px;border-radius:20px;margin-left:6px;padding:1px 6px;font-size:10px;font-weight:700}.chip{background:var(--blue-pale);border:1px solid var(--border);color:var(--blue);border-radius:20px;align-items:center;gap:6px;padding:5px 8px 5px 12px;font-size:13px;display:inline-flex}.chip button{all:unset;cursor:pointer;padding:0 4px;font-weight:700}.chart{position:relative}.chart svg{width:100%;height:auto;display:block;overflow:visible}.chart .tooltip{pointer-events:none;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);white-space:nowrap;padding:6px 10px;font-size:13px;position:absolute;transform:translate(-50%,calc(-100% - 10px))}.axis text{fill:var(--text-muted);font-family:DM Sans,sans-serif;font-size:11px}.grid-line{stroke:var(--border);stroke-width:1px}
