@font-face{font-family:DM Sans;font-style:normal;font-weight:100 1000;font-display:swap;src:url(/_next/static/media/7ab938503e4547a1-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:DM Sans;font-style:normal;font-weight:100 1000;font-display:swap;src:url(/_next/static/media/13971731025ec697-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:DM Sans Fallback;src:local("Arial");ascent-override:94.90%;descent-override:29.66%;line-gap-override:0.00%;size-adjust:104.53%}.__className_231f96{font-family:DM Sans,DM Sans Fallback;font-style:normal}.__variable_231f96{--font-sans:"DM Sans","DM Sans Fallback"}:root{--ink:#10121c;--felt:#1a2030;--felt-2:#222a3d;--rule:#2f3950;--chalk:#e9e6de;--slate:#808da6;--dim:#5a6478;--brass:#c9a227;--ember:#c4553d;--serif:"Noto Serif TC","Songti TC",Georgia,serif;--sans:var(--font-sans),system-ui,-apple-system,"PingFang TC","Noto Sans TC",sans-serif;--mono:ui-monospace,"SF Mono",Menlo,monospace;--r:10px}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--ink);color:var(--chalk);font-family:var(--sans);-webkit-font-smoothing:antialiased}body{background-image:radial-gradient(900px 600px at 85% -10%,#1d2233 0,transparent 70%);background-attachment:fixed;min-height:100vh}a{color:inherit}.shell{max-width:1080px;margin:0 auto;padding:28px 24px 64px}.topbar{justify-content:space-between;gap:16px;padding-bottom:18px;margin-bottom:28px;border-bottom:1px solid var(--rule)}.topbar,.wordmark{display:flex;align-items:center}.wordmark{gap:10px;font-family:var(--serif);font-size:19px;font-weight:600;letter-spacing:.14em;margin:0}.mark{width:39px;height:34px;flex:none}.topbar nav{display:flex;gap:18px;font-size:13px;color:var(--slate)}.topbar nav a{text-decoration:none}.topbar nav a:hover{color:var(--chalk)}.who{font-size:13px;color:var(--dim)}.game{display:grid;grid-template-columns:minmax(0,1fr) 380px;grid-gap:32px;gap:32px;align-items:start}@media (max-width:860px){.game{grid-template-columns:minmax(0,1fr)}}.board-wrap{min-width:0}.board-with-eval{display:flex;gap:12px;align-items:stretch}.board-frame{border-radius:var(--r);overflow:hidden;box-shadow:0 18px 40px rgba(0,0,0,.45);flex:1 1}.eval-bar{width:24px;border-radius:4px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.3);background:var(--felt-2)}.eval-bar-inner{height:100%;display:flex;flex-direction:column-reverse;position:relative}.eval-bar-white{background:linear-gradient(180deg,#f0f0f0,#d9dce3)}.eval-bar-black,.eval-bar-white{display:flex;align-items:center;justify-content:center;transition:height .3s ease;position:relative}.eval-bar-black{background:linear-gradient(180deg,#6b7a94,#4a5568)}.eval-text{font-size:10px;font-weight:600;font-family:var(--mono);writing-mode:vertical-rl;-webkit-text-orientation:mixed;text-orientation:mixed;padding:4px 0}.eval-bar-white .eval-text{color:#333}.eval-bar-black .eval-text{color:#f0f0f0}.status{display:flex;align-items:center;gap:10px;margin-top:18px;font-size:14px;color:var(--slate)}.status .dot{width:7px;height:7px;border-radius:50%;background:var(--dim);flex:none}.status[data-mine=true]{color:var(--brass)}.status[data-mine=true] .dot{background:var(--brass);box-shadow:0 0 0 0 rgba(201,162,39,.55);animation:pulse 2.4s ease-out infinite}@keyframes pulse{70%{box-shadow:0 0 0 9px rgba(201,162,39,0)}to{box-shadow:0 0 0 0 rgba(201,162,39,0)}}.game-info{display:flex;flex-wrap:wrap;gap:4px 12px;justify-content:space-between;margin-top:12px;font-size:13px;color:var(--dim)}.draw-counter[data-near=true]{color:var(--chalk)}@media (prefers-reduced-motion:reduce){.status[data-mine=true] .dot{animation:none}}.error{padding:10px 14px;border-left:2px solid var(--ember);background:rgba(196,85,61,.09);color:#e8a091;font-size:13.5px}.draw-notice,.error{margin-top:12px;border-radius:0 6px 6px 0}.draw-notice{padding:12px 14px;border-left:2px solid var(--brass);background:rgba(201,162,39,.09)}.draw-notice p{margin:0 0 10px;font-size:13.5px;color:var(--brass)}.draw-actions{display:flex;gap:8px}.draw-pending{margin-top:12px;padding:10px 14px;border-left:2px solid var(--dim);background:rgba(90,100,120,.09);border-radius:0 6px 6px 0}.draw-pending p{margin:0;font-size:13px;color:var(--slate)}.sheet{background:var(--felt);border:1px solid var(--rule);border-radius:var(--r);overflow:hidden}.sheet header{padding:14px 18px;border-bottom:1px solid var(--rule);display:flex;justify-content:space-between;align-items:baseline}.sheet h2{font-size:13px;font-weight:600;letter-spacing:.18em;margin:0;color:var(--slate)}.sheet .meta{font-size:11px;color:var(--dim)}.rows{list-style:none;margin:0;padding:0 0 14px;max-height:460px;overflow-y:auto;font-family:var(--mono);font-size:13px}.rows li{display:grid;grid-template-columns:30px 1fr 1fr;align-items:center;padding:0 18px;min-height:30px;border-bottom:1px solid rgba(47,57,80,.45)}.rows li:last-child{border-bottom:0}.rows .no{color:var(--dim);font-size:11px}.rows .cell{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding-right:10px}.rows .move-line{display:flex;align-items:baseline;gap:6px;width:100%}.rows .san{color:var(--chalk);padding:2px 6px;border-radius:4px;transition:all .12s}.rows .san[data-check=true]{color:var(--ember)}.rows button.san{font:inherit;background:none;border:0;cursor:pointer;text-align:left}.rows button.san:hover{background:rgba(255,255,255,.07)}.rows button.san:focus-visible{outline:1px solid var(--brass);outline-offset:1px}.rows .move-line .san[data-current=true]{background:rgba(128,141,166,.25);box-shadow:inset 0 0 0 1px rgba(128,141,166,1)}.rows .move-line .san[data-current=true][data-classification=best]{background:rgba(111,179,111,.25);box-shadow:inset 0 0 0 1px rgba(111,179,111,1)}.rows .move-line .san[data-current=true][data-classification=inaccuracy]{background:rgba(201,162,39,.25);box-shadow:inset 0 0 0 1px rgba(201,162,39,1)}.rows .move-line .san[data-current=true][data-classification=mistake]{background:rgba(214,122,63,.25);box-shadow:inset 0 0 0 1px rgba(214,122,63,1)}.rows .move-line .san[data-current=true][data-classification=blunder]{background:rgba(196,85,61,.25);box-shadow:inset 0 0 0 1px rgba(196,85,61,1)}.rows .think{font-size:10px;color:var(--dim);margin-left:auto;padding-left:4px;white-space:nowrap;flex-shrink:0}.rows li:last-child .san{color:var(--brass)}.rows .san[data-classification=best]{background:rgba(111,179,111,.12);border-left:2px solid #6fb36f}.rows .san[data-classification=inaccuracy]{background:rgba(201,162,39,.12);border-left:2px solid #c9a227}.rows .san[data-classification=mistake]{background:rgba(214,122,63,.12);border-left:2px solid #d67a3f}.rows .san[data-classification=blunder]{background:rgba(196,85,61,.12);border-left:2px solid var(--ember)}.rows .class-mark{margin-left:3px;font-size:11px;opacity:.7}.rows .san[data-classification=best] .class-mark{color:#6fb36f}.rows .san[data-classification=inaccuracy] .class-mark{color:#c9a227}.rows .san[data-classification=mistake] .class-mark{color:#d67a3f}.rows .san[data-classification=blunder] .class-mark{color:var(--ember)}.rows .eval{font-size:10px;color:var(--slate);padding:1px 5px;background:rgba(128,141,166,.08);border-radius:3px;white-space:nowrap;flex-shrink:0}.rows .hint-move{display:block;font-size:10px;color:var(--dim);margin-top:1px;padding-left:6px}.eval-graph{padding:12px 18px;margin-bottom:14px;background:var(--felt-2);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}.eval-graph svg{display:block;width:100%;height:auto;min-height:120px}.sheet .empty-note{padding:22px 18px;color:var(--dim);font-size:13px}.sheet footer{padding:14px 18px 16px;border-top:1px solid var(--rule);display:flex;flex-direction:column;gap:10px;overflow-x:auto}.verdict{margin-bottom:24px;padding:18px 22px;border:1px solid rgba(201,162,39,.32);background:rgba(201,162,39,.07);border-radius:var(--r)}.verdict h2{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:20px;margin:0 0 4px;color:var(--brass)}.verdict p{margin:0;color:var(--slate);font-size:13.5px}.verdict-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:14px}a.btn,a.btn-ghost{display:inline-block;text-decoration:none}.back-link{margin:0 0 14px;font-size:13px}.back-link a{color:var(--slate);text-decoration:none}.back-link a:hover{color:var(--chalk)}.analysis-section{margin-bottom:24px}.analysis-status{background:rgba(111,179,111,.1);border:1px solid rgba(111,179,111,.3);border-radius:var(--r);color:#6fb36f;font-size:13px}.analysis-info,.analysis-status{padding:12px 18px;margin-bottom:24px}.analysis-info{background:var(--felt-2);border:1px solid var(--rule);border-radius:var(--r)}.analysis-info .info-text{margin:0;font-size:13px;color:var(--slate)}.analysis-info code{padding:2px 6px;background:var(--felt);border-radius:3px;color:var(--brass);font-family:var(--mono);font-size:12px}.analysis-progress{margin-top:16px}.progress-bar{width:100%;height:8px;background:var(--felt-2);border-radius:4px;overflow:hidden;border:1px solid var(--rule)}.progress-fill{height:100%;background:linear-gradient(90deg,var(--brass),#e0b040);transition:width .3s ease;border-radius:3px}.error-text{margin:8px 0 0;padding:8px 12px;background:rgba(196,85,61,.1);border:1px solid rgba(196,85,61,.2);border-radius:5px;color:var(--ember);font-size:12px}.note-display,.note-editor{margin-bottom:24px;padding:18px 22px;background:var(--felt);border:1px solid var(--rule);border-radius:var(--r)}.note-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.note-label{font-size:11px;font-weight:600;letter-spacing:.12em;color:var(--slate);text-transform:uppercase}.note-content{margin:0;color:var(--chalk);font-size:14px;line-height:1.6;white-space:pre-wrap}.note-empty{margin:0;color:var(--dim);font-size:13px;font-style:italic}.note-editor textarea{width:100%;margin-top:8px;padding:11px 14px;background:#0c0f18;border:1.5px solid var(--rule);border-radius:7px;color:var(--chalk);font-family:var(--sans);font-size:13px;line-height:1.6;resize:vertical}.note-editor textarea:focus{outline:none;border-color:var(--brass)}.note-actions{display:flex;gap:8px;margin-top:12px}.panel{background:var(--felt);border:1px solid var(--rule);border-radius:var(--r);padding:28px;max-width:720px}.panel h1{font-size:22px;margin:0 0 6px}.panel .lede{margin:0 0 26px;color:var(--slate);font-size:14px}.field{margin-bottom:24px}.field>.legend,.field>label{display:block;font-size:11px;font-weight:600;letter-spacing:.12em;color:var(--slate);margin-bottom:9px}.choices{display:flex;gap:10px;flex-wrap:wrap}.choice{flex:1 1;min-width:120px;padding:12px 16px;background:var(--felt-2);border:1.5px solid transparent;border-radius:7px;color:var(--slate);font-size:14px;font-family:inherit;text-align:left;cursor:pointer;transition:border-color .12s,color .12s}.choice:hover{color:var(--chalk)}.choice[aria-pressed=true]{border-color:var(--brass);color:var(--chalk);background:rgba(201,162,39,.08)}.choice small{display:block;margin-top:3px;font-size:11px;color:var(--dim)}input[type=text],textarea{width:100%;padding:11px 14px;background:#0c0f18;border:1.5px solid var(--rule);border-radius:7px;color:var(--chalk);font-family:var(--sans);font-size:12.5px}input[type=text]:focus,textarea:focus{outline:none;border-color:var(--brass)}.hint{margin:8px 0 0;font-size:12px;color:var(--dim)}.editor{display:grid;grid-template-columns:minmax(0,1fr) 132px;grid-gap:18px;gap:18px;margin-top:14px}@media (max-width:640px){.editor{grid-template-columns:minmax(0,1fr)}}.tray{background:var(--felt-2);border-radius:7px;padding:12px}.tray .legend{margin-bottom:10px}.tray-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:4px;gap:4px}.tray button{aspect-ratio:1;display:grid;place-items:center;background:transparent;border:1.5px solid transparent;border-radius:5px;font-size:21px;line-height:1;cursor:pointer;color:var(--chalk)}.tray button:hover{background:rgba(255,255,255,.05)}.tray button[aria-pressed=true]{border-color:var(--brass)}.btn{padding:12px 22px;border:0;border-radius:7px;background:var(--brass);color:#17140a;font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:opacity .15s}.btn:hover:not(:disabled){opacity:.9}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-ghost{background:transparent;border:1px solid var(--rule);color:var(--slate);padding:8px 14px;border-radius:6px;font-family:inherit;font-size:12.5px;cursor:pointer}.btn-ghost:hover{color:var(--chalk);border-color:var(--slate)}.pgn-buttons{display:flex;gap:10px;justify-content:center}.records{list-style:none;margin:0;padding:0}.records li{border-bottom:1px solid var(--rule)}.records a{display:grid;grid-template-columns:78px minmax(0,1fr) auto;grid-gap:16px;gap:16px;align-items:center;padding:16px 4px;text-decoration:none}.records a:hover{background:rgba(255,255,255,.022)}.records .score{font-family:var(--mono);font-size:14px;color:var(--brass)}.records .line{font-size:14px;overflow-wrap:anywhere}.records .how{display:block;margin-top:2px;font-size:12px;color:var(--dim)}.records .side{margin-left:3px;font-family:var(--sans);font-size:10px;color:var(--dim);vertical-align:1px}.records .when{font-size:12px;color:var(--dim);font-family:var(--mono)}@media (max-width:640px){.records a{grid-template-columns:auto minmax(0,1fr) auto;gap:12px}}.record-note{margin-top:6px;font-size:12px;color:var(--slate);font-style:italic;line-height:1.5}.empty{padding:60px 0;max-width:520px}.empty h1{font-size:22px;margin:0 0 10px}.empty p{color:var(--slate);font-size:14px;margin:0;line-height:1.7}.page-title{font-size:26px;font-weight:600;margin:0 0 8px;letter-spacing:.08em}.page-lede{color:var(--slate);font-size:14px;margin:0 0 32px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:20px;gap:20px}.stat-card{background:var(--felt);border:1px solid var(--rule);border-radius:var(--r);padding:20px 24px}.stat-card h2{font-size:14px;font-weight:600;letter-spacing:.12em;margin:0 0 16px;color:var(--slate);text-transform:uppercase}.stat-row{display:flex;justify-content:space-between;align-items:baseline;padding:8px 0;border-bottom:1px solid rgba(47,57,80,.3)}.stat-row:last-child{border-bottom:0}.stat-row .label{font-size:13px;color:var(--dim)}.stat-row .value{font-family:var(--mono);font-size:14px;color:var(--chalk);font-weight:600}.stat-row .value.win{color:#6fb36f}.stat-row .value.loss{color:var(--ember)}.stat-row .value.draw{color:var(--slate)}.replay{display:flex;gap:8px;align-items:center;margin-top:18px}.replay .ply{font-family:var(--mono);font-size:12px;color:var(--dim);margin-left:6px}.theme-selector{position:relative;margin-bottom:18px}.theme-trigger{font-size:13px}.theme-menu{position:absolute;top:100%;left:0;margin-top:8px;background:var(--felt);border:1px solid var(--rule);border-radius:var(--r);padding:12px;min-width:200px;z-index:10;box-shadow:0 8px 20px rgba(0,0,0,.4)}.theme-option{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;background:transparent;border:1.5px solid transparent;border-radius:6px;color:var(--chalk);font-family:inherit;font-size:13px;text-align:left;cursor:pointer;transition:all .12s}.theme-option:hover{background:var(--felt-2)}.theme-option[data-selected=true]{border-color:var(--brass);background:rgba(201,162,39,.08)}.theme-preview{display:flex;gap:2px;border:1px solid var(--rule);border-radius:3px;overflow:hidden}.theme-square{width:20px;height:20px}.promotion-overlay{position:fixed;inset:0;background:rgba(16,18,28,.92);display:grid;place-items:center;z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.promotion-modal{background:var(--felt);border:1px solid var(--brass);border-radius:var(--r);padding:24px;box-shadow:0 24px 60px rgba(0,0,0,.6);min-width:320px}.promotion-modal h3{font-size:16px;font-weight:600;margin:0 0 18px;text-align:center;color:var(--brass);letter-spacing:.1em}.promotion-choices{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:12px;gap:12px;margin-bottom:18px}.promotion-choices button{aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:var(--felt-2);border:2px solid transparent;border-radius:8px;color:var(--chalk);font-size:48px;line-height:1;cursor:pointer;transition:all .15s}.promotion-choices button span{font-size:12px;font-family:var(--sans);color:var(--slate);font-weight:600;letter-spacing:.08em}.promotion-choices button:hover{border-color:var(--brass);background:rgba(201,162,39,.08)}.promotion-choices button:hover span{color:var(--brass)}.promotion-modal>.btn-ghost{width:100%;text-align:center}.chat-box{background:var(--felt);border:1px solid var(--rule);border-radius:var(--r);padding:20px;margin-top:24px;max-width:800px}.chat-title{font-size:14px;font-weight:600;letter-spacing:.12em;margin:0 0 16px;color:var(--slate);text-transform:uppercase}.chat-messages{min-height:200px;max-height:400px;overflow-y:auto;margin-bottom:16px;padding:12px;background:var(--felt-2);border-radius:7px;scroll-behavior:smooth}.chat-messages::-webkit-scrollbar{width:8px}.chat-messages::-webkit-scrollbar-track{background:transparent}.chat-messages::-webkit-scrollbar-thumb{background:var(--rule);border-radius:4px}.chat-messages::-webkit-scrollbar-thumb:hover{background:var(--slate)}.chat-empty{text-align:center;color:var(--dim);font-size:13px;padding:60px 20px;margin:0}.chat-message{margin-bottom:12px;padding:10px 12px;border-radius:7px;background:rgba(255,255,255,.02);border:1px solid transparent;transition:all .12s}.chat-message-clickable{cursor:pointer}.chat-message-clickable:hover{background:rgba(255,255,255,.08);border-color:var(--brass);transform:translateX(2px);transition:all .15s}.chat-message-me{border-left:2px solid var(--brass)}.chat-message-opponent{border-left:2px solid var(--slate)}.chat-message-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px}.chat-sender{font-size:12px;font-weight:600;color:var(--slate);letter-spacing:.05em}.chat-message-me .chat-sender{color:var(--brass)}.chat-ply{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:11px;color:var(--dim)}.chat-message-content{font-size:13.5px;line-height:1.6;color:var(--chalk);word-wrap:break-word;white-space:pre-wrap}.chat-input-area{margin-top:12px}.chat-error{font-size:12px;color:var(--ember);margin:0 0 8px;padding:8px 12px;background:rgba(196,85,61,.1);border:1px solid rgba(196,85,61,.2);border-radius:5px}.chat-input-row{display:flex;gap:10px;align-items:stretch}input.chat-input{flex:1 1;padding:11px 14px;background:#0c0f18;border:1.5px solid var(--rule);border-radius:7px;color:var(--chalk);font-family:var(--sans);font-size:13.5px;resize:none;transition:border-color .15s}input.chat-input:focus{outline:none;border-color:var(--brass)}input.chat-input:disabled{opacity:.5;cursor:not-allowed}.chat-send-btn{padding:11px 20px;background:var(--brass);border:0;border-radius:7px;color:#17140a;font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;transition:opacity .15s}.chat-send-btn:hover:not(:disabled){opacity:.9}.chat-send-btn:disabled{opacity:.45;cursor:not-allowed}.chat-message-meta{display:flex;align-items:baseline;gap:10px}.chat-reply-btn{font:inherit;font-size:11px;color:var(--dim);background:none;border:0;padding:0;cursor:pointer;transition:color .12s}.chat-reply-btn:hover{color:var(--brass)}.chat-reply-btn:disabled{cursor:not-allowed}.chat-quote{display:flex;align-items:baseline;gap:8px;width:100%;min-width:0;margin:0 0 6px;padding:5px 8px;border:0;border-left:2px solid var(--rule);border-radius:0 4px 4px 0;background:rgba(255,255,255,.03);font:inherit;font-size:12px;color:var(--slate);text-align:left;cursor:pointer;transition:border-color .12s,background .12s}.chat-quote:hover{border-left-color:var(--brass);background:rgba(255,255,255,.06)}.chat-quote-sender{font-weight:600;flex-shrink:0}.chat-quote-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-quote-missing{cursor:default;font-style:italic;color:var(--dim)}.chat-reply-bar{display:flex;align-items:center;gap:10px;margin-bottom:8px;padding:6px 10px;border-left:2px solid var(--brass);border-radius:0 5px 5px 0;background:rgba(201,162,39,.08);font-size:12px;color:var(--slate)}.chat-reply-bar .chat-reply-text{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-reply-bar .chat-reply-text b{color:var(--chalk);font-weight:600}.chat-reply-bar button{font:inherit;font-size:15px;line-height:1;background:none;border:0;padding:0 2px;color:var(--dim);cursor:pointer}.chat-reply-bar button:hover{color:var(--chalk)}.chat-message.chat-message-flash{border-color:var(--brass);background:rgba(201,162,39,.12)}@media (max-width:640px){.chat-box{padding:16px}.chat-messages{max-height:300px}.chat-input-row{flex-direction:column;gap:8px}.chat-send-btn{width:100%}}.move-chat-tabs{display:flex;flex-direction:column;height:700px;gap:0}.tab-buttons{display:flex;gap:0;flex-shrink:0;background:var(--felt);border-radius:var(--r) var(--r) 0 0;border:1px solid var(--rule);border-bottom:0;overflow:hidden;z-index:1}.tab-button{flex:1 1;padding:12px 18px;background:transparent;border:0;border-right:1px solid var(--rule);color:var(--dim);font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:.14em;cursor:pointer;transition:all .15s;text-align:center}.tab-button:last-child{border-right:0}.tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;margin-left:6px;padding:0 4px;border-radius:8px;background:var(--brass);color:#10121c;font-family:var(--sans);font-size:10px;font-weight:700;letter-spacing:0;vertical-align:middle}.tab-button:hover:not(.tab-button-active){background:rgba(255,255,255,.03);color:var(--slate)}.tab-button-active{background:var(--felt-2);color:var(--chalk);cursor:default}.tab-content{flex:1 1;overflow:hidden;margin-top:0;padding:0}.tab-content,.tab-content .sheet{display:flex;flex-direction:column}.tab-content .sheet{height:100%;border-radius:0 0 var(--r) var(--r);border-top:0;margin:0}.tab-content .sheet header{justify-content:center;border-bottom:0;padding-top:14px;padding-bottom:14px}.tab-content .sheet h2{display:none}.tab-content .sheet .meta{font-size:13px}.tab-content .sheet .rows{flex:1 1;max-height:none;overflow-y:auto}.tab-content .chat-box{display:flex;flex-direction:column;height:100%;background:var(--felt);border:0;border-radius:0 0 var(--r) var(--r);padding:0;margin:0}.tab-content .chat-box .chat-title{display:none}.tab-content .chat-box .chat-messages{flex:1 1;min-height:0;max-height:none;overflow-y:auto;padding:14px 18px 18px;margin:0;background:transparent}.tab-content .chat-box .chat-messages .chat-message:first-child{margin-top:0}.tab-content .chat-box .chat-messages .chat-message:last-child{margin-bottom:0}.tab-content .chat-box .chat-input-area{margin-top:0;padding:18px;border-top:0;flex-shrink:0}@media (pointer:coarse){.note-editor textarea,input.chat-input,input[type=text],textarea{font-size:16px}}.accuracy-stats-compact{color:var(--slate);display:flex;flex-direction:column;gap:10px;width:100%}.accuracy-stats-compact .acc-row{display:flex;justify-content:space-around;align-items:stretch;gap:4px;flex-wrap:wrap}.accuracy-stats-compact .acc-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:2px;flex:1 1;min-width:44px;padding:2px 4px}.accuracy-stats-compact .acc-cell-label{color:var(--dim);font-size:10px;line-height:1.2;white-space:nowrap}.accuracy-stats-compact .acc-cell-value{font-family:var(--mono);color:var(--chalk);font-size:15px;font-weight:700;line-height:1.2}.accuracy-stats-compact .acc-accuracy .acc-cell-label{font-weight:800;font-size:12px;color:var(--chalk);letter-spacing:.3px}.accuracy-stats-compact .acc-overall .acc-cell-value{font-size:17px}.accuracy-stats-compact .acc-marks{padding-top:8px;border-top:1px solid var(--rule)}.accuracy-stats-compact .acc-marks .acc-cell{cursor:help}.accuracy-stats-compact .best .acc-cell-label,.accuracy-stats-compact .best .acc-cell-value{color:#7fd88f}.accuracy-stats-compact .good .acc-cell-label,.accuracy-stats-compact .good .acc-cell-value{color:#a9c98a}.accuracy-stats-compact .inaccuracy .acc-cell-label,.accuracy-stats-compact .inaccuracy .acc-cell-value{color:#f0c76f}.accuracy-stats-compact .mistake .acc-cell-label,.accuracy-stats-compact .mistake .acc-cell-value{color:#f09f5f}.accuracy-stats-compact .blunder .acc-cell-label,.accuracy-stats-compact .blunder .acc-cell-value{color:var(--ember)}