*{box-sizing:border-box}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0b1122;--panel:#141c36d9;--border:#ffffff1f;--accent:#7fe3ff;--text:#e7edf8;--muted:#9aa8c4}html,body{margin:0;padding:0}body{min-height:100vh;color:var(--text);background:radial-gradient(1200px 700px at 50% -10%, #1b2b52 0%, transparent 60%), radial-gradient(900px 600px at 85% 110%, #232b56 0%, transparent 55%), var(--bg);-webkit-user-select:none;user-select:none;justify-content:center;font-family:PingFang SC,Microsoft YaHei,Segoe UI,sans-serif;display:flex}#app{flex-direction:column;align-items:center;gap:16px;width:min(1020px,100%);padding:20px 16px 28px;display:flex}.columns{justify-content:center;align-items:flex-start;gap:18px;width:100%;display:flex}.title-row{justify-content:space-between;align-self:stretch;align-items:center;gap:12px;display:flex}.lang-select{background:var(--panel);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:8px;flex:none;padding:5px 8px;font-family:inherit;font-size:12.5px;transition:border-color .15s}.lang-select:hover{border-color:var(--accent)}.title-row h1{align-items:center;gap:10px;margin:0;font-size:26px;display:flex}.title-row .sub{color:var(--muted);font-size:13px;font-weight:400}.title-row .gem{filter:drop-shadow(0 0 8px #7fe3ff);display:flex}.hud{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.stat{background:var(--panel);border:1px solid var(--border);text-align:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:12px;min-width:74px;padding:8px 12px}.stat .label{color:var(--muted);font-size:11px;display:block}.stat b{font-size:18px}.controls{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.btn{border:1px solid var(--border);background:var(--panel);color:var(--text);cursor:pointer;border-radius:10px;padding:7px 14px;font-family:inherit;font-size:13px;transition:transform 80ms,border-color .15s,background .15s}.btn:hover{border-color:var(--accent);transform:translateY(-1px)}.btn:active{transform:translateY(1px)}.btn:disabled,.btn:disabled:hover{border-color:var(--border);color:var(--muted);opacity:.55;cursor:not-allowed;background:#ffffff0a;transform:none}.btn.primary{background:linear-gradient(135deg,#2b7bff,#4aa8ff);border-color:#0000}.board-wrap{flex:auto;justify-content:center;align-items:flex-start;min-width:0;display:flex;position:relative}#board{cursor:pointer;touch-action:manipulation;border-radius:18px;flex:none;max-width:100%;height:auto;box-shadow:0 18px 50px #00000073,0 0 0 1px #ffffff0f}.toast{color:#bdefff;pointer-events:none;white-space:nowrap;background:#0a0e1ee0;border:1px solid #7fe3ff66;border-radius:999px;padding:8px 18px;font-size:13px;position:absolute;top:14px;left:50%;transform:translate(-50%)}.overlay{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#060a18b8;border-radius:18px;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}#tutorial{z-index:20}.panel{background:var(--panel);border:1px solid var(--border);text-align:center;border-radius:16px;padding:26px 30px;box-shadow:0 20px 60px #00000080}.panel h2{margin:0 0 10px;font-size:24px}.panel p{color:var(--muted);margin:0 0 18px}.panel-actions{justify-content:center;gap:10px;display:flex}footer p{color:var(--muted);text-align:center;margin:4px 0 0;font-size:12.5px;line-height:1.7}footer b{color:var(--text)}.sidebar{flex-direction:column;flex:0 0 256px;align-self:stretch;gap:12px;min-width:0;display:flex}.sidebar .hud{background:var(--panel);border:1px solid var(--border);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:14px;flex-direction:column;gap:0;padding:6px 12px}.sidebar .stat{text-align:left;background:0 0;border:none;border-bottom:1px dashed #ffffff14;border-radius:0;justify-content:space-between;align-items:center;gap:10px;min-width:0;padding:6px 0;display:flex}.sidebar .stat:last-child{border-bottom:none}.sidebar .stat.duo{justify-content:space-between;gap:6px;padding:7px 0 8px}.stat.duo .group{flex-direction:column;align-items:center;gap:2px;display:flex}.stat.duo .group .label{letter-spacing:0;font-size:10.5px}.stat.duo .group b{font-size:15px}.stat.duo .group.score b{color:#fff;text-shadow:0 0 12px #7fe3ff8c;font-size:20px}.sidebar .stat .label{letter-spacing:1px;font-size:11.5px;display:inline}.sidebar .stat b{font-size:15px}.v-flower{color:#ff9ecb}.v-star{color:#ffd23f}.v-pearl{color:#c8b6ff}.sidebar .stat.quad{justify-content:space-between;gap:2px;padding:6px 0 7px}.stat.quad .group{flex-direction:column;align-items:center;gap:2px;display:flex}.stat.quad .group .label{letter-spacing:0;font-size:10.5px}.stat.quad .group b{font-size:13px}.sidebar .controls{gap:20px 6px}.sidebar .btn{flex:30%;justify-content:center;align-items:center;gap:4px;padding:7px 8px;font-size:12.5px;display:flex}.sidebar .btn.slim{flex-direction:column;flex:22%;gap:1px;padding:5px 3px;font-size:10.5px;line-height:1.25}.sidebar .btn .ico{font-size:13px}.sidebar .btn.primary{flex:46%}.sidebar .btn.active{border-color:var(--accent);box-shadow:0 0 10px #7fe3ff59}.sidebar .about{background:var(--panel);border:1px solid var(--border);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:14px;padding:12px 14px}.sidebar .about h2{color:var(--text);margin:0 0 6px;font-size:14px}.sidebar .about p{color:var(--muted);margin:0;font-size:12px;line-height:1.75}.copyright{color:var(--muted);text-align:center;opacity:.8;margin-top:auto;font-size:11.5px}.sidebar .dir-row{justify-content:space-between;align-items:center;width:100%;margin-top:4px;display:flex}.sidebar .btn.dir{aspect-ratio:1;border:1px solid var(--border);color:var(--text);background:#141c36d9;border-radius:50%;flex:0 0 40%;justify-content:center;align-items:center;margin:0;padding:0;transition:filter .15s,background .15s,border-color .15s,box-shadow .15s;display:flex}.sidebar .btn.dir:hover{filter:brightness(1.25)}.sidebar .btn.dir:active{filter:brightness(.9)}.sidebar .btn.dir.active{border-color:var(--accent);box-shadow:0 0 14px #7fe3ff80}.sidebar .btn.dir .ico{color:var(--accent);text-shadow:0 0 12px #7fe3ffa6;font-size:36px;line-height:1}.rules p{color:var(--muted);margin:0;font-size:12.5px;line-height:1.75}.rules .undo-note{color:#6f7d99;font-size:11.5px}.rules{background:var(--panel);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.rule{align-items:center;gap:10px;display:flex}.rule .rule-img{flex:none;width:64px;height:64px}.rules b{color:var(--text)}.rules .keys{color:var(--muted);border-top:1px solid var(--border);padding-top:8px}@media (width<=760px){.columns{flex-direction:column;align-items:center}.sidebar{flex:none;width:100%;max-width:520px}}kbd{background:#ffffff14;border:1px solid #ffffff2e;border-radius:5px;padding:1px 6px;font-size:11px}.hidden{display:none!important}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.noscript-tip{background:var(--panel);border:1px solid var(--border);border-radius:12px;max-width:560px;margin:40px auto;padding:18px 22px;font-size:14px;line-height:1.7}.history-panel{flex-direction:column;width:min(430px,92vw);max-height:74vh;display:flex}.tutorial-panel{flex-direction:column;width:min(600px,94vw);max-height:82vh;padding:22px 24px 18px;display:flex}.tutorial-panel .rules{background:0 0;border:none;gap:12px;margin-bottom:14px;padding:2px 8px 2px 2px;overflow-y:auto}.tutorial-panel .rule p{text-align:left;font-size:13px}.history-list{flex-direction:column;gap:6px;max-height:48vh;margin:10px 0 16px;padding-right:4px;display:flex;overflow-y:auto}.history-item{border:1px solid var(--border);text-align:left;background:#ffffff0d;border-radius:10px;padding:8px 12px;font-size:12.5px;line-height:1.65}.history-item .hi-main{justify-content:space-between;font-weight:600;display:flex}.history-item .hi-meta{color:var(--muted);font-size:11.5px}.history-item .win{color:#7fe3ff}.history-item .lose{color:#ff7a7a}.history-empty{color:var(--muted);text-align:center;padding:20px 0;font-size:13px}
