:root{
  --bg:#070b17;
  --text:#f7f9ff;
  --muted:#9aacd3;
  --soft:#c8d5fb;
  --aqua:#63f5df;
  --violet:#a78cff;
  --gold:#ffd772;
  --green:#6cffb0;
  --red:#ff7582;
  --line:rgba(154,184,255,.18);
  --line2:rgba(99,245,223,.42);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",Arial,sans-serif;
}
*{box-sizing:border-box}
html,body{width:100%;min-height:100%;margin:0;background:var(--bg);color:var(--text)}
body{overflow-x:hidden}
button,input{font:inherit}button{border:0;color:inherit;cursor:pointer;background:none}button:disabled{opacity:.45;cursor:not-allowed}
.qzy-bg{position:fixed;inset:0;z-index:0;overflow:hidden;background:radial-gradient(circle at 18% 18%,rgba(63,245,223,.16),transparent 29%),radial-gradient(circle at 82% 14%,rgba(167,140,255,.18),transparent 31%),radial-gradient(circle at 50% 95%,rgba(255,215,114,.07),transparent 25%),linear-gradient(135deg,#06131d 0%,#080d1d 50%,#151437 100%)}
.qzy-bg:before{content:"";position:absolute;inset:-20%;background-image:radial-gradient(circle,rgba(255,255,255,.36) 0 1px,transparent 1.4px),radial-gradient(circle,rgba(99,245,223,.24) 0 .8px,transparent 1.2px);background-size:125px 125px,205px 205px;background-position:0 0,42px 68px;opacity:.24;transform:rotate(-8deg)}
.qzy-bg:after{content:"";position:absolute;inset:0;background:linear-gradient(116deg,transparent 0 46%,rgba(139,194,255,.07) 47%,transparent 53% 100%),radial-gradient(circle at center,transparent 0 54%,rgba(0,0,0,.36) 100%)}
.qzy-bg i{position:absolute;border-radius:999px;filter:blur(24px);opacity:.72;animation:float 8s ease-in-out infinite alternate;mix-blend-mode:screen}.qzy-bg i:nth-child(1){width:300px;height:300px;left:7%;top:18%;background:rgba(62,243,218,.14)}.qzy-bg i:nth-child(2){width:340px;height:340px;right:9%;top:9%;background:rgba(151,124,255,.16);animation-delay:1s}.qzy-bg i:nth-child(3){width:220px;height:220px;left:42%;bottom:6%;background:rgba(255,216,124,.08);animation-delay:.5s}@keyframes float{from{transform:translate3d(0,0,0) scale(1)}to{transform:translate3d(18px,-24px,0) scale(1.06)}}
.app{position:relative;z-index:1;min-height:100vh;padding:clamp(12px,2.6vw,32px);display:flex;align-items:center;justify-content:center}.test-shell{width:min(720px,100%);margin:auto}.brand-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 auto 18px}.brand-lockup{display:flex;align-items:center;gap:12px;min-width:0}.brand-logo{width:88px;flex:0 0 auto}.brand-logo img{display:block;width:100%}.brand-copy{min-width:0}.brand-copy b{display:block;font-size:17px;letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand-copy span{display:block;margin-top:3px;color:var(--muted);font-size:11px;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.top-icons{display:flex;gap:8px;flex:0 0 auto}.icon-btn{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.04);color:#e6eeff;transition:.16s}.icon-btn:hover{border-color:var(--line2);background:rgba(99,245,223,.08)}
.status{background:transparent;border:0;box-shadow:none;overflow:visible}.status-main{padding:0 0 16px;margin-bottom:16px;border-bottom:1px solid rgba(255,255,255,.09)}.progress-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#bfd0f5;font-size:13px;font-weight:800;margin-bottom:9px}.progress-meta span:first-child{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.progress-track{height:5px;background:rgba(255,255,255,.10);border-radius:999px;overflow:hidden}.progress-fill{height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,var(--aqua),var(--violet));box-shadow:0 0 16px rgba(99,245,223,.52);transition:width .32s}.phase-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px}.phase{display:flex;align-items:center;gap:9px;color:#d5e2ff;font-size:13px;font-weight:800;min-width:0}.phase i{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 16px var(--green);flex:0 0 auto}.timer{font-size:30px;font-weight:950;letter-spacing:.02em;text-shadow:0 0 18px rgba(147,199,255,.40)}
.main-panel{padding:clamp(12px,3.2vw,28px) 0 0;min-height:520px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;position:relative}.logo-large{width:176px;max-width:70%;margin:0 auto 22px}.logo-large img{display:block;width:100%;filter:drop-shadow(0 18px 38px rgba(0,0,0,.32))}.badge{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:30px;padding:5px 12px;border-radius:999px;background:rgba(99,245,223,.10);color:#c8fff6;font-weight:900;font-size:12px;letter-spacing:.04em}.badge:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--aqua);box-shadow:0 0 12px var(--aqua)}h1,h2,p{margin-top:0}.title-xl{font-size:clamp(34px,7vw,58px);line-height:1.08;margin:18px 0 14px;font-weight:950;letter-spacing:-.055em;background:linear-gradient(90deg,#fff 0%,#d3fbff 45%,#c7b7ff 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.title-lg{font-size:clamp(25px,4.8vw,38px);line-height:1.16;margin:16px 0 10px;font-weight:950;letter-spacing:-.038em}.copy{max-width:610px;margin:0 auto;color:#b6c5e9;line-height:1.78;font-size:16px}.copy strong{color:#fff}.action-row{display:flex;gap:12px;align-items:center;justify-content:center;flex-wrap:wrap;margin-top:28px}.primary-btn,.secondary-btn,.danger-btn,.answer-btn,.key-btn{min-height:46px;padding:0 23px;border-radius:12px;font-weight:950;letter-spacing:.02em;transition:.16s transform,.16s background,.16s border-color,.16s box-shadow}.primary-btn{background:linear-gradient(135deg,#5ef6df,#927fff);color:#061024;box-shadow:0 14px 40px rgba(99,245,223,.20)}.primary-btn:hover{transform:translateY(-1px);box-shadow:0 18px 48px rgba(99,245,223,.28)}.secondary-btn{border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.05);color:#edf4ff}.danger-btn{background:rgba(255,117,130,.11);border:1px solid rgba(255,117,130,.26);color:#ffd7dc}.secondary-btn:hover,.answer-btn:hover,.key-btn:hover{border-color:var(--line2);background:rgba(99,245,223,.07)}
.rule-list{width:min(590px,100%);display:grid;gap:10px;margin:24px auto 0}.rule{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:flex-start;text-align:left;padding:6px 0}.rule em{width:28px;height:28px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;background:rgba(99,245,223,.10);color:#bffff7;font-style:normal;font-weight:950}.rule b{display:block;color:#fff;font-size:15px}.rule span{display:block;margin-top:4px;color:#9db0d9;line-height:1.6;font-size:13px}.chips{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px;margin:12px 0 22px}.chip{min-height:auto;padding:0;color:#d4e0ff;font-size:13px;font-weight:850}.chip:before{content:"";display:inline-block;width:4px;height:4px;margin:0 7px 2px 0;border-radius:50%;background:rgba(255,255,255,.4)}.chip.good{color:#bcfff1}.chip.bad{color:#ffd2d8}.notice{min-height:36px;margin:16px auto 0;padding:8px 0;color:#d6e2ff;font-weight:850;display:flex;align-items:center;justify-content:center}.notice.ok{color:#bffff7}.notice.err{color:#ffd0d6}.hidden{display:none!important}
.odd-grid{width:min(560px,100%);display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(8px,2.2vw,16px);margin:8px auto 0}.odd-cell{aspect-ratio:1;border-radius:10px;border:1px solid transparent;background:transparent;display:grid;place-items:center;transition:.16s transform,.16s border-color,.16s background,.16s filter}.odd-cell svg{width:78%;height:78%;overflow:visible;filter:drop-shadow(0 0 12px rgba(99,245,223,.08))}.odd-cell:hover{transform:translateY(-2px);border-color:rgba(99,245,223,.22);background:rgba(255,255,255,.025)}.odd-cell.correct-flash{border-color:rgba(108,255,176,.72);background:rgba(108,255,176,.06)}.odd-cell.wrong-flash{border-color:rgba(255,117,130,.7);background:rgba(255,117,130,.06)}
.memory-show{width:min(560px,100%);min-height:155px;display:flex;align-items:center;justify-content:center;border-top:1px solid rgba(99,245,223,.24);border-bottom:1px solid rgba(167,140,255,.18);background:linear-gradient(135deg,rgba(34,58,74,.34),rgba(44,38,61,.22));margin:8px auto 18px}.sequence-digits{display:flex;align-items:center;justify-content:center;gap:clamp(8px,2.5vw,18px);flex-wrap:nowrap;width:100%;padding:18px;overflow:hidden}.sequence-digits span{font-size:clamp(34px,8vw,58px);font-weight:950;line-height:1;color:#fff;text-shadow:0 0 20px rgba(99,245,223,.25)}.memory-input{width:min(560px,100%);min-height:56px;display:flex;align-items:center;justify-content:center;gap:clamp(6px,1.8vw,10px);flex-wrap:nowrap;overflow:hidden;margin:0 auto 14px;padding:6px 0;border-top:1px solid rgba(255,255,255,.10);border-bottom:1px solid rgba(255,255,255,.10)}.digit-slot{width:clamp(34px,9vw,54px);height:clamp(42px,10vw,58px);display:grid;place-items:center;flex:0 1 auto;border-radius:8px;background:rgba(255,255,255,.05);font-size:clamp(22px,5vw,32px);font-weight:950;color:#f7fbff}.digit-slot.empty:before{content:"";width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.78);display:block}.keypad{width:min(560px,100%);display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:0 auto}.key-btn{min-height:52px;padding:0 12px;border-radius:10px;border:1px solid rgba(255,255,255,.11);background:rgba(255,255,255,.052);font-size:22px;color:#f7fbff}.key-btn.confirm{background:linear-gradient(135deg,rgba(99,245,223,.24),rgba(167,140,255,.24));border-color:rgba(99,245,223,.40)}.key-btn.back{font-size:15px;color:#cbd8fa}
.compare-wrap{width:min(600px,100%);display:grid;grid-template-columns:1.15fr .85fr;gap:18px;margin:4px auto 16px}.svg-panel{min-height:230px;border:0;border-top:1px solid rgba(255,255,255,.10);border-bottom:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.018);display:flex;align-items:center;justify-content:center;position:relative;padding:16px}.svg-panel:before{content:attr(data-label);position:absolute;left:6px;top:10px;color:#8fa3d0;font-size:12px;font-weight:850}.svg-panel svg{width:90%;height:90%;max-height:190px;overflow:visible}.answer-row{width:min(560px,100%);display:grid;grid-template-columns:1fr 1fr;gap:12px}.answer-btn{min-height:54px;border-radius:10px;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.052);color:#f2f6ff;font-size:19px}.answer-btn.primary-answer{color:#bffff5}.answer-btn.secondary-answer{color:#d7cfff}
.result-grid{width:min(580px,100%);display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:26px auto 0}.result-item{padding:15px 12px;border-top:1px solid rgba(255,255,255,.10);border-bottom:1px solid rgba(255,255,255,.08)}.result-item b{display:block;font-size:28px}.result-item span{display:block;color:#93a7d1;font-size:12px;margin-top:4px}.report-list{width:min(620px,100%);display:grid;gap:0;margin:24px auto 0}.report-row{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.09);text-align:left}.report-row em{font-style:normal;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:rgba(99,245,223,.10);color:#bffff5;font-weight:950}.report-row b{display:block;color:#fff}.report-row span{display:block;color:#94a8d2;font-size:13px;margin-top:4px}.score{font-size:22px;font-weight:950;color:var(--gold)}
@media (max-width:720px){.app{align-items:stretch;padding:12px;min-height:100svh}.test-shell{display:flex;flex-direction:column;min-height:calc(100svh - 24px)}.brand-head{margin-bottom:12px}.brand-logo{width:74px}.brand-copy b{font-size:15px}.brand-copy span{font-size:10px}.icon-btn{width:36px;height:36px;border-radius:10px}.status{flex:1;display:flex;flex-direction:column}.status-main{padding-bottom:12px;margin-bottom:8px}.main-panel{flex:1;min-height:0;padding:16px 0 22px}.timer{font-size:25px}.title-xl{font-size:38px}.title-lg{font-size:27px}.copy{font-size:14px;line-height:1.72}.odd-grid{gap:8px}.compare-wrap{grid-template-columns:1fr;gap:12px}.svg-panel{min-height:170px}.answer-row{gap:10px}.answer-btn{min-height:52px}.result-grid{grid-template-columns:1fr}.report-row{grid-template-columns:auto 1fr}.score{grid-column:2/3;font-size:18px}.rule-list{gap:9px}.logo-large{width:156px}.phase-row{gap:8px}.phase{font-size:12px}.badge{font-size:11px}.chips{gap:9px;margin-bottom:18px}}
@media (max-width:390px){.brand-copy span{display:none}.brand-logo{width:66px}.title-xl{font-size:34px}.keypad{gap:8px}.key-btn{min-height:48px}.memory-input{gap:5px}.digit-slot{width:34px;height:44px;font-size:22px}.odd-grid{gap:6px}.svg-panel{min-height:150px}.brand-copy b{max-width:170px}}
/* v4: harder numeric memory, cleaner visual discrimination */
.memory-show.hard{min-height:170px;background:linear-gradient(135deg,rgba(19,39,57,.34),rgba(31,25,51,.18));border-top:1px solid rgba(99,245,223,.20);border-bottom:1px solid rgba(167,140,255,.16)}
.sequence-focus{display:grid;place-items:center;gap:4px;min-width:130px}
.sequence-focus small{color:#93a9d8;font-size:13px;font-weight:900;letter-spacing:.08em}
.sequence-focus b{font-size:clamp(58px,12vw,88px);line-height:1;font-weight:950;color:#fff;text-shadow:0 0 26px rgba(99,245,223,.32)}
.memory-lane{position:absolute;left:50%;bottom:18px;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;gap:9px}
.memory-lane i{width:8px;height:8px;border-radius:99px;background:rgba(255,255,255,.18)}
.memory-lane i.passed{background:rgba(99,245,223,.52)}
.memory-lane i.active{width:22px;background:linear-gradient(90deg,var(--aqua),var(--violet));box-shadow:0 0 14px rgba(99,245,223,.35)}
.noise-row{display:flex;align-items:center;justify-content:center;gap:clamp(6px,1.6vw,12px);flex-wrap:nowrap;width:100%;padding:20px;overflow:hidden;filter:blur(.15px)}
.noise-row span{font-size:clamp(28px,6vw,48px);font-weight:950;color:rgba(255,255,255,.34);transform:translateY(var(--dy,0)) rotate(var(--r,0deg))}.noise-row span:nth-child(2n){color:rgba(99,245,223,.28)}.noise-row span:nth-child(3n){color:rgba(167,140,255,.32)}
.compare-wrap .svg-panel svg g{mix-blend-mode:screen}.svg-panel svg{filter:drop-shadow(0 0 10px rgba(99,245,223,.06))}
@media (max-width:720px){.memory-show.hard{min-height:145px}.memory-lane{bottom:14px}.sequence-focus b{font-size:58px}.noise-row span{font-size:28px}}
/* v5: customer-facing intro copy only; no discussion/process text on screen */
.purpose-block{width:min(620px,100%);margin:24px auto 0;text-align:center;padding:0;border:0;background:transparent}
.purpose-block b{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:5px 12px;border-radius:999px;background:rgba(99,245,223,.10);color:#c8fff6;font-size:13px;font-weight:950;letter-spacing:.04em}
.purpose-block p{margin:15px auto 0;color:#b6c5e9;line-height:1.85;font-size:16px;max-width:620px}
@media (max-width:720px){.purpose-block{margin-top:18px}.purpose-block p{font-size:14px;line-height:1.75}}

/* batch2: modules 4-8, keep interface deep, simple, and non-nested */
.sequence-board{width:min(520px,100%);display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:10px auto 0;border-top:1px solid rgba(99,245,223,.18);border-bottom:1px solid rgba(167,140,255,.14);padding:14px 0}
.seq-cell{aspect-ratio:1;border-radius:8px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.018);display:grid;place-items:center;font-size:clamp(18px,4.8vw,30px);font-weight:950;color:#eaf2ff;transition:.16s transform,.16s border-color,.16s background,.16s box-shadow}.seq-cell:not(:disabled):hover{transform:translateY(-1px);border-color:rgba(99,245,223,.35);background:rgba(99,245,223,.055)}.seq-cell.lit{border-color:rgba(99,245,223,.66);background:radial-gradient(circle,rgba(99,245,223,.22),rgba(99,245,223,.04));box-shadow:0 0 28px rgba(99,245,223,.18);color:#fff}.seq-cell.chosen{border-color:rgba(167,140,255,.35);background:rgba(167,140,255,.08);color:#cfc4ff}.demo-board{max-width:360px}.demo-board .seq-cell{pointer-events:none}
.box-grid{width:min(520px,100%);display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:10px auto 0;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08);padding:14px 0}.box-grid.wide{grid-template-columns:repeat(4,1fr)}.box-cell{aspect-ratio:1;border-radius:8px;border:1px solid rgba(255,255,255,.09);background:linear-gradient(135deg,rgba(255,255,255,.045),rgba(255,255,255,.012));display:grid;place-items:center;font-size:clamp(16px,4vw,24px);font-weight:950;color:#aebfe7;transition:.16s transform,.16s border-color,.16s background}.box-cell:not(:disabled):hover{transform:translateY(-1px);border-color:rgba(99,245,223,.35);background:rgba(99,245,223,.055)}.box-cell.opened{border-color:rgba(255,255,255,.14);background:rgba(255,255,255,.035);color:#8fa2cd}.box-cell.target{border-color:rgba(99,245,223,.65);background:rgba(99,245,223,.10);color:#cafff6;box-shadow:0 0 28px rgba(99,245,223,.16)}.demo-boxes{max-width:360px}.demo-boxes .box-cell{pointer-events:none}
.scene-board{width:min(560px,100%);height:320px;margin:10px auto 0;position:relative;border-top:1px solid rgba(99,245,223,.18);border-bottom:1px solid rgba(167,140,255,.14);background:radial-gradient(circle at 22% 28%,rgba(99,245,223,.10),transparent 25%),radial-gradient(circle at 80% 70%,rgba(167,140,255,.10),transparent 28%),rgba(255,255,255,.012);overflow:hidden}.scene-board:before{content:"";position:absolute;inset:18px 12px;background:linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px);background-size:25% 25%;opacity:.34}.scene-item,.scene-hit{position:absolute;transform:translate(-50%,-50%);z-index:1}.scene-item{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.11);color:#fff;font-size:22px;font-weight:950;box-shadow:0 0 22px rgba(99,245,223,.08)}.scene-hit{width:48px;height:48px;border-radius:50%;border:1px solid rgba(99,245,223,.22);background:rgba(99,245,223,.04);transition:.16s transform,.16s border-color,.16s background}.scene-hit:hover{transform:translate(-50%,-50%) scale(1.08);border-color:rgba(99,245,223,.58);background:rgba(99,245,223,.12)}.target-object{display:inline-grid;place-items:center;width:40px;height:40px;margin-left:6px;border-radius:50%;background:rgba(99,245,223,.11);border:1px solid rgba(99,245,223,.28);font-size:22px}.demo-scene{height:220px;max-width:420px}.demo-scene .scene-item{pointer-events:none}
.target-strip{width:min(560px,100%);display:flex;align-items:center;justify-content:center;gap:10px;margin:10px auto 18px;border-top:1px solid rgba(255,255,255,.08);padding-top:16px}.target-strip i,.target-slot{width:clamp(44px,11vw,64px);height:clamp(44px,11vw,64px);display:grid;place-items:center;border-radius:8px;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.04);font-style:normal;font-weight:950;color:#dbe7ff}.block-row{width:min(560px,100%);display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;margin:0 auto}.color-token{width:clamp(52px,13vw,70px);height:clamp(48px,12vw,62px);padding:0;border-radius:8px;border:1px solid rgba(255,255,255,.12);font-size:18px;font-weight:950;color:#061024;transition:.16s transform,.16s filter,.16s opacity}.color-token:hover{transform:translateY(-1px)}.color-token.selected{outline:2px solid rgba(255,255,255,.78);box-shadow:0 0 24px rgba(255,255,255,.16)}.color-token.used{opacity:.25;filter:grayscale(.5)}.token-cyan{background:linear-gradient(135deg,#5ef6df,#82f8ff)!important}.token-violet{background:linear-gradient(135deg,#9b84ff,#d3bdff)!important}.token-gold{background:linear-gradient(135deg,#ffd76e,#fff1a8)!important}.token-green{background:linear-gradient(135deg,#6cffb0,#c4ffcf)!important}.token-red{background:linear-gradient(135deg,#ff7a88,#ffc0c8)!important}.target-slot.filled{color:#061024}.action-row.compact{margin-top:18px}.plan-demo{width:min(520px,100%);margin:16px auto 0}.plan-demo .target-strip{margin-bottom:14px}.plan-demo .target-strip i{color:#dbe7ff}.plan-demo .color-token{pointer-events:none}
.attention-wrap{width:min(600px,100%);display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:8px auto 18px}.attention-wrap>div{min-height:250px;display:flex;align-items:center;justify-content:center;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.014)}.attention-wrap svg{width:88%;height:88%;max-height:210px;overflow:visible;filter:drop-shadow(0 0 10px rgba(99,245,223,.06))}.demo-attn{max-width:460px}.demo-attn>div{min-height:190px}
@media (max-width:720px){.sequence-board,.box-grid{gap:8px;padding:12px 0}.scene-board{height:260px}.scene-item{width:38px;height:38px;font-size:19px}.scene-hit{width:42px;height:42px}.attention-wrap{grid-template-columns:1fr;gap:12px}.attention-wrap>div{min-height:170px}.attention-wrap svg{max-height:150px}.target-strip{gap:8px}.block-row{gap:8px}.box-grid.wide{grid-template-columns:repeat(4,1fr)}}
@media (max-width:390px){.sequence-board,.box-grid{gap:6px}.scene-board{height:230px}.target-strip i,.target-slot{width:42px;height:42px}.color-token{width:48px;height:46px;font-size:16px}.box-cell{border-radius:7px}.seq-cell{border-radius:7px}}

/* v4: 第5题改为“先观察线索，再回忆目标位置”，避免纯盲猜 */
.box-cell.ghost{opacity:.16;pointer-events:none;background:transparent;border-color:rgba(255,255,255,.035);box-shadow:none;color:transparent}
.box-cell.clue{border-color:rgba(148,166,214,.20);background:linear-gradient(135deg,rgba(255,255,255,.065),rgba(255,255,255,.018));color:#d9e5ff}
.box-cell.clue:not(:disabled){cursor:pointer}
.box-cell.clue:not(:disabled):hover{border-color:rgba(99,245,223,.55);background:rgba(99,245,223,.08);transform:translateY(-1px)}
.box-cell.target{border-color:rgba(99,245,223,.70);background:radial-gradient(circle at 50% 42%,rgba(99,245,223,.20),rgba(99,245,223,.055));color:#cffff8;box-shadow:0 0 26px rgba(99,245,223,.16)}
.box-cell.wrong-pick{border-color:rgba(255,119,134,.75);background:rgba(255,119,134,.08);color:#ffd0d6}

/* v5: 第6题场景记忆压缩版面，避免文字/目标提示重叠，手机端尽量一屏完成 */
.scene-title{margin-top:8px;margin-bottom:6px}
.scene-recall{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:0}
.scene-copy{margin-bottom:4px;line-height:1.55}
.scene-target-line{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;margin:0 auto 8px;color:#c4d3f8;font-size:16px;font-weight:850;line-height:1.2}
.scene-target-line strong{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:rgba(99,245,223,.12);border:1px solid rgba(99,245,223,.32);color:#fff;font-size:22px;line-height:1;box-shadow:0 0 22px rgba(99,245,223,.10)}
.scene-recall .chips{margin:6px 0 10px;gap:8px}
.scene-board.scene-compact{height:290px;margin-top:0}
.scene-notice{min-height:30px;margin-top:8px;padding:4px 0;font-size:14px;line-height:1.45}
.scene-board.scene-compact .scene-item{white-space:nowrap;line-height:1}
@media (max-width:720px){
  .brand-head{margin-bottom:8px}.brand-logo{width:62px}.brand-copy b{font-size:14px}.icon-btn{width:34px;height:34px}
  .status-main{padding-bottom:8px;margin-bottom:5px}.progress-meta{font-size:12px;margin-bottom:7px}.phase-row{margin-top:9px}.timer{font-size:24px}
  .main-panel{padding:8px 0 8px}.scene-title{font-size:24px;line-height:1.15;margin:5px 0 5px}.scene-copy{font-size:13px;line-height:1.45;margin-bottom:2px;max-width:330px}.scene-target-line{font-size:13px;gap:7px;margin-bottom:5px}.scene-target-line strong{width:34px;height:34px;font-size:19px}
  .scene-recall .chips{margin:3px 0 7px;gap:6px}.scene-recall .chip{font-size:12px}.scene-board.scene-compact{height:calc(100svh - 315px);min-height:220px;max-height:270px}.scene-board.scene-compact:before{inset:12px;background-size:33.333% 33.333%;opacity:.25}
  .scene-board.scene-compact .scene-item{width:32px;height:32px;font-size:16px}.scene-board.scene-compact .scene-hit{width:36px;height:36px}.scene-notice{min-height:24px;margin-top:5px;padding:2px 0;font-size:12px;line-height:1.35}
}
@media (max-width:390px){
  .scene-board.scene-compact{height:calc(100svh - 300px);min-height:205px;max-height:250px}.scene-title{font-size:22px}.scene-copy{font-size:12.5px}.scene-target-line{font-size:12.5px}.scene-target-line strong{width:32px;height:32px;font-size:18px}.scene-board.scene-compact .scene-item{width:30px;height:30px;font-size:15px}.scene-board.scene-compact .scene-hit{width:34px;height:34px}
}

/* v6: 12题完整版，一屏优先，继续保持深色简洁正式风格 */
.main-panel{min-height:auto;justify-content:flex-start;padding-top:10px}
.title-lg.compact-title{margin-top:8px;margin-bottom:6px;font-size:clamp(24px,4.4vw,34px)}
.copy.compact-copy{font-size:14px;line-height:1.55;max-width:560px}
.odd-grid{width:min(480px,100%);gap:10px}.odd-cell{border-radius:8px}
.compare-wrap{width:min(520px,100%);gap:12px}.svg-panel{min-height:190px}.answer-row{margin-top:10px}.chips{margin:8px 0 14px}.notice{margin-top:8px;min-height:28px;padding:4px 0}.memory-show{min-height:130px}.sequence-focus b{font-size:clamp(44px,9vw,72px)}.keypad{gap:7px}.key-btn{min-height:44px}.sequence-board{width:min(440px,100%);gap:8px;padding:10px 0}.box-grid{width:min(440px,100%);gap:8px;padding:10px 0}.scene-board.scene-compact{height:260px}.target-strip{margin-top:6px;margin-bottom:12px;padding-top:12px}.block-row{gap:8px}.action-row.compact{margin-top:12px}.attention-wrap{width:min(520px,100%);grid-template-columns:1fr 1fr;gap:12px;margin:4px auto 12px}.attention-wrap>div{min-height:200px}.attention-wrap svg{max-height:170px}
.pair-wrap{width:min(520px,100%);display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:6px auto 12px}.pair-wrap>div{height:230px;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.012)}.pair-wrap svg{width:88%;height:88%;max-height:190px;overflow:visible;filter:drop-shadow(0 0 10px rgba(99,245,223,.08))}.demo-pair{max-width:440px}.demo-pair>div{height:180px}
.grammar-board{width:min(520px,100%);margin:6px auto 12px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-top:1px solid rgba(99,245,223,.16);border-bottom:1px solid rgba(167,140,255,.14);padding:12px 0;background:rgba(255,255,255,.012)}.grammar-statement{font-size:clamp(20px,4.6vw,30px);font-weight:950;line-height:1.25;margin:0 auto 10px;color:#fff;text-shadow:0 0 18px rgba(99,245,223,.12)}.grammar-svg{width:min(310px,78vw);height:210px;overflow:visible}.demo-grammar .grammar-svg{height:170px}
.stroop-word{font-size:clamp(58px,12vw,96px);font-weight:950;line-height:1;margin:16px auto 20px;letter-spacing:.02em;text-shadow:0 0 24px currentColor}.color-choice-row{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;margin:0 auto 12px}.color-choice{min-width:92px;height:46px;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.05);font-weight:950}.color-choice:hover{border-color:rgba(99,245,223,.44);background:rgba(99,245,223,.07)}.color-choice.color-green{color:#63f5df}.color-choice.color-purple{color:#a78cff}.color-choice.color-yellow{color:#ffd772}.color-choice.color-red{color:#ff7582}.stroop-demo b{display:block;font-size:72px;line-height:1;margin:20px auto;text-shadow:0 0 24px currentColor}
.spatial-grid{width:min(440px,100%);display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:8px auto 10px;border-top:1px solid rgba(99,245,223,.16);border-bottom:1px solid rgba(167,140,255,.14);padding:10px 0}.spatial-grid.cols-4{grid-template-columns:repeat(4,1fr)}.spatial-cell{aspect-ratio:1;border-radius:8px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.018);display:grid;place-items:center;font-size:clamp(20px,5vw,32px);font-weight:950;color:#fff;transition:.16s transform,.16s border-color,.16s background}.spatial-cell.lit{border-color:rgba(99,245,223,.68);background:radial-gradient(circle,rgba(99,245,223,.24),rgba(99,245,223,.04));color:#eafffb;box-shadow:0 0 24px rgba(99,245,223,.14)}.spatial-cell.chosen{border-color:rgba(167,140,255,.45);background:rgba(167,140,255,.10);color:#cfc4ff}.spatial-cell:not(:disabled):hover{transform:translateY(-1px);border-color:rgba(99,245,223,.40);background:rgba(99,245,223,.055)}.demo-spatial{max-width:310px}.demo-spatial .spatial-cell{pointer-events:none}
@media (max-width:720px){
  .app{padding:10px 12px;align-items:flex-start}.test-shell{width:100%}.brand-head{margin-bottom:6px}.brand-logo{width:58px}.brand-copy b{font-size:13px}.brand-copy span{font-size:9px}.icon-btn{width:32px;height:32px;border-radius:10px}.status-main{padding-bottom:7px;margin-bottom:4px}.progress-meta{font-size:12px;margin-bottom:6px}.phase-row{margin-top:7px}.timer{font-size:23px}.main-panel{padding-top:6px}.badge{min-height:26px;padding:4px 10px;font-size:11px}.title-xl{font-size:36px;margin:12px 0 8px}.title-lg,.title-lg.compact-title{font-size:24px;line-height:1.12;margin:8px 0 5px}.copy,.copy.compact-copy{font-size:13px;line-height:1.45;max-width:340px}.chips{margin:6px 0 8px;gap:5px}.chip{font-size:11px}.chip:before{margin-right:5px}.notice{font-size:12px;line-height:1.35;min-height:22px;margin-top:5px}.action-row{margin-top:16px;gap:8px}.primary-btn,.secondary-btn,.answer-btn{min-height:40px;padding:0 16px;border-radius:10px}.answer-row{gap:8px;margin-top:6px}.odd-grid{width:min(330px,100%);gap:6px}.memory-show{min-height:105px;margin:4px auto 8px}.memory-input{min-height:48px;margin-bottom:8px}.keypad{gap:6px}.key-btn{min-height:38px;font-size:18px}.compare-wrap{grid-template-columns:1.08fr .92fr;gap:8px;margin-bottom:8px}.svg-panel{min-height:150px}.sequence-board,.box-grid,.spatial-grid{width:min(330px,100%);gap:6px;padding:8px 0}.seq-cell,.box-cell,.spatial-cell{border-radius:7px}.box-grid.wide,.spatial-grid.cols-4{grid-template-columns:repeat(4,1fr);width:min(340px,100%)}.scene-board.scene-compact{height:calc(100svh - 300px);min-height:205px;max-height:245px}.target-strip{gap:6px;margin:5px auto 8px;padding-top:8px}.target-slot,.target-strip i{width:42px;height:42px}.color-token{width:46px;height:42px;font-size:15px}.attention-wrap{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px}.attention-wrap>div{min-height:135px}.attention-wrap svg{max-height:118px}.pair-wrap{gap:8px;margin:4px auto 8px}.pair-wrap>div{height:142px}.pair-wrap svg{max-height:122px}.grammar-board{padding:8px 0;margin:4px auto 8px}.grammar-statement{font-size:19px;margin-bottom:6px}.grammar-svg{height:150px;width:min(260px,76vw)}.stroop-word{font-size:62px;margin:10px auto 14px}.color-choice-row{gap:7px}.color-choice{min-width:70px;height:38px;border-radius:9px;font-size:14px}.spatial-grid{max-width:330px}.spatial-grid.cols-4{max-width:340px}.logo-large{width:126px;margin-bottom:14px}.report-list{max-height:44vh;overflow:auto}
}
@media (max-width:390px){
  .brand-logo{width:54px}.brand-copy b{max-width:188px}.title-lg,.title-lg.compact-title{font-size:22px}.copy,.copy.compact-copy{font-size:12.5px}.odd-grid{width:min(306px,100%)}.compare-wrap{gap:6px}.svg-panel{min-height:132px}.sequence-board,.box-grid,.spatial-grid{width:min(306px,100%)}.box-grid.wide,.spatial-grid.cols-4{width:min(318px,100%)}.attention-wrap>div{min-height:122px}.attention-wrap svg{max-height:106px}.pair-wrap>div{height:126px}.grammar-svg{height:132px}.stroop-word{font-size:56px}.color-choice{min-width:64px;height:36px}.scene-board.scene-compact{height:calc(100svh - 288px);min-height:190px;max-height:230px}
}

/* v2: 顶部空间压缩 + 全题型一屏优先 + 数字记忆重叠修复 */
html,body{height:100%;min-height:100%;}
body{overflow-x:hidden;}
.app{
  min-height:100svh;
  align-items:flex-start;
  justify-content:center;
  padding-top:clamp(10px,1.5vw,20px);
  padding-bottom:clamp(8px,1.2vw,16px);
}
.test-shell{
  margin:0 auto;
  width:min(720px,100%);
}
.brand-head{
  margin-bottom:8px;
}
.brand-logo{width:76px;}
.brand-copy b{font-size:16px;}
.brand-copy span{font-size:10px;}
.icon-btn{width:34px;height:34px;border-radius:10px;}
.status-main{
  padding-bottom:8px;
  margin-bottom:4px;
}
.progress-meta{font-size:12px;margin-bottom:6px;}
.phase-row{margin-top:8px;}
.timer{font-size:26px;}
.main-panel{
  padding-top:8px;
  min-height:0;
}
.badge{min-height:27px;padding:4px 11px;font-size:11px;}
.title-lg,.title-lg.compact-title{
  margin:8px 0 6px;
  font-size:clamp(24px,3.5vw,34px);
  line-height:1.12;
}
.copy,.copy.compact-copy{
  font-size:14px;
  line-height:1.45;
  max-width:560px;
}
.chips{margin:6px 0 10px;gap:7px;}
.chip{font-size:12px;}
.notice{margin-top:6px;min-height:24px;padding:3px 0;font-size:13px;line-height:1.35;}
.action-row{margin-top:16px;}
.odd-grid{width:min(430px,100%);gap:8px;}
.compare-wrap{width:min(500px,100%);gap:10px;margin-bottom:8px;}
.svg-panel{min-height:168px;}
.answer-row{margin-top:8px;}
.answer-btn,.primary-btn,.secondary-btn,.danger-btn{min-height:42px;border-radius:10px;padding:0 18px;}

/* 数字记忆：进度点必须固定在数字展示区内部，不能飘到提示文字上 */
.memory-show,
.memory-show.hard{
  position:relative;
  overflow:hidden;
  min-height:118px;
  margin:4px auto 8px;
  padding:12px 0 28px;
}
.sequence-focus{gap:2px;}
.sequence-focus small{font-size:12px;}
.sequence-focus b{font-size:clamp(46px,7vw,68px);}
.memory-lane{
  position:absolute;
  left:50%;
  bottom:12px;
  transform:translateX(-50%);
  z-index:2;
}
.memory-input{min-height:46px;margin-bottom:8px;}
.digit-slot{height:44px;border-radius:7px;font-size:24px;}
.keypad{gap:6px;width:min(430px,100%);}
.key-btn{min-height:38px;border-radius:9px;font-size:18px;}
.key-btn.back{font-size:13px;}

/* 其他题型统一压缩纵向空间，尽量一屏完成 */
.sequence-board,
.box-grid,
.spatial-grid{
  width:min(410px,100%);
  gap:7px;
  padding:8px 0;
  margin-top:4px;
  margin-bottom:6px;
}
.seq-cell,.box-cell,.spatial-cell{border-radius:7px;}
.scene-board.scene-compact{
  height:min(245px,calc(100svh - 300px));
  min-height:190px;
  max-height:245px;
}
.target-strip{margin:4px auto 8px;padding-top:8px;gap:6px;}
.target-slot,.target-strip i{width:40px;height:40px;border-radius:7px;}
.block-row{gap:7px;}
.color-token{width:46px;height:40px;border-radius:7px;font-size:15px;}
.attention-wrap{width:min(500px,100%);grid-template-columns:1fr 1fr;gap:8px;margin:4px auto 8px;}
.attention-wrap>div{min-height:150px;}
.attention-wrap svg{max-height:130px;}
.pair-wrap{width:min(500px,100%);gap:8px;margin:4px auto 8px;}
.pair-wrap>div{height:170px;}
.pair-wrap svg{max-height:145px;}
.grammar-board{padding:8px 0;margin:4px auto 8px;width:min(500px,100%);}
.grammar-statement{font-size:clamp(19px,3vw,26px);margin-bottom:6px;}
.grammar-svg{height:158px;width:min(280px,76vw);}
.stroop-word{font-size:clamp(56px,9vw,82px);margin:10px auto 14px;}
.color-choice-row{gap:7px;margin-bottom:8px;}
.color-choice{min-width:76px;height:38px;border-radius:8px;font-size:14px;}
.spatial-grid.cols-4,.box-grid.wide{width:min(420px,100%);}
.report-list{max-height:52vh;overflow:auto;}

@media (max-width:720px){
  .app{padding:8px 12px;min-height:100svh;align-items:flex-start;}
  .test-shell{min-height:auto;margin:0 auto;}
  .brand-head{margin-bottom:5px;}
  .brand-logo{width:52px;}
  .brand-copy b{font-size:13px;max-width:205px;}
  .brand-copy span{font-size:8px;max-width:230px;}
  .icon-btn{width:31px;height:31px;border-radius:9px;}
  .status-main{padding-bottom:6px;margin-bottom:3px;}
  .progress-meta{font-size:11.5px;margin-bottom:5px;}
  .progress-track{height:4px;}
  .phase-row{margin-top:6px;}
  .phase{font-size:11.5px;gap:7px;}
  .timer{font-size:22px;}
  .main-panel{padding-top:5px;padding-bottom:4px;}
  .badge{min-height:24px;padding:3px 9px;font-size:10.5px;}
  .title-xl{font-size:34px;margin:8px 0 6px;}
  .title-lg,.title-lg.compact-title{font-size:23px;margin:6px 0 4px;line-height:1.1;}
  .copy,.copy.compact-copy{font-size:12.5px;line-height:1.35;max-width:338px;}
  .chips{margin:4px 0 6px;gap:4px;}
  .chip{font-size:10.8px;}
  .chip:before{margin-right:4px;}
  .notice{font-size:11.5px;min-height:20px;margin-top:3px;padding:1px 0;}
  .action-row{margin-top:12px;gap:7px;}
  .primary-btn,.secondary-btn,.danger-btn,.answer-btn{min-height:38px;padding:0 14px;border-radius:9px;font-size:14px;}
  .odd-grid{width:min(300px,100%);gap:5px;}
  .compare-wrap{grid-template-columns:1.05fr .95fr;width:min(330px,100%);gap:6px;margin:2px auto 6px;}
  .svg-panel{min-height:126px;}
  .answer-row{gap:7px;margin-top:4px;}
  .memory-show,.memory-show.hard{min-height:92px;margin:2px auto 5px;padding:8px 0 24px;}
  .sequence-focus small{font-size:11px;}
  .sequence-focus b{font-size:52px;}
  .memory-lane{bottom:9px;gap:6px;}
  .memory-lane i{width:7px;height:7px;}
  .memory-lane i.active{width:18px;}
  .memory-input{min-height:42px;margin-bottom:5px;gap:4px;}
  .digit-slot{width:32px;height:38px;font-size:20px;border-radius:6px;}
  .keypad{width:min(310px,100%);gap:5px;}
  .key-btn{min-height:34px;font-size:16px;border-radius:8px;}
  .sequence-board,.box-grid,.spatial-grid{width:min(300px,100%);gap:5px;padding:5px 0;margin-top:2px;margin-bottom:4px;}
  .box-grid.wide,.spatial-grid.cols-4{width:min(312px,100%);}
  .scene-title{font-size:21px;margin:3px 0;}
  .scene-copy{font-size:12px;line-height:1.28;margin-bottom:1px;}
  .scene-target-line{font-size:12px;margin-bottom:3px;}
  .scene-target-line strong{width:30px;height:30px;font-size:17px;}
  .scene-recall .chips{margin:2px 0 4px;}
  .scene-board.scene-compact{height:calc(100svh - 265px);min-height:174px;max-height:218px;}
  .scene-board.scene-compact .scene-item{width:28px;height:28px;font-size:14px;}
  .scene-board.scene-compact .scene-hit{width:31px;height:31px;}
  .target-strip{gap:5px;margin:3px auto 5px;padding-top:5px;}
  .target-slot,.target-strip i{width:36px;height:36px;font-size:13px;}
  .block-row{gap:5px;}
  .color-token{width:42px;height:36px;font-size:13px;}
  .attention-wrap{width:min(330px,100%);gap:5px;margin:2px auto 5px;}
  .attention-wrap>div{min-height:112px;}
  .attention-wrap svg{max-height:100px;}
  .pair-wrap{width:min(330px,100%);gap:5px;margin:2px auto 5px;}
  .pair-wrap>div{height:118px;}
  .pair-wrap svg{max-height:104px;}
  .grammar-board{padding:5px 0;margin:2px auto 5px;width:min(330px,100%);}
  .grammar-statement{font-size:18px;margin-bottom:4px;}
  .grammar-svg{height:122px;width:min(240px,72vw);}
  .stroop-word{font-size:54px;margin:6px auto 8px;}
  .color-choice-row{gap:5px;margin-bottom:5px;}
  .color-choice{min-width:62px;height:34px;font-size:13px;border-radius:7px;}
  .logo-large{width:112px;margin-bottom:10px;}
  .purpose-block{margin-top:12px;}
  .purpose-block p{font-size:13px;line-height:1.45;margin-top:10px;}
  .report-list{max-height:42vh;}
}

@media (max-width:390px){
  .brand-logo{width:48px;}
  .brand-copy b{font-size:12px;max-width:176px;}
  .brand-copy span{display:none;}
  .title-lg,.title-lg.compact-title{font-size:21px;}
  .copy,.copy.compact-copy{font-size:12px;max-width:312px;}
  .odd-grid{width:min(286px,100%);}
  .compare-wrap{width:min(306px,100%);}
  .svg-panel{min-height:112px;}
  .sequence-board,.box-grid,.spatial-grid{width:min(286px,100%);}
  .box-grid.wide,.spatial-grid.cols-4{width:min(304px,100%);}
  .attention-wrap{width:min(306px,100%);}
  .attention-wrap>div{min-height:102px;}
  .attention-wrap svg{max-height:92px;}
  .pair-wrap{width:min(306px,100%);}
  .pair-wrap>div{height:108px;}
  .pair-wrap svg{max-height:96px;}
  .grammar-board{width:min(306px,100%);}
  .grammar-svg{height:112px;}
  .stroop-word{font-size:48px;}
  .scene-board.scene-compact{height:calc(100svh - 254px);min-height:160px;max-height:205px;}
}

/* v3: 重新按参考流程优化题型逻辑、间距、报告样式 */
.test-shell{width:min(760px,100%)}
.main-panel{justify-content:flex-start;padding-top:18px;min-height:0}
.title-lg,.title-lg.compact-title{margin:12px 0 8px}
.copy,.copy.compact-copy{line-height:1.62}
.chips{margin:10px 0 16px}
.answer-row{margin-top:18px;gap:14px}
.notice{margin-top:12px}.action-row.compact{margin-top:16px}

/* 第5题：目标与干扰更明确 */
.box-grid{max-width:460px}.box-cell{font-size:26px;font-weight:950;color:#eaf5ff;min-height:0;position:relative;overflow:hidden}
.box-cell.clue{border-color:rgba(255,215,114,.26);background:rgba(255,215,114,.055)}
.box-cell.target{border-color:rgba(255,117,130,.72);background:radial-gradient(circle,rgba(255,117,130,.30),rgba(255,117,130,.08));color:#fff}
.box-cell.decoy{border-color:rgba(99,245,223,.48);background:rgba(99,245,223,.08);color:#cafff7}
.box-cell.opened{border-color:rgba(108,255,176,.58);background:rgba(108,255,176,.10);color:#caffdd}
.box-cell.wrong-pick{border-color:rgba(255,117,130,.80);background:rgba(255,117,130,.14);color:#ffd6db}
.box-cell.ghost{opacity:.32}

/* 第6题：用简单实物图标增加生动感 */
.scene-board{background:radial-gradient(circle at 50% 52%,rgba(99,245,223,.10),transparent 58%),linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.01));border-top:1px solid rgba(99,245,223,.20);border-bottom:1px solid rgba(167,140,255,.16)}
.scene-item{display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);box-shadow:0 10px 26px rgba(0,0,0,.18),0 0 20px rgba(99,245,223,.10)}
.scene-target-line strong{background:rgba(255,255,255,.08);border:1px solid rgba(99,245,223,.24);border-radius:50%}

/* 第7题：目标依据清晰化 */
.plan-board{width:min(560px,100%);margin:4px auto 0;padding:10px 0 4px;border-top:1px solid rgba(255,255,255,.09);border-bottom:1px solid rgba(255,255,255,.07)}
.plan-targets{gap:10px;margin:0 auto 14px;padding-top:0}
.plan-target{position:relative;background:rgba(255,255,255,.025);border-width:2px;color:#fff;display:grid;place-items:center;padding:0}
.plan-target small{position:absolute;left:6px;top:3px;font-size:10px;color:rgba(255,255,255,.46)}
.plan-target span{font-weight:950;font-size:18px}.plan-target.filled{color:#08111f;border-color:transparent}.plan-actions{margin-top:18px}
.token-border-cyan{border-color:#63f5df}.token-border-violet{border-color:#a78cff}.token-border-gold{border-color:#ffd772}.token-border-green{border-color:#6cffb0}.token-border-red{border-color:#ff7582}

/* 第8题：图标比对更大，和第9题区分 */
.attention-icons{width:min(610px,100%);gap:18px;margin:8px auto 14px}.attention-icons>div{min-height:210px;background:rgba(255,255,255,.025);border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}.attention-icons svg{width:96%;max-height:190px;overflow:visible}

/* 第9题：旋转叠层判断，不再与第8题重复 */
.mental-board{width:min(420px,100%);height:240px;margin:8px auto 18px;display:grid;place-items:center;border-top:1px solid rgba(255,255,255,.09);border-bottom:1px solid rgba(255,255,255,.08);background:radial-gradient(circle at 50% 50%,rgba(99,245,223,.10),transparent 60%)}
.mental-board svg{width:88%;height:88%;overflow:visible}.mental-board .base-layer{opacity:.86}.mental-board .rotate-layer{opacity:.58;mix-blend-mode:screen}

/* 报告：指数评估，不显示单题明细 */
.report-page{width:min(760px,100%);text-align:left;margin:0 auto;padding-bottom:20px}.brain-hero{min-height:230px;border-radius:0;background:linear-gradient(135deg,#63cdbb 0%,#11b19e 58%,#08796e 100%);position:relative;overflow:hidden;padding:32px 34px;color:#fff;display:flex;align-items:flex-start;justify-content:space-between;box-shadow:0 12px 40px rgba(0,0,0,.22)}
.brain-hero:before,.brain-hero:after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.12)}.brain-hero:before{width:520px;height:520px;left:-220px;bottom:-350px}.brain-hero:after{width:420px;height:420px;left:260px;bottom:-310px;background:rgba(0,88,80,.16)}
.brain-hero-text{position:relative;z-index:1}.brain-hero-text span{display:block;font-size:28px;font-weight:900}.brain-hero-text strong{display:block;margin-top:12px;font-size:44px;line-height:1.12;font-weight:950}.brain-hero-text em{display:block;margin-top:14px;font-size:24px;font-style:normal;font-weight:850}.brain-hero-figure{position:relative;z-index:1;font-size:92px;filter:drop-shadow(0 8px 18px rgba(0,0,0,.22))}.report-time{text-align:center;color:#071122;background:#fff;padding:10px 0;font-size:16px}.risk-list{background:#fff;color:#263248;padding:4px 20px 0}.risk-row{display:grid;grid-template-columns:42px 1fr;gap:12px;padding:21px 0;border-bottom:1px solid #dbe1ec}.risk-icon{font-size:25px;line-height:1.2}.risk-head{display:flex;justify-content:space-between;gap:14px;align-items:center}.risk-head b{font-size:18px;color:#182336}.risk-head span{font-weight:950;white-space:nowrap}.risk-main p{margin:9px 0 0;color:#526070;line-height:1.7}.risk-warns{text-align:right;margin-top:4px;letter-spacing:3px}.risk-warns i{font-style:normal;color:#9da4ad}.risk-warns i.risk-low{color:#d6a600}.risk-warns i.risk-mid{color:#ff7a1a}.risk-warns i.risk-high{color:#ff4d5f}.risk-none{color:#0d1726}.risk-low{color:#9f7800}.risk-mid{color:#bf5700}.risk-high{color:#d7263d}
.strength-card{margin-top:22px;background:#fff;color:#202d3f;box-shadow:0 8px 24px rgba(0,0,0,.14)}.strength-title{background:#0fb29f;color:#fff;font-size:22px;font-weight:950;padding:18px 26px}.strength-card>p{margin:0;padding:20px 26px;color:#202d3f}.value-card{margin:0 20px 20px;border:1px solid #dce3ec}.people-pyramid{min-height:170px;display:flex;align-items:center;justify-content:center}.pyramid{width:150px;display:flex;flex-wrap:wrap-reverse;justify-content:center;gap:5px}.pyramid i{font-style:normal;color:#11e91f;font-size:18px}.pyramid i.top{color:#093b0d}.value-card{display:grid;grid-template-columns:1fr 1fr;align-items:center}.value-score{text-align:center}.value-score b{display:block;font-size:58px;color:#0fb29f}.value-score span{font-size:16px;line-height:1.55}.value-score em{color:#ff4d5f;font-style:normal}.report-disclaimer{color:#8ea0c9;text-align:center;font-size:12px;line-height:1.6;margin:18px auto 0}

@media (max-width:720px){
  .main-panel{padding-top:10px}.title-lg,.title-lg.compact-title{margin:9px 0 6px}.copy,.copy.compact-copy{line-height:1.45}.chips{margin:6px 0 10px}.answer-row{margin-top:12px}.notice{margin-top:8px}
  .box-grid{width:min(320px,100%)}.box-grid.wide{width:min(336px,100%)}.box-cell{font-size:20px}
  .plan-board{padding-top:8px}.plan-targets{gap:7px;margin-bottom:10px}.plan-target span{font-size:15px}.plan-actions{margin-top:12px}
  .attention-icons{width:min(350px,100%);gap:8px;margin:4px auto 10px}.attention-icons>div{min-height:138px}.attention-icons svg{max-height:126px}
  .mental-board{width:min(330px,100%);height:172px;margin:4px auto 12px}.mental-board svg{width:90%;height:90%}
  .brain-hero{min-height:180px;padding:22px 20px}.brain-hero-text span{font-size:20px}.brain-hero-text strong{font-size:31px}.brain-hero-text em{font-size:18px}.brain-hero-figure{font-size:58px}.report-time{font-size:14px}.risk-list{padding:0 14px}.risk-row{grid-template-columns:34px 1fr;padding:16px 0}.risk-head b{font-size:15px}.risk-main p{font-size:13px;line-height:1.55}.risk-warns{letter-spacing:1px}.strength-title{font-size:17px;padding:14px 18px}.strength-card>p{font-size:13px;padding:16px 18px}.value-card{grid-template-columns:1fr;margin:0 14px 16px}.people-pyramid{min-height:120px}.value-score{padding:0 0 16px}.value-score b{font-size:42px}
}

/* selective patch: only improve click accuracy and requested question-specific details */
button,[data-action]{touch-action:manipulation;-webkit-tap-highlight-color:rgba(99,245,223,.16);position:relative}
button>*,[data-action]>*{pointer-events:none}
.answer-row,.action-row,.keypad,.block-row,.target-strip,.sequence-board,.box-grid,.spatial-grid{position:relative;z-index:5}
.seq-cell{border-color:rgba(180,205,255,.22);background:rgba(255,255,255,.026);box-shadow:inset 0 0 0 1px rgba(255,255,255,.035)}
.seq-cell:not(:disabled){cursor:pointer}
.box-cell.target{font-size:clamp(20px,5vw,30px);color:#ffffff}
.box-cell.decoy{font-size:clamp(18px,4.5vw,26px)}
.scene-board.scene-compact .scene-item{width:42px;height:42px;font-size:23px;background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.24);box-shadow:0 10px 28px rgba(0,0,0,.22),0 0 22px rgba(99,245,223,.12)}
.plan-targets.previewing .target-slot{box-shadow:0 0 18px rgba(255,255,255,.08)}
.plan-targets.answering .target-slot{border-style:dashed;border-color:rgba(190,210,255,.26)}
.flex-answer-row{margin-top:22px}
@media (max-width:720px){.scene-board.scene-compact .scene-item{width:34px;height:34px;font-size:18px}.flex-answer-row{margin-top:16px}}

/* targeted_fix_20260623: 仅修复点名问题 + 全局点击准确性 */
[data-action]{touch-action:manipulation;-webkit-tap-highlight-color:rgba(99,245,223,.18);cursor:pointer;position:relative;}
.answer-btn,.primary-btn,.secondary-btn,.key-btn,.color-choice,.box-cell,.scene-hit,.color-token,.target-slot,.seq-cell,.spatial-cell{touch-action:manipulation;user-select:none;-webkit-user-select:none;}
.answer-btn::after,.primary-btn::after,.secondary-btn::after,.box-cell::after,.scene-hit::after,.color-token::after,.target-slot::after{content:"";position:absolute;inset:-6px;}
.answer-row{position:relative;z-index:5;}

/* 第5题：候选格点击更稳，目标/干扰更清晰 */
.box-cell.clue{border-width:2px;min-height:64px;}
.box-cell:not(:disabled){cursor:pointer;}
.box-cell.target{box-shadow:0 0 0 2px rgba(255,255,255,.08) inset,0 0 28px rgba(255,117,130,.18);}
.box-cell.decoy{box-shadow:0 0 0 1px rgba(99,245,223,.16) inset;}

/* 第6题：物品和回忆点击圈更清晰，透明底提高到约 40% */
.scene-item{background:rgba(255,255,255,.40)!important;border-color:rgba(255,255,255,.42)!important;color:#061024;text-shadow:0 1px 0 rgba(255,255,255,.2);box-shadow:0 0 18px rgba(255,255,255,.12),0 8px 20px rgba(0,0,0,.22)!important;}
.scene-hit{background:rgba(99,245,223,.40)!important;border:2px solid rgba(210,255,248,.72)!important;box-shadow:0 0 18px rgba(99,245,223,.24);}
.scene-hit::before{content:"";width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.92);box-shadow:0 0 10px rgba(255,255,255,.35);display:block;margin:auto;}

/* 第7题：相邻交换策划题样式，不改变其他题整体风格 */
.plan-swap-board{max-width:620px;}
.plan-label{font-size:13px;color:#93a7d4;font-weight:900;margin:4px 0 6px;letter-spacing:.06em;}
.plan-current-row .color-token{display:grid;grid-template-rows:auto 1fr;place-items:center;gap:2px;min-width:54px;}
.plan-current-row .color-token small{font-size:10px;color:rgba(6,16,36,.65);font-weight:950;}
.plan-current-row .color-token span{font-size:18px;font-weight:950;}

/* 第9题：按钮和图形保持距离，答题后旋转合并展示 */
.flex-answer-row{margin-top:26px;}
.mental-board{margin-bottom:24px;}
.mental-board.reviewing .base-layer{opacity:.85;}
.mental-board.reviewing .rotate-layer{opacity:.62;mix-blend-mode:screen;transition:transform .2s ease;}

/* 第10题：复杂语法题保持图形可读 */
.grammar-svg{height:230px;}
.grammar-statement{max-width:92%;line-height:1.35;}

@media (max-width:720px){
  .answer-btn::after,.primary-btn::after,.secondary-btn::after,.box-cell::after,.scene-hit::after,.color-token::after,.target-slot::after{inset:-8px;}
  .box-cell.clue{min-height:54px;}
  .scene-item{width:40px!important;height:40px!important;font-size:21px!important;}
  .scene-hit{width:42px!important;height:42px!important;}
  .flex-answer-row{margin-top:22px!important;}
  .mental-board{margin-bottom:22px!important;}
  .grammar-svg{height:170px;}
}

/* targeted_fix_v2: 只处理本轮点名问题，不改未提到题型和整体风格 */
/* 全局点击：避免 pointerup + click 双触发，同时不阻断连续点击不同目标 */
.answer-btn,.primary-btn,.secondary-btn,.key-btn,.color-choice,.box-cell,.scene-hit,.scene-item.recall-hit,.plan-frame,.tray-cell,.color-token,.target-slot,.seq-cell,.spatial-cell{touch-action:manipulation;user-select:none;-webkit-user-select:none;}

/* 第5题：后段难度提升后，格子保持清晰可点 */
.box-grid.wide{grid-template-columns:repeat(4,1fr);}
.box-cell.clue{border-width:2px;background:rgba(255,255,255,.035);}
.box-cell.target{background:rgba(255,215,114,.12);border-color:rgba(255,215,114,.55);}
.box-cell.decoy{background:rgba(99,245,223,.08);border-color:rgba(99,245,223,.28);}

/* 第6题：回忆阶段使用和记忆阶段同一中心点、同一尺寸，避免跑偏；物品底透明度约40% */
.scene-board.scene-compact .scene-item{background:rgba(255,255,255,.40)!important;border-color:rgba(255,255,255,.46)!important;box-shadow:0 10px 28px rgba(0,0,0,.24),0 0 24px rgba(99,245,223,.16)!important;color:#081024;}
.scene-board.scene-compact .recall-hit{display:grid!important;place-items:center!important;color:transparent!important;background:rgba(99,245,223,.40)!important;border:2px solid rgba(220,255,250,.78)!important;}
.scene-board.scene-compact .recall-hit span{display:block;width:10px;height:10px;border-radius:50%;background:#fff;box-shadow:0 0 12px rgba(255,255,255,.55);}
.scene-board.scene-compact .recall-hit::before{display:none!important;}

/* 第7题：参考站“色块移入/移出，匹配边框颜色”的策划模式 */
.plan-frame-board{width:min(620px,100%);}
.plan-frame-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;width:min(420px,100%);margin:0 auto 12px;}
.plan-frame-grid.wide{grid-template-columns:repeat(3,1fr);width:min(480px,100%);}
.plan-frame{position:relative;min-height:66px;border-radius:13px;background:rgba(255,255,255,.025);display:grid;place-items:center;padding:6px;border:1px solid rgba(255,255,255,.08);}
.plan-frame .frame-border{position:absolute;inset:5px;border:2px solid rgba(255,255,255,.25);border-radius:10px;pointer-events:none;}
.plan-frame small{position:absolute;left:8px;top:4px;font-size:10px;color:rgba(221,232,255,.66);z-index:1;}
.plan-frame em,.tray-cell em{font-style:normal;color:rgba(220,232,255,.48);font-size:12px;font-weight:800;z-index:1;}
.plan-frame .color-token,.tray-cell .color-token{position:relative;z-index:2;width:46px;height:38px;display:grid;place-items:center;border-radius:8px;box-shadow:0 8px 18px rgba(0,0,0,.18);}
.plan-frame.selected,.tray-cell.selected{outline:2px solid rgba(255,255,255,.85);box-shadow:0 0 24px rgba(255,255,255,.18);}
.plan-tray{display:flex;align-items:center;justify-content:center;gap:10px;margin:6px auto 0;}
.tray-cell{position:relative;width:56px;height:46px;border-radius:10px;border:1px dashed rgba(190,210,255,.28);background:rgba(255,255,255,.025);display:grid;place-items:center;}

/* 第8题：后段增加干扰后，图标区域略增大，方便辨认 */
.attention-icons>div{min-height:218px;}
.attention-icons svg{max-height:198px;}

/* 第9题：左右分开展示，答题后再合并展示，避免按钮与图形重叠 */
.flex-compare-wrap{width:min(610px,100%);display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:8px auto 18px;}
.flex-compare-wrap>div{height:220px;display:grid;place-items:center;border-top:1px solid rgba(255,255,255,.09);border-bottom:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.018);}
.flex-compare-wrap svg{width:88%;height:88%;overflow:visible;}
.mental-board.reviewing{margin-bottom:18px;}
.mental-board.reviewing svg{width:86%;height:86%;}
.flex-answer-row{margin-top:18px!important;}

/* 第10题：增加复合语义后保持可读性 */
.grammar-statement{max-width:min(620px,94%);line-height:1.35;}

@media (max-width:720px){
  .box-cell.clue{min-height:54px;}
  .scene-board.scene-compact .scene-item,.scene-board.scene-compact .recall-hit{width:40px!important;height:40px!important;font-size:21px!important;}
  .plan-frame-grid,.plan-frame-grid.wide{width:min(330px,100%);gap:7px;}
  .plan-frame{min-height:58px;border-radius:10px;}
  .plan-frame .color-token,.tray-cell .color-token{width:40px;height:34px;font-size:14px;}
  .tray-cell{width:48px;height:40px;}
  .attention-icons>div{min-height:145px;}
  .attention-icons svg{max-height:132px;}
  .flex-compare-wrap{width:min(340px,100%);gap:8px;margin:4px auto 12px;}
  .flex-compare-wrap>div{height:150px;}
  .mental-board.reviewing{height:170px;margin-bottom:12px;}
}


/* targeted-fix-v3: 全局点击准确性，防止 SVG 内部元素抢点击 */
[data-action]{touch-action:manipulation;-webkit-tap-highlight-color:transparent;cursor:pointer;}
[data-action] svg,[data-action] svg *{pointer-events:none;}
.answer-btn,.primary-btn,.secondary-btn,.box-cell,.seq-cell,.spatial-cell,.plan-target,.plan-spare{position:relative;z-index:2;}

/* 第6题彻底修复：记忆与回忆共用同一种定位锚点 */
.scene-board.scene-compact{position:relative;overflow:hidden;}
.scene-pin{position:absolute;left:calc(var(--x) * 1%);top:calc(var(--y) * 1%);transform:translate(-50%,-50%);width:52px;height:52px;border-radius:50%;display:grid;place-items:center;z-index:2;padding:0;box-sizing:border-box;}
.scene-memory-pin{background:rgba(255,255,255,.40);border:1px solid rgba(255,255,255,.54);box-shadow:0 10px 28px rgba(0,0,0,.28),0 0 24px rgba(99,245,223,.16);font-size:25px;}
.scene-memory-pin span{filter:saturate(1.18) contrast(1.08) drop-shadow(0 1px 5px rgba(0,0,0,.36));}
.scene-answer-pin{background:rgba(99,245,223,.40);border:2px solid rgba(220,255,250,.82);box-shadow:0 0 24px rgba(99,245,223,.18);}
.scene-answer-pin span{display:block;width:10px;height:10px;border-radius:50%;background:#fff;box-shadow:0 0 12px rgba(255,255,255,.7);}

/* 第7题：参考站式“色块移入/移出匹配边框”，去掉冗余文字，降低混乱感 */
.plan-clean-board{width:min(620px,100%);margin:0 auto;}
.plan-hint{margin:8px auto 10px;color:#cfdafa;font-size:13px;font-weight:850;text-align:center;}
.plan-hint.spare{margin-top:14px;}
.plan-target-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;width:min(450px,100%);margin:0 auto;}
.plan-target-grid.wide{grid-template-columns:repeat(3,1fr);width:min(520px,100%);}
.plan-target{position:relative;min-height:74px;border-radius:14px;background:rgba(255,255,255,.026);border:1px solid rgba(255,255,255,.10);display:grid;place-items:center;padding:7px;}
.plan-target .plan-border{position:absolute;inset:7px;border:3px solid rgba(255,255,255,.25);border-radius:11px;pointer-events:none;}
.plan-target.matched{background:rgba(99,245,223,.045);}
.plan-target.selected,.plan-spare.selected{outline:2px solid rgba(99,245,223,.8);box-shadow:0 0 0 4px rgba(99,245,223,.10);}
.plan-target em,.plan-spare em{font-style:normal;color:#7f91bf;font-weight:850;font-size:13px;}
.plan-spare-row{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:0 auto;}
.plan-spare{width:72px;height:58px;border-radius:13px;border:1px dashed rgba(190,210,255,.32);background:rgba(255,255,255,.026);display:grid;place-items:center;}
.plan-target .color-token,.plan-spare .color-token{width:52px;height:44px;border-radius:10px;font-size:16px;}

/* 第8题：提高后段难度后扩大识别区 */
.attention-icons>div{min-height:228px;}
.attention-icons svg{max-height:208px;}

/* 第9题：保持图形区和按钮区分离，答题后合并对比更清晰 */
.flex-compare-wrap{width:min(560px,100%);display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:8px auto 28px;}
.flex-compare-wrap>div{height:205px;display:grid;place-items:center;border-top:1px solid rgba(255,255,255,.09);border-bottom:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.014);}
.flex-compare-wrap svg{width:82%;height:82%;overflow:visible;}
.mental-board.reviewing{height:230px;margin:8px auto 26px;}
.mental-board.reviewing svg{width:82%;height:82%;overflow:visible;}
.flex-answer-row{margin-top:0!important;}

@media (max-width:720px){
  .scene-pin{width:42px;height:42px;font-size:21px;}
  .scene-memory-pin{font-size:21px;}
  .plan-target-grid,.plan-target-grid.wide{width:min(338px,100%);gap:8px;}
  .plan-target{min-height:62px;border-radius:11px;}
  .plan-target .plan-border{inset:6px;border-width:2px;}
  .plan-spare{width:54px;height:44px;}
  .plan-target .color-token,.plan-spare .color-token{width:42px;height:34px;font-size:14px;}
  .attention-icons>div{min-height:160px;}
  .attention-icons svg{max-height:148px;}
  .flex-compare-wrap{width:min(340px,100%);gap:10px;margin:4px auto 18px;}
  .flex-compare-wrap>div{height:146px;}
  .mental-board.reviewing{height:170px;margin-bottom:18px;}
}


/* selective patch: q6 same bright base as recall phase */
.scene-memory-pin{
  background:rgba(99,245,223,.40)!important;
  border:2px solid rgba(220,255,250,.82)!important;
  box-shadow:0 0 24px rgba(99,245,223,.18),0 10px 28px rgba(0,0,0,.26)!important;
}
.scene-memory-pin span{
  filter:brightness(1.22) saturate(1.5) contrast(1.16) drop-shadow(0 2px 7px rgba(0,0,0,.42));
}

/* q7 redesigned as reference-like stack planning */
.plan-demo-stack{width:min(620px,100%);margin:16px auto 0;}
.plan-sort-board{width:min(660px,100%);margin:14px auto 10px;display:flex;justify-content:center;align-items:flex-end;gap:16px;flex-wrap:nowrap;padding:8px 0 6px;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08);}
.plan-stack-col{position:relative;width:78px;height:190px;padding:0;background:transparent;border:0;display:flex;align-items:flex-end;justify-content:center;}
.plan-well{position:absolute;left:0;right:0;bottom:0;height:136px;border-left:6px solid rgba(255,255,255,.28);border-right:6px solid rgba(255,255,255,.28);border-bottom:6px solid rgba(255,255,255,.28);border-radius:0 0 16px 16px;box-shadow:0 0 0 1px rgba(255,255,255,.04) inset;}
.plan-stack-col.target-cyan .plan-well{border-color:#18a8ff;}
.plan-stack-col.target-green .plan-well{border-color:#15d45d;}
.plan-stack-col.target-gold .plan-well{border-color:#f0d400;}
.plan-stack-col.target-violet .plan-well{border-color:#d874ff;}
.plan-stack-col.target-red .plan-well{border-color:#ff2323;}
.plan-stack-col.spare-col .plan-well{border-color:rgba(255,255,255,.78);opacity:.95;}
.plan-stack-col.selected .plan-well{box-shadow:0 0 0 2px rgba(255,255,255,.18) inset,0 0 18px rgba(99,245,223,.16);}
.plan-stack{position:absolute;left:50%;bottom:6px;transform:translateX(-50%);width:54px;height:124px;}
.plan-block{position:absolute;left:0;bottom:calc(var(--slot) * 38px);width:54px;height:34px;border-radius:7px;box-shadow:0 6px 16px rgba(0,0,0,.24);}
.plan-stack-col.selected .plan-block:last-child{box-shadow:0 0 0 2px rgba(255,255,255,.86),0 8px 18px rgba(99,245,223,.22);}
.token-cyan{background:#18a8ff!important;}
.token-violet{background:#bf21d2!important;}
.token-gold{background:#f4df00!important;}
.token-green{background:#17d714!important;}
.token-red{background:#ef1010!important;}
.token-white{background:#f5f5f5!important;}
.plan-actions{margin-top:14px;}

@media (max-width:720px){
  .plan-sort-board{gap:9px;width:min(340px,100%);}
  .plan-stack-col{width:42px;height:144px;}
  .plan-well{height:104px;border-left-width:4px;border-right-width:4px;border-bottom-width:4px;border-radius:0 0 11px 11px;}
  .plan-stack{width:30px;height:94px;}
  .plan-block{width:30px;height:26px;bottom:calc(var(--slot) * 28px);border-radius:5px;}
}


/* preview jump selector */
.preview-list{display:grid;max-height:42vh;overflow:auto;padding-right:4px;}
.preview-row{width:100%;background:transparent;color:inherit;border:0;cursor:pointer;touch-action:manipulation;user-select:none;-webkit-user-select:none;}
.preview-row:hover{background:rgba(99,245,223,.045);border-radius:12px;}
.preview-row:active{background:rgba(99,245,223,.08);}
.preview-row .score{font-size:18px;color:#bffff5;}
@media (max-width:720px){
  .preview-list{max-height:38vh;}
  .preview-row{padding:10px 0;}
}


/* q7 reference-style per-slot color frames; no auto-switch before confirm/time */
.plan-reference-board,.plan-demo-board{
  position:relative;
  width:min(660px,100%);
  height:260px;
  margin:16px auto 14px;
  border-top:1px solid rgba(255,255,255,.08);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.plan-demo-board{height:230px;transform:scale(.92);transform-origin:center top;margin-bottom:0;}
.plan-ref-cell{
  position:absolute;
  left:calc(var(--px) * 96px + 14px);
  top:calc(var(--py) * 72px + 18px);
  width:82px;
  height:68px;
  padding:0;
  background:transparent;
  border:0;
  z-index:2;
}
.plan-ref-frame{
  position:absolute;
  inset:0;
  border-left:7px solid currentColor;
  border-right:7px solid currentColor;
  border-bottom:7px solid currentColor;
  border-top:0;
  border-radius:0 0 13px 13px;
  opacity:.98;
  box-shadow:0 0 12px rgba(255,255,255,.04);
}
.plan-ref-block{
  position:absolute;
  left:50%;
  bottom:10px;
  transform:translateX(-50%);
  width:54px;
  height:44px;
  border-radius:9px;
  box-shadow:0 8px 16px rgba(0,0,0,.26);
}
.plan-ref-cell.selected .plan-ref-block{
  outline:3px solid rgba(255,255,255,.9);
  box-shadow:0 0 0 4px rgba(99,245,223,.18),0 10px 18px rgba(0,0,0,.25);
}
.plan-ref-cell.target-blue{color:#0b67a8}.plan-ref-cell.target-cyan{color:#18a8ff}.plan-ref-cell.target-green{color:#00c715}.plan-ref-cell.target-gold{color:#ffe100}.plan-ref-cell.target-violet{color:#d573ff}.plan-ref-cell.target-red{color:#e90012}
.token-blue{background:#0b67a8!important}.token-cyan{background:#18a8ff!important}.token-green{background:#00d90b!important}.token-gold{background:#ffe100!important}.token-violet{background:#d573ff!important}.token-red{background:#e90012!important}
.plan-ref-cell.empty .plan-ref-frame{opacity:.92}
.plan-ref-cell:hover .plan-ref-frame{filter:brightness(1.18)}
.plan-ref-cell::after{content:"";position:absolute;inset:-10px;}
@media (max-width:720px){
  .plan-reference-board,.plan-demo-board{width:min(342px,100%);height:170px;margin:8px auto 8px;}
  .plan-ref-cell{left:calc(var(--px) * 52px + 2px);top:calc(var(--py) * 45px + 8px);width:47px;height:42px;}
  .plan-ref-frame{border-left-width:4px;border-right-width:4px;border-bottom-width:4px;border-radius:0 0 9px 9px;}
  .plan-ref-block{width:30px;height:26px;border-radius:6px;bottom:6px;}
}


/* q7 column-container logic fix: continuous vertical containers, no horizontal separators */
.plan-column-board{
  position:relative;
  width:min(690px,100%);
  height:255px;
  margin:16px auto 14px;
  display:flex;
  justify-content:center;
  align-items:flex-end;
  gap:14px;
  padding:16px 0 14px;
  border-top:1px solid rgba(255,255,255,.08);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.plan-column-board.demo{height:225px;transform:scale(.94);transform-origin:center top;margin-bottom:0;}
.plan-col{
  position:relative;
  width:88px;
  height:205px;
  padding:0;
  border:0;
  background:transparent;
  touch-action:manipulation;
  user-select:none;
  -webkit-user-select:none;
}
.plan-col::after{content:"";position:absolute;inset:-8px;}
.plan-col-frame{
  position:absolute;
  left:7px;
  right:7px;
  bottom:0;
  height:145px;
  border-left:7px solid currentColor;
  border-right:7px solid currentColor;
  border-bottom:7px solid currentColor;
  border-top:0;
  border-radius:0 0 16px 16px;
  box-shadow:0 0 10px rgba(255,255,255,.04);
}
.plan-stack-box{
  position:absolute;
  left:50%;
  bottom:9px;
  transform:translateX(-50%);
  width:58px;
  height:132px;
  pointer-events:none;
}
.plan-stack-block{
  position:absolute;
  left:0;
  bottom:calc(var(--level) * 43px);
  width:58px;
  height:38px;
  border-radius:8px;
  box-shadow:0 7px 16px rgba(0,0,0,.28);
}
.plan-col.selected .plan-stack-block:last-child{
  outline:3px solid rgba(255,255,255,.92);
  box-shadow:0 0 0 4px rgba(99,245,223,.18),0 10px 18px rgba(0,0,0,.25);
}
.plan-col.target-blue{color:#0b67a8}.plan-col.target-cyan{color:#18a8ff}.plan-col.target-green{color:#00c715}.plan-col.target-gold{color:#ffe100}.plan-col.target-violet{color:#d573ff}.plan-col.target-red{color:#e90012}.plan-col.target-spare{color:rgba(255,255,255,.78)}
.plan-col.empty .plan-col-frame{opacity:.95}
.plan-col:hover .plan-col-frame{filter:brightness(1.18)}
.token-blue{background:#0b67a8!important}.token-cyan{background:#18a8ff!important}.token-green{background:#00d90b!important}.token-gold{background:#ffe100!important}.token-violet{background:#d573ff!important}.token-red{background:#e90012!important}
@media (max-width:720px){
  .plan-column-board{width:min(342px,100%);height:178px;margin:8px auto 8px;gap:5px;padding:8px 0 8px;}
  .plan-column-board.demo{height:165px;}
  .plan-col{width:50px;height:152px;}
  .plan-col-frame{left:5px;right:5px;height:106px;border-left-width:4px;border-right-width:4px;border-bottom-width:4px;border-radius:0 0 10px 10px;}
  .plan-stack-box{width:32px;height:96px;bottom:6px;}
  .plan-stack-block{width:32px;height:27px;border-radius:6px;bottom:calc(var(--level) * 31px);}
}


/* q7 slot-color target override */
.plan-column-board{height:265px;gap:12px;}
.plan-col{width:92px;height:212px;}
.plan-slot-box,.plan-stack-box{position:absolute;left:50%;transform:translateX(-50%);width:60px;pointer-events:none;}
.plan-slot-box{bottom:8px;height:150px;}
.plan-stack-box{bottom:8px;height:150px;}
.plan-slot-frame{position:absolute;left:-7px;width:74px;height:42px;bottom:calc(var(--level) * 42px);border-left:7px solid currentColor;border-right:7px solid currentColor;border-bottom:7px solid currentColor;border-radius:0 0 12px 12px;box-sizing:border-box;opacity:.95;}
.plan-slot-frame.target-blue{color:#0b67a8}.plan-slot-frame.target-cyan{color:#18a8ff}.plan-slot-frame.target-green{color:#00c715}.plan-slot-frame.target-gold{color:#ffe100}.plan-slot-frame.target-violet{color:#d573ff}.plan-slot-frame.target-red{color:#e90012}
.plan-col.target-spare::before{content:'';position:absolute;left:13px;right:13px;bottom:8px;height:42px;border-left:7px solid rgba(255,255,255,.8);border-right:7px solid rgba(255,255,255,.8);border-bottom:7px solid rgba(255,255,255,.8);border-radius:0 0 12px 12px;}
.plan-col.target-spare.double::after{content:'';position:absolute;left:13px;right:13px;bottom:50px;height:42px;border-left:7px solid rgba(255,255,255,.8);border-right:7px solid rgba(255,255,255,.8);border-bottom:7px solid rgba(255,255,255,.8);border-radius:0 0 12px 12px;}
.plan-col::after{display:none;}
.plan-stack-block{left:1px;bottom:calc(var(--level) * 42px + 6px);width:58px;height:35px;border-radius:8px;}
.plan-col.selected .plan-stack-block:last-child{outline:3px solid rgba(255,255,255,.9);box-shadow:0 0 0 4px rgba(99,245,223,.18),0 10px 18px rgba(0,0,0,.25);} 
.plan-col.empty .plan-slot-frame{filter:brightness(1.08)}
@media (max-width:720px){
  .plan-column-board{width:min(352px,100%);height:190px;gap:4px;}
  .plan-col{width:48px;height:156px;}
  .plan-slot-box,.plan-stack-box{width:32px;height:100px;bottom:6px;}
  .plan-slot-frame{left:-4px;width:40px;height:29px;bottom:calc(var(--level) * 29px);border-left-width:4px;border-right-width:4px;border-bottom-width:4px;border-radius:0 0 8px 8px;}
  .plan-col.target-spare::before{left:4px;right:4px;bottom:6px;height:29px;border-left-width:4px;border-right-width:4px;border-bottom-width:4px;border-radius:0 0 8px 8px;}
  .plan-col.target-spare.double::after{left:4px;right:4px;bottom:35px;height:29px;border-left-width:4px;border-right-width:4px;border-bottom-width:4px;border-radius:0 0 8px 8px;}
  .plan-stack-block{left:0;width:32px;height:23px;bottom:calc(var(--level) * 29px + 4px);border-radius:5px;}
}


/* q7 no-gap stack patch: blocks touch vertically; target rows use side rails, no middle horizontal separator */
.plan-slot-frame{
  height:42px!important;
  bottom:calc(var(--level) * 42px)!important;
  border-bottom:0!important;
  border-radius:0!important;
}
.plan-slot-frame.bottom-slot{
  border-bottom:7px solid currentColor!important;
  border-radius:0 0 12px 12px!important;
}
.plan-stack-block{
  height:42px!important;
  bottom:calc(var(--level) * 42px)!important;
  border-radius:8px!important;
}
.plan-stack-block + .plan-stack-block{
  margin:0!important;
}
@media (max-width:720px){
  .plan-slot-frame{
    height:29px!important;
    bottom:calc(var(--level) * 29px)!important;
    border-bottom:0!important;
    border-radius:0!important;
  }
  .plan-slot-frame.bottom-slot{
    border-bottom:4px solid currentColor!important;
    border-radius:0 0 8px 8px!important;
  }
  .plan-stack-block{
    height:29px!important;
    bottom:calc(var(--level) * 29px)!important;
    border-radius:5px!important;
  }
}


/* q7 regenerated logic helpers */
.plan-col.target-spare.triple .plan-slot-ghost-third,
.plan-col.target-spare.triple::marker{content:''}
.plan-col.target-spare.triple .plan-stack-box{bottom:8px;}
.plan-col.target-spare.triple::before{content:'';position:absolute;left:13px;right:13px;bottom:8px;height:42px;border-left:7px solid rgba(255,255,255,.8);border-right:7px solid rgba(255,255,255,.8);border-bottom:7px solid rgba(255,255,255,.8);border-radius:0 0 12px 12px;}
.plan-col.target-spare.triple::after{content:'';position:absolute;left:13px;right:13px;bottom:50px;height:42px;border-left:7px solid rgba(255,255,255,.8);border-right:7px solid rgba(255,255,255,.8);border-bottom:7px solid rgba(255,255,255,.8);border-radius:0 0 12px 12px;box-shadow:0 -42px 0 0 rgba(255,255,255,0);}
.plan-col.target-spare.triple{--spare-third:1;}
.plan-col.target-spare.triple .plan-slot-box::before{content:'';position:absolute;left:-7px;width:74px;height:42px;bottom:84px;border-left:7px solid rgba(255,255,255,.8);border-right:7px solid rgba(255,255,255,.8);border-bottom:7px solid rgba(255,255,255,.8);border-radius:0 0 12px 12px;box-sizing:border-box;}
@media (max-width:720px){
  .plan-col.target-spare.triple::before{left:4px;right:4px;bottom:6px;height:29px;border-left-width:4px;border-right-width:4px;border-bottom-width:4px;border-radius:0 0 8px 8px;}
  .plan-col.target-spare.triple::after{left:4px;right:4px;bottom:35px;height:29px;border-left-width:4px;border-right-width:4px;border-bottom-width:4px;border-radius:0 0 8px 8px;}
  .plan-col.target-spare.triple .plan-slot-box::before{left:-4px;width:40px;height:29px;bottom:58px;border-left-width:4px;border-right-width:4px;border-bottom-width:4px;border-radius:0 0 8px 8px;}
}


/* q7 spare columns use real slot frames so capacity is always visually clear */
.plan-slot-frame.target-spare-slot{color:rgba(255,255,255,.82);}
.plan-col.target-spare::before,.plan-col.target-spare::after,.plan-col.target-spare .plan-slot-box::before{display:none!important;content:none!important;}


/* q9 merge animation: answer review shows right pattern gradually merging over the left pattern */
.mental-board.reviewing .rotate-layer{
  transform-box: fill-box;
  transform-origin: 50% 50%;
  animation: q9MergeIntoPlace 1.15s ease-out forwards;
}
.mental-board.reviewing .base-layer{
  opacity: .95;
}
@keyframes q9MergeIntoPlace{
  0%{
    transform: translateX(24px) scale(.98);
    opacity: .42;
  }
  72%{
    transform: translateX(0) scale(1);
    opacity: .88;
  }
  100%{
    transform: translateX(0) scale(1);
    opacity: .88;
  }
}



/* =========================================================
   Soft brand theme variant
   结合情智源 Logo 蓝 + 青绿 + 金色，整体比原深色版更淡、更柔和。
   仅覆盖视觉色彩，不改题目逻辑。
   ========================================================= */
:root{
  --bg-0:#0e1b33;
  --bg-1:#173652;
  --bg-2:#2f3570;
  --text:#f7fbff;
  --muted:#c7d7f0;
  --line:rgba(215,229,255,.20);
  --cyan:#72eee5;
  --violet:#9c9bff;
  --gold:#ffd86b;
  --brand-blue:#5b76bb;
}

body{
  background:
    radial-gradient(circle at 18% 18%, rgba(86,189,190,.28), transparent 34%),
    radial-gradient(circle at 82% 20%, rgba(96,112,188,.34), transparent 38%),
    linear-gradient(135deg, #10213c 0%, #162c49 46%, #30306c 100%) !important;
  color:var(--text);
}

.qzy-bg{opacity:.62;}
.qzy-bg::before{opacity:.55;}
.qzy-bg i{opacity:.50;}

.app{background:linear-gradient(180deg, rgba(255,255,255,.025), rgba(255,255,255,.01));}

.header,.topbar,.module-head,.stage-line{border-color:rgba(215,229,255,.18)!important;}

.logo-card,.logo-box,.logo-mini{box-shadow:0 10px 30px rgba(49,76,142,.22);}

.badge{
  background:rgba(71,206,194,.18)!important;
  border-color:rgba(114,238,229,.36)!important;
  color:#eafffb!important;
  box-shadow:0 8px 24px rgba(47,196,188,.12);
}

.title-lg,.hero-title,.result-title{
  color:#f8fcff!important;
  text-shadow:0 8px 30px rgba(46,70,140,.28);
}

.copy,.subcopy,.hint,.notice{color:#d5e2f6!important;}

.progress-track,.progress-bar-bg{background:rgba(226,236,255,.18)!important;}
.progress-fill,.progress-bar{background:linear-gradient(90deg, #70ede3, #8e8dff)!important;}

.chip{
  background:rgba(255,255,255,.075)!important;
  border-color:rgba(230,240,255,.20)!important;
  color:#eef6ff!important;
}

.primary-btn,.primary-answer{
  background:linear-gradient(135deg, #79eee7, #858dff)!important;
  color:#07192c!important;
  box-shadow:0 18px 42px rgba(103,221,225,.20);
}

.secondary-btn,.secondary-answer,.answer-btn{
  background:rgba(255,255,255,.075)!important;
  border-color:rgba(230,240,255,.22)!important;
  color:#f1f6ff!important;
}

.answer-btn:hover,.primary-btn:hover,.secondary-btn:hover{filter:brightness(1.08);}

.panel,.card,.question-card,.preview-card,.rule-card,.result-card,.index-card,
.memory-board,.visual-board,.animal-board,.box-board,.scene-board,.plan-column-board,
.flex-compare-wrap > div,.grammar-board,.stroop-board,.spatial-board,.mental-board{
  background:rgba(255,255,255,.048)!important;
  border-color:rgba(226,238,255,.16)!important;
  box-shadow:0 18px 55px rgba(13,30,70,.24);
}

.cell,.tile,.option-card,.grid-cell,.animal-cell,.box-cell,.scene-pin,.scene-memory-pin,.scene-answer-pin{
  background:rgba(255,255,255,.07)!important;
  border-color:rgba(226,238,255,.18)!important;
}

.scene-memory-pin,.scene-answer-pin{
  background:rgba(114,238,229,.28)!important;
  border-color:rgba(226,255,251,.72)!important;
  box-shadow:0 0 24px rgba(114,238,229,.18),0 12px 28px rgba(0,0,0,.20)!important;
}

.plan-slot-frame.target-spare-slot{color:rgba(235,241,252,.88)!important;}
.plan-col.target-spare .plan-slot-frame{filter:drop-shadow(0 0 8px rgba(255,255,255,.10));}
.plan-stack-block{box-shadow:0 8px 18px rgba(10,22,50,.22)!important;}
.plan-col.selected .plan-stack-block:last-child{
  outline-color:rgba(255,255,255,.95)!important;
  box-shadow:0 0 0 4px rgba(114,238,229,.22),0 10px 22px rgba(0,0,0,.22)!important;
}

.flex-compare-wrap rect,.mental-board rect{stroke:rgba(235,241,252,.20)!important;}

.report-hero{background:linear-gradient(135deg, rgba(77,195,185,.88), rgba(91,118,187,.88))!important;}
.report-section-title,.result-highlight{color:#5ee0d8!important;}

hr,.divider{border-color:rgba(226,238,255,.16)!important;}

@media (max-width:720px){
  body{
    background:
      radial-gradient(circle at 18% 12%, rgba(86,189,190,.26), transparent 36%),
      radial-gradient(circle at 88% 20%, rgba(96,112,188,.30), transparent 40%),
      linear-gradient(135deg, #10213c 0%, #172f4e 48%, #2c2d65 100%) !important;
  }
}



/* =========================================================
   Soft brand theme V2 - visibly lighter
   更明显的 Logo 主题淡色版：蓝白、青绿、浅紫，降低黑暗感。
   仅覆盖视觉色彩，不改题目逻辑。
   ========================================================= */
html, body{
  background:
    radial-gradient(circle at 18% 12%, rgba(113,235,222,.34), transparent 34%),
    radial-gradient(circle at 82% 16%, rgba(120,138,218,.38), transparent 36%),
    linear-gradient(135deg, #223f68 0%, #315d78 42%, #5961a6 100%) !important;
  color:#f9fdff!important;
}

body::before{
  background:
    linear-gradient(110deg, rgba(255,255,255,.13), transparent 38%),
    radial-gradient(circle at 54% 70%, rgba(255,216,107,.10), transparent 30%) !important;
  opacity:.55!important;
}

.qzy-bg{
  opacity:.38!important;
}
.qzy-bg i{
  opacity:.32!important;
  background:rgba(255,255,255,.72)!important;
}

.app,
.shell,
.page-shell,
.test-shell{
  background:transparent!important;
}

.header,
.topbar,
.stage-line,
.module-head{
  border-color:rgba(247,252,255,.26)!important;
}

.logo-card,
.logo-box,
.logo-mini{
  background:rgba(91,118,187,.82)!important;
  box-shadow:0 14px 34px rgba(43,79,150,.22)!important;
}

.title-lg,
.hero-title,
.result-title,
.module-title,
h1,h2,h3{
  color:#ffffff!important;
  text-shadow:0 8px 26px rgba(25,45,95,.28)!important;
}

.copy,
.compact-copy,
.subcopy,
.notice,
.hint,
.stage-text,
p{
  color:#e5f0ff!important;
}

.badge{
  background:rgba(107,238,226,.26)!important;
  border:1px solid rgba(210,255,250,.50)!important;
  color:#f4fffe!important;
  box-shadow:0 10px 24px rgba(63,207,199,.16)!important;
}

.progress-track,
.progress-bar-bg,
.progress-line{
  background:rgba(255,255,255,.24)!important;
}
.progress-fill,
.progress-bar{
  background:linear-gradient(90deg, #7af0e5 0%, #92a0ff 100%)!important;
  box-shadow:0 0 18px rgba(122,240,229,.32)!important;
}

.chip{
  background:rgba(255,255,255,.13)!important;
  border:1px solid rgba(255,255,255,.26)!important;
  color:#f7fbff!important;
}

.panel,
.card,
.question-card,
.preview-card,
.rule-card,
.result-card,
.index-card,
.memory-board,
.visual-board,
.animal-board,
.box-board,
.scene-board,
.plan-column-board,
.flex-compare-wrap > div,
.grammar-board,
.stroop-board,
.spatial-board,
.mental-board,
.odd-grid,
.report-card{
  background:rgba(255,255,255,.105)!important;
  border:1px solid rgba(255,255,255,.22)!important;
  box-shadow:0 22px 58px rgba(35,62,118,.24)!important;
  backdrop-filter:blur(12px)!important;
}

.odd-cell,
.cell,
.tile,
.option-card,
.grid-cell,
.animal-cell,
.box-cell,
.scene-pin,
.scene-memory-pin,
.scene-answer-pin,
.key-btn,
.digit-slot{
  background:rgba(255,255,255,.115)!important;
  border-color:rgba(255,255,255,.26)!important;
  box-shadow:0 10px 24px rgba(21,42,88,.18)!important;
}

.primary-btn,
.primary-answer{
  background:linear-gradient(135deg, #7af0e5 0%, #8e98ff 100%)!important;
  color:#071b34!important;
  border:0!important;
  box-shadow:0 18px 42px rgba(92,214,218,.28)!important;
}

.secondary-btn,
.secondary-answer,
.answer-btn{
  background:rgba(255,255,255,.12)!important;
  border-color:rgba(255,255,255,.30)!important;
  color:#f9fdff!important;
}

.answer-btn:hover,
.primary-btn:hover,
.secondary-btn:hover,
.odd-cell:hover{
  filter:brightness(1.08)!important;
  transform:translateY(-1px);
}

/* 第7题、场景题保持清晰 */
.scene-memory-pin,
.scene-answer-pin{
  background:rgba(122,240,229,.34)!important;
  border-color:rgba(234,255,252,.80)!important;
}

.plan-column-board{
  background:rgba(255,255,255,.075)!important;
}
.plan-stack-block{
  box-shadow:0 10px 24px rgba(22,42,88,.22)!important;
}
.plan-slot-frame.target-spare-slot{
  color:rgba(248,252,255,.90)!important;
}

/* 第9题方框更清楚 */
.flex-compare-wrap rect,
.mental-board rect{
  fill:rgba(255,255,255,.075)!important;
  stroke:rgba(255,255,255,.25)!important;
}

.report-hero{
  background:linear-gradient(135deg, rgba(81,196,185,.92), rgba(91,118,187,.92))!important;
}

@media (max-width:720px){
  html, body{
    background:
      radial-gradient(circle at 18% 10%, rgba(113,235,222,.30), transparent 36%),
      radial-gradient(circle at 86% 16%, rgba(120,138,218,.36), transparent 38%),
      linear-gradient(135deg, #24466f 0%, #35657f 45%, #555fa2 100%) !important;
  }
}


/* =========================================================
   VI redesign theme - based on provided wall/VI references
   只改视觉设计，不改任何题目逻辑
   关键词：白墙、品牌蓝、暖黄发光、圆角展板、柔和童趣
   ========================================================= */
:root{
  --bg:#eef3fb;
  --text:#243f7e;
  --muted:#6f86b8;
  --soft:#90a5d8;
  --aqua:#6fa3ff;
  --violet:#7b8fd3;
  --gold:#f2c23d;
  --green:#76c877;
  --red:#ef6b6b;
  --line:rgba(93,120,189,.18);
  --line2:rgba(242,194,61,.38);
}
html,body{
  background:
    radial-gradient(circle at 14% 10%, rgba(110,142,214,.22), transparent 18%),
    radial-gradient(circle at 88% 14%, rgba(110,142,214,.16), transparent 16%),
    linear-gradient(180deg, #fbfcff 0%, #f2f6fd 100%) !important;
  color:var(--text) !important;
}
body{position:relative;}
.qzy-bg{
  background:
    radial-gradient(circle at 8% 12%, rgba(110,142,214,.20), transparent 16%),
    radial-gradient(circle at 92% 16%, rgba(110,142,214,.18), transparent 16%),
    radial-gradient(circle at 50% 0%, rgba(255,255,255,.85), rgba(255,255,255,0) 48%),
    linear-gradient(180deg,#fbfcff 0%,#f3f7ff 100%) !important;
}
.qzy-bg:before{
  content:"";
  position:absolute; inset:0;
  background:
    radial-gradient(ellipse at 10% 24%, rgba(255,220,129,.24), transparent 22%),
    radial-gradient(ellipse at 50% 5%, rgba(255,255,255,.75), transparent 22%),
    radial-gradient(ellipse at 88% 20%, rgba(255,220,129,.18), transparent 18%),
    radial-gradient(circle, rgba(90,117,188,.10) 0 1px, transparent 1.4px);
  background-size:auto,auto,auto,140px 140px;
  opacity:.9;
  transform:none !important;
}
.qzy-bg:after{
  background:
    linear-gradient(180deg, rgba(255,255,255,.65), rgba(255,255,255,0) 24%),
    linear-gradient(180deg, rgba(111,134,184,.05), rgba(111,134,184,0) 100%) !important;
}
.qzy-bg i:nth-child(1){background:rgba(110,142,214,.14)!important;filter:blur(34px)!important;opacity:.55!important}
.qzy-bg i:nth-child(2){background:rgba(255,214,106,.16)!important;filter:blur(38px)!important;opacity:.45!important}
.qzy-bg i:nth-child(3){background:rgba(93,207,165,.10)!important;filter:blur(32px)!important;opacity:.42!important}

.app{align-items:flex-start !important;}
.test-shell{
  background:rgba(255,255,255,.70);
  border:1px solid rgba(124,149,208,.14);
  border-radius:30px;
  box-shadow:0 22px 56px rgba(60,92,168,.10), 0 4px 12px rgba(255,217,112,.12);
  backdrop-filter:blur(10px);
  padding:18px 20px 22px;
}
.brand-head{margin-bottom:10px !important;}
.brand-copy b{color:#26458a !important;font-weight:950 !important}
.brand-copy span{color:#6d82b3 !important}
.icon-btn{
  background:rgba(255,255,255,.82) !important;
  border:1px solid rgba(124,149,208,.24) !important;
  color:#5570b0 !important;
  box-shadow:0 6px 16px rgba(61,88,157,.08);
}
.icon-btn:hover{background:#fffaf0 !important;border-color:rgba(242,194,61,.42) !important;color:#315098 !important}

.status-main{
  border-bottom:1px solid rgba(109,130,179,.15) !important;
}
.progress-meta,.phase{color:#35538f !important}
.progress-track{background:rgba(103,126,185,.12) !important}
.progress-fill{
  background:linear-gradient(90deg,#6f8ee7 0%, #91d6ff 55%, #f2c23d 100%) !important;
  box-shadow:0 0 12px rgba(111,142,231,.18) !important;
}
.phase i{background:#6fa3ff !important; box-shadow:0 0 10px rgba(111,163,255,.32)!important}
.timer{color:#2d4a8d !important; text-shadow:0 2px 14px rgba(90,118,188,.16) !important}

.main-panel{color:#27427f !important}
.logo-large img{filter:drop-shadow(0 12px 22px rgba(78,104,177,.16)) !important}
.badge{
  background:linear-gradient(180deg, rgba(108,136,211,.14), rgba(255,255,255,.78)) !important;
  color:#38589f !important;
  border:1px solid rgba(120,145,209,.18);
  box-shadow:0 8px 18px rgba(96,122,196,.08), inset 0 0 0 1px rgba(255,255,255,.58);
}
.badge:before{background:#f2c23d !important; box-shadow:0 0 10px rgba(242,194,61,.48)!important}
.title-xl,
.title-lg{
  background:none !important;
  -webkit-background-clip:initial !important;
  background-clip:initial !important;
  color:#284788 !important;
  text-shadow:0 8px 18px rgba(85,109,179,.10) !important;
}
.copy,.copy.compact-copy,.rule span,.notice,.chip{color:#5d73a4 !important}
.copy strong,.rule b,.grammar-statement,.grammar-board,.grammar-statement strong{color:#284788 !important}

.rule em{
  background:rgba(242,194,61,.18) !important;
  color:#9a6b00 !important;
  box-shadow:0 4px 10px rgba(242,194,61,.15);
}
.chip.good{color:#3a9774 !important}
.chip.bad{color:#d26b6b !important}
.notice.ok{color:#3a9774 !important}
.notice.err{color:#c96464 !important}

.primary-btn,.secondary-btn,.danger-btn,.answer-btn,.key-btn,.color-choice{
  border-radius:14px !important;
}
.primary-btn,.key-btn.confirm{
  background:linear-gradient(135deg,#6f8ee7 0%, #91d6ff 58%, #f0c348 100%) !important;
  color:#18356f !important;
  box-shadow:0 10px 24px rgba(100,126,201,.15), 0 2px 10px rgba(242,194,61,.16) !important;
}
.secondary-btn,.answer-btn,.key-btn,.color-choice{
  background:rgba(255,255,255,.78) !important;
  color:#315093 !important;
  border:1px solid rgba(122,145,202,.22) !important;
  box-shadow:0 4px 14px rgba(60,92,168,.06);
}
.danger-btn{background:rgba(255,245,245,.92)!important;border:1px solid rgba(232,125,125,.26)!important;color:#c25a5a!important}
.secondary-btn:hover,.answer-btn:hover,.key-btn:hover,.color-choice:hover{
  background:#fffdf7 !important;
  border-color:rgba(242,194,61,.34) !important;
  box-shadow:0 8px 18px rgba(242,194,61,.12),0 6px 12px rgba(60,92,168,.06) !important;
}

.odd-grid,.memory-show,.memory-input,.keypad,.compare-wrap,.sequence-board,.box-grid,.scene-board,.attention-wrap>div,.pair-wrap>div,.grammar-board,.stroop-board,.spatial-grid,.report-list{
  filter:none;
}

.odd-cell,
.digit-slot,
.seq-cell,
.box-cell,
.spatial-cell,
.target-slot,
.color-token,
.scene-memory-pin,
.scene-answer-pin,
.attention-wrap>div,
.pair-wrap>div,
.svg-panel,
.grammar-board,
.memory-show,
.memory-input,
.scene-board.scene-compact,
.sequence-board,
.box-grid,
.spatial-grid,
.stroop-board,
.compare-wrap>div{
  background:rgba(255,255,255,.76) !important;
  border:1px solid rgba(120,145,209,.16) !important;
  box-shadow:0 10px 24px rgba(66,93,162,.07), 0 2px 10px rgba(242,194,61,.06) !important;
}
.memory-show{
  background:linear-gradient(180deg,rgba(255,255,255,.86),rgba(242,247,255,.78)) !important;
  border-top:1px solid rgba(120,145,209,.14) !important;
  border-bottom:1px solid rgba(120,145,209,.14) !important;
}
.digit-slot.empty:before{background:rgba(86,110,177,.55)!important}
.sequence-digits span,.digit-slot,.sequence-focus b,.grammar-statement,.stroop-word{color:#284788 !important; text-shadow:none !important}
.sequence-focus small,.copy.mini,.copy.small,.brand-copy span{color:#6d82b3 !important}

.odd-cell:hover,.seq-cell:hover,.box-cell:hover,.spatial-cell:hover{
  transform:translateY(-1px);
  border-color:rgba(242,194,61,.34) !important;
  background:#fffdf8 !important;
}
.odd-cell.correct-flash{border-color:rgba(118,200,119,.64)!important;background:rgba(118,200,119,.12)!important}
.odd-cell.wrong-flash{border-color:rgba(239,107,107,.58)!important;background:rgba(239,107,107,.10)!important}

.scene-board.scene-compact,
.sequence-board,
.box-grid,
.spatial-grid,
.grammar-board,
.pair-wrap>div,
.attention-wrap>div,
.svg-panel,
.report-list,
.stroop-board{
  position:relative;
  overflow:hidden;
}
.scene-board.scene-compact:before,
.sequence-board:before,
.box-grid:before,
.spatial-grid:before,
.grammar-board:before,
.pair-wrap>div:before,
.attention-wrap>div:before,
.svg-panel:before,
.report-list:before,
.stroop-board:before{
  content:"";
  position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(255,255,255,.52), rgba(255,255,255,0) 36%);
  pointer-events:none;
}

/* 更接近 VI 的圆角展板与暖光边缘 */
.svg-panel,
.attention-wrap>div,
.pair-wrap>div,
.grammar-board,
.report-list{
  border-radius:22px !important;
  box-shadow:0 12px 30px rgba(80,107,177,.08), 0 0 0 1px rgba(255,255,255,.6) inset, 0 0 18px rgba(242,194,61,.08) !important;
}

.color-choice.color-green{color:#3ea66f !important}
.color-choice.color-purple{color:#8660c9 !important}
.color-choice.color-yellow{color:#b88800 !important}
.color-choice.color-red{color:#d95d5d !important}

/* 题7、题9 等需要边框清晰的板块 */
.plan-column-board,
.plan-slot-frame,
.plan-spare,
.plan-spare-slot,
.plan-target-row,
.plan-source-row,
.mental-board,
.flex-compare-wrap > div{
  background:rgba(255,255,255,.76) !important;
  border-color:rgba(120,145,209,.16) !important;
}
.plan-slot-frame.target-spare-slot{color:#a6aec5 !important}

.report-hero{
  background:linear-gradient(135deg,#6f8ee7 0%,#87b4f2 56%,#f1d27d 100%) !important;
  color:white !important;
  box-shadow:0 16px 30px rgba(104,128,198,.14) !important;
}
.report-hero *{color:white !important}
.report-card,.report-item{
  background:rgba(255,255,255,.84) !important;
  border:1px solid rgba(120,145,209,.14) !important;
  box-shadow:0 8px 18px rgba(60,92,168,.05) !important;
}

@media (max-width:720px){
  .test-shell{padding:14px 12px 18px;border-radius:22px}
  html,body{
    background:
      radial-gradient(circle at 12% 9%, rgba(110,142,214,.20), transparent 18%),
      radial-gradient(circle at 88% 12%, rgba(255,214,106,.16), transparent 14%),
      linear-gradient(180deg, #fbfcff 0%, #f2f6fd 100%) !important;
  }
  .title-xl{font-size:34px !important}
  .title-lg,.title-lg.compact-title{font-size:22px !important}
  .copy,.copy.compact-copy{font-size:13px !important}
}


/* =========================================================
   Contrast patch for VI theme
   修复浅色主题下部分文字/按钮/列表/格子可读性不足问题
   只做视觉对比度增强，不改逻辑
   ========================================================= */
:root{
  --brand-blue-deep:#27498f;
  --brand-blue-mid:#4968a8;
  --brand-text:#445f98;
  --brand-text-soft:#5f76aa;
  --brand-border:rgba(103,124,181,.20);
  --panel-bg-strong:rgba(255,255,255,.88);
  --panel-bg-soft:rgba(248,251,255,.92);
}

/* 通用文本对比度 */
.copy,
.copy.compact-copy,
.copy.small,
.copy.mini,
.subcopy,
.hint,
.notice,
.chip,
.rule span,
.brand-copy span,
.result-item span,
.scene-copy,
.scene-target-line,
.report-time,
.report-disclaimer,
.purpose-block p,
.report-row span,
.report-item,
.report-card,
.value-card,
.strength-card,
.risk-main,
.risk-warns{
  color:var(--brand-text-soft) !important;
}

.brand-copy b,
.progress-meta,
.phase,
.timer,
.title-xl,
.title-lg,
.title-lg.compact-title,
.copy strong,
.rule b,
.report-row b,
.result-item b,
.scene-title,
.scene-target-line strong,
.grammar-statement,
.grammar-statement strong,
.strength-title,
.risk-head b,
.value-score,
.report-item b,
.report-card b,
.notice.ok,
.notice.err{
  color:var(--brand-blue-deep) !important;
}

.notice.ok{color:#2f8a6d !important}
.notice.err{color:#c15a5a !important}
.chip.good{color:#2f8a6d !important}
.chip.bad{color:#c15a5a !important}

/* 首页/预览列表 */
.report-list,
.preview-list{
  background:rgba(255,255,255,.60) !important;
  border:1px solid rgba(113,136,195,.12) !important;
}
.report-row,
.preview-row{
  border-bottom:1px solid rgba(113,136,195,.10) !important;
  background:transparent !important;
}
.report-row:hover,
.preview-row:hover{
  background:rgba(255,255,255,.42) !important;
}
.report-row em{
  background:linear-gradient(180deg,#e8f7ff,#dbf7ef) !important;
  color:#4ca0d0 !important;
  box-shadow:inset 0 0 0 1px rgba(111,163,255,.14) !important;
}
.report-row b,
.preview-row b{
  color:var(--brand-blue-deep) !important;
}
.report-row span,
.preview-row span{
  color:var(--brand-text-soft) !important;
}
.score,
.preview-row .score{
  color:#4eb9bf !important;
  text-shadow:none !important;
}

/* 说明区 */
.purpose-block b,
.badge{
  color:#3e5fa3 !important;
  background:linear-gradient(180deg, rgba(231,240,255,.92), rgba(250,252,255,.94)) !important;
  border:1px solid rgba(120,145,209,.18) !important;
}
.purpose-block p{
  color:var(--brand-text-soft) !important;
}

/* 按钮增强对比 */
.primary-btn,
.secondary-btn,
.answer-btn,
.key-btn,
.color-choice,
.danger-btn{
  font-weight:900 !important;
}
.secondary-btn,
.answer-btn,
.key-btn,
.color-choice{
  color:#2f4f92 !important;
  background:rgba(255,255,255,.92) !important;
  border:1px solid rgba(113,136,195,.24) !important;
}
.primary-btn{
  color:#17366f !important;
}
.secondary-btn:disabled,
.answer-btn:disabled,
.key-btn:disabled,
.primary-btn:disabled{
  opacity:.62 !important;
}

/* 面板、格子、空白块需要更清楚 */
.sequence-board,
.box-grid,
.spatial-grid,
.memory-show,
.memory-input,
.scene-board.scene-compact,
.scene-board,
.svg-panel,
.attention-wrap > div,
.pair-wrap > div,
.grammar-board,
.report-list,
.plan-column-board,
.stroop-board,
.compare-wrap > div{
  background:var(--panel-bg-strong) !important;
  border-color:var(--brand-border) !important;
}

.seq-cell,
.box-cell,
.spatial-cell,
.digit-slot,
.target-slot,
.color-token,
.scene-memory-pin,
.scene-answer-pin,
.scene-item,
.plan-slot-frame,
.plan-spare,
.plan-spare-slot,
.plan-target-row,
.plan-source-row{
  border-color:rgba(108,128,184,.22) !important;
}

.seq-cell,
.box-cell,
.spatial-cell,
.digit-slot{
  background:var(--panel-bg-soft) !important;
  color:#5871a8 !important;
}
.seq-cell.lit,
.spatial-cell.lit,
.seq-cell.chosen,
.spatial-cell.chosen,
.box-cell.opened,
.box-cell.target,
.box-cell.decoy,
.box-cell.clue,
.box-cell.wrong-pick{
  color:#244582 !important;
}
.seq-cell.lit,
.spatial-cell.lit{
  background:linear-gradient(180deg,#eef7ff,#e5f3ff) !important;
  border-color:rgba(111,163,255,.34) !important;
  box-shadow:0 0 0 1px rgba(111,163,255,.10) inset !important;
}
.box-cell.clue{
  background:linear-gradient(180deg,#fff8e5,#fffdf4) !important;
  border-color:rgba(242,194,61,.34) !important;
}
.box-cell.target{
  background:linear-gradient(180deg,#eaf5ff,#f7fbff) !important;
  border-color:rgba(111,163,255,.34) !important;
}
.box-cell.decoy{
  background:linear-gradient(180deg,#eefcf8,#f7fffc) !important;
  border-color:rgba(92,181,151,.30) !important;
  color:#3f8e87 !important;
}
.box-cell.ghost{
  opacity:.78 !important;
  color:#aab7d4 !important;
}
.digit-slot.empty:before{
  background:#788fc4 !important;
}

/* 场景记忆题 / 图标 */
.scene-copy,
.scene-notice,
.scene-target-line,
.scene-target-line strong{
  color:var(--brand-text-soft) !important;
}
.scene-target-line strong,
.target-object{
  background:linear-gradient(180deg,#edf6ff,#ffffff) !important;
  border-color:rgba(111,163,255,.24) !important;
  color:#284788 !important;
}
.scene-board,
.scene-board.scene-compact{
  background:
    linear-gradient(180deg, rgba(255,255,255,.96), rgba(246,250,255,.94)) !important;
}
.scene-board:before,
.scene-board.scene-compact:before{
  background:
    linear-gradient(90deg,rgba(111,136,195,.05) 1px,transparent 1px),
    linear-gradient(rgba(111,136,195,.05) 1px,transparent 1px) !important;
  background-size:25% 25% !important;
  opacity:.8 !important;
}
.scene-item,
.scene-memory-pin{
  background:linear-gradient(180deg,#ffffff,#f6f8fd) !important;
  border:1px solid rgba(115,136,192,.22) !important;
  color:#243f7e !important;
  box-shadow:0 6px 14px rgba(84,108,173,.10), 0 1px 4px rgba(0,0,0,.06) !important;
}
.scene-memory-pin span{
  filter:saturate(1.05) contrast(1.04) drop-shadow(0 1px 2px rgba(0,0,0,.18)) !important;
}
.scene-answer-pin{
  background:rgba(111,163,255,.16) !important;
  border:2px solid rgba(111,163,255,.46) !important;
  box-shadow:0 0 0 1px rgba(255,255,255,.55) inset, 0 6px 14px rgba(84,108,173,.10) !important;
}
.scene-answer-pin span{background:#fff !important}

/* 题7等特殊列布局视觉强化 */
.plan-column-board,
.plan-column-board.demo,
.plan-reference-board,
.plan-demo-board{
  background:rgba(255,255,255,.84) !important;
  border:1px solid rgba(103,124,181,.16) !important;
  box-shadow:0 10px 22px rgba(75,98,164,.06) !important;
}
.plan-slot-frame.target-spare-slot,
.plan-col.target-spare,
.plan-col.target-spare .plan-slot-frame{
  color:#b7bfd2 !important;
}

/* 结果页 */
.result-item{
  border-top:1px solid rgba(113,136,195,.10) !important;
  border-bottom:1px solid rgba(113,136,195,.08) !important;
}

/* 风险/报告页块体 */
.report-card,
.report-item,
.strength-card,
.value-card,
.risk-row{
  background:rgba(255,255,255,.88) !important;
  border:1px solid rgba(103,124,181,.14) !important;
  box-shadow:0 8px 18px rgba(67,90,157,.05) !important;
}

/* 进一步修复“发白看不清”的情况 */
.report-row *,
.preview-row *,
.purpose-block *,
.result-item *,
.sequence-board *,
.box-grid *,
.spatial-grid *,
.memory-show *,
.memory-input *{
  text-shadow:none !important;
}


/* ===== VI v2 金脑浅色主题 + 展厅落地风 / 儿童品牌H5风 ===== */

:root{
  --bg:#eef2f8 !important;
  --text:#29457f !important;
  --muted:#6c7fa9 !important;
  --soft:#8b9fc7 !important;
  --aqua:#7fa8ff !important;
  --violet:#8da3df !important;
  --gold:#f2c34f !important;
  --green:#5bbf8a !important;
  --red:#e26d78 !important;
  --line:rgba(96,121,178,.16) !important;
  --line2:rgba(242,195,79,.32) !important;
}
html,body{
  background:linear-gradient(180deg,#f7f8fb 0%,#eef2f8 100%) !important;
  color:var(--text) !important;
}
.qzy-bg{
  background:
    radial-gradient(circle at 8% 16%, rgba(130,160,230,.14), transparent 20%),
    radial-gradient(circle at 89% 13%, rgba(242,195,79,.18), transparent 24%),
    radial-gradient(circle at 50% 100%, rgba(134,171,255,.10), transparent 30%),
    linear-gradient(180deg,#f9fafc 0%,#eef2f8 100%) !important;
}
.qzy-bg:before{
  background-image:
    radial-gradient(circle,rgba(72,97,161,.10) 0 1px,transparent 1.5px),
    radial-gradient(circle,rgba(242,195,79,.12) 0 1px,transparent 1.4px) !important;
  background-size:140px 140px, 220px 220px !important;
  opacity:.28 !important;
}
.qzy-bg:after{
  background:
    linear-gradient(120deg,transparent 0 44%,rgba(255,255,255,.42) 47%,transparent 52% 100%),
    radial-gradient(circle at center, transparent 0 58%, rgba(197,207,228,.22) 100%) !important;
}
.qzy-bg i:nth-child(1){background:rgba(122,154,224,.14) !important;}
.qzy-bg i:nth-child(2){background:rgba(242,195,79,.14) !important;}
.qzy-bg i:nth-child(3){background:rgba(111,148,221,.10) !important;}
.test-shell{
  width:min(780px,100%) !important;
  background:rgba(255,255,255,.84) !important;
  border:1px solid rgba(143,159,201,.22) !important;
  box-shadow:0 20px 55px rgba(92,111,160,.12), 0 2px 8px rgba(0,0,0,.03) !important;
  border-radius:30px !important;
  backdrop-filter:blur(10px) !important;
  padding:18px 18px 24px !important;
}
.brand-head{
  margin-bottom:12px !important;
}
.brand-lockup-wide{min-width:0;}
.brand-logo-wide{width:min(100%, 420px) !important;}
.brand-logo-wide img{display:block;width:100%;height:auto;}
.brand-copy{display:none !important;}
.top-icons{gap:10px !important;}
.icon-btn{
  border:1px solid rgba(117,136,184,.18) !important;
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(246,248,252,.92)) !important;
  color:#4763a7 !important;
  box-shadow:0 6px 14px rgba(88,108,154,.08) !important;
}
.icon-btn:hover{background:linear-gradient(180deg,#ffffff,#f5f8ff) !important;border-color:rgba(242,195,79,.35) !important;}
.status,.main-panel{color:#29457f !important;}
.status-main{border-bottom:1px solid rgba(120,142,191,.18) !important;}
.progress-meta,.phase{color:#47629a !important;}
.progress-track{background:rgba(129,145,186,.20) !important;}
.progress-fill{background:linear-gradient(90deg,#6f8fd4 0%, #9bb1e3 55%, #f2c34f 100%) !important;box-shadow:0 0 16px rgba(111,143,212,.26) !important;}
.phase i{background:#86c79d !important;box-shadow:0 0 12px rgba(134,199,157,.45) !important;}
.timer{color:#355498 !important;text-shadow:none !important;}
.badge,.purpose-block b{
  background:linear-gradient(135deg, rgba(110,143,215,.10), rgba(242,195,79,.14)) !important;
  color:#4463a6 !important;
  border:1px solid rgba(133,150,192,.16) !important;
  box-shadow:0 8px 20px rgba(105,125,175,.06) !important;
}
.badge:before,.purpose-block b:before{
  background:#f0c040 !important;
  box-shadow:0 0 10px rgba(240,192,64,.28) !important;
}
.title-xl{
  background:linear-gradient(180deg,#3f62ac 0%,#29457f 62%,#456ab7 100%) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
}
.title-lg,.title-lg.compact-title,.grammar-statement,.report-section-title,.result-highlight,
h1,h2,h3,.report-row b,.preview-row b,.rule b,.result-item b,.risk-head b,.strength-title,.value-score b{
  color:#2b4b8f !important;
}
.copy,.copy.compact-copy,.purpose-block p,.report-row span,.preview-row span,.rule span,.result-item span,
.report-time,.report-disclaimer,.risk-main p,.value-score span,.value-score em,.chip,
.notice,.grammar-tip,.scene-tip,.target-tip,.memory-help,.text-soft{
  color:#6275a1 !important;
}
.copy strong{color:#2d4d93 !important;}
.primary-btn{
  background:linear-gradient(135deg,#6f93e1 0%,#88b3ff 54%,#f0c34c 100%) !important;
  color:#ffffff !important;
  box-shadow:0 14px 32px rgba(111,147,225,.22) !important;
}
.primary-btn:hover{box-shadow:0 18px 36px rgba(111,147,225,.26) !important;}
.secondary-btn,.answer-btn,.key-btn,.color-choice,.preview-row,.report-row,.danger-btn{
  background:rgba(255,255,255,.82) !important;
  border:1px solid rgba(122,141,187,.18) !important;
  color:#35508f !important;
  box-shadow:0 6px 14px rgba(85,106,153,.06) !important;
}
.answer-btn.primary-answer{color:#2f5d9a !important;}
.answer-btn.secondary-answer{color:#6d75af !important;}
.secondary-btn:hover,.answer-btn:hover,.key-btn:hover,.color-choice:hover{background:#fffdf8 !important;border-color:rgba(242,195,79,.36) !important;}
.danger-btn{color:#b65161 !important;background:rgba(255,244,245,.96) !important;}
.rule em,.report-row em{
  background:linear-gradient(135deg, rgba(111,143,212,.14), rgba(242,195,79,.16)) !important;
  color:#3d5fa6 !important;
}
.score,.preview-row .score{color:#4fa7bd !important;}
.result-grid,.report-list,.preview-list,.purpose-block,.memory-show,.memory-input,.keypad,.compare-wrap,
.sequence-board,.box-grid,.scene-board,.scene-board.scene-compact,.attention-wrap>div,.pair-wrap>div,
.grammar-board,.spatial-grid,.svg-panel,.grammar-board,.plan-column-board,.plan-reference-board,.plan-demo-board,
.panel,.card,.question-card,.preview-card,.rule-card,.result-card,.index-card,.memory-board,.visual-board,.animal-board,
.box-board,.plan-column-board,.report-card,.report-item,.strength-card,.value-card,.risk-row,.report-list,.preview-list{
  background:rgba(255,255,255,.72) !important;
  border-color:rgba(120,142,191,.18) !important;
  box-shadow:0 10px 24px rgba(91,110,157,.05) !important;
}
.svg-panel:before{color:#7084b4 !important;}
.svg-panel,.memory-show,.memory-input,.sequence-board,.box-grid,.spatial-grid,.scene-board,.scene-board.scene-compact,.grammar-board{
  border-top:1px solid rgba(120,142,191,.16) !important;
  border-bottom:1px solid rgba(120,142,191,.12) !important;
}
.odd-cell,.digit-slot,.seq-cell,.box-cell,.spatial-cell,.scene-item,.scene-memory-pin,.plan-slot-frame,.plan-col,.plan-slot,
.target-slot,.target-strip i{
  background:linear-gradient(180deg,#ffffff,#f7f9fd) !important;
  border:1px solid rgba(118,140,191,.16) !important;
  box-shadow:0 6px 14px rgba(91,110,157,.06) !important;
  color:#24427e !important;
}
.scene-hit,.recall-hit,.scene-answer-pin{
  background:rgba(111,163,255,.12) !important;
  border:2px solid rgba(111,163,255,.34) !important;
}
.scene-hit span,.recall-hit span,.scene-answer-pin span{background:#ffffff !important;}
.target-object{
  background:rgba(242,195,79,.10) !important;
  border:1px solid rgba(242,195,79,.26) !important;
  color:#395899 !important;
}
.odd-cell svg,.pair-wrap svg,.attention-wrap svg,.grammar-svg,.svg-panel svg{filter:none !important;}
.preview-row,.report-row{
  border-bottom:1px solid rgba(118,140,191,.10) !important;
  border-radius:16px !important;
  padding:14px 12px !important;
}
.preview-row:hover,.report-row:hover{background:rgba(255,255,255,.92) !important;}
.report-list,.preview-list{padding:8px !important;border-radius:20px !important;}
.logo-large-stacked{width:min(100%, 240px) !important;margin-bottom:18px !important;}
.logo-large-stacked img{filter:drop-shadow(0 10px 20px rgba(93,111,159,.10)) !important;}
.purpose-block{margin-top:16px !important;}
.report-hero,.brain-hero{
  background:
    radial-gradient(circle at 12% 25%, rgba(255,255,255,.32), transparent 24%),
    linear-gradient(135deg,#6d8ed5 0%, #7aa1dd 40%, #9bb8e9 67%, #f1cf70 100%) !important;
  color:#fff !important;
  border-radius:26px !important;
  box-shadow:0 18px 36px rgba(89,110,158,.16) !important;
}
.report-hero *, .brain-hero *{color:#ffffff !important;}
.report-time{background:transparent !important;}
.value-card,.strength-card,.risk-list{background:rgba(255,255,255,.86) !important;}
.color-token,
.plan-block,
.plan-piece{
  box-shadow:0 6px 14px rgba(91,110,157,.10) !important;
}
/* 预览页与浅色页强对比兜底 */
.main-panel *:not(svg):not(path):not(circle):not(line):not(rect):not(polygon){
  text-shadow:none !important;
}
/* 列表页浅色文字修复 */
.report-row *, .preview-row *, .purpose-block *, .result-item *, .memory-show *, .memory-input *{
  text-shadow:none !important;
}
@media (max-width:720px){
  .test-shell{padding:14px 12px 18px !important;border-radius:24px !important;}
  .brand-logo-wide{width:min(100%, 250px) !important;}
  .logo-large-stacked{width:min(100%, 180px) !important;}
  .preview-row,.report-row{padding:12px 10px !important;}
}

/* ===== v3 定向配色与可视性修复（浅色 H5 版） ===== */
:root{
  --brand-blue:#5e79ca;
  --brand-blue-deep:#34579e;
  --brand-gold:#d8ac33;
  --brand-gold-soft:#f1cc69;
  --brand-line:rgba(97,121,191,.22);
  --brand-card:#fcfdff;
  --brand-card-2:#f5f8fe;
}

/* 1) 所有主要按钮统一为 Logo 蓝/金体系 */
.primary-btn,
.key-btn.confirm,
.answer-btn.primary-answer,
.color-choice.active,
.color-choice.is-active{
  background:linear-gradient(135deg,var(--brand-blue) 0%, #7fa3ea 58%, var(--brand-gold) 100%) !important;
  color:#ffffff !important;
  border:1px solid rgba(104,124,191,.22) !important;
  box-shadow:0 12px 28px rgba(83,107,174,.20) !important;
}
.primary-btn:hover,
.key-btn.confirm:hover,
.answer-btn.primary-answer:hover{
  filter:brightness(1.03);
  box-shadow:0 16px 34px rgba(83,107,174,.24) !important;
}
.secondary-btn,
.answer-btn,
.key-btn,
.color-choice,
.icon-btn,
.danger-btn{
  background:linear-gradient(180deg,#ffffff 0%, #f7f9fd 100%) !important;
  color:var(--brand-blue-deep) !important;
  border:1px solid rgba(103,124,186,.24) !important;
  box-shadow:0 6px 16px rgba(91,110,157,.07) !important;
}
.secondary-btn:hover,
.answer-btn:hover,
.key-btn:hover,
.color-choice:hover,
.icon-btn:hover{
  background:linear-gradient(180deg,#fffdf7 0%, #fff8ea 100%) !important;
  border-color:rgba(216,172,51,.34) !important;
}
.key-btn.back,
.answer-btn.secondary-answer,
.danger-btn{color:var(--brand-blue-deep) !important;}

/* 2) 首页题型预览列表：桌面端完整显示，移动端保留滚动 */
.preview-list,
.report-list{
  background:rgba(255,255,255,.78) !important;
}
.preview-list{
  max-height:none !important;
  overflow:visible !important;
}
@media (max-width:720px){
  .preview-list{
    max-height:50vh !important;
    overflow:auto !important;
  }
}

/* 3) 第1题：九宫格更适合浅色背景的强对比配色 */
.odd-grid{
  background:rgba(255,255,255,.72) !important;
  border-radius:20px !important;
  padding:14px !important;
  box-shadow:0 10px 24px rgba(91,110,157,.05) !important;
}
.odd-cell{
  background:linear-gradient(180deg,var(--brand-card) 0%, var(--brand-card-2) 100%) !important;
  border:1px solid rgba(110,132,190,.16) !important;
}
.odd-cell:hover{
  border-color:rgba(94,121,202,.28) !important;
  background:linear-gradient(180deg,#ffffff 0%, #f6f9ff 100%) !important;
}
.odd-cell svg{
  width:82% !important;
  height:82% !important;
}

/* 4) 第2题：数字输入与确认按钮更清晰 */
.memory-show,
.memory-input,
.keypad{
  background:rgba(255,255,255,.82) !important;
}
.digit-slot{
  background:linear-gradient(180deg,#ffffff 0%, #f5f8fe 100%) !important;
  color:#2c4b8e !important;
  border:1px solid rgba(112,131,185,.22) !important;
}
.key-btn{
  color:#315194 !important;
  font-weight:900 !important;
}

/* 5) 第3题：包含判断图形不能再“发白”，关闭混合模式并增强画布 */
.compare-wrap{
  width:min(620px,100%) !important;
}
.compare-wrap .svg-panel,
.svg-panel{
  background:linear-gradient(180deg,#ffffff 0%, #f7f9fe 100%) !important;
  border:1px solid rgba(112,131,185,.18) !important;
  border-top:1px solid rgba(112,131,185,.18) !important;
  border-bottom:1px solid rgba(112,131,185,.14) !important;
  box-shadow:0 10px 24px rgba(91,110,157,.06) !important;
}
.compare-wrap .svg-panel svg g{
  mix-blend-mode:normal !important;
  opacity:1 !important;
}
.svg-panel svg,
.compare-wrap svg,
.grammar-svg,
.pair-wrap svg,
.attention-wrap svg{
  filter:none !important;
  opacity:1 !important;
}
.svg-panel path,
.svg-panel rect,
.svg-panel circle,
.svg-panel polygon,
.svg-panel line,
.compare-wrap path,
.compare-wrap rect,
.compare-wrap circle,
.compare-wrap polygon,
.compare-wrap line{
  opacity:1 !important;
}

/* 6) 第4题：位置顺序记忆，格子与激活态增强 */
.sequence-board{
  background:rgba(255,255,255,.78) !important;
  border-radius:18px !important;
  padding:10px !important;
}
.seq-cell{
  background:linear-gradient(180deg,#ffffff 0%, #f6f8fd 100%) !important;
  border:1px solid rgba(111,130,186,.18) !important;
  color:#305091 !important;
}
.seq-cell.lit{
  border-color:rgba(94,121,202,.48) !important;
  background:radial-gradient(circle at 50% 40%, rgba(216,172,51,.30), rgba(94,121,202,.16) 68%, rgba(94,121,202,.08) 100%) !important;
  color:#20407e !important;
  box-shadow:0 0 0 2px rgba(255,255,255,.55) inset, 0 8px 20px rgba(94,121,202,.18) !important;
}
.seq-cell.chosen{
  border-color:rgba(216,172,51,.38) !important;
  background:linear-gradient(180deg,#fffaf0 0%, #fef3d7 100%) !important;
  color:#8a6514 !important;
}

/* 7) 第5题：工作记忆搜索去雾化，目标/干扰/问号更清晰 */
.box-grid{
  background:rgba(255,255,255,.78) !important;
  border-radius:18px !important;
  padding:12px !important;
}
.box-cell{
  background:linear-gradient(180deg,#ffffff 0%, #f6f8fd 100%) !important;
  border:1px solid rgba(111,130,186,.18) !important;
  color:#6c83b6 !important;
  text-shadow:none !important;
}
.box-cell.clue{
  background:linear-gradient(180deg,#ffffff 0%, #f8fbff 100%) !important;
  border-color:rgba(111,130,186,.28) !important;
  color:#6e81b3 !important;
}
.box-cell.target{
  background:linear-gradient(180deg,#fff8e6 0%, #fde9b8 100%) !important;
  border-color:rgba(216,172,51,.55) !important;
  color:#815c0d !important;
  box-shadow:0 0 0 1px rgba(255,255,255,.65) inset,0 10px 22px rgba(216,172,51,.14) !important;
}
.box-cell.decoy{
  background:linear-gradient(180deg,#eef5ff 0%, #dbe9ff 100%) !important;
  border-color:rgba(94,121,202,.32) !important;
  color:#365799 !important;
}
.box-cell.opened{
  background:linear-gradient(180deg,#eff8ff 0%, #ddecff 100%) !important;
  border-color:rgba(94,121,202,.30) !important;
  color:#305091 !important;
}
.box-cell.wrong-pick{
  background:linear-gradient(180deg,#fff0f0 0%, #ffdede 100%) !important;
  border-color:rgba(209,93,93,.42) !important;
  color:#b54d4d !important;
}
.box-cell.ghost{opacity:.65 !important;}

/* 8) 第6题：场景记忆板/图标更通透、更锐利 */
.scene-board,
.scene-board.scene-compact{
  background:
    radial-gradient(circle at 22% 28%,rgba(94,121,202,.10),transparent 26%),
    radial-gradient(circle at 80% 68%,rgba(216,172,51,.08),transparent 26%),
    linear-gradient(180deg,#fbfcff 0%, #f5f8fd 100%) !important;
  border:1px solid rgba(112,131,185,.18) !important;
}
.scene-board:before,
.scene-board.scene-compact:before{
  background:
    linear-gradient(90deg,rgba(108,126,180,.10) 1px,transparent 1px),
    linear-gradient(rgba(108,126,180,.10) 1px,transparent 1px) !important;
  background-size:25% 25% !important;
  opacity:.8 !important;
}
.scene-memory-pin{
  background:linear-gradient(180deg,#ffffff 0%, #f6f9ff 100%) !important;
  border:1px solid rgba(112,131,185,.22) !important;
  box-shadow:0 8px 18px rgba(91,110,157,.10) !important;
}
.scene-memory-pin span{
  filter:none !important;
}
.scene-answer-pin{
  background:linear-gradient(180deg,#edf4ff 0%, #dfeeff 100%) !important;
  border:2px solid rgba(94,121,202,.34) !important;
  box-shadow:0 8px 18px rgba(91,110,157,.08) !important;
}
.scene-answer-pin span{
  background:#5e79ca !important;
  box-shadow:0 0 0 4px rgba(255,255,255,.76), 0 0 10px rgba(94,121,202,.18) !important;
}
.target-object{
  background:linear-gradient(180deg,#fff7e2 0%, #feefc3 100%) !important;
  border-color:rgba(216,172,51,.34) !important;
}

/* 9) 其余通用：避免浅色文字贴近浅色背景 */
.notice,
.chip,
.copy,
.scene-copy,
.scene-target-line,
.phase,
.progress-meta,
.report-row span,
.preview-row span,
.rule span,
.result-item span{
  color:#5f729e !important;
}
.title-lg,
.title-xl,
.grammar-statement,
.report-row b,
.preview-row b,
.rule b,
.result-item b{
  color:#2e4f92 !important;
}

/* 对题型区块整体再加一点轮廓，减少“发白”感 */
.memory-show,
.memory-input,
.keypad,
.compare-wrap,
.sequence-board,
.box-grid,
.scene-board,
.scene-board.scene-compact,
.attention-wrap > div,
.pair-wrap > div,
.grammar-board,
.spatial-grid,
.svg-panel,
.odd-grid{
  box-shadow:0 10px 24px rgba(91,110,157,.06) !important;
}


/* ===== v4 定向修复：第6/7/9/10/11题与按钮/浅色可视性 ===== */

/* 第6题：物品背景完全不透明，去掉雾化滤镜 */
.scene-memory-pin{
  background:#ffffff !important;
  opacity:1 !important;
  border:1px solid rgba(101,122,187,.22) !important;
  box-shadow:0 8px 18px rgba(91,110,157,.08) !important;
}
.scene-memory-pin span{
  filter:none !important;
  opacity:1 !important;
}
.scene-board,
.scene-board.scene-compact{
  background:linear-gradient(180deg,#fbfcff 0%, #f5f8fd 100%) !important;
}
.scene-board:before,
.scene-board.scene-compact:before{
  opacity:.45 !important;
}

/* 第7题：层位边框颜色改为浅色版同步色系，备用列也做清晰化 */
.plan-col.target-blue,.plan-slot-frame.target-blue{color:#2f67b1 !important;}
.plan-col.target-cyan,.plan-slot-frame.target-cyan{color:#31b8be !important;}
.plan-col.target-green,.plan-slot-frame.target-green{color:#32b457 !important;}
.plan-col.target-gold,.plan-slot-frame.target-gold{color:#d2a12f !important;}
.plan-col.target-violet,.plan-slot-frame.target-violet{color:#ad6be1 !important;}
.plan-col.target-red,.plan-slot-frame.target-red{color:#d95b63 !important;}
.plan-slot-frame.target-spare-slot,
.plan-col.target-spare,
.plan-col.target-spare .plan-slot-frame{
  color:#b2bbd3 !important;
}
.plan-slot-frame{
  filter:none !important;
  opacity:1 !important;
}
.plan-col{
  background:linear-gradient(180deg,rgba(255,255,255,.74) 0%, rgba(246,249,255,.92) 100%) !important;
  border:1px solid rgba(113,132,187,.12) !important;
}
.plan-stack-block{
  box-shadow:0 8px 16px rgba(63,84,124,.12) !important;
}

/* 第9题：修复方块被全局 rect 规则洗白，明确区分卡片底板和色块 */
.flex-compare-wrap .flex-card,
.mental-board .flex-card{
  fill:rgba(247,250,255,.92) !important;
  stroke:rgba(112,131,185,.28) !important;
}
.flex-compare-wrap .flex-block,
.mental-board .flex-block{
  fill:var(--block-fill) !important;
  stroke:none !important;
  opacity:1 !important;
}
.flex-compare-wrap > div,
.mental-board{
  background:linear-gradient(180deg,#ffffff 0%, #f6f8fd 100%) !important;
  border:1px solid rgba(112,131,185,.16) !important;
  box-shadow:0 12px 26px rgba(91,110,157,.06) !important;
}
.mental-board .base-layer{opacity:.88 !important;}
.mental-board .rotate-layer{opacity:.55 !important;mix-blend-mode:multiply !important;}

/* 第10题及其他题按钮：hover/focus 仍保证文字可见 */
.answer-btn.primary-answer{
  background:linear-gradient(135deg,#5e79ca 0%, #7fa3ea 58%, #d8ac33 100%) !important;
  color:#ffffff !important;
  border:1px solid rgba(95,121,202,.24) !important;
}
.answer-btn.primary-answer:hover,
.answer-btn.primary-answer:focus-visible{
  background:linear-gradient(135deg,#5672c0 0%, #7398e3 58%, #cf9f27 100%) !important;
  color:#ffffff !important;
}
.answer-btn.secondary-answer,
.answer-btn:not(.primary-answer){
  background:linear-gradient(180deg,#ffffff 0%, #f7f9fd 100%) !important;
  color:#315194 !important;
  border:1px solid rgba(103,124,186,.24) !important;
}
.answer-btn.secondary-answer:hover,
.answer-btn.secondary-answer:focus-visible,
.answer-btn:not(.primary-answer):hover,
.answer-btn:not(.primary-answer):focus-visible{
  background:linear-gradient(180deg,#fffdf7 0%, #fff6e5 100%) !important;
  color:#315194 !important;
  border-color:rgba(216,172,51,.38) !important;
}

/* 第11题：颜色名称按钮与实际测试色统一成更清晰的色相 */
.color-choice.color-green{color:#22a55b !important;}
.color-choice.color-purple{color:#8a56d8 !important;}
.color-choice.color-yellow{color:#c99618 !important;}
.color-choice.color-red{color:#d95a5a !important;}
.stroop-word{
  text-shadow:none !important;
}

/* 通用：避免 SVG 面板或图形因 hover 变白 */
button:hover svg,
button:focus-visible svg{
  opacity:1 !important;
}


/* ===== v5 追加修复：第1题时长 / 顶部图标 / 第7题外框 / 第9题结果容器 / 第11题颜色一致 ===== */

/* 右上角主页与音乐图标：放大，匹配整体比例 */
.top-icons{gap:10px !important;}
.icon-btn{
  width:46px !important;
  height:46px !important;
  border-radius:14px !important;
  font-size:20px !important;
  font-weight:900 !important;
  line-height:1 !important;
}
@media (max-width:720px){
  .icon-btn{
    width:40px !important;
    height:40px !important;
    border-radius:12px !important;
    font-size:18px !important;
  }
}

/* 第7题：让层位外框在浅色主题下更清晰，恢复深色方案那种明确的目标框感 */
.plan-column-board{
  padding:14px 16px !important;
  border-radius:22px !important;
  background:linear-gradient(180deg,#ffffff 0%, #f5f8fe 100%) !important;
  border:1px solid rgba(112,131,185,.18) !important;
  box-shadow:0 14px 30px rgba(91,110,157,.08) !important;
}
.plan-col{
  border:1px solid rgba(122,140,190,.16) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.95), 0 6px 14px rgba(91,110,157,.06) !important;
}
.plan-slot-frame{
  opacity:1 !important;
  background:linear-gradient(180deg,rgba(255,255,255,.26) 0%, rgba(255,255,255,.10) 100%) !important;
  border-left-width:7px !important;
  border-right-width:7px !important;
  border-bottom-width:7px !important;
  box-shadow:0 3px 10px rgba(91,110,157,.08) !important;
}
.plan-slot-frame.target-blue{color:#2f67b1 !important;}
.plan-slot-frame.target-cyan{color:#2eb5bb !important;}
.plan-slot-frame.target-green{color:#2fb357 !important;}
.plan-slot-frame.target-gold{color:#cf9c1f !important;}
.plan-slot-frame.target-violet{color:#a55de4 !important;}
.plan-slot-frame.target-red{color:#da5d66 !important;}
.plan-slot-frame.target-spare-slot{
  color:#97a4c6 !important;
  background:linear-gradient(180deg,rgba(244,247,253,.92) 0%, rgba(232,238,249,.72) 100%) !important;
}
.plan-stack-block{
  box-shadow:0 10px 18px rgba(63,84,124,.16) !important;
}
@media (max-width:720px){
  .plan-slot-frame{
    border-left-width:4px !important;
    border-right-width:4px !important;
    border-bottom-width:4px !important;
  }
}

/* 第9题：结果对比容器增高，避免合并结果超出显示区 */
.mental-board.reviewing{
  height:300px !important;
  margin-bottom:24px !important;
}
.mental-board.reviewing svg{
  width:78% !important;
  height:78% !important;
}
@media (max-width:720px){
  .mental-board.reviewing{
    height:220px !important;
    margin-bottom:16px !important;
  }
  .mental-board.reviewing svg{
    width:84% !important;
    height:84% !important;
  }
}

/* 第11题：选项色值与文字显示色完全同步，避免出现看起来不匹配 */
.color-choice.color-green{color:#20a959 !important;}
.color-choice.color-purple{color:#a34df5 !important;}
.color-choice.color-yellow{color:#d09a17 !important;}
.color-choice.color-red{color:#df5b63 !important;}
.stroop-word{
  text-shadow:none !important;
  filter:none !important;
}

/* 按钮 hover / focus 统一保持可读性 */
.primary-btn:hover,
.primary-btn:focus-visible,
.secondary-btn:hover,
.secondary-btn:focus-visible,
.answer-btn:hover,
.answer-btn:focus-visible,
.key-btn:hover,
.key-btn:focus-visible,
.color-choice:hover,
.color-choice:focus-visible,
.icon-btn:hover,
.icon-btn:focus-visible{
  color:inherit;
}
.answer-btn.primary-answer:hover,
.answer-btn.primary-answer:focus-visible,
.primary-btn:hover,
.primary-btn:focus-visible{
  color:#ffffff !important;
}
.secondary-btn:hover,
.secondary-btn:focus-visible,
.answer-btn.secondary-answer:hover,
.answer-btn.secondary-answer:focus-visible,
.key-btn:hover,
.key-btn:focus-visible{
  color:#315194 !important;
}

/* ===== v6 targeted fix: icon glyph / planning frame / flexibility subtle mismatch / stroop real color ===== */

/* 顶部图标：保持按钮比例，放大图形本身 */
.top-icons{gap:10px !important;}
.icon-btn{
  width:46px !important;
  height:46px !important;
  padding:0 !important;
  display:grid !important;
  place-items:center !important;
}
.icon-btn .icon-svg{
  width:24px !important;
  height:24px !important;
  display:block !important;
}
.icon-btn .icon-home{width:26px !important;height:26px !important;}
.icon-btn .icon-note,
.icon-btn .icon-mute{width:23px !important;height:23px !important;}
@media (max-width:720px){
  .icon-btn{width:40px !important;height:40px !important;}
  .icon-btn .icon-svg{width:22px !important;height:22px !important;}
  .icon-btn .icon-home{width:24px !important;height:24px !important;}
}

/* 第7题：目标槽位颜色必须清晰可见，并与方块颜色一一对应 */
.plan-actions{justify-content:center !important;}
.plan-actions .secondary-btn,
.plan-actions .primary-btn{min-width:118px;}
.plan-slot-box{
  position:absolute;
  inset:auto 50% 8px auto;
  left:50%;
  transform:translateX(-50%);
}
.plan-stack-box{
  position:absolute;
  left:50% !important;
  transform:translateX(-50%);
}
.plan-slot-frame{
  box-sizing:border-box !important;
  opacity:1 !important;
  filter:none !important;
  box-shadow:0 6px 14px rgba(80,104,158,.10) !important;
}
.plan-slot-frame::before{
  content:'';
  position:absolute;
  inset:6px 6px 4px 6px;
  border-radius:8px;
  background:color-mix(in srgb, currentColor 10%, white 90%);
  opacity:.9;
}
.plan-slot-frame.target-blue{color:#2f67b1 !important;}
.plan-slot-frame.target-cyan{color:#2eb5bb !important;}
.plan-slot-frame.target-green{color:#2fb357 !important;}
.plan-slot-frame.target-gold{color:#cf9c1f !important;}
.plan-slot-frame.target-violet{color:#a55de4 !important;}
.plan-slot-frame.target-red{color:#da5d66 !important;}
.plan-slot-frame.target-spare-slot{
  color:#9aa6c7 !important;
}
.plan-stack-block{
  left:50% !important;
  transform:translateX(-50%) !important;
  width:52px !important;
  box-shadow:0 10px 18px rgba(63,84,124,.16) !important;
}
@media (max-width:720px){
  .plan-stack-block{width:28px !important;}
  .plan-slot-frame::before{inset:4px 4px 3px 4px;border-radius:6px;}
}

/* 第9题：结果容器更高，且明显不同的题目减少，视觉对比更柔和 */
.mental-board.reviewing{height:320px !important;}
.mental-board.reviewing svg{width:76% !important;height:76% !important;}
@media (max-width:720px){
  .mental-board.reviewing{height:228px !important;}
  .mental-board.reviewing svg{width:82% !important;height:82% !important;}
}

/* 第11题：真正使用题目逻辑中的颜色变量，不再被主题蓝覆盖 */
.stroop-word{
  color:var(--stroop-color, #284788) !important;
  text-shadow:none !important;
  filter:none !important;
}
.color-choice.color-green{color:#20a959 !important;}
.color-choice.color-purple{color:#a34df5 !important;}
.color-choice.color-yellow{color:#d09a17 !important;}
.color-choice.color-red{color:#df5b63 !important;}
.color-choice:hover,
.color-choice:focus-visible{
  background:#fffdf8 !important;
}
.plan-slot-frame.target-blue::before{background:rgba(47,103,177,.12) !important;}
.plan-slot-frame.target-cyan::before{background:rgba(46,181,187,.12) !important;}
.plan-slot-frame.target-green::before{background:rgba(47,179,87,.12) !important;}
.plan-slot-frame.target-gold::before{background:rgba(207,156,31,.14) !important;}
.plan-slot-frame.target-violet::before{background:rgba(165,93,228,.12) !important;}
.plan-slot-frame.target-red::before{background:rgba(218,93,102,.12) !important;}
.plan-slot-frame.target-spare-slot::before{background:rgba(154,166,199,.10) !important;}

/* ===== v7 final targeted fix: Q7 frame colors + Q11 full color cycle ===== */

/* 第7题：恢复深色版那种“层位外框色”表达，只换成浅色主题适配色。
   关键点：去掉会冲淡边框的内层淡色遮罩，直接强调侧边/底边颜色。 */
.plan-slot-box{position:absolute;inset:0;z-index:1;pointer-events:none;}
.plan-stack-box{position:absolute;inset:0;z-index:2;pointer-events:none;}
.plan-slot-frame{
  background:transparent !important;
  box-shadow:none !important;
  filter:none !important;
  opacity:1 !important;
  border-left-style:solid !important;
  border-right-style:solid !important;
  border-bottom-style:solid !important;
}
.plan-slot-frame::before,
.plan-slot-frame::after{display:none !important;content:none !important;}
.plan-slot-frame.target-blue{color:#1c6fb9 !important;}
.plan-slot-frame.target-cyan{color:#27a7ec !important;}
.plan-slot-frame.target-green{color:#15c93d !important;}
.plan-slot-frame.target-gold{color:#f0d200 !important;}
.plan-slot-frame.target-violet{color:#c86ef3 !important;}
.plan-slot-frame.target-red{color:#ef2b37 !important;}
.plan-slot-frame.target-spare-slot{color:#cfd6e6 !important;}

/* 让空槽位的色框本身更醒目，避免浅背景下看不出往哪挪 */
.plan-col.empty .plan-slot-frame,
.plan-col .plan-slot-frame{
  opacity:1 !important;
}
.plan-col.target-spare::before,
.plan-col.target-spare::after,
.plan-col.target-spare .plan-slot-box::before{
  display:none !important;
}

/* 色块压在框内，但不遮掉目标框颜色 */
.plan-stack-block{
  z-index:3 !important;
  box-shadow:0 8px 16px rgba(54,76,122,.12) !important;
}

/* 移动端继续保持清晰 */
@media (max-width:720px){
  .plan-slot-frame{
    border-left-width:4px !important;
    border-right-width:4px !important;
    border-bottom-width:4px !important;
  }
}

/* ===== v8 q7 rebuild from dark-version display logic ===== */
/* 目的：直接恢复深色版第7题的色框/色块显示逻辑，只保留浅色页面背景。 */
.plan-column-board{
  height:265px !important;
  gap:12px !important;
}
.plan-col{
  width:92px !important;
  height:212px !important;
  position:relative !important;
}
.plan-slot-box,
.plan-stack-box{
  position:absolute !important;
  left:50% !important;
  transform:translateX(-50%) !important;
  width:60px !important;
  pointer-events:none !important;
}
.plan-slot-box{
  bottom:8px !important;
  height:150px !important;
}
.plan-stack-box{
  bottom:8px !important;
  height:150px !important;
}

/* 恢复深色版层位色框：只有左右+底边，且上下无隔断。 */
.plan-slot-frame{
  position:absolute !important;
  left:-7px !important;
  width:74px !important;
  height:42px !important;
  bottom:calc(var(--level) * 42px) !important;
  border-left:7px solid currentColor !important;
  border-right:7px solid currentColor !important;
  border-bottom:0 !important;
  border-radius:0 !important;
  box-sizing:border-box !important;
  opacity:.95 !important;
  background:transparent !important;
  box-shadow:none !important;
  filter:none !important;
}
.plan-slot-frame.bottom-slot{
  border-bottom:7px solid currentColor !important;
  border-radius:0 0 12px 12px !important;
}
.plan-slot-frame::before,
.plan-slot-frame::after{display:none !important;content:none !important;}

/* 色框颜色：完全沿用深色版色值 */
.plan-slot-frame.target-blue{color:#0b67a8 !important;}
.plan-slot-frame.target-cyan{color:#18a8ff !important;}
.plan-slot-frame.target-green{color:#00c715 !important;}
.plan-slot-frame.target-gold{color:#ffe100 !important;}
.plan-slot-frame.target-violet{color:#d573ff !important;}
.plan-slot-frame.target-red{color:#e90012 !important;}
.plan-slot-frame.target-spare-slot{color:rgba(198,206,224,.95) !important;}

/* 去掉之前追加修补造成的整板横向淡框/错位框 */
.plan-col.target-spare::before,
.plan-col.target-spare::after,
.plan-col.target-spare .plan-slot-box::before,
.plan-col.target-spare .plan-slot-box::after,
.plan-col .plan-slot-box::before,
.plan-col .plan-slot-box::after{
  display:none !important;
  content:none !important;
}

/* 色块仍然按深色版的叠放方式，不改逻辑，只恢复正确位置与大小 */
.plan-stack-block{
  left:1px !important;
  bottom:calc(var(--level) * 42px) !important;
  width:58px !important;
  height:42px !important;
  border-radius:8px !important;
  z-index:3 !important;
  box-shadow:0 8px 16px rgba(54,76,122,.12) !important;
}
.plan-col.selected .plan-stack-block:last-child{
  outline:3px solid rgba(91,117,198,.36) !important;
  box-shadow:0 0 0 4px rgba(91,117,198,.12),0 10px 18px rgba(86,104,150,.18) !important;
}
.plan-col.empty .plan-slot-frame{filter:brightness(1.02) !important;}

/* 移动端同步恢复深色版比例 */
@media (max-width:720px){
  .plan-column-board{
    width:min(352px,100%) !important;
    height:190px !important;
    gap:4px !important;
  }
  .plan-col{
    width:48px !important;
    height:156px !important;
  }
  .plan-slot-box,
  .plan-stack-box{
    width:32px !important;
    height:100px !important;
    bottom:6px !important;
  }
  .plan-slot-frame{
    left:-4px !important;
    width:40px !important;
    height:29px !important;
    bottom:calc(var(--level) * 29px) !important;
    border-left-width:4px !important;
    border-right-width:4px !important;
    border-bottom-width:0 !important;
    border-radius:0 !important;
  }
  .plan-slot-frame.bottom-slot{
    border-bottom-width:4px !important;
    border-radius:0 0 8px 8px !important;
  }
  .plan-stack-block{
    left:0 !important;
    width:32px !important;
    height:29px !important;
    bottom:calc(var(--level) * 29px) !important;
    border-radius:5px !important;
  }
}

/* ===== v9 q7 exact dark-layout rollback ===== */
/* 说明：用户反馈 v8 仍出现“块和容器错位”。这里不再做推测式细调，直接把第7题展示层回滚为深色稳定版的尺寸关系，
   只保留浅色页面背景，不再改变色块与外框的结构比例。 */
.plan-column-board{
  height:265px !important;
  gap:12px !important;
}
.plan-col{
  width:92px !important;
  height:212px !important;
  position:relative !important;
}
.plan-slot-box,
.plan-stack-box{
  position:absolute !important;
  left:50% !important;
  transform:translateX(-50%) !important;
  width:60px !important;
  height:150px !important;
  bottom:8px !important;
  pointer-events:none !important;
}

/* 完全回滚到深色版的层位容器显示尺寸 */
.plan-slot-frame{
  position:absolute !important;
  left:-7px !important;
  width:74px !important;
  height:42px !important;
  bottom:calc(var(--level) * 42px) !important;
  border-left:7px solid currentColor !important;
  border-right:7px solid currentColor !important;
  border-bottom:7px solid currentColor !important;
  border-radius:0 0 12px 12px !important;
  box-sizing:border-box !important;
  opacity:.95 !important;
  background:transparent !important;
  box-shadow:none !important;
  filter:none !important;
}
.plan-slot-frame::before,
.plan-slot-frame::after{display:none !important;content:none !important;}

/* 色框使用深色稳定版颜色 */
.plan-slot-frame.target-blue{color:#0b67a8 !important;}
.plan-slot-frame.target-cyan{color:#18a8ff !important;}
.plan-slot-frame.target-green{color:#00c715 !important;}
.plan-slot-frame.target-gold{color:#ffe100 !important;}
.plan-slot-frame.target-violet{color:#d573ff !important;}
.plan-slot-frame.target-red{color:#e90012 !important;}
.plan-slot-frame.target-spare-slot{color:rgba(198,206,224,.95) !important;}

/* 色块也完全回滚到深色稳定版的尺寸与底部定位，避免与容器错位 */
.plan-stack-block{
  left:1px !important;
  width:58px !important;
  height:35px !important;
  bottom:calc(var(--level) * 42px + 6px) !important;
  border-radius:8px !important;
  z-index:3 !important;
  box-shadow:0 8px 16px rgba(54,76,122,.12) !important;
}

/* 清理掉之前为“无隔断”加入的影响定位的规则 */
.plan-slot-frame.bottom-slot{
  border-bottom:7px solid currentColor !important;
  border-radius:0 0 12px 12px !important;
}
.plan-col.target-spare::before,
.plan-col.target-spare::after,
.plan-col.target-spare .plan-slot-box::before,
.plan-col.target-spare .plan-slot-box::after,
.plan-col .plan-slot-box::before,
.plan-col .plan-slot-box::after{
  display:none !important;
  content:none !important;
}
.plan-col.selected .plan-stack-block:last-child{
  outline:3px solid rgba(91,117,198,.36) !important;
  box-shadow:0 0 0 4px rgba(91,117,198,.12),0 10px 18px rgba(86,104,150,.18) !important;
}
.plan-col.empty .plan-slot-frame{filter:brightness(1.02) !important;}

@media (max-width:720px){
  .plan-column-board{
    width:min(352px,100%) !important;
    height:190px !important;
    gap:4px !important;
  }
  .plan-col{
    width:48px !important;
    height:156px !important;
  }
  .plan-slot-box,
  .plan-stack-box{
    width:32px !important;
    height:100px !important;
    bottom:6px !important;
  }
  .plan-slot-frame{
    left:-4px !important;
    width:40px !important;
    height:29px !important;
    bottom:calc(var(--level) * 29px) !important;
    border-left-width:4px !important;
    border-right-width:4px !important;
    border-bottom-width:4px !important;
    border-radius:0 0 8px 8px !important;
  }
  .plan-stack-block{
    left:0 !important;
    width:32px !important;
    height:23px !important;
    bottom:calc(var(--level) * 29px + 4px) !important;
    border-radius:5px !important;
  }
}


/* ===== v10 q7 final rollback: use dark version board/frame/block logic exactly, only keep light page background ===== */
.plan-darklogic-skin{
  width:100%;
}
.plan-darklogic-skin .plan-column-board{
  position:relative !important;
  width:min(690px,100%) !important;
  height:265px !important;
  margin:16px auto 14px !important;
  display:flex !important;
  justify-content:center !important;
  align-items:flex-end !important;
  gap:12px !important;
  padding:16px 0 14px !important;
  border-top:1px solid rgba(188,198,220,.55) !important;
  border-bottom:1px solid rgba(188,198,220,.55) !important;
  background:transparent !important;
}
.plan-darklogic-skin .plan-column-board.demo{
  height:225px !important;
  transform:scale(.94) !important;
  transform-origin:center top !important;
  margin-bottom:0 !important;
}
.plan-darklogic-skin .plan-col{
  position:relative !important;
  width:92px !important;
  height:212px !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  touch-action:manipulation !important;
  user-select:none !important;
  -webkit-user-select:none !important;
}
.plan-darklogic-skin .plan-col::after{display:none !important;content:none !important;}
.plan-darklogic-skin .plan-slot-box,
.plan-darklogic-skin .plan-stack-box{
  position:absolute !important;
  left:50% !important;
  transform:translateX(-50%) !important;
  width:60px !important;
  height:150px !important;
  bottom:8px !important;
  pointer-events:none !important;
}
.plan-darklogic-skin .plan-slot-box{z-index:1 !important;}
.plan-darklogic-skin .plan-stack-box{z-index:2 !important;}

/* 深色稳定版：目标容器只有底层闭合，其余层只显示侧边轨道 */
.plan-darklogic-skin .plan-slot-frame{
  position:absolute !important;
  left:-7px !important;
  width:74px !important;
  height:42px !important;
  bottom:calc(var(--level) * 42px) !important;
  border-left:7px solid currentColor !important;
  border-right:7px solid currentColor !important;
  border-bottom:0 !important;
  border-top:0 !important;
  border-radius:0 !important;
  box-sizing:border-box !important;
  opacity:.95 !important;
  background:transparent !important;
  box-shadow:none !important;
  filter:none !important;
}
.plan-darklogic-skin .plan-slot-frame.bottom-slot{
  border-bottom:7px solid currentColor !important;
  border-radius:0 0 12px 12px !important;
}
.plan-darklogic-skin .plan-slot-frame::before,
.plan-darklogic-skin .plan-slot-frame::after,
.plan-darklogic-skin .plan-slot-box::before,
.plan-darklogic-skin .plan-slot-box::after,
.plan-darklogic-skin .plan-col.target-spare::before,
.plan-darklogic-skin .plan-col.target-spare::after,
.plan-darklogic-skin .plan-col.target-spare .plan-slot-box::before,
.plan-darklogic-skin .plan-col.target-spare .plan-slot-box::after{
  display:none !important;
  content:none !important;
}
.plan-darklogic-skin .plan-slot-frame.target-blue{color:#0b67a8 !important;}
.plan-darklogic-skin .plan-slot-frame.target-cyan{color:#18a8ff !important;}
.plan-darklogic-skin .plan-slot-frame.target-green{color:#00c715 !important;}
.plan-darklogic-skin .plan-slot-frame.target-gold{color:#ffe100 !important;}
.plan-darklogic-skin .plan-slot-frame.target-violet{color:#d573ff !important;}
.plan-darklogic-skin .plan-slot-frame.target-red{color:#e90012 !important;}
.plan-darklogic-skin .plan-slot-frame.target-spare-slot{color:#b7c0d4 !important;}

.plan-darklogic-skin .plan-stack-block{
  position:absolute !important;
  left:1px !important;
  width:58px !important;
  height:42px !important;
  bottom:calc(var(--level) * 42px) !important;
  border-radius:8px !important;
  z-index:3 !important;
  box-shadow:0 7px 16px rgba(0,0,0,.18) !important;
}
.plan-darklogic-skin .plan-stack-block + .plan-stack-block{margin:0 !important;}
.plan-darklogic-skin .token-blue{background:#0b67a8 !important;}
.plan-darklogic-skin .token-cyan{background:#18a8ff !important;}
.plan-darklogic-skin .token-green{background:#00d90b !important;}
.plan-darklogic-skin .token-gold{background:#ffe100 !important;}
.plan-darklogic-skin .token-violet{background:#d573ff !important;}
.plan-darklogic-skin .token-red{background:#e90012 !important;}
.plan-darklogic-skin .plan-col.selected .plan-stack-block:last-child{
  outline:3px solid rgba(255,255,255,.92) !important;
  box-shadow:0 0 0 4px rgba(99,245,223,.18),0 10px 18px rgba(0,0,0,.22) !important;
}
.plan-darklogic-skin .plan-col.empty .plan-slot-frame{opacity:.95 !important;filter:none !important;}
.plan-darklogic-skin .plan-col:hover .plan-slot-frame{filter:brightness(1.06) !important;}

@media (max-width:720px){
  .plan-darklogic-skin .plan-column-board{
    width:min(352px,100%) !important;
    height:190px !important;
    margin:8px auto 8px !important;
    gap:4px !important;
    padding:8px 0 8px !important;
  }
  .plan-darklogic-skin .plan-column-board.demo{height:165px !important;}
  .plan-darklogic-skin .plan-col{
    width:48px !important;
    height:156px !important;
  }
  .plan-darklogic-skin .plan-slot-box,
  .plan-darklogic-skin .plan-stack-box{
    width:32px !important;
    height:100px !important;
    bottom:6px !important;
  }
  .plan-darklogic-skin .plan-slot-frame{
    left:-4px !important;
    width:40px !important;
    height:29px !important;
    bottom:calc(var(--level) * 29px) !important;
    border-left-width:4px !important;
    border-right-width:4px !important;
    border-bottom-width:0 !important;
    border-radius:0 !important;
  }
  .plan-darklogic-skin .plan-slot-frame.bottom-slot{
    border-bottom-width:4px !important;
    border-radius:0 0 8px 8px !important;
  }
  .plan-darklogic-skin .plan-stack-block{
    left:0 !important;
    width:32px !important;
    height:29px !important;
    bottom:calc(var(--level) * 29px) !important;
    border-radius:5px !important;
  }
}


/* ===== v11 第7题彻底修复：清除浅色适配残留定位，只保留深色稳定版内部坐标 =====
   核心原因：浅色版曾给 .plan-stack-block 加过 transform:translateX(-50%)，
   v10 只回滚了 left/bottom/width/height，但没有清掉 transform，导致色块与外框错位。
   本段只作用于第7题的 .plan-darklogic-skin 内部，不影响其它题。
*/
.plan-darklogic-skin,
.plan-darklogic-skin *{
  box-sizing:border-box !important;
}
.plan-darklogic-skin .plan-column-board{
  width:min(690px,100%) !important;
  height:265px !important;
  margin:16px auto 14px !important;
  display:flex !important;
  justify-content:center !important;
  align-items:flex-end !important;
  gap:12px !important;
  padding:16px 0 14px !important;
  border-top:1px solid rgba(188,198,220,.55) !important;
  border-bottom:1px solid rgba(188,198,220,.55) !important;
  background:transparent !important;
  overflow:visible !important;
}
.plan-darklogic-skin .plan-col{
  position:relative !important;
  width:92px !important;
  height:212px !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  overflow:visible !important;
  transform:none !important;
}
.plan-darklogic-skin .plan-slot-box,
.plan-darklogic-skin .plan-stack-box{
  position:absolute !important;
  left:50% !important;
  width:60px !important;
  height:150px !important;
  bottom:8px !important;
  transform:translateX(-50%) !important;
  pointer-events:none !important;
  top:auto !important;
  right:auto !important;
}
.plan-darklogic-skin .plan-slot-box{z-index:1 !important;}
.plan-darklogic-skin .plan-stack-box{z-index:2 !important;}

/* 外框完全按深色稳定版：以 slot-box 为坐标基准 */
.plan-darklogic-skin .plan-slot-frame{
  position:absolute !important;
  left:-7px !important;
  top:auto !important;
  right:auto !important;
  width:74px !important;
  height:42px !important;
  bottom:calc(var(--level) * 42px) !important;
  transform:none !important;
  border-left:7px solid currentColor !important;
  border-right:7px solid currentColor !important;
  border-bottom:0 !important;
  border-top:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  opacity:.95 !important;
  box-shadow:none !important;
  filter:none !important;
}
.plan-darklogic-skin .plan-slot-frame.bottom-slot{
  border-bottom:7px solid currentColor !important;
  border-radius:0 0 12px 12px !important;
}
.plan-darklogic-skin .plan-slot-frame::before,
.plan-darklogic-skin .plan-slot-frame::after,
.plan-darklogic-skin .plan-slot-box::before,
.plan-darklogic-skin .plan-slot-box::after,
.plan-darklogic-skin .plan-col::before,
.plan-darklogic-skin .plan-col::after{
  display:none !important;
  content:none !important;
}

/* 色块完全按深色稳定版：以 stack-box 为坐标基准，重点清除 transform 残留 */
.plan-darklogic-skin .plan-stack-block{
  position:absolute !important;
  left:1px !important;
  top:auto !important;
  right:auto !important;
  width:58px !important;
  height:42px !important;
  bottom:calc(var(--level) * 42px) !important;
  transform:none !important;
  margin:0 !important;
  border-radius:8px !important;
  z-index:3 !important;
  box-shadow:0 7px 16px rgba(0,0,0,.18) !important;
}
.plan-darklogic-skin .plan-stack-block + .plan-stack-block{margin:0 !important;}

/* 颜色也回到深色版，不再做浅色二次处理 */
.plan-darklogic-skin .plan-slot-frame.target-blue{color:#0b67a8 !important;}
.plan-darklogic-skin .plan-slot-frame.target-cyan{color:#18a8ff !important;}
.plan-darklogic-skin .plan-slot-frame.target-green{color:#00c715 !important;}
.plan-darklogic-skin .plan-slot-frame.target-gold{color:#ffe100 !important;}
.plan-darklogic-skin .plan-slot-frame.target-violet{color:#d573ff !important;}
.plan-darklogic-skin .plan-slot-frame.target-red{color:#e90012 !important;}
.plan-darklogic-skin .plan-slot-frame.target-spare-slot{color:#b7c0d4 !important;}
.plan-darklogic-skin .token-blue{background:#0b67a8 !important;}
.plan-darklogic-skin .token-cyan{background:#18a8ff !important;}
.plan-darklogic-skin .token-green{background:#00d90b !important;}
.plan-darklogic-skin .token-gold{background:#ffe100 !important;}
.plan-darklogic-skin .token-violet{background:#d573ff !important;}
.plan-darklogic-skin .token-red{background:#e90012 !important;}

.plan-darklogic-skin .plan-col.selected .plan-stack-block:last-child{
  outline:3px solid rgba(255,255,255,.92) !important;
  box-shadow:0 0 0 4px rgba(99,245,223,.18),0 10px 18px rgba(0,0,0,.22) !important;
}

@media (max-width:720px){
  .plan-darklogic-skin .plan-column-board{
    width:min(352px,100%) !important;
    height:190px !important;
    margin:8px auto 8px !important;
    gap:4px !important;
    padding:8px 0 8px !important;
  }
  .plan-darklogic-skin .plan-col{
    width:48px !important;
    height:156px !important;
  }
  .plan-darklogic-skin .plan-slot-box,
  .plan-darklogic-skin .plan-stack-box{
    width:32px !important;
    height:100px !important;
    bottom:6px !important;
    transform:translateX(-50%) !important;
  }
  .plan-darklogic-skin .plan-slot-frame{
    left:-4px !important;
    width:40px !important;
    height:29px !important;
    bottom:calc(var(--level) * 29px) !important;
    transform:none !important;
    border-left-width:4px !important;
    border-right-width:4px !important;
    border-bottom-width:0 !important;
    border-radius:0 !important;
  }
  .plan-darklogic-skin .plan-slot-frame.bottom-slot{
    border-bottom-width:4px !important;
    border-radius:0 0 8px 8px !important;
  }
  .plan-darklogic-skin .plan-stack-block{
    left:0 !important;
    width:32px !important;
    height:29px !important;
    bottom:calc(var(--level) * 29px) !important;
    transform:none !important;
    border-radius:5px !important;
  }
}


/* ===== v12 第7题选中色块提示优化 ===== */
/* 仅修改选中态：由白色描边改为浅灰阴影/描边，浅色背景下更容易看出当前选中的色块 */
.plan-darklogic-skin .plan-col.selected .plan-stack-block:last-child,
.plan-col.selected .plan-stack-block:last-child{
  outline:3px solid rgba(120,132,160,.72) !important;
  box-shadow:
    0 0 0 5px rgba(120,132,160,.18),
    0 10px 20px rgba(74,88,128,.22) !important;
  filter:brightness(1.03) saturate(1.03) !important;
}
@media (max-width:720px){
  .plan-darklogic-skin .plan-col.selected .plan-stack-block:last-child,
  .plan-col.selected .plan-stack-block:last-child{
    outline:2px solid rgba(120,132,160,.76) !important;
    box-shadow:
      0 0 0 4px rgba(120,132,160,.18),
      0 8px 16px rgba(74,88,128,.20) !important;
  }
}



/* ===== v13 首页布局：题型预览默认收起，左侧预览，右侧从第1题开始 ===== */
.home-split{
  width:min(980px,100%);
  display:grid;
  grid-template-columns:minmax(210px,280px) minmax(0,1fr);
  gap:22px;
  align-items:stretch;
  margin:0 auto;
  text-align:left;
}
.home-preview-panel,
.home-start-panel{
  background:rgba(255,255,255,.74);
  border:1px solid rgba(120,142,191,.18);
  border-radius:24px;
  box-shadow:0 14px 30px rgba(91,110,157,.07);
}
.home-preview-panel{
  padding:16px;
  min-height:420px;
  display:flex;
  flex-direction:column;
}
.home-preview-panel.is-collapsed{
  min-height:420px;
}
.home-preview-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding-bottom:12px;
  border-bottom:1px solid rgba(120,142,191,.14);
}
.home-preview-head b{
  display:block;
  color:#2b4b8f;
  font-size:18px;
  font-weight:950;
  line-height:1.2;
}
.home-preview-head span{
  display:block;
  margin-top:5px;
  color:#6478a7;
  font-size:12px;
  line-height:1.35;
}
.home-preview-toggle{
  min-width:70px;
  min-height:38px;
  padding:0 14px;
  border-radius:12px;
  flex:0 0 auto;
}
.home-split .preview-list{
  width:100%;
  max-height:520px !important;
  overflow:auto !important;
  margin:14px 0 0 !important;
  padding:4px;
  border-radius:18px;
  background:rgba(255,255,255,.52) !important;
}
.home-split .preview-row{
  min-height:58px;
  border-radius:14px !important;
  margin-bottom:6px;
  border:1px solid rgba(120,142,191,.12) !important;
  background:rgba(255,255,255,.78) !important;
}
.home-split .preview-row:last-child{margin-bottom:0;}
.home-split .preview-row em{
  width:30px;
  height:30px;
}
.home-split .preview-row b{
  font-size:15px;
}
.home-split .preview-row span{
  font-size:12px;
}
.home-split .preview-row .score{
  font-size:14px;
}
.home-start-panel{
  padding:34px 26px 36px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  min-height:420px;
}
.home-start-panel .logo-large{
  width:210px;
  max-width:72%;
  margin-bottom:18px;
}
.home-start-panel .title-xl{
  margin-top:18px;
}
.home-start-panel .copy{
  max-width:560px;
}
.home-start-panel .action-row{
  margin-top:24px;
}
.home-preview-panel.is-collapsed .home-preview-head{
  border-bottom:0;
  padding-bottom:0;
}
.home-preview-panel.is-collapsed{
  justify-content:center;
  background:
    radial-gradient(circle at 30% 20%,rgba(242,195,79,.10),transparent 36%),
    linear-gradient(180deg,rgba(255,255,255,.78),rgba(247,250,255,.70));
}
.home-preview-panel.is-collapsed .home-preview-head{
  flex-direction:column;
  align-items:flex-start;
}
.home-preview-panel.is-collapsed .home-preview-toggle{
  width:100%;
}
@media (max-width:860px){
  .home-split{
    grid-template-columns:1fr;
    gap:14px;
  }
  .home-preview-panel,
  .home-preview-panel.is-collapsed,
  .home-start-panel{
    min-height:auto;
  }
  .home-preview-panel.is-collapsed .home-preview-head{
    flex-direction:row;
    align-items:center;
  }
  .home-preview-panel.is-collapsed .home-preview-toggle{
    width:auto;
  }
  .home-start-panel{
    padding:24px 16px 28px;
  }
  .home-start-panel .logo-large{
    width:180px;
  }
}
@media (max-width:520px){
  .home-split{
    width:100%;
  }
  .home-preview-panel,
  .home-start-panel{
    border-radius:20px;
  }
  .home-preview-head b{
    font-size:16px;
  }
  .home-preview-head span{
    display:none;
  }
}

/* ===== v15 首页按钮位置修正 + 题型预览默认收起 ===== */
/* 回到原首页布局：不是左右分栏，只是交换两个按钮顺序，并默认收起预览列表。 */
.home-actions-row{
  justify-content:center !important;
  gap:14px !important;
  flex-wrap:wrap !important;
}
.home-actions-row .secondary-btn,
.home-actions-row .primary-btn{
  min-width:178px !important;
}
#planList.hidden{
  display:none !important;
}
/* 兼容上一版 split 样式残留，当前首页不再使用左右分栏。 */
.home-split,
.home-preview-panel,
.home-start-panel{
  all:unset;
}
@media (max-width:720px){
  .home-actions-row .secondary-btn,
  .home-actions-row .primary-btn{
    min-width:min(220px,100%) !important;
  }
}


/* ===== v16 测试报告视觉优化：统一浅色VI风格 + 高级能力图形 ===== */
.report-page{
  width:min(820px,100%) !important;
  text-align:left !important;
  margin:0 auto !important;
  padding:0 0 24px !important;
}
.brain-hero{
  border-radius:26px !important;
  background:
    radial-gradient(circle at 12% 22%, rgba(255,255,255,.36), transparent 23%),
    linear-gradient(135deg,#6f8fd4 0%,#5f7ec9 45%,#f0c34c 100%) !important;
  box-shadow:0 18px 36px rgba(86,107,167,.16) !important;
  min-height:210px !important;
}
.report-time{
  color:#375999 !important;
  background:transparent !important;
  font-weight:800 !important;
  letter-spacing:.02em !important;
}
.risk-list{
  background:#ffffff !important;
  border:1px solid rgba(109,130,188,.14) !important;
  border-radius:22px !important;
  padding:4px 22px 0 !important;
  box-shadow:0 12px 28px rgba(91,110,157,.06) !important;
}
.risk-row{border-bottom:1px solid rgba(109,130,188,.14) !important;}
.risk-main p{color:#536a9f !important;}

.strength-card{
  margin-top:24px !important;
  background:#ffffff !important;
  color:#29457f !important;
  border:1px solid rgba(109,130,188,.14) !important;
  border-radius:24px !important;
  overflow:hidden !important;
  box-shadow:0 18px 40px rgba(91,110,157,.10) !important;
}
.strength-title{
  background:
    linear-gradient(135deg,#5f7ec9 0%,#6f8fd4 55%,#f0c34c 100%) !important;
  color:#ffffff !important;
  font-size:23px !important;
  font-weight:950 !important;
  padding:20px 28px !important;
  letter-spacing:.01em !important;
  text-shadow:0 2px 6px rgba(39,70,134,.18) !important;
}
.strength-card>p{
  margin:0 !important;
  padding:22px 28px !important;
  color:#4f6598 !important;
  font-size:16px !important;
  line-height:1.8 !important;
  font-weight:700 !important;
  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%) !important;
}
.value-card{
  margin:0 24px 24px !important;
  border:1px solid rgba(109,130,188,.16) !important;
  border-radius:22px !important;
  background:
    radial-gradient(circle at 22% 35%,rgba(111,143,212,.12),transparent 28%),
    radial-gradient(circle at 72% 60%,rgba(240,195,76,.12),transparent 28%),
    linear-gradient(180deg,#ffffff 0%,#f7faff 100%) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85),0 10px 24px rgba(91,110,157,.06) !important;
  display:grid !important;
  grid-template-columns:1.15fr .85fr !important;
  align-items:center !important;
  min-height:220px !important;
  overflow:hidden !important;
}
.people-pyramid{
  min-height:220px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:16px !important;
}
.pyramid{display:none !important;}
.ability-visual{
  width:min(330px,100%) !important;
  height:190px !important;
  display:grid !important;
  grid-template-columns:180px 1fr !important;
  align-items:center !important;
  gap:20px !important;
}
.ability-orbit{
  width:170px !important;
  height:170px !important;
  position:relative !important;
  border-radius:50% !important;
  background:
    conic-gradient(from -90deg,#5f7ec9 calc(var(--pct) * 1%), rgba(210,220,242,.58) 0),
    radial-gradient(circle at center,#ffffff 0 52%,transparent 53%) !important;
  box-shadow:0 14px 28px rgba(91,110,157,.12) !important;
}
.ability-orbit:after{
  content:'';
  position:absolute;
  inset:17px;
  border-radius:50%;
  background:#ffffff;
  box-shadow:inset 0 0 0 1px rgba(109,130,188,.14);
}
.orbit-ring{
  position:absolute;
  width:var(--r);
  height:var(--r);
  border:1px dashed rgba(95,126,201,.22);
  border-radius:50%;
  left:50%;top:50%;
  transform:translate(-50%,-50%);
  z-index:2;
}
.ability-core{
  position:absolute;
  z-index:3;
  inset:42px;
  border-radius:50%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  color:#2d4f93;
  background:linear-gradient(180deg,#f9fbff,#ffffff);
}
.ability-core b{font-size:42px;line-height:1;color:#2d4f93 !important;}
.ability-core span{font-size:12px;margin-top:5px;color:#7a8bb6 !important;font-weight:900;}
.ability-orbit .node{
  position:absolute;
  width:10px;height:10px;
  border-radius:50%;
  background:#f0c34c;
  z-index:4;
  box-shadow:0 0 0 6px rgba(240,195,76,.15);
}
.ability-orbit .n1{left:78px;top:6px}.ability-orbit .n2{right:13px;top:78px;background:#5f7ec9;box-shadow:0 0 0 6px rgba(95,126,201,.14)}.ability-orbit .n3{left:30px;bottom:24px;background:#6f8fd4;box-shadow:0 0 0 6px rgba(111,143,212,.14)}.ability-orbit .n4{right:34px;bottom:30px}
.ability-bars{
  height:145px;
  display:flex;
  align-items:flex-end;
  gap:10px;
  padding:10px 4px;
}
.ability-bars span{
  flex:1;
  height:100%;
  border-radius:999px;
  background:rgba(111,143,212,.13);
  display:flex;
  align-items:flex-end;
  overflow:hidden;
  min-width:14px;
}
.ability-bars i{
  display:block;
  width:100%;
  border-radius:999px;
  background:linear-gradient(180deg,#f0c34c 0%,#6f8fd4 100%);
  box-shadow:0 -4px 12px rgba(111,143,212,.18);
}
.value-score{text-align:center !important;padding:20px 18px !important;}
.value-score b{
  display:block !important;
  font-size:64px !important;
  color:#2d4f93 !important;
  line-height:1 !important;
  font-weight:950 !important;
}
.value-score span{
  display:block !important;
  margin-top:10px !important;
  font-size:17px !important;
  line-height:1.55 !important;
  color:#5b70a3 !important;
  font-weight:800 !important;
}
.value-score em{color:#d29a18 !important;font-style:normal !important;font-weight:950 !important;}
.report-disclaimer{
  color:#6076a8 !important;
  text-align:center !important;
  font-size:13px !important;
  line-height:1.8 !important;
  margin:20px auto 0 !important;
  font-weight:700 !important;
}
@media (max-width:720px){
  .strength-title{font-size:18px !important;padding:16px 18px !important;}
  .strength-card>p{font-size:14px !important;padding:18px 18px !important;}
  .value-card{grid-template-columns:1fr !important;margin:0 14px 18px !important;min-height:auto !important;}
  .people-pyramid{min-height:185px !important;padding:12px !important;}
  .ability-visual{grid-template-columns:150px 1fr !important;height:160px !important;gap:12px !important;}
  .ability-orbit{width:145px !important;height:145px !important;}
  .ability-core{inset:36px !important;}
  .ability-core b{font-size:34px !important;}
  .ability-bars{height:118px !important;gap:7px !important;}
  .value-score{padding:0 16px 18px !important;}
  .value-score b{font-size:48px !important;}
  .value-score span{font-size:15px !important;}
}

/* ===== v17 真实数据感报告页：只重算报告，不改题目 ===== */
.report-data-page{
  width:min(900px,100%) !important;
}
.report-data-hero{
  display:grid;
  grid-template-columns:1fr auto;
  gap:22px;
  align-items:center;
  padding:26px 30px;
  border-radius:26px;
  background:
    radial-gradient(circle at 12% 28%,rgba(255,255,255,.38),transparent 28%),
    linear-gradient(135deg,#5f7ec9 0%,#6f8fd4 58%,#f0c34c 100%);
  color:#fff;
  box-shadow:0 18px 36px rgba(86,107,167,.16);
}
.report-data-hero span{display:block;font-size:15px;font-weight:900;letter-spacing:.12em;opacity:.92;}
.report-data-hero strong{display:block;margin-top:8px;font-size:36px;line-height:1.12;font-weight:950;color:#fff !important;}
.report-data-hero p{margin:12px 0 0;max-width:620px;line-height:1.7;font-size:15px;color:rgba(255,255,255,.92) !important;font-weight:700;}
.hero-score{width:126px;height:126px;border-radius:26px;background:rgba(255,255,255,.20);display:grid;place-items:center;text-align:center;box-shadow:inset 0 0 0 1px rgba(255,255,255,.28);}
.hero-score b{font-size:50px;line-height:1;color:#fff !important;font-weight:950;}
.hero-score em{font-style:normal;color:#fff;font-size:15px;font-weight:900;}
.data-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:22px 0;}
.data-summary-grid>div{background:#fff;border:1px solid rgba(109,130,188,.14);border-radius:20px;padding:18px 16px;text-align:center;box-shadow:0 12px 28px rgba(91,110,157,.06);}
.data-summary-grid b{display:block;font-size:34px;line-height:1;color:#2d4f93 !important;font-weight:950;}
.data-summary-grid span{display:block;margin-top:9px;color:#6378aa;font-size:13px;font-weight:850;}
.data-strength-card{background:#fff;border:1px solid rgba(109,130,188,.14);border-radius:24px;overflow:hidden;box-shadow:0 18px 40px rgba(91,110,157,.08);margin-bottom:20px;}
.data-strength-title{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:18px 24px;background:linear-gradient(135deg,#f5f8ff,#fff8e6);border-bottom:1px solid rgba(109,130,188,.12);}
.data-strength-title span{color:#d29a18;font-size:13px;font-weight:950;letter-spacing:.08em;}
.data-strength-title strong{color:#2d4f93 !important;font-size:24px;font-weight:950;}
.data-strength-title em{font-style:normal;color:#5f7ec9;font-size:14px;font-weight:950;}
.data-strength-card p{margin:0;padding:18px 24px;color:#50689d !important;font-size:15px;line-height:1.8;font-weight:750;}
.chart-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:18px;margin:18px 0;}
.chart-card{background:#fff;border:1px solid rgba(109,130,188,.14);border-radius:24px;box-shadow:0 14px 32px rgba(91,110,157,.07);padding:20px 22px;}
.chart-card header{display:flex;justify-content:space-between;gap:12px;align-items:flex-end;margin-bottom:12px;border-bottom:1px solid rgba(109,130,188,.12);padding-bottom:12px;}
.chart-card header b{color:#2d4f93 !important;font-size:18px;font-weight:950;}
.chart-card header span{color:#7386b3;font-size:12px;font-weight:800;text-align:right;}
.radar-svg{width:100%;height:auto;display:block;}
.radar-ring{fill:none;stroke:rgba(95,126,201,.18);stroke-width:1;}
.radar-axis{stroke:rgba(95,126,201,.18);stroke-width:1;}
.radar-area{fill:rgba(95,126,201,.24);stroke:#5f7ec9;stroke-width:3;}
.radar-dot{fill:#f0c34c;stroke:#fff;stroke-width:2;}
.radar-label{font-size:13px;fill:#50689d;font-weight:850;}
.score-bars{display:grid;gap:9px;padding:4px 0 0;}
.score-bar-row{display:grid;grid-template-columns:34px 1fr 42px;gap:10px;align-items:center;font-size:13px;color:#526ba0;font-weight:900;}
.score-bar-row b{color:#2d4f93 !important;text-align:right;font-size:14px;}
.score-track{height:12px;border-radius:999px;background:#edf2fb;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(109,130,188,.08);}
.score-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#6f8fd4,#f0c34c);}
.score-bar-row.tone-low .score-track i{background:linear-gradient(90deg,#d95a63,#f0c34c);}
.score-bar-row.tone-mid .score-track i{background:linear-gradient(90deg,#6f8fd4,#f0c34c);}
.score-bar-row.tone-good .score-track i{background:linear-gradient(90deg,#4fb18a,#6f8fd4);}
.trend-card{margin-top:18px;}
.trend-svg{width:100%;height:auto;display:block;}
.trend-grid{stroke:rgba(109,130,188,.16);stroke-width:1;}
.trend-axis{font-size:11px;fill:#8a9ac0;font-weight:800;}
.trend-line{fill:none;stroke:#5f7ec9;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;}
.trend-dot{fill:#f0c34c;stroke:#fff;stroke-width:3;}
.trend-q{font-size:12px;fill:#6479aa;font-weight:900;}
.trend-note{margin-top:8px;padding:10px 12px;border-radius:14px;background:#f7f9ff;color:#6076a8;font-size:13px;line-height:1.65;font-weight:800;}
.detail-card{margin-top:18px;}
.data-table{display:grid;gap:0;overflow:hidden;border:1px solid rgba(109,130,188,.12);border-radius:16px;}
.data-tr{display:grid;grid-template-columns:56px 1.6fr 70px 70px 70px 80px;gap:8px;align-items:center;padding:10px 12px;border-bottom:1px solid rgba(109,130,188,.10);color:#556da2;font-size:13px;font-weight:800;background:#fff;}
.data-tr:last-child{border-bottom:0;}
.data-head{background:#f5f8ff;color:#2d4f93;font-weight:950;}
.data-tr b{color:#2d4f93 !important;}
.insight-card{margin-top:18px;}
.insight-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.insight-grid>div{background:#f8fbff;border:1px solid rgba(109,130,188,.12);border-radius:16px;padding:14px 16px;}
.insight-grid b{display:block;color:#2d4f93 !important;font-size:16px;margin-bottom:8px;}
.insight-grid p{margin:0;color:#5d73a6;line-height:1.75;font-size:14px;font-weight:750;}
.data-risk-list{margin-top:18px !important;}
.risk-meter{height:8px;margin:10px 0 6px;border-radius:999px;background:#edf2fb;overflow:hidden;}
.risk-meter i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#6f8fd4,#f0c34c,#d95a63);}
.data-risk-row .risk-warns{display:none !important;}
.report-data-page .report-disclaimer{background:#f8fbff;border:1px solid rgba(109,130,188,.12);border-radius:16px;padding:12px 16px;max-width:760px !important;}
@media (max-width:720px){
  .report-data-hero{grid-template-columns:1fr;padding:20px 18px;border-radius:22px;}
  .report-data-hero strong{font-size:26px;}
  .hero-score{width:104px;height:104px;border-radius:22px;justify-self:center;}
  .hero-score b{font-size:42px;}
  .data-summary-grid{grid-template-columns:repeat(2,1fr);gap:10px;margin:16px 0;}
  .data-summary-grid>div{padding:15px 10px;border-radius:16px;}
  .data-summary-grid b{font-size:26px;}
  .data-strength-title{grid-template-columns:1fr;gap:6px;padding:16px 18px;}
  .data-strength-title strong{font-size:20px;}
  .chart-grid{grid-template-columns:1fr;gap:14px;}
  .chart-card{padding:16px 14px;border-radius:20px;}
  .chart-card header{align-items:flex-start;flex-direction:column;gap:5px;}
  .chart-card header span{text-align:left;}
  .radar-label{font-size:11px;}
  .data-tr{grid-template-columns:42px 1.2fr 50px 48px 48px 54px;gap:5px;font-size:11px;padding:9px 8px;}
  .insight-grid{grid-template-columns:1fr;}
}


/* ===== v18 报告页：能力图改为真实维度雷达图 ===== */
.radar-value-card{
  grid-template-columns:1.25fr .75fr !important;
  gap:18px !important;
  align-items:center !important;
  padding:18px !important;
  background:linear-gradient(180deg,#ffffff 0%,#f7faff 100%) !important;
}
.report-radar-block{
  min-height:270px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}
.report-radar{
  width:min(340px,100%) !important;
  height:auto !important;
  overflow:visible !important;
  display:block !important;
}
.report-radar .radar-grid{
  fill:rgba(111,143,212,.035) !important;
  stroke:rgba(74,96,151,.20) !important;
  stroke-width:1.2 !important;
}
.report-radar .radar-axis{
  stroke:rgba(74,96,151,.16) !important;
  stroke-width:1 !important;
}
.report-radar .radar-area{
  fill:url(#radarFill) !important;
  stroke:none !important;
  filter:url(#radarShadow) !important;
}
.report-radar .radar-line{
  fill:none !important;
  stroke:#4f6fbd !important;
  stroke-width:3 !important;
  stroke-linejoin:round !important;
}
.report-radar .radar-dot{
  fill:#f0c34c !important;
  stroke:#ffffff !important;
  stroke-width:3 !important;
  filter:drop-shadow(0 4px 7px rgba(74,96,151,.18)) !important;
}
.report-radar .radar-center{
  fill:#ffffff !important;
  stroke:rgba(111,143,212,.22) !important;
  stroke-width:1.2 !important;
  filter:drop-shadow(0 5px 12px rgba(74,96,151,.12)) !important;
}
.report-radar .radar-score{
  font-size:26px !important;
  font-weight:950 !important;
  fill:#2d4f93 !important;
}
.report-radar .radar-score-label{
  font-size:10px !important;
  font-weight:900 !important;
  fill:#7a8bb6 !important;
}
.report-radar .radar-label{
  font-size:13px !important;
  font-weight:900 !important;
  fill:#3c5b9a !important;
}
.radar-value-card .value-score{
  border-left:1px solid rgba(109,130,188,.14) !important;
  padding:22px 18px !important;
}
.radar-value-card .value-score b{
  color:#2d4f93 !important;
}
.radar-value-card .value-score span{
  color:#536a9f !important;
  font-weight:900 !important;
}
@media (max-width:720px){
  .radar-value-card{
    grid-template-columns:1fr !important;
    gap:4px !important;
    padding:12px !important;
  }
  .report-radar-block{min-height:235px !important;}
  .report-radar{width:min(285px,100%) !important;}
  .radar-value-card .value-score{
    border-left:0 !important;
    border-top:1px solid rgba(109,130,188,.14) !important;
    padding:12px 10px 16px !important;
  }
  .report-radar .radar-label{font-size:12px !important;}
}


/* ===== v23 报告雷达图真实数据表达修复 ===== */
/* 修复点：去掉中心大圆与均衡分遮挡，0分点回到中心点并明确标识，避免看起来“0值也很均衡”。 */
.report-radar-wrap{
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:6px;
}
.report-radar.true-radar{
  width:min(360px,100%) !important;
  height:auto !important;
  overflow:visible !important;
}
.report-radar.true-radar .radar-grid{
  fill:rgba(111,143,212,.025) !important;
  stroke:rgba(74,96,151,.24) !important;
  stroke-width:1.1 !important;
}
.report-radar.true-radar .radar-axis{
  stroke:rgba(74,96,151,.18) !important;
  stroke-width:1 !important;
}
.report-radar.true-radar .radar-area{
  fill:url(#radarFill) !important;
  stroke:#4f6fbd !important;
  stroke-width:1.8 !important;
  filter:none !important;
}
.report-radar.true-radar .radar-line{
  fill:none !important;
  stroke:#2f559d !important;
  stroke-width:3.2 !important;
  stroke-linejoin:round !important;
  stroke-linecap:round !important;
}
.report-radar.true-radar .radar-dot{
  fill:#f0c34c !important;
  stroke:#ffffff !important;
  stroke-width:2.5 !important;
  filter:drop-shadow(0 3px 6px rgba(74,96,151,.18)) !important;
}
.report-radar.true-radar .zero-dot{
  fill:#d95a63 !important;
  stroke:#ffffff !important;
  stroke-width:2.5 !important;
}
.report-radar.true-radar .radar-origin{
  fill:#2d4f93 !important;
  opacity:.45 !important;
}
.report-radar.true-radar .radar-label{
  font-size:13px !important;
  font-weight:900 !important;
  fill:#2d4f93 !important;
}
.report-radar.true-radar .zero-label{
  fill:#c84d58 !important;
}
.report-radar.true-radar .radar-scale{
  font-size:10px !important;
  font-weight:850 !important;
  fill:#8a9bc4 !important;
}
.report-radar.true-radar .scale-zero{
  fill:#c84d58 !important;
}
.radar-summary{
  color:#536a9f;
  font-size:13px;
  font-weight:850;
  text-align:center;
}
.radar-summary b{
  color:#2d4f93;
  font-size:16px;
}

/* 情智源主后台第一期：会员/导师归属与报告锁定样式 */
.qzy-mentor-tip,.qzy-profile-ready,.qzy-profile-note{border-radius:16px;padding:12px 14px;margin:12px 0;background:rgba(28,139,161,.12);color:#145a6a;font-size:14px;line-height:1.55}.qzy-profile-ready{background:rgba(255,199,87,.18);color:#8a5c00}.qzy-profile-form{text-align:left;margin:14px 0}.qzy-profile-form label{display:block;margin:12px 0;color:#17415c;font-weight:700}.qzy-profile-form input,.qzy-profile-form select{width:100%;border:1px solid rgba(38,102,133,.22);border-radius:14px;background:rgba(255,255,255,.92);padding:13px 14px;margin-top:8px;font-size:15px;color:#18384a}.qzy-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.qzy-server-status,.qzy-server-report{margin-top:18px;border-radius:22px;background:rgba(255,255,255,.94);border:1px solid rgba(35,124,154,.18);padding:18px;text-align:left;box-shadow:0 12px 28px rgba(22,75,105,.08)}.qzy-server-status b{font-size:18px;color:#146487}.qzy-server-status.error{border-color:rgba(210,72,72,.35);background:#fff7f7}.qzy-server-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}.qzy-server-head b{color:#164966}.qzy-server-head span{padding:6px 10px;border-radius:999px;background:#e9f7f8;color:#157481;font-size:13px}.qzy-report-html{margin-top:10px}.qzy-report-card{background:linear-gradient(180deg,#f7fcff,#fff);border:1px solid rgba(35,124,154,.15);border-radius:20px;padding:18px;color:#18384a}.qzy-report-card h2{font-size:20px;margin:0 0 12px;color:#164966}.qzy-report-card h3{font-size:17px;margin:14px 0 8px;color:#176879}.qzy-score{display:flex;align-items:center;gap:12px;margin:12px 0}.qzy-score b{font-size:46px;line-height:1;color:#0d7c9a}.qzy-score span{color:#638096}.qzy-report-list{padding:0;margin:12px 0;list-style:none}.qzy-report-list li{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px dashed rgba(38,102,133,.18)}.qzy-report-list span{color:#167887}.qzy-report-tip{color:#9a6a00}.qzy-report-table{width:100%;border-collapse:collapse;background:white;border-radius:14px;overflow:hidden;font-size:13px}.qzy-report-table th,.qzy-report-table td{padding:10px;border-bottom:1px solid #e4eef4;text-align:left;vertical-align:top}.qzy-report-table th{background:#eff8fb;color:#176879}.qzy-locked-panel{margin-top:16px;border-radius:20px;background:linear-gradient(135deg,#fff8e6,#e7f8fb);border:1px solid rgba(224,158,38,.25);padding:18px;text-align:center}.qzy-locked-panel h3{margin:0 0 8px;color:#925f00}.qzy-locked-panel strong{display:inline-flex;margin-top:8px;border-radius:999px;background:#0d7c9a;color:white;padding:9px 16px}@media(max-width:640px){.qzy-form-grid{grid-template-columns:1fr}.qzy-server-head{display:block}.qzy-report-table{font-size:12px}}


/* v4_4 报告可读性与解锁按钮 */
.qzy-server-report,
.qzy-report-card{
  color:#18384a !important;
}
.qzy-report-card p,
.qzy-report-card p *,
.qzy-report-card strong,
.qzy-report-html p,
.qzy-report-html p *,
.qzy-report-tip{
  color:#24445c !important;
  opacity:1 !important;
  font-weight:700 !important;
  line-height:1.72 !important;
}
.qzy-report-card h2,
.qzy-report-card h3{
  color:#174b70 !important;
  opacity:1 !important;
}
.qzy-score span,
.qzy-score em{
  color:#3f6178 !important;
  opacity:1 !important;
}
.qzy-report-list li b{
  color:#173b55 !important;
  opacity:1 !important;
}
.qzy-report-list li span{
  color:#00798b !important;
  opacity:1 !important;
  font-weight:800 !important;
}
.qzy-locked-panel,
.qzy-locked-panel *{
  opacity:1 !important;
}
.qzy-locked-panel p{
  color:#5f4a14 !important;
  font-weight:700 !important;
  line-height:1.65 !important;
}
.qzy-unlock-price{
  display:inline-flex;
  margin:8px auto 14px;
  border-radius:999px;
  background:#0d7c9a;
  color:#fff !important;
  padding:9px 16px;
  font-weight:900;
}
.qzy-unlock-btn,
.qzy-member-btn{
  margin:6px 6px 0;
}
.qzy-unlock-message{
  margin-top:12px;
  padding:10px 12px;
  border-radius:12px;
  background:#fff7df;
  border:1px solid rgba(216,172,51,.35);
  color:#7a5600 !important;
  font-size:13px;
  font-weight:800;
  line-height:1.6;
}


/* v4.15 report mobile optimization */
.qzy-report-card h2,.qzy-report-card h3,.risk-head b,.brain-hero-text strong,.brain-hero-text em{overflow-wrap:anywhere;word-break:break-word}
@media(max-width:640px){
  .brain-hero{min-height:164px !important;padding:18px 16px !important}
  .brain-hero-text span{font-size:18px !important}
  .brain-hero-text strong{font-size:24px !important;line-height:1.18 !important;margin-top:8px !important;max-width:220px}
  .brain-hero-text em{font-size:15px !important;line-height:1.35 !important;margin-top:10px !important;max-width:220px}
  .brain-hero-figure{font-size:50px !important}
  .risk-row{grid-template-columns:30px 1fr !important;gap:10px !important;padding:14px 0 !important}
  .risk-icon{font-size:22px !important}
  .risk-head{gap:8px !important;align-items:flex-start !important}
  .risk-head b{font-size:14px !important;line-height:1.35 !important;flex:1}
  .risk-head span{font-size:12px !important;margin-top:1px}
  .risk-main p{font-size:12px !important;line-height:1.5 !important}
  .qzy-server-report,.qzy-server-status{padding:14px !important;border-radius:16px !important}
  .qzy-report-card{padding:14px !important;border-radius:16px !important}
  .qzy-report-card h2{font-size:16px !important;line-height:1.35 !important;margin:0 0 10px !important}
  .qzy-report-card h3{font-size:14px !important;line-height:1.35 !important;margin:12px 0 6px !important}
  .qzy-report-table{table-layout:fixed !important}
  .qzy-report-table th,.qzy-report-table td{padding:8px 6px !important;word-break:break-word !important}
}

/* 第一批：年龄档位与移动端信息填写 */
.qzy-age-grid{display:grid;gap:14px;margin:22px 0 8px}
.qzy-age-card{width:100%;text-align:left;border:1px solid rgba(111,137,191,.2);background:linear-gradient(145deg,#fff,#f5f8ff);border-radius:18px;padding:18px 18px 16px;box-shadow:0 10px 28px rgba(42,73,132,.08);color:#233d71;position:relative;transition:.18s ease}
.qzy-age-card:active,.qzy-age-card.active{transform:translateY(1px);border-color:#4b73c8;box-shadow:0 8px 18px rgba(42,73,132,.14)}
.qzy-age-card b{display:block;font-size:24px;line-height:1.15;margin-bottom:5px}
.qzy-age-card span{display:block;font-size:14px;color:#c38c14;font-weight:700;margin-bottom:8px}
.qzy-age-card p{margin:0 0 12px;color:#6f7f9f;font-size:14px;line-height:1.65}
.qzy-age-card i{font-style:normal;font-size:13px;color:#456dbe;font-weight:700}
.qzy-consent{display:flex!important;gap:10px;align-items:flex-start!important;border:1px solid rgba(88,116,174,.16);background:#f7f9fd;border-radius:14px;padding:12px!important}
.qzy-consent input{width:18px!important;height:18px!important;min-height:18px!important;margin:2px 0 0!important;flex:0 0 auto}
.qzy-consent span{font-size:13px;line-height:1.55;color:#667696;font-weight:400}
.stroop-young-shape{width:132px;height:132px;border-radius:34px;margin:24px auto;display:flex;align-items:center;justify-content:center;background:var(--stroop-color);color:#fff;font-size:70px;box-shadow:0 16px 36px rgba(45,65,105,.18)}
@media (min-width:700px){.qzy-age-grid{grid-template-columns:repeat(3,1fr)}.qzy-age-card{min-height:190px}}

.qzy-draft-tip{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:16px 0;padding:13px 14px;border:1px solid rgba(71,111,190,.2);border-radius:14px;background:#f6f9ff;color:#31527e}.qzy-draft-tip b{font-size:14px}.qzy-draft-tip span{font-size:13px;flex:1;min-width:110px}.qzy-draft-tip button{border:0;border-radius:10px;padding:8px 12px;background:#476fbe;color:#fff;font-weight:700}.mentor-report-version{font-size:12px!important;color:#6b7890!important;line-height:1.7}

/* v0.1.3：进入测评后直接展示固定三档年龄选择 */
.qzy-age-card small{display:inline-flex;align-items:center;min-height:24px;padding:0 10px;border-radius:999px;background:#edf3ff;color:#426ab9;font-size:12px;font-weight:800;margin-bottom:10px}
.qzy-age-card i{display:flex;align-items:center;justify-content:space-between;border-top:1px dashed rgba(80,111,174,.22);padding-top:12px;margin-top:4px}
.qzy-age-card i strong{font-size:22px;line-height:1}
.qzy-age-card.active small{background:#456fc4;color:#fff}
.qzy-age-footer-note{margin:16px 0 4px;padding:13px 15px;border-radius:14px;background:#f5f8ff;color:#6b7894;font-size:13px;line-height:1.65;text-align:left}
@media (max-width:699px){
  .qzy-age-grid{gap:12px;margin-top:18px}
  .qzy-age-card{padding:16px;border-radius:16px}
  .qzy-age-card b{font-size:22px}
  .qzy-age-card p{font-size:13px;margin-bottom:9px}
}


/* v0.1.6: compact age selection screen */
.age-choice-shell{width:min(430px,100%);margin:0 auto;padding:6px 0 18px;}
.age-choice-header{height:54px;display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;}
.age-choice-header img{display:block;width:154px;height:auto;object-fit:contain;}
.age-choice-home{width:38px;height:38px;border-radius:12px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.06);display:grid;place-items:center;color:#e8efff;}
.age-choice-home svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
.age-choice-panel{padding:24px 18px 20px;border-radius:24px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.11);box-shadow:0 18px 42px rgba(0,0,0,.16);}
.age-choice-panel h1{margin:0 0 18px;text-align:left;font-size:28px;line-height:1.2;color:#fff;letter-spacing:-.03em;}
.age-choice-list{display:grid;gap:12px;}
.age-choice-item{width:100%;min-height:76px;padding:0 18px;border-radius:18px;border:1px solid rgba(153,181,238,.20);background:rgba(255,255,255,.045);display:flex;align-items:center;justify-content:space-between;text-align:left;transition:.16s ease;}
.age-choice-item:active,.age-choice-item.active{transform:translateY(1px);border-color:rgba(99,245,223,.55);background:rgba(99,245,223,.08);}
.age-choice-item span{display:block;min-width:0;}
.age-choice-item b{display:block;font-size:24px;line-height:1.05;color:#fff;}
.age-choice-item em{display:block;margin-top:7px;font-style:normal;font-size:13px;color:#aebee3;}
.age-choice-item strong{font-size:28px;line-height:1;color:#79f3df;font-weight:500;}
@media (max-width:480px){
  .app{padding:12px 14px 18px;}
  .age-choice-shell{width:100%;}
  .age-choice-header{height:46px;margin-bottom:12px;}
  .age-choice-header img{width:136px;}
  .age-choice-home{width:36px;height:36px;}
  .age-choice-panel{padding:20px 14px 16px;border-radius:20px;}
  .age-choice-panel h1{font-size:25px;margin-bottom:14px;}
  .age-choice-list{gap:10px;}
  .age-choice-item{min-height:70px;padding:0 16px;border-radius:16px;}
  .age-choice-item b{font-size:22px;}
  .age-choice-item em{font-size:12px;margin-top:6px;}
}


/* v0.1.7: age selection title, compact layout and readable light theme */
.age-choice-shell{
  width:min(430px,100%);
  margin:0 auto;
  padding:0 0 18px;
  color:#29457f;
}
.age-choice-header{
  height:52px;
  margin:0 0 10px;
  padding:0 2px;
  display:flex;
  align-items:center;
  justify-content:space-between;
}
.age-choice-header img{
  width:154px;
  height:auto;
  display:block;
  object-fit:contain;
}
.age-choice-home{
  width:38px;
  height:38px;
  border-radius:13px;
  border:1px solid rgba(91,118,187,.24);
  background:#fff;
  color:#4265a8;
  box-shadow:0 6px 16px rgba(66,91,151,.08);
  display:grid;
  place-items:center;
}
.age-choice-home svg{
  width:20px;
  height:20px;
  fill:none;
  stroke:currentColor;
  stroke-width:2.1;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.age-choice-intro{
  position:relative;
  overflow:hidden;
  padding:18px 18px 17px;
  border-radius:22px;
  background:linear-gradient(135deg,#3f62aa 0%,#5b78b5 64%,#78a6a0 100%);
  box-shadow:0 14px 30px rgba(59,88,154,.16);
  color:#fff;
  text-align:left;
}
.age-choice-intro:after{
  content:"";
  position:absolute;
  right:-34px;
  top:-44px;
  width:138px;
  height:138px;
  border-radius:50%;
  background:rgba(242,195,79,.20);
}
.age-choice-intro span{
  position:relative;
  z-index:1;
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:0 10px;
  border-radius:999px;
  background:rgba(255,255,255,.16);
  font-size:12px;
  font-weight:800;
  color:#fff;
}
.age-choice-intro h1{
  position:relative;
  z-index:1;
  margin:12px 0 7px;
  color:#fff !important;
  text-shadow:none !important;
  font-size:27px;
  line-height:1.15;
  letter-spacing:-.03em;
}
.age-choice-intro p{
  position:relative;
  z-index:1;
  margin:0;
  max-width:330px;
  color:rgba(255,255,255,.88) !important;
  font-size:13px;
  line-height:1.65;
}
.age-choice-panel{
  margin-top:12px;
  padding:17px 14px 15px;
  border-radius:22px;
  background:rgba(255,255,255,.94);
  border:1px solid rgba(118,143,198,.18);
  box-shadow:0 14px 34px rgba(70,94,150,.10);
}
.age-choice-panel h2{
  margin:0 0 12px;
  padding:0 2px;
  color:#29457f !important;
  text-shadow:none !important;
  font-size:20px;
  line-height:1.2;
  text-align:left;
}
.age-choice-list{display:grid;gap:9px;}
.age-choice-item{
  width:100%;
  min-height:66px;
  padding:0 15px;
  border-radius:15px;
  border:1px solid #dbe5f5;
  background:#f8faff;
  color:#29457f !important;
  display:flex;
  align-items:center;
  justify-content:space-between;
  text-align:left;
  box-shadow:none;
}
.age-choice-item:active,.age-choice-item.active{
  transform:translateY(1px);
  border-color:#6e8fd0;
  background:#eef4ff;
}
.age-choice-item b{
  display:block;
  margin:0;
  color:#29457f !important;
  font-size:22px;
  line-height:1.08;
  text-shadow:none !important;
}
.age-choice-item em{
  display:block;
  margin-top:5px;
  color:#7b8eaf !important;
  font-style:normal;
  font-size:12px;
  line-height:1.2;
}
.age-choice-item strong{
  color:#5f80c4 !important;
  font-size:26px;
  line-height:1;
  font-weight:600;
}
@media (max-width:480px){
  .app{padding:10px 12px 16px;}
  .age-choice-header{height:46px;margin-bottom:8px;}
  .age-choice-header img{width:142px;}
  .age-choice-intro{padding:16px 15px 15px;border-radius:19px;}
  .age-choice-intro h1{font-size:24px;margin-top:10px;}
  .age-choice-intro p{font-size:12.5px;line-height:1.55;}
  .age-choice-panel{margin-top:10px;padding:15px 12px 13px;border-radius:19px;}
  .age-choice-panel h2{font-size:18px;margin-bottom:10px;}
  .age-choice-list{gap:8px;}
  .age-choice-item{min-height:62px;padding:0 14px;border-radius:14px;}
  .age-choice-item b{font-size:21px;}
}


/* v0.1.10 第10题：高辨识度颜色与低龄双图形布局 */
.grammar-board.grammar-young{padding:10px 0 12px;}
.grammar-board.grammar-young .grammar-statement{font-size:clamp(20px,5vw,28px);font-weight:950;color:#284788!important;}
.grammar-board.grammar-young .grammar-svg{width:min(300px,82vw);height:190px;}
.grammar-svg path,.grammar-svg circle,.grammar-svg rect,.grammar-svg polygon{filter:drop-shadow(0 3px 5px rgba(40,71,136,.10));}
@media(max-width:430px){.grammar-board.grammar-young .grammar-svg{height:150px;width:min(270px,80vw);}}


/* v0.1.12 第4题：真正使用图案SVG，不依赖文字识别 */
.sequence-board.qzy-seq-cols-2,
.sequence-board.qzy-seq-cols-3,
.sequence-board.qzy-seq-cols-4,
.sequence-board.qzy-seq-cols-5{
  grid-template-columns:repeat(var(--seq-cols),minmax(0,1fr)) !important;
  width:min(360px,100%) !important;
  gap:9px !important;
  padding:10px !important;
}
.sequence-board.qzy-seq-cols-2{width:min(280px,82vw) !important;}
.sequence-board.qzy-seq-cols-3{width:min(330px,88vw) !important;}
.sequence-board.qzy-seq-cols-5{width:min(370px,94vw) !important;gap:6px !important;}
.seq-cell{overflow:hidden;min-width:0;}
.seq-icon-svg{width:72%;height:72%;display:block;filter:drop-shadow(0 4px 7px rgba(43,73,132,.13));}
.qzy-seq-cols-2 .seq-icon-svg{width:68%;height:68%;}
.qzy-seq-cols-5 .seq-icon-svg{width:78%;height:78%;}
.seq-order-number{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#315ca8;color:#fff;font-size:18px;font-weight:900;box-shadow:0 6px 12px rgba(47,79,145,.20);}
.seq-cell.lit .seq-icon-svg{animation:qzy-seq-pop .22s ease-out both;}
@keyframes qzy-seq-pop{from{transform:scale(.72);opacity:.15}to{transform:scale(1);opacity:1}}
@media(max-width:390px){
  .sequence-board.qzy-seq-cols-2{width:min(246px,78vw) !important;}
  .sequence-board.qzy-seq-cols-3{width:min(292px,88vw) !important;}
  .sequence-board.qzy-seq-cols-4{width:min(300px,92vw) !important;gap:6px !important;}
  .sequence-board.qzy-seq-cols-5{width:min(308px,94vw) !important;gap:4px !important;padding:6px !important;}
  .seq-order-number{width:30px;height:30px;font-size:16px;}
}

/* v0.1.13：第6、7、9题分档减难 */
.scene-memory-pin .seq-icon-svg,
.scene-target-line .seq-icon-svg,
.demo-scene .seq-icon-svg{
  width:86%;
  height:86%;
  display:block;
}
.scene-recall.scene-young .scene-board.scene-compact{
  min-height:270px;
  max-height:310px;
}
.scene-recall.scene-young .scene-pin{
  width:72px!important;
  height:72px!important;
  border-radius:24px!important;
}
.scene-recall.scene-young .scene-memory-pin{
  background:#fff!important;
  border:3px solid #dce8fb!important;
  box-shadow:0 12px 28px rgba(40,72,125,.16)!important;
}
.scene-recall.scene-young .scene-answer-pin{
  width:64px!important;
  height:64px!important;
  border-radius:22px!important;
  background:#edf7ff!important;
  border:3px solid #8fc9ff!important;
}
.scene-recall.scene-young .scene-answer-pin span{
  width:14px;
  height:14px;
  background:#3778df;
}
.scene-target-line strong{
  display:inline-grid;
  place-items:center;
  overflow:hidden;
}
.scene-target-line strong .seq-icon-svg{
  width:42px;
  height:42px;
}
.scene-recall.scene-young .scene-target-line strong{
  width:58px;
  height:58px;
  border-radius:18px;
  background:#fff;
  border:2px solid #dce8fb;
}
.plan-darklogic-skin.plan-level-2 .plan-column-board{
  width:min(500px,100%);
}
.flex-compare-wrap .flex-block,
.mental-board .flex-block{
  stroke-width:0!important;
}
@media (max-width:720px){
  .scene-recall.scene-young .scene-board.scene-compact{
    min-height:250px;
    max-height:285px;
  }
  .scene-recall.scene-young .scene-pin{
    width:64px!important;
    height:64px!important;
  }
  .scene-recall.scene-young .scene-answer-pin{
    width:58px!important;
    height:58px!important;
  }
  .plan-darklogic-skin.plan-level-2 .plan-column-board{
    width:min(340px,100%);
    gap:8px;
  }
  .flex-compare-wrap > div{
    overflow:visible;
  }
}

/* 20260716 user preview lock: show partial risk list then guide to mentor */
.qzy-server-report{border-radius:0!important;box-shadow:none!important;background:transparent!important;border:0!important;padding:0!important;margin-top:0!important}.qzy-server-head{padding:12px 14px;background:rgba(255,255,255,.92);border-top:1px solid rgba(109,130,188,.14);border-bottom:1px solid rgba(109,130,188,.14);margin:0!important}.qzy-server-head span{background:#fff3cd!important;color:#9f7600!important}.report-unlock-panel{margin:0!important;border-radius:0!important;background:linear-gradient(180deg,#fff8e6,#ffffff)!important;border:0!important;border-top:1px solid rgba(224,158,38,.25)!important;border-bottom:1px solid rgba(224,158,38,.25)!important;padding:24px 18px!important;box-shadow:none!important}.report-unlock-panel .unlock-lock{width:44px;height:44px;margin:0 auto 10px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#9f7600;box-shadow:0 8px 20px rgba(159,118,0,.12)}.report-unlock-panel h3{font-size:20px!important;color:#164966!important;margin:0 0 8px!important}.report-unlock-panel p{font-size:14px!important;line-height:1.7!important;color:#536982!important;margin:6px 0!important}.qzy-unlock-price{display:inline-flex;align-items:center;justify-content:center;margin:10px auto 14px;padding:9px 16px;border-radius:999px;background:#fff5cd;color:#9f7600;font-size:15px;font-weight:950}.qzy-unlock-btn{margin-top:0!important}.qzy-unlock-message{margin-top:12px;color:#0c7e95;font-size:13px;font-weight:800}


/* phase2 profile flow: logged member/mentor reuse and age-only entry */
.qzy-profile-switch{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:18px 0 14px;border-bottom:1px solid #dce5f2}
.qzy-profile-switch button{border:0;background:transparent;color:#7a89a5;font-size:14px;font-weight:800;padding:12px 6px;position:relative}
.qzy-profile-switch button.active{color:#2857a5}
.qzy-profile-switch button.active:after{content:"";position:absolute;left:18%;right:18%;bottom:-1px;height:3px;border-radius:3px;background:#315fae}
.qzy-profile-switch button:disabled{opacity:.38}
.qzy-profile-select-label{margin-top:8px!important}
.qzy-existing-profile{display:flex;align-items:center;gap:14px;margin:14px 0;padding:16px 0;border-top:1px solid #e3eaf4;border-bottom:1px solid #e3eaf4}
.qzy-existing-profile strong{display:block;color:#153f76;font-size:19px}
.qzy-existing-profile p{margin:5px 0 2px;color:#45658f;font-size:14px}
.qzy-existing-profile span{display:block;color:#7b8ba4;font-size:13px;line-height:1.5}
.qzy-profile-direct-note{padding:10px 0;color:#54729b;font-size:13px;line-height:1.6}
.qzy-account-strip{display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:center;padding:12px 0;margin:4px 0 12px;border-bottom:1px solid #e3eaf4}
.qzy-account-strip span{grid-row:1/3;padding:5px 9px;border-radius:6px;background:#edf4ff;color:#315fae;font-size:12px;font-weight:800}
.qzy-account-strip b{color:#173e72;font-size:16px}
.qzy-account-strip em{font-style:normal;color:#7b8ba4;font-size:13px}
.qzy-profile-form label small{display:block;margin-top:6px;color:#8290a7;font-size:12px;font-weight:400;line-height:1.5}
.qzy-consent{border-radius:8px!important;background:#f7f9fc!important;padding:12px 10px!important}
.qzy-consent span{color:#596a85!important;line-height:1.65!important}
@media(max-width:480px){
  .qzy-profile-switch button{font-size:13px}
  .qzy-existing-profile{gap:11px;padding:13px 0}
  .qzy-existing-profile strong{font-size:17px}
}


/* v0.3.8 report unlock / report risk ui refine */
.qzy-server-head{display:flex !important;align-items:center !important;justify-content:space-between !important;gap:10px !important;flex-wrap:nowrap !important}
.qzy-server-head b{flex:1;min-width:0;font-size:13px;line-height:1.45;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.qzy-server-head span{flex:none;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;padding:4px 8px !important;font-size:12px !important}
.report-unlock-panel{padding:24px 18px 20px !important}
.report-unlock-panel p{max-width:320px;margin:6px auto 0 !important;text-align:center}
.qzy-unlock-meta{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;margin:12px 0 14px}
.qzy-unlock-price{margin:0 !important}
.qzy-unlock-contact{display:inline-flex;align-items:center;justify-content:center;padding:9px 16px;border-radius:999px;background:linear-gradient(90deg,#5b78c6,#6f8fd8 60%,#c7a53b);color:#fff;font-size:15px;font-weight:900;line-height:1}
.risk-list{background:#fff;padding:4px 20px 0;border:0 !important}
.risk-row{border-bottom:0 !important;padding:18px 0 16px !important}
.risk-row + .risk-row{border-top:1px solid rgba(109,130,188,.14) !important}
@media(max-width:640px){
  .qzy-server-head{padding:10px 12px !important}
  .qzy-server-head b{font-size:12px !important}
  .qzy-server-head span{font-size:11px !important;padding:3px 7px !important}
  .qzy-unlock-meta{gap:8px;margin:12px 0}
  .qzy-unlock-price,.qzy-unlock-contact{font-size:13px !important;padding:8px 14px !important}
  .risk-list{padding:0 14px !important}
  .risk-row{padding:14px 0 !important}
}


/* v0.3.9 ui refine: remove dev copy, tighten hero, fix tutorial demo overflow */
.brain-hero{
  min-height:168px !important;
  padding:18px 18px 12px !important;
  align-items:center !important;
}
.brain-hero-text{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:6px;
}
.brain-hero-text span{margin:0 !important;line-height:1.1 !important;}
.brain-hero-text strong{margin-top:2px !important;line-height:1.12 !important;max-width:220px;}
.brain-hero-text em{margin-top:2px !important;line-height:1.35 !important;max-width:240px;}
.brain-hero-figure{align-self:center;margin-top:0 !important;line-height:1;}
.report-time{margin-top:8px !important;}
.report-radar-wrap .radar-summary{display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:wrap;min-height:auto !important;}
.report-radar-wrap .radar-summary b{font-size:inherit !important;}

/* tutorial and demo containers */
.main-panel{overflow:hidden;}
.attention-wrap,
.compare-wrap,
.sequence-board,
.box-grid,
.scene-board,
.grammar-board,
.spatial-grid,
.memory-show,
.memory-input,
.pair-wrap,
.mental-board,
.flex-compare-wrap,
.plan-column-board,
.plan-darklogic-skin,
.demo-pair,
.demo-grammar,
.demo-spatial,
.demo-scene,
.demo-board,
.demo-boxes,
.demo-attn{
  max-width:100% !important;
  box-sizing:border-box !important;
}
.attention-wrap,
.compare-wrap,
.pair-wrap,
.mental-board,
.flex-compare-wrap,
.grammar-board,
.scene-board,
.plan-darklogic-skin,
.plan-column-board,
.memory-show,
.memory-input{
  overflow:hidden !important;
}
.attention-wrap>div,
.compare-wrap>div,
.pair-wrap>div,
.mental-board>div,
.flex-compare-wrap>div,
.grammar-board>div,
.scene-board>div{
  min-width:0 !important;
}
.attention-wrap svg,
.compare-wrap svg,
.pair-wrap svg,
.mental-board svg,
.flex-compare-wrap svg,
.grammar-board svg,
.scene-board svg,
.sequence-board svg,
.box-grid svg,
.spatial-grid svg{
  max-width:100% !important;
  height:auto !important;
}
.action-row{max-width:100%;}
.action-row .primary-btn,
.action-row .secondary-btn{max-width:100%;}
@media (max-width:720px){
  .brain-hero{
    min-height:148px !important;
    padding:16px 16px 10px !important;
  }
  .brain-hero-text strong{font-size:22px !important;max-width:170px !important;}
  .brain-hero-text em{font-size:14px !important;max-width:180px !important;}
  .brain-hero-figure{font-size:46px !important;}
  .report-time{margin-top:6px !important;}
  .attention-wrap,
  .compare-wrap,
  .pair-wrap{gap:8px !important;}
  .grammar-svg{max-width:100% !important;height:auto !important;}
}


/* v0.3.10 report and tutorial layout hardening */
.brain-hero{
  min-height:136px !important;
  padding:16px 18px 10px !important;
  align-items:center !important;
  gap:12px !important;
}
.brain-hero:before{width:420px !important;height:420px !important;left:-190px !important;bottom:-330px !important;}
.brain-hero:after{width:300px !important;height:300px !important;left:auto !important;right:-90px !important;bottom:-215px !important;}
.brain-hero-text{gap:4px !important;min-width:0 !important;}
.brain-hero-text span{font-size:18px !important;line-height:1.15 !important;margin:0 !important;}
.brain-hero-text strong{font-size:25px !important;line-height:1.14 !important;margin:2px 0 0 !important;max-width:210px !important;}
.brain-hero-text em{font-size:14px !important;line-height:1.34 !important;margin:2px 0 0 !important;max-width:220px !important;}
.brain-hero-figure{font-size:46px !important;line-height:1 !important;margin:0 !important;flex:0 0 auto !important;}
.report-time{margin-top:6px !important;padding:6px 0 !important;}
.report-radar-wrap .radar-summary{font-size:13px !important;line-height:1.45 !important;text-align:center !important;}
.report-radar-wrap .radar-summary b{font-size:inherit !important;}

.main-panel{overflow:hidden !important;}
.main-panel .copy{max-width:100% !important;}
.odd-grid,.memory-show,.memory-input,.sequence-board,.box-grid,.scene-board,.plan-darklogic-skin,.plan-column-board,.attention-wrap,.pair-wrap,.mental-board,.grammar-board,.spatial-grid,.compare-wrap,.flex-compare-wrap{
  max-width:100% !important;
  box-sizing:border-box !important;
  overflow:hidden !important;
}
.sequence-board,.box-grid,.spatial-grid{padding-left:0 !important;padding-right:0 !important;}
.mental-board svg,.demo-pair svg,.pair-wrap svg,.grammar-board svg,.attention-wrap svg,.compare-wrap svg,.flex-compare-wrap svg,.scene-board svg,.spatial-grid svg,.box-grid svg,.sequence-board svg{
  max-width:100% !important;
  max-height:100% !important;
  overflow:hidden !important;
}
.demo-pair.mental-board{
  width:100% !important;
  height:190px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
.demo-pair.mental-board svg{
  width:78% !important;
  height:78% !important;
}
.grammar-board.demo-grammar{padding:10px !important;}
.demo-grammar .grammar-svg{width:100% !important;max-width:280px !important;height:auto !important;}
.attention-wrap.demo-attn>div{min-height:150px !important;}
.compare-wrap .svg-panel{min-width:0 !important;}
.action-row{max-width:100% !important;padding-left:0 !important;padding-right:0 !important;}
@media (max-width:720px){
  .brain-hero{
    min-height:124px !important;
    padding:14px 14px 8px !important;
    border-radius:22px !important;
  }
  .brain-hero-text span{font-size:16px !important;}
  .brain-hero-text strong{font-size:22px !important;max-width:168px !important;}
  .brain-hero-text em{font-size:13px !important;max-width:180px !important;}
  .brain-hero-figure{font-size:42px !important;}
  .demo-pair.mental-board{height:172px !important;}
  .demo-pair.mental-board svg{width:74% !important;height:74% !important;}
  .attention-wrap.demo-attn>div{min-height:128px !important;}
}


/* v0.3.11 price, report score summary and unlock panel refine */
.age-choice-price{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  margin:12px auto 0;
  padding:7px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.20);
  border:1px solid rgba(255,255,255,.35);
  color:#fff;
  font-weight:900;
  box-shadow:0 10px 22px rgba(33,67,126,.10);
}
.age-choice-price b{
  font-size:13px;
  font-weight:850;
}
.age-choice-price strong{
  font-size:24px;
  line-height:1;
  color:#fff7cf;
}
.age-choice-mentor{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:126px;
  height:38px;
  margin:12px auto 0;
  padding:0 18px;
  border-radius:999px;
  background:linear-gradient(135deg,#ffffff,#fff0bd);
  color:#234b89;
  font-size:14px;
  font-weight:950;
  box-shadow:0 12px 26px rgba(28,60,122,.16);
}
.report-score-summary{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:0;
  width:100%;
  border-top:1px solid rgba(109,130,188,.14);
  margin-top:8px;
}
.report-score-summary>div{
  min-width:0;
  padding:12px 8px 14px;
  text-align:center;
}
.report-score-summary>div:first-child{
  border-right:1px solid rgba(109,130,188,.14);
}
.report-score-summary span{
  display:block;
  color:#6178aa !important;
  font-size:12px;
  font-weight:850;
  margin-bottom:5px;
}
.report-score-summary b{
  display:block;
  color:#284f9c !important;
  font-size:42px;
  line-height:1;
  font-weight:950;
}
.report-score-summary em{
  display:block;
  margin-top:5px;
  color:#d49b00 !important;
  font-style:normal;
  font-size:13px;
  font-weight:900;
  line-height:1.35;
}
.report-unlock-panel{
  background:linear-gradient(135deg,#fff7df 0%,#fffaf0 58%,#eefaf5 100%) !important;
}
.qzy-unlock-meta{
  margin:14px 0 2px !important;
}
.qzy-unlock-price{
  background:linear-gradient(135deg,#fff5bd,#f3c94a) !important;
  color:#754c00 !important;
  border:1px solid rgba(218,170,42,.34);
  box-shadow:0 10px 22px rgba(218,170,42,.12);
}
.qzy-unlock-price b{
  color:#7c4500 !important;
  font-size:20px;
  margin-left:4px;
}
.qzy-unlock-contact,.qzy-member-btn{
  display:none !important;
}
.qzy-unlocked-panel{
  padding:26px 18px 24px !important;
}
.qzy-unlocked-panel .qzy-member-btn{
  display:none !important;
}
@media(max-width:720px){
  .age-choice-price{padding:6px 12px;margin-top:10px;}
  .age-choice-price strong{font-size:22px;}
  .age-choice-mentor{height:36px;margin-top:10px;}
  .report-score-summary b{font-size:36px;}
  .report-score-summary em{font-size:12px;}
}


/* v0.3.12 age price and unlocked report refine */
.age-choice-price{
  background:rgba(255,255,255,.92) !important;
  border:1px solid rgba(255,255,255,.75) !important;
  color:#234b89 !important;
  box-shadow:0 12px 26px rgba(37,70,139,.16) !important;
}
.age-choice-price b{
  color:#234b89 !important;
  font-size:14px !important;
}
.age-choice-price strong{
  color:#ff3348 !important;
  font-size:32px !important;
  letter-spacing:-1px;
  text-shadow:0 2px 8px rgba(255,51,72,.16);
}
.age-choice-mentor{display:none !important;}
.qzy-unlocked-panel{
  padding:20px 18px 22px !important;
}
.qzy-unlocked-panel .unlock-lock{
  display:none !important;
}
.qzy-unlocked-panel h3{
  display:flex !important;
  align-items:center;
  justify-content:center;
  gap:8px;
  margin:0 0 10px !important;
}
.qzy-unlocked-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:24px;
  height:24px;
  border-radius:7px;
  background:#48c978;
  color:#fff;
  font-size:15px;
  line-height:1;
  box-shadow:0 8px 18px rgba(72,201,120,.22);
}
.qzy-unlocked-panel p{
  margin:0 !important;
  line-height:1.8 !important;
}
.qzy-unlocked-mentor{
  color:#c79222 !important;
  font-weight:950;
  padding:0 2px;
}
@media(max-width:720px){
  .age-choice-price strong{font-size:30px !important;}
  .qzy-unlocked-panel{padding:18px 16px 20px !important;}
  .qzy-unlocked-panel h3{font-size:22px !important;}
}

/* v0.3.13：自由测评用户的邀请码改为测评信息表单内选填，不再弹窗 */
.qzy-inline-mentor-code input{letter-spacing:.3px;text-transform:none}.qzy-inline-mentor-code small{color:#8290a7}


/* v0.3.13 locked report preview limit: stop before radar and half-hide communication index */
.risk-row-locked-preview{
  position:relative !important;
  max-height:68px !important;
  overflow:hidden !important;
  border-bottom:0 !important;
}
.risk-row-locked-preview .risk-main p{
  display:none !important;
}
.risk-row-locked-preview::after{
  content:'';
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:28px;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,0),#fff 82%);
}
@media(max-width:640px){
  .risk-row-locked-preview{max-height:58px !important;}
  .risk-row-locked-preview::after{height:24px;}
}

/* v0.3.14：被测者选择改为移动端友好的自定义选择面板 */
.qzy-profile-field-title{
  display:block;
  margin-bottom:8px;
  color:#173f76;
  font-size:14px;
  font-weight:800;
}
.qzy-profile-choice-trigger{
  width:100%;
  min-height:58px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:10px 14px;
  border:1px solid #cbd9ee;
  border-radius:15px;
  background:#fff;
  color:#173e72;
  text-align:left;
  box-shadow:0 5px 14px rgba(34,73,133,.06);
}
.qzy-profile-choice-trigger span{min-width:0;display:block}
.qzy-profile-choice-trigger b{
  display:block;
  overflow:hidden;
  color:#12366f;
  font-size:17px;
  font-weight:900;
  line-height:1.35;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.qzy-profile-choice-trigger small{
  display:block;
  margin-top:3px;
  overflow:hidden;
  color:#647794;
  font-size:13px;
  font-weight:500;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.qzy-profile-choice-trigger svg{width:22px;height:22px;flex:0 0 auto;fill:none;stroke:#5674a6;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.qzy-profile-choice-sheet[hidden]{display:none!important}
.qzy-profile-choice-sheet{position:fixed;inset:0;z-index:1400;display:flex;align-items:center;justify-content:center;padding:20px}
.qzy-profile-choice-mask{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:rgba(20,40,75,.52);backdrop-filter:blur(2px)}
.qzy-profile-choice-dialog{position:relative;width:min(430px,100%);max-height:min(72vh,560px);display:flex;flex-direction:column;overflow:hidden;border-radius:22px;background:#fff;box-shadow:0 24px 70px rgba(16,44,91,.28)}
.qzy-profile-choice-dialog header{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid #e4ebf5}
.qzy-profile-choice-dialog h3{margin:0;color:#163d74;font-size:18px;font-weight:900}
.qzy-profile-choice-dialog header button{width:36px;height:36px;display:grid;place-items:center;padding:0;border:0;border-radius:50%;background:#eff4fb}
.qzy-profile-choice-dialog header svg{width:19px;height:19px;fill:none;stroke:#587092;stroke-width:2;stroke-linecap:round}
.qzy-profile-choice-list{overflow:auto;padding:8px 12px 14px;-webkit-overflow-scrolling:touch}
.qzy-profile-choice-option{width:100%;min-height:66px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 10px;border:0;border-bottom:1px solid #edf1f7;background:#fff;text-align:left}
.qzy-profile-choice-option:last-child{border-bottom:0}
.qzy-profile-choice-option span{min-width:0}
.qzy-profile-choice-option b{display:block;color:#12366f;font-size:17px;font-weight:900;line-height:1.35}
.qzy-profile-choice-option small{display:block;margin-top:4px;color:#6e7f99;font-size:13px;font-weight:500}
.qzy-profile-choice-option i{width:20px;height:20px;flex:0 0 auto;border:2px solid #b8c6db;border-radius:50%;position:relative}
.qzy-profile-choice-option.active{background:#f5f8ff}
.qzy-profile-choice-option.active i{border-color:#416cc0}
.qzy-profile-choice-option.active i:after{content:"";position:absolute;inset:3px;border-radius:50%;background:#416cc0}
.qzy-existing-profile{display:block!important;margin:14px 0!important;padding:14px 0!important}
.qzy-existing-profile-copy{min-width:0;width:100%}
.qzy-existing-profile strong{color:#12366f!important;font-size:19px!important;font-weight:900!important;opacity:1!important}
.qzy-existing-profile p{color:#395b88!important;font-weight:600}
.qzy-existing-profile span{color:#5f718d!important;font-weight:500}
body.qzy-profile-choice-open{overflow:hidden}
@media(max-width:640px){
  .qzy-profile-choice-sheet{align-items:flex-end;padding:0}
  .qzy-profile-choice-dialog{width:100%;max-height:76vh;border-radius:22px 22px 0 0;padding-bottom:env(safe-area-inset-bottom,0)}
  .qzy-profile-choice-dialog header{padding:15px 16px}
  .qzy-profile-choice-list{padding:7px 12px 12px}
  .qzy-profile-choice-option{min-height:64px;padding:11px 8px}
  .qzy-profile-choice-option b{font-size:16px}
}

@media (min-width:721px) and (max-width:1024px), (min-width:1025px) and (max-width:1366px) and (hover:none) and (pointer:coarse){
  html,body{height:auto!important;min-height:100%!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch}
  .app{height:auto!important;min-height:100vh!important;min-height:100dvh!important;padding:8px 12px 16px!important;overflow:visible!important;align-items:flex-start!important}
  .test-shell{width:min(760px,100%)!important;min-height:0!important;height:auto!important;margin:0 auto!important;padding:12px 16px 16px!important;border-radius:26px!important;overflow:visible!important}
  .status,.main-panel{min-height:0!important;height:auto!important;overflow:visible!important}
  .brand-head{margin-bottom:6px!important}
  .brand-logo-wide{width:min(100%,300px)!important}
  .top-icons{gap:7px!important}
  .icon-btn{width:34px!important;height:34px!important;border-radius:10px!important}
  .status-main{padding-bottom:7px!important;margin-bottom:4px!important}
  .progress-meta{font-size:12px!important;margin-bottom:5px!important}
  .phase-row{margin-top:7px!important}
  .phase{font-size:12px!important}
  .timer{font-size:24px!important}
  .main-panel{padding:6px 0 4px!important}
  .badge{min-height:25px!important;padding:3px 9px!important;font-size:10.5px!important}
  .title-lg,.title-lg.compact-title{font-size:24px!important;line-height:1.12!important;margin:7px 0 4px!important}
  .copy,.copy.compact-copy{max-width:600px!important;font-size:13px!important;line-height:1.38!important}
  .chips{margin:4px 0 7px!important;gap:6px!important}
  .chip{font-size:11px!important}
  .notice{min-height:20px!important;margin-top:4px!important;padding:1px 0!important;font-size:11.5px!important;line-height:1.3!important}
  .answer-row{margin-top:6px!important;gap:8px!important}
  .answer-btn,.primary-btn,.secondary-btn,.danger-btn{min-height:40px!important;padding:0 16px!important;font-size:14px!important}

  .odd-grid{width:min(340px,100%)!important;padding:9px!important;gap:6px!important;overflow:visible!important}
  .odd-cell{min-width:0!important;min-height:96px!important;overflow:visible!important}
  .odd-cell svg{display:block!important;width:84%!important;height:84%!important;max-width:100%!important;max-height:100%!important;overflow:visible!important}

  .memory-show,.memory-show.hard{min-height:100px!important;margin:3px auto 6px!important;padding:10px 0 24px!important}
  .sequence-focus b{font-size:50px!important}
  .memory-lane{bottom:9px!important}
  .memory-input{min-height:44px!important;margin-bottom:6px!important}
  .keypad{width:min(360px,100%)!important;gap:5px!important}
  .key-btn{min-height:36px!important;font-size:17px!important}

  .compare-wrap{width:min(560px,100%)!important;grid-template-columns:1.12fr .88fr!important;gap:9px!important;margin:3px auto 7px!important;overflow:visible!important}
  .compare-wrap .svg-panel,.svg-panel{height:150px!important;min-height:150px!important;padding:12px!important;overflow:hidden!important}
  .compare-wrap .svg-panel svg,.svg-panel svg,.compare-wrap svg{display:block!important;width:90%!important;height:90%!important;max-width:90%!important;max-height:90%!important;overflow:visible!important;flex:none!important}

  .sequence-board,.box-grid,.spatial-grid{width:min(320px,100%)!important;gap:5px!important;padding:5px 0!important;margin:3px auto 5px!important;overflow:visible!important}
  .box-grid.wide,.spatial-grid.cols-4{width:min(330px,100%)!important}
  .seq-cell,.box-cell,.spatial-cell{min-width:0!important;min-height:64px!important}
  .box-grid.wide .box-cell,.spatial-grid.cols-4 .spatial-cell,.qzy-seq-cols-4 .seq-cell{min-height:58px!important}

  .scene-board.scene-compact{height:215px!important;min-height:190px!important;max-height:215px!important}
  .scene-title{font-size:23px!important;margin:5px 0 4px!important}
  .scene-copy{font-size:12.5px!important;line-height:1.35!important}
  .scene-target-line{font-size:12.5px!important;margin-bottom:5px!important}

  .plan-column-board{max-width:560px!important;height:230px!important;gap:9px!important;overflow:hidden!important}
  .plan-col{transform:scale(.88);transform-origin:center bottom}
  .plan-actions{margin-top:8px!important}
  .plan-hint{margin:5px auto 7px!important;font-size:12px!important}
  .plan-target-grid,.plan-target-grid.wide{width:min(420px,100%)!important;gap:8px!important}
  .plan-target{min-height:60px!important;padding:5px!important}
  .plan-spare{width:60px!important;height:48px!important}

  .attention-wrap{width:min(560px,100%)!important;grid-template-columns:1fr 1fr!important;gap:9px!important;margin:3px auto 7px!important;overflow:visible!important}
  .attention-wrap>div{height:145px!important;min-height:145px!important;overflow:hidden!important}
  .attention-wrap svg{display:block!important;width:90%!important;height:90%!important;max-width:90%!important;max-height:90%!important;overflow:visible!important}

  .pair-wrap,.flex-compare-wrap{width:min(540px,100%)!important;grid-template-columns:1fr 1fr!important;gap:9px!important;margin:3px auto 8px!important;overflow:visible!important}
  .pair-wrap>div,.flex-compare-wrap>div{height:145px!important;min-height:145px!important;overflow:hidden!important}
  .pair-wrap svg,.flex-compare-wrap svg,.mental-board svg{display:block!important;width:86%!important;height:86%!important;max-width:86%!important;max-height:86%!important;overflow:visible!important}
  .mental-board,.mental-board.reviewing{height:160px!important;margin:4px auto 10px!important;overflow:hidden!important}

  .grammar-board{width:min(540px,100%)!important;margin:3px auto 7px!important;padding:7px 0!important;overflow:hidden!important}
  .grammar-statement{font-size:20px!important;line-height:1.2!important;margin-bottom:4px!important}
  .grammar-svg,.demo-grammar .grammar-svg{display:block!important;width:250px!important;height:125px!important;max-width:70vw!important;max-height:125px!important;overflow:visible!important}

  .stroop-word{font-size:60px!important;margin:8px auto 10px!important}
  .color-choice-row{gap:6px!important;margin-bottom:7px!important}
  .color-choice{min-width:74px!important;height:36px!important;font-size:13px!important}
}

@media (min-width:721px) and (max-width:1024px) and (max-height:850px), (min-width:1025px) and (max-width:1366px) and (max-height:850px) and (hover:none) and (pointer:coarse){
  .test-shell{padding:8px 13px 11px!important}
  .brand-logo-wide{width:min(100%,255px)!important}
  .brand-head{margin-bottom:4px!important}
  .status-main{padding-bottom:5px!important;margin-bottom:2px!important}
  .phase-row{margin-top:5px!important}
  .timer{font-size:21px!important}
  .main-panel{padding-top:3px!important}
  .badge{min-height:22px!important;font-size:10px!important}
  .title-lg,.title-lg.compact-title{font-size:21px!important;margin:4px 0 3px!important}
  .copy,.copy.compact-copy{font-size:11.5px!important;line-height:1.3!important}
  .chips{margin:3px 0 5px!important}
  .notice{margin-top:2px!important;min-height:18px!important;font-size:10.5px!important}
  .odd-grid{width:min(292px,100%)!important;padding:7px!important;gap:5px!important}
  .odd-cell{min-height:82px!important}
  .compare-wrap .svg-panel,.svg-panel{height:122px!important;min-height:122px!important}
  .answer-btn,.primary-btn,.secondary-btn,.danger-btn{min-height:36px!important;font-size:13px!important}
  .memory-show,.memory-show.hard{min-height:82px!important;padding-bottom:21px!important}
  .sequence-focus b{font-size:42px!important}
  .keypad{width:min(320px,100%)!important}
  .key-btn{min-height:32px!important;font-size:15px!important}
  .sequence-board,.box-grid,.spatial-grid{width:min(270px,100%)!important}
  .box-grid.wide,.spatial-grid.cols-4{width:min(286px,100%)!important}
  .seq-cell,.box-cell,.spatial-cell{min-height:52px!important}
  .box-grid.wide .box-cell,.spatial-grid.cols-4 .spatial-cell,.qzy-seq-cols-4 .seq-cell{min-height:48px!important}
  .scene-board.scene-compact{height:170px!important;min-height:160px!important;max-height:170px!important}
  .plan-column-board{height:190px!important;transform:scale(.92);transform-origin:center top;margin-bottom:-14px!important}
  .attention-wrap>div,.pair-wrap>div,.flex-compare-wrap>div{height:118px!important;min-height:118px!important}
  .mental-board,.mental-board.reviewing{height:128px!important;margin-bottom:6px!important}
  .grammar-statement{font-size:17px!important}
  .grammar-svg,.demo-grammar .grammar-svg{width:220px!important;height:98px!important;max-height:98px!important}
  .stroop-word{font-size:50px!important;margin:5px auto 7px!important}
}
@media (min-width:721px) and (max-width:1024px), (min-width:1025px) and (max-width:1366px) and (hover:none) and (pointer:coarse){
  body.qzy-profile-choice-open{overflow:hidden!important}
}

/* v0.3.17：平板兼容加固。旧版 iPad Safari 不再依赖 aspect-ratio / Grid 自动行高 / flex gap。 */
@media (min-width:721px) and (max-width:1366px){
  /* 第1题：平板改用固定尺寸 flex 九宫格，规避旧 Safari Grid 行高被拉伸。 */
  .odd-grid{
    display:flex !important;
    flex-wrap:wrap !important;
    align-content:flex-start !important;
    justify-content:center !important;
    width:318px !important;
    max-width:100% !important;
    height:auto !important;
    min-height:0 !important;
    margin:4px auto 6px !important;
    padding:6px !important;
    gap:0 !important;
    overflow:visible !important;
    box-sizing:border-box !important;
  }
  .odd-cell{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    flex:0 0 96px !important;
    width:96px !important;
    height:96px !important;
    min-width:96px !important;
    min-height:96px !important;
    max-width:96px !important;
    max-height:96px !important;
    aspect-ratio:auto !important;
    padding:0 !important;
    margin:3px !important;
    line-height:1 !important;
    box-sizing:border-box !important;
  }
  .odd-cell svg{
    display:block !important;
    width:78px !important;
    height:78px !important;
    max-width:78px !important;
    max-height:78px !important;
    flex:0 0 78px !important;
    overflow:visible !important;
  }

  /* 第3题及其它 SVG 题：给可视区和 SVG 明确像素尺寸，避免老 Safari 百分比高度计算为 0。 */
  .compare-wrap{width:min(560px,100%) !important;grid-template-columns:1.12fr .88fr !important;gap:9px !important;margin:3px auto 7px !important;overflow:visible !important}
  .compare-wrap .svg-panel,.svg-panel{height:150px !important;min-height:150px !important;padding:10px !important;overflow:hidden !important}
  .compare-wrap .svg-panel svg,.svg-panel svg,.compare-wrap svg{display:block !important;width:128px !important;height:128px !important;max-width:90% !important;max-height:128px !important;flex:0 0 auto !important;overflow:visible !important}
  .compare-wrap .svg-panel:first-child svg{width:150px !important;height:130px !important;max-width:94% !important}

  .attention-wrap{width:min(560px,100%) !important;grid-template-columns:1fr 1fr !important;gap:9px !important;margin:3px auto 7px !important;overflow:visible !important}
  .attention-wrap>div{height:145px !important;min-height:145px !important;overflow:hidden !important}
  .attention-wrap svg{display:block !important;width:128px !important;height:128px !important;max-width:90% !important;max-height:128px !important;overflow:visible !important}

  .pair-wrap,.flex-compare-wrap{width:min(540px,100%) !important;grid-template-columns:1fr 1fr !important;gap:9px !important;margin:3px auto 8px !important;overflow:visible !important}
  .pair-wrap>div,.flex-compare-wrap>div{height:145px !important;min-height:145px !important;overflow:hidden !important}
  .pair-wrap svg,.flex-compare-wrap svg{display:block !important;width:126px !important;height:126px !important;max-width:88% !important;max-height:126px !important;overflow:visible !important}
  .mental-board,.mental-board.reviewing{height:160px !important;margin:4px auto 10px !important;overflow:hidden !important}
  .mental-board svg{display:block !important;width:138px !important;height:138px !important;max-width:90% !important;max-height:138px !important;overflow:visible !important}

  .grammar-board{width:min(540px,100%) !important;margin:3px auto 7px !important;padding:7px 0 !important;overflow:hidden !important}
  .grammar-svg,.demo-grammar .grammar-svg{display:block !important;width:250px !important;height:125px !important;max-width:70vw !important;max-height:125px !important;overflow:visible !important}

  /* 依赖正方形单元格的题型不再依赖 aspect-ratio。 */
  .seq-cell,.box-cell,.spatial-cell{
    aspect-ratio:auto !important;
    height:64px !important;
    min-height:64px !important;
    max-height:64px !important;
    box-sizing:border-box !important;
  }
  .box-grid.wide .box-cell,
  .spatial-grid.cols-4 .spatial-cell,
  .qzy-seq-cols-4 .seq-cell{
    height:58px !important;
    min-height:58px !important;
    max-height:58px !important;
  }
}

@media (min-width:721px) and (max-width:1366px) and (max-height:850px){
  .odd-grid{width:270px !important;padding:5px !important}
  .odd-cell{
    flex-basis:82px !important;
    width:82px !important;height:82px !important;
    min-width:82px !important;min-height:82px !important;
    max-width:82px !important;max-height:82px !important;
    margin:2px !important;
  }
  .odd-cell svg{width:66px !important;height:66px !important;max-width:66px !important;max-height:66px !important;flex-basis:66px !important}
  .compare-wrap .svg-panel,.svg-panel{height:122px !important;min-height:122px !important}
  .compare-wrap .svg-panel svg,.svg-panel svg,.compare-wrap svg{width:104px !important;height:104px !important;max-height:104px !important}
  .compare-wrap .svg-panel:first-child svg{width:118px !important;height:104px !important}
  .attention-wrap>div,.pair-wrap>div,.flex-compare-wrap>div{height:118px !important;min-height:118px !important}
  .attention-wrap svg,.pair-wrap svg,.flex-compare-wrap svg{width:100px !important;height:100px !important;max-height:100px !important}
  .mental-board,.mental-board.reviewing{height:128px !important;margin-bottom:6px !important}
  .mental-board svg{width:108px !important;height:108px !important;max-height:108px !important}
  .seq-cell,.box-cell,.spatial-cell{height:52px !important;min-height:52px !important;max-height:52px !important}
  .box-grid.wide .box-cell,.spatial-grid.cols-4 .spatial-cell,.qzy-seq-cols-4 .seq-cell{height:48px !important;min-height:48px !important;max-height:48px !important}
}

/* iPad Safari 在“请求桌面网站”模式下可能不完整支持 pointer/hover 媒体条件，这里只补齐触摸 WebKit 的滚动与裁切规则。 */
@supports (-webkit-touch-callout: none){
  @media (min-width:721px) and (max-width:1366px){
    html,body{height:auto !important;min-height:100% !important;overflow-y:auto !important;-webkit-overflow-scrolling:touch}
    .app{height:auto !important;min-height:100vh !important;padding-bottom:18px !important;overflow:visible !important;align-items:flex-start !important}
    .test-shell,.status,.main-panel{height:auto !important;min-height:0 !important;overflow:visible !important}
  }
}

/* v0.3.18：修正 v0.3.17 在部分 iPad Safari 上九宫格被折成 2+2+2+2+1。 */
@media (min-width:721px) and (max-width:1366px){
  .odd-grid{display:grid!important;grid-template-columns:repeat(3,92px)!important;grid-template-rows:repeat(3,92px)!important;grid-auto-flow:row!important;grid-auto-rows:92px!important;justify-content:center!important;align-content:start!important;width:300px!important;max-width:100%!important;height:300px!important;min-height:300px!important;margin:4px auto 6px!important;padding:6px!important;gap:6px!important;overflow:visible!important;box-sizing:border-box!important}
  .odd-cell{display:grid!important;place-items:center!important;width:92px!important;height:92px!important;min-width:92px!important;min-height:92px!important;max-width:92px!important;max-height:92px!important;margin:0!important;padding:0!important;flex:none!important;flex-basis:auto!important;aspect-ratio:auto!important;line-height:1!important;box-sizing:border-box!important}
  .odd-cell svg{display:block!important;width:72px!important;height:72px!important;max-width:72px!important;max-height:72px!important;flex:none!important;overflow:visible!important}
}
@media (min-width:721px) and (max-width:1366px) and (max-height:850px){
  .odd-grid{grid-template-columns:repeat(3,80px)!important;grid-template-rows:repeat(3,80px)!important;grid-auto-rows:80px!important;width:258px!important;height:258px!important;min-height:258px!important;padding:5px!important;gap:4px!important}
  .odd-cell{width:80px!important;height:80px!important;min-width:80px!important;min-height:80px!important;max-width:80px!important;max-height:80px!important}
  .odd-cell svg{width:62px!important;height:62px!important;max-width:62px!important;max-height:62px!important}
}

/* v0.3.19：第4题（位置记忆）平板端可视尺寸修复。 */
@media (min-width:721px) and (max-width:1366px){
  .sequence-board.qzy-seq-cols-2,.sequence-board.qzy-seq-cols-3,.sequence-board.qzy-seq-cols-4,.sequence-board.qzy-seq-cols-5{display:grid!important;height:auto!important;min-height:0!important;max-height:none!important;justify-content:center!important;align-content:start!important;margin:4px auto 7px!important;box-sizing:border-box!important;overflow:visible!important}
  .sequence-board.qzy-seq-cols-2{grid-template-columns:repeat(2,132px)!important;grid-auto-rows:132px!important;width:294px!important;gap:10px!important;padding:10px!important}
  .sequence-board.qzy-seq-cols-3{grid-template-columns:repeat(3,108px)!important;grid-auto-rows:108px!important;width:360px!important;gap:8px!important;padding:10px!important}
  .sequence-board.qzy-seq-cols-4{grid-template-columns:repeat(4,96px)!important;grid-auto-rows:96px!important;width:425px!important;gap:7px!important;padding:10px!important}
  .sequence-board.qzy-seq-cols-5{grid-template-columns:repeat(5,82px)!important;grid-auto-rows:82px!important;width:450px!important;gap:6px!important;padding:8px!important}
  .sequence-board.qzy-seq-cols-2 .seq-cell,.sequence-board.qzy-seq-cols-3 .seq-cell,.sequence-board.qzy-seq-cols-4 .seq-cell,.sequence-board.qzy-seq-cols-5 .seq-cell{width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;max-width:none!important;max-height:none!important;aspect-ratio:auto!important;display:grid!important;place-items:center!important;padding:0!important;box-sizing:border-box!important;overflow:hidden!important}
  .sequence-board.qzy-seq-cols-2 .seq-icon-svg{width:94px!important;height:94px!important;max-width:94px!important;max-height:94px!important}
  .sequence-board.qzy-seq-cols-3 .seq-icon-svg{width:84px!important;height:84px!important;max-width:84px!important;max-height:84px!important}
  .sequence-board.qzy-seq-cols-4 .seq-icon-svg{width:76px!important;height:76px!important;max-width:76px!important;max-height:76px!important}
  .sequence-board.qzy-seq-cols-5 .seq-icon-svg{width:68px!important;height:68px!important;max-width:68px!important;max-height:68px!important}
  .sequence-board .seq-icon-svg{display:block!important;flex:none!important;overflow:visible!important}
}
@media (min-width:721px) and (max-width:1366px) and (max-height:850px){
  .sequence-board.qzy-seq-cols-2{grid-template-columns:repeat(2,116px)!important;grid-auto-rows:116px!important;width:258px!important;gap:8px!important;padding:9px!important}
  .sequence-board.qzy-seq-cols-3{grid-template-columns:repeat(3,94px)!important;grid-auto-rows:94px!important;width:310px!important;gap:6px!important;padding:8px!important}
  .sequence-board.qzy-seq-cols-4{grid-template-columns:repeat(4,82px)!important;grid-auto-rows:82px!important;width:353px!important;gap:5px!important;padding:7px!important}
  .sequence-board.qzy-seq-cols-5{grid-template-columns:repeat(5,70px)!important;grid-auto-rows:70px!important;width:378px!important;gap:4px!important;padding:6px!important}
  .sequence-board.qzy-seq-cols-2 .seq-icon-svg{width:88px!important;height:88px!important;max-width:88px!important;max-height:88px!important}
  .sequence-board.qzy-seq-cols-3 .seq-icon-svg{width:76px!important;height:76px!important;max-width:76px!important;max-height:76px!important}
  .sequence-board.qzy-seq-cols-4 .seq-icon-svg{width:68px!important;height:68px!important;max-width:68px!important;max-height:68px!important}
  .sequence-board.qzy-seq-cols-5 .seq-icon-svg{width:60px!important;height:60px!important;max-width:60px!important;max-height:60px!important}
}

/* V0.4.68 脑力测评微信支付按钮 */
.qzy-online-pay-btn{display:inline-flex;align-items:center;justify-content:center;margin-top:14px;text-decoration:none;position:relative;z-index:3}


/* V0.4.71：断点续测选择、自由报告恢复与报告编号复制 */
.qzy-draft-tip .qzy-draft-secondary,.qzy-saved-report-tip .qzy-draft-secondary{background:#fff;color:#476fbe;border:1px solid rgba(71,111,190,.28)}
.qzy-saved-report-tip{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:12px 0;padding:13px 14px;border:1px solid rgba(43,182,170,.22);border-radius:14px;background:#f3fbf9;color:#31527e}.qzy-saved-report-tip b{font-size:14px}.qzy-saved-report-tip span{font-size:13px;flex:1;min-width:150px}.qzy-saved-report-tip button{border:0;border-radius:10px;padding:8px 12px;background:#2ba99f;color:#fff;font-weight:700}
.qzy-copy-report-no{margin-left:6px;border:1px solid rgba(71,111,190,.24);border-radius:8px;background:#fff;color:#476fbe;padding:4px 8px;font-size:12px;font-weight:700;vertical-align:middle}
@media(max-width:720px){.qzy-draft-tip button,.qzy-saved-report-tip button{flex:1 1 42%;min-width:120px}.qzy-server-head b{line-height:1.8}.qzy-copy-report-no{white-space:nowrap}}
