:root{--bg:#f5f7fb;--card:#fff;--ink:#172033;--muted:#667085;--line:#e4e7ec;--blue:#2457d6;--soft:#edf2ff;--green:#16834b;--shadow:0 16px 45px rgba(23,32,51,.09)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,"Noto Sans TC","Microsoft JhengHei",sans-serif}button{font:inherit;cursor:pointer}.site-head{height:70px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:10}.brand{font-weight:900;font-size:18px}.test-switch{display:flex;gap:8px}.test-switch button,.back,.mode,.bottom-nav button{border:1px solid var(--line);background:#fff;border-radius:12px;padding:9px 14px;font-weight:800}.test-switch button.active,.mode.active,.primary{background:var(--blue)!important;color:#fff;border-color:var(--blue)!important}main{max-width:1120px;margin:auto;padding:30px 22px}.view{display:none}.view.active{display:block}.hero{text-align:center;padding:36px 10px 28px}.hero h1{font-size:38px;margin:8px 0}.hero p{color:var(--muted)}.eyebrow{font-weight:900;letter-spacing:.12em;color:var(--blue);font-size:13px}.part-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.part-card{min-height:190px;border:1px solid var(--line);background:#fff;border-radius:22px;text-align:left;padding:25px;box-shadow:var(--shadow);transition:.2s}.part-card:hover{transform:translateY(-3px);border-color:#b9c9f5}.part-card span{display:block;color:var(--blue);font-weight:900;font-size:15px}.part-card b{display:block;font-size:27px;margin:14px 0 8px}.part-card small{color:var(--muted);font-size:15px}.section-title{padding:22px 0 10px}.section-title h1{font-size:34px;margin:4px 0}.section-title p{color:var(--muted)}.question-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.qbutton{aspect-ratio:1;border:1px solid var(--line);background:#fff;border-radius:17px;font-size:22px;font-weight:900;box-shadow:0 7px 18px rgba(23,32,51,.06)}.qbutton:hover{background:var(--soft);color:var(--blue);border-color:#b8c7ee}.qbutton.group{aspect-ratio:auto;min-height:82px}.qbutton small{display:block;font-size:11px;color:var(--muted);margin-top:5px}.player-nav{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;color:var(--muted)}.player-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:30px;box-shadow:var(--shadow);text-align:center}.player-card h1{font-size:34px;margin:7px 0 24px}.player-card audio{width:min(760px,100%);margin-bottom:18px}.mode-row{display:flex;justify-content:center;gap:9px;flex-wrap:wrap}.answer-btn{color:var(--green)}.caption-panel{max-width:820px;min-height:240px;margin:22px auto 0;border-radius:18px;background:#111827;color:#fff;padding:28px;text-align:left;display:flex;align-items:center;justify-content:center}.blind-message{text-align:center;color:#cbd5e1;font-size:20px;width:100%}.english-text{font-size:21px;line-height:1.75}.chinese-text{font-size:17px;line-height:1.8;color:#cbd5e1;margin-top:18px}.answer-text{margin-top:22px;padding:14px 18px;background:#eafaf1;color:#146c3a;border-radius:12px;font-weight:900}.bottom-nav{display:flex;justify-content:space-between;gap:10px;margin-top:24px}.source-pages{margin-top:22px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:15px 18px}.source-pages summary{font-weight:800;cursor:pointer}.page-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:15px}.page-gallery img{width:100%;height:220px;object-fit:cover;border-radius:10px;border:1px solid var(--line);cursor:pointer}.page-gallery img:hover{object-fit:contain;background:#eee}
@media(max-width:760px){.site-head{height:auto;padding:14px 16px;align-items:flex-start;gap:12px}.brand{font-size:16px}.part-grid{grid-template-columns:1fr}.question-grid{grid-template-columns:repeat(4,1fr)}.player-card{padding:20px 14px}.player-card h1{font-size:27px}.caption-panel{min-height:190px;padding:20px}.bottom-nav{display:grid;grid-template-columns:1fr 1fr}.bottom-nav .primary{grid-column:1/-1;grid-row:1}.page-gallery{grid-template-columns:repeat(2,1fr)}}
