/* The shield conceals questions without changing the server-owned turn clock. */
.duel-lock-notice{margin:16px 0 0;max-width:590px;padding:14px 16px;border:1px solid rgba(167,139,250,.35);border-radius:12px;background:rgba(167,139,250,.07);color:#c9c1dc;font-size:15px;line-height:1.5;text-align:left}
.duel-lock-notice[hidden],.duel-lock-bar[hidden],.duel-lock-shield[hidden],.duel-lock-shield [hidden]{display:none!important}
.duel-lock-bar{position:fixed;inset:0 0 auto;z-index:80;display:flex;gap:16px;align-items:center;justify-content:space-between;padding:12px max(16px,calc((100vw - 728px)/2));background:#15132a;border-bottom:1px solid rgba(167,139,250,.4);box-shadow:0 6px 24px rgba(0,0,0,.3)}
.duel-lock-status{font-family:'JetBrains Mono',monospace;font-size:12px;color:#d5c9f6;line-height:1.5}
.duel-lock-status-wrap{min-width:0}
.duel-lock-penalties{margin-top:5px;font-family:'JetBrains Mono',monospace;font-size:11px;line-height:1.55;color:#facc15;overflow-wrap:anywhere}
.duel-lock-panel .duel-lock-penalties{font-family:'JetBrains Mono',monospace;font-size:13px;line-height:1.6;color:#facc15;padding:12px 14px;border:1px solid rgba(250,204,21,.25);border-radius:10px;background:rgba(250,204,21,.05)}
.duel-lock-penalties[hidden]{display:none!important}
.duel-lock-bar .btn{flex:none;min-height:42px;white-space:nowrap}
body.duel-lock-active .container{padding-top:calc(24px + var(--duel-lock-bar-height,74px))}
body.duel-lock-active .back-link{opacity:.45;cursor:not-allowed}
.duel-lock-shield{position:fixed;inset:0;z-index:90;display:flex;align-items:center;justify-content:center;overflow:auto;padding:24px;background:#0e1122}
.duel-lock-panel{width:100%;max-width:560px;padding:28px;border-radius:20px;border:1px solid rgba(167,139,250,.45);background:linear-gradient(145deg,#201c39,#171b32);box-shadow:0 20px 70px rgba(0,0,0,.35)}
.duel-lock-panel h2{font-size:30px;margin:0 0 14px;color:#ede8ff}
.duel-lock-panel p{font-size:18px;line-height:1.55;color:#c9c1dc;margin:0 0 18px}
.duel-lock-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.duel-lock-actions .btn{min-height:48px;flex:1}
.duel-lock-error,.duel-lock-panel .duel-lock-error{color:#fecaca;font-size:15px;line-height:1.5;margin:12px 0 0}
body.duel-lock-shielded .container,body.duel-lock-shielded #swissStudent{visibility:hidden}
.duel-lock-teacher{margin-top:10px;padding-top:8px;border-top:1px solid rgba(167,139,250,.15);color:#bcb2d0;font-family:'JetBrains Mono',monospace;font-size:11px;line-height:1.7;overflow-wrap:anywhere}
.duel-lock-teacher strong{color:#d1c1f1}
.duel-lock-bar button:focus-visible,.duel-lock-panel button:focus-visible{outline:3px solid #facc15;outline-offset:4px}
@media(max-width:520px){.duel-lock-bar{gap:10px;padding:10px 12px}.duel-lock-status{font-size:11px}.duel-lock-shield{padding:16px}.duel-lock-panel{padding:22px}.duel-lock-panel h2{font-size:26px}.duel-lock-panel p{font-size:17px}.duel-lock-actions{flex-direction:column}.duel-lock-actions .btn{width:100%}}
