/* Gold entry is exclusive to assessments. */
#academy-map .exam-open-button{display:block;width:100%;min-height:48px;padding:12px 20px;border:1px solid #e5c472;border-radius:5px;background:linear-gradient(135deg,#b88a35,#f0d18a 48%,#c79a46);color:#211a0c;font:700 13px var(--ecg-font-body,sans-serif);letter-spacing:.08em;box-shadow:inset 0 1px 0 #fff5cf,0 3px 12px #0006;cursor:pointer;transition:transform .18s,box-shadow .18s,filter .18s}
#academy-map .exam-open-button:not(:disabled):is(:hover,:focus-visible){transform:translateY(-2px);filter:brightness(1.13);box-shadow:inset 0 1px 0 #fff5cf,0 0 20px #e5bd6666;outline:2px solid #fff0b9;outline-offset:3px}
#academy-map .exam-open-button:not(:disabled):active{transform:translateY(1px)}
#academy-map .exam-open-button:disabled{background:#252a2e;border-color:#59616a;color:#9ca5ac;box-shadow:none;cursor:not-allowed}
#academy-map .exam-entry-preview :is(.lesson-preview-action,.sector-study-actions,[data-study-action="seen"],.viewer-tabs,.viewer-expand){display:none!important}
body.exam-room-open{overflow:hidden!important}
.course-exam-room{position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;color:#eff3f7;background:radial-gradient(ellipse at 50% 42%,#26313c55,transparent 58%),linear-gradient(145deg,#080f18,#0e1823 60%,#070d15);font-family:var(--ecg-font-body,sans-serif);overflow:auto}
.course-exam-room::backdrop{background:#070d15}
.exam-room-shell{min-height:100%;box-sizing:border-box;display:flex;flex-direction:column;padding:32px clamp(22px,6vw,100px)}
.exam-room-shell>header,.exam-room-shell>footer{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:11px;letter-spacing:.12em;color:#adb9c6}
.exam-room-shell>header b{display:block;margin-top:7px;color:#d7b66d;font-size:10px;letter-spacing:.25em}
.exam-room-back{padding:12px 16px;background:#101c28;border:1px solid #4c5d6d;border-radius:4px;color:#dfe8ef;font:600 11px var(--ecg-font-body,sans-serif);cursor:pointer}
.exam-room-back:is(:hover,:focus-visible){border-color:#e5c472;color:#ffe9b0;outline:2px solid #d6b468;outline-offset:3px}
.exam-room-shell>main{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:48px 0;max-width:850px;width:100%;margin:auto}
.exam-room-medal{display:grid;place-items:center;width:86px;height:86px;border:1px solid #b8934e;outline:1px solid #b8934e44;outline-offset:7px;clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%);background:linear-gradient(145deg,#574728,#151c24);color:#f1d38b;font-size:46px;box-shadow:inset 0 0 25px #cfad5522}
.exam-room-eyebrow{margin:30px 0 12px;color:#d8b872;font-size:12px;letter-spacing:.22em}
#exam-room-title{font-size:clamp(26px,3vw,42px);font-weight:600;line-height:1.25;margin:0;outline:none;max-width:760px}
.exam-room-rule{width:90px;height:2px;margin:28px 0;background:linear-gradient(90deg,transparent,#e8c776,transparent)}
.exam-room-status{font-size:15px;line-height:1.6;color:#aebcca;margin:0}
.exam-room-shell>footer{padding-top:20px;border-top:1px solid #7891a322}
@media(max-width:600px){.exam-room-shell{padding:22px}.exam-room-shell>header{align-items:flex-start;flex-direction:column}.exam-room-shell>footer{font-size:9px}.exam-room-back{min-height:44px}}
@media(prefers-reduced-motion:reduce){#academy-map .exam-open-button{transition:none}}

/* Ceremony ends on the actual exam interface; no intermediate screen. */
.exam-intro-skip{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);z-index:5;min-height:44px;padding:10px 18px;border:1px solid #b49a6266;border-radius:4px;background:#0a131fed;color:#ebd8a8;font:600 11px var(--ecg-font-body,sans-serif);letter-spacing:.1em;cursor:pointer}
.exam-intro-skip:focus-visible{outline:2px solid #ffe6a3;outline-offset:3px}
.exam-intro-fx{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:0}
.exam-room-shell{position:relative;z-index:1}
.exam-intro-ring{position:absolute;left:var(--intro-x);top:var(--intro-y);border:1px solid #e7c674;border-radius:50%;box-shadow:0 0 15px #e9bf5126,inset 0 0 15px #e9bf511c}
.exam-intro-ring:nth-child(2){border-radius:12%;border-style:dashed}
.exam-intro-particle{position:absolute;left:var(--intro-x);top:var(--intro-y);width:3px;height:3px;background:#ffe8a9;box-shadow:0 0 9px #e8bb50}
.course-exam-room[data-exam-tier=final]{background:radial-gradient(ellipse at 50% 40%,#57422355,transparent 65%),linear-gradient(145deg,#080d18,#151827 60%,#070d15)}
.course-exam-room[data-exam-tier=final] .exam-room-medal{background:linear-gradient(135deg,#8f6a2c,#211e29);color:#fff0bd;box-shadow:inset 0 0 35px #edc76b55}
.course-exam-room[data-exam-tier=final] .exam-room-medal::before,.course-exam-room[data-exam-tier=final] .exam-room-medal::after{content:'❯';position:absolute;color:#f2d391;font-size:27px;transform:translateX(28px)}
.course-exam-room[data-exam-tier=final] .exam-room-medal::before{transform:translateX(-28px) rotate(180deg)}
.course-exam-room[data-exam-tier=lesson] .exam-room-medal{background:#202a32;box-shadow:none}
@media(prefers-reduced-motion:reduce){.exam-intro-fx{display:none}}

.exam-pilot-note{font-size:13px;line-height:1.6;color:#aabac8;max-width:650px}
.course-exam-room main button{padding:12px 18px;border:1px solid #677581;border-radius:4px;background:#132231;color:#eef2f6;font:600 12px var(--ecg-font-body,sans-serif);cursor:pointer;min-height:44px}
.course-exam-room main :is(.exam-pilot-primary,.exam-pilot-start){background:linear-gradient(135deg,#b68b3e,#edd194);border-color:#edce83;color:#20190d}
.course-exam-room main button:hover:not(:disabled){filter:brightness(1.15);box-shadow:0 0 15px #e0ba5533}
.course-exam-room main button:focus-visible{outline:2px solid #ffe5a7;outline-offset:3px}
.course-exam-room main button:disabled{opacity:.4;cursor:not-allowed}
.exam-question-mode .exam-room-shell>main{align-items:stretch;text-align:left;padding:30px 0;gap:12px}
.exam-question-mode h1{font-size:22px;margin:0}
.exam-question-mode main>progress{width:100%;height:5px;accent-color:#dbb96d}
.exam-question{border:0;padding:0;margin:18px 0;min-width:0}
.exam-question legend{font-size:clamp(18px,2vw,24px);line-height:1.4;margin-bottom:22px;font-weight:600}
.exam-question label{display:flex;align-items:center;gap:14px;border:1px solid #405466;background:#101e2c;padding:16px;margin:10px 0;border-radius:6px;cursor:pointer;line-height:1.5;font-size:15px}
.exam-question label:has(:checked){border-color:#e4c17b;background:#332d21;box-shadow:inset 3px 0 #e4c17b}
.exam-question label:focus-within{outline:2px solid #e4c17b;outline-offset:3px}
.exam-question input{accent-color:#e4c17b;flex-shrink:0}
.exam-question label b{color:#e4c17b}
.exam-question-nav{display:flex;justify-content:space-between;gap:16px}
.exam-review-list{padding-left:24px;line-height:1.5}
.exam-review-list li{padding:16px 0;border-bottom:1px solid #405466}
.exam-review-list p{color:#bed0df}
.exam-submit-status{padding:22px;border:1px solid #ac915c;background:#2a251b;line-height:1.6}
@media(max-width:600px){.exam-question label{padding:12px;gap:8px}.exam-question-nav button{padding:10px}.exam-question-mode .exam-room-shell>main{padding-top:24px}}

/* Temporary preview action; uses the existing progress handler. */
#academy-map .exam-approve-preview{display:block;align-self:center;width:auto;min-height:28px;margin:4px auto 0;padding:5px 12px;border:1px solid #8d7852;border-radius:4px;background:#17212c;color:#e8d4a7;font:600 11px var(--ecg-font-body,sans-serif);cursor:pointer;pointer-events:auto}
#academy-map .exam-approve-preview:not(:disabled):is(:hover,:focus-visible){border-color:#f1d48b;background:#29303a;outline:2px solid #f1d48b;outline-offset:2px}
#academy-map .exam-approve-preview:disabled{opacity:.5;cursor:not-allowed}


/* Assessment entry has its own actions; lesson controls remain hidden. */
#academy-map .exam-entry-actions{display:flex;flex-direction:column;gap:8px;flex-shrink:0;margin-top:auto;padding-top:14px;border-top:1px solid #8297b333}
#academy-map .exam-entry-actions .exam-open-button{box-sizing:border-box;white-space:normal}
@media(min-width:900px){
 html body.desktop-route-active #academy-map .desktop-inline-lesson .exam-entry-actions{position:static;inset:auto;width:100%;min-width:0;margin-top:auto;padding-top:14px}
 html body.desktop-route-active #academy-map .desktop-inline-lesson .exam-entry-actions .exam-open-button{width:100%;min-height:44px;padding:10px 12px;border-radius:9px;font-size:12px;letter-spacing:.04em}
}
