.questions-main { --q-green:#006d67; --q-deep:#004c48; --q-gold:#a98445; --q-muted:#5d7068; }
.questions-main button { font-family: inherit; }
.questions-hero { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr); align-items:center; gap:clamp(30px,5vw,80px); max-width:1360px; margin:auto; padding:76px clamp(24px,5vw,72px) 62px; }
.questions-hero h1 { margin:15px 0 23px; color:var(--q-deep); font-size:clamp(48px,5.4vw,75px); line-height:1.17; letter-spacing:-.055em; }
.questions-hero h1 em { color:var(--q-gold); font-style:normal; }
.questions-hero p { max-width:620px; color:var(--q-muted); font-size:clamp(16px,1.4vw,18px); line-height:1.9; }
.questions-hero-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:27px; }
.questions-hero-visual { position:relative; min-height:350px; border:1px solid #cbded2; border-radius:24px; background:radial-gradient(circle at center,#fff 2%,#f0f8f2 58%,#e6f2e9 100%); box-shadow:0 23px 55px rgba(0,77,72,.1); overflow:hidden; }
.questions-hero-visual::before,.questions-hero-visual::after { content:""; position:absolute; top:50%; left:50%; width:235px; height:235px; transform:translate(-50%,-50%); border:1px solid #bdd7c6; border-radius:50%; }
.questions-hero-visual::after { width:312px; height:312px; border-color:#dbc8a9; }
.orbit-center { position:absolute; top:50%; left:50%; z-index:2; display:grid; place-items:center; align-content:center; width:145px; height:145px; transform:translate(-50%,-50%); border:5px solid #fff; border-radius:50%; color:#fff; background:var(--q-green); box-shadow:0 18px 30px rgba(0,77,72,.2); text-align:center; font-size:25px; font-weight:700; line-height:1.35; }
.orbit-center small { font-size:10px; font-weight:500; }
.orbit { position:absolute; z-index:3; display:grid; place-items:center; width:70px; height:70px; border:1px solid #d8e8da; border-radius:50%; background:#fff; color:var(--q-gold); box-shadow:0 8px 20px rgba(0,77,72,.08); font-size:17px; font-weight:700; line-height:1.15; }
.orbit span { color:var(--q-deep); font-size:10px; }
.orbit svg { width:24px; height:24px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.orbit-a { top:35px; right:75px; }.orbit-b { bottom:38px; right:55px; }.orbit-c { top:125px; left:32px; }
.questions-note { max-width:1200px; margin:0 auto; padding:16px 22px; border-right:4px solid var(--q-gold); border-radius:10px 0 0 10px; color:#5a675f; background:#faf7ef; font-size:12px; line-height:1.75; }
.questions-note strong { color:var(--q-deep); }
.questions-workspace { max-width:1360px; margin:0 auto; padding:80px clamp(24px,5vw,72px) 90px; scroll-margin-top:165px; }
.questions-heading { margin-bottom:25px; }
.questions-heading h2 { margin:6px 0 2px; color:var(--q-deep); font-size:clamp(32px,3vw,44px); line-height:1.35; }
.questions-heading p { color:var(--q-muted); font-size:13px; }
.bank-modes { display:grid; grid-template-columns:repeat(3,1fr); gap:9px; margin-bottom:28px; }
#bankModes { scroll-margin-top:165px; }
.bank-modes button { display:grid; justify-items:start; gap:4px; min-height:112px; padding:16px 18px; border:1px solid #d6e5da; border-top:3px solid #c6d9cb; border-radius:13px; color:#51685a; background:#fff; text-align:right; transition:transform .18s,border-color .18s,box-shadow .18s; }
.bank-modes .mode-icon { width:25px; height:25px; margin-bottom:3px; padding:5px; box-sizing:content-box; border-radius:10px; color:#006d67; background:#e8f4ec; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.bank-modes button:nth-child(2) .mode-icon { color:#8c682d; background:#fbf2df; }
.bank-modes button:nth-child(3) .mode-icon { color:#3e6997; background:#e8f0f9; }
.bank-modes button:hover { transform:translateY(-2px); border-color:#8fb8a1; }
.bank-modes button[aria-selected="true"] { border-color:var(--q-green); border-top-color:var(--q-gold); color:var(--q-deep); background:#eef7f0; box-shadow:0 11px 24px rgba(0,77,72,.08); }
.bank-modes button span { color:#8c6a32; font-size:10px; font-weight:700; }
.bank-modes button strong { color:inherit; font-size:17px; }
.bank-modes button small { color:#6d8074; font-size:11px; }
.bank-panel { min-height:380px; }
.bank-panel[hidden] { display:none; }
.bank-panel-intro { display:flex; justify-content:space-between; align-items:end; gap:26px; margin-bottom:20px; }
.bank-panel-intro h3 { margin:4px 0 0; color:var(--q-deep); font-size:26px; }
.bank-panel-intro p { max-width:390px; margin:0; color:var(--q-muted); font-size:12px; }
.questions-loading,.bank-error { padding:36px; border:1px dashed #bdd6c6; border-radius:15px; color:var(--q-muted); background:#f5faf6; text-align:center; }
.challenge-tracks { display:flex; flex-wrap:wrap; gap:7px; margin-bottom:20px; }
.challenge-tracks button { display:inline-flex; align-items:center; gap:6px; padding:8px 15px; border:1px solid #c6ddcb; border-radius:99px; color:var(--q-deep); background:#fff; font-size:12px; font-weight:700; }
.challenge-tracks button::before { content:""; width:7px; height:7px; flex:none; border-radius:50%; background:var(--track-color,#006d67); }
.challenge-tracks [data-track="mandate"] { --track-color:#006d67; }.challenge-tracks [data-track="procedure"] { --track-color:#aa8340; }.challenge-tracks [data-track="services"] { --track-color:#5579a9; }.challenge-tracks [data-track="digital"] { --track-color:#3a9a82; }.challenge-tracks [data-track="evidence"] { --track-color:#865e9e; }.challenge-tracks [data-track="opportunity"] { --track-color:#c06f55; }
.challenge-tracks button small { display:grid; place-items:center; min-width:19px; height:19px; padding:0 4px; border-radius:99px; color:#567065; background:#edf4ed; font-size:10px; }
.challenge-tracks button[aria-pressed="true"] { color:#fff; border-color:var(--q-green); background:var(--q-green); }
.challenge-tracks button[aria-pressed="true"]::before { background:#e2c381; }
.challenge-tracks button[aria-pressed="true"] small { color:#004c48; background:#eaf8ed; }
.challenge-length { display:flex; flex-wrap:wrap; gap:7px; margin:-3px 0 22px; }
.challenge-length button { padding:8px 13px; border:1px solid #d5e3d6; border-radius:9px; color:#4f6657; background:#f8fbf8; font-size:11px; font-weight:700; }
.challenge-length button[aria-pressed="true"] { border-color:#9b763a; color:#6e4d1e; background:#fbf2df; }
.question-card,.question-result,.flash-frame,.oral-frame { border:1px solid #d6e5da; border-radius:19px; background:#fff; box-shadow:0 16px 39px rgba(0,77,72,.06); }
.question-card { padding:clamp(21px,3vw,38px); }
.question-meta { display:flex; align-items:center; justify-content:space-between; gap:14px; color:#8c6a32; font-size:11px; font-weight:700; }
.question-progress { height:7px; margin:13px 0 29px; overflow:hidden; border-radius:99px; background:#e7f1e9; }
.question-progress span { display:block; height:100%; border-radius:99px; background:linear-gradient(90deg,#a98445,#006d67); transition:width .3s; }
.question-card h4 { max-width:900px; margin:0 0 7px; color:var(--q-deep); font-size:clamp(23px,2.5vw,33px); line-height:1.5; }
.question-context { max-width:950px; margin-bottom:22px; color:#68796d; font-size:13px; }
.question-choices { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; margin-bottom:22px; }
.question-choices button { display:flex; align-items:center; gap:13px; min-height:67px; padding:12px 15px; border:1px solid #d9e8dc; border-radius:12px; color:#304e41; background:#fafcf9; text-align:right; font-size:14px; line-height:1.6; }
.question-choices button:hover:not(:disabled) { border-color:#006d67; background:#eef7f0; }
.question-choices button .choice-index { display:grid; place-items:center; flex:none; width:27px; height:27px; border:1px solid #c4dac9; border-radius:7px; color:#8c6a32; background:#fff; direction:ltr; font-size:12px; font-weight:700; }
.question-choices button.correct { border-color:#3b9a70; color:#064c36; background:#e6f6eb; }
.question-choices button.incorrect { border-color:#bc7666; color:#70382e; background:#fbede9; }
.question-feedback { padding:16px 19px; border-right:4px solid #006d67; border-radius:9px 0 0 9px; background:#f1f8f2; animation:softReveal .22s ease-out; }
.question-feedback.is-wrong { border-right-color:#a98445; background:#fbf7ef; }
.question-feedback strong { color:var(--q-deep); }
.question-feedback p { margin:5px 0 0; color:#4f6356; font-size:13px; }
.question-actions { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-top:20px; }
.question-next,.bank-action { display:inline-flex; align-items:center; justify-content:center; min-height:42px; padding:9px 19px; border:1px solid var(--q-green); border-radius:9px; color:#fff; background:var(--q-green); font-size:12px; font-weight:700; text-decoration:none; }
.question-next:hover,.bank-action:hover { color:#fff; background:#00544f; }
.question-result { display:grid; justify-items:center; padding:45px 22px; text-align:center; }
.result-ring { display:grid; place-items:center; width:142px; height:142px; margin-bottom:16px; border-radius:50%; background:conic-gradient(#006d67 var(--score),#e3eee6 0); }
.result-ring span { display:grid; place-items:center; width:112px; height:112px; border-radius:50%; color:var(--q-deep); background:#fff; direction:ltr; font-size:28px; font-weight:700; }
.question-result h3 { margin:4px 0; color:var(--q-deep); font-size:29px; }
.question-result p { max-width:610px; color:var(--q-muted); font-size:13px; }
.result-actions { display:flex; flex-wrap:wrap; justify-content:center; gap:9px; margin-top:17px; }
.result-actions button.secondary { color:var(--q-green); border-color:var(--q-green); background:#fff; }
.source-links { display:flex; flex-wrap:wrap; gap:7px; margin-top:12px; }
.source-links a { display:inline-flex; align-items:center; padding:4px 8px; border-radius:6px; color:#005e58; background:#e7f2ec; font-size:10px; font-weight:700; text-decoration:none; }
.source-links a:hover { background:#d6e9de; }
.flash-frame { display:grid; grid-template-columns:minmax(0,1fr) 250px; overflow:hidden; }
.flash-card { display:flex; flex-direction:column; justify-content:center; min-height:345px; padding:40px; color:#fff; background:linear-gradient(145deg,#006d67,#004c48); }
.flash-card.revealed { color:#334d3d; background:linear-gradient(150deg,#fff,#f5faf5); animation:softReveal .26s ease-out; }
.flash-card > span { color:#e7d6b6; font-size:11px; font-weight:700; }
.flash-card.revealed > span { color:#8c6a32; }
.flash-card h4 { margin:11px 0 13px; color:inherit; font-size:clamp(25px,2.7vw,34px); line-height:1.45; }
.flash-card p { max-width:760px; margin:0; font-size:15px; line-height:1.85; }
.flash-card .trap { margin-top:16px; padding-right:12px; border-right:3px solid #a98445; color:#5d6658; font-size:12px; }
.flash-card .source-links { margin-top:17px; }
.flash-tools { display:flex; flex-direction:column; justify-content:space-between; gap:18px; padding:23px; background:#f4f8f4; }
.flash-tools h5 { margin:0; color:var(--q-deep); font-size:15px; }
.flash-tools p { margin:3px 0; color:var(--q-muted); font-size:11px; }
.flash-stats { display:grid; gap:7px; }
.flash-stats span { padding:8px 10px; border:1px solid #d8e8da; border-radius:8px; background:#fff; color:#536659; font-size:11px; }
.flash-button-row { display:grid; gap:7px; }
.flash-button-row button { min-height:39px; padding:7px 10px; border:1px solid #c5dccb; border-radius:8px; color:var(--q-green); background:#fff; font-size:11px; font-weight:700; }
.flash-button-row button.primary { color:#fff; border-color:var(--q-green); background:var(--q-green); }
.flash-button-row button[aria-pressed="true"] { border-color:#a98445; background:#fbf6eb; }
.flash-nav { display:flex; gap:6px; }.flash-nav button { flex:1; }
.oral-frame { display:grid; grid-template-columns:minmax(0,1fr) 200px; gap:0; overflow:hidden; }
.oral-work { padding:clamp(22px,3vw,34px); }
.oral-work > span { color:#8c6a32; font-size:11px; font-weight:700; }
.oral-work h4 { margin:8px 0 15px; color:var(--q-deep); font-size:clamp(23px,2.4vw,31px); line-height:1.5; }
.oral-work label { display:block; margin-bottom:7px; color:#536659; font-size:12px; font-weight:700; }
.oral-work textarea { display:block; width:100%; min-height:132px; padding:13px; border:1px solid #c7decf; border-radius:10px; resize:vertical; color:#34483d; background:#fbfdfb; font:inherit; font-size:13px; line-height:1.7; }
.oral-work textarea:focus { outline:2px solid #a98445; outline-offset:2px; }
.oral-reveal { margin-top:16px; padding:15px 17px; border:1px solid #cfdfd2; border-right:4px solid #a98445; border-radius:9px 0 0 9px; background:#f7faf6; animation:softReveal .22s ease-out; }
.oral-reveal h5 { margin:0 0 8px; color:var(--q-deep); font-size:14px; }
.oral-reveal label { display:flex; align-items:start; gap:8px; margin:8px 0; color:#405d49; font-size:12px; font-weight:500; }
.oral-reveal input { margin-top:6px; accent-color:#006d67; }
.oral-reveal p { margin-top:15px; color:#556b5a; font-size:12px; }
.oral-controls { display:flex; flex-wrap:wrap; gap:8px; margin-top:15px; }
.oral-controls button { min-height:39px; padding:7px 13px; border:1px solid #b8d5bf; border-radius:8px; color:var(--q-green); background:#fff; font-size:11px; font-weight:700; }
.oral-controls button.primary { border-color:var(--q-green); color:#fff; background:var(--q-green); }
.oral-side { display:grid; justify-items:center; align-content:center; gap:13px; padding:25px; background:#f3f8f3; border-right:1px solid #dbe8dd; }
.scenario-side { justify-items:start; align-content:start; background:linear-gradient(160deg,#eaf5ee,#f8f4e9); }
.scenario-side .scenario-index { display:grid; place-items:center; width:67px; height:67px; border-radius:18px; color:#fff; background:#006d67; font-size:28px; font-weight:700; direction:ltr; }
.scenario-side h5 { margin:0; color:#004c48; font-size:15px; line-height:1.5; }
.scenario-side p { text-align:right; line-height:2; }
.scenario-side small { color:#65786a; font-size:10px; line-height:1.7; }
.timer-ring { display:grid; place-items:center; width:122px; height:122px; border-radius:50%; background:conic-gradient(#006d67 var(--time),#dcebdd 0); }
.timer-ring strong { display:grid; place-items:center; width:94px; height:94px; border-radius:50%; color:var(--q-deep); background:#fff; direction:ltr; font-size:28px; }
.oral-side p { margin:0; color:var(--q-muted); text-align:center; font-size:11px; }
.questions-next { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:50px max(24px,calc((100vw - 1200px)/2)); border-top:1px solid #d6e5da; background:#f4f8f4; }
.questions-next h2 { margin:6px 0; color:var(--q-deep); font-size:clamp(24px,2.8vw,34px); }
.questions-next p { max-width:560px; color:var(--q-muted); font-size:13px; }
.questions-next > div:last-child { display:grid; gap:7px; min-width:200px; }
.questions-next a { padding:9px 12px; border:1px solid #b8d6bf; border-radius:8px; color:var(--q-green); background:#fff; text-decoration:none; font-size:12px; font-weight:700; }
@keyframes softReveal { from {opacity:.35;transform:translateY(5px)} to {opacity:1;transform:translateY(0)} }
@media(max-width:1000px) { .questions-hero { grid-template-columns:1fr; padding-top:55px; }.questions-hero-visual { max-width:620px; width:100%; }.flash-frame { grid-template-columns:1fr; }.flash-tools { display:grid; grid-template-columns:1fr 1fr; }.oral-frame { grid-template-columns:1fr; }.oral-side { display:flex; justify-content:center; flex-wrap:wrap; border-right:0; border-top:1px solid #dbe8dd; }.directory-grid { grid-template-columns:repeat(2,1fr); } }
@media(max-width:650px) { .questions-hero { padding:37px 20px 42px; }.questions-hero h1 { font-size:clamp(42px,12vw,60px); }.questions-hero-visual { min-height:290px; }.questions-hero-visual::before { width:190px; height:190px; }.questions-hero-visual::after { width:250px; height:250px; }.orbit-center { width:120px; height:120px; }.orbit-a {top:22px;right:40px}.orbit-b {bottom:26px;right:35px}.orbit-c {top:110px;left:15px}.questions-note { margin:0 17px; }.questions-workspace { padding:50px 18px 65px; scroll-margin-top:130px; }.bank-modes { display:flex; gap:8px; max-width:100%; overflow-x:auto; padding:2px 2px 10px; scroll-snap-type:x mandatory; }.bank-modes button { min-width:142px; min-height:130px; padding:11px; scroll-snap-align:start; }.bank-modes button strong { font-size:13px; }.bank-modes button small { font-size:10px; }.bank-panel-intro { align-items:start; display:block; }.bank-panel-intro p { margin-top:7px; }.question-choices { grid-template-columns:1fr; }.question-actions { align-items:start; flex-direction:column; }.question-next { width:100%; }.flash-card { min-height:300px; padding:25px; }.flash-tools { grid-template-columns:1fr; }.oral-work { padding:20px; }.oral-side { padding:17px; }.scenario-side { display:grid; }.questions-next { display:block; padding:35px 20px; }.questions-next > div:last-child { margin-top:20px; } }
@media(max-width:650px) { #bankModes { scroll-margin-top:130px; } }
@media(prefers-reduced-motion:reduce) { .questions-main *, .questions-main *::before, .questions-main *::after { animation-duration:.01ms !important; transition-duration:.01ms !important; scroll-behavior:auto !important; } }
.bank-mode-nav{display:none}.bank-mode-nav button,.coverage-map button,.challenge-resume button{font:inherit;cursor:pointer}.bank-mode-nav button:focus-visible,.coverage-map button:focus-visible,.challenge-resume button:focus-visible,.question-reading:focus-visible{outline:3px solid #a98445;outline-offset:3px}
.coverage-map{margin:0 0 22px;padding:14px 17px;border:1px solid #d4e4d9;border-radius:12px;background:#f7fbf8}.coverage-map summary{color:#005e58;font-size:14px;font-weight:800;cursor:pointer}.coverage-map summary span{margin-inline-start:8px;color:#786033;font-size:12px;font-weight:600}.coverage-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:17px}.coverage-grid article{padding:15px;border:1px solid #dbe9df;border-radius:10px;background:#fff}.coverage-grid article>span{color:#8b692e;font-size:12px;font-weight:800}.coverage-grid h4{margin:6px 0;color:#005e58;font-size:16px}.coverage-grid p{margin:4px 0;color:#4f6557;font-size:12px;line-height:1.7}.coverage-grid small{display:block;color:#65766b;font-size:11px}.coverage-grid button{margin-top:10px;padding:7px 10px;border:1px solid #a8c9b1;border-radius:7px;color:#005e58;background:#f3faf5;font-size:12px;font-weight:800}
.challenge-session-note{margin:0 0 12px;padding:11px 14px;border-right:3px solid #a98445;border-radius:8px;color:#53665a;background:#fcf8ef;font-size:13px;line-height:1.7}.challenge-local{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin:0 0 14px}.challenge-local>label{display:flex;align-items:center;gap:8px;color:#38584a;font-size:13px;font-weight:700}.challenge-local input{accent-color:#006d67;width:17px;height:17px}.challenge-resume{display:flex;align-items:center;flex-wrap:wrap;gap:7px}.challenge-resume button{min-height:36px;padding:6px 10px;border:1px solid #bbd6c2;border-radius:7px;color:#005e58;background:#f7fbf8;font-size:12px;font-weight:700}.challenge-resume small{display:block;width:100%;color:#607166;font-size:11px;line-height:1.6}
.question-skill{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.question-skill span{padding:3px 8px;border:1px solid #dfebdf;border-radius:99px;color:#486a56;background:#f5faf5;font-size:11px;font-weight:700}.question-skill span:last-child{border-color:#eee0c7;color:#80602d;background:#fdf9f0}.question-reading{display:inline-flex;align-items:center;min-height:38px;margin-top:12px;padding:6px 10px;border:1px solid #b7d6c0;border-radius:7px;color:#005e58;background:#fff;text-decoration:none;font-size:12px;font-weight:800}.challenge-anchor{display:block;scroll-margin-top:165px}
@media(max-width:900px){.coverage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.questions-hero{padding:20px 20px 14px}.questions-hero h1{margin:5px 0 9px;font-size:clamp(35px,9vw,42px)}.questions-hero p{margin:0;font-size:14px;line-height:1.7}.questions-hero-actions{margin-top:14px}.questions-hero-actions a{min-height:42px;padding:7px 11px;font-size:12px}.questions-hero-visual{display:none}.questions-note{padding:12px 14px;font-size:12px}.questions-workspace{padding-top:22px}.questions-heading{margin-bottom:13px}.questions-heading h2{font-size:28px}.questions-heading p{font-size:13px;line-height:1.7}.bank-mode-nav{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px;color:#4e6657;font-size:12px;line-height:1.6}.bank-mode-nav>div{display:flex;gap:5px}.bank-mode-nav button{width:32px;height:32px;border:1px solid #b8d4c0;border-radius:7px;color:#005e58;background:#fff;font-size:19px}.bank-modes button{min-width:155px;min-height:117px}.coverage-grid{grid-template-columns:1fr}.coverage-map{padding:12px}.coverage-map summary span{display:block;margin-inline-start:0}.challenge-length button,.challenge-tracks button{font-size:12px}.question-meta,.question-skill span{font-size:12px}.question-feedback p,.question-reading{font-size:13px}.challenge-anchor{scroll-margin-top:115px}}
