/* 百变游乐场：沿用全站颜色、按钮、字体与卡片。所有局部选择器以 pl- 开头。 */
.pl-lobby{display:grid;gap:18px;min-width:0}
.pl-card{background:var(--card);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:22px;min-width:0}
.pl-card h2,.pl-card h3{margin:0 0 10px}.pl-card p{color:var(--ink2);margin:8px 0}
.pl-modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.pl-mode{border-top:6px solid var(--pl-color);text-align:left;min-height:200px;transition:transform .2s}
.pl-mode:hover{transform:translateY(-3px)}.pl-mode:focus-visible,.pl-widget button:focus-visible,.pl-flip:focus-visible{outline:3px solid var(--sky);outline-offset:3px}
.pl-mode-emoji{font-size:48px}.pl-mode b{color:var(--ink)}.pl-mode[data-mode="quiz"]{grid-column:span 2}
.pl-badges{display:flex;flex-wrap:wrap;gap:10px}.pl-badge{display:inline-flex;align-items:center;gap:6px;border-radius:var(--r-sm);background:var(--bg2);padding:8px 12px;color:var(--ink2)}
.pl-badge.pl-lit{background:#E4FAF2;color:var(--mint-d)}.pl-specimen{font-size:36px;filter:brightness(0);opacity:.3}.pl-specimen.pl-lit{filter:none;opacity:1}
.pl-widget{max-width:760px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:14px;min-width:0;width:100%}
.pl-controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px;width:100%;min-width:0}
.pl-choice{min-height:56px;min-width:44px;max-width:100%;overflow-wrap:anywhere;font-size:20px;padding:10px 20px;border-radius:var(--r-md);border-width:2px}
.pl-choice small{display:block;font-size:14px}.pl-choice.pl-selected{border:2px solid var(--sky);background:#EAF3FF;box-shadow:none}
.pl-judge .pl-controls{gap:24px}.pl-judge .pl-choice{min-width:160px;min-height:76px;font-size:26px}.pl-judge .pl-choice:first-child{background:#E4F8F1;color:var(--mint-d)}.pl-judge .pl-choice:last-child{background:#FFEDF2;color:var(--pink-d)}.pl-judge .pl-choice.ok{border:4px solid var(--mint-d)}.pl-judge .pl-choice.no{border:4px solid var(--pink-d)}
.pl-symbol .pl-slot{width:56px;height:56px;min-width:56px;min-height:56px;border:2px dashed var(--sky);border-radius:50%;padding:0}.pl-symbol>.pl-controls:nth-child(2) .pl-choice{min-width:64px;min-height:64px;font-size:30px}
.pl-choice:disabled{opacity:.5;cursor:default}.pl-choice.ok:disabled{opacity:1}.pl-choice.no{background:#FFE6EF;border-color:var(--pink)}
.pl-submit{margin-top:8px}.pl-expression{font-size:24px}.pl-slot{min-width:55px}.pl-entry{font-size:28px;min-height:48px;padding:0 20px;border-bottom:3px solid var(--sky);overflow-wrap:anywhere;max-width:100%}
.pl-key{min-width:48px;min-height:48px}.pl-correction{width:100%;text-align:center}.pl-correction[hidden]{display:none}
.pl-match-board{display:grid;grid-template-columns:minmax(0,1fr) 72px minmax(0,1fr);width:100%;align-items:stretch;gap:0}
.pl-match-col{display:grid;grid-auto-rows:minmax(56px,1fr);gap:12px;min-width:0}.pl-match-lines{width:100%;height:100%;min-height:150px;stroke-width:4;overflow:visible}
.pl-choice.pl-paired{border-color:var(--pair);border-left-width:4px}.pl-match-col:last-child .pl-paired{border-left-width:2px;border-right-width:4px}
.pl-cells{display:grid;grid-template-columns:repeat(var(--cols),minmax(44px,1fr));gap:4px;max-width:100%;width:max-content}
.pl-cell{width:44px;height:44px;min-height:44px;padding:0;border:2px solid #E6DDD2;border-radius:8px;background:white}.pl-cell[data-color="1"]{background:var(--sky)}.pl-cell[data-color="2"]{background:var(--coral)}.pl-cell[data-color="3"]{background:var(--mint)}.pl-cell[data-color="4"]{background:var(--grape)}.pl-cell[data-color="5"]{background:var(--sun)}
.pl-dots{display:grid;grid-template-columns:repeat(var(--cols),26px);justify-content:center;gap:8px;color:var(--coral);font-size:24px;max-width:100%;margin:12px auto}
.pl-open-list{display:flex;flex-wrap:wrap;gap:8px;max-width:100%}.pl-open-answer{display:inline-flex;align-items:center;gap:6px;background:#E4FAF2;color:var(--mint-d);border-radius:var(--r-sm);padding:4px 10px;overflow-wrap:anywhere;max-width:100%}.pl-remove{min-height:44px;min-width:44px;padding:4px;background:transparent}.pl-note{min-height:28px;text-align:center;margin:0}.pl-note.pl-error{color:#B42336}.pl-path{font-size:22px;overflow-wrap:anywhere;max-width:100%}
.pl-axis-scroll{width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;padding-bottom:10px}.pl-axis{position:relative;padding-top:58px}.pl-arcs{position:absolute;top:0;left:0;width:100%;height:60px;pointer-events:none}.pl-axis .pl-controls{flex-wrap:nowrap;gap:0;border-top:2px solid var(--sky)}.pl-axis .pl-tick{position:relative;flex:0 0 28px;width:28px;min-width:28px;min-height:44px;padding:12px 0 0;border:0;border-radius:0;font-size:15px;background:transparent}.pl-tick:before{content:"";position:absolute;top:0;left:50%;width:2px;height:8px;background:var(--sky-d)}.pl-axis .pl-tick.pl-selected{background:#EAF3FF}.pl-axis .pl-tick.ok{background:#E4F8F1}
.pl-result{text-align:center}.pl-result button{margin:8px}.pl-sprint-head{font-size:22px;font-weight:800}.pl-time{height:14px;background:var(--line);border-radius:99px;overflow:hidden;margin:15px 0}.pl-time-fill{height:100%;background:linear-gradient(90deg,var(--sun),var(--sun-d));transition:width .3s}
.pl-fast{max-width:760px;margin:auto;min-width:0}.pl-fast-stem{display:flex;align-items:center;gap:12px;margin-bottom:16px}.pl-fast-stem h3{flex:1;min-width:0;margin:0;font-size:26px;font-weight:800;overflow-wrap:anywhere}.pl-read{min-width:48px;min-height:48px;flex-shrink:0}.pl-fast .choice{min-height:64px;font-size:24px;overflow-wrap:anywhere}
.pl-battle{display:grid;grid-template-columns:300px minmax(0,1fr);gap:20px;align-items:start;min-width:0}.pl-battle .pl-monster-hud{position:sticky;top:16px;background:var(--card);border-radius:var(--r-lg);box-shadow:var(--shadow)}.pl-battle .quiz{min-width:0}.pl-battle .answer-area.has-kp{display:block}.pl-battle .answer-area.has-kp .keypad{margin:12px auto}.pl-battle .progress{font-weight:800;color:var(--grape-d)}
.pl-monster-hud{text-align:center;position:relative;padding:12px}.pl-monster-emoji{display:block;font-size:100px;line-height:1.2}.pl-hp{display:flex;justify-content:center;gap:5px}.pl-hp i{width:28px;height:18px;border-radius:6px;background:var(--line)}.pl-hp i.pl-filled{background:var(--grape)}.pl-hearts{font-size:25px}.pl-damage{position:absolute;top:20px;left:65%;font-size:40px;color:var(--coral-d);font-weight:900}.pl-hit .pl-monster-emoji{animation:pl-shake .4s}.pl-hit .pl-damage{animation:pl-float .6s}
.pl-memory{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;max-width:760px;margin:auto}.pl-flip{height:115px;min-height:44px;min-width:44px;perspective:600px;padding:0;border-radius:var(--r-md)}.pl-flip-inner{display:block;position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .3s}.pl-back,.pl-front{position:absolute;inset:0;display:grid;place-items:center;backface-visibility:hidden;border-radius:var(--r-md);border:2px solid var(--mint);font-size:25px;background:#E4FAF2}.pl-front{transform:rotateY(180deg);background:white}.pl-turned .pl-flip-inner{transform:rotateY(180deg)}.pl-matched .pl-front{background:#E4FAF2;box-shadow:0 0 12px var(--mint)}
.pl-duel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.pl-player{padding:20px;border-radius:var(--r-lg);min-width:0}.pl-player-0{background:#FFF0E8}.pl-player-1{background:#E8F2FF}.pl-player button{min-height:48px}.pl-player button:disabled{opacity:.45;cursor:default}.pl-lock{min-height:28px}.pl-handicap{min-height:44px;display:flex;align-items:center;gap:8px;margin:10px 0}.pl-handicap input{width:24px;height:24px}
@keyframes pl-shake{25%{transform:translateX(-8px)}75%{transform:translateX(8px)}}
@keyframes pl-float{from{transform:translateY(20px);opacity:0}to{transform:translateY(-15px);opacity:1}}
@media(max-width:899px){.pl-battle{grid-template-columns:minmax(0,1fr);gap:12px}.pl-battle .pl-monster-hud{position:static;display:grid;grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:4px 8px;padding:10px}.pl-battle .pl-monster-emoji{grid-row:1/3;font-size:56px}.pl-battle .pl-monster-hud h3{margin:0;font-size:18px}.pl-battle .pl-hp{grid-column:2;justify-content:start;gap:3px}.pl-battle .pl-hp i{width:14px;height:12px}.pl-battle .pl-hearts{grid-column:3;grid-row:1/3;font-size:18px;margin:0}.pl-battle .pl-damage{left:auto;right:16px;top:0}}
@media(max-width:699px){.pl-modes{grid-template-columns:1fr}.pl-mode[data-mode="quiz"]{grid-column:auto}.pl-card{padding:16px}.pl-mode{min-height:160px}.pl-duel{grid-template-columns:1fr}.pl-player-0{transform:rotate(180deg)}.pl-player{padding:12px}.pl-match-col .pl-choice{padding:10px 6px}.pl-memory{gap:8px}.pl-flip{height:86px}.pl-cells{gap:2px}.pl-widget{gap:10px}.pl-back,.pl-front{font-size:21px}}
@media(prefers-reduced-motion:reduce){.pl-mode,.pl-time-fill,.pl-flip-inner{transition:none}.pl-hit .pl-monster-emoji,.pl-hit .pl-damage{animation:none}.pl-flip-inner,.pl-turned .pl-flip-inner,.pl-front{transform:none}.pl-front{display:none}.pl-turned .pl-front{display:grid}.pl-turned .pl-back{display:none}}
/* 数轴：刻度不多时铺满宽度，不用左右滚；起跳点加粗 */
.pl-axis.pl-fit{width:100%}.pl-axis.pl-fit .pl-tick{flex:1 1 0;width:auto;min-width:22px}.pl-axis .pl-tick.pl-start{font-weight:800;color:var(--sky-d)}
