page{--cc-red:#c0392b;--cc-black:#1f2933;--cc-wood-light:#f3e2c7;--cc-wood-dark:#d9b676;--cc-wood-deep:#6b4423;--cc-gold:#b8860b;background:-webkit-linear-gradient(290deg,#f3e2c7,#e3c48f);background:linear-gradient(160deg,#f3e2c7,#e3c48f);color:#4a2f15;font-family:PingFang SC,Microsoft YaHei,sans-serif;min-height:100vh;min-height:100dvh}body{background:-webkit-linear-gradient(290deg,#f3e2c7,#e3c48f);background:linear-gradient(160deg,#f3e2c7,#e3c48f);margin:0}.btn{height:1.9rem}:root taro-button-core{-ms-flex-align:center;-ms-flex-pack:center;-webkit-align-items:center;align-items:center;-webkit-box-sizing:border-box;box-sizing:border-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-justify-content:center;justify-content:center;line-height:1.2;padding:.35rem .6rem}.chessboard-wrap{-webkit-box-shadow:0 .2rem .55rem rgba(0,0,0,.28);box-shadow:0 .2rem .55rem rgba(0,0,0,.28);display:inline-block;line-height:0}.chess-canvas{display:block;-ms-touch-action:none;touch-action:none}.gs-page{-ms-flex-align:center;-webkit-align-items:center;align-items:center;-webkit-box-sizing:border-box;box-sizing:border-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;min-height:100vh;min-height:100dvh;padding:calc(.3rem + env(safe-area-inset-top)) .4rem calc(.3rem + env(safe-area-inset-bottom))}.gs-top-bar{-ms-flex-align:center;-ms-flex-pack:justify;-webkit-align-items:center;align-items:center;-webkit-box-sizing:border-box;box-sizing:border-box;display:-webkit-flex;display:-ms-flexbox;display:flex;gap:.3rem;-webkit-justify-content:space-between;justify-content:space-between;margin-bottom:.1rem;max-width:15.5rem;min-height:1.3rem;padding-left:3.4rem;width:100%}.gs-page-title{color:#6b4423;-webkit-flex:1 1 auto;-ms-flex:1 1 auto;flex:1 1 auto;font-family:KaiTi,STKaiti,serif;font-size:.75rem;font-weight:700;letter-spacing:.025rem;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gs-top-right{-ms-flex-align:center;-webkit-align-items:center;align-items:center;display:-webkit-flex;display:-ms-flexbox;display:flex;gap:.2rem;margin-left:auto}.gs-top-right + .gs-voice-btn{margin-left:.3rem}.gs-voice-btn{background:-webkit-gradient(linear,left top,left bottom,from(#fbf0d8),to(#ecd6a6));background:-webkit-linear-gradient(top,#fbf0d8,#ecd6a6);background:linear-gradient(180deg,#fbf0d8,#ecd6a6);border:.05rem solid #b9863f;border-radius:.6rem;color:#4a2f15;-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto;font-size:.55rem;height:1.2rem;line-height:1.1rem;margin:0;padding:0 .35rem;width:auto}.gs-header{-ms-flex-align:center;-webkit-align-items:center;align-items:center;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;max-width:15.5rem;width:100%}.gs-status-bar{-ms-flex-align:center;-ms-flex-pack:justify;-webkit-align-items:center;align-items:center;background:-webkit-gradient(linear,left top,left bottom,from(#fbf0d8),to(#ecd6a6));background:-webkit-linear-gradient(top,#fbf0d8,#ecd6a6);background:linear-gradient(180deg,#fbf0d8,#ecd6a6);border:.05rem solid #b9863f;border-radius:.35rem;-webkit-box-sizing:border-box;box-sizing:border-box;display:-webkit-flex;display:-ms-flexbox;display:flex;gap:.3rem;-webkit-justify-content:space-between;justify-content:space-between;margin:.2rem 0 .25rem;max-width:15.5rem;min-height:1.35rem;padding:.15rem .4rem;width:100%}.gs-status-text{-webkit-animation:gs-pop .35s ease;animation:gs-pop .35s ease;color:#c0392b;font-family:KaiTi,STKaiti,serif;font-size:.7rem;font-weight:700}.gs-status-text.check{-webkit-animation:gs-pop .35s ease,gs-blink .8s ease-in-out infinite;animation:gs-pop .35s ease,gs-blink .8s ease-in-out infinite;color:#d32f2f}.gs-hint{-ms-flex-align:center;-ms-flex-pack:end;-ms-flex-negative:0;-webkit-align-items:center;align-items:center;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-shrink:0;flex-shrink:0;gap:.25rem;-webkit-justify-content:flex-end;justify-content:flex-end;min-height:.85rem;min-width:2.9rem}.gs-hint-text{color:#2980b9;font-size:.55rem;white-space:nowrap}.gs-dots{display:-webkit-flex;display:-ms-flexbox;display:flex;gap:.15rem}.gs-dot{-webkit-animation:gs-bounce 1s ease-in-out infinite;animation:gs-bounce 1s ease-in-out infinite;background:#2980b9;border-radius:50%;height:.3rem;width:.3rem}.gs-dot:nth-child(2){-webkit-animation-delay:.15s;animation-delay:.15s}.gs-dot:nth-child(3){-webkit-animation-delay:.3s;animation-delay:.3s}@-webkit-keyframes gs-pop{0%{opacity:0;-webkit-transform:translateY(.2rem) scale(.9);transform:translateY(.2rem) scale(.9)}100%{opacity:1;-webkit-transform:translateY(0) scale(1);transform:translateY(0) scale(1)}}@keyframes gs-pop{0%{opacity:0;-webkit-transform:translateY(.2rem) scale(.9);transform:translateY(.2rem) scale(.9)}100%{opacity:1;-webkit-transform:translateY(0) scale(1);transform:translateY(0) scale(1)}}@-webkit-keyframes gs-blink{0%,100%{opacity:1}50%{opacity:.45}}@keyframes gs-blink{0%,100%{opacity:1}50%{opacity:.45}}@-webkit-keyframes gs-bounce{0%,100%{opacity:.5;-webkit-transform:translateY(0);transform:translateY(0)}50%{opacity:1;-webkit-transform:translateY(-.2rem);transform:translateY(-.2rem)}}@keyframes gs-bounce{0%,100%{opacity:.5;-webkit-transform:translateY(0);transform:translateY(0)}50%{opacity:1;-webkit-transform:translateY(-.2rem);transform:translateY(-.2rem)}}.gs-clock{max-width:15.5rem;width:100%}.gs-board-area{-ms-flex-pack:center;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-justify-content:center;justify-content:center;position:relative;width:100%}.gs-tray{background:-webkit-gradient(linear,left top,left bottom,from(#f6e7c8),to(#eccf97));background:-webkit-linear-gradient(top,#f6e7c8,#eccf97);background:linear-gradient(180deg,#f6e7c8,#eccf97);border:.05rem solid #b9863f;border-radius:.35rem;-webkit-box-sizing:border-box;box-sizing:border-box;margin-top:.3rem;max-width:15.5rem;padding:.25rem .35rem;width:100%}.capture-row{-ms-flex-align:center;-webkit-align-items:center;align-items:center;display:-webkit-flex;display:-ms-flexbox;display:flex;min-height:.95rem}.capture-row + .capture-row{border-top:.025rem dashed #c79a5b;margin-top:.15rem;padding-top:.15rem}.capture-label{-ms-flex-negative:0;-webkit-flex-shrink:0;flex-shrink:0;font-size:.55rem;font-weight:700;width:2.8rem}.capture-label.red{color:#b3271c}.capture-label.black{color:#1f2933}.capture-pieces{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex:1;-ms-flex:1;flex:1;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:.15rem}.capture-empty{color:#b08954;font-size:.7rem}.capture-piece{font-family:KaiTi,STKaiti,serif;font-size:.65rem;font-weight:700}.capture-piece.red{color:#b3271c}.capture-piece.black{color:#1f2933}.gs-btn-row{display:-webkit-flex;display:-ms-flexbox;display:flex;gap:.3rem;margin-top:.3rem;max-width:15.5rem;padding-bottom:.05rem;width:100%}.gs-btn{background:-webkit-gradient(linear,left top,left bottom,from(#fbf0d8),to(#ecd6a6));background:-webkit-linear-gradient(top,#fbf0d8,#ecd6a6);background:linear-gradient(180deg,#fbf0d8,#ecd6a6);border:.05rem solid #b9863f;border-radius:.35rem;color:#4a2f15;-webkit-flex:1 1 0;-ms-flex:1 1 0rem;flex:1 1 0;font-size:.65rem;height:1.6rem;line-height:1.5rem;margin:0;min-width:0}.gs-btn.primary{background:-webkit-gradient(linear,left top,left bottom,from(#d9544a),to(#c0392b));background:-webkit-linear-gradient(top,#d9544a,#c0392b);background:linear-gradient(180deg,#d9544a,#c0392b);border-color:#a02b22;color:#fff}@media (min-width:25.6rem){.gs-page{-ms-flex-line-pack:stretch;-ms-flex-pack:center;-webkit-align-content:stretch;align-content:stretch;-webkit-column-gap:.7rem;-moz-column-gap:.7rem;column-gap:.7rem;display:grid;grid-template-areas:"header  board topbar" "status  board btns" "clock   board ." "tray    board .";grid-template-columns:minmax(6.5rem,10.5rem) auto minmax(6.5rem,10.5rem);grid-template-rows:auto auto auto minmax(0,1fr);-webkit-justify-content:center;justify-content:center;max-width:none;min-height:100vh;min-height:100dvh;padding:.6rem .8rem;row-gap:.45rem;width:100%}.gs-top-bar{-ms-flex-align:stretch;-webkit-align-items:stretch;align-items:stretch;align-self:start;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:.3rem;grid-area:topbar;max-width:none;padding-left:0}.gs-page-title{-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto;font-size:.85rem;overflow:visible;text-align:center;text-overflow:clip;white-space:normal}.gs-voice-btn{font-size:.55rem;height:1.3rem;line-height:1.2rem;padding:0 .4rem;width:100%}.gs-header{-ms-flex-align:stretch;-webkit-align-items:stretch;align-items:stretch;align-self:start;grid-area:header;max-width:none}.gs-status-bar{align-self:start;grid-area:status;margin:0;max-width:none;min-height:1.6rem;padding:.2rem .4rem}.gs-status-text{font-size:.65rem}.gs-hint{min-width:3rem}.gs-hint-text{font-size:.5rem}.gs-clock{align-self:start;grid-area:clock;max-width:none}.gs-board-area{-ms-flex-align:center;-webkit-align-items:center;align-items:center;grid-area:board}.gs-tray{align-self:end;grid-area:tray;margin-top:0;max-width:none;padding:.3rem .35rem}.capture-label{font-size:.55rem;width:2.75rem}.capture-piece{font-size:.65rem}.capture-empty{font-size:.55rem}.gs-btn-row{align-self:end;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:.35rem;grid-area:btns;margin-top:0;max-width:none}.gs-btn{-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto;font-size:.65rem;height:2.4rem;line-height:2.3rem;width:100%}}.nav-back{-ms-flex-align:center;-ms-flex-pack:center;-webkit-align-items:center;align-items:center;background:-webkit-gradient(linear,left top,left bottom,from(#fbf0d8),to(#ecd6a6));background:-webkit-linear-gradient(top,#fbf0d8,#ecd6a6);background:linear-gradient(180deg,#fbf0d8,#ecd6a6);border:.05rem solid #b9863f;border-radius:.65rem;-webkit-box-shadow:0 .075rem .25rem rgba(0,0,0,.14);box-shadow:0 .075rem .25rem rgba(0,0,0,.14);display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-justify-content:center;justify-content:center;left:.4rem;line-height:1;padding:.25rem .45rem;position:fixed;top:calc(.4rem + env(safe-area-inset-top));z-index:50}.nav-back-text{color:#4a2f15;font-size:.6rem;line-height:1}.result-overlay{-ms-flex-align:center;-ms-flex-pack:center;-webkit-align-items:center;align-items:center;background:rgba(30,18,8,.5);bottom:0;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-justify-content:center;justify-content:center;left:0;pointer-events:none;position:fixed;right:0;top:0;z-index:20}.result-card{-ms-flex-align:center;-webkit-align-items:center;align-items:center;-webkit-animation:result-pop .35s ease-out;animation:result-pop .35s ease-out;background:-webkit-gradient(linear,left top,left bottom,from(#fdf6e3),to(#f3e2c7));background:-webkit-linear-gradient(top,#fdf6e3,#f3e2c7);background:linear-gradient(180deg,#fdf6e3,#f3e2c7);border:.075rem solid #b9863f;border-radius:.5rem;-webkit-box-shadow:0 .35rem .9rem rgba(0,0,0,.45);box-shadow:0 .35rem .9rem rgba(0,0,0,.45);-webkit-box-sizing:border-box;box-sizing:border-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;max-width:11.5rem;padding:.55rem .4rem;pointer-events:auto;width:92%}@-webkit-keyframes result-pop{0%{opacity:0;-webkit-transform:scale(.82);transform:scale(.82)}100%{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@keyframes result-pop{0%{opacity:0;-webkit-transform:scale(.82);transform:scale(.82)}100%{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}.result-title{font-family:KaiTi,STKaiti,SimSun,serif;font-size:1.15rem;font-weight:700;letter-spacing:.075rem}.result-title.win{color:#c0392b;text-shadow:.05rem .05rem 0 rgba(255,248,235,.8)}.result-title.lose{color:#1f2933;text-shadow:.05rem .05rem 0 rgba(255,248,235,.8)}.result-title.draw{color:#8a6d2f;text-shadow:.05rem .05rem 0 rgba(255,248,235,.8)}.result-sub{color:#7a5230;font-size:.525rem;margin-top:.2rem;padding:0 .1rem;text-align:center}.result-stats{-ms-flex-align:stretch;-ms-flex-pack:center;-webkit-align-items:stretch;align-items:stretch;background:rgba(185,134,63,.12);border-radius:.3rem;-webkit-box-sizing:border-box;box-sizing:border-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-justify-content:center;justify-content:center;margin-top:.4rem;padding:.25rem .1rem;width:100%}.result-stat{-ms-flex-align:center;-ms-flex-pack:center;-webkit-align-items:center;align-items:center;-webkit-box-sizing:border-box;box-sizing:border-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex:0 0 33.333%;-ms-flex:0 0 33.333%;flex:0 0 33.333%;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-justify-content:center;justify-content:center;min-width:0;padding:.15rem .05rem}.result-stat + .result-stat{border-left:.025rem dashed #c79a5b}.result-stat:nth-child(3n+1){border-left:none}.result-stat-value{color:#4a2f15;font-size:.75rem;font-weight:700}.result-stat-label{color:#9a7b4f;font-size:.425rem;margin-top:.05rem}.result-actions{-ms-flex-align:center;-ms-flex-pack:center;-webkit-align-items:center;align-items:center;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:.25rem;-webkit-justify-content:center;justify-content:center;margin-top:.45rem;width:100%}.result-actions .gs-btn{-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto;font-size:.6rem;height:1.45rem;line-height:1.35rem;padding:0 .5rem;width:auto}.result-actions .gs-btn + .gs-btn{margin-left:0}.fx-overlay{-ms-flex-align:center;-ms-flex-pack:center;-webkit-align-items:center;align-items:center;-webkit-animation:fx-fade 1.6s ease-out forwards;animation:fx-fade 1.6s ease-out forwards;background:-webkit-radial-gradient(center,circle,rgba(255,240,200,.18),rgba(0,0,0,.45) 70%);background:radial-gradient(circle at center,rgba(255,240,200,.18),rgba(0,0,0,.45) 70%);bottom:0;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-justify-content:center;justify-content:center;left:0;pointer-events:none;position:fixed;right:0;top:0;z-index:100}.fx-text{-webkit-animation:fx-text 1.6s cubic-bezier(.2,.8,.2,1) forwards;animation:fx-text 1.6s cubic-bezier(.2,.8,.2,1) forwards;color:currentColor;font-family:KaiTi,STKaiti,SimSun,serif;font-size:3.25rem;font-weight:800;letter-spacing:.15rem;position:relative;text-shadow:0 .15rem .6rem rgba(0,0,0,.55);z-index:2}.fx-ring{-webkit-animation:fx-ring 1.6s ease-out forwards;animation:fx-ring 1.6s ease-out forwards;border:.2rem solid;border-radius:50%;height:6rem;opacity:.8;position:absolute;width:6rem}.fx-ring.delay{-webkit-animation-delay:.12s;animation-delay:.12s}.fx-overlay.win{color:#ffd86b}.fx-overlay.lose{color:#dfe6ee}.fx-overlay.draw{color:#e8c87a}.fx-overlay.check{color:#ff5a4d}.fx-overlay.mate{color:#ffd86b}.fx-overlay.capture{color:#ffb347}.fx-overlay.tactic{color:#ffd86b}@-webkit-keyframes fx-fade{0%{opacity:0}12%{opacity:1}68%{opacity:1}100%{opacity:0}}@keyframes fx-fade{0%{opacity:0}12%{opacity:1}68%{opacity:1}100%{opacity:0}}@-webkit-keyframes fx-text{0%{opacity:0;-webkit-transform:scale(.3) rotate(-8deg);transform:scale(.3) rotate(-8deg)}18%{opacity:1;-webkit-transform:scale(1.12) rotate(0deg);transform:scale(1.12) rotate(0deg)}30%{-webkit-transform:scale(1);transform:scale(1)}80%{opacity:1;-webkit-transform:scale(1);transform:scale(1)}100%{opacity:0;-webkit-transform:scale(1.2);transform:scale(1.2)}}@keyframes fx-text{0%{opacity:0;-webkit-transform:scale(.3) rotate(-8deg);transform:scale(.3) rotate(-8deg)}18%{opacity:1;-webkit-transform:scale(1.12) rotate(0deg);transform:scale(1.12) rotate(0deg)}30%{-webkit-transform:scale(1);transform:scale(1)}80%{opacity:1;-webkit-transform:scale(1);transform:scale(1)}100%{opacity:0;-webkit-transform:scale(1.2);transform:scale(1.2)}}@-webkit-keyframes fx-ring{0%{opacity:.9;-webkit-transform:scale(.2);transform:scale(.2)}100%{opacity:0;-webkit-transform:scale(3.4);transform:scale(3.4)}}@keyframes fx-ring{0%{opacity:.9;-webkit-transform:scale(.2);transform:scale(.2)}100%{opacity:0;-webkit-transform:scale(3.4);transform:scale(3.4)}}