/* Student shell — compatibility layer so shared pages (quiz, checkout,
   coaching, account, notifications, messages, search) built on the ext
   component set render cleanly inside the student skin. Same tokens. */
.content{width:100%;padding:0}
.content.narrow{max-width:760px;margin:0 auto}
.back-link{display:inline-flex;align-items:center;gap:7px;font-size:13.5px;color:var(--text-3);text-decoration:none;margin-bottom:14px}
.back-link:hover{color:var(--text)}
.side-card,.widget{background:var(--card);border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--shadow);padding:18px;margin-bottom:16px}
.mini-note{font-size:12px;color:var(--text-3)}
.mt0{margin-top:0}
.flex{display:flex;gap:10px;align-items:center}
.flex .sp{flex:1}
.sp{flex:1}
.mono{font-family:'JetBrains Mono',monospace}
.pill-em{background:var(--em-soft);color:var(--em)}
.pill-red{background:color-mix(in srgb,var(--red) 14%,transparent);color:var(--red)}
.lvlbadge{display:inline-block;font-family:'JetBrains Mono';font-size:9.5px;letter-spacing:.04em;color:var(--em);background:var(--em-soft);border-radius:6px;padding:2px 7px;vertical-align:2px}
.crumbless{display:none}
.kbd,kbd{display:none}
.video-native{width:100%;border-radius:var(--r);background:#000;max-height:520px}
.embed-frame{position:relative;padding-top:56.25%;border-radius:var(--r);overflow:hidden;background:#000}
.embed-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.stu-note{background:var(--card);border:1px dashed var(--border-2);border-radius:var(--r);padding:14px 16px;font-size:13.5px;color:var(--text-2);margin:14px 0}
.gate{display:flex;gap:12px;align-items:center;background:var(--em-soft);border:1px solid var(--em);border-radius:var(--r);padding:14px 16px;margin:16px 0}
.gate .sp{flex:1}
@media(max-width:900px){.grid-2{grid-template-columns:1fr}}
