body{margin:0;font:16px Arial;background:#f2f6f9;color:#102b45}.head{background:#18557f;color:white;padding:22px}.wrap{max-width:900px;margin:auto}.card{background:white;border:1px solid #d6e1e8;border-radius:14px;padding:24px;margin:24px auto}.opt{display:block;border:1px solid #d5e0e7;border-radius:9px;padding:12px;margin:8px 0}.btn,button{background:#087dbb;color:white;border:0;border-radius:8px;padding:11px 16px;font-weight:bold;cursor:pointer}.secondary{background:#667b8b}.barbg{height:8px;background:#e3ebf0;border-radius:6px}.bar{height:8px;background:#1387c4;border-radius:6px}.timer{float:right;font-weight:bold}.source{background:#f7fafc;border-left:4px solid #1387c4;padding:14px;margin:15px 0}.warn{background:#fff5dc;padding:14px;border-radius:9px}.good{background:#e9f7ee;padding:14px;border-radius:9px}.small{font-size:13px;color:#607586}textarea{width:100%;min-height:150px;box-sizing:border-box;padding:12px}.task{border:1px solid #dce6ec;border-radius:10px;padding:15px;margin:14px 0}.count{font-size:13px;margin-top:6px}.irn-header{background:#174f78;color:#fff;padding:24px}.irn-head{max-width:1120px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:25px}.irn-head h1{margin:0 0 6px;font-size:30px}.irn-head p{margin:0}.irn-head img{width:180px;background:#fff;padding:7px;border-radius:10px}.irn-main{max-width:1120px;margin:28px auto;padding:0 20px}.back{display:inline-block;margin-bottom:20px;color:#075d9c}.intro{display:flex;gap:15px;align-items:center;background:#e9f4fb;padding:15px 18px;border-radius:11px;margin-bottom:22px}.intro span{color:#496678}.exam-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.exam-card{background:#fff;border:1px solid #d5e1e8;border-radius:17px;padding:18px 20px 21px;box-shadow:0 4px 16px #0000000d}.exam-logo{width:100%;height:115px;object-fit:contain}.exam-card h2{font-size:23px;margin:12px 0 6px}.exam-card>p{color:#506879;min-height:56px}.skills>div{display:flex;align-items:center;gap:12px;padding:10px 3px;border-bottom:1px solid #edf2f5;font-size:20px}.skills span{display:flex;flex-direction:column;font-size:15px}.skills small{font-weight:normal;color:#607586;margin-top:3px}.badges{display:flex;gap:9px;margin:15px 0}.badges span{background:#edf5fa;border-radius:20px;padding:7px 11px;font-size:13px;font-weight:bold;color:#315d78}.start{display:block;text-align:center;text-decoration:none;color:#fff;padding:13px;border-radius:9px;font-weight:bold}.tef-btn{background:#d82d80}.tcf-btn{background:#1774aa}.notice{margin-top:22px;background:#e8f7ed;color:#17623a;padding:15px 18px;border-radius:11px}@media(max-width:760px){.exam-grid{grid-template-columns:1fr}.irn-head img{width:125px}.irn-head h1{font-size:24px}.exam-card>p{min-height:0}.intro{align-items:flex-start;flex-direction:column}}

.docVisual{margin:15px 0}
.poster{border:1px solid #c9d1d7;background:#fff;max-width:640px;margin:auto;box-shadow:0 3px 10px #0002}
.posterTop{padding:14px 18px;font-weight:800;letter-spacing:.03em}
.posterBody{padding:18px}
.poster.work .posterTop{background:#f6c51c;color:#111;border-bottom:10px repeating-linear-gradient(135deg,#111 0 18px,#f6c51c 18px 36px)}
.poster.water .posterTop{background:#0a6aa9;color:#fff}
.poster.transit .posterTop{background:#163b67;color:#fff}
.poster.library .posterTop{background:#6b3fa0;color:#fff}
.poster .big{font-size:28px;font-weight:900;margin:8px 0}
.poster .mid{font-size:20px;font-weight:700}
.poster .line{height:1px;background:#dce3e7;margin:12px 0}
.mailbox{max-width:650px;margin:auto;border:1px solid #ccd6dd;border-radius:8px;background:white;overflow:hidden;box-shadow:0 2px 8px #0001}
.mailbar{background:#f3f6f8;padding:11px 15px;border-bottom:1px solid #d9e1e6;font-size:13px;color:#566b78}
.mailbody{padding:18px;line-height:1.5}
.sms{max-width:520px;margin:auto;background:#eef2f5;padding:18px;border-radius:18px}
.bubble{background:#fff;border-radius:16px 16px 16px 4px;padding:12px 15px;margin:8px 0;box-shadow:0 1px 3px #0002}
.forum{max-width:650px;margin:auto;border:1px solid #d5dee4;border-radius:10px;background:#fff;overflow:hidden}
.forumHead{background:#eef5fb;padding:12px 16px;font-weight:700}
.forumPost{padding:16px;line-height:1.55}
.adcard{max-width:650px;margin:auto;border:3px solid #1f6e95;background:#f8fcff;padding:18px;box-shadow:0 3px 8px #0001}
.adcard h3{color:#14577a;margin:0 0 10px;font-size:26px}
.adgrid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.badge{display:inline-block;background:#e9f2f7;border-radius:20px;padding:6px 10px;margin:3px}
.tcfChoiceVisual{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:12px 0}
.choiceCard{border:1px solid #cfd8df;border-radius:9px;padding:12px;background:white;text-align:center}
.choiceIcon{font-size:38px}

.partBanner{background:#edf6fc;border-left:5px solid #087dbb;padding:12px 15px;margin:12px 0}
.examInstruction{background:#f7f9fb;border:1px solid #dce5eb;border-radius:10px;padding:14px;margin:12px 0}
.navrow{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:16px}
.qnav{display:flex;gap:5px;flex-wrap:wrap;margin:12px 0}
.qnav button{padding:7px 10px;background:#edf2f5;color:#234;min-width:34px}
.qnav button.active{background:#087dbb;color:#fff}
.qnav button.done{outline:2px solid #8bb9d2}
.wordok{color:#16834c;font-weight:700}.wordbad{color:#b85420;font-weight:700}

.oralRecorder{margin:18px 0;padding:18px;border:1px solid #cddbe4;border-radius:12px;background:#f8fbfd}
.oralTime{font-size:24px;font-weight:800;color:#174f78;margin-bottom:12px}
.oralBtns{display:flex;gap:10px;flex-wrap:wrap}
