:root{--bg: #0b3d3a;--bg2: #0f5a52;--panel: #ffffff;--panel-2: #f3f8f4;--text: #1b2b2a;--muted: #5f7571;--primary: #2bb673;--primary-dark: #1f8f59;--accent: #ffb703;--danger: #e5484d;--info: #3a86ff;--purple: #8e5fd9;--radius: 18px;--shadow: 0 8px 24px rgba(0, 0, 0, .18);--font: "PingFang SC", "Microsoft YaHei", "Noto Sans SC", system-ui, -apple-system, sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;padding:0;height:100%}body{font-family:var(--font);font-size:17px;line-height:1.5;color:var(--text);background:radial-gradient(1200px 600px at 20% -10%,#1c7a6a 0%,transparent 60%),radial-gradient(900px 500px at 110% 110%,#114b61 0%,transparent 60%),var(--bg);min-height:100vh;overscroll-behavior:none;touch-action:manipulation;user-select:none;-webkit-user-select:none}input,textarea{user-select:text;-webkit-user-select:text}button{font-family:inherit}#app{min-height:100vh;transition:opacity .15s}#app.fade-out{opacity:0}.screen{max-width:960px;margin:0 auto;padding:0 16px 32px;min-height:100vh;display:flex;flex-direction:column}.screen.wide{max-width:1100px}.topbar{display:flex;align-items:center;gap:10px;padding:12px 0;color:#fff}.topbar-title{flex:1;font-size:20px;font-weight:700;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.3)}.topbar-stats{display:flex;gap:6px}.stat{background:#ffffff24;border-radius:999px;padding:3px 10px;font-size:14px;font-weight:600}.stat.energy{color:var(--accent)}.icon-btn{width:40px;height:40px;border-radius:50%;border:none;background:#ffffff29;color:#fff;font-size:22px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.icon-btn:hover{background:#ffffff47}.icon-btn.placeholder{background:transparent}.btn{border:none;border-radius:999px;padding:12px 26px;font-size:17px;font-weight:700;cursor:pointer;color:#fff;background:var(--primary);box-shadow:0 4px 0 var(--primary-dark),0 6px 14px #0003;transition:transform .08s,box-shadow .08s,filter .15s;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px}.btn:active{transform:translateY(3px);box-shadow:0 1px 0 var(--primary-dark)}.btn:disabled{filter:grayscale(.6) opacity(.6);cursor:not-allowed}.btn.ghost{background:#ffffff24;color:#fff;box-shadow:0 4px #00000040}.btn.gold{background:var(--accent);color:#4a3200;box-shadow:0 4px #c98f00,0 6px 14px #0003}.btn.danger{background:var(--danger);box-shadow:0 4px #a52e32}.btn.small{padding:8px 16px;font-size:15px;min-height:38px}.btn.block{width:100%}.panel .btn.ghost,.modal .btn.ghost{background:#e9f1ec;color:var(--text);box-shadow:0 4px #cbd8d0}.panel{background:var(--panel);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px}.panel+.panel{margin-top:14px}.panel h3{margin:0 0 10px;font-size:18px}.muted{color:var(--muted)}.center{text-align:center}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.row.between{justify-content:space-between}.row.center{justify-content:center}.spacer{flex:1}.mt{margin-top:14px}.mb{margin-bottom:14px}.stars{display:inline-flex;gap:2px}.star{color:#c9d3cc;font-size:18px}.star.on{color:var(--accent);text-shadow:0 1px 2px rgba(0,0,0,.2)}.stars.lg .star{font-size:44px}.stars.lg .star.on{animation:starIn .5s cubic-bezier(.2,1.6,.4,1) both}.stars.lg .star.on:nth-child(2){animation-delay:.25s}.stars.lg .star.on:nth-child(3){animation-delay:.5s}@keyframes starIn{0%{transform:scale(0) rotate(-90deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}.progress{height:12px;background:#e3ebe6;border-radius:999px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--primary),#6fe3a6);border-radius:999px;transition:width .4s}.progress.xp .progress-fill{background:linear-gradient(90deg,var(--purple),#c79bff)}.progress.hp .progress-fill{background:linear-gradient(90deg,#e5484d,#ff8a80)}.progress.time .progress-fill{background:linear-gradient(90deg,var(--info),#7fb2ff);transition:width .2s linear}.title-screen{justify-content:center;align-items:center;text-align:center;color:#fff}.title-logo{font-size:92px;line-height:1;animation:float 3s ease-in-out infinite;filter:drop-shadow(0 10px 20px rgba(0,0,0,.35))}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-14px)}}.title-name{font-size:44px;font-weight:900;letter-spacing:4px;margin:10px 0 4px;text-shadow:0 4px 12px rgba(0,0,0,.4)}.title-sub{opacity:.85;margin-bottom:30px}.title-actions{display:flex;flex-direction:column;gap:12px;width:min(320px,90vw)}.title-hint{margin:24px auto 0;max-width:420px;padding:10px 14px;border-radius:12px;background:#ffffff24;font-size:14px;line-height:1.6;text-align:left}.title-foot{margin-top:36px;font-size:13px;opacity:.6}.slot-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.slot{cursor:pointer;display:flex;gap:14px;align-items:center;transition:transform .1s}.slot:hover{transform:translateY(-2px)}.slot .avatar{font-size:44px;width:64px;height:64px;border-radius:50%;background:var(--panel-2);display:flex;align-items:center;justify-content:center}.slot .name{font-weight:800;font-size:18px}.slot.new{justify-content:center;border:3px dashed #cfe0d6;background:#ffffffbf;color:var(--muted);font-weight:700;min-height:96px}.avatar-pick{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin:10px 0}.avatar-pick span{font-size:32px;width:54px;height:54px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;background:var(--panel-2);border:3px solid transparent}.avatar-pick span.on{border-color:var(--primary);background:#dff5ea}.input{width:100%;font-size:18px;padding:12px 14px;border-radius:12px;border:2px solid #cfe0d6;outline:none}.input:focus{border-color:var(--primary)}.hero{color:#fff;display:flex;gap:14px;align-items:center;padding:10px 0 16px}.hero .avatar{font-size:46px;width:68px;height:68px;border-radius:50%;background:#ffffff24;display:flex;align-items:center;justify-content:center}.hero .name{font-weight:800;font-size:20px}.hero .title-tag{font-size:13px;opacity:.85}.hero .progress{background:#fff3;margin-top:6px}.world-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.world-card{position:relative;border-radius:var(--radius);padding:18px;color:#fff;cursor:pointer;min-height:150px;display:flex;flex-direction:column;box-shadow:var(--shadow);transition:transform .12s;overflow:hidden}.world-card:hover{transform:translateY(-3px) scale(1.01)}.world-card .w-emoji{font-size:44px;line-height:1}.world-card .w-name{font-size:20px;font-weight:900;margin-top:8px}.world-card .w-theme{font-size:13px;opacity:.9}.world-card .w-foot{margin-top:auto;display:flex;justify-content:space-between;align-items:center;font-size:14px;font-weight:700;padding-top:10px}.world-card.locked{filter:grayscale(.8);opacity:.75;cursor:default}.world-card.locked:after{content:"即将开放";position:absolute;right:-28px;top:16px;background:#00000080;padding:4px 36px;transform:rotate(35deg);font-size:12px}.world-card .w-bg{position:absolute;right:-10px;bottom:-16px;font-size:110px;opacity:.15;pointer-events:none}.nav-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:16px 0}.nav-item{background:#ffffff1f;color:#fff;border-radius:14px;padding:12px 6px;text-align:center;cursor:pointer;font-weight:700;font-size:14px;position:relative}.nav-item:hover{background:#ffffff38}.nav-item .n-emoji{font-size:28px;display:block}.badge{position:absolute;top:4px;right:6px;background:var(--danger);color:#fff;font-size:11px;border-radius:999px;padding:1px 6px}.level-path{display:flex;flex-direction:column;gap:12px}.level-card{display:flex;gap:14px;align-items:center;cursor:pointer;transition:transform .1s}.level-card:hover{transform:translate(4px)}.level-card .l-emoji{font-size:40px;width:64px;height:64px;border-radius:16px;background:var(--panel-2);display:flex;align-items:center;justify-content:center;flex:none}.level-card .l-title{font-weight:800;font-size:18px}.level-card .l-sub{color:var(--muted);font-size:14px}.level-card.locked{opacity:.55;cursor:default}.level-card.locked .l-emoji{background:#e3e8e5}.level-card.boss{background:linear-gradient(135deg,#3a1c71,#d76d77,#ffaf7b);color:#fff}.level-card.boss .l-sub{color:#ffffffd9}.level-card.boss .l-emoji{background:#fff3}.kp-heat{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.kp-pill{font-size:13px;padding:4px 10px;border-radius:999px;background:#eceff1;color:#455a64}.kp-pill.m1{background:#ffe0b2;color:#8d4b00}.kp-pill.m2{background:#c8e6c9;color:#1b5e20}.kp-pill.m3{background:#2bb673;color:#fff}.phase-bar{display:flex;gap:6px;margin:4px 0 14px}.phase{flex:1;text-align:center;color:#fff9;font-size:13px;font-weight:700;padding:6px 0;border-radius:10px;background:#ffffff14}.phase.on{color:#fff;background:#ffffff38}.phase.done{color:#b9f5d3}.explore-card{min-height:300px;display:flex;flex-direction:column;animation:cardIn .3s ease both}@keyframes cardIn{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:none}}.explore-card .svg-wrap{max-width:420px;margin:0 auto 10px}.explore-card .big-emoji{font-size:80px;text-align:center}.explore-card h2{margin:6px 0;font-size:24px}.explore-card p{font-size:18px;margin:6px 0}.tip{background:#fff7e0;border-left:5px solid var(--accent);padding:10px 14px;border-radius:10px;margin-top:10px;font-size:16px}.dots{display:flex;justify-content:center;gap:6px;margin:12px 0}.dot{width:10px;height:10px;border-radius:50%;background:#ffffff4d}.dot.on{background:#fff}.svg-wrap svg{width:100%;height:auto;display:block}.engine-head{color:#fff;text-align:center;margin-bottom:10px;font-weight:700;font-size:18px}.engine-meta{display:flex;justify-content:space-between;color:#ffffffd9;font-size:14px;margin-bottom:8px}.chip{display:inline-flex;align-items:center;gap:6px;padding:10px 16px;border-radius:999px;background:#fff;color:var(--text);font-weight:700;font-size:16px;box-shadow:0 3px #cfd8d2,0 4px 10px #00000026;cursor:grab;border:3px solid transparent;touch-action:none;transition:transform .1s}.chip.selected{border-color:var(--accent);transform:scale(1.06)}.chip.dragging{position:fixed;z-index:1000;pointer-events:none;transform:scale(1.1);opacity:.95}.chip.ghost{opacity:.3}.chip.done{background:#d6f5e4;color:var(--primary-dark);cursor:default;box-shadow:none}.chip-tray{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;padding:14px;min-height:70px;background:#ffffff1a;border-radius:var(--radius);margin-top:12px}.shake{animation:shake .4s}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-8px)}40%,80%{transform:translate(8px)}}.pop{animation:pop .35s cubic-bezier(.2,1.6,.4,1)}@keyframes pop{0%{transform:scale(.6)}to{transform:scale(1)}}.label-stage{position:relative;background:#fff;border-radius:var(--radius);overflow:visible;box-shadow:var(--shadow)}.label-stage .svg-wrap{border-radius:var(--radius);overflow:hidden}.hotspot{position:absolute;width:34px;height:34px;margin:-17px 0 0 -17px;border-radius:50%;border:3px dashed var(--info);background:#3a86ff2e;cursor:pointer;animation:pulse 1.4s infinite;transition:background .2s}.hotspot.hover,.hotspot.drop-target.active{background:#ffb70373;border-color:var(--accent);animation:none;transform:scale(1.2)}@keyframes pulse{0%,to{box-shadow:0 0 #3a86ff80}50%{box-shadow:0 0 0 10px #3a86ff00}}.hotspot.done{border:3px solid var(--primary);background:var(--primary);animation:none;cursor:default;width:16px;height:16px;margin:-8px 0 0 -8px}.hotspot .placed{position:absolute;left:50%;top:-34px;transform:translate(-50%);white-space:nowrap;background:var(--primary);color:#fff;font-size:14px;font-weight:700;padding:2px 10px;border-radius:999px;box-shadow:0 2px 6px #0003}.hotspot.done.low .placed{top:16px}.bins{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.bin{background:#fff;border-radius:var(--radius);min-height:120px;padding:10px;border:3px solid transparent;transition:border-color .15s,background .15s;box-shadow:var(--shadow)}.bin.active,.bin.hover{border-color:var(--accent);background:#fff8e1}.bin .bin-title{font-weight:800;text-align:center;padding-bottom:6px;border-bottom:2px dashed #e0e8e3;margin-bottom:8px;color:var(--primary-dark)}.bin .bin-items{display:flex;flex-wrap:wrap;gap:6px}.bin .chip{font-size:14px;padding:6px 10px}.seq-chain{display:flex;flex-wrap:wrap;gap:8px;align-items:center;background:#fff;border-radius:var(--radius);padding:14px;min-height:76px;box-shadow:var(--shadow)}.seq-step{background:#d6f5e4;color:var(--primary-dark);font-weight:700;padding:8px 14px;border-radius:12px;display:flex;align-items:center;gap:6px}.seq-step .num{background:var(--primary);color:#fff;border-radius:50%;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;font-size:13px}.seq-arrow{color:var(--muted);font-weight:700}.seq-slot{border:2px dashed #b9c9c0;border-radius:12px;padding:8px 18px;color:#b9c9c0}.seq-pool{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:14px}.seq-pool .chip{font-size:16px}.q-stem{font-size:20px;font-weight:700;margin:0 0 14px;line-height:1.6}.q-type{display:inline-block;font-size:12px;background:#e9f1ec;color:var(--primary-dark);border-radius:6px;padding:2px 8px;margin-bottom:8px;font-weight:700}.options{display:flex;flex-direction:column;gap:10px}.option{text-align:left;background:var(--panel-2);border:3px solid transparent;border-radius:14px;padding:12px 14px;font-size:17px;cursor:pointer;display:flex;gap:10px;align-items:flex-start;transition:all .12s;width:100%;color:var(--text)}.option:hover{border-color:#cfe0d6}.option .letter{font-weight:800;color:var(--primary-dark);width:24px;flex:none}.option.selected{border-color:var(--info);background:#e9f1ff}.option.correct{border-color:var(--primary);background:#d6f5e4}.option.wrong{border-color:var(--danger);background:#fde2e3}.option.eliminated{opacity:.4;text-decoration:line-through;pointer-events:none}.option:disabled{cursor:default}.judge-row{display:flex;gap:12px}.judge-row .option{justify-content:center;font-size:22px;font-weight:800}.explain{margin-top:14px;padding:12px 14px;border-radius:12px;font-size:16px;animation:cardIn .25s}.explain.ok{background:#d6f5e4;color:#14532d}.explain.bad{background:#fde2e3;color:#7f1d1d}.explain b{display:block;margin-bottom:4px}.quiz-foot{display:flex;justify-content:space-between;align-items:center;margin-top:14px;gap:10px}.q-counter{color:#fff;font-weight:700}.sa-input{width:100%;min-height:96px;resize:vertical;font:inherit;line-height:1.6;box-sizing:border-box}.sa-input:disabled{background:#f6f7fb;color:var(--text)}.sa-ref{margin-top:12px;padding:12px 14px;border-radius:12px;background:#eef4ff;color:#1e3a8a;animation:cardIn .25s}.sa-ref-h{font-weight:700;margin-bottom:4px}.sa-ref p{margin:0 0 8px;line-height:1.7}.sa-points{list-style:none;margin:0;padding:0;display:grid;gap:4px}.sa-points li{display:flex;gap:8px;align-items:baseline;color:#475569}.sa-points li.hit{color:#14532d;font-weight:600}.sa-mark{flex:none;width:1.2em;text-align:center}.sa-points li.hit .sa-mark{color:var(--primary)}.sa-self{margin-top:10px}.sa-check{font-weight:600}.sa-ask{font-size:14px;margin-top:2px}.boss-arena{background:linear-gradient(160deg,#2b1055,#7597de);border-radius:var(--radius);padding:16px;color:#fff;box-shadow:var(--shadow);margin-bottom:12px}.boss-row{display:flex;align-items:center;gap:14px}.boss-face{font-size:64px;line-height:1;transition:transform .1s}.boss-face.hurt{animation:hurt .35s}@keyframes hurt{0%{transform:translate(0) scale(1);filter:none}30%{transform:translate(-10px) scale(1.1);filter:brightness(2)}60%{transform:translate(10px)}to{transform:none}}.boss-name{font-weight:900;font-size:18px}.hearts{font-size:22px;letter-spacing:2px}.boss-taunt{font-style:italic;opacity:.9;font-size:14px;margin-top:6px;min-height:20px}.result{text-align:center}.result .big{font-size:64px;line-height:1}.result h1{margin:8px 0}.reward-row{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin:14px 0}.reward{background:var(--panel-2);border-radius:14px;padding:10px 18px;font-weight:800;font-size:18px;animation:pop .4s both}.reward small{display:block;font-size:12px;color:var(--muted);font-weight:600}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}.sp-card{background:#fff;border-radius:16px;padding:12px;text-align:center;cursor:pointer;box-shadow:var(--shadow);position:relative;transition:transform .1s}.sp-card:hover{transform:translateY(-3px)}.sp-card .sp-emoji{font-size:48px;line-height:1.2}.sp-card .sp-name{font-weight:800;margin-top:4px}.sp-card.locked{background:#ffffff59;color:#ffffffb3;box-shadow:none}.sp-card.locked .sp-emoji{filter:grayscale(1) brightness(.3);opacity:.6}.rarity{position:absolute;top:6px;right:8px;font-size:12px;color:var(--accent)}.sp-detail .sp-emoji{font-size:90px;text-align:center}.sp-detail dl{display:grid;grid-template-columns:70px 1fr;gap:6px 10px;margin:10px 0 0}.sp-detail dt{color:var(--muted);font-size:14px}.sp-detail dd{margin:0}.group-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.group-tabs .tab{background:#ffffff24;color:#fff;border-radius:999px;padding:6px 14px;cursor:pointer;font-weight:700;font-size:14px;border:none}.group-tabs .tab.on{background:#fff;color:var(--primary-dark)}.ach-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.ach{display:flex;gap:12px;align-items:center;background:#fff;border-radius:16px;padding:12px;box-shadow:var(--shadow)}.ach .a-emoji{font-size:36px;width:56px;height:56px;border-radius:14px;background:#fff3cd;display:flex;align-items:center;justify-content:center;flex:none}.ach .a-name{font-weight:800}.ach .a-desc{font-size:14px;color:var(--muted)}.ach.locked{opacity:.6;background:#ffffffb3}.ach.locked .a-emoji{background:#e3e8e5;filter:grayscale(1)}.task{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid #eef2ef}.task:last-child{border-bottom:none}.task .t-emoji{font-size:28px}.task .t-name{font-weight:700}.task .t-prog{font-size:13px;color:var(--muted)}.task .progress{margin-top:4px;height:8px}#overlay{position:fixed;inset:0;pointer-events:none;z-index:500}.modal-back{position:absolute;inset:0;background:#0000008c;display:flex;align-items:center;justify-content:center;padding:16px;opacity:0;transition:opacity .2s;pointer-events:auto;overflow:auto}.modal-back.show{opacity:1}.modal{background:#fff;border-radius:22px;padding:22px;width:min(520px,100%);max-height:92vh;overflow:auto;transform:scale(.92);transition:transform .2s;box-shadow:0 20px 60px #0006}.modal-back.show .modal{transform:scale(1)}.modal-title{margin:0 0 12px;font-size:22px;text-align:center}.modal-actions{display:flex;gap:10px;justify-content:center;margin-top:18px;flex-wrap:wrap}.toast{position:absolute;left:50%;top:20px;transform:translate(-50%,-30px);background:#1b2b2a;color:#fff;padding:10px 18px;border-radius:999px;font-weight:700;opacity:0;transition:all .3s;pointer-events:none;box-shadow:var(--shadow);max-width:90vw;text-align:center}.toast.show{opacity:1;transform:translate(-50%)}.toast+.toast{margin-top:48px}.empty{text-align:center;color:#fffc;padding:40px 0}.empty-emoji{font-size:60px}.unlock-card{text-align:center}.unlock-card .sp-emoji{font-size:96px;animation:pop .6s cubic-bezier(.2,1.6,.4,1)}.shine{background:linear-gradient(90deg,#ffb703,#ffd166,#ffb703);-webkit-background-clip:text;background-clip:text;color:transparent;font-weight:900}.setting-row{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #eef2ef}.setting-row:last-child{border-bottom:none}.switch{width:54px;height:30px;border-radius:999px;background:#cfd8d2;position:relative;cursor:pointer;border:none}.switch:after{content:"";position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:#fff;transition:left .2s}.switch.on{background:var(--primary)}.switch.on:after{left:27px}@media(max-width:520px){body{font-size:16px}.title-name{font-size:34px}.nav-grid{grid-template-columns:repeat(4,1fr)}.nav-item{font-size:12px;padding:8px 2px}.q-stem{font-size:18px}.explore-card p{font-size:17px}.chip{font-size:15px;padding:8px 12px}.bins{grid-template-columns:repeat(2,1fr)}.screen{padding:0 12px 24px}}.hint-line{color:#ffffffbf;font-size:14px;margin-top:8px}.match-board{position:relative;display:grid;grid-template-columns:1fr 48px 1fr;background:#fff;border-radius:var(--radius);padding:14px;box-shadow:var(--shadow)}.match-col{display:flex;flex-direction:column;gap:10px;position:relative;z-index:1}.match-title{text-align:center;font-weight:800;color:var(--primary-dark);border-bottom:2px dashed #e0e8e3;padding-bottom:4px}.match-item{font:inherit;font-size:15px;font-weight:700;text-align:center;padding:10px 8px;border-radius:12px;border:3px solid #dfe8e3;background:var(--panel-2);color:var(--text);cursor:pointer;line-height:1.35;transition:transform .1s}.match-item.selected{border-color:var(--accent);background:#fff8e1;transform:scale(1.03)}.match-item.done{cursor:default}.match-lines{position:absolute;left:0;top:0;pointer-events:none;z-index:0}.sim-goal{background:#fff8e1;color:#7a5200;border-radius:12px;padding:10px 14px;font-weight:700;margin-bottom:10px}.sim-stage{padding:14px}.sim-scene{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}.sim-conds{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.sim-cond{display:flex;flex-direction:column;align-items:center;background:var(--panel-2);border-radius:12px;padding:6px 10px;min-width:76px}.sim-cond .e{font-size:28px}.sim-cond small{font-size:12px;color:var(--muted)}.sim-arrow{font-size:40px;display:flex;align-items:center;gap:6px}.sim-arrow span{font-size:24px;color:var(--muted)}.sim-result{font-size:56px;min-width:70px;text-align:center}.sim-result.running{animation:simpulse .6s infinite}@keyframes simpulse{50%{transform:scale(1.15);opacity:.6}}.sim-readout{text-align:center;font-weight:800;color:var(--info);margin-top:8px}.sim-params{display:flex;flex-direction:column;gap:8px;margin-top:12px}.sim-row{background:#fffffff2;border-radius:12px;padding:8px 12px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.sim-row.locked{opacity:.7}.sim-name{font-weight:800;min-width:84px}.seg{display:flex;flex-wrap:wrap;gap:6px;flex:1}.seg-btn{font:inherit;font-size:14px;font-weight:700;padding:6px 12px;border-radius:999px;border:2px solid #dfe8e3;background:#fff;cursor:pointer;color:var(--text)}.seg-btn.on{background:var(--primary);border-color:var(--primary);color:#fff}.seg-btn:disabled{cursor:default}.sim-feedback{margin-top:10px}@media(max-width:560px){.match-board{grid-template-columns:1fr 24px 1fr;padding:10px}.match-item{font-size:13px;padding:8px 4px}}.jr-track{display:flex;align-items:flex-start;overflow-x:auto;gap:0;padding:10px 6px 14px;background:#ffffff1a;border-radius:var(--radius);margin-bottom:12px;scrollbar-width:thin}.jr-stop{display:flex;flex-direction:column;align-items:center;min-width:64px;flex-shrink:0}.jr-dot{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:22px;background:#ffffff40;color:#fff;font-weight:800}.jr-stop.done .jr-dot{background:#d6f5e4}.jr-stop.here .jr-dot{background:var(--accent);box-shadow:0 0 0 4px #ffb70359;font-size:26px}.jr-name{color:#fff;font-size:12px;margin-top:4px;text-align:center;max-width:72px;line-height:1.25}.jr-link{flex:0 0 18px;height:4px;background:#ffffff40;margin-top:20px;border-radius:2px}.jr-link.done{background:#8ee0b5}.jr-head{display:flex;align-items:center;gap:12px}.jr-big{font-size:48px}.jr-title{font-size:22px;font-weight:800}.jr-note{margin:10px 0;line-height:1.7}.jr-q{font-weight:800;margin:12px 0 8px;color:var(--primary-dark)}.key-shelf,.col-shelf{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-bottom:10px}.key-done{background:#ffffffe6;border-radius:10px;padding:4px 8px;font-size:13px;display:flex;gap:4px;align-items:center}.key-sp,.col-head{display:flex;align-items:center;gap:14px}.key-emoji{font-size:52px}.key-path{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 0}.key-step{background:#e3f2fd;color:#0d47a1;border-radius:8px;padding:3px 8px;font-size:13px}.col-slot{width:40px;height:40px;border-radius:10px;background:#ffffff2e;display:flex;align-items:center;justify-content:center;font-size:22px;color:#fff9}.col-slot.got{background:#fff}.col-creature{font-size:64px;animation:bob 1.6s ease-in-out infinite}.col-creature.caught{animation:none;filter:drop-shadow(0 0 10px #ffd54f)}@keyframes bob{50%{transform:translateY(-8px) rotate(-4deg)}}.eco-board{position:relative;width:100%;aspect-ratio:4 / 3;max-height:62vh;margin:0 auto;background:linear-gradient(#e3f2fd,#f1f8e9 70%,#dcedc8);border-radius:var(--radius);box-shadow:var(--shadow)}.eco-svg{position:absolute;inset:0;width:100%;height:100%}.eco-node{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;background:#fff;border:3px solid #c5e1a5;border-radius:16px;padding:2px 6px;cursor:pointer;font:inherit;min-width:54px;box-shadow:0 2px 6px #00000026}.eco-node .e{font-size:26px;line-height:1.1}.eco-node small{font-size:12px;font-weight:700;color:var(--text)}.eco-node.producer{border-color:#66bb6a}.eco-node.consumer{border-color:#ffb74d}.eco-node.selected{border-color:var(--accent);background:#fff8e1;transform:translate(-50%,-50%) scale(1.12)}.eco-deco{color:#fff;font-size:14px;margin-top:8px;display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:center}.eco-deco-btn{font:inherit;font-size:14px;background:#ffffffe6;border:none;border-radius:999px;padding:4px 12px;cursor:pointer}.eco-bars{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px 14px;margin:10px 0}.eco-bar{display:flex;align-items:center;gap:6px;color:#fff;font-size:13px}.eco-bar-label{min-width:64px}.eco-bar-track{flex:1;height:10px;background:#fff3;border-radius:5px;overflow:hidden}.eco-bar-fill{height:100%;background:#8ee0b5;transition:width 1.2s ease}.eco-bar-fill.up{background:#ffb703}.eco-bar-fill.down{background:#e5484d}.eco-q{margin-top:8px}@media(max-width:560px){.eco-node .e{font-size:20px}.eco-node small{font-size:10px}.eco-node{min-width:44px;padding:1px 4px}}.br-parents{display:flex;align-items:center;justify-content:center;gap:14px;margin:8px 0}.br-parent{text-align:center;background:var(--panel-2);border-radius:14px;padding:8px 16px;min-width:96px}.br-who{font-weight:800;color:var(--primary-dark)}.br-geno{font-size:26px;font-weight:800;letter-spacing:2px;font-family:Georgia,Times New Roman,serif}.br-x{font-size:28px;color:var(--muted)}.br-chip{font:inherit;font-size:22px;font-weight:800;font-family:Georgia,Times New Roman,serif;min-width:64px;padding:6px 14px;border-radius:12px;border:3px solid #dfe8e3;background:#fff;cursor:pointer}.br-chip.on{border-color:var(--primary);background:#d6f5e4}.br-grid{display:grid;grid-template-columns:64px 1fr 1fr;gap:6px;max-width:360px;margin:8px auto}.br-h{display:flex;align-items:center;justify-content:center;font-weight:800;font-size:20px;font-family:Georgia,serif;background:#e3f2fd;border-radius:10px;padding:6px}.br-h.corner{font-size:13px;font-family:inherit;background:transparent;color:var(--muted)}.br-cell{font:inherit;font-size:18px;font-weight:800;min-height:56px;border-radius:12px;border:3px dashed #b0bec5;background:#fff;cursor:pointer}.br-cell.good{border:3px solid var(--primary);background:#d6f5e4;font-size:14px}.br-cell.bad{border-color:var(--danger);background:#fde2e3}.br-infer{margin:10px 0;text-align:center}.td-lane{position:relative;height:96px;border-radius:var(--radius);overflow:hidden;display:grid;grid-template-columns:1fr 1fr 1fr 64px;box-shadow:var(--shadow)}.td-zone{display:flex;align-items:flex-end;justify-content:center;padding-bottom:4px;font-size:12px;font-weight:800;color:#00000073}.td-zone.z1{background:#ffe0b2}.td-zone.z2{background:#fff3e0}.td-zone.z3{background:#e3f2fd}.td-core{background:#fde2e3;display:flex;align-items:center;justify-content:center;font-size:34px}.td-foe{position:absolute;top:18px;font-size:40px;transition:transform .2s,opacity .3s;filter:drop-shadow(0 2px 3px rgba(0,0,0,.3))}.td-foe.locked{animation:tdlock .6s infinite}.td-foe.dead{transform:scale(1.8);opacity:0}@keyframes tdlock{50%{filter:drop-shadow(0 0 10px #ff1744);transform:scale(1.12)}}.td-info{display:flex;gap:12px;align-items:center;background:#fff;border-radius:14px;padding:10px 14px;margin:10px 0;min-height:66px}.td-info-e{font-size:38px}.td-defenders{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px}.td-def{font:inherit;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 6px;border-radius:14px;border:3px solid #c5e1a5;background:#fff;cursor:pointer}.td-def .e{font-size:28px}.td-def b{font-size:14px;text-align:center}.td-def small{font-size:11px;color:var(--muted)}.td-def:active{transform:scale(.96)}.sc-story{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.sc-done{background:#ffffffd9;border-radius:10px;padding:4px 10px;font-size:14px}.sc-scene{display:flex;gap:12px;align-items:flex-start}.sc-scene p{margin:4px 0;line-height:1.7}.sc-emoji{font-size:44px}.rp-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px;margin-bottom:12px}.rp-print-row{margin:-4px 0 12px;align-items:center;gap:10px;flex-wrap:wrap}.rp-print-hint{color:#ffffffbf;font-size:12px}.rp-tile{background:#fff;border-radius:14px;padding:10px;text-align:center;box-shadow:var(--shadow)}.rp-tile b{display:block;font-size:20px;color:var(--primary-dark)}.rp-tile small{color:var(--muted)}.rp-world{display:grid;grid-template-columns:120px 1fr 200px;gap:10px;align-items:center;padding:6px 0;border-bottom:1px solid #eef2ef}.rp-wname{font-weight:800}.rp-wmeta{font-size:13px}.rp-wbar small{font-size:12px;color:var(--muted)}.rp-maprow{margin-top:10px;font-size:14px}.kp-heat button.kp-pill{border:none;font:inherit;cursor:pointer}.rp-weak{padding:6px 0;border-bottom:1px solid #eef2ef}.rp-table{width:100%;border-collapse:collapse}.rp-table th,.rp-table td{padding:6px 8px;text-align:left;border-bottom:1px solid #eef2ef;font-size:15px}.rp-table tr.me td{background:#fff8e1;font-weight:800}.nav-grid{grid-template-columns:repeat(9,1fr)}@media(max-width:820px){.nav-grid{grid-template-columns:repeat(5,1fr)}}.av-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:8px}.av-item{font:inherit;display:flex;flex-direction:column;align-items:center;padding:6px;border-radius:12px;border:3px solid #e0e8e3;background:#fff;cursor:pointer}.av-item .e{font-size:32px}.av-item small{font-size:11px;color:var(--muted)}.av-item.on{border-color:var(--primary);background:#d6f5e4}@media(max-width:560px){.rp-world{grid-template-columns:1fr;gap:2px}}.help h3{margin:12px 0 4px;font-size:16px;color:var(--primary-dark)}.help ol,.help ul{margin:0;padding-left:20px;line-height:1.8}.modal{display:flex;flex-direction:column;overflow:hidden}.modal-body{overflow-y:auto;min-height:0;flex:1 1 auto;overscroll-behavior:contain}.modal-actions{flex:none}.cv-scroll{overflow-x:auto}.cv-x{border:none;background:#f1f5f3;color:#999;border-radius:8px;cursor:pointer;padding:2px 8px}.cv-acts{white-space:nowrap}.cv-exam{font-size:13px;min-width:90px}.rp-exam th,.rp-exam td:not(.rp-trend){white-space:nowrap}.rp-trend .up,.rp-trend .down{white-space:nowrap}.rp-trend .up{color:#2e9e5b;font-weight:600}.rp-trend .down{color:#d9534f;font-weight:600}button.kp-pill.m1{cursor:pointer}.cv-acts .cv-x+.cv-x{margin-left:4px}.btn.ghost.dark{background:#e9f1ec;color:var(--primary-dark);box-shadow:none}.q-figure{position:relative;max-width:420px;margin:0 auto 12px;background:#fff;border:2px solid #e6efe9;border-radius:14px;overflow:hidden}.q-mark{position:absolute;transform:translate(-50%,-50%);min-width:26px;height:26px;padding:0 4px;border-radius:13px;background:#1565c0;color:#fff;font-weight:800;font-size:15px;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 2px #fff,0 2px 6px #0000004d;pointer-events:none}.q-table-wrap{overflow-x:auto;margin:0 0 12px}.q-table{border-collapse:collapse;margin:0 auto;font-size:15px}.q-table th,.q-table td{border:1px solid #d5e2da;padding:6px 8px;text-align:center}.q-table th{background:#e9f1ec;color:var(--primary-dark);min-width:2.6em}.q-table-note{text-align:center;font-size:12px;color:var(--muted);margin-top:4px}.pj-list{display:grid;gap:8px}.pj-item{display:flex;align-items:center;gap:10px;background:#f3f8f4;border-radius:12px;padding:10px 12px;cursor:pointer}.pj-item .pj-title{font-weight:800;flex:1}.pj-item .pj-src{font-size:12px;color:var(--muted)}.pj-steps{padding-left:0;list-style:none;margin:8px 0}.pj-steps li{display:flex;gap:8px;align-items:flex-start;padding:6px 0;border-bottom:1px dashed #e0e8e3}.pj-steps input{width:20px;height:20px;margin-top:3px;flex:none}.cs-material{background:#fffffff2;border-radius:14px;padding:12px 14px;margin-bottom:10px;border-left:5px solid #f2b705}.cs-material h4{margin:0 0 6px;font-size:14px;color:#8a6d00}.cs-material p{margin:0 0 6px;line-height:1.65;white-space:pre-line;font-size:15px}.cs-material.folded p,.cs-material.folded .q-table-wrap,.cs-material.folded .q-figure{display:none}.cs-toggle{float:right;background:none;border:0;color:#8a6d00;font-size:13px;cursor:pointer;padding:0}.rp-cat{display:grid;grid-template-columns:130px 1fr auto;gap:10px;align-items:center;padding:6px 0;border-bottom:1px solid #eef2ef}.rp-cname{font-weight:800;font-size:14px}.rp-weaktag{margin-left:6px;font-size:11px;background:#ffe2c2;color:#a04a00;border-radius:8px;padding:1px 6px;font-weight:700}@media(max-width:520px){.rp-cat{grid-template-columns:1fr auto}.rp-cat .rp-wbar{grid-column:1 / -1;grid-row:2}}.rv-filters{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-top:10px}.rv-filter{border:2px solid #d5e2da;background:#fff;border-radius:999px;padding:4px 12px;font-size:14px;cursor:pointer;color:var(--text, #234)}.rv-filter.on{border-color:var(--primary);background:#e3f4ea;color:var(--primary-dark);font-weight:700}.rv-kp{display:flex;justify-content:space-between;width:100%;background:none;border:0;border-bottom:1px solid #eef2ef;padding:8px 2px;font-size:15px;cursor:pointer;text-align:left;color:inherit}.rv-kp:hover{background:#f4faf6}.rv-item{border-bottom:1px solid #eef2ef;padding:6px 0}.rv-item summary{cursor:pointer;list-style:none;display:flex;flex-direction:column;gap:2px}.rv-item summary::-webkit-details-marker{display:none}.rv-item .rv-stem:before{content:"▸ ";color:var(--muted)}.rv-item[open] .rv-stem:before{content:"▾ "}.rv-stem{font-size:15px;line-height:1.5}.rv-meta{font-size:12px;color:var(--muted)}.rv-ans{margin:6px 0 4px;color:var(--primary-dark);font-size:14px}.rv-exp{font-size:14px;color:#456;line-height:1.6;background:#f6faf7;border-radius:8px;padding:6px 10px}.kbd-hint{margin-top:8px;font-size:12px;color:#8a9a92;text-align:right}@media(hover:none),(pointer:coarse){.kbd-hint{display:none}}#print-root{display:none}.quiz-foot .flag-btn{font-size:13px;padding:6px 12px;min-height:34px;color:var(--muted, #6b7d73)}.flag-reasons{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}.flag-reasons .option{justify-content:center;font-size:15px;padding:10px}.flag-note{font-size:15px;resize:vertical;font-family:inherit}.fl-table{min-width:560px}.fl-table th{white-space:nowrap}.fl-stem{max-width:340px;min-width:180px}.fl-q .explain{margin-top:10px}.exam-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.exam-card{font:inherit;text-align:left;background:#fff;border:none;border-radius:var(--radius);padding:16px;cursor:pointer;box-shadow:var(--shadow);color:var(--text);display:flex;flex-direction:column;gap:4px}.exam-card:hover{transform:translateY(-2px)}.exam-card:disabled{opacity:.5;cursor:default;transform:none}.exam-card .muted{font-size:13px}.exam-vol{font-size:26px;font-weight:800;color:var(--primary-dark)}.exam-best{font-size:14px;font-weight:700;color:#b07800}.exam-card.full{grid-column:1 / -1;background:linear-gradient(135deg,#fffbe8,#fff)}.exam-score{font-size:44px;margin:4px 0;color:var(--primary-dark)}.exam-wrong{padding:10px 0 14px;border-bottom:1px solid #eef2ef}.exam-wrong .q-stem{font-size:16px}.exam-opts{margin:6px 0;padding-left:24px;font-size:15px}.exam-wrong .explain div+div{margin-top:4px}.exam-kp-head{margin:8px 0 6px;font-weight:700;font-size:15px}@media print{@page{size:A4;margin:14mm 14mm 16mm}body.printing{background:#fff!important;color:#000}body.printing>*:not(#print-root){display:none!important}body.printing #print-root{display:block;font-size:12pt;line-height:1.6;color:#000}#print-root .pr-head{text-align:center;border-bottom:1.5pt solid #000;padding-bottom:6pt;margin-bottom:10pt}#print-root h1{font-size:18pt;margin:0 0 4pt}#print-root .pr-sub{font-size:10.5pt}#print-root .pr-fields{display:flex;justify-content:space-around;margin-top:6pt;font-size:11pt}#print-root .pr-q{break-inside:avoid;margin:0 0 10pt}#print-root .pr-type{font-size:10pt;color:#444}#print-root .pr-opts{display:grid;grid-template-columns:repeat(2,1fr);gap:2pt 16pt;padding-left:1.6em;margin-top:3pt}#print-root .pr-opts.long{grid-template-columns:1fr}#print-root .pr-lines{padding-left:1.6em;margin-top:2pt}#print-root .pr-lines div{height:22pt;border-bottom:.6pt solid #999}#print-root .pr-kp{font-size:9pt;color:#666;padding-left:1.6em}#print-root .pr-material{border:1px solid #999;border-radius:4pt;padding:5pt 7pt;margin:0 0 6pt;font-size:10pt}#print-root .pr-material>b{display:block;margin-bottom:2pt}#print-root .q-figure{width:55%;margin:4pt 0 4pt 1.6em;-webkit-print-color-adjust:exact;print-color-adjust:exact}#print-root .q-table-wrap{margin:4pt 0 4pt 1.6em;overflow:visible}#print-root .q-table{border-collapse:collapse}#print-root .q-table th,#print-root .q-table td{border:.75pt solid #000;padding:2pt 6pt;color:#000;background:#fff}#print-root .q-table-note{font-size:9.5pt;color:#333}#print-root .pr-answers{break-before:page}#print-root .pr-paper+.pr-paper{break-before:page}#print-root .pr-answers h2{font-size:15pt;text-align:center;margin:0 0 8pt}#print-root .pr-ans{font-size:10.5pt;margin:0 0 4pt;break-inside:avoid}#print-root .pr-foot{text-align:center;font-size:9pt;color:#888;margin-top:12pt}#print-root .pr-outline{font-size:10.5pt;line-height:1.55}#print-root .pr-sec{margin:0 0 8pt}#print-root .pr-sec h2{font-size:13pt;margin:8pt 0 2pt;border-bottom:.75pt solid #999;break-after:avoid}#print-root .pr-sec .pr-kp{padding-left:0;margin-bottom:3pt}#print-root .pr-card{break-inside:avoid;margin:0 0 5pt;overflow:hidden}#print-root .pr-card-p{padding-left:1.1em}#print-root .pr-tip{padding-left:1.1em;font-size:9.5pt;color:#333;font-style:italic}#print-root .pr-fig{float:right;width:34%;margin:0 0 4pt 8pt;-webkit-print-color-adjust:exact;print-color-adjust:exact}#print-root .rc-paper{font-size:10pt;line-height:1.45}#print-root .rc-paper .pr-head{margin-bottom:6pt;padding-bottom:4pt}#print-root .rc-paper .pr-fields{font-size:10pt}#print-root .rc-stats{display:grid;grid-template-columns:repeat(6,1fr);gap:4pt;margin-bottom:4pt}#print-root .rc-stat{border:.75pt solid #999;border-radius:4pt;padding:3pt 2pt;text-align:center;display:flex;flex-direction:column}#print-root .rc-stat b{font-size:13pt}#print-root .rc-stat span{font-size:9pt}#print-root .rc-stat small{font-size:8pt;color:#555}#print-root .rc-sec{break-inside:avoid;margin:0 0 4pt}#print-root .rc-sec h2{font-size:11pt;margin:6pt 0 3pt;border-bottom:.75pt solid #999}#print-root .rc-table{width:100%;border-collapse:collapse;font-size:9.5pt}#print-root .rc-table th,#print-root .rc-table td{border:.6pt solid #888;padding:1pt 4pt;text-align:center}#print-root .rc-table td:first-child{text-align:left;white-space:nowrap}#print-root .rc-barcell{width:26%}#print-root .rc-bar{height:7pt;background:#eee;border-radius:2pt;display:flex;overflow:hidden;-webkit-print-color-adjust:exact;print-color-adjust:exact}#print-root .rc-bar i{display:block;height:100%}#print-root .rc-bar i.ok{background:#2e9e5b}#print-root .rc-bar i.mid{background:#f0a43a}#print-root .rc-note{font-size:8pt;color:#666;margin-top:2pt}#print-root .rc-two{display:grid;grid-template-columns:1fr 1fr;gap:10pt}#print-root .rc-list{margin:0;padding-left:1.5em}#print-root .rc-list small{color:#555}#print-root .rc-advice li{margin-bottom:1pt}#print-root .rc-empty{margin:0;color:#666}#print-root .rc-tasks{font-size:9pt;margin-top:3pt}#print-root .rc-lines div{height:18pt;border-bottom:.6pt solid #999}#print-root .rc-sign{display:flex;justify-content:space-around;margin-top:8pt}}.task-code{font-size:13px;font-family:ui-monospace,Consolas,monospace;word-break:break-all;resize:vertical}.task-label{font-size:13px;margin:10px 0 4px}.task-world{margin:10px 0}.task-world .kp-heat{margin-top:4px}.task-kp{border:2px solid transparent;cursor:pointer;font:inherit;font-size:13px}.task-kp.on{background:#2bb673;color:#fff}.task-all{background:none;border:none;color:var(--primary-dark);font-size:13px;cursor:pointer;text-decoration:underline}.task-modal .modal-actions{align-items:center}.task-modal .modal-actions>.muted{flex-basis:100%;text-align:center;font-size:13px}.task-table th,.task-table td:not(.task-missing){white-space:nowrap}.task-missing{min-width:120px;font-size:13px}.task-tip{margin-top:12px;background:#fff8e1;color:#7a5b00;border-radius:10px;padding:8px 10px;font-size:14px}.task-rc{background:none;border:1px solid #cfe0d6;border-radius:999px;padding:2px 10px;font:inherit;font-size:13px;color:var(--primary-dark);cursor:pointer;white-space:nowrap}.task-books{gap:6px;flex-wrap:wrap;margin-top:10px;font-size:13px}.task-inbox{padding:10px 0;border-bottom:1px solid #eef3f0;gap:8px}.task-inbox:last-child{border-bottom:none}.task-due.soon{color:#b07800}.task-due.late{color:#d9534f}.task-late{color:#d9534f;font-size:12px}.nb-tools{gap:8px;margin-bottom:6px;flex-wrap:nowrap}.nb-search{flex:1;min-width:0;font:inherit;font-size:16px;padding:10px 14px;border-radius:12px;border:none}.nb-info{color:#ffffffd9;font-size:14px;margin:6px 0 10px}.nb-vol{color:#fff;margin:14px 0 6px}.nb-sec{padding:0;margin-bottom:10px;overflow:hidden}.nb-sec summary{display:flex;align-items:center;gap:10px;padding:12px 14px;cursor:pointer;list-style:none}.nb-sec summary::-webkit-details-marker{display:none}.nb-sec summary:after{content:"▸";color:var(--muted);font-size:18px;transition:transform .2s}.nb-sec[open] summary:after{transform:rotate(90deg)}.nb-sec[open] summary{border-bottom:1px solid #eef2ef}.nb-emoji{font-size:28px}.nb-title{flex:1;min-width:0;font-weight:700;font-size:17px}.nb-title small{display:block;font-weight:400;font-size:13px;color:var(--muted)}.nb-tags{display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end}.nb-body{padding:4px 16px 14px}.nb-intro{color:var(--muted);font-size:15px}.nb-card{padding:10px 0;border-bottom:1px dashed #e0e8e3}.nb-card h3{margin:4px 0;font-size:18px}.nb-card p{margin:4px 0;font-size:16px;line-height:1.65}.nb-card .svg-wrap{max-width:360px;margin:0 auto 6px}.nb-card mark,.nb-card .tip mark{background:#ffe066;color:inherit;border-radius:3px;padding:0 1px}.nb-acts{margin-top:12px;gap:10px;align-items:center;flex-wrap:wrap}.nb-acts .muted{font-size:13px}@media(max-width:520px){.nb-tags{flex-direction:column;align-items:flex-end}.nb-tools .btn{white-space:nowrap}.nb-tabs{gap:6px;flex-wrap:nowrap}.nb-tabs .tab{padding:6px 4px;font-size:13px;flex:1 1 0;min-width:0;white-space:nowrap}@media(max-width:340px){.nb-tabs .tab{font-size:12px}}}.kc-row{margin-top:8px}.kc-btn{font:inherit;font-size:13px;font-weight:700;background:#fff;color:var(--primary-dark);border:1.5px solid currentColor;border-radius:999px;padding:4px 12px;cursor:pointer;line-height:1.4}.kc-btn:hover{background:#eefaf3}.rp-weak .kc-btn{white-space:nowrap}.kc-modal{width:min(600px,100%)}.kc-modal .modal-body{text-align:left}.kc-src{font-size:13px;color:var(--muted);padding:4px 0 2px;border-bottom:1px solid #eef2ef}.kc-modal .nb-card:last-child{border-bottom:none}.nb-info{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 10px}.nb-info .nb-good{color:#9ff0c4}.nb-info .nb-weak{color:#ffd08a}.lec{--lec-fs: 26px;max-width:1400px}.lec-stage{flex:1;font-size:var(--lec-fs);line-height:1.6;padding:28px 36px}.lec-head{display:flex;gap:12px;align-items:center;margin-bottom:.3em}.lec-head .q-type{font-size:.6em;margin:0}.lec-kp{font-size:.6em}.lec-stem{font-weight:700;margin:0 0 .7em}.lec-blank-ans{color:var(--primary-dark);border-bottom:3px solid var(--primary);padding:0 .3em}.lec-stage .q-figure{max-width:min(640px,90%)}.lec-stage .q-table{font-size:.75em}.lec-opts{display:grid;grid-template-columns:1fr 1fr;gap:.45em .8em}.lec-opts.long{grid-template-columns:1fr}.lec-opts.judge{max-width:18em}.lec-opt{display:flex;gap:.5em;background:var(--panel-2);border:3px solid transparent;border-radius:14px;padding:.35em .6em;transition:all .25s}.lec-opts.judge .lec-opt{justify-content:center;font-weight:800}.lec-opt b{color:var(--primary-dark);flex:none}.lec-opt.correct{border-color:var(--primary);background:#d6f5e4;font-weight:700}.lec-opt.correct:after{content:"✓";margin-left:auto;color:var(--primary-dark);font-weight:800}.lec-opts.judge .lec-opt.correct:after{margin-left:.3em}.lec-opt.dim{opacity:.45}.lec-explain{margin-top:.8em;padding:.5em .8em;background:#fff8e1;border-left:6px solid var(--accent);border-radius:10px;font-size:.8em}.lec-explain p{margin:.3em 0 .5em}.lec-key{font-weight:800;color:var(--primary-dark)}.lec-sa-ref{font-weight:400;color:var(--text);margin:4px 0 6px;line-height:1.7}.lec-sa-points{font-weight:600;margin:0 0 6px;padding-left:1.6em;color:var(--text)}.lec-explain .kc-btn{font-size:15px}.lec-bar{position:sticky;bottom:0;display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:12px 0;background:linear-gradient(transparent,var(--bg) 30%)}.lec-tools{margin-left:auto;display:flex;gap:6px;flex-wrap:wrap}.lec-timer{font:inherit;font-size:22px;font-weight:800;min-width:4.2em;padding:6px 14px;border-radius:999px;border:0;background:#fff;color:var(--text);cursor:pointer}.lec-timer.urgent{background:var(--accent)}.lec-timer.over{background:var(--danger);color:#fff}.lec-timer.paused{opacity:.6}.lec-end-title{margin:0 0 .4em}.lec-list{margin:0;padding-left:1.6em;font-size:.7em}.lec-list li{margin:.35em 0}.lec-link{display:block;font:inherit;background:none;border:0;padding:0;color:var(--text);text-align:left;cursor:pointer;text-decoration:underline dotted}.lec-ans{margin-left:0;font-weight:700;color:var(--primary-dark)}.lec-roll{position:fixed;inset:0;z-index:200;background:#000000b3;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;cursor:pointer}.lec-roll-name{font-size:clamp(48px,12vw,140px);font-weight:800;text-shadow:0 4px 16px rgba(0,0,0,.5)}.lec-roll.done .lec-roll-name{color:var(--accent);animation:pop .4s}.lec-roll-tip{margin-top:12px;opacity:.7}@media(max-width:720px){.lec-stage{padding:16px;font-size:min(var(--lec-fs),20px)}.lec-opts{grid-template-columns:1fr}.lec-tools{margin-left:0}}.lec-media .q-figure{margin:0 auto .5em}.lec-media .q-figure svg{max-height:56vh}@media(min-width:900px){.lec-body.has-media{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:1em;align-items:start}}.lec-board{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 10px}.lec-grp{flex:1 1 120px;display:flex;align-items:stretch;background:#ffffff1f;border-radius:14px;overflow:hidden;transition:background .2s}.lec-grp.lead{background:#ffb70359}.lec-grp.bump .lec-grp-score{animation:pop .35s}.lec-grp-add{flex:1;display:flex;align-items:center;justify-content:space-between;gap:8px;font:inherit;color:#fff;background:none;border:0;padding:6px 12px;cursor:pointer}.lec-grp-add:hover{background:#ffffff1a}.lec-grp-name{font-size:15px;font-weight:700}.lec-grp-score{font-size:28px;line-height:1;display:inline-block}.lec-grp-sub{font:inherit;font-size:18px;color:#fff;background:#0000002e;border:0;width:34px;cursor:pointer}.lec-rank{display:flex;flex-direction:column;gap:6px;margin:0 0 .8em;font-size:.8em;max-width:22em}.lec-rank-row{display:grid;grid-template-columns:3.2em 1fr auto;align-items:center;padding:.2em .6em;border-radius:10px;background:var(--panel-2)}.lec-rank-row.win{background:#fff3cd;font-weight:800}.sld-src{font-size:.55em;font-weight:700;color:var(--primary-dark)}.sld-intro{font-size:.7em;color:var(--muted);margin:.2em 0 .4em}.sld-title{font-size:1.15em;margin:.1em 0 .4em}.sld-text{font-size:.9em}.sld-text p{margin:0 0 .45em}.sld-tip{margin-top:.6em;padding:.4em .7em;background:#fff8e1;border-left:6px solid var(--accent);border-radius:10px;font-size:.85em}.sld-svg .svg-wrap{max-width:100%}.sld-svg svg{max-height:58vh;width:100%}.sld-kps{margin-top:1em;font-size:.55em}.lec-cards-row{gap:6px;align-items:center;cursor:pointer;flex-wrap:wrap}.lec-cards-row input{width:20px;height:20px}@media(min-width:900px){.sld-body.has-svg{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.2em;align-items:start}}.lec-head .q-type.case{background:#e8f0fe;color:#1a4fa0}.lec-material{padding:.5em .8em;background:var(--panel-2);border-radius:12px;font-size:.72em;line-height:1.6}.lec-material p{margin:.2em 0 .4em}.lec-mat-h{font-weight:800;color:var(--primary-dark)}.lec-material .q-table{font-size:1em}.lec-case-q{margin-top:.6em}.lec-case-q .lec-opts{grid-template-columns:1fr}@media(min-width:900px){.lec-case{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:1.2em;align-items:start}.lec-material{position:sticky;top:8px;max-height:calc(100vh - 160px);overflow:auto}.lec-case-q{margin-top:0}}.cs-item{display:grid;grid-template-columns:1fr auto;grid-template-areas:"t s" "m s";gap:2px 10px;align-items:center;width:100%;text-align:left;padding:8px 12px;margin:4px 0;border:2px solid #e3ebe6;border-radius:12px;background:#fff;cursor:pointer;font:inherit;color:inherit}.cs-item:hover{border-color:var(--primary)}.cs-item.done{background:#f0faf3;border-color:#bfe5cb}.cs-item-t{grid-area:t;font-weight:700}.cs-item small{grid-area:m}.cs-item-s{grid-area:s;font-weight:700;color:var(--primary-dark);white-space:nowrap}
