.analyze-panel{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#5e5e5e transparent;min-height:0;overflow:hidden auto}.analyze-panel::-webkit-scrollbar{width:4px}.analyze-panel::-webkit-scrollbar-thumb{background:#5e5e5e;border-radius:99px}.analyze-panel>:not(.panel-spacer){flex-shrink:0;min-width:0}.analyze-panel .ap-head{justify-content:space-between;align-items:center;gap:6px;min-height:28px;display:flex}.analyze-panel .ap-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);font-size:.72rem;font-weight:800}.analyze-panel .ap-tools{gap:2px;display:flex}.analyze-panel .ap-link{color:var(--text-muted);background:0 0;border:none;border-radius:8px;padding:4px 8px;font-size:.85rem;font-weight:700;transition:color .15s,background .15s}#pgnSample{background-color:var(--card-bg)}.analyze-panel .ap-link:hover{color:var(--text-light);background:#ffffff0f}.analyze-panel #pgnTextArea{resize:vertical;background:var(--bg-deep);width:100%;min-height:120px;max-height:320px;color:var(--text-light);caret-color:var(--success);appearance:none;-webkit-user-select:text;user-select:text;border:1px solid #5e5e5e;border-radius:10px;margin:0;padding:10px 12px;font-family:ui-monospace,SF Mono,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;font-size:.82rem;line-height:1.55;transition:border-color .15s,box-shadow .15s;display:block;box-shadow:inset 0 2px 5px #00000038}.analyze-panel #pgnTextArea::placeholder{color:var(--text-muted);opacity:.5}.analyze-panel #pgnTextArea:hover{border-color:var(--card-border)}.analyze-panel #pgnTextArea:focus{border-color:var(--success);outline:none;box-shadow:inset 0 2px 5px #00000038,0 0 0 3px #7fd99a33}.analyze-panel .ap-info{min-height:1.1em;color:var(--text-muted);margin:0;font-size:.78rem;line-height:1.3}.analyze-panel .ap-info:empty{display:none}.analyze-panel .ap-info[data-state=ok]{color:var(--success)}.analyze-panel .ap-info[data-state=error]{color:var(--fail)}.analyze-panel .ap-field{flex-direction:column;gap:6px;display:flex}.analyze-panel .ap-seg{background:var(--bg-deep);border-radius:12px;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;padding:3px;display:grid}.analyze-panel .ap-seg-btn{min-width:0;min-height:40px;color:var(--text-muted);white-space:nowrap;background:0 0;border:none;border-radius:9px;padding:0 2px;font-size:.86rem;font-weight:700;transition:background .15s,color .15s,transform .1s;overflow:hidden}.analyze-panel .ap-seg-btn:hover:not(:disabled){background:var(--btn-bg);color:var(--icon-active)}.analyze-panel .ap-seg-btn:active:not(:disabled){transform:scale(.96)}.analyze-panel .ap-seg-btn[aria-checked=true]{color:#3c3c3c;background:#e8e8e8}.analyze-panel .ap-seg-btn:disabled{cursor:not-allowed;opacity:.5}.analyze-panel .ap-seg-btn[aria-checked=true]:disabled{opacity:.8}.analyze-panel .ap-seg-btn:focus-visible,.analyze-panel .ap-link:focus-visible,.analyze-panel .engine-btn:focus-visible{outline:2px solid var(--success);outline-offset:2px}.analyze-panel .ap-hint{min-height:1.1em;color:var(--text-muted);margin:0;font-size:.78rem}.analyze-panel .ap-hint:empty{display:none}.analyze-panel .fire-engine{flex-wrap:wrap;gap:6px 4px}.analyze-panel .fire-engine .engine-btn{flex:138px;width:auto;min-width:0}.analyze-panel .fire-engine .engine-btn-label{padding:0 8px}.analyze-panel .engine-btn:disabled{opacity:.45;cursor:not-allowed}.analyze-panel .engine-btn:disabled:hover{background:#e8e8e8}.analyze-panel .fire-engine .engine-btn{height:auto;min-height:50px}.analyze-panel .fire-engine .engine-btn-label{white-space:normal;padding:6px 8px;line-height:1.15}.analyze-panel .ap-progress{flex-direction:column;gap:6px;display:flex}.analyze-panel .ap-progress-track{background:var(--bg-deep);border-radius:99px;height:10px;position:relative;overflow:hidden}.analyze-panel .ap-progress-fill{background:var(--success);border-radius:99px;width:0;transition:width .3s ease-out;position:absolute;inset:0 auto 0 0}.analyze-panel .ap-progress-fill:after{content:"";background:linear-gradient(90deg,#0000,#fff6,#0000);animation:1.4s linear infinite ap-sheen;position:absolute;inset:0;transform:translate(-100%)}.analyze-panel .ap-progress.is-indeterminate .ap-progress-fill{animation:1.2s ease-in-out infinite alternate ap-slide;width:38%!important}.analyze-panel .ap-progress-row{font-variant-numeric:tabular-nums;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:2px 8px;font-size:.8rem;display:flex}.analyze-panel .ap-progress-pct{color:var(--msg);font-weight:800}.analyze-panel .ap-progress-meta{color:var(--text-muted);text-align:right;margin-left:auto}@keyframes ap-sheen{to{transform:translate(100%)}}@keyframes ap-slide{0%{transform:translate(0)}to{transform:translate(163%)}}.analyze-panel .ap-status:empty,.analyze-panel #reviewMoveList:empty{display:none}.analyze-panel [hidden]{display:none!important}.engine-btn-mobile:disabled{opacity:.4;pointer-events:none}@media (width<=899.98px){.page.analyze-page{height:auto;min-height:100vh;overflow:visible}.page.analyze-page .main-row,.page.analyze-page .app{flex:none;overflow:visible}.page.analyze-page .board-column{flex:none;min-height:auto}.side-panel.analyze-panel{background:var(--panel-bg);border-radius:14px;flex-direction:column;flex:none;gap:10px;width:100%;min-height:0;margin-top:6px;padding:12px;display:flex;overflow:visible}.analyze-panel .combined-desktop-controls,.analyze-panel .panel-spacer{display:none}.analyze-panel #pgnTextArea{min-height:96px;font-size:16px;line-height:1.45}.analyze-panel .ap-link{padding:8px 10px;font-size:.9rem}.analyze-panel .ap-seg-btn{min-height:44px}}@media (prefers-reduced-motion:reduce){.analyze-panel .ap-progress-fill:after,.analyze-panel .ap-progress.is-indeterminate .ap-progress-fill{animation:none}.analyze-panel *{transition:none!important}}.analyze-panel.is-reviewing>:not(.ap-report):not(.panel-spacer):not(.fire-engine):not(.combined-desktop-controls){display:none!important}.analyze-panel.is-reviewing{padding-bottom:0}.analyze-panel.is-reviewing .combined-desktop-controls{background:var(--panel-bg);z-index:2;height:76px;padding:8px 0 28px;position:sticky;bottom:0}.analyze-panel.is-reviewing .fire-engine{background:var(--panel-bg);z-index:2;padding-top:6px;position:sticky;bottom:76px}@media (width<=899.98px){.analyze-panel.is-reviewing{padding-bottom:12px}.analyze-panel.is-reviewing .fire-engine{background:0 0;padding-top:0;position:static}}.ap-report{flex-direction:column;gap:8px;display:flex;container-type:inline-size}.ap-report .ap-head{min-height:24px}.ap-report .ap-engine{letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted);opacity:.85;margin:0;font-size:.62rem;font-weight:800;line-height:1.35}.ap-chart{background:var(--bg-deep);cursor:pointer;touch-action:pan-y;border-radius:10px;height:84px;position:relative;overflow:hidden}.ap-chart svg{width:100%;height:100%;display:block}.ap-area-w{fill:#c9ccd2}.ap-area-b{fill:#2a2a2a}.ap-chart-mid{stroke:#ffffff47;stroke-width:1px;vector-effect:non-scaling-stroke}.ap-chart-line{fill:none;stroke:#8f86ff;stroke-width:1.6px;stroke-linejoin:round;vector-effect:non-scaling-stroke}.ap-dot{pointer-events:none;border:1.5px solid #0000008c;border-radius:50%;width:8px;height:8px;margin:-4px 0 0 -4px;position:absolute}.ap-cursor{background:var(--success);opacity:.9;pointer-events:none;width:2px;margin-left:-1px;transition:left .12s ease-out;position:absolute;top:0;bottom:0;left:0}.ap-report .ap-row{grid-template-columns:clamp(66px,30cqw,120px) minmax(0,1fr) 24px minmax(0,1fr);align-items:center;column-gap:4px;min-height:30px;font-size:clamp(.66rem,3.7cqw,.88rem);display:grid}.ap-report .ap-cell{justify-content:center;align-items:center;min-width:0;display:flex}.ap-report .ap-rlabel{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:color-mix(in srgb, var(--c,var(--text-light)) 72%, #fff);font-weight:800;line-height:1.1;overflow:hidden}.ap-report .ap-rlabel.ap-strong{color:var(--text-light);white-space:normal;overflow-wrap:anywhere}.ap-report .ap-players{margin-top:4px}.ap-avatar{aspect-ratio:1;border-radius:10px;place-items:center;width:clamp(28px,11cqw,40px);font-size:clamp(.85rem,4.6cqw,1.1rem);font-weight:800;display:grid}.ap-avatar.ap-white{color:#3c3c3c;background:#e8e8e8}.ap-avatar.ap-black{background:var(--bg-deep);color:var(--text-light);border:1px solid #5e5e5e}.ap-report .ap-names{min-height:0;color:var(--text-muted);text-align:center;margin-top:-2px;font-size:clamp(.62rem,3.2cqw,.76rem)}.ap-names span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.ap-report .ap-pill{text-align:center;font-variant-numeric:tabular-nums;border-radius:8px;min-width:0;padding:7px 2px;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:1.05em;font-weight:800;display:block}.ap-report .ap-pill.ap-white{color:#3c3c3c;background:#e8e8e8}.ap-report .ap-pill.ap-black{background:var(--bg-deep);color:var(--text-light)}.ap-report .ap-sep{background:#ffffff1a;border:0;width:100%;height:1px;margin:2px 0}.ap-report .ap-table{flex-direction:column;display:flex}.ap-report .ap-qrow{min-height:34px}.ap-report .ap-num{text-align:center;font-variant-numeric:tabular-nums;color:color-mix(in srgb, var(--c) 72%, #fff);font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:1.05em;font-weight:800}.ap-report .ap-num.is-zero{opacity:.45}.ap-report .ap-badge{justify-self:center;display:block}.ap-report .ap-dash{color:var(--text-muted);opacity:.6}.ap-report .ap-prow{min-height:34px}@media (prefers-reduced-motion:reduce){.ap-cursor{transition:none}}@media (width>=900px){.ap-report .ap-head .ap-label{font-size:.8rem}.ap-report .ap-engine{font-size:.7rem}.ap-report .ap-row{grid-template-columns:clamp(78px,34cqw,132px) minmax(0,1fr) 30px minmax(0,1fr);min-height:36px;font-size:clamp(.82rem,4.7cqw,1.06rem)}.ap-report .ap-qrow,.ap-report .ap-prow{min-height:40px}.ap-report .ap-badge{width:28px;height:28px}.ap-report .ap-pill{padding:8px 2px}.ap-avatar{width:clamp(32px,12cqw,46px);font-size:clamp(.95rem,5.2cqw,1.25rem)}.ap-report .ap-names{min-height:0;font-size:clamp(.72rem,3.8cqw,.88rem)}}*,:before,:after{-webkit-tap-highlight-color:#0000;tap-highlight-color:transparent}button:focus:not(:focus-visible),a:focus:not(:focus-visible){outline:none}:root{--bg:#4a4a4a;--bg-deep:#3c3c3c;--panel-bg:#444;--card-bg:#565656;--card-border:#8a8a8a;--text-light:#f2f0eb;--text-muted:#cfcdc6;--icon-color:#d8d6cf;--icon-active:#fff;--btn-bg:#6e6e6e;--btn-hover:#7c7c7c;--msg:#eaeaea;--success:#7fd99a;--fail:#e2897a;--topbar-h:56px;--sidebar-w:72px;--sidebar-w-open:300px;--panel-w:25vw;--ctrl-h:76px;--stats-h:68px;--badge-h:50px;--gap:10px}*,:before,:after{box-sizing:border-box}html{height:100%}@media (width>=900px){html{font-size:clamp(15px,.8vw + 5px,32px)}}body{background:var(--bg);height:100%;color:var(--text-light);-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;margin:0;padding:0;font-family:Trebuchet MS,Segoe UI,system-ui,-apple-system,sans-serif}button{cursor:pointer;touch-action:manipulation;font-family:inherit}*{scrollbar-width:thin;scrollbar-color:#5e5e5e transparent}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#5e5e5e;border-radius:99px}::-webkit-scrollbar-thumb:hover{background:#787878}::-webkit-scrollbar-corner{background:0 0}.scroll-root{scroll-behavior:smooth;height:100%;overflow:hidden auto}.page{flex-direction:column;height:100vh;display:flex;overflow:hidden}.howto-section{background:var(--bg);color:var(--text-light);padding:40px 20px 80px}.howto-inner{max-width:45rem;margin:0 auto}.howto-title{color:var(--icon-active);margin:0 0 8px;font-size:1.6rem;font-weight:800;line-height:1.2}.howto-intro{color:var(--text-muted);margin:0 0 28px;font-size:1rem;line-height:1.6}.howto-steps{flex-direction:column;gap:18px;display:flex}.howto-step{background:var(--card-bg);border:1px solid var(--card-border);border-radius:14px;align-items:flex-start;gap:16px;padding:16px 18px;display:flex}.howto-step-num{background:var(--success);color:#1f3d2b;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.95rem;font-weight:800;display:flex}.howto-step-body h3{color:var(--text-light);margin:2px 0 6px;font-size:1rem;font-weight:700}.howto-step-body p{color:var(--text-muted);margin:0;font-size:.93rem;line-height:1.6}@media (width>=900px){.howto-section{padding:64px 40px 80px}.howto-title{font-size:2rem}.howto-intro{margin-bottom:36px;font-size:1.05rem}.howto-steps{gap:22px}.howto-step{padding:20px 24px}}.tactics-article{background:var(--bg);color:var(--text-light);padding:48px 20px 14px}.tactics-article-inner{max-width:45rem;margin:0 auto}.tactics-article h1{color:var(--icon-active);margin:0 0 12px;font-size:1.6rem;font-weight:800;line-height:1.2}.mobile-holder{flex-direction:row;align-items:center;gap:12px;width:100%;display:flex}#statusMsg1{flex:1}.tactics-intro{color:var(--text-muted);border-left:3px solid var(--card-border);margin:0 0 36px;padding-left:16px;font-size:1rem;line-height:1.65}.tactics-section{margin-bottom:28px}.tactics-section h2{color:var(--success);letter-spacing:.02em;text-transform:uppercase;margin:0 0 6px;font-size:.85rem;font-weight:700}.tactics-section p{color:var(--text-muted);margin:0;font-size:.97rem;line-height:1.7}.tactics-section p em{color:var(--text-light);font-style:normal;font-weight:600}.tactics-cta{color:var(--text-muted);text-align:center;margin-top:36px;font-size:.95rem;font-style:italic;line-height:1.65}@media (width>=900px){.tactics-article{padding:64px 40px 10px}.tactics-article h1{margin-bottom:16px;font-size:2rem}.tactics-intro{margin-bottom:48px;font-size:1.05rem}.tactics-section{margin-bottom:36px}.tactics-section p{font-size:1rem}}.article{background-color:#b0b0b0;width:100%;height:400px}.ad-slot{color:var(--text-muted);letter-spacing:.05em;background:#333;flex-shrink:0;justify-content:center;align-items:center;font-size:.8rem;display:flex}.ad-slot-top{width:100%;height:60px}.ad-slot-side{width:160px;height:100%}.ad-label{opacity:.5}.topbar{height:var(--topbar-h);flex-shrink:0;justify-content:space-between;align-items:center;padding:0 16px;display:flex}.topbar-right{align-items:center;gap:6px;display:flex}.menu-toggle,.menu-close{color:var(--icon-color);cursor:pointer;background:0 0;border:none;border-radius:10px;justify-content:center;align-items:center;width:42px;height:42px;padding:0;transition:background .15s,color .15s,transform .15s;display:flex}.menu-toggle svg,.menu-close svg{width:26px;height:26px}.menu-toggle:active,.menu-close:active{color:var(--icon-active);background:#ffffff1f;transform:scale(.94)}.mobile-menu-backdrop{opacity:0;visibility:hidden;z-index:190;background:#00000080;transition:opacity .3s,visibility 0s linear .3s;position:fixed;inset:0}.mobile-menu-backdrop.open{opacity:1;visibility:visible;transition-delay:0s}.mobile-menu{height:100dvh;width:min(var(--sidebar-w-open), 82vw);background:var(--bg-deep);padding:env(safe-area-inset-top,0px) 0 env(safe-area-inset-bottom,0px);visibility:hidden;z-index:200;flex-direction:column;transition:transform .32s cubic-bezier(.4,0,.2,1),visibility 0s linear .32s;display:flex;position:fixed;top:0;right:0;overflow:hidden;transform:translate(100%);box-shadow:-6px 0 24px #00000059}.mobile-menu.open{visibility:visible;transition-delay:0s;transform:translate(0)}.mobile-menu-head{height:var(--topbar-h);flex-shrink:0;justify-content:space-between;align-items:center;padding:0 16px 0 17px;display:flex}.mobile-menu-logo{flex-shrink:0;margin-left:-1px;text-decoration:none}.mobile-menu-list{flex-direction:column;flex:1;gap:10px;min-height:0;padding:20px 17px 24px;display:flex;overflow-y:auto}.mobile-menu-list .side-space-middle{flex:1;min-height:12px}.mobile-menu-list:not(:has(.side-space-middle)) .menu-item:nth-child(2){margin-top:auto}.mobile-menu .menu-item{width:100%;height:auto;min-height:48px;color:var(--icon-color);font:inherit;text-align:left;white-space:nowrap;cursor:pointer;-webkit-tap-highlight-color:transparent;opacity:0;background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:flex-start;align-items:center;gap:12px;padding:0 8px;font-size:.95rem;font-weight:600;text-decoration:none;transition:opacity .25s,transform .25s,background .15s,color .15s;display:flex;transform:translate(18px)}.mobile-menu .menu-item svg{flex-shrink:0;width:22px;height:22px}.mobile-menu .menu-item img{flex-shrink:0;width:30px;height:30px;margin:0 -4px}.mobile-menu .menu-item img.menu-icon-lg{width:34px;height:34px;margin:0 -6px}.mobile-menu.open .menu-item{opacity:1;transform:translate(0)}.mobile-menu.open .menu-item:first-child{transition-delay:80ms,80ms,0s,0s}.mobile-menu.open .menu-item:nth-child(2){transition-delay:.13s,.13s,0s,0s}.mobile-menu.open .menu-item:nth-child(3){transition-delay:.18s,.18s,0s,0s}.mobile-menu.open .menu-item:nth-child(4){transition-delay:.23s,.23s,0s,0s}.mobile-menu.open .menu-item:nth-child(5){transition-delay:.28s,.28s,0s,0s}.mobile-menu.open .menu-item:nth-child(6){transition-delay:.33s,.33s,0s,0s}@media (hover:hover){.mobile-menu .menu-item:hover{color:var(--icon-active);background:#ffffff29}}.mobile-menu .menu-item:focus-visible{color:var(--icon-active);background:#ffffff29;outline:none}.mobile-menu .menu-item:active,.mobile-menu.open .menu-item:active{color:var(--icon-active);background:#ffffff29;transition-delay:0s;transform:scale(1.04)}.mobile-menu [data-tooltip]:after{display:none}@media (width>=900px){.mobile-menu,.mobile-menu-backdrop{display:none}}@media (prefers-reduced-motion:reduce){.mobile-menu,.mobile-menu-backdrop,.menu-item{transition-duration:.01ms!important;transition-delay:0s!important}}.main-row{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}#puzzleTitle{color:var(--msg)}.logo-icon{color:var(--icon-active);justify-content:center;align-items:center;width:40px;height:40px;display:flex}.logo-icon svg{width:28px;height:28px}:root{--brand-accent:#f5a623}.brand-word{letter-spacing:-.035em;color:var(--icon-active);white-space:nowrap;text-shadow:0 2px #00000047;font-size:1.45rem;font-weight:800;line-height:1}.brand-word .brand-45{color:var(--brand-accent);margin:0 .02em 0 .04em;font-style:italic}.brand-word .brand-com{letter-spacing:0;color:var(--text-muted);font-size:.72em;font-weight:700}.sidebar-brand,.topbar-brand,.menu-brand{flex-shrink:0;align-items:center;min-width:0;display:flex}.topbar-brand .brand-word{margin-left:8px;font-size:1.3rem}.menu-brand .brand-word{margin-left:12px;font-size:1.5rem}.side-nav{flex-direction:column;gap:22px;display:flex}.side-icon{color:var(--icon-color);background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:38px;height:38px;padding:0;transition:color .15s,background .15s;display:flex;position:relative}.side-icon svg{width:22px;height:22px}.side-icon:hover{color:var(--icon-active);background:#ffffff14}[data-tooltip]{position:relative}[data-tooltip]:after{content:attr(data-tooltip);white-space:nowrap;color:#fff;opacity:0;pointer-events:none;z-index:100;background:#1a1a1a;border-radius:6px;padding:5px 9px;font-size:.75rem;font-weight:600;transition:opacity .15s,transform .15s;position:absolute}.sidebar [data-tooltip]:after{top:50%;left:calc(100% + 10px);transform:translateY(-50%)translate(-4px)}.sidebar [data-tooltip]:hover:after{opacity:1;transform:translateY(-50%)translate(0)}.ctrl-btn[data-tooltip]:after,.resign-text-btn[data-tooltip]:after{bottom:calc(100% + 8px);left:50%;transform:translate(-50%)translateY(4px)}.ctrl-btn[data-tooltip]:hover:after,.resign-text-btn[data-tooltip]:hover:after{opacity:1;transform:translate(-50%)translateY(0)}.app{flex-direction:column;flex:1;align-items:center;min-height:0;padding:0 14px;display:flex;overflow:hidden}.mobile-stats{flex-shrink:0;gap:12px;width:100%;padding:4px 0;display:flex}.stat-card{background:var(--card-bg);border-radius:12px;justify-content:space-between;align-items:center;width:30vw;height:40px;padding:5px 8px;display:flex}.stat-card-outline{border:1.5px solid var(--card-border);background:0 0}.stat-label{color:var(--text-muted);font-size:.7rem;font-weight:300}.stat-value{font-size:1.5rem;font-weight:500}.puzzle-badge-mobile{flex:1;align-items:center;margin:0;font-size:.8rem;line-height:1.2;display:flex}.board-column{flex-direction:column;flex:1;align-items:center;width:100%;min-height:0;display:flex}.puzzle-badge{background:var(--card-bg);color:var(--text-light);border-radius:12px;flex-shrink:0;align-self:flex-start;margin:0 0 8px;padding:10px 20px;font-size:1rem;font-weight:800}.puzzle-badge-desktop-container{display:none}.puzzle-badge-desktop{background:var(--card-bg);color:var(--text-light);border-radius:6px;flex-shrink:0;align-self:flex-start;margin:0;padding:5px 10px;font-size:.8rem;font-weight:400}.board-stack{--bar-h:34px;--bar-gap:4px;gap:var(--bar-gap);flex-direction:column;flex-shrink:0;width:100%;display:flex}.player-bar{height:var(--bar-h);flex:none;align-items:center;gap:8px;min-width:0;padding:0 2px;display:flex}.pb-avatar{width:var(--bar-h);height:var(--bar-h);font-size:calc(var(--bar-h) * .5);color:#fff;background:#8a8a8a;border-radius:4px;flex:none;justify-content:center;align-items:center;font-weight:800;line-height:1;display:flex}.player-bar.is-white .pb-avatar{color:#3c3c3c;background:#f2f0eb}.player-bar.is-black .pb-avatar{color:#f2f0eb;background:#262522;box-shadow:inset 0 0 0 1px #ffffff2e}.pb-info{flex:1;align-items:center;gap:6px;min-width:0;line-height:1;display:flex}.pb-title{color:#fff;letter-spacing:.02em;background:#b33430;border-radius:3px;flex:none;padding:2px 5px;font-size:.68rem;font-weight:800}.pb-title[hidden],.pb-flag[hidden]{display:none}.pb-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-light);font-size:.92rem;font-weight:700;overflow:hidden}.pb-rating{color:var(--text-muted);flex:none;font-size:.82rem;font-weight:400}.pb-flag{width:20px;height:14px;color:var(--text-muted);border-radius:2px;flex:none;justify-content:center;align-items:center;display:flex;overflow:hidden}.pb-flag img{object-fit:cover;width:100%;height:100%;display:block}.pb-flag svg{width:16px;height:16px}.board-fit{aspect-ratio:1;flex-direction:column;justify-content:flex-start;align-items:center;width:100%;height:auto;min-height:0;display:flex;position:relative;container-type:size}.board-wrap{width:min(100cqw,100cqh);height:min(100cqw,100cqh);overflow:show;border-radius:4px;position:relative;box-shadow:0 8px 24px #0006}.cg-wrap{inset:0;width:100%!important;height:100%!important;position:absolute!important}.board-wrap,.board-fit,.cg-wrap,cg-board{-webkit-tap-highlight-color:transparent}.controls{flex-shrink:0;justify-content:center;align-items:center;gap:2px;display:flex}.mobile-play-controls{gap:2px}#MobileGameControls.ctrl-visible,#desktopGameControls.ctrl-visible{opacity:1;pointer-events:auto}.engine-btn,.engine-btn-mobile{transition:background .25s,transform .1s,color .25s}.ctrl-btn{background:var(--btn-bg);width:40px;height:40px;color:var(--icon-color);border:none;border-radius:10px;justify-content:center;align-items:center;transition:background .15s,transform .1s,color .15s;display:flex}.combined-mobile-controls{flex-direction:row;flex-shrink:0;justify-content:center;align-items:center;gap:6px;width:100%;padding:6px 0 4px;display:flex}.combined-mobile-controls .controls{padding:0}.mobile-play-controls{border-radius:12px;gap:2px;padding-bottom:0}.ctrl-btn:hover{background:var(--btn-hover);color:var(--icon-active)}.ctrl-btn:active{transform:scale(.93)}.ctrl-btn svg{width:18px;height:18px}.ctrl-btn.hint-btn[hidden]{display:none}.ctrl-btn.hint-btn,.ctrl-btn.hint-btn:hover{background:0 0;padding:0}#bestMoveDesktop,#bestMoveMobile{margin-right:10px;scale:1.2}.ctrl-btn.hint-btn svg{filter:drop-shadow(0 2px #0000002e);width:100%;height:100%;transition:transform .1s,filter .1s;overflow:visible}.ctrl-btn.hint-btn:active{transform:none}.ctrl-btn.hint-btn:active svg,.ctrl-btn.hint-btn.is-pressed svg{filter:drop-shadow(0 0 #0000002e);transform:translateY(2px)scale(.9)}.ctrl-btn.hint-btn.is-pressed svg{animation:.24s ease-out hint-press}@keyframes hint-press{0%{filter:drop-shadow(0 2px #0000002e);transform:translateY(0)scale(1)}40%{filter:drop-shadow(0 0 #0000002e);transform:translateY(2px)scale(.86)}to{filter:drop-shadow(0 2px #0000002e);transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.ctrl-btn.hint-btn.is-pressed svg{animation:none}}.status-msg{text-align:center;min-height:1.2em;color:var(--msg);flex-shrink:0;padding:4px 0;font-size:.95rem;font-weight:700}.status-msg.success{color:var(--success)}.status-msg.fail{color:var(--fail)}.side-panel{display:none}.resign-text-btn{color:var(--text-muted);background:0 0;border:none;border-radius:8px;align-self:center;padding:6px 10px;font-size:1rem;font-weight:500;transition:color .15s,background .15s}.resign-text-btn:hover{color:var(--text-light);background:#ffffff0f}.free-space{display:none}.spacer{flex:1}.engine-btn{cursor:pointer;color:#5a5a5a;background:#e8e8e8;border:none;border-radius:14px;align-items:center;gap:0;width:100%;height:50px;padding:0;transition:background .15s;display:flex;overflow:hidden}.fire-engine{flex-direction:row;gap:4px;display:flex}.rating-btn{cursor:pointer;color:#5a5a5a;background:#e8e8e8;border:none;border-radius:14px;align-items:center;gap:0;width:100%;height:50px;padding:0;transition:background .15s;display:flex;overflow:hidden}#analyze.active,#analyzeMobile.active{background:#e2c1ba}.engine-btn-mobile{width:50px;height:40px;color:var(--bg);background:#e8e8e8;border:none;border-radius:10px;justify-content:center;align-items:center;transition:background .15s,transform .1s,color .15s;display:flex}.rating-btn-mobile{width:45px;height:40px;color:var(--bg);background:#e8e8e8;border:none;border-radius:10px;justify-content:center;align-items:center;transition:background .15s,transform .1s,color .15s;display:flex}.mobile-ctrl-divider{width:10%}.mobile-ctrl-separator{width:5vw}.engine-btn:hover{background:#dcdcdc}.engine-btn-icon{justify-content:center;align-items:center;width:60px;display:flex}.engine-btn-divider{background:#b0b0b0;flex-shrink:0;align-self:stretch;width:2px}.engine-btn-label{text-align:center;letter-spacing:.01em;white-space:nowrap;flex:1;padding:0 16px;font-size:1rem;font-weight:700}.rating-btn-icon{flex-shrink:0;justify-content:center;align-items:center;padding:10px 14px;display:flex}.rating-btn-divider{background:#b0b0b0;flex-shrink:0;align-self:stretch;width:2px}.rating-btn-label{text-align:center;letter-spacing:.01em;white-space:nowrap;flex:1;padding:0 16px;font-size:1rem;font-weight:700}.sidebar{display:none}@media (width>=900px){.topbar,.mobile-stats,.mobile-controls,.combined-mobile-controls{display:none}.page{flex-direction:column}.sidebar{width:var(--sidebar-w);height:100vh;padding:20px 17px;padding-bottom:calc(env(safe-area-inset-bottom,0px) + 60px);box-sizing:border-box;background:var(--bg-deep);z-index:200;flex-direction:column;flex-shrink:0;align-items:stretch;gap:36px;transition:width .3s cubic-bezier(.4,0,.2,1),box-shadow .3s;display:flex;position:fixed;top:0;left:0;overflow:hidden}.sidebar:hover,.sidebar:focus-within{width:var(--sidebar-w-open);box-shadow:6px 0 24px #00000059}.sidebar .logo-icon{flex-shrink:0;margin-left:-1px}.sidebar .brand-word{opacity:0;pointer-events:none;margin-left:12px;font-size:1.6rem;transition:opacity .15s,transform .2s;transform:translate(-8px)}.sidebar:hover .brand-word,.sidebar:focus-within .brand-word{opacity:1;transition-delay:80ms;transform:translate(0)}.sidebar .side-icon{white-space:nowrap;transform-origin:50%;justify-content:flex-start;width:100%;transition:color .15s,background .15s,transform .2s cubic-bezier(.34,1.56,.64,1)}.sidebar .side-icon>svg{flex-shrink:0;margin-left:8px}.sidebar .side-icon>img{flex-shrink:0;margin-left:4px}.side-label{opacity:0;pointer-events:none;margin-left:12px;font-size:.9rem;font-weight:600;transition:opacity .15s,transform .2s;transform:translate(-8px)}.sidebar:hover .side-label,.sidebar:focus-within .side-label{opacity:1;transition-delay:80ms;transform:translate(0)}.sidebar .side-icon:hover,.sidebar .side-icon:focus-visible{color:var(--icon-active);background:#ffffff29;outline:none;transform:scale(1.07)}.sidebar [data-tooltip]:after,.topbar,.settings-mobile{display:none}.scroll-root{padding-left:var(--sidebar-w)}.puzzle-badge-desktop-container{width:100%;margin:0;padding:0;display:flex}.puzzle-badge-desktop{border-radius:12px;padding:10px 20px;font-size:1rem;font-weight:800}.board-column{flex-direction:row;flex:1;align-items:center;gap:10px;width:100%;min-height:0;padding-left:12px;display:flex}.board-fit{aspect-ratio:1;flex:none;width:100%;height:auto}.main-row{flex-direction:row;align-items:stretch}.app{flex-direction:column;flex:1;align-items:stretch;gap:0;width:100%;padding:24px 32px}.board-column{flex:1;align-items:flex-start;width:auto;min-width:0;container-type:size}.board-stack{--bar-h:40px;--bar-gap:6px;width:max(240px, calc(100cqh - 2 * var(--bar-h) - 2 * var(--bar-gap)))}.pb-name{font-size:1rem}.pb-rating{font-size:.9rem}.pb-flag{width:24px;height:17px}.puzzle-badge{display:none}.side-panel{width:var(--panel-w);background:var(--panel-bg);border-radius:14px;flex-direction:column;flex-shrink:0;align-self:flex-start;gap:14px;height:100%;padding:24px;display:flex}.mobile-holder{display:none}.stat-card{flex:initial;width:100%;height:auto}.panel-stat{background:var(--card-bg);border-radius:12px;padding:16px 20px}.panel-stat .stat-value{font-size:1.7rem}.panel-stat .stat-label{font-size:1.05rem}.panel-spacer{flex:1;min-height:20px}.combined-desktop-controls{flex-direction:row;flex-shrink:0;justify-content:center;align-items:center;gap:8px;width:100%;display:flex}.combined-desktop-controls .controls{padding:0}.desktop-controls{gap:2px;padding-bottom:0}.desktop-play-controls{border-radius:12px;gap:2px;padding-bottom:0}.ctrl-btn{border-radius:10px;width:40px;height:40px}.ctrl-btn svg{width:18px;height:18px}.mobile-play-controls{display:none}.free-space{background-color:#d97f7f;display:flex}.status-msg{text-align:center;padding:8px 0 0}#statusMsg1,.mobile-status,.mobile-status{display:none}}@media (hover:none){[data-tooltip]:after{display:none}button,[data-tooltip],.ctrl-btn,.side-icon,.engine-btn,.rating-btn,.resign-text-btn{-webkit-tap-highlight-color:transparent}}@media (width<=380px){:root{--topbar-h:48px}.stat-value{font-size:1.3rem}.ctrl-btn{width:34px;height:34px}.puzzle-badge{padding:8px 16px;font-size:.9rem}}.side-space-middle{flex:1}@media (prefers-reduced-motion:reduce){.sidebar,.sidebar .side-icon,.side-label{transition-duration:.01ms!important;transition-delay:0s!important}}.no-underline{text-decoration:none}.side-icon svg.brilliant-icon{width:34px;height:34px}.side-icon-mobile svg.brilliant-icon{width:32px;height:32px;margin:0 -5px}.sidebar .side-icon>svg.brilliant-icon{margin-left:4px}#leaderboard{margin-top:100px}.board-stack{--eval-w:10px;--eval-gap:5px}@media (width>=900px){.board-stack{--eval-w:30px;--eval-gap:10px}}.board-row{align-items:stretch;gap:var(--eval-gap);width:100%;display:flex}.board-row>.board-fit{flex:1;min-width:0}.board-stack>.player-bar{box-sizing:border-box;width:auto;margin-left:calc(var(--eval-w) + var(--eval-gap));align-self:stretch}.eval-bar{--white-pct:50%;flex:0 0 var(--eval-w);width:var(--eval-w);-webkit-user-select:none;user-select:none;background:#403d39;border-radius:4px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #00000040}.eval-bar__fill{height:var(--white-pct);background:#f4f4f2;transition:height .5s cubic-bezier(.22,.8,.3,1),opacity .2s;position:absolute;bottom:0;left:0;right:0}.eval-bar[data-flipped=true] .eval-bar__fill{top:0;bottom:auto}.eval-bar:after{content:"";pointer-events:none;background:#8080808c;height:2px;margin-top:-1px;position:absolute;top:50%;left:0;right:0}.eval-bar__label{z-index:1;text-align:center;font-variant-numeric:tabular-nums;letter-spacing:-.02em;white-space:nowrap;pointer-events:none;font:700 11px/1 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;transition:opacity .2s;position:absolute;left:0;right:0}.eval-bar__label[data-end=bottom]{bottom:5px}.eval-bar__label[data-end=top]{top:5px}.eval-bar__label[data-side=white]{color:#403d39}.eval-bar__label[data-side=black]{color:#fff}.eval-bar.is-pending .eval-bar__fill{opacity:.6}.eval-bar.is-pending .eval-bar__label{opacity:.5}.eval-bar.is-idle .eval-bar__fill{opacity:.85}@media (width<=899.98px){.eval-bar{border-radius:3px}.eval-bar__label{display:none}}@media (prefers-reduced-motion:reduce){.eval-bar__fill,.eval-bar__label{transition:none}}.gp-overlay{--gp-bg:#262421;--gp-surface:#302e2b;--gp-surface-hover:#3a3733;--gp-border:#ffffff14;--gp-text:#f2f0ea;--gp-muted:#a8a39a;--gp-accent:#769656;--gp-accent-soft:#9bbb77;--gp-piece-white:#eeeed2;--gp-piece-black:#151412;--gp-radius:14px;z-index:2000;opacity:0;overscroll-behavior:contain;color:var(--gp-text);background:#0a0a09a3;justify-content:center;align-items:flex-end;font-family:inherit;transition:opacity .18s;display:flex;position:fixed;inset:0}.gp-overlay[hidden]{display:none}.gp-overlay.is-open{opacity:1}html.gp-lock{overflow:hidden}.gp-panel{background:var(--gp-bg);border-radius:20px 20px 0 0;outline:none;flex-direction:column;width:100%;max-height:88dvh;transition:transform .24s cubic-bezier(.2,.8,.2,1);display:flex;overflow:hidden;transform:translateY(28px);box-shadow:0 -8px 40px #00000073}.gp-overlay.is-open .gp-panel{transform:none}.gp-head{border-bottom:1px solid var(--gp-border);flex:none;justify-content:space-between;align-items:center;gap:12px;padding:18px 16px 14px 20px;display:flex}.gp-heading-title{letter-spacing:-.01em;color:var(--gp-text);margin:0;font-size:1.2rem;font-weight:700;line-height:1.2}.gp-count{color:var(--gp-muted);margin:3px 0 0;font-size:.82rem}.gp-count:empty{display:none}.gp-close{appearance:none;width:40px;height:40px;color:var(--gp-muted);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:50%;flex:none;place-items:center;padding:0;transition:background .15s,color .15s;display:grid}.gp-close:hover{background:var(--gp-surface);color:var(--gp-text)}.gp-close:focus-visible,.gp-game:focus-visible{outline:2px solid var(--gp-accent-soft);outline-offset:2px}.gp-body{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;min-height:0;padding:14px 14px calc(18px + env(safe-area-inset-bottom,0px));flex:1;overflow-y:auto}.gp-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.gp-empty{text-align:center;color:var(--gp-muted);padding:36px 12px;font-size:.95rem}.gp-game{appearance:none;border:1px solid var(--gp-border);border-radius:var(--gp-radius);background:var(--gp-surface);width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;align-items:center;gap:12px;margin:0;padding:13px 14px;transition:background .15s,border-color .15s;display:flex}.gp-game:hover{background:var(--gp-surface-hover);border-color:var(--gp-accent)}.gp-game:active{background:var(--gp-surface-hover)}.gp-main{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.gp-players{flex-wrap:wrap;align-items:center;gap:4px 8px;line-height:1.35;display:flex}.gp-player{min-width:0;color:var(--gp-text);align-items:baseline;gap:6px;font-weight:500;display:inline-flex}.gp-player.is-winner{font-weight:700}.gp-swatch{border:1px solid #ffffff59;border-radius:3px;flex:none;align-self:center;width:10px;height:10px}.gp-swatch[data-color=white]{background:var(--gp-piece-white)}.gp-swatch[data-color=black]{background:var(--gp-piece-black)}.gp-title{color:var(--gp-accent-soft);font-size:.72rem;font-weight:700}.gp-name{overflow-wrap:anywhere;font-size:1rem}.gp-elo{color:var(--gp-muted);font-variant-numeric:tabular-nums;font-size:.8rem;font-weight:400}.gp-vs{color:var(--gp-muted);font-size:.8rem}.gp-meta{color:var(--gp-muted);flex-wrap:wrap;gap:2px 0;font-size:.82rem;display:flex}.gp-event{color:var(--gp-text);opacity:.85}.gp-meta>span+span{border-left:1px solid var(--gp-border);margin-left:10px;padding-left:10px}.gp-result{text-align:center;font-variant-numeric:tabular-nums;white-space:nowrap;border:1px solid #0000;border-radius:9px;flex:none;min-width:58px;padding:7px 10px;font-size:.9rem;font-weight:700;line-height:1}.gp-result[data-outcome=white]{background:var(--gp-piece-white);color:#262421}.gp-result[data-outcome=black]{background:var(--gp-piece-black);color:var(--gp-text);border-color:#ffffff47}.gp-result[data-outcome=draw],.gp-result[data-outcome=none]{color:var(--gp-muted);background:0 0;border-color:#ffffff38}.gp-more-item{margin-top:8px}.gp-more{appearance:none;color:#fff;width:100%;min-height:58px;font:inherit;letter-spacing:.01em;text-shadow:0 1px 1px #00000040;cursor:pointer;-webkit-tap-highlight-color:transparent;background:linear-gradient(#84a561 0%,#6a8a4b 100%);border:1px solid #9bbb7780;border-radius:16px;flex-wrap:wrap;justify-content:center;align-items:center;gap:4px 12px;margin:0;padding:16px 22px;font-size:1.05rem;font-weight:700;transition:transform .15s,filter .15s,box-shadow .15s;display:flex;box-shadow:0 6px 18px #76965647,inset 0 1px #fff3}.gp-more-label:after{content:"";vertical-align:middle;border-bottom:2.5px solid;border-right:2.5px solid;width:8px;height:8px;margin:0 0 3px 12px;display:inline-block;transform:rotate(45deg)}.gp-more:hover{filter:brightness(1.08);transform:translateY(-1px);box-shadow:0 10px 24px #76965661,inset 0 1px #ffffff40}.gp-more:active{filter:brightness(.96);transform:translateY(0)}.gp-more:focus-visible{outline:2px solid var(--gp-accent-soft);outline-offset:3px}.gp-more[aria-busy=true]{cursor:progress;filter:saturate(.7)}.gp-more[aria-busy=true] .gp-more-label:after{border:2.5px solid #ffffff59;border-top-color:#fff;border-radius:50%;width:14px;height:14px;margin:0 0 2px 12px;animation:.7s linear infinite gp-spin;transform:none}@keyframes gp-spin{to{transform:rotate(360deg)}}.gp-more-count{text-align:center;color:#ffffffd9;text-shadow:none;flex-basis:100%;font-size:.8rem;font-weight:500}@media (width>=640px){.gp-overlay{align-items:center;padding:24px}.gp-panel{border-radius:18px;max-width:620px;max-height:min(90vh,1820px);transform:translateY(14px)scale(.98);box-shadow:0 24px 70px #00000080}.gp-head{padding:20px 20px 16px 24px}.gp-body{padding:16px 18px 20px}.gp-game{padding:14px 16px}}@media (width<=359px){.gp-game{gap:8px;padding:12px}.gp-result{min-width:50px;padding:6px 8px}}@media (prefers-reduced-motion:reduce){.gp-overlay,.gp-panel,.gp-game,.gp-more,.gp-close{transition:none}.gp-more[aria-busy=true] .gp-more-label:after{animation:none}}
