.shell[data-v-fb9dd006]{min-height:100vh;display:flex;flex-direction:column}.topbar[data-v-fb9dd006]{display:flex;align-items:center;justify-content:space-between;padding:10px 26px;background:repeating-linear-gradient(93deg,rgba(255,235,200,.04) 0 2px,transparent 2px 90px),linear-gradient(165deg,#3a2c1a,#2b1f10);border-bottom:3px solid var(--wood-deep);box-shadow:0 3px 12px #2b1f1059;position:sticky;top:0;z-index:50}.logo[data-v-fb9dd006]{display:flex;align-items:baseline;gap:9px;text-decoration:none}.logo-badge[data-v-fb9dd006]{font-family:STKaiti,KaiTi,serif;background:var(--seal);color:#fff;width:34px;height:34px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;font-size:20px;align-self:center;transform:rotate(-4deg);box-shadow:0 2px 6px #0006}.logo-text[data-v-fb9dd006]{font-size:21px;font-weight:700;color:#f5e9cf;letter-spacing:2px;font-family:STKaiti,KaiTi,serif}.logo-sub[data-v-fb9dd006]{font-size:13px;color:#c9b18a}.nav[data-v-fb9dd006]{display:flex;gap:6px}.nav a[data-v-fb9dd006]{margin-left:6px;text-decoration:none;color:#d9c6a3;font-size:15px;padding:6px 16px;border-radius:99px;transition:background .15s,color .15s}.nav a[data-v-fb9dd006]:hover{background:#f5e9cf24;color:#fff}.nav a.router-link-active[data-v-fb9dd006]{background:radial-gradient(circle at 32% 28%,#fffdf6,#e2dbc8 75%);color:var(--seal);font-weight:700;box-shadow:0 3px 8px #00000059}.main[data-v-fb9dd006]{flex:1}.foot[data-v-fb9dd006]{text-align:center;color:#b9b1a0;font-size:12px;padding:22px 0 26px}.cover[data-v-3fdaa4be]{position:relative;min-height:100vh;overflow:hidden;cursor:crosshair;background:repeating-linear-gradient(93deg,rgba(80,45,12,.05) 0 2px,transparent 2px 90px),linear-gradient(160deg,#e8c584,#ddb269 45%,#d3a355)}.board-lines[data-v-3fdaa4be]{position:absolute;top:0;right:0;bottom:0;left:0;background-image:repeating-linear-gradient(0deg,rgba(60,34,8,.34) 0 1.5px,transparent 1.5px 6.25%),repeating-linear-gradient(90deg,rgba(60,34,8,.34) 0 1.5px,transparent 1.5px 6.25%);background-size:87.5% 87.5%;background-position:6.25% 6.25%;background-repeat:no-repeat}.board-vignette[data-v-3fdaa4be]{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at center,transparent 45%,rgba(70,40,10,.28) 100%);pointer-events:none}.free-stone[data-v-3fdaa4be]{position:absolute;width:clamp(14px,3.2vmin,30px);height:clamp(14px,3.2vmin,30px);border-radius:50%;transform:translate(-50%,-50%);animation:stone-drop-3fdaa4be .28s cubic-bezier(.2,1.6,.4,1);pointer-events:none}.free-stone.black[data-v-3fdaa4be]{background:radial-gradient(circle at 32% 28%,#6a6a6a,#1c1c1c 65%);box-shadow:0 3px 6px #0006}.free-stone.white[data-v-3fdaa4be]{background:radial-gradient(circle at 32% 28%,#fff,#d9d4c8 70%);box-shadow:0 3px 6px #0000004d}@keyframes stone-drop-3fdaa4be{0%{transform:translate(-50%,-160%) scale(1.15);opacity:0}70%{transform:translate(-50%,-46%) scale(.96);opacity:1}to{transform:translate(-50%,-50%) scale(1)}}.mute-btn[data-v-3fdaa4be]{position:absolute;top:16px;right:18px;z-index:10;background:#fffbf0d9;border:1.5px solid #c9a55c;border-radius:50%;width:44px;height:44px;font-size:19px}.cover-center[data-v-3fdaa4be]{position:relative;z-index:5;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(12px,3vmin,26px);padding:30px 16px;text-align:center}.title-stones[data-v-3fdaa4be]{display:flex;gap:clamp(18px,5vmin,52px)}.title-stone[data-v-3fdaa4be]{width:clamp(96px,19vmin,168px);height:clamp(96px,19vmin,168px);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .18s}.title-stone[data-v-3fdaa4be]:hover{transform:translateY(-7px) rotate(-3deg) scale(1.04)}.title-stone[data-v-3fdaa4be]:active{transform:scale(.94)}.title-stone.black[data-v-3fdaa4be]{background:radial-gradient(circle at 30% 26%,#5f5f5f,#161616 68%);box-shadow:0 12px 26px #00000073,inset 0 -6px 14px #ffffff0f}.title-stone.white[data-v-3fdaa4be]{background:radial-gradient(circle at 30% 26%,#fffdf6,#ddd6c4 72%);box-shadow:0 12px 26px #5a3c1466}.title-stone span[data-v-3fdaa4be]{font-family:STKaiti,KaiTi,serif;font-size:clamp(52px,10.5vmin,92px);font-weight:900;-webkit-user-select:none;user-select:none}.title-stone.black span[data-v-3fdaa4be]{color:#fdf8ec}.title-stone.white span[data-v-3fdaa4be]{color:#26221a}.cover-sub[data-v-3fdaa4be]{margin:0;font-size:clamp(14px,2.4vmin,19px);color:#5b3f14;letter-spacing:2px}.entry-stones[data-v-3fdaa4be]{display:flex;gap:clamp(16px,4vmin,36px);flex-wrap:wrap;justify-content:center}.entry-stone[data-v-3fdaa4be]{display:flex;flex-direction:column;align-items:center;gap:3px;width:clamp(150px,24vmin,200px);padding:18px 14px 15px;border-radius:50%/46%;border:none;transition:transform .18s,box-shadow .18s}.entry-stone[data-v-3fdaa4be]:hover{transform:translateY(-6px) scale(1.05)}.entry-stone[data-v-3fdaa4be]:active{transform:scale(.95)}.entry-stone.black[data-v-3fdaa4be]{background:radial-gradient(circle at 32% 24%,#565656,#17171a 70%);color:#f7f2e4;box-shadow:0 10px 24px #00000073}.entry-stone.white[data-v-3fdaa4be]{background:radial-gradient(circle at 32% 24%,#fffef8,#e2dbc8 75%);color:#2b2620;box-shadow:0 10px 24px #5a3c1466}.entry-stone .es-icon[data-v-3fdaa4be]{font-size:clamp(26px,4.6vmin,38px);font-style:normal}.entry-stone b[data-v-3fdaa4be]{font-size:clamp(19px,3.4vmin,25px);letter-spacing:3px}.entry-stone span[data-v-3fdaa4be]{font-size:clamp(10.5px,1.7vmin,12.5px);opacity:.75}.howto[data-v-3fdaa4be]{background:#fffbf0e6;border:1.5px solid #c9a55c;color:#5b3f14;border-radius:99px;padding:8px 22px;font-size:14px}.howto[data-v-3fdaa4be]:hover{background:#fff}.deco[data-v-3fdaa4be]{position:absolute;border-radius:50%;pointer-events:none;z-index:1;opacity:.85}.ds1[data-v-3fdaa4be]{width:46px;height:46px;left:8%;top:16%;background:radial-gradient(circle at 32% 28%,#fff,#ddd5c2 70%);box-shadow:0 6px 14px #50320f59;animation:floaty-3fdaa4be 7s ease-in-out infinite}.ds2[data-v-3fdaa4be]{width:30px;height:30px;right:11%;top:24%;background:radial-gradient(circle at 32% 28%,#5f5f5f,#191919 70%);box-shadow:0 5px 12px #0006;animation:floaty-3fdaa4be 9s 1s ease-in-out infinite}.ds3[data-v-3fdaa4be]{width:38px;height:38px;right:22%;bottom:12%;background:radial-gradient(circle at 32% 28%,#fff,#d8d0bd 70%);box-shadow:0 5px 12px #50320f59;animation:floaty-3fdaa4be 8s .5s ease-in-out infinite}@keyframes floaty-3fdaa4be{0%,to{transform:translateY(0)}50%{transform:translateY(-14px)}}.drop-in[data-v-3fdaa4be]{animation:drop-in-3fdaa4be .7s cubic-bezier(.2,1.4,.35,1) backwards}@keyframes drop-in-3fdaa4be{0%{transform:translateY(-60vh) scale(1.3);opacity:0}75%{transform:translateY(6px) scale(.97);opacity:1}to{transform:translateY(0) scale(1)}}.fade-up[data-v-3fdaa4be]{animation:fade-up-3fdaa4be .6s ease backwards}@keyframes fade-up-3fdaa4be{0%{opacity:0;transform:translateY(22px)}}.d1[data-v-3fdaa4be]{animation-delay:.05s}.d2[data-v-3fdaa4be]{animation-delay:.2s}.d3[data-v-3fdaa4be]{animation-delay:.45s}.d4[data-v-3fdaa4be]{animation-delay:.6s}.d5[data-v-3fdaa4be]{animation-delay:.8s}.howto-modal[data-v-3fdaa4be]{max-width:520px;text-align:left}.howto-modal h2[data-v-3fdaa4be]{margin-top:0}.howto-modal ol[data-v-3fdaa4be]{padding-left:20px;line-height:2}.howto-modal .muted[data-v-3fdaa4be]{font-size:13px}.howto-modal .primary[data-v-3fdaa4be]{display:block;margin:16px auto 0}.home[data-v-c31fd843]{max-width:1120px;margin:0 auto;padding:28px 22px}.hero[data-v-c31fd843]{text-align:center;padding:22px 10px 8px}.hero-stones[data-v-c31fd843]{display:flex;gap:14px;justify-content:center;margin-bottom:10px}.hs[data-v-c31fd843]{width:54px;height:54px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-family:STKaiti,KaiTi,serif;font-size:30px;font-weight:900;animation:stone-pop-c31fd843 .5s cubic-bezier(.2,1.5,.4,1) backwards;transition:transform .15s}.hs[data-v-c31fd843]:hover{transform:translateY(-5px) rotate(-4deg)}.hs[data-v-c31fd843]:nth-child(2){animation-delay:.15s}.hs.black[data-v-c31fd843]{background:radial-gradient(circle at 32% 28%,#5f5f5f,#161616 68%);color:#fdf8ec;box-shadow:0 8px 18px #00000059}.hs.white[data-v-c31fd843]{background:radial-gradient(circle at 32% 28%,#fffdf6,#ddd6c4 72%);color:#26221a;box-shadow:0 8px 18px #5a3c144d}@keyframes stone-pop-c31fd843{0%{transform:scale(0);opacity:0}}h1[data-v-c31fd843]{font-size:34px;margin:0 0 10px;font-weight:800;letter-spacing:2px}.hero p[data-v-c31fd843]{color:var(--ink-light);max-width:640px;margin:0 auto 14px;line-height:1.7}.hero-badges[data-v-c31fd843]{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.hero-badges span[data-v-c31fd843]{background:#fff;border:1px solid #eee2c8;padding:6px 14px;border-radius:99px;font-size:13px;transition:transform .15s,border-color .15s;cursor:default}.hero-badges span[data-v-c31fd843]:hover{transform:translateY(-3px);border-color:#c9a55c}.config-banner[data-v-c31fd843]{margin:20px auto 24px;max-width:940px;background:#fff8e8;border:1px solid #f0dfae;color:#7a5b12;padding:12px 18px;border-radius:12px;font-size:13.5px;line-height:1.7}.config-banner code[data-v-c31fd843]{background:#f3ead2;padding:1px 6px;border-radius:5px}.dot[data-v-c31fd843]{display:inline-block;width:9px;height:9px;border-radius:99px;margin:0 5px 0 14px}.dot.ok[data-v-c31fd843]{background:var(--green)}.dot.bad[data-v-c31fd843]{background:var(--red)}.create-grid[data-v-c31fd843]{display:grid;grid-template-columns:1.4fr 1fr;gap:20px;align-items:start}.create-grid>.card[data-v-c31fd843]{animation:panel-in .35s ease both}.create-grid>.card[data-v-c31fd843]:last-child{animation-delay:.1s}@media(max-width:900px){.create-grid[data-v-c31fd843]{grid-template-columns:1fr}}h2[data-v-c31fd843]{margin:0 0 16px;font-size:19px;display:flex;align-items:center}.form-row[data-v-c31fd843]{margin-bottom:15px}.form-row label[data-v-c31fd843]{display:block;font-size:13.5px;color:var(--ink-light);margin-bottom:6px}.form-row.two[data-v-c31fd843]{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-row input[data-v-c31fd843],.form-row textarea[data-v-c31fd843],.form-row select[data-v-c31fd843]{width:100%}.samples[data-v-c31fd843]{margin-top:8px;display:flex;align-items:center;flex-wrap:wrap;gap:6px}.samples-label[data-v-c31fd843]{font-size:13px;color:var(--ink-light)}.small[data-v-c31fd843]{padding:5px 12px;font-size:13px}.small[data-v-c31fd843]:hover{transform:translateY(-2px)}.word-chips[data-v-c31fd843]{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 16px;max-height:210px;overflow:auto}.word-chip[data-v-c31fd843]{background:#fbf7ee;border:1px solid #ecdfc2;border-radius:9px;padding:5px 8px;display:flex;flex-direction:column;align-items:center;gap:2px;transition:transform .12s,border-color .12s;animation:chip-in-c31fd843 .25s ease backwards}.word-chip[data-v-c31fd843]:hover{transform:translateY(-3px);border-color:#c9a55c}@keyframes chip-in-c31fd843{0%{opacity:0;transform:scale(.8)}}.word-chip.over[data-v-c31fd843]{opacity:.35}.word-chip b[data-v-c31fd843]{font-size:16px}.pinyin-input[data-v-c31fd843]{border:none;border-bottom:1px dashed #d5c8a8;width:74px;text-align:center;font-size:12px;padding:1px 2px;border-radius:0;background:transparent}.word-miss[data-v-c31fd843]{color:var(--brand);font-size:13px;align-self:center}.err[data-v-c31fd843]{color:var(--red);font-size:13.5px}.back-cover[data-v-c31fd843]{display:block;text-align:center;margin-top:12px;color:var(--ink-light);font-size:13.5px;text-decoration:none}.back-cover[data-v-c31fd843]:hover{color:var(--brand)}.empty[data-v-c31fd843]{color:var(--ink-light);text-align:center;padding:26px 0}.session-item[data-v-c31fd843]{display:flex;justify-content:space-between;align-items:center;padding:12px 8px;border-bottom:1px dashed #eee;gap:8px;flex-wrap:wrap;border-radius:10px;transition:background .15s,transform .15s}.session-item[data-v-c31fd843]:hover{background:#fbf6ea;transform:translate(4px)}.s-main[data-v-c31fd843]{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.s-side[data-v-c31fd843]{display:flex;align-items:center;gap:8px}.s-code[data-v-c31fd843]{font-size:13px;color:var(--ink-light)}.del[data-v-c31fd843]:hover{color:var(--red)}.mini[data-v-d7aba46e]{position:relative;display:grid;grid-template-columns:repeat(var(--n),1fr);gap:3px;background:var(--paper-line);border:2.5px solid #b9a768;border-radius:8px;padding:3px;aspect-ratio:1}.mini-cell[data-v-d7aba46e]{position:relative;background:#fffdf7;border-radius:4px;display:flex;align-items:center;justify-content:center;overflow:hidden;font-size:11px;color:#c9bfa5}.mini-cell img[data-v-d7aba46e]{width:100%;height:100%;object-fit:contain}.mini-cell.clickable[data-v-d7aba46e]{cursor:pointer}.mini-cell.clickable[data-v-d7aba46e]:hover{filter:brightness(.94)}.st-correct[data-v-d7aba46e]{background:#e2f6e9}.st-messy[data-v-d7aba46e]{background:#fff3d2}.st-missing[data-v-d7aba46e]{background:#ffe8cf}.st-wrong[data-v-d7aba46e]{background:#fde1e1}.st-unknown[data-v-d7aba46e]{background:#efefef}.circled[data-v-d7aba46e]{box-shadow:inset 0 0 0 3px var(--red)}.lucky[data-v-d7aba46e]:after{content:"🍀";position:absolute;top:0;right:1px;font-size:9px;opacity:.85}.dot[data-v-d7aba46e]{position:absolute;left:2px;top:0;font-size:11px;font-weight:700}.d-correct[data-v-d7aba46e]{color:var(--green)}.d-messy[data-v-d7aba46e]{color:#d98e04}.d-missing[data-v-d7aba46e]{color:#e07b00}.d-wrong[data-v-d7aba46e]{color:var(--red)}.d-unknown[data-v-d7aba46e]{color:#888}.lines[data-v-d7aba46e]{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.gold-line[data-v-d7aba46e]{stroke:#f5b301;stroke-width:2.4;stroke-linecap:round;stroke-dasharray:200;stroke-dashoffset:200;animation:draw-line-d7aba46e .8s ease forwards;filter:drop-shadow(0 0 3px rgba(245,179,1,.7))}@keyframes draw-line-d7aba46e{to{stroke-dashoffset:0}}.sp[data-v-451182b7]{text-align:center}.sp-head[data-v-451182b7]{display:flex;align-items:baseline;gap:12px;justify-content:center;margin-bottom:12px}.sp-word[data-v-451182b7]{font-family:STKaiti,KaiTi,serif;font-size:34px;font-weight:800}.sp-py[data-v-451182b7]{font-size:15px}.sp-chars[data-v-451182b7]{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-bottom:14px}.sp-cell[data-v-451182b7]{display:flex;flex-direction:column;align-items:center;gap:5px}.sp-cell.active .sp-tian[data-v-451182b7]{border-color:var(--brand);box-shadow:0 0 0 3px #c0392b26}.sp-tian[data-v-451182b7]{position:relative;width:132px;height:132px;background:linear-gradient(to right,transparent calc(50% - .75px),rgba(214,69,69,.3) calc(50% - .75px),rgba(214,69,69,.3) calc(50% + .75px),transparent calc(50% + .75px)),linear-gradient(to bottom,transparent calc(50% - .75px),rgba(214,69,69,.3) calc(50% - .75px),rgba(214,69,69,.3) calc(50% + .75px),transparent calc(50% + .75px)),#fffef9;border:2.5px solid #c9b98d;border-radius:8px;display:flex;align-items:center;justify-content:center}.sp-target[data-v-451182b7]{width:120px;height:120px;cursor:pointer}.sp-one[data-v-451182b7]{font-size:12px;padding:3px 10px}.sp-tools[data-v-451182b7]{display:flex;gap:10px;justify-content:center;align-items:center;flex-wrap:wrap;margin:6px 0}.sp-speed[data-v-451182b7]{font-size:13px;color:var(--ink-light);display:flex;align-items:center;gap:6px}.sp-speed select[data-v-451182b7]{padding:5px 8px;font-size:13px}.sp-tip[data-v-451182b7]{font-size:12.5px;margin-top:10px}.small[data-v-451182b7]{padding:5px 12px;font-size:13px}.muted[data-v-451182b7]{color:var(--ink-light)}.tc[data-v-728d83a8]{max-width:1180px;margin:0 auto;padding:20px 18px 40px;display:flex;flex-direction:column;gap:18px}.loading[data-v-728d83a8]{text-align:center;padding:80px 0;color:var(--ink-light)}.tc-head[data-v-728d83a8]{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}.h-left[data-v-728d83a8]{display:flex;gap:16px;align-items:center}.back[data-v-728d83a8]{color:var(--ink-light);text-decoration:none;font-size:14px}.h-name[data-v-728d83a8]{font-size:19px;font-weight:700}.h-code[data-v-728d83a8]{font-size:13.5px;color:var(--ink-light);margin-top:4px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.code-seal[data-v-728d83a8]{font-size:18px;letter-spacing:4px;padding:2px 10px 2px 14px;margin:0 4px;background:var(--seal);color:#fff;border-radius:8px;transform:rotate(-3deg);box-shadow:0 3px 8px #c0392b59;transition:transform .15s}.code-seal[data-v-728d83a8]:hover{transform:rotate(0) scale(1.06)}.steps[data-v-728d83a8]{display:flex;gap:16px;padding:9px 16px;border:1.5px dashed #d8c9a2;border-radius:12px;background:#fffaeb99}.step[data-v-728d83a8]{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;color:#a89468;padding:0;background:none}.step[data-v-728d83a8]:before{content:"";width:15px;height:15px;border-radius:50%;border:2px dashed #b9a768;background:transparent;transition:all .25s}.step.done[data-v-728d83a8]{color:var(--green)}.step.done[data-v-728d83a8]:before{border:none;background:radial-gradient(circle at 32% 28%,#fff,#ddd5c2 70%);box-shadow:0 2px 4px #00000040}.step.active[data-v-728d83a8]{color:var(--ink);font-weight:700}.step.active[data-v-728d83a8]:before{border:none;background:radial-gradient(circle at 32% 28%,#5f5f5f,#161616);box-shadow:0 2px 6px #0006;animation:stone-breathe-728d83a8 1.8s ease-in-out infinite}@keyframes stone-breathe-728d83a8{0%,to{transform:scale(1)}50%{transform:scale(1.18)}}.panel h2[data-v-728d83a8]{margin:0 0 10px}.dict-grid>.card[data-v-728d83a8],.panel[data-v-728d83a8],.done>.card[data-v-728d83a8]{animation:panel-in .35s ease both}.muted[data-v-728d83a8]{color:var(--ink-light);font-size:13.5px;line-height:1.7}.row-actions[data-v-728d83a8]{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap;align-items:center}.row-actions.end[data-v-728d83a8]{justify-content:flex-end}.small[data-v-728d83a8]{padding:5px 12px;font-size:13px}.warn[data-v-728d83a8]{background:#fff0d9;color:#b05e00}.danger[data-v-728d83a8]{background:#fde3e3;color:var(--red)}.stu-chips[data-v-728d83a8]{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.stu-chip[data-v-728d83a8]{background:#f6f1e4;padding:7px 14px;border-radius:99px;font-size:14px}.stu-chip.bot[data-v-728d83a8]{background:#e8ecff}.dict-grid[data-v-728d83a8]{display:grid;grid-template-columns:1fr 1.6fr;gap:18px;align-items:start}@media(max-width:980px){.dict-grid[data-v-728d83a8]{grid-template-columns:1fr}}.stu-head[data-v-728d83a8]{display:flex;justify-content:space-between;align-items:center}.stu-head h2[data-v-728d83a8]{margin:0}.wc-now[data-v-728d83a8]{text-align:center;padding:10px 0 4px;background:linear-gradient(to right,transparent calc(50% - .75px),rgba(214,69,69,.14) calc(50% - .75px),rgba(214,69,69,.14) calc(50% + .75px),transparent calc(50% + .75px)),linear-gradient(to bottom,transparent calc(50% - .75px),rgba(214,69,69,.14) calc(50% - .75px),rgba(214,69,69,.14) calc(50% + .75px),transparent calc(50% + .75px));border-radius:10px}.wc-count-down[data-v-728d83a8]{color:var(--ink-light);font-size:13px}.wc-text[data-v-728d83a8]{font-size:58px;font-weight:800;letter-spacing:6px;font-family:STKaiti,KaiTi,serif;margin:8px 0 2px;display:inline-block;padding:2px 30px;transition:transform .2s}.wc-now:hover .wc-text[data-v-728d83a8]{transform:scale(1.05)}.wc-py[data-v-728d83a8]{font-size:17px;color:var(--ink-light);margin-bottom:12px}.word-strip[data-v-728d83a8]{display:flex;flex-wrap:wrap;gap:5px;margin-top:12px}.ws-chip[data-v-728d83a8]{width:34px;height:30px;padding:0;font-size:12.5px;border-radius:50%;background:#f4efe3;color:#b5ac93;transition:transform .15s,box-shadow .15s}.ws-chip[data-v-728d83a8]:hover{transform:translateY(-3px)}.ws-chip.past[data-v-728d83a8]{background:radial-gradient(circle at 32% 28%,#4a4a4a,#17171a);color:#f0e9d5;box-shadow:0 2px 5px #0000004d}.ws-chip.cur[data-v-728d83a8]{background:var(--seal);color:#fff;font-weight:700;transform:scale(1.15);box-shadow:0 3px 8px #c0392b66}.stu-grid[data-v-728d83a8]{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-top:12px}.stu-card[data-v-728d83a8]{position:relative;background:#fbf8f0;border:1.5px solid #eee4cc;border-radius:12px;padding:10px;cursor:pointer;transition:transform .15s,border-color .15s,box-shadow .15s}.stu-card[data-v-728d83a8]:hover{border-color:#d8c9a2;transform:translateY(-3px);box-shadow:0 8px 18px #785a2826}.stu-card.locked[data-v-728d83a8]{border-color:#b6e0c6;background:#f4fcf7}.stu-card.locked[data-v-728d83a8]:after{content:"封";position:absolute;right:9px;top:7px;font-family:STKaiti,KaiTi,serif;font-weight:700;color:var(--seal);border:2px solid var(--seal);border-radius:6px;padding:0 4px;transform:rotate(-12deg);opacity:.75;animation:stamp-in-728d83a8 .4s cubic-bezier(.2,1.6,.4,1) both}@keyframes stamp-in-728d83a8{0%{transform:rotate(-12deg) scale(2.2);opacity:0}to{transform:rotate(-12deg) scale(1);opacity:.75}}.sc-top[data-v-728d83a8]{display:flex;align-items:center;gap:6px;margin-bottom:8px;font-size:14.5px;flex-wrap:wrap}.sc-board[data-v-728d83a8]{font-size:0}.sc-progress[data-v-728d83a8]{display:flex;align-items:center;gap:8px;margin-top:8px;font-size:12.5px;color:var(--ink-light)}.bar[data-v-728d83a8]{flex:1;height:7px;background:#eee7d6;border-radius:99px;overflow:hidden}.bar i[data-v-728d83a8]{display:block;height:100%;background:var(--green);border-radius:99px;transition:width .4s}.bar.red i[data-v-728d83a8]{background:var(--red)}.lucky-head[data-v-728d83a8]{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.lucky-head h2[data-v-728d83a8]{margin:0}.lucky-chips[data-v-728d83a8]{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.lucky-chip[data-v-728d83a8]{display:flex;flex-direction:column;align-items:center;padding:8px 14px;background:linear-gradient(135deg,#fff6de,#ffedb3);border:1.5px solid #f0d98a;border-radius:11px}.lucky-chip b[data-v-728d83a8]{font-size:17px}.lucky-chip span[data-v-728d83a8]{font-size:12px;color:#9a7d2e}.done[data-v-728d83a8]{display:flex;flex-direction:column;gap:18px}.sum-grid[data-v-728d83a8]{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px}.sum[data-v-728d83a8]{text-align:center;display:flex;flex-direction:column;gap:4px}.sum .num[data-v-728d83a8]{font-size:40px;font-weight:800}.sum.gold .num[data-v-728d83a8]{color:var(--gold)}.sum.green .num[data-v-728d83a8]{color:var(--green)}.sum.red .num[data-v-728d83a8]{color:var(--red)}.sum span[data-v-728d83a8]{color:var(--ink-light);font-size:13.5px}table.rank[data-v-728d83a8]{width:100%;border-collapse:collapse;margin-top:12px;font-size:14px}.rank th[data-v-728d83a8]{text-align:left;color:var(--ink-light);font-weight:500;font-size:12.5px;padding:8px 10px;border-bottom:1px solid #eee}.rank td[data-v-728d83a8]{padding:10px;border-bottom:1px dashed #f0ebdd}.rank tr.top td[data-v-728d83a8]{background:#fffaf0}.rk[data-v-728d83a8]{color:var(--ink-light)}.total[data-v-728d83a8]{font-size:17px;color:var(--brand)}.gold-tag[data-v-728d83a8]{background:#fff3cf;color:#b07d00;border-radius:99px;padding:1px 8px;font-size:12px}.success-grid[data-v-728d83a8]{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px;margin-top:10px}.success-item[data-v-728d83a8]{background:linear-gradient(160deg,#fffbea,#fff3d0);border:1.5px solid #f0d98a;border-radius:13px;padding:12px;cursor:pointer}.si-name[data-v-728d83a8]{font-weight:700;margin-bottom:8px}.wrong-top[data-v-728d83a8]{display:flex;flex-direction:column;gap:10px;margin-top:10px}.wt-item[data-v-728d83a8]{display:grid;grid-template-columns:90px 1fr auto;align-items:center;gap:12px;font-size:14px}.wt-item b[data-v-728d83a8]{font-size:17px}.wt-item span[data-v-728d83a8]{color:var(--ink-light);font-size:12.5px}.rv-head[data-v-728d83a8]{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.rv-head h3[data-v-728d83a8]{margin:0}.rv-body[data-v-728d83a8]{display:flex;gap:22px;flex-wrap:wrap}.rv-board[data-v-728d83a8]{flex:1;min-width:260px;max-width:420px}.rv-detail[data-v-728d83a8]{flex:1;min-width:240px;display:flex;flex-direction:column;gap:10px}.rv-img[data-v-728d83a8]{width:100%;border:1.5px solid #eee;border-radius:10px;background:#fff}.rv-noimg[data-v-728d83a8]{background:#f4f4f4;border-radius:10px;padding:40px;text-align:center}.rv-word[data-v-728d83a8]{font-size:16px}.rv-verdict[data-v-728d83a8]{font-weight:700;font-size:16px}.rv-verdict .src[data-v-728d83a8]{font-weight:400;font-size:12px;color:var(--ink-light)}.rv-detail-text[data-v-728d83a8]{background:#faf6ec;border-radius:9px;padding:10px 12px;font-size:13.5px;line-height:1.6}.rv-actions[data-v-728d83a8]{display:flex;gap:7px;flex-wrap:wrap;align-items:center}.qr-modal[data-v-728d83a8]{text-align:center;max-width:360px}.qr-img[data-v-728d83a8]{width:240px;height:240px}.card-stu[data-v-728d83a8]{margin-top:14px;border-bottom:1px dashed #eee;padding-bottom:12px}.card-words[data-v-728d83a8]{display:flex;flex-direction:column;gap:6px;margin-top:8px}.card-word[data-v-728d83a8]{display:flex;align-items:center;gap:10px;font-size:14px;flex-wrap:wrap}.small-text[data-v-728d83a8]{font-size:12.5px}.wc-head[data-v-da9da846]{display:flex;align-items:center;gap:14px;margin-bottom:10px;flex-wrap:wrap}.speak[data-v-da9da846]{background:linear-gradient(135deg,#4aa3ff,#2f7fe0);color:#fff;font-size:15px;padding:10px 16px;border-radius:12px}.wc-pinyin[data-v-da9da846]{font-size:22px;font-weight:700;letter-spacing:1px}.wc-hint[data-v-da9da846]{font-size:12.5px;color:var(--ink-light);margin-top:2px}.wc-canvas-wrap[data-v-da9da846]{width:100%}.wc-canvas-wrap canvas[data-v-da9da846]{display:block;margin:0 auto;touch-action:none;border-radius:10px;box-shadow:0 3px 14px #3c32141f;cursor:crosshair}.wc-tools[data-v-da9da846]{display:flex;align-items:center;gap:10px;margin-top:12px}.wc-count[data-v-da9da846]{margin-left:auto;color:var(--ink-light);font-size:14px}.join-wrap[data-v-f27f1b56]{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;position:relative;overflow:hidden;background:repeating-linear-gradient(93deg,rgba(80,45,12,.05) 0 2px,transparent 2px 90px),linear-gradient(160deg,#e8c584,#ddb269 45%,#d3a355)}.join-wrap[data-v-f27f1b56]:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background-image:repeating-linear-gradient(0deg,rgba(60,34,8,.25) 0 1.5px,transparent 1.5px calc(100% / 14)),repeating-linear-gradient(90deg,rgba(60,34,8,.25) 0 1.5px,transparent 1.5px calc(100% / 14));background-size:calc(100% - 2 * (100% / 14)) calc(100% - 2 * (100% / 14));background-position:calc(100% / 14) calc(100% / 14);background-repeat:no-repeat}.join-wrap[data-v-f27f1b56]:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(ellipse at center,transparent 50%,rgba(70,40,10,.25) 100%)}.join-card[data-v-f27f1b56]{position:relative;z-index:2;max-width:400px;width:100%;text-align:center;padding:34px 28px;border-top-width:4px}.join-logo[data-v-f27f1b56]{width:62px;height:62px;margin:0 auto 12px;border-radius:16px;background:var(--seal);color:#fff;font-size:36px;line-height:62px;font-family:STKaiti,KaiTi,serif;transform:rotate(-5deg);box-shadow:0 4px 10px #96281b66;transition:transform .2s}.join-logo[data-v-f27f1b56]:hover{transform:rotate(0) scale(1.08)}h1[data-v-f27f1b56]{font-size:24px;margin:0 0 6px}.join-form[data-v-f27f1b56]{text-align:left;margin-top:22px;display:flex;flex-direction:column;gap:8px}.join-form label[data-v-f27f1b56]{font-size:13px;color:var(--ink-light);margin-top:8px}.code-input[data-v-f27f1b56]{text-transform:uppercase;letter-spacing:8px;font-size:22px;text-align:center;font-weight:700}.join-form .primary[data-v-f27f1b56]{margin-top:18px}.err[data-v-f27f1b56]{color:var(--red);font-size:13.5px;margin:8px 0 0}.muted[data-v-f27f1b56]{color:var(--ink-light);font-size:13.5px;line-height:1.7}.center[data-v-f27f1b56]{text-align:center}.small-t[data-v-f27f1b56]{font-size:12.5px}.bad[data-v-f27f1b56]{background:#fde3e3;color:var(--red)}.stu[data-v-f27f1b56]{max-width:720px;margin:0 auto;padding:14px 14px 46px;display:flex;flex-direction:column;gap:14px}.stu-top[data-v-f27f1b56]{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.stu-me[data-v-f27f1b56]{font-weight:700;font-size:16px;display:flex;align-items:center;gap:8px}.stu-mid[data-v-f27f1b56]{flex:1;display:flex;align-items:center;gap:10px;min-width:130px}.prog[data-v-f27f1b56]{font-size:13.5px;color:var(--ink-light);white-space:nowrap}.bar[data-v-f27f1b56]{flex:1;height:8px;background:#eee7d6;border-radius:99px;overflow:hidden}.bar i[data-v-f27f1b56]{display:block;height:100%;background:var(--green);border-radius:99px;transition:width .4s}.stu-right[data-v-f27f1b56]{display:flex;gap:6px}.tag.lock[data-v-f27f1b56]{background:#ffe9d6;color:#b05e00}.phase-box[data-v-f27f1b56]{text-align:center;padding:40px 24px}.wait-anim[data-v-f27f1b56]{font-size:54px;animation:bounce-f27f1b56 1.6s infinite}@keyframes bounce-f27f1b56{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}.phase-box h2[data-v-f27f1b56]{margin:12px 0 8px}.now-word[data-v-f27f1b56]{display:flex;align-items:center;gap:14px;padding:16px 18px}.nw-left[data-v-f27f1b56]{flex:1}.nw-label[data-v-f27f1b56]{font-size:13px;color:var(--ink-light);display:flex;align-items:center;gap:6px}.nw-label[data-v-f27f1b56]:before{content:"";width:9px;height:9px;border-radius:50%;background:radial-gradient(circle at 32% 28%,#5f5f5f,#161616);box-shadow:0 1px 3px #00000059}.nw-pinyin[data-v-f27f1b56]{font-size:30px;font-weight:800;letter-spacing:2px;margin-top:4px}.nw-hint[data-v-f27f1b56]{font-size:12.5px;color:#c0392b;margin-top:5px}.nw-actions[data-v-f27f1b56]{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.nw-stones[data-v-f27f1b56]{display:flex;align-items:center;gap:4px;font-size:12.5px;color:var(--ink-light)}.nw-stones b[data-v-f27f1b56]{color:var(--brand);font-size:15px;margin:0 3px}.mini-stone[data-v-f27f1b56]{width:10px;height:10px;border-radius:50%;background:radial-gradient(circle at 32% 28%,#565656,#191919 70%);display:inline-block;animation:stone-drop-f27f1b56 .3s ease backwards}.speak-btn[data-v-f27f1b56]{background:linear-gradient(135deg,#4aa3ff,#2f7fe0);color:#fff;font-size:16px;padding:14px 18px;border-radius:14px}.mute-btn[data-v-f27f1b56]{background:#f4efe3;border:1.5px solid #d8d2c4;border-radius:50%;width:38px;height:38px;font-size:16px;padding:0}.locked-banner[data-v-f27f1b56]{text-align:center;font-size:16px;color:#b05e00;background:#fff7ea;padding:18px}.board-wrap[data-v-f27f1b56]{display:flex;flex-direction:column;gap:8px}.board-wrap.small[data-v-f27f1b56]{max-width:400px;margin:10px auto 0;width:100%}.board[data-v-f27f1b56]{position:relative;display:grid;grid-template-columns:repeat(var(--n),1fr);gap:7px;background:linear-gradient(145deg,#f3ead3,#eadfc2);border:4px solid #b9a768;border-radius:16px;padding:8px;aspect-ratio:1}.board.locked[data-v-f27f1b56]{filter:saturate(.85)}.bcell[data-v-f27f1b56]{position:relative;background:#fffdf7;border-radius:10px;display:flex;align-items:center;justify-content:center;overflow:hidden;border:1.5px solid #e5dbc0}.bcell.empty .plus[data-v-f27f1b56]{font-size:26px;color:#ddd2b2;transition:transform .15s}.board:not(.locked) .bcell.empty[data-v-f27f1b56]{cursor:pointer}.board:not(.locked) .bcell.empty[data-v-f27f1b56]:hover{background:#fdf7e5;border-color:#c9a55c}.board:not(.locked) .bcell.empty:hover .plus[data-v-f27f1b56]{transform:scale(1.35);color:#b99b4f}.board:not(.locked) .bcell.empty[data-v-f27f1b56]:active{transform:scale(.95)}.bcell[data-v-f27f1b56]:active{transform:scale(.97)}.bcell img[data-v-f27f1b56]{width:100%;height:100%;object-fit:contain;pointer-events:none;animation:cell-drop-f27f1b56 .35s cubic-bezier(.2,1.5,.4,1)}@keyframes cell-drop-f27f1b56{0%{transform:scale(1.5);opacity:0;filter:drop-shadow(0 8px 8px rgba(0,0,0,.4))}70%{transform:scale(.96);opacity:1}to{transform:scale(1)}}.seal-stamp[data-v-f27f1b56]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(-14deg);font-family:STKaiti,KaiTi,serif;font-size:clamp(70px,18vmin,130px);font-weight:900;color:#c0392b;border:6px solid #c0392b;border-radius:16px;padding:4px 22px;opacity:.82;pointer-events:none;z-index:10;background:#fffcf440;mix-blend-mode:multiply}.stamp-enter-active[data-v-f27f1b56]{animation:stamp-in-f27f1b56 .45s cubic-bezier(.2,1.6,.4,1)}@keyframes stamp-in-f27f1b56{0%{transform:translate(-50%,-50%) rotate(-14deg) scale(2.6);opacity:0}65%{transform:translate(-50%,-50%) rotate(-14deg) scale(.92);opacity:.9}to{transform:translate(-50%,-50%) rotate(-14deg) scale(1);opacity:.82}}@keyframes stone-drop-f27f1b56{0%{transform:translateY(-8px) scale(1.4);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.bcell.st-correct[data-v-f27f1b56]{border-color:#bfe8cd;background:#f2fbf5}.bcell.st-messy[data-v-f27f1b56]{border-color:#f0dda4;background:#fffaf0}.bcell.st-missing[data-v-f27f1b56]{border-color:#f5cfa0;background:#fff6ea}.bcell.st-wrong[data-v-f27f1b56]{border-color:#f2bcbc;background:#fff4f4}.badge[data-v-f27f1b56]{position:absolute;right:3px;bottom:1px;font-size:13px}.rw[data-v-f27f1b56]{position:absolute;left:3px;top:1px;font-size:9px;background:#eee;color:#999;border-radius:5px;padding:0 4px}.circle[data-v-f27f1b56]{position:absolute;top:6%;right:6%;bottom:6%;left:6%;border:4px solid var(--red);border-radius:50%;pointer-events:none;animation:circle-in-f27f1b56 .25s ease}@keyframes circle-in-f27f1b56{0%{transform:scale(1.5);opacity:0}}.clover[data-v-f27f1b56]{position:absolute;left:3px;bottom:1px;font-size:12px}.lines[data-v-f27f1b56]{position:absolute;top:8px;right:8px;bottom:8px;left:8px;pointer-events:none}.gold-line[data-v-f27f1b56]{stroke:#f5b301;stroke-width:2.2;stroke-linecap:round;stroke-dasharray:200;stroke-dashoffset:200;animation:draw-line-f27f1b56 .9s ease forwards;filter:drop-shadow(0 0 4px rgba(245,179,1,.8))}@keyframes draw-line-f27f1b56{to{stroke-dashoffset:0}}.lucky-top .lt-head[data-v-f27f1b56]{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.lt-head h2[data-v-f27f1b56]{margin:0}.lt-chips[data-v-f27f1b56]{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0}.lucky-chip[data-v-f27f1b56]{display:flex;align-items:center;gap:6px;background:linear-gradient(135deg,#fff6de,#ffedb3);border:1.5px solid #f0d98a;border-radius:10px;padding:7px 12px;transition:transform .15s,box-shadow .15s}.lucky-chip[data-v-f27f1b56]:hover{transform:translateY(-4px) rotate(-2deg);box-shadow:0 6px 14px #e08e0b4d}.lucky-chip span[data-v-f27f1b56]{font-size:14.5px;font-weight:600}.lucky-chip b[data-v-f27f1b56]{font-size:13px}.result[data-v-f27f1b56]{text-align:center;padding:30px 22px}.r-emoji[data-v-f27f1b56]{font-size:56px;animation:bounce-f27f1b56 1.8s infinite}.r-score[data-v-f27f1b56]{font-size:56px;font-weight:800;color:var(--seal);line-height:1.2;display:inline-block;font-family:STKaiti,KaiTi,serif;border:4px solid var(--seal);border-radius:16px;padding:0 22px;margin:6px 0;transform:rotate(-2.5deg);box-shadow:0 4px 14px #c0392b40;animation:stamp-land-f27f1b56 .5s cubic-bezier(.2,1.5,.4,1) both}@keyframes stamp-land-f27f1b56{0%{transform:rotate(-2.5deg) scale(2.4);opacity:0}to{transform:rotate(-2.5deg) scale(1);opacity:1}}.r-score small[data-v-f27f1b56]{font-size:20px;color:var(--ink-light);font-weight:400;font-family:PingFang SC,Microsoft YaHei,sans-serif}.r-stars[data-v-f27f1b56]{font-size:26px;margin:4px 0 10px}.r-titles[data-v-f27f1b56]{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-bottom:10px}.gold-tag[data-v-f27f1b56]{background:#fff3cf;color:#b07d00;font-size:14px;padding:5px 12px}.r-lines[data-v-f27f1b56]{font-size:17px;color:#b07d00;font-weight:700;margin:8px 0;animation:bounce-f27f1b56 1.8s infinite}.r-words[data-v-f27f1b56]{text-align:left;margin-top:18px}.rw-title[data-v-f27f1b56]{font-weight:700;margin-bottom:8px;font-size:15px}.rw-grid[data-v-f27f1b56]{display:grid;grid-template-columns:repeat(auto-fill,minmax(86px,1fr));gap:7px}.rw-word[data-v-f27f1b56]{display:flex;flex-direction:column;align-items:center;gap:2px;background:#fbf7ee;border:1px solid #ecdfc2;border-radius:9px;padding:7px 4px;transition:transform .13s,border-color .13s}.rw-word[data-v-f27f1b56]:hover{transform:translateY(-3px);border-color:#c9a55c}.rw-word b[data-v-f27f1b56]{font-size:17px}.rw-word span[data-v-f27f1b56]{font-size:11.5px}.rw-word.lucky[data-v-f27f1b56]{border-color:#f0d98a;background:#fff8e3}.r-wrong[data-v-f27f1b56]{text-align:left;margin-top:16px;background:#fffaf0;border-radius:12px;padding:14px}.wrong-item[data-v-f27f1b56]{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:6px 0;font-size:14.5px;border-bottom:1px dashed #f0e4c8}.wrong-item[data-v-f27f1b56]:last-of-type{border-bottom:none}.write-modal[data-v-f27f1b56]{max-width:680px}.wm-head[data-v-f27f1b56]{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.wm-head h3[data-v-f27f1b56]{margin:0;font-size:17px}.wm-words[data-v-f27f1b56]{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:12px}.wm-chip[data-v-f27f1b56]{background:#f4efe3;border-radius:99px;padding:6px 13px;font-size:13.5px}.wm-chip.on[data-v-f27f1b56]{background:var(--brand);color:#fff}.wm-foot[data-v-f27f1b56]{display:flex;justify-content:space-between;align-items:center;margin-top:14px;gap:10px;flex-wrap:wrap}.verdict-modal[data-v-f27f1b56]{max-width:380px;text-align:center}.v-emoji[data-v-f27f1b56]{font-size:64px;animation:bounce-f27f1b56 1.4s 2}.v-label[data-v-f27f1b56]{font-size:26px;font-weight:800;margin:6px 0 10px}.v-detail[data-v-f27f1b56]{background:#faf6ec;border-radius:10px;padding:10px 14px;font-size:14.5px;line-height:1.6;margin-bottom:8px}.v-guide[data-v-f27f1b56]{font-size:14px;color:#7a5b12;margin-bottom:14px;line-height:1.6}:root{--ink: #2f3542;--ink-light: #747d8c;--brand: #c0392b;--brand-dark: #96281b;--paper: #fbf6ec;--paper-line: #e8dcc3;--wood-1: #e8c584;--wood-2: #d3a355;--wood-deep: #8a5f2c;--seal: #c0392b;--gold: #e6a817;--green: #2e9e5b;--red: #d64545;--bg: #f4efe2;--card: #ffffff;--radius: 14px;--shadow: 0 4px 16px rgba(47, 53, 66, .08)}*{box-sizing:border-box}html,body{margin:0;padding:0;font-family:PingFang SC,Microsoft YaHei,Segoe UI,system-ui,sans-serif;color:var(--ink);background:radial-gradient(1100px 340px at 50% -120px,rgba(232,197,132,.42),transparent 70%),repeating-linear-gradient(0deg,rgba(120,90,40,.045) 0 1px,transparent 1px 88px),repeating-linear-gradient(90deg,rgba(120,90,40,.045) 0 1px,transparent 1px 88px),var(--bg);-webkit-tap-highlight-color:transparent}#app{min-height:100vh}button{font-family:inherit;cursor:pointer;border:none;border-radius:10px;padding:9px 18px;font-size:15px;background:#ece5d2;color:var(--ink);transition:transform .1s ease,filter .15s,box-shadow .15s}button:hover:not(:disabled){filter:brightness(.97)}button:active:not(:disabled){transform:scale(.96)}button:disabled{opacity:.45;cursor:not-allowed}button.primary{background:linear-gradient(165deg,#d94b3a,var(--brand));color:#fff;box-shadow:0 3px 10px #c0392b47}button.primary:hover:not(:disabled){background:linear-gradient(165deg,#e05645,var(--brand-dark))}button.primary:active:not(:disabled){transform:translateY(1px) scale(.985);box-shadow:0 1px 4px #c0392b4d}button.ghost{background:transparent;border:1.5px solid #d5c9a8}button.ghost:hover:not(:disabled){border-color:#b9a768;background:#fffaebb3}button.gold{background:linear-gradient(135deg,#f0b429,#e08e0b);color:#fff;box-shadow:0 3px 10px #e08e0b4d}button.green{background:var(--green);color:#fff}button.big{font-size:18px;padding:13px 30px;border-radius:13px}input,textarea,select{font-family:inherit;font-size:15px;padding:10px 12px;border:1.5px solid #d8d2c4;border-radius:10px;background:#fffef9;color:var(--ink);outline:none;transition:border-color .15s,box-shadow .15s}input:focus,textarea:focus,select:focus{border-color:var(--brand);box-shadow:0 0 0 3px #c0392b1f}.card{background:var(--card);border:1px solid #eee2c8;border-top:3px solid #d9c188;border-radius:var(--radius);box-shadow:var(--shadow);padding:20px}.kai{font-family:STKaiti,KaiTi,serif}.seal-num{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;margin-right:9px;background:var(--seal);color:#fff;font-family:STKaiti,KaiTi,serif;font-size:16px;font-weight:700;border-radius:7px;transform:rotate(-4deg);box-shadow:0 2px 6px #c0392b59}.panel-in{animation:panel-in .35s ease both}@keyframes panel-in{0%{opacity:0;transform:translateY(14px)}}.tag{display:inline-block;padding:2px 10px;border-radius:99px;font-size:12px;background:#f0ece2;color:var(--ink-light)}.tag.bot{background:#e8ecff;color:#4a5fc1}.tag.lock{background:#ffe9d6;color:#b05e00}.tag.ok{background:#e0f5e9;color:var(--green)}.modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:#2e24128c;display:flex;align-items:center;justify-content:center;z-index:100;padding:16px;animation:mask-in .2s ease}@keyframes mask-in{0%{opacity:0}}.modal{background:#fffef8;border-top:4px solid var(--wood-deep);border-radius:18px;padding:22px;max-width:720px;width:100%;max-height:92vh;overflow:auto;box-shadow:0 20px 60px #00000047;animation:panel-in .28s ease both}.toast{position:fixed;top:18px;left:50%;transform:translate(-50%);background:#2b2414f0;color:#f7efdc;padding:10px 22px;border-radius:99px;border:1px solid rgba(232,197,132,.4);z-index:200;font-size:14px;animation:toast-in .25s ease}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,-8px)}}
