:root{--bp-font-latin:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans";--bp-font-cjk:"PingFang TC", "PingFang SC", "Hiragino Sans", "Microsoft JhengHei", "Microsoft YaHei", "Noto Sans CJK TC", "Noto Sans CJK SC", "Noto Sans CJK JP";--bp-bg:var(--tg-theme-bg-color,#fff);--bp-text:var(--tg-theme-text-color,#000);--bp-hint:var(--tg-theme-hint-color,#707579);--bp-button:var(--tg-theme-button-color,#3390ec);--bp-button-text:var(--tg-theme-button-text-color,#fff);--bp-error:var(--tg-theme-destructive-text-color,#e53935);--bp-secondary-bg:var(--tg-theme-secondary-bg-color,#f1f1f4);--bp-correct:#2e9e4f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--bp-bg:var(--tg-theme-bg-color,#17212b);--bp-text:var(--tg-theme-text-color,#f5f5f5);--bp-hint:var(--tg-theme-hint-color,#708499);--bp-button:var(--tg-theme-button-color,#5288c1);--bp-error:var(--tg-theme-destructive-text-color,#ec3942);--bp-secondary-bg:var(--tg-theme-secondary-bg-color,#232e3c);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root:lang(zh),:root:lang(ja){--bp-font:var(--bp-font-cjk), var(--bp-font-latin), sans-serif}*,:before,:after{box-sizing:border-box}body{min-height:100vh;font-family:var(--bp-font,var(--bp-font-latin), var(--bp-font-cjk), sans-serif);background:var(--bp-bg);color:var(--bp-text);-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;overscroll-behavior:none;line-break:strict;overflow-wrap:anywhere;margin:0;font-size:16px;line-height:1.4}#app{padding:24px 16px calc(24px + env(safe-area-inset-bottom));flex-direction:column;gap:16px;display:flex}h1{margin:0;font-size:28px}.hint{color:var(--bp-hint);margin:0}.error{color:var(--bp-error)}button{font:inherit;background:var(--bp-button);color:var(--bp-button-text);touch-action:manipulation;border:0;border-radius:12px;padding:14px 16px}button:disabled{opacity:.6}h2{margin:0;font-size:20px}button.secondary{color:var(--bp-button);box-shadow:inset 0 0 0 1px var(--bp-button);background:0 0}button.link{color:var(--bp-button);text-align:start;background:0 0;padding:8px 0}.card{background:var(--bp-secondary-bg);border-radius:16px;flex-direction:column;gap:8px;padding:16px;display:flex}.card.primary{box-shadow:inset 0 0 0 2px var(--bp-button)}.card.frame{box-shadow:inset 0 0 0 2px #d4a017,0 0 0 2px #d4a01759}button.danger{color:var(--bp-error);box-shadow:inset 0 0 0 1px var(--bp-error);background:0 0}.actions{gap:8px;display:flex}.actions button{flex:1}.label{margin:0;font-weight:600}.banner{background:var(--bp-secondary-bg);border-radius:12px;margin:0;padding:12px}.countdown{text-align:center;margin:0;font-size:32px;font-weight:700}.round-bar{font-variant-numeric:tabular-nums;justify-content:space-between;align-items:center;gap:12px;display:flex}.rival{color:var(--bp-hint);align-items:center;gap:8px;display:flex}.game{flex-direction:column;gap:12px;display:flex}.game-goal{text-align:center;margin:0;font-size:22px;font-weight:700}.grid{-webkit-user-select:none;user-select:none;gap:6px;display:grid}.cell{aspect-ratio:1;font-variant-numeric:tabular-nums;background:var(--bp-secondary-bg);color:var(--bp-text);padding:0;font-size:22px}.cell.found{opacity:.35}.cell.lit{background:var(--bp-button)}.cell:disabled{opacity:1}.options{flex-direction:column;gap:8px;display:flex}.option{text-align:start;background:var(--bp-secondary-bg);color:var(--bp-text)}.option:disabled{opacity:1}.option.picked{box-shadow:inset 0 0 0 2px var(--bp-button)}.option.correct{background:var(--bp-correct);color:#fff}.option.wrong{background:var(--bp-error);color:#fff}form,fieldset{border:0;flex-direction:column;gap:8px;margin:0;padding:0;display:flex}textarea,select{font:inherit;border:1px solid var(--bp-hint);background:var(--bp-bg);color:var(--bp-text);border-radius:12px;padding:10px}textarea{resize:vertical;min-height:96px}.nav{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.card.offer .actions{flex-direction:column}.skill{flex-direction:column;gap:4px;display:flex}.skill-head{justify-content:space-between;gap:8px;display:flex}.bar{background:var(--bp-bg);border-radius:5px;height:10px;overflow:hidden}.bar-fill{background:var(--bp-button);height:100%}label.toggle{align-items:center;gap:10px;display:flex}main label:not(.toggle){flex-direction:column;gap:6px;display:flex}main form{flex-direction:column;gap:8px;display:flex}
