:root{--pte-blue:#0f3f75;--pte-blue2:#1768b2;--pte-soft:#edf6ff;--pte-line:#d8e3ef;--pte-green:#0c7a43;--pte-red:#c62828;--pte-amber:#a86200;--pte-text:#172033;--pte-muted:#64748b;--pte-yellow:#ffd43b}
*{box-sizing:border-box}.pte-standalone-body{margin:0;background:#f3f6fa;color:var(--pte-text);font-family:"Times New Roman",Times,serif;font-size:20px;line-height:1.5}.pte-public-app{min-height:100vh;background:#f3f6fa;color:var(--pte-text)}
.pte-appbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:20px;padding:12px max(18px,calc((100vw - 1180px)/2));background:#fff;border-bottom:1px solid var(--pte-line);box-shadow:0 3px 15px rgba(15,63,117,.08);font-family:Arial,sans-serif}.pte-brand-wrap{display:flex;align-items:center;gap:12px;min-width:0;color:inherit;text-decoration:none}.pte-logo{display:grid;place-items:center;width:48px;height:48px;border-radius:13px;background:var(--pte-yellow);color:var(--pte-blue);font-weight:900;font-size:21px;flex:0 0 auto}.pte-brand{display:block;font-weight:900;color:var(--pte-blue);letter-spacing:.7px;font-size:19px}.pte-brand-wrap small{display:block;font-size:13px;color:#475569;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:min(52vw,660px)}.pte-topnav{display:flex;align-items:center;gap:8px;margin-left:auto}.pte-topnav a{color:#173a64;text-decoration:none;font-size:13px;font-weight:700;padding:8px 10px;border-radius:8px}.pte-topnav a:hover{background:#edf6ff;color:#0f3f75}.pte-timer{min-width:132px;text-align:center;border:1px solid #bfd5ea;border-radius:11px;padding:7px 13px;background:var(--pte-soft);font-family:Arial,sans-serif}.pte-timer span{display:block;font-size:11px;color:#52677c;text-transform:uppercase}.pte-timer strong{font-size:25px;color:var(--pte-blue);font-variant-numeric:tabular-nums}.pte-timer-running{background:#eaf3fb}
.pte-shell{max-width:1180px;margin:0 auto;padding:0 16px 24px}.pte-hero{margin-top:18px;padding:24px 26px;border-radius:15px;background:linear-gradient(135deg,#0f3f75,#1768b2);color:#fff;box-shadow:0 8px 22px rgba(15,63,117,.14);text-align:center}.pte-hero h1{font:800 clamp(25px,3.4vw,39px)/1.22 Arial,sans-serif;margin:0 0 10px;color:#fff}.pte-hero p{margin:0 auto;max-width:900px;font:15px/1.65 Arial,sans-serif;color:#eef6ff}.pte-hero-meta{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:14px}.pte-hero-meta span{display:inline-flex;align-items:center;min-height:32px;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.14);font:700 12px Arial,sans-serif}.pte-hero-links{display:flex;flex-wrap:wrap;justify-content:center;gap:9px;margin-top:15px}.pte-hero-links a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:9px 13px;border-radius:9px;background:#fff;color:#0f3f75;text-decoration:none;font:800 13px Arial,sans-serif}.pte-hero-links a.secondary{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.55)}
.pte-exam-note{margin-top:18px;padding:12px 15px;background:#fff8e8;border:1px solid #f0d594;border-radius:11px;font:14px Arial,sans-serif;color:#704c00}.pte-exam{margin-top:14px}.pte-student-info{display:grid;grid-template-columns:minmax(0,2fr) minmax(150px,1fr) auto;align-items:end;gap:14px;padding:17px;background:#fff;border:1px solid var(--pte-line);border-radius:13px}.pte-student-info label{min-width:0;font:700 13px Arial,sans-serif;color:#334155}.pte-student-info input{display:block;width:100%;margin-top:6px;padding:12px 13px;border:1px solid #cbd5e1;border-radius:9px;font-size:16px}.pte-student-info input[readonly]{background:#eef2f7;color:#334155}.pte-start-btn,.pte-submit-btn{border:0;border-radius:9px;padding:12px 20px;background:var(--pte-blue2);color:#fff;font:700 15px Arial,sans-serif;cursor:pointer;min-height:46px}.pte-start-btn:hover,.pte-submit-btn:hover{filter:brightness(.96)}.pte-start-btn:disabled,.pte-submit-btn:disabled{opacity:.65;cursor:not-allowed}.pte-candidate-note{grid-column:1/-1;margin:0;color:#64748b;font:12px/1.45 Arial,sans-serif}.pte-progress-bar{height:8px;margin-top:12px;background:#dbe7f2;border-radius:99px;overflow:hidden}.pte-progress-bar span{display:block;height:100%;width:0;background:var(--pte-green);transition:width .25s}.pte-autosave-status{margin:7px 2px 0;font:12px/1.4 Arial,sans-serif;color:#64748b}.pte-autosave-status.is-saving{font-weight:700}.pte-autosave-status.is-saved{color:#166534}.pte-autosave-status.is-local{color:#64748b}.pte-resource-actions{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0}.pte-resource-btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none!important;background:#7c3aed;color:#fff!important;border-radius:8px;padding:9px 14px;font:700 14px Arial,sans-serif}
.pte-exam-body{margin-top:16px}.pte-text-block{line-height:1.62;background:#fff;border:1px solid var(--pte-line);border-left:4px solid #6b9bc7;border-radius:10px;padding:15px 17px;margin:14px 0;white-space:normal}.pte-question{border:1px solid #d8e2ec;border-radius:12px;padding:18px 20px;margin:15px 0;background:#fff;scroll-margin-top:100px;box-shadow:0 3px 12px rgba(15,23,42,.025)}.pte-question-title{margin-bottom:10px;font-size:1.02em;line-height:1.52}.pte-question-title strong{color:#122c4b}.pte-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:11px}.pte-options label{display:flex;align-items:flex-start;gap:10px;padding:11px 12px;border:1px solid #d9e1ea;border-radius:10px;cursor:pointer;transition:.15s}.pte-options label:hover{border-color:#8db6db;background:#f7fbff}.pte-options label:has(input:checked){border-color:var(--pte-blue2);background:#edf6ff}.pte-options input{margin-top:7px}.pte-choice-badge{display:inline-grid;place-items:center;min-width:29px;height:29px;border-radius:50%;background:#e6eef7;color:var(--pte-blue);font:800 14px Arial,sans-serif}.pte-answer-text{width:100%;box-sizing:border-box;border:1px solid #b8c7d6;border-radius:8px;padding:11px 13px;font:17px Arial,sans-serif}.pte-short-input{max-width:520px}.pte-submit-row{text-align:center;margin:28px 0}.pte-submit-btn{font-size:16px;padding:13px 26px}
.pte-audio-box{margin:18px 0;padding:16px;border:1px solid #bfd5ea;border-radius:12px;background:#f8fbff}.pte-audio-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;flex-wrap:wrap;font-family:Arial,sans-serif}.pte-audio-remaining{font-size:13px;color:#475569;font-weight:600}.pte-audio-box audio{width:100%;max-width:720px}.pte-audio-box audio.pte-audio-locked{opacity:.58}
.pte-question.pte-correct{border-color:#75b98f;background:#fbfffd}.pte-question.pte-wrong{border-color:#e79a9a;background:#fffafa}.pte-question.pte-pending{border-color:#e6c56c;background:#fffcf3}.pte-question-review{margin-top:14px;padding:12px 14px;border-top:1px dashed #94a3b8;background:rgba(255,255,255,.8);border-radius:8px;font:14px/1.55 Arial,sans-serif}.pte-question-review>div{margin:6px 0}.pte-solution-panel{margin-top:12px;border:1px solid #b9d0e6;border-radius:10px;background:#f8fbff;overflow:hidden}.pte-solution-panel summary{cursor:pointer;padding:11px 13px;background:#eaf3fb;color:#0f3f75;font-weight:800;list-style:none}.pte-solution-panel>div{padding:13px 15px;background:#fff}.pte-review-empty{color:#64748b}.pte-result{margin:20px 0 32px;padding:22px 25px;background:#fff;border:2px solid #8eb7da;border-radius:15px;font-family:Arial,sans-serif}.pte-result h3{margin:0 0 14px;color:var(--pte-blue)}.pte-result-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:11px}.pte-result-grid>div{padding:13px;background:#f4f8fc;border-radius:10px}.pte-result-grid span{display:block;font-size:12px;color:var(--pte-muted)}.pte-result-grid strong{font-size:18px;color:var(--pte-blue)}.pte-data-warning{padding:18px;border:1px solid #f0b7b7;background:#fff4f4;color:#8b1d1d;border-radius:12px;font:15px Arial,sans-serif}
.pte-footer{margin-top:12px;padding:25px max(16px,calc((100vw - 1180px)/2));background:#0f315b;color:#e8f1fb;display:flex;justify-content:space-between;gap:20px;align-items:center;font-family:Arial,sans-serif}.pte-footer strong{color:#fff}.pte-footer p{margin:4px 0;font-size:13px}.pte-footer>div:last-child{display:flex;flex-wrap:wrap;gap:8px}.pte-footer a{color:#fff;text-decoration:none;font-size:13px;font-weight:700;padding:7px 9px;border-radius:7px;background:rgba(255,255,255,.1)}
.pte-guide-link[hidden],.pte-result[hidden],.pte-exam-body[hidden],.pte-start-btn[hidden]{display:none!important}
@media(max-width:900px){.pte-topnav{display:none}.pte-result-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.pte-appbar{padding:8px 10px;gap:9px}.pte-logo{width:42px;height:42px}.pte-brand{font-size:16px}.pte-brand-wrap small{max-width:46vw}.pte-timer{min-width:105px;padding:6px 8px}.pte-timer strong{font-size:20px}.pte-shell{padding:0 10px 18px}.pte-hero{padding:18px 15px}.pte-hero h1{font-size:25px}.pte-hero-links a{width:100%}.pte-student-info{grid-template-columns:1fr;align-items:stretch}.pte-start-btn{width:100%}.pte-candidate-note{grid-column:1}.pte-options{grid-template-columns:1fr}.pte-question{padding:14px 12px}.pte-result-grid{grid-template-columns:1fr 1fr}.pte-footer{align-items:flex-start;flex-direction:column}.pte-footer>div:last-child{width:100%}.pte-footer a{flex:1;text-align:center}}
@media print{.pte-appbar,.pte-hero,.pte-exam-note,.pte-student-info,.pte-progress-bar,.pte-autosave-status,.pte-submit-row,.pte-result,.pte-footer{display:none!important}.pte-exam-body{display:block!important}.pte-question{box-shadow:none}}
/* v1.8 - Giữ định dạng quan trọng từ Word */
.pte-word-p{margin:0 0 .35em;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}
.pte-word-p:last-child{margin-bottom:0}.pte-word-run{white-space:pre-wrap}.pte-word-align-left{text-align:left}.pte-word-align-center{text-align:center}.pte-word-align-right{text-align:right}.pte-word-align-justify{text-align:justify}
.pte-text-block strong{font-weight:700}.pte-text-block em{font-style:italic}.pte-text-block u{text-decoration:underline}
.pte-review-status{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}.pte-review-status span{font-weight:700;color:#475569}
.pte-solution-panel{margin-top:12px;border:1px solid #b9d0e6;border-radius:10px;background:#fff;overflow:hidden}.pte-solution-title{padding:10px 13px;background:#eaf3fb;color:#0f3f75;font-weight:800}.pte-solution-panel>div:last-child{padding:13px 15px;background:#fff}
.pte-review-jump{border:0;border-radius:9px;padding:11px 16px;background:#1768b2;color:#fff;font-weight:700;cursor:pointer}.pte-review-jump:hover{filter:brightness(.96)}
@media(max-width:760px){.pte-word-p{white-space:pre-wrap}.pte-word-run{white-space:pre-wrap}.pte-result-grid{grid-template-columns:1fr}}


/* v1.9 - Lời giải Word giữ nguyên định dạng và màu chữ */
.pte-word-solution{font-family:Arial,sans-serif;line-height:1.6;color:#111827}
.pte-word-solution .pte-word-p{margin:0 0 .45em;white-space:pre-wrap;overflow-wrap:anywhere}
.pte-word-solution .pte-word-p:last-child{margin-bottom:0}
.pte-word-solution strong{font-weight:700}
.pte-word-solution em{font-style:italic}
.pte-word-solution u{text-decoration:underline}
