:root{--paper:#f6f1e7;--card:#fffdf8;--ink:#1e1d1b;--ink-2:#47443d;--line:#2b2a27;--line-thin:#b8af9f;--mine:#1d4aa8;--sel:#ffd35c;--peer:#ece3d0;--same:#f5d98c;--bad:#b8322a;--bad-bg:#fbe1dc;--good:#23704a;--good-bg:#dcf0e2;--hint:#2a62c9;--hint-bg:#dde8fa;--accent:#e3961a;--btn:#fff;--btn-edge:#d9d0bf;--btn-press:#efe6d4;--dark:#2b2a27;--radius:14px;--font:system-ui, -apple-system, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans CJK SC", "Source Han Sans SC", sans-serif;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-size:20px}:root[data-font=xlarge]{font-size:24px}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{background:var(--paper);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{font-family:var(--font);color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums;margin:0;font-size:1rem;line-height:1.5}button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none}button:disabled{cursor:default}a{color:inherit}h1,h2,h3,p{margin:0}:focus-visible{outline:3px solid var(--hint);outline-offset:2px}.btn{border:2px solid var(--btn-edge);border-radius:var(--radius);background:var(--btn);min-width:3rem;min-height:3rem;box-shadow:0 2px 0 var(--btn-edge);padding:.5rem 1rem;font-size:1rem;font-weight:600;line-height:1.2;transition:transform 80ms,box-shadow 80ms,background .12s}.btn:active:not(:disabled){box-shadow:0 0 0 var(--btn-edge);background:var(--btn-press);transform:translateY(2px)}.btn.primary{background:var(--dark);border-color:var(--dark);color:#fff;box-shadow:0 2px #000}.btn.primary:active:not(:disabled){background:#000}.btn:disabled{opacity:.45;box-shadow:none}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}
