.exam-shell{max-width:1000px;padding-top:38px}.hidden{display:none!important}.exam-intro{text-align:center;padding:28px 0 50px}.exam-intro h1{font-size:clamp(2.2rem,5vw,4.5rem);margin:12px 0}.exam-overview{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:30px 0}.exam-overview>div{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:22px;text-align:left;box-shadow:var(--shadow)}.exam-overview b,.exam-overview span{display:block}.exam-overview span{color:var(--ink-soft);margin-top:7px;font-size:.9rem}.notice{background:rgba(235,181,18,.14);border:1px solid rgba(235,181,18,.45);padding:16px;border-radius:14px;text-align:left;line-height:1.6}.big{font-size:1rem;padding:14px 24px;margin-top:25px}.exam-topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.exam-topbar h2{font-size:2.2rem;margin:3px 0}.exam-topbar span{color:var(--ink-soft)}.timer{font-family:monospace;font-size:1.5rem;font-weight:800;padding:12px 18px;border-radius:14px;background:var(--ink);color:var(--paper)}.timer.danger{background:#d6412f}.stepper{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-bottom:25px}.step{height:7px;border-radius:20px;background:var(--line)}.step.active{background:var(--blue)}.task-card{background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:24px;margin:16px 0;box-shadow:var(--shadow)}.task-card h3{margin-top:0}.instruction{color:var(--ink-soft);line-height:1.65}.audio-row{display:flex;gap:10px;align-items:center;padding:13px;border-radius:12px;background:var(--bg);margin:12px 0}.audio-btn{border:0;border-radius:10px;background:var(--blue);color:#fff;padding:10px 14px;cursor:pointer;font-weight:700}.question{padding:17px 0;border-top:1px solid var(--line)}.question:first-of-type{border-top:0}.question p{font-weight:700}.options{display:grid;gap:9px}.option{display:flex;gap:10px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:12px;cursor:pointer}.option:hover{border-color:var(--blue)}.reading-text{background:var(--bg);border-left:4px solid var(--yellow);padding:18px;border-radius:10px;line-height:1.7}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field label{display:block;font-weight:700;margin-bottom:6px}.field input,.writing-box{width:100%;padding:12px;border:1px solid var(--line);border-radius:11px;background:var(--paper);color:var(--ink);font:inherit}.writing-box{min-height:180px;resize:vertical}.word-count{font-family:monospace;color:var(--ink-soft);text-align:right}.checklist{display:grid;gap:10px;margin-top:15px}.checkitem{display:flex;align-items:flex-start;gap:10px;padding:11px;border-radius:10px;background:var(--bg)}.speaking-prompt{font-size:1.25rem;background:var(--bg);padding:20px;border-radius:14px}.sample{margin-top:12px;padding:15px;border-left:4px solid var(--blue);background:rgba(30,99,168,.08);border-radius:8px}.record-status{font-size:.9rem;color:var(--ink-soft)}.exam-nav{display:flex;justify-content:space-between;padding:20px 0 50px}.score-ring{width:170px;height:170px;border-radius:50%;display:grid;place-items:center;margin:15px auto;background:conic-gradient(var(--blue) calc(var(--score)*1%),var(--line) 0)}.score-ring:before{content:"";position:absolute;width:130px;height:130px;border-radius:50%;background:var(--paper)}.score-ring b{position:relative;font-size:2rem}.result-panel{text-align:center;padding:35px 0}.result-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:25px 0}.result-card{padding:20px;border:1px solid var(--line);border-radius:15px;background:var(--paper)}.result-card b{font-size:1.5rem;display:block}.feedback{text-align:left;background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:20px;margin:18px 0}.wrong-item{padding:12px 0;border-bottom:1px solid var(--line)}@media(max-width:720px){.exam-overview,.result-grid{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.exam-shell{padding-top:20px}.task-card{padding:17px}.exam-topbar h2{font-size:1.7rem}}@media(max-width:460px){.exam-overview,.result-grid{grid-template-columns:1fr}.exam-nav{gap:10px}.exam-nav .btn{flex:1}}
