:root:not([data-effective-theme=dark]) body:has(.puzzles-shell){--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--site-bg:#eae9e6;--site-bg-soft:#e3e1de;--site-text:#525252;--site-heading:#3d3d3d;--site-muted:#7d7d7d;--site-panel:#fff;--site-panel-soft:#f5f5f5;--site-border:#d1d1d1;--site-border-soft:#e0e0e0;--site-nav-bg:var(--site-bg);--site-nav-border:transparent;--site-shadow:#00000029;background:var(--site-page-gradient)}.puzzles-shell{--puzzle-nav-height:53px;--puzzle-page-height:calc(100dvh - var(--puzzle-nav-height));--puzzle-surface-fit:min(704px, calc(var(--puzzle-page-height) - 10px));--puzzle-surface-size:calc(var(--puzzle-surface-fit) * var(--uni-board-scale,1));--puzzle-drop-surface-size:min(var(--puzzle-surface-size), calc((var(--puzzle-page-height) - 58px) * 82 / 100));--puzzle-fortress-surface-size:min(var(--puzzle-surface-size), calc((var(--puzzle-page-height) - 58px) * 72 / 100));width:100%;max-width:1580px;height:var(--puzzle-page-height);box-sizing:border-box;color:var(--site-text);grid-template-rows:minmax(0,1fr);padding:8px 18px 12px;font-family:Noto Sans,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400;display:grid;overflow:hidden}@media (width>=1500px){.puzzles-shell{--puzzle-surface-fit:min(860px, calc(var(--puzzle-page-height) - 10px));max-width:min(94vw,2100px)}}.puzzles-header{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.puzzles-header .site-section-heading{margin:0}.puzzles-layout{grid-template-columns:minmax(270px, 374px) minmax(420px, var(--puzzle-surface-size)) minmax(320px, 426px);justify-content:center;align-items:start;gap:clamp(12px,1.3vw,20px);min-height:0;display:grid}.puzzle-detail,.puzzle-board-panel{display:contents}.puzzle-board{order:2;grid-template-areas:"board";justify-items:center;min-width:0;line-height:0;display:grid;position:relative}.puzzle-board>*{grid-area:board}.puzzle-board>.board-resize-grip{right:calc(var(--puzzle-board-inset,0px) + 3px);position:absolute;bottom:3px}.puzzle-board .mini-xq-board{width:100%;max-width:var(--puzzle-surface-size);border-radius:2px;min-width:360px;box-shadow:0 1px 2px #0000002e}.puzzle-board .jungle-live-svg{width:auto;max-width:100%;height:auto;max-height:var(--puzzle-surface-size);border-radius:2px;box-shadow:0 1px 2px #0000002e}.puzzle-board .puzzle-xiangqi-board{width:min(100%, calc(var(--puzzle-surface-size) * 552 / 612));min-width:320px;box-shadow:0 1px 2px #0000002e}:root[data-xiangqi-board-layout=cell] .puzzle-board .puzzle-xiangqi-board{width:min(100%, calc(var(--puzzle-surface-size) * 540 / 612))}.puzzle-board-shell{width:min(100%, var(--puzzle-drop-surface-size));min-width:360px}.puzzle-board-shell.puzzle-fortress-shell{width:min(100%, var(--puzzle-fortress-surface-size));min-width:320px}.puzzle-board-shell>.puzzle-board-reserve,.puzzle-board-surface{width:100%;position:relative}.puzzle-board-surface{line-height:0}.puzzle-board-shell .mini-xq-board{min-width:0;max-width:100%}.puzzle-board-reserve{background:0 0}.puzzle-fortress-shell .puzzle-pocket{--drop-mini-hand-piece-size:clamp(36px, calc(100cqw * 58 / 516), 64px);--drop-mini-hand-tile-size:calc(var(--drop-mini-hand-piece-size) + 8px);box-sizing:border-box;justify-content:center;align-items:center;height:auto;min-height:0;margin:0;padding:5px 6px;display:flex}.puzzle-fortress-shell>.puzzle-pocket--opponent{opacity:.9;margin-bottom:6px}.puzzle-fortress-shell>.puzzle-pocket--own{margin-top:6px}.puzzle-fortress-shell .puzzle-pocket.has-captures{border:1px solid var(--site-border-soft);background:var(--site-panel-soft);border-radius:4px;box-shadow:inset 0 1px 2px #0000000d}.puzzle-fortress-shell .puzzle-pocket:not(.has-captures){min-height:8px;padding:0}.puzzle-fortress-shell .puzzle-pocket .drop-mini-reserve-row{gap:6px}.puzzle-fortress-shell .puzzle-pocket .drop-mini-reserve-piece{border-color:color-mix(in srgb, var(--site-border) 60%, transparent);background:var(--site-panel)}.puzzle-fortress-shell .puzzle-pocket--own button.drop-mini-reserve-piece:hover:not(:disabled),.puzzle-fortress-shell .puzzle-pocket--own .drop-mini-reserve-piece.selected{border-color:var(--site-accent);background:var(--site-accent-soft);box-shadow:0 0 0 2px var(--site-accent-soft)}.puzzles-sidebar,.puzzle-side-panel{min-width:0}.puzzles-sidebar{max-height:var(--puzzle-surface-size);order:1;align-content:start;gap:14px;display:grid;overflow:auto}.puzzle-side-panel{height:var(--puzzle-surface-size);order:3;grid-template-rows:minmax(0,1fr) auto;align-content:stretch;gap:8px;display:grid;overflow:hidden}.puzzle-side-panel--analysis{height:auto;max-height:var(--puzzle-surface-size);grid-template-rows:none;grid-auto-rows:min-content;align-content:start;overflow:auto}.puzzle-analysis-open-link{text-align:center;color:var(--site-muted);padding:8px 10px;font-size:.8rem;text-decoration:none;display:block}.puzzle-analysis-open-link:hover{color:var(--site-accent);text-decoration:underline}.puzzle-trainer-panel,.puzzle-left-card{border:1px solid var(--site-border-soft);background:var(--site-panel);box-shadow:0 2px 5px var(--site-shadow);border-radius:8px}.puzzle-trainer-panel{grid-template-rows:minmax(180px,1fr) minmax(190px,240px);min-height:0;display:grid;overflow:hidden}.puzzle-trainer-panel--analysis{grid-template-rows:auto minmax(140px,1fr) minmax(190px,240px)}.puzzle-trainer-panel--analysis>.engine-panel{border:none;border-bottom:1px solid var(--site-border);background:0 0;border-radius:0}.puzzle-trainer-panel--analysis>.engine-panel .engine-panel__head{border-radius:0}.puzzle-left-card{gap:12px;padding:17px 20px;display:grid}.puzzles-sidebar h2,.puzzle-left-card h2{color:var(--site-heading);margin:0;font-size:14px;font-weight:600;line-height:1.2}.puzzle-card-empty{color:var(--site-muted);margin:0;font-size:14px;line-height:1.35}.puzzle-info-card{gap:0;padding:18px 20px 17px}.puzzle-info-row{grid-template-columns:54px minmax(0,1fr);align-items:center;gap:13px;min-height:66px;display:grid}.puzzle-info-icon{width:54px;height:54px;color:var(--site-muted);place-items:center;line-height:1;display:grid}.puzzle-target-avatar{width:54px;height:54px;display:block}.puzzle-info-icon .variant-mini,.puzzle-info-icon .variant-marker{filter:grayscale(.15)saturate(.85);width:54px;height:54px;display:block}.puzzle-info-copy{min-width:0;color:var(--site-muted);gap:4px;font-size:14px;line-height:1.2;display:grid}.puzzle-info-copy span:first-child{color:var(--site-heading);font-size:16px;font-weight:500}.puzzle-code-link{color:var(--site-link);font-variant-numeric:tabular-nums;text-decoration:none}.puzzle-code-link:hover{text-decoration:underline}.puzzle-source-player{align-items:center;gap:7px;min-width:0;display:flex}.puzzle-source-disc{border:1px solid var(--site-border);border-radius:50%;flex:none;width:10px;height:10px}.puzzle-source-disc--red{background:#c0392b}.puzzle-source-disc--black{background:#454545}.puzzle-source-player-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.puzzle-source-result{color:var(--site-muted);font-variant-numeric:tabular-nums;margin-left:auto;padding-left:8px}.puzzle-info-divider{background:var(--site-border-soft);border:0;width:100%;height:1px;margin:9px 0}.puzzle-rating-card{align-content:start;gap:14px;min-height:122px}.puzzle-rating-card--practice{min-height:118px}.puzzle-rating-card p{color:var(--site-muted);margin:0;font-size:14px;line-height:1.35}.puzzle-rating-summary{text-align:center;justify-items:center;gap:4px;display:grid}.puzzle-rating-card strong{color:var(--site-heading);font-size:clamp(44px,5vw,62px);font-weight:400;line-height:1}.puzzle-rating-meta{color:var(--site-muted);font-size:14px;line-height:1.2}.puzzle-rating-delta{vertical-align:middle;margin-left:6px;font-size:18px;font-weight:600}.puzzle-rating-delta--up{color:#649f3c}.puzzle-rating-delta--down{color:#d15254}.puzzle-rated-note{color:var(--site-muted);font-size:13px;line-height:1.35}.puzzle-theme-card h2{color:var(--site-link);text-transform:uppercase;font-size:20px;font-weight:400}.puzzle-theme-card h2:before{content:"« "}.puzzle-theme-card p{color:var(--site-muted);margin:0;font-size:14px;line-height:1.3}.puzzle-settings{gap:14px;display:grid}.puzzle-field{min-width:0;color:var(--site-muted);grid-template-columns:1fr minmax(128px,48%);align-items:center;gap:12px;font-size:14px;font-weight:400;display:grid}.puzzle-select{border:1px solid var(--site-border-soft);background:var(--site-panel-soft);width:100%;min-height:38px;color:var(--site-text);font:inherit;border-radius:2px;padding:7px 10px;font-size:14px}.puzzle-select:focus-visible{outline:2px solid var(--site-accent);outline-offset:2px}.puzzle-toggle{min-width:0;color:var(--site-text);cursor:pointer;align-items:center;gap:10px;font-size:14px;font-weight:600;line-height:1.2;display:flex}.puzzle-toggle input{clip:rect(0 0 0 0);clip-path:inset(50%);block-size:1px;inline-size:1px;margin:-1px;position:absolute;overflow:hidden}.puzzle-toggle-switch{background:var(--site-border);border-radius:999px;flex:none;width:46px;height:24px;transition:background .12s,box-shadow .12s;position:relative;box-shadow:inset 0 1px 2px #00000029}.puzzle-toggle-switch:after{content:"";background:#fff;border-radius:999px;width:20px;height:20px;transition:transform .12s;position:absolute;top:2px;left:2px;box-shadow:0 1px 4px #00000047}.puzzle-toggle input:checked+.puzzle-toggle-switch{background:#649f3c}.puzzle-toggle input:checked+.puzzle-toggle-switch:after{transform:translate(22px)}.puzzle-toggle input:focus-visible+.puzzle-toggle-switch{outline:2px solid var(--site-accent);outline-offset:2px}.puzzle-toggle-label{overflow-wrap:anywhere;min-width:0}.puzzle-moves{background:var(--site-panel);grid-template-rows:1fr;min-height:0;display:grid}.puzzle-move-list{align-content:start;gap:0;min-height:0;margin:0;padding:0;list-style:none;display:grid;overflow:auto}.puzzle-move-empty,.puzzle-move-item{border-bottom:1px solid var(--site-border-soft);min-height:38px;color:var(--site-muted);font-variant-numeric:tabular-nums;grid-template-columns:38px minmax(0,1fr) minmax(0,1fr);align-items:center;padding:0 22px;font-size:14px;display:grid}.puzzle-move-context{color:var(--site-border)}.puzzle-move-red,.puzzle-move-black{overflow-wrap:anywhere;min-width:0;color:var(--site-text);font-size:15px;font-weight:400}.puzzle-move-cell--active{background:var(--site-accent-soft);color:var(--site-heading);align-self:stretch;align-items:center;margin:0 -6px;padding:0 6px;font-weight:600;display:flex}.puzzle-feedback{border-top:1px solid var(--site-border-soft);min-height:0;color:var(--site-text);grid-template-columns:88px minmax(0,1fr);align-items:center;padding:22px 28px;line-height:1.25;display:grid}.puzzle-feedback-icon{width:66px;height:66px;color:var(--site-heading);place-items:center;line-height:1;display:grid}.puzzle-feedback-icon svg{width:100%;height:100%;display:block}.puzzle-feedback-copy{gap:6px;min-width:0;display:grid}.puzzle-feedback-title{color:var(--site-heading);overflow-wrap:anywhere;margin:0;font-size:24px;font-weight:600;line-height:1.08}.puzzle-feedback-body{color:var(--site-muted);font-size:14px}.puzzle-feedback-skip{border:1px solid var(--site-border);background:var(--site-panel-soft);color:var(--site-text);cursor:pointer;font:inherit;border-radius:3px;justify-self:start;margin-top:4px;padding:6px 12px;font-size:13px;font-weight:600;line-height:1.2}.puzzle-feedback-skip:hover{border-color:var(--site-accent);color:var(--site-accent)}.puzzle-feedback-skip:focus-visible{outline:2px solid var(--site-accent);outline-offset:2px}.puzzle-feedback-skip:disabled{cursor:default;opacity:.55}.puzzle-assist-row{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.puzzle-assist-next{border-color:var(--site-accent);color:var(--site-accent)}.puzzle-feedback--good{background:color-mix(in srgb, #2b8a57 9%, var(--site-panel))}.puzzle-feedback--bad{background:color-mix(in srgb, #b03636 8%, var(--site-panel))}.puzzle-feedback--pending{background:color-mix(in srgb, #46588c 8%, var(--site-panel))}.puzzle-solved-panel{border-top:1px solid var(--site-border-soft);background:var(--site-panel);min-height:0;color:var(--site-text);text-align:center;grid-template-rows:1fr auto auto;align-items:center;display:grid}.puzzle-solved-panel h2{color:var(--site-heading);margin:0;padding:14px 24px 12px;font-size:20px;font-weight:600;line-height:1.1}.puzzle-continue-button{background:var(--site-accent);width:100%;min-height:76px;color:var(--site-on-accent,#fff);cursor:pointer;font:inherit;letter-spacing:.06em;text-transform:uppercase;border:0;justify-content:center;align-items:center;gap:12px;padding:0 24px;font-size:19px;font-weight:600;display:flex}.puzzle-continue-button svg{display:block}.puzzle-continue-button:hover:not(:disabled){background:var(--site-accent-strong)}.puzzle-continue-button:disabled{background:var(--site-border);color:var(--site-panel);cursor:default}.puzzle-solved-feedback{border-top:1px solid var(--site-border-soft);text-align:left;align-items:center;gap:12px;padding:12px 18px;display:flex}.puzzle-analysis-button{width:34px;height:34px;color:var(--site-muted);cursor:pointer;background:0 0;border:0;border-radius:4px;place-items:center;padding:0;display:grid}.puzzle-analysis-button:disabled{cursor:default;opacity:.55}.puzzle-analysis-button .puzzle-target-avatar{width:22px;height:22px}.puzzle-vote-prompt{min-width:0;color:var(--site-text);flex:1;font-size:15px;line-height:1.2}.puzzle-vote-actions{align-items:center;gap:8px;display:flex}.puzzle-vote-button{color:currentColor;cursor:pointer;background:0 0;border:0;border-radius:4px;place-items:center;width:34px;height:34px;padding:0;display:grid}.puzzle-vote-button svg{width:22px;height:22px;display:block}.puzzle-vote-button--up{color:#649f3c}.puzzle-vote-button--down{color:#d15254}.puzzle-vote-button:hover{background:color-mix(in srgb, currentColor 14%, transparent)}.puzzle-vote-button--selected{background:color-mix(in srgb, currentColor 20%, transparent)}.puzzle-vote-button:disabled{color:var(--site-border);cursor:default}.puzzle-analysis-button:focus-visible,.puzzle-vote-button:focus-visible,.puzzle-continue-button:focus-visible{outline:2px solid var(--site-accent);outline-offset:-2px}.puzzle-actions{grid-template-columns:repeat(4,48px);justify-content:center;align-items:center;gap:clamp(10px,1.8vw,24px);min-height:52px;display:grid}.puzzle-button{width:48px;height:44px;color:var(--site-muted);cursor:pointer;font:inherit;letter-spacing:0;background:0 0;border:0;border-radius:2px;place-items:center;padding:0;font-size:26px;font-weight:600;line-height:1;display:grid}.puzzle-button svg{display:block}.puzzle-button:hover,.puzzle-button:focus-visible{color:var(--site-heading);outline:2px solid #0000}.puzzle-button:focus-visible{box-shadow:0 0 0 3px var(--site-focus,#3788d838)}.puzzle-button:disabled{color:var(--site-border);cursor:default}.puzzle-tags{flex-wrap:wrap;gap:6px;max-height:none;padding:0;display:flex;overflow:hidden}.puzzle-tag{border:1px solid var(--site-border-soft);color:var(--site-muted);background:var(--site-panel-soft);border-radius:999px;padding:4px 8px;font-size:12px;font-weight:400;line-height:1.1}.puzzles-status{color:var(--site-muted);font-size:14px}@media (width>=981px){body:has(.puzzles-shell){overflow:hidden}}@media (width<=1180px){.puzzles-layout{grid-template-columns:minmax(230px,310px) minmax(400px,min(50vw,620px)) minmax(270px,360px)}.puzzle-rating-card strong{font-size:50px}}@media (width<=980px){.puzzles-shell{grid-template-rows:auto auto;gap:16px;height:auto;padding:28px 16px 56px;display:grid;overflow:visible}.puzzles-header{clip-path:none;white-space:normal;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:12px;width:auto;height:auto;display:flex;position:static;overflow:visible}.puzzles-layout{grid-template-columns:minmax(0,1fr)}.puzzle-board{order:1}.puzzle-side-panel{order:2;height:auto;overflow:visible}.puzzle-trainer-panel{grid-template-rows:minmax(180px,auto) minmax(160px,auto);min-height:0}.puzzle-trainer-panel--analysis{grid-template-rows:auto minmax(180px,auto) minmax(160px,auto)}.puzzles-sidebar{order:3;max-height:none}}@media (width<=520px){.puzzles-shell{padding-top:22px}.puzzle-board .mini-xq-board,.puzzle-board .puzzle-xiangqi-board,.puzzle-board-shell{min-width:0;max-width:100%}.puzzle-info-row{grid-template-columns:44px minmax(0,1fr);gap:10px}.puzzle-info-icon,.puzzle-target-avatar,.puzzle-info-icon .variant-mini{width:44px;height:44px}.puzzle-field{grid-template-columns:1fr}.puzzle-feedback{grid-template-columns:60px minmax(0,1fr);padding:18px 20px}.puzzle-feedback-icon{width:50px;height:50px;font-size:44px}.puzzle-feedback-title{font-size:21px}.puzzle-solved-panel h2{font-size:24px}.puzzle-continue-button{min-height:52px;font-size:15px}}
