/* ============================================================
   LevelUp · estilos de proyecto (layouts y piezas propias).
   Solo usa variables de tokens.css — sin hex sueltos.
   ============================================================ */
.container{max-width:var(--dsmk-container);margin:0 auto;padding:0 var(--dsmk-container-pad)}
.page{padding-top:36px;padding-bottom:24px}
@media(max-width:600px){:root{--dsmk-container-pad:16px}}
.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:26px}
.page-head h1{font-size:clamp(1.5rem,3vw,2rem);font-weight:700}
.page-head .sub{color:var(--dsmk-ink-500);margin-top:6px;font-size:0.875rem}
.eyebrow{font-family:var(--dsmk-font-mono);font-size:0.6875rem;letter-spacing:.18em;text-transform:uppercase;color:var(--dsmk-brand-500);font-weight:600;margin-bottom:10px;display:block}
.muted{color:var(--dsmk-ink-500)}
.small{font-size:0.8125rem}
.mono{font-family:var(--dsmk-font-mono)}
.stack>*+*{margin-top:16px}
.stack-sm>*+*{margin-top:8px}
.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.spacer{flex:1}
.mt-1{margin-top:4px}.mt-2{margin-top:8px}.mb-0{margin-bottom:0}.mb-2{margin-bottom:8px}.mt-4{margin-top:16px}.mt-6{margin-top:24px}.mt-8{margin-top:32px}.mb-4{margin-bottom:16px}
.section-title{font-size:var(--dsmk-fs-lg);font-weight:700;margin:32px 0 14px;display:flex;align-items:center;gap:10px}
.section-title .material-symbols-rounded{color:var(--dsmk-brand-500)}
.hr-soft{height:1px;border:0;background:linear-gradient(90deg,transparent,var(--dsmk-ink-200),transparent);margin:28px 0}
.inline-form{display:inline}

/* ── Aurora (patrón hero de mkmedico-v2) ── */
.aurora{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.aurora i{position:absolute;border-radius:50%;filter:blur(70px);opacity:var(--lu-aurora-op);animation:drift 22s var(--dsmk-ease) infinite alternate}
.aurora i:nth-child(1){width:46vw;height:46vw;left:-10vw;top:-14vw;background:radial-gradient(circle,rgba(227,12,201,.55),transparent 65%)}
.aurora i:nth-child(2){width:38vw;height:38vw;right:-8vw;top:6vw;background:radial-gradient(circle,rgba(134,56,235,.5),transparent 65%);animation-delay:-7s}
.aurora i:nth-child(3){width:30vw;height:30vw;left:30vw;bottom:-14vw;background:radial-gradient(circle,rgba(90,31,181,.6),transparent 65%);animation-delay:-14s}
.aurora::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent,var(--dsmk-bg) 96%)}
@keyframes drift{from{transform:translate3d(0,0,0) scale(1)}to{transform:translate3d(4vw,3vw,0) scale(1.12)}}

/* ── Público ── */
.pub-nav{position:absolute;top:0;left:0;right:0;z-index:5}
.pub-nav .container{display:flex;align-items:center;justify-content:space-between;height:72px}
.hero{position:relative;min-height:88vh;display:flex;align-items:center;padding:120px 0 80px;overflow:hidden}
.hero .container{position:relative;z-index:2;width:100%}
.hero h1{font-size:clamp(2.375rem,6vw,4.75rem);font-weight:700;line-height:1.04;letter-spacing:-.022em;max-width:15ch}
.hero h1 .grad{background:var(--dsmk-brand-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero .lead{font-size:clamp(1rem,2vw,1.25rem);color:var(--dsmk-ink-600);max-width:52ch;margin:22px 0 34px;line-height:1.55}
.hero-meta{display:flex;gap:28px;flex-wrap:wrap;margin-top:42px}
.hero-meta div{display:flex;flex-direction:column;gap:4px}
.hero-meta small{font-family:var(--dsmk-font-mono);font-size:0.6562rem;letter-spacing:.14em;text-transform:uppercase;color:var(--dsmk-ink-500)}
.hero-meta b{font-size:1.0625rem;color:var(--dsmk-ink-900);font-weight:600}
.sec{padding:96px 0;position:relative}
.sec h2{font-size:clamp(1.75rem,4vw,2.875rem);font-weight:700;letter-spacing:-.018em;max-width:20ch}
.sec .lead{color:var(--dsmk-ink-600);font-size:1.0625rem;max-width:56ch;margin-top:14px}
.sec--tint{background:linear-gradient(180deg,var(--dsmk-bg) 0%,var(--dsmk-bg-2) 18%,var(--dsmk-bg-2) 82%,var(--dsmk-bg) 100%)}
.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:44px;counter-reset:paso}
.step{padding:22px 18px;border-radius:var(--dsmk-r-lg);background:linear-gradient(180deg,var(--dsmk-ink-50),transparent);position:relative}
.step::before{counter-increment:paso;content:"0" counter(paso);font-family:var(--dsmk-font-mono);font-size:0.6875rem;letter-spacing:.14em;color:var(--dsmk-brand-500);display:block;margin-bottom:14px}
.step .material-symbols-rounded{font-size:1.75rem;color:var(--dsmk-ink-900);margin-bottom:12px}
.step h3{font-size:0.9375rem;font-weight:700;margin-bottom:6px}
.step p{font-size:0.8438rem;color:var(--dsmk-ink-500);line-height:1.55}
@media(max-width:980px){.steps{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.steps{grid-template-columns:1fr}}
.cta-band{border-radius:var(--dsmk-r-xl);padding:56px 44px;background:radial-gradient(120% 140% at 0% 0%,rgba(227,12,201,.22),transparent 55%),var(--dsmk-surface);display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
.cta-band h2{font-size:clamp(1.5rem,3vw,2.125rem)}
.legal{max-width:760px}
.legal h2{font-size:1.25rem;margin:30px 0 10px}
.legal p,.legal li{color:var(--dsmk-ink-700);line-height:1.7;margin-bottom:10px}
.form-card{max-width:560px}

/* ── App alumno ── */
.app-hero{position:relative;padding:44px 0 8px;overflow:hidden}
.app-hero h1{font-size:clamp(1.625rem,3.4vw,2.5rem);font-weight:700;letter-spacing:-.025em}
.status-pill{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:var(--dsmk-r-pill);background:var(--dsmk-ink-50);font-size:0.7812rem;color:var(--dsmk-ink-700)}
.status-pill .dot{width:8px;height:8px;border-radius:50%;background:var(--dsmk-success-500);box-shadow:0 0 0 4px var(--dsmk-success-50)}
.weeks{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
@media(max-width:980px){.weeks{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.weeks{grid-template-columns:1fr}}
.week{display:flex;flex-direction:column;gap:12px;min-height:200px;padding:22px;border-radius:var(--dsmk-r-lg);background:var(--dsmk-surface);border:1px solid var(--dsmk-ink-100);color:var(--dsmk-ink-800);transition:all var(--dsmk-t-base)}
a.week:hover{border-color:var(--dsmk-brand-100);transform:translateY(-2px);box-shadow:var(--dsmk-sh-md);color:var(--dsmk-ink-800)}
.week .n{font-family:var(--dsmk-font-mono);font-size:0.6875rem;letter-spacing:.14em;text-transform:uppercase;color:var(--dsmk-ink-500)}
.week h3{font-size:1rem;font-weight:700;line-height:1.35}
.week .foot{margin-top:auto;display:flex;align-items:center;gap:8px;font-size:0.7812rem;color:var(--dsmk-ink-500)}
.week.is-locked{background:var(--dsmk-ink-50);opacity:.75}
.week.is-locked .material-symbols-rounded.lock{font-size:1.625rem;color:var(--dsmk-ink-400)}
.week.is-done{border-color:rgba(34,197,94,.28)}
.week.is-done .check{color:var(--dsmk-success-600)}
.progress{height:6px;border-radius:var(--dsmk-r-pill);background:var(--dsmk-ink-100);overflow:hidden}
.progress>span{display:block;height:100%;background:var(--dsmk-brand-grad);border-radius:inherit;transition:width .4s var(--dsmk-ease)}
.progress--success>span{background:var(--dsmk-success-500)}
.checklist{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px;font-size:0.8438rem}
.checklist li{display:flex;align-items:center;gap:8px;color:var(--dsmk-ink-600)}
.checklist li.ok{color:var(--dsmk-ink-900)}
.checklist li.ok .material-symbols-rounded{color:var(--dsmk-success-600)}
.big-action{display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px;padding:42px 24px}
.big-action .material-symbols-rounded.xl{font-size:3.5rem;color:var(--dsmk-brand-500)}
.btn-presente{padding:22px 44px;font-size:1.125rem;border-radius:var(--dsmk-r-pill)}

/* ── Video ── */
.lesson-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:22px;align-items:start}
@media(max-width:980px){.lesson-grid{grid-template-columns:1fr}}
.player{position:relative;aspect-ratio:16/9;border-radius:var(--dsmk-r-lg);overflow:hidden;background:#000;box-shadow:var(--dsmk-sh-lg)}
.player iframe,.player #ytPlayer{position:absolute;inset:0;width:100%;height:100%;border:0}
/* El tema oscuro declara color-scheme:dark y el reproductor de Bunny es "normal": si no coinciden, el navegador pinta de blanco el fondo del iframe
   (se veía como un borde blanco alrededor del video). Igualarlo deja el fondo transparente y se ve el negro de .player. */
.player iframe{color-scheme:normal;background:transparent}
.sim-player{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;background:radial-gradient(100% 100% at 30% 20%,rgba(134,56,235,.35),transparent 60%),#05090f}
.sim-player .sim-center{position:absolute;inset:0;display:grid;place-items:center;cursor:pointer}
.sim-player .sim-center .material-symbols-rounded{font-size:5.25rem;color:#fff;opacity:.9}
.sim-player .sim-tag{position:absolute;top:14px;left:14px;font-family:var(--dsmk-font-mono);font-size:0.6562rem;letter-spacing:.12em;text-transform:uppercase;color:var(--dsmk-amber-600);background:var(--dsmk-amber-50);padding:4px 8px;border-radius:6px}
.sim-bar{position:relative;z-index:2;display:flex;align-items:center;gap:12px;padding:12px 16px;background:linear-gradient(180deg,transparent,rgba(0,0,0,.65))}
.sim-bar button{background:none;border:0;color:#fff;cursor:pointer;display:grid;place-items:center}
.sim-track{flex:1;height:6px;border-radius:999px;background:rgba(255,255,255,.18);position:relative;cursor:pointer}
.sim-track .seen{position:absolute;inset:0 auto 0 0;background:rgba(255,255,255,.28);border-radius:inherit}
.sim-track .cur{position:absolute;inset:0 auto 0 0;background:var(--dsmk-brand-500);border-radius:inherit}
.sim-time{font-family:var(--dsmk-font-mono);font-size:0.75rem;color:#fff;min-width:96px;text-align:right}
.sim-speed{font-family:var(--dsmk-font-mono);font-size:0.6875rem;color:#fff;border:1px solid rgba(255,255,255,.3)!important;border-radius:6px;padding:3px 7px}
.resume{display:flex;align-items:center;gap:10px;font-size:0.8125rem;color:var(--dsmk-ink-600)}
.sim-player.shake .sim-track{animation:shake .3s}
@keyframes shake{25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}

/* ── Utilidades (evitan estilos en línea) ── */
.hero--compact{min-height:auto;padding-bottom:40px}
.hero--err{min-height:70vh}
.h-lg{font-size:clamp(2rem,4.4vw,3.375rem)!important}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.maxw-520{max-width:520px}
.maxw-640{max-width:640px}
.z2{position:relative;z-index:2}
.fs-20{font-size:1.25rem}
.nav-btn{background:none;border:0;cursor:pointer;font:inherit;width:100%;text-align:left}

/* ── Examen ── */
.exam-top{position:sticky;top:64px;z-index:20;background:var(--lu-glass-strong);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);padding:12px 0;margin-bottom:22px}
.exam-top .container{display:flex;align-items:center;gap:16px}
.timer{display:inline-flex;align-items:center;gap:8px;font-family:var(--dsmk-font-mono);font-size:1.25rem;font-weight:600;color:var(--dsmk-ink-900);padding:8px 16px;border-radius:var(--dsmk-r-pill);background:var(--dsmk-ink-50)}
.timer.is-low{color:var(--dsmk-error-600);background:var(--dsmk-error-50)}
.exam-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:22px;align-items:start}
@media(max-width:980px){.exam-grid{grid-template-columns:1fr}}
.q-enunciado{font-size:clamp(1rem,1.1vw,1.0625rem);font-weight:500;color:var(--dsmk-ink-900);line-height:1.65;margin:14px 0 20px;white-space:pre-line;max-width:72ch}
.q-head{display:flex;align-items:center;flex-wrap:wrap;gap:12px}
.q-num{display:flex;align-items:center;gap:10px}
.q-num__n{display:grid;place-items:center;min-width:44px;height:44px;padding:0 8px;border-radius:12px;background:var(--dsmk-brand-600);color:#fff;font-family:var(--dsmk-font-mono);font-size:1.25rem;font-weight:700}
.q-num__t{font-size:0.8125rem;font-weight:600;line-height:1.25;color:var(--dsmk-ink-900)}
.q-num__t .muted{font-weight:400}
.q-instr{display:flex;align-items:center;gap:12px;margin:0 0 14px;padding:10px 14px;border-radius:var(--dsmk-r-md);background:var(--dsmk-ink-50);border:1px solid var(--dsmk-ink-100);color:var(--dsmk-ink-800);font-size:0.875rem}
.q-instr>.material-symbols-rounded{font-size:1.375rem;color:var(--dsmk-ink-500)}
.q-instr>div{display:flex;flex-direction:column;gap:2px;flex:1}
.q-instr--multi{background:var(--dsmk-amber-50);border-color:rgba(245,158,11,.45);color:var(--dsmk-ink-900)}
.q-instr--multi>.material-symbols-rounded{color:var(--dsmk-amber-600)}
.q-instr__cont{flex:none;padding:4px 10px;border-radius:var(--dsmk-r-pill);background:var(--dsmk-surface);border:1px solid rgba(245,158,11,.45);font-weight:700;font-size:0.875rem}
.q-instr__cont.is-ok{background:var(--dsmk-success-50);border-color:rgba(34,197,94,.45);color:var(--dsmk-success-600)}
.flag{width:18px;height:12px;border-radius:2px;box-shadow:0 0 0 1px rgba(26,16,48,.12);flex:none}
.lang-switch{display:inline-flex;padding:3px;border-radius:var(--dsmk-r-pill);background:var(--dsmk-ink-50);border:1px solid var(--dsmk-ink-100)}
.lang-switch button{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;font:inherit;font-size:0.75rem;font-weight:600;color:var(--dsmk-ink-500);padding:5px 12px;border-radius:var(--dsmk-r-pill);cursor:pointer}
.lang-switch button[aria-pressed="true"]{background:var(--dsmk-surface);color:var(--dsmk-ink-900);box-shadow:0 1px 2px rgba(26,16,48,.12)}
.q-card:not([data-idioma="en"]) [data-lang="en"],.q-card[data-idioma="en"] [data-lang="es"]{display:none}
.opt input[disabled]+.letra{opacity:.45}
.opts{display:flex;flex-direction:column;gap:8px}
.opt{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;font-size:0.9375rem;line-height:1.5;border-radius:var(--dsmk-r-md);background:var(--dsmk-ink-50);border:1px solid var(--dsmk-ink-100);cursor:pointer;transition:all var(--dsmk-t-fast);color:var(--dsmk-ink-800)}
.opt:hover{border-color:var(--dsmk-ink-300)}
.opt input{position:absolute;opacity:0;pointer-events:none}
.opt .letra{flex:none;width:26px;height:26px;margin-top:-1px;border-radius:50%;display:grid;place-items:center;font-family:var(--dsmk-font-mono);font-size:0.75rem;font-weight:700;background:var(--dsmk-ink-100);color:var(--dsmk-ink-700)}
.opt:has(input:checked){border-color:var(--dsmk-brand-500);background:var(--dsmk-brand-50);color:var(--dsmk-ink-900)}
.opt:has(input:checked) .letra{background:var(--dsmk-brand-600);color:#fff}
.opt--multi .letra{border-radius:6px}
.opt:has(input:disabled){opacity:.55;cursor:not-allowed}
.opt:has(input:focus-visible){box-shadow:var(--dsmk-sh-focus)}
.q-nav{display:flex;justify-content:space-between;gap:12px;margin-top:26px}
.save-state{font-size:0.7812rem;color:var(--dsmk-ink-500);display:flex;align-items:center;gap:6px}
.q-map{display:grid;grid-template-columns:repeat(8,1fr);gap:6px}
.q-map a{aspect-ratio:1;display:grid;place-items:center;border-radius:8px;font-family:var(--dsmk-font-mono);font-size:0.7188rem;background:var(--dsmk-ink-50);color:var(--dsmk-ink-500)}
.q-map a.ok{background:var(--dsmk-brand-50);color:var(--dsmk-brand-700)}
.q-map a.cur{outline:2px solid var(--dsmk-brand-500);color:var(--dsmk-ink-900)}
.q-map--wide{grid-template-columns:repeat(auto-fill,minmax(34px,1fr))}
.q-map--wide a:hover{background:var(--dsmk-brand-50);color:var(--dsmk-brand-700)}
.exam-preview{scroll-margin-top:24px}
.exam-preview .opt{cursor:default}
.exam-preview .opt.is-correcta{border-color:rgba(34,197,94,.45);background:var(--dsmk-success-50);color:var(--dsmk-ink-900)}
.exam-preview .opt.is-correcta .letra{background:var(--dsmk-success-500);color:#04140a}
.exam-preview .opt.is-correcta .material-symbols-rounded{color:var(--dsmk-success-600)}
.contenido-grid{align-items:start}
.pdf-viewer{width:100%;height:78vh;min-height:520px;border:0;border-radius:var(--dsmk-r-md);background:var(--dsmk-surface-2)}
.score{font-size:clamp(3rem,8vw,5.25rem);font-weight:700;letter-spacing:-.04em;line-height:1;background:var(--dsmk-brand-grad);-webkit-background-clip:text;background-clip:text;color:transparent}

/* ── Admin shell ── */
.admin-shell{display:grid;grid-template-columns:var(--dsmk-sidebar-w) minmax(0,1fr);min-height:100vh}
.admin-shell .dsmk-sidebar{position:sticky;top:0;height:100vh}
.admin-main{padding:30px 34px 10px;min-width:0;width:100%;max-width:calc(var(--dsmk-content-max) + 68px);justify-self:center}
.admin-main .dsmk-footer{padding-left:0;padding-right:0}
.admin-burger{display:none}
@media(max-width:900px){.admin-shell{grid-template-columns:1fr}.admin-shell .dsmk-sidebar{position:fixed;inset:0 auto 0 0;z-index:60;transform:translateX(-100%);transition:transform .25s var(--dsmk-ease)}.admin-shell.nav-open .dsmk-sidebar{transform:none;box-shadow:var(--dsmk-sh-lg)}.admin-main{padding:18px}.admin-burger{display:inline-flex}}
.tabs{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:22px;padding:4px;border-radius:var(--dsmk-r-pill);background:var(--dsmk-ink-50);width:max-content;max-width:100%}
.tabs a{padding:8px 16px;border-radius:var(--dsmk-r-pill);font-size:0.8125rem;font-weight:600;color:var(--dsmk-ink-600)}
.tabs a:hover{color:var(--dsmk-ink-900)}
.tabs a.is-active{background:var(--dsmk-surface-2);color:var(--dsmk-ink-900);box-shadow:var(--dsmk-sh-sm)}
.kpi{padding:20px 22px;border-radius:var(--dsmk-r-lg);background:var(--dsmk-surface);border:1px solid var(--dsmk-ink-100)}
.kpi small{display:block;font-family:var(--dsmk-font-mono);font-size:0.6562rem;letter-spacing:.12em;text-transform:uppercase;color:var(--dsmk-ink-500);margin-bottom:10px}
.kpi b{font-size:2rem;font-weight:700;color:var(--dsmk-ink-900);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.kpi .d{font-size:0.7812rem;color:var(--dsmk-ink-500);margin-top:4px}
.kpi-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.kpi-list li{display:flex;flex-direction:column;gap:2px}
.kpi-list .when{font-size:1.25rem;font-weight:700;color:var(--dsmk-ink-900);letter-spacing:-.01em;font-variant-numeric:tabular-nums}
.kpi-list .what{font-size:0.8125rem;color:var(--dsmk-ink-500)}
.kpi-list .is-past{opacity:.55}
.kpi-list .is-past .when{text-decoration:line-through}
.bars{display:flex;flex-direction:column;gap:9px}
.bar{display:grid;grid-template-columns:minmax(120px,210px) 1fr 170px;gap:12px;align-items:center;font-size:0.8125rem}
.bar .lbl{color:var(--dsmk-ink-700);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bar .trk{height:22px;border-radius:6px;background:var(--dsmk-ink-50);overflow:hidden}
.bar .trk span{display:block;height:100%;background:var(--dsmk-brand-grad);border-radius:6px;min-width:2px}
.bar .val{font-family:var(--dsmk-font-mono);font-size:0.75rem;text-align:right;color:var(--dsmk-ink-800)}
@media(max-width:640px){.bar{grid-template-columns:1fr 70px}.bar .trk{grid-column:1/-1;order:3}}
.chart-box{position:relative;height:240px}
.timeline{list-style:none;margin:0;padding:0;position:relative}
.timeline::before{content:"";position:absolute;left:17px;top:8px;bottom:8px;width:1px;background:var(--dsmk-ink-200)}
.timeline li{position:relative;display:grid;grid-template-columns:36px 1fr;gap:12px;padding:8px 0}
.timeline .ic{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--dsmk-surface-2);color:var(--dsmk-brand-500);position:relative}
.timeline .ic .material-symbols-rounded{font-size:1.125rem}
.timeline b{color:var(--dsmk-ink-900);font-size:0.875rem}
.timeline .t{font-family:var(--dsmk-font-mono);font-size:0.7188rem;color:var(--dsmk-ink-500)}
.timeline .d{font-size:0.8125rem;color:var(--dsmk-ink-600)}
.ver-como{position:sticky;top:0;z-index:70;background:var(--dsmk-amber-500);color:#1a1200;font-size:0.8125rem;font-weight:600}
.ver-como .container{display:flex;align-items:center;gap:12px;height:40px}
.vista-select{background:rgba(0,0,0,.14);color:#1a1200;border:0;border-radius:999px;padding:4px 10px;font:inherit;font-weight:700;cursor:pointer;max-width:260px}
.ver-como-btn{background:rgba(0,0,0,.18);color:#1a1200;border-radius:999px;padding:5px 12px;font-weight:700}
.ver-como-btn:hover{color:#000;background:rgba(0,0,0,.28)}
@media(max-width:760px){.ver-como .container{height:auto;padding-top:8px;padding-bottom:8px;flex-wrap:wrap}}
.ver-como button{background:rgba(0,0,0,.18);color:#1a1200;border:0;border-radius:999px;padding:5px 12px;font-weight:700;cursor:pointer}
.err-list{margin:0;padding-left:18px;font-size:0.8125rem;color:var(--dsmk-error-600)}
.preview-q{padding:16px 0;border-bottom:1px solid var(--dsmk-ink-100)}
.preview-q:last-child{border-bottom:0}
.preview-q ol{margin:8px 0 0;padding-left:22px;color:var(--dsmk-ink-600);font-size:0.8438rem}
.preview-q li.correcta{color:var(--dsmk-success-600);font-weight:600}
details.dsmk-card>summary{cursor:pointer;font-weight:600;color:var(--dsmk-ink-900);list-style:none;display:flex;align-items:center;gap:8px}
details.dsmk-card>summary::-webkit-details-marker{display:none}
details.dsmk-card[open]>summary{margin-bottom:16px}

/* Selector de tema (claro/oscuro) */
.theme-toggle .ico-dark{display:none}
[data-theme="levelup"] .theme-toggle .ico-dark{display:inline-block}
[data-theme="levelup"] .theme-toggle .ico-light{display:none}
.asis{padding:6px 22px}
.asis-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--dsmk-ink-100)}
.asis-row:last-child{border-bottom:0}
.asis-row b{color:var(--dsmk-ink-900)}
@media(max-width:600px){.asis-row{flex-direction:column;align-items:flex-start}}

/* ─── Paso a paso del proceso (inicio y «Tipo de capacitación») ─── */
.proceso{margin:8px 0 28px}
.proceso .steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;counter-reset:paso}
.proceso .step{position:relative;display:flex;flex-direction:column;gap:12px;padding:18px 16px 16px;border-radius:var(--dsmk-r-lg);background:var(--dsmk-surface);border:1px solid var(--dsmk-ink-100)}
.proceso .step::after{content:"";position:absolute;top:34px;left:calc(100% - 4px);width:22px;height:2px;background:var(--dsmk-ink-200);z-index:1}
.proceso .step:last-child::after{display:none}
.proceso .step-ico{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--dsmk-ink-100);color:var(--dsmk-ink-500)}
.proceso .step-ico .material-symbols-rounded{font-size:1.4rem}
.proceso .step-n{display:block;font-family:var(--dsmk-font-mono);font-size:0.6562rem;letter-spacing:.12em;text-transform:uppercase;color:var(--dsmk-ink-500);margin-bottom:4px}
.proceso .step h3{font-size:1rem;margin:0 0 6px;color:var(--dsmk-ink-900)}
.proceso .step p{font-size:0.8125rem;line-height:1.5;color:var(--dsmk-ink-600);margin:0 0 10px}
.proceso .step-date{display:flex;align-items:center;gap:6px;font-size:0.75rem;font-weight:600;color:var(--dsmk-ink-700)}
.proceso .step-date .material-symbols-rounded{font-size:1rem}
.proceso .step-state{display:inline-block;margin-top:10px;font-size:0.6875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--dsmk-ink-500)}
.proceso .step.is-hecho .step-ico{background:#16a34a;color:#fff}
.proceso .step.is-hecho .step-state{color:#15803d}
.proceso .step.is-hecho::after{background:#16a34a}
.proceso .step.is-actual{border-color:var(--dsmk-brand-600);box-shadow:0 0 0 3px rgba(134,56,235,.18)}
.proceso .step.is-actual .step-ico{background:var(--dsmk-brand-600);color:#fff}
.proceso .step.is-actual .step-state{color:var(--dsmk-brand-600)}
.proceso .step.is-revision .step-ico{background:#f59e0b;color:#fff}
.proceso .step.is-revision .step-state{color:#b45309}
.proceso .step.is-perdido .step-ico{background:#dc2626;color:#fff}
.proceso .step.is-perdido .step-state{color:#b91c1c}
.proceso .step.is-pendiente,.step.is-bloqueado{opacity:.78}
@media(max-width:1100px){.proceso .steps{grid-template-columns:repeat(2,minmax(0,1fr))}.proceso .step::after{display:none}}
@media(max-width:600px){.proceso .steps{grid-template-columns:1fr}}

/* ─── «Tipo de capacitación» ─── */
.prog-bloque{margin-bottom:16px}
.prog-bloque p{line-height:1.65;color:var(--dsmk-ink-700)}
.prog-titulo{display:flex;align-items:center;gap:10px;font-size:1.125rem;margin:0 0 14px;color:var(--dsmk-ink-900)}
.prog-lista{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.prog-lista li{display:flex;gap:10px;align-items:flex-start;line-height:1.5;color:var(--dsmk-ink-700)}
.prog-lista .material-symbols-rounded{color:var(--dsmk-brand-600);font-size:1.25rem;margin-top:1px}
.prog-temario{margin:0;padding-left:22px;display:grid;gap:8px;line-height:1.5;color:var(--dsmk-ink-700)}
.prog-dato{font-size:1rem;color:var(--dsmk-ink-800)}
.prog-grid{align-items:start;margin-bottom:16px}
.prog-grid .prog-bloque{margin-bottom:0}
/* El paso a paso del alumno no hereda la numeración ni el ícono grande de «Cómo funciona» de la portada */
.proceso .step::before{content:none}
.proceso .step .material-symbols-rounded{margin-bottom:0}

/* ─── Portada: convocatorias en tarjetas ─── */
.conv-sec{padding:56px 0 24px}
.conv-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:22px;margin-top:28px}
.conv-card{position:relative;display:flex;flex-direction:column;border-radius:var(--dsmk-r-xl,20px);background:var(--dsmk-surface);border:1px solid var(--dsmk-ink-100);overflow:hidden;
  box-shadow:0 1px 2px rgba(26,16,48,.04),0 8px 28px rgba(26,16,48,.07);transition:transform .25s var(--dsmk-ease,ease),box-shadow .25s var(--dsmk-ease,ease)}
.conv-card:hover{transform:translateY(-4px);box-shadow:0 2px 4px rgba(26,16,48,.06),0 18px 44px rgba(134,56,235,.22)}
.conv-top{position:relative;padding:22px 22px 18px;color:#fff;background:var(--dsmk-brand-grad,linear-gradient(90deg,#e30cc9 0%,#8638eb 50%,#2aeac3 100%));overflow:hidden}
.conv-top::after{content:"";position:absolute;right:-38px;top:-38px;width:140px;height:140px;border-radius:50%;background:rgba(255,255,255,.14)}
.conv-top .eyebrow{color:rgba(255,255,255,.85);margin:0 0 8px;position:relative;z-index:1}
.conv-top h3{position:relative;z-index:1;font-size:1.3rem;line-height:1.25;margin:0;color:#fff}
.conv-top .conv-sub{position:relative;z-index:1;margin:6px 0 0;font-size:0.875rem;opacity:.92}
.conv-pill{position:absolute;z-index:2;top:16px;right:16px;display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:999px;font-size:0.6875rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;background:#fff;color:#1a1030}
.conv-pill .dot{width:8px;height:8px;border-radius:50%;background:#94a3b8}
.conv-pill.is-abierta .dot{background:#16a34a;box-shadow:0 0 0 4px rgba(22,163,74,.25)}
.conv-pill.is-pronto .dot{background:#f59e0b}
.conv-body{display:flex;flex-direction:column;gap:16px;padding:20px 22px 22px;flex:1}
.conv-desc{margin:0;font-size:0.875rem;line-height:1.55;color:var(--dsmk-ink-600)}
.conv-facts{list-style:none;margin:0;padding:0;display:grid;gap:11px}
.conv-facts li{display:flex;align-items:flex-start;gap:12px}
.conv-facts .material-symbols-rounded{flex:none;display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--dsmk-brand-50,#f1ecfd);color:var(--dsmk-brand-600,#8638eb);font-size:1.15rem}
.conv-facts small{display:block;font-size:0.6875rem;letter-spacing:.08em;text-transform:uppercase;color:var(--dsmk-ink-500)}
.conv-facts b{display:block;font-size:0.9375rem;color:var(--dsmk-ink-900);font-variant-numeric:tabular-nums}
.conv-cta{margin-top:auto;display:grid;gap:8px}
.conv-cta .dsmk-btn{justify-content:center}
.conv-deadline{text-align:center;font-size:0.75rem;color:var(--dsmk-ink-500)}
.conv-empty{margin-top:28px}

/* ═══════════ Landing (portada pública) ═══════════ */
.lp-hero{position:relative;isolation:isolate;color:#fff;overflow:hidden;background:#1a1030 url('../img/login-bg.jpg') center/cover no-repeat}
.lp-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(100deg,rgba(16,8,38,.94) 0%,rgba(42,10,94,.86) 46%,rgba(134,56,235,.50) 100%)}
.lp-hero .container{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:48px;align-items:center;padding-top:72px;padding-bottom:88px}
.lp-hero .eyebrow{color:#d7bfff}
.lp-hero h1{font-size:clamp(2.4rem,5.4vw,4.1rem);line-height:1.04;letter-spacing:-.03em;margin:14px 0 18px;color:#fff}
.lp-hero h1 .grad{background:linear-gradient(100deg,#ff8af0,#e30cc9 55%,#2aeac3);-webkit-background-clip:text;background-clip:text;color:transparent}
.lp-hero .lead{color:rgba(255,255,255,.86);max-width:560px;font-size:1.125rem;line-height:1.6}
.lp-actions{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0 30px}
.lp-hero .dsmk-btn--ghost{color:#fff;border-color:rgba(255,255,255,.45)}
.lp-hero .dsmk-btn--ghost:hover{background:rgba(255,255,255,.12)}
.lp-trust{display:flex;flex-wrap:wrap;gap:10px 22px;margin:0;padding:0;list-style:none;color:rgba(255,255,255,.9);font-size:0.875rem}
.lp-trust li{display:flex;align-items:center;gap:8px}
.lp-trust .material-symbols-rounded{color:#ff8af0;font-size:1.2rem}
.lp-visual{position:relative;justify-self:center;width:min(100%,300px);padding:18px 0 34px}
.lp-photo{display:block;width:100%;aspect-ratio:3/3.9;object-fit:cover;border-radius:28px;border:6px solid rgba(255,255,255,.92);box-shadow:0 30px 70px rgba(0,0,0,.45)}
.lp-chip{position:absolute;display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:16px;background:#fff;color:#1a1030;box-shadow:0 14px 34px rgba(0,0,0,.28);font-size:0.8125rem;line-height:1.25}
.lp-chip b{display:block;font-size:0.875rem}
.lp-chip small{color:#64748b}
.lp-chip .material-symbols-rounded{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#f1ecfd;color:#5a1fb5;font-size:1.35rem}
.lp-chip--cert{left:-34px;bottom:0}
.lp-chip--sem{right:-26px;top:34px}
.lp-chip--aws{right:-18px;bottom:62px;padding:8px}
.lp-chip--aws img{display:block;width:74px;height:74px;object-fit:contain}


.lp-sec{padding:76px 0}
.lp-sec--tint{background:var(--dsmk-ink-50)}
.lp-head{max-width:680px;margin-bottom:34px}
.lp-head h2{font-size:clamp(1.7rem,3.4vw,2.4rem);letter-spacing:-.02em;margin:10px 0 12px}
.lp-head .lead{color:var(--dsmk-ink-600)}

.lp-dominios{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.lp-dom{position:relative;padding:24px 22px 22px;border-radius:20px;background:var(--dsmk-surface);border:1px solid var(--dsmk-ink-100);overflow:hidden;transition:transform .25s ease,box-shadow .25s ease}
.lp-dom:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(134,56,235,.18)}
.lp-dom::before{content:"";position:absolute;left:0;top:0;height:4px;width:100%;background:var(--dsmk-brand-grad)}
.lp-dom .num{font-family:var(--dsmk-font-mono);font-size:0.6875rem;letter-spacing:.14em;color:var(--dsmk-ink-500)}
.lp-dom .ico{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;margin:14px 0 14px;background:var(--dsmk-brand-grad);color:#fff}
.lp-dom .ico .material-symbols-rounded{font-size:1.6rem}
.lp-dom h3{font-size:1.0625rem;margin:0 0 8px}
.lp-dom p{margin:0;font-size:0.875rem;line-height:1.55;color:var(--dsmk-ink-600)}

.lp-split{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:56px;align-items:center}
.lp-art{position:relative;border-radius:28px;overflow:hidden;background:#d9cfee}
.lp-art img{display:block;width:100%;height:100%;object-fit:cover;filter:hue-rotate(-62deg) saturate(1.15)}
.lp-art::after{content:"";position:absolute;inset:0;background:linear-gradient(160deg,rgba(134,56,235,.18),rgba(26,16,48,.28))}
.lp-incluye{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:6px}
.lp-inc{display:flex;gap:14px;align-items:flex-start;padding:16px;border-radius:16px;background:var(--dsmk-surface);border:1px solid var(--dsmk-ink-100)}
.lp-inc .material-symbols-rounded{flex:none;display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:var(--dsmk-brand-50,#f1ecfd);color:var(--dsmk-brand-600,#8638eb);font-size:1.4rem}
.lp-inc h3{font-size:0.9688rem;margin:0 0 3px}
.lp-inc p{margin:0;font-size:0.8125rem;line-height:1.5;color:var(--dsmk-ink-600)}

.lp-why{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:48px;align-items:center}
.lp-why p{color:var(--dsmk-ink-700);line-height:1.7;font-size:1.0625rem}
.lp-logos{display:flex;flex-wrap:wrap;align-items:center;gap:26px;padding:28px;border-radius:24px;background:#fff;border:1px solid #e2e8f0;justify-content:center}
.lp-logos img{display:block;height:84px;width:auto;object-fit:contain}
.lp-logos img.wide{height:62px}

.lp-faq{max-width:820px;display:grid;gap:12px}
.lp-faq details{border-radius:16px;background:var(--dsmk-surface);border:1px solid var(--dsmk-ink-100);padding:0 20px;transition:box-shadow .2s ease}
.lp-faq details[open]{box-shadow:0 10px 30px rgba(134,56,235,.14);border-color:var(--dsmk-brand-600)}
.lp-faq summary{cursor:pointer;list-style:none;padding:18px 0;font-weight:600;display:flex;justify-content:space-between;align-items:center;gap:16px}
.lp-faq summary::-webkit-details-marker{display:none}
.lp-faq summary::after{content:"+";font-size:1.5rem;line-height:1;color:var(--dsmk-brand-600);transition:transform .2s ease}
.lp-faq details[open] summary::after{transform:rotate(45deg)}
.lp-faq details p{margin:0 0 18px;color:var(--dsmk-ink-600);line-height:1.65}

.lp-final{position:relative;isolation:isolate;overflow:hidden;border-radius:32px;color:#fff;padding:54px 48px;background:linear-gradient(110deg,#1a1030,#2a0a5e 55%,#8638eb)}
.lp-final .container,.lp-final .in{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center}
.lp-final img{position:absolute;right:-30px;top:50%;transform:translateY(-50%);height:140%;opacity:.28;mix-blend-mode:screen;filter:hue-rotate(-62deg);z-index:1;pointer-events:none}
.lp-final h2{font-size:clamp(1.6rem,3vw,2.3rem);letter-spacing:-.02em;margin:8px 0 0;color:#fff}
.lp-final .eyebrow{color:#d7bfff}

@media(max-width:980px){
  .lp-hero .container{grid-template-columns:1fr;padding-top:104px;padding-bottom:64px}
  .lp-visual{width:min(100%,320px);margin-top:12px}
  .lp-chip--cert{left:-10px}.lp-chip--sem{right:-6px}.lp-chip--aws{right:-4px}
  .lp-dominios{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lp-split,.lp-why{grid-template-columns:1fr;gap:32px}
  .lp-art{max-height:320px}
  .lp-final{padding:38px 26px}
  .lp-final .in{grid-template-columns:1fr}
}
@media(max-width:600px){
  .lp-dominios,.lp-incluye{grid-template-columns:1fr}
  .lp-sec{padding:54px 0}
}
/* La barra superior flota sobre el héroe oscuro de la portada: texto claro solo ahí */
.is-publico:has(.lp-hero) .pub-nav .dsmk-topnav-brand,
.is-publico:has(.lp-hero) .pub-nav button,
.is-publico:has(.lp-hero) .pub-nav .dsmk-btn--ghost,
.is-publico:has(.lp-hero) .pub-nav .dsmk-btn--secondary{color:#fff}
.is-publico:has(.lp-hero) .pub-nav .dsmk-btn--ghost,
.is-publico:has(.lp-hero) .pub-nav .dsmk-btn--secondary{border-color:rgba(255,255,255,.45);background:rgba(255,255,255,.08)}

/* ─── Cifras en tarjetas con ícono (se montan sobre el borde del héroe) ─── */
.lp-stats{position:relative;z-index:3;margin-top:-46px}
.lp-stats .container{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.lp-stat{display:flex;gap:16px;align-items:center;padding:20px;border-radius:20px;background:var(--dsmk-surface);border:1px solid var(--dsmk-ink-100);
  box-shadow:0 16px 40px rgba(26,16,48,.13);transition:transform .25s ease,box-shadow .25s ease}
.lp-stat:hover{transform:translateY(-3px);box-shadow:0 20px 48px rgba(134,56,235,.22)}
.lp-stat .ico{flex:none;display:grid;place-items:center;width:56px;height:56px;border-radius:17px;background:var(--dsmk-brand-grad,linear-gradient(90deg,#e30cc9 0%,#8638eb 50%,#2aeac3 100%));color:#fff;box-shadow:0 8px 18px rgba(134,56,235,.35)}
.lp-stat .ico .material-symbols-rounded{font-size:1.7rem}
.lp-stat b{display:block;font-size:1.8rem;line-height:1.1;letter-spacing:-.02em;color:var(--dsmk-brand-700);font-variant-numeric:tabular-nums}
.lp-stat .lbl{display:block;margin-top:2px;font-size:0.8125rem;line-height:1.4;color:var(--dsmk-ink-600)}
@media(max-width:980px){.lp-stats{margin-top:-30px}.lp-stats .container{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}}
@media(max-width:600px){.lp-stats .container{grid-template-columns:1fr}}

/* ─── Convocatorias: 1 tarjeta = ancha y horizontal; 2 = dos columnas iguales; 3 o más = cuadrícula ─── */
.conv-grid--1{grid-template-columns:1fr}
.conv-grid--1 .conv-card{flex-direction:row}
.conv-grid--1 .conv-top{flex:0 0 38%;display:flex;flex-direction:column;justify-content:center;padding:36px 34px}
.conv-grid--1 .conv-top h3{font-size:clamp(1.5rem,2.6vw,2rem)}
.conv-grid--1 .conv-pill{position:static;align-self:flex-start;margin-bottom:18px}
.conv-grid--1 .conv-top .eyebrow{display:none}
.conv-grid--1 .conv-body{padding:32px 36px;gap:20px;justify-content:center}
.conv-grid--1 .conv-desc{font-size:0.9688rem}
.conv-grid--1 .conv-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.conv-grid--1 .conv-cta{grid-template-columns:auto 1fr;align-items:center;gap:18px;margin-top:4px}
.conv-grid--1 .conv-deadline{text-align:left;font-size:0.8125rem}
.conv-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:900px){
  .conv-grid--1 .conv-card{flex-direction:column}
  .conv-grid--1 .conv-top{flex:none;padding:24px 22px}
  .conv-grid--1 .conv-pill{position:absolute;margin:0}
  .conv-grid--1 .conv-top .eyebrow{display:block}
  .conv-grid--1 .conv-body{padding:22px}
  .conv-grid--1 .conv-facts{grid-template-columns:1fr}
  .conv-grid--1 .conv-cta{grid-template-columns:1fr}
  .conv-grid--1 .conv-deadline{text-align:center}
  .conv-grid--2{grid-template-columns:1fr}
}

/* ═══════════ Página de inscripción (landing del curso) ═══════════ */
.reg-preguntas{border:1px solid var(--dsmk-ink-100);border-radius:16px;padding:16px 18px 6px;margin:6px 0 16px}
.reg-preguntas legend{padding:0 8px;font-weight:700;font-size:0.9375rem;color:var(--dsmk-ink-900)}
.reg-preguntas .req{color:#dc2626}
.reg-opciones{display:grid;gap:8px;margin-top:6px}
.reg-opciones .dsmk-check{align-items:flex-start}

.lp-hero--compact .container{grid-template-columns:1fr;padding-top:112px;padding-bottom:128px}
.lp-hero--compact h1{font-size:clamp(2rem,4.2vw,3.2rem);max-width:760px}
.reg-wrap{position:relative;z-index:3;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:34px;align-items:start;margin-top:-74px;padding-bottom:80px}
.reg-info{display:grid;gap:18px}
.reg-dates{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.reg-dates .lp-stat{flex-direction:column;align-items:flex-start;gap:12px;padding:18px}
.reg-dates .lp-stat b{font-size:1.02rem;letter-spacing:0;line-height:1.3}
.reg-dates .lp-stat .lbl{margin:0 0 3px;font-size:0.6875rem;letter-spacing:.08em;text-transform:uppercase;color:var(--dsmk-ink-500)}
.reg-dates .lp-stat .ico{width:46px;height:46px;border-radius:14px}
.reg-card{padding:24px 26px;border-radius:20px;background:var(--dsmk-surface);border:1px solid var(--dsmk-ink-100);box-shadow:0 1px 2px rgba(26,16,48,.04),0 8px 24px rgba(26,16,48,.06)}
.reg-card h2{display:flex;align-items:center;gap:10px;font-size:1.125rem;margin:0 0 14px;color:var(--dsmk-ink-900)}
.reg-card h2 .material-symbols-rounded{color:var(--dsmk-brand-600)}
.reg-card p{margin:0 0 10px;line-height:1.65;color:var(--dsmk-ink-700)}
.reg-card p:last-child{margin-bottom:0}
.reg-pasos ol{list-style:none;margin:0;padding:0;display:grid;gap:16px}
.reg-pasos li{display:flex;gap:14px;align-items:flex-start}
.reg-pasos .n{flex:none;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--dsmk-brand-grad);color:#fff;font-weight:700;font-size:0.875rem}
.reg-pasos b{display:block;color:var(--dsmk-ink-900);margin-bottom:2px}
.reg-pasos p{font-size:0.875rem;color:var(--dsmk-ink-600)}
.reg-visual{position:relative;display:grid;grid-template-columns:150px minmax(0,1fr) 92px;gap:18px;align-items:center;padding:16px;border-radius:22px;background:linear-gradient(110deg,#1a1030,#2a0a5e 60%,#8638eb);color:#fff;overflow:hidden}
.reg-visual .art{display:block;width:150px;height:150px;object-fit:cover;border-radius:16px;filter:hue-rotate(-62deg) saturate(1.1)}
.reg-visual .txt .eyebrow{color:#d7bfff}
.reg-visual .txt b{display:block;font-size:1.25rem;margin:4px 0 6px}
.reg-visual .txt p{margin:0;font-size:0.8125rem;line-height:1.5;color:rgba(255,255,255,.85)}
.reg-visual .badge{width:92px;height:92px;object-fit:contain;background:#fff;border-radius:16px;padding:6px}
.reg-form{position:sticky;top:22px}
.reg-form .form-card{max-width:none;margin:0;padding:28px;border-radius:24px;box-shadow:0 22px 60px rgba(26,16,48,.20);border:1px solid var(--dsmk-ink-100)}
.reg-form-head{margin-bottom:20px;padding-bottom:18px;border-bottom:1px solid var(--dsmk-ink-100)}
.reg-form-head .conv-pill{position:static;display:inline-flex;margin-bottom:12px;background:#ecfdf3}
.reg-form-head h2{font-size:1.45rem;margin:0 0 4px;letter-spacing:-.01em}
.reg-form-head p{margin:0;font-size:0.875rem;color:var(--dsmk-ink-500)}
.reg-seguro{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:center;font-size:0.8125rem;color:var(--dsmk-ink-500)}
.reg-seguro li{display:flex;align-items:center;gap:6px}
.reg-seguro .material-symbols-rounded{font-size:1.05rem;color:var(--dsmk-brand-600)}
@media(max-width:980px){
  .lp-hero--compact .container{padding-top:104px;padding-bottom:104px}
  .reg-wrap{grid-template-columns:1fr;margin-top:-56px}
  .reg-form{position:static;order:-1}
  .reg-dates{grid-template-columns:1fr}
  .reg-dates .lp-stat{flex-direction:row;align-items:center}
}
@media(max-width:600px){
  .reg-visual{grid-template-columns:1fr;text-align:center}
  .reg-visual .art{width:100%;height:170px}
  .reg-visual .badge{justify-self:center}
}
.lp-hero--compact .lp-trust{margin-top:22px}
/* Paso a paso: la explicación de cada paso es un tooltip (mouse encima, o tocar el ícono junto al título) */
.proceso .steps{align-items:start}
.proceso .step-date{font-size:0.6875rem;font-weight:500;color:var(--dsmk-ink-500)}
.proceso .step-date .material-symbols-rounded{font-size:0.875rem}
.proceso .step-mas{display:inline-flex;vertical-align:-3px;margin-left:2px;padding:0;border:0;background:none;cursor:help;color:var(--dsmk-ink-400)}
.proceso .step-mas .material-symbols-rounded{font-size:1rem}
.proceso .step:hover .step-mas,.proceso .step-mas:focus-visible{color:var(--dsmk-brand-600)}
.proceso .step-mas:focus-visible{outline:2px solid var(--dsmk-brand-600);outline-offset:2px;border-radius:4px}
.proceso .step-tip{position:absolute;left:10px;right:10px;top:calc(100% - 6px);z-index:30;padding:10px 12px;border-radius:10px;background:#1a1030;border:1px solid rgba(255,255,255,.12);color:#fff;
  font-size:0.8125rem;line-height:1.5;box-shadow:0 10px 30px rgba(26,16,48,.25);opacity:0;visibility:hidden;transform:translateY(4px);transition:opacity .15s,transform .15s,visibility .15s;pointer-events:none}
.proceso .step-tip::before{content:"";position:absolute;top:-6px;left:22px;border:6px solid transparent;border-top:0;border-bottom-color:#1a1030}
.proceso .step:hover .step-tip,.proceso .step:focus-within .step-tip{opacity:1;visibility:visible;transform:none}
/* Inicio del alumno: clases y examen a la izquierda, «Mis Asistencias» como barra lateral */
.dash-grid.has-side{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:28px;align-items:start}
.has-side .dash-side{position:sticky;top:84px}
.has-side .dash-side .asis{padding:4px 16px}
.has-side .dash-side .asis-row{flex-direction:column;align-items:flex-start;gap:8px;padding:12px 0}
.has-side .dash-side .asis-row b{font-size:0.875rem}
@media(max-width:980px){.dash-grid.has-side{grid-template-columns:1fr}.has-side .dash-side{position:static}}
/* Con barra lateral, la columna principal es más angosta: los pasos ocupan lo que haya y ambos títulos parten alineados */
.has-side .dash-main > :first-child,.has-side .dash-main > .proceso:first-child .section-title,.has-side .dash-side > .section-title:first-child{margin-top:0}
/* Próximos Pasos en lista: un paso por fila (ícono · título y fecha · estado), unidos por una línea vertical */
.proceso .steps,.has-side .proceso .steps{grid-template-columns:1fr;gap:10px}
.proceso .step{flex-direction:row;align-items:center;gap:14px;padding:12px 16px}
.proceso .step::after{top:auto;bottom:-11px;left:36px;width:2px;height:10px}
.proceso .step-ico{width:40px;height:40px;flex:none}
.proceso .step-body{flex:1;min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:16px;align-items:center}
.proceso .step h3{grid-column:1;margin:0 0 2px;font-size:0.9375rem}
.proceso .step-date{grid-column:1}
.proceso .step-state{grid-column:2;grid-row:1 / span 2;margin-top:0;white-space:nowrap}
.proceso .step-tip{left:70px;right:auto;max-width:440px}
@media(max-width:600px){.proceso .step-body{grid-template-columns:1fr}.proceso .step-state{grid-column:1;grid-row:auto;margin-top:4px}.proceso .step-tip{left:10px;right:10px}}
/* Tooltip siempre sólido y por encima de la tarjeta siguiente: sin opacidad en los pasos pendientes (se atenúan solo los textos) */
.proceso .step.is-pendiente,.proceso .step.is-bloqueado{opacity:1}
.proceso .step.is-pendiente .step-ico,.proceso .step.is-bloqueado .step-ico,.proceso .step.is-pendiente h3,.proceso .step.is-bloqueado h3,.proceso .step.is-pendiente .step-date,.proceso .step.is-bloqueado .step-date{opacity:.75}
.proceso .step:hover,.proceso .step:focus-within{z-index:20}
/* Reloj regresivo del próximo hito, entre el título y el estado */
.proceso .step-body{grid-template-columns:minmax(0,1fr) auto auto}
.proceso .step-cuenta{grid-column:2;grid-row:1 / span 2;display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:999px;background:rgba(134,56,235,.12);color:var(--dsmk-brand-600);
  font-weight:700;font-size:0.875rem;font-variant-numeric:tabular-nums;white-space:nowrap}
.proceso .step-cuenta .material-symbols-rounded{font-size:1.05rem}
.proceso .step-state{grid-column:3}
@media(max-width:600px){.proceso .step-body{grid-template-columns:1fr}.proceso .step-cuenta{grid-column:1;grid-row:auto;justify-self:start;margin-top:6px}.proceso .step-state{grid-column:1}}

/* Clases/Examen sin acceso: aviso corto con viñetas y las clases como protagonistas */
.nh-aviso{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:16px 20px;border-radius:var(--dsmk-r-lg);background:rgba(134,56,235,.08);border:1px solid rgba(134,56,235,.22)}
.nh-aviso > .material-symbols-rounded{font-size:2rem;color:var(--dsmk-brand-600)}
.nh-aviso > div{flex:1;min-width:220px}
.nh-aviso h1{font-size:1.0625rem;font-weight:700;margin:0 0 6px;color:var(--dsmk-ink-900)}
.nh-aviso ul{margin:0;padding-left:18px;display:flex;flex-wrap:wrap;column-gap:28px;row-gap:2px;font-size:0.875rem;color:var(--dsmk-ink-700)}
.nh-clases{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.nh-clase{display:flex;align-items:flex-start;gap:18px;padding:20px 22px;border-radius:var(--dsmk-r-lg);background:var(--dsmk-surface);border:1px solid var(--dsmk-ink-100)}
.nh-num{flex:none;display:grid;place-items:center;width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,var(--dsmk-brand-600),#5b8def);color:#fff;font-size:1.5rem;font-weight:800}
.nh-body{flex:1;min-width:0}
.nh-sem{font-family:var(--dsmk-font-mono);font-size:0.6875rem;letter-spacing:.14em;text-transform:uppercase;color:var(--dsmk-brand-600)}
.nh-clase h3{font-size:1.1875rem;font-weight:700;line-height:1.3;margin:2px 0 6px;color:var(--dsmk-ink-900)}
.nh-clase p{font-size:0.875rem;line-height:1.55;color:var(--dsmk-ink-600);margin:0 0 10px}
.nh-chips{display:flex;flex-wrap:wrap;gap:8px}
.nh-chips span{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:var(--dsmk-ink-50);font-size:0.8125rem;font-weight:600;color:var(--dsmk-ink-700)}
.nh-chips .material-symbols-rounded{font-size:1rem;background:none;padding:0;width:auto;height:auto}
.nh-lock{flex:none;color:var(--dsmk-ink-400);font-size:1.375rem}
@media(max-width:560px){.nh-clase{gap:12px;padding:16px}.nh-num{width:40px;height:40px;font-size:1.125rem}}
/* Paso con contenido propio (formulario de «Tu pregunta»): ocupa el ancho bajo la fila del paso */
.proceso .step.has-extra{flex-wrap:wrap}
.proceso .step-extra{flex-basis:100%;padding-left:54px}
.proceso .step-extra details summary{cursor:pointer;color:var(--dsmk-brand-600);font-weight:600;display:inline-flex;align-items:center;gap:4px}
.proceso .step.has-extra .step-tip{top:58px}
.proceso .step.is-porhacer .step-ico{background:#f59e0b;color:#fff}
.proceso .step.is-porhacer .step-state{color:#b45309}
@media(max-width:600px){.proceso .step-extra{padding-left:0}}
.proceso .step-extra .material-symbols-rounded{font-size:1.125rem;margin:0;color:inherit}
/* Tooltip de cada paso: solo sobre el ícono ⓘ (mouse o toque), chico y pegado al título */
.proceso .step h3{position:relative}
.proceso .step-tip,.proceso .step.has-extra .step-tip{top:calc(100% + 8px);left:-6px;right:auto;width:max-content;max-width:300px;padding:8px 10px;font-size:0.75rem;font-weight:400;line-height:1.45}
.proceso .step:hover .step-tip,.proceso .step:focus-within .step-tip{opacity:0;visibility:hidden;transform:translateY(4px)}
.proceso .step-mas:hover + .step-tip,.proceso .step-mas:focus + .step-tip{opacity:1;visibility:visible;transform:none}
.proceso .step:hover,.proceso .step:focus-within{z-index:auto}
.proceso .step:has(.step-mas:hover),.proceso .step:has(.step-mas:focus){z-index:20}
.proceso .step h3{position:static}
.proceso .step-info{position:relative;display:inline-block}
.proceso .step-tip,.proceso .step.has-extra .step-tip{top:calc(100% + 8px);left:-12px}
.proceso .step-tip::before{left:14px}

/* Semana: video arriba y las tarjetas (material, clase en vivo, checklist, siguiente) en una cuadrícula debajo */
.sem-video{max-width:1000px;margin:0 auto 24px}
.sem-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;align-items:stretch;max-width:1000px;margin:0 auto}
.sem-cards>.dsmk-card{margin:0;display:flex;flex-direction:column}
.sem-cards>.stack>*+*{margin-top:0}
.sem-next{flex-direction:row!important;align-items:center;justify-content:space-between;gap:8px;text-decoration:none;color:inherit;font-size:1.1rem}
.sem-next:hover{border-color:var(--dsmk-brand-500)}
.sem-next b{flex:1;margin-left:8px}
.poster{position:absolute;inset:0;z-index:2;border:0;padding:0;cursor:pointer;display:flex;align-items:flex-end;justify-content:flex-start;color:#fff;background:radial-gradient(100% 100% at 30% 20%,rgba(134,56,235,.45),transparent 60%),#05090f;background-size:cover;background-position:center}
.poster[hidden]{display:none}
.poster::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.65),transparent 50%)}
.poster-play{position:absolute;inset:0;margin:auto;width:76px;height:76px;border-radius:50%;display:grid;place-items:center;background:rgba(134,56,235,.95);box-shadow:0 6px 24px rgba(0,0,0,.4);z-index:1;transition:transform .15s}
.poster:hover .poster-play{transform:scale(1.08)}
.poster-play .material-symbols-rounded{font-size:2.6rem;color:#fff}
.poster-tit{position:relative;z-index:1;padding:14px 18px;font-weight:600;font-size:1rem;text-align:left}

/* Clases aún no habilitadas: tarjetas en cuadrícula con portada del video (bloqueada) */
.nh-clases{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}
.nh-clase{flex-direction:column;align-items:stretch;gap:0;padding:0;overflow:hidden}
.nh-prev{position:relative;aspect-ratio:16/9;background:radial-gradient(100% 100% at 30% 20%,rgba(134,56,235,.45),transparent 60%),#05090f;background-size:cover;background-position:center}
.nh-prev::before{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(5,9,15,.15),rgba(5,9,15,.5))}
.nh-prev .nh-num{position:absolute;left:14px;top:14px;z-index:1}
.nh-prev .nh-lock{position:absolute;inset:0;margin:auto;width:56px;height:56px;display:grid;place-items:center;border-radius:50%;background:rgba(0,0,0,.55);color:#fff;font-size:1.8rem;z-index:1}
.nh-clase .nh-body{padding:16px 18px 18px}
.nh-clase h3{font-size:1.0625rem}

/* /capacitacion — página general: hero con collage, programas en tarjetas con foto, cómo funciona y cierre */
.cp-hero .container{padding-top:64px;padding-bottom:72px}
.cp-hero h1{font-size:clamp(2.1rem,4.6vw,3.4rem)}
.cp-collage{position:relative;aspect-ratio:1/.92;max-width:520px;margin-left:auto;width:100%}
.cp-ph{position:absolute;object-fit:cover;border-radius:20px;box-shadow:0 18px 50px rgba(0,0,0,.38);border:3px solid rgba(255,255,255,.85)}
.cp-ph--main{inset:0 0 18% 12%;width:88%;height:82%}
.cp-ph--a{left:0;bottom:0;width:36%;height:auto;aspect-ratio:1;border-radius:50%}
.cp-ph--b{right:0;bottom:0;width:46%;height:34%}
.cp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;margin-top:32px}
.cp-card{display:flex;flex-direction:column;border-radius:var(--dsmk-r-lg);overflow:hidden;background:var(--dsmk-surface);border:1px solid var(--dsmk-ink-100);text-decoration:none;color:inherit;transition:transform .15s,box-shadow .15s,border-color .15s}
.cp-card:hover{transform:translateY(-3px);box-shadow:var(--dsmk-sh-lg);border-color:var(--dsmk-brand-500)}
.cp-img{position:relative;display:block;aspect-ratio:900/480;overflow:hidden;background:var(--dsmk-ink-100)}
.cp-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}
.cp-card:hover .cp-img img{transform:scale(1.04)}
.cp-pill{position:absolute;top:12px;left:12px;display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:999px;font-size:.6875rem;font-weight:700;background:rgba(255,255,255,.95);color:#1a1030}
.cp-pill .dot{width:8px;height:8px;border-radius:50%;background:#94a3b8}
.cp-pill.is-abierta .dot{background:#16a34a;box-shadow:0 0 0 4px rgba(22,163,74,.25)}
.cp-body{display:flex;flex-direction:column;gap:6px;padding:16px 18px 18px;flex:1}
.cp-body b{font-size:1.0625rem;line-height:1.3;color:var(--dsmk-ink-900)}
.cp-body span:not(.cp-go){font-size:.875rem;line-height:1.5;color:var(--dsmk-ink-600)}
.cp-go{margin-top:auto;padding-top:8px;display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:.875rem;color:var(--dsmk-brand-600)}
.cp-go .material-symbols-rounded{font-size:1.1rem}
.cp-card--aqui{border-color:rgba(134,56,235,.35)}
.cp-como{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:center}
.cp-pasos{list-style:none;margin:24px 0 0;padding:0;display:flex;flex-direction:column;gap:18px}
.cp-pasos li{display:flex;gap:16px;align-items:flex-start}
.cp-pasos .n{flex:none;display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,var(--dsmk-brand-600),#5b8def);color:#fff;font-weight:800}
.cp-pasos b{display:block;font-size:1rem;color:var(--dsmk-ink-900)}
.cp-pasos p{margin:2px 0 0;font-size:.875rem;color:var(--dsmk-ink-600)}
.cp-foto img{width:100%;height:auto;border-radius:24px;box-shadow:var(--dsmk-sh-lg);display:block}
.cp-cta-sec{padding:24px 0 72px}
.cp-cta{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center;border-radius:32px;color:#fff;padding:48px;background:linear-gradient(110deg,#1a1030,#2a0a5e 55%,#8638eb)}
.cp-cta h2{font-size:clamp(1.6rem,3vw,2.3rem);letter-spacing:-.02em;margin:8px 0 6px;color:#fff}
.cp-cta p{margin:0;color:rgba(255,255,255,.88)}
.cp-cta .eyebrow{color:#d7bfff}
@media(max-width:900px){.cp-hero .container{grid-template-columns:1fr}.cp-collage{margin:12px auto 0;max-width:420px}.cp-como{grid-template-columns:1fr;gap:28px}.cp-cta{grid-template-columns:1fr;padding:34px 24px}}

/* /levelup — landing directa al registro */
.lv-hero .container{padding-top:104px;padding-bottom:64px;align-items:center}
.lv-hero h1{font-size:clamp(2.2rem,4.8vw,3.6rem)}
.lv-plazo{align-self:center;color:rgba(255,255,255,.85);font-size:.9375rem}
.lv-facts{list-style:none;margin:6px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,auto);gap:10px 28px;justify-content:start}
.lv-facts li{display:flex;flex-direction:column;gap:2px}
.lv-facts b{font-size:1.6rem;line-height:1;color:#fff;letter-spacing:-.02em}
.lv-facts span{font-size:.8125rem;color:rgba(255,255,255,.78)}
.lv-card{border-radius:24px;overflow:hidden;background:var(--dsmk-surface);color:var(--dsmk-ink-900);box-shadow:0 24px 60px rgba(0,0,0,.4);max-width:460px;margin-left:auto;width:100%}
.lv-card>img{display:block;width:100%;height:auto;aspect-ratio:900/480;object-fit:cover}
.lv-card-body{padding:20px 22px 22px}
.lv-pill{position:static;display:inline-flex;margin-bottom:10px}
.lv-card h2{font-size:1.25rem;margin:0 0 14px;color:var(--dsmk-ink-900)}
.lv-crono{list-style:none;margin:0 0 10px;padding:0;display:flex;flex-direction:column;gap:12px}
.lv-crono li{display:flex;gap:12px;align-items:center}
.lv-crono .ico{flex:none;display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:rgba(134,56,235,.12);color:var(--dsmk-brand-600)}
.lv-crono small{display:block;font-size:.75rem;color:var(--dsmk-ink-500)}
.lv-crono b{font-size:.9375rem}
.lv-nota{display:flex;align-items:center;gap:6px;margin:0 0 16px;font-size:.8125rem;color:var(--dsmk-ink-500)}
.lv-nota .material-symbols-rounded{font-size:1rem}
.lv-dos{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:start}
.lv-h2{font-size:clamp(1.5rem,3vw,2.1rem);letter-spacing:-.02em;margin:10px 0 18px}
.lv-req{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:16px}
.lv-req li{display:flex;gap:14px;align-items:flex-start;padding:16px 18px;border-radius:var(--dsmk-r-lg);background:var(--dsmk-ink-50)}
.lv-req .material-symbols-rounded{flex:none;color:var(--dsmk-brand-600);font-size:1.6rem}
.lv-req b{display:block;color:var(--dsmk-ink-900)}
.lv-req p{margin:2px 0 0;font-size:.875rem;color:var(--dsmk-ink-600)}
@media(max-width:900px){.lv-hero .container{grid-template-columns:1fr}.lv-card{margin:8px auto 0}.lv-dos{grid-template-columns:1fr;gap:36px}.lv-facts{grid-template-columns:repeat(2,auto)}}

/* /levelup con el formulario de inscripción en el hero */
.lv-form{max-width:460px;margin-left:auto;width:100%;scroll-margin-top:90px}
.lv-form .reg-form{position:static}
.lv-fechas{background:var(--dsmk-ink-50);border-bottom:1px solid var(--dsmk-ink-100)}
.lv-fechas-in{display:flex;flex-wrap:wrap;align-items:center;gap:14px 32px;padding:18px 0}
.lv-crono--h{flex-direction:row;flex-wrap:wrap;gap:12px 28px;margin:0}
.lv-fechas .lv-nota{margin:0}
@media(max-width:900px){.lv-form{margin:8px auto 0}}
.lv-form--sec{margin:0 0 32px}
.lv-hero .container{align-items:start}
.lv-hero .container>div:first-child{position:sticky;top:96px}
@media(max-width:900px){.lv-hero .container>div:first-child{position:static}}

/* Formulario de inscripción en pasos */
.fr-prog{list-style:none;display:flex;gap:6px;margin:0 0 18px;padding:0}
.fr-prog li{flex:1;display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:10px;background:var(--dsmk-ink-50);color:var(--dsmk-ink-500);font-size:.8125rem;font-weight:600;cursor:default}
.fr-prog .n{flex:none;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--dsmk-ink-200,#d7dde6);color:#fff;font-size:.75rem}
.fr-prog .t{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fr-prog li.is-actual{background:rgba(134,56,235,.12);color:var(--dsmk-brand-600)}
.fr-prog li.is-actual .n{background:var(--dsmk-brand-600)}
.fr-prog li.is-hecho{color:var(--dsmk-ink-700);cursor:pointer}
.fr-prog li.is-hecho .n{background:#16a34a}
.fr-step[hidden]{display:none}
.fr-nav{display:flex;justify-content:space-between;gap:10px;margin-top:8px}
.fr-nav .fr-next{margin-left:auto}
.fr-nav [hidden]{display:none}
.fr-wizard:not(.is-wizard) .fr-prog,.fr-wizard:not(.is-wizard) .fr-nav{display:none}
@media(max-width:480px){.fr-prog .t{display:none}}

/* /levelup — más fotos */
.lp-dom-img{display:block;width:calc(100% + 44px);max-width:none;margin:-24px -22px 16px;height:140px;object-fit:cover}
.lp-art--foto{background:var(--dsmk-ink-100);align-self:stretch}
.lp-art--foto img{filter:none;min-height:100%}
.lp-art--foto::after{display:none}
.lv-foto{display:block;width:100%;height:auto;aspect-ratio:900/520;object-fit:cover;border-radius:20px;margin:0 0 20px;box-shadow:var(--dsmk-sh-lg)}
.lv-foto--pie{margin:22px 0 0}
.cp-cta--foto{position:relative;overflow:hidden;isolation:isolate}
.cp-cta--foto::before{content:"";position:absolute;inset:0;z-index:-2;background:var(--foto) right center/cover no-repeat;opacity:.5}
.cp-cta--foto::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(100deg,#1a1030 0%,rgba(42,10,94,.92) 40%,rgba(90,31,181,.35) 100%)}

/* /restart — landing de AWS re/Start */
.lv-facts--5{grid-template-columns:repeat(5,auto);gap:10px 22px}
.rs-duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.rs-sub{display:flex;align-items:center;gap:8px;font-size:1rem;margin:0 0 12px;color:var(--dsmk-ink-900)}
.rs-sub .material-symbols-rounded{color:var(--dsmk-brand-600)}
.rs-lista{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.rs-lista li{display:flex;flex-direction:column;gap:2px;padding:12px 14px;border-radius:14px;background:var(--dsmk-ink-50);border-left:3px solid var(--dsmk-brand-600)}
.rs-lista b{font-size:.9375rem;color:var(--dsmk-ink-900)}
.rs-lista span{font-size:.8125rem;color:var(--dsmk-ink-600);line-height:1.5}
@media(max-width:900px){.rs-duo{grid-template-columns:1fr}.lv-facts--5{grid-template-columns:repeat(3,auto)}}

/* Destino de los botones con ancla: margen y resaltado */
#convocatorias,#aprenderas,#como-funciona,#preguntas{scroll-margin-top:72px}
@keyframes lvpulso{0%{box-shadow:0 0 0 0 rgba(134,56,235,.55)}70%{box-shadow:0 0 0 14px rgba(134,56,235,0)}100%{box-shadow:0 0 0 0 rgba(134,56,235,0)}}
.is-flash .conv-card,.is-flash .form-card{animation:lvpulso 1.1s ease-out 2}

/* Clases: tarjetas con portada, avance y estado */
.cl-item{display:flex}
.cl-item>.nh-clase{width:100%;text-decoration:none;color:inherit}
.nh-clase.is-abierta{cursor:pointer;transition:transform .15s,box-shadow .15s,border-color .15s}
.nh-clase.is-abierta:hover{transform:translateY(-3px);box-shadow:var(--dsmk-sh-lg);border-color:var(--dsmk-brand-500)}
.nh-clase.is-abierta .nh-prev::before{background:linear-gradient(to bottom,rgba(5,9,15,0),rgba(5,9,15,.4))}
.cl-play{position:absolute;inset:0;margin:auto;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:rgba(134,56,235,.95);color:#fff;z-index:1;box-shadow:0 6px 20px rgba(0,0,0,.35)}
.cl-play .material-symbols-rounded{font-size:2rem;color:#fff}
.is-completa .cl-play{background:#16a34a}
.cl-prog{height:6px;border-radius:999px;background:var(--dsmk-ink-100);overflow:hidden;margin:8px 0 10px}
.cl-prog>span{display:block;height:100%;background:var(--dsmk-brand-600);border-radius:inherit}
.cl-prog.is-ok>span{background:#16a34a}
.cl-go{margin-top:10px;display:flex;align-items:center;gap:6px;font-weight:700;font-size:.875rem;color:var(--dsmk-brand-600)}
.cl-go .material-symbols-rounded{font-size:1.1rem}
.cl-resumen{display:flex;align-items:center;justify-content:space-between;gap:16px;text-decoration:none;color:inherit;flex-wrap:wrap}
.cl-resumen:hover{border-color:var(--dsmk-brand-500)}
.cl-resumen-txt{display:flex;flex-direction:column;gap:6px;flex:1;min-width:220px}
.cl-resumen .progress{display:block;max-width:420px}

/* Inicio del alumno: fondo con textura y secciones en paneles separados */
.dash-bg{position:relative;background:
  radial-gradient(60rem 28rem at 8% 38%,rgba(134,56,235,.10),transparent 70%),
  radial-gradient(48rem 26rem at 96% 72%,rgba(227,12,201,.09),transparent 70%),
  var(--dsmk-bg)}
.dash-bg::before{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(var(--dsmk-ink-200) 1px,transparent 1.2px);background-size:26px 26px;opacity:.45;
  -webkit-mask-image:linear-gradient(180deg,transparent 0,#000 260px,#000 100%);mask-image:linear-gradient(180deg,transparent 0,#000 260px,#000 100%)}
.dash-bg > *{position:relative}
.dash-bg .app-hero{padding-bottom:20px}
.dash-bg .page{padding-bottom:64px}
.dash-main > .proceso,.dash-side{background:var(--dsmk-surface);border:1px solid var(--dsmk-ink-100);border-radius:var(--dsmk-r-xl,20px);padding:6px 24px 24px;box-shadow:0 1px 2px rgba(0,0,0,.06),0 12px 32px -16px rgba(0,0,0,.35);position:relative;overflow:visible}
.dash-main > .proceso{margin:0 0 24px}
.dash-main > .proceso::before,.dash-side::before{content:"";position:absolute;left:24px;right:24px;top:0;height:3px;border-radius:0 0 4px 4px;background:linear-gradient(90deg,var(--dsmk-brand-600),var(--dsmk-brand-400,#e30cc9))}
.dash-bg .proceso .section-title,.dash-bg .dash-side .section-title{margin:18px 0 18px;padding-bottom:14px;border-bottom:1px solid var(--dsmk-ink-100)}
.dash-bg .proceso .step{background:var(--dsmk-bg-2,var(--dsmk-bg));border-color:var(--dsmk-ink-100)}
.dash-bg .proceso .step.is-actual{background:rgba(134,56,235,.08)}
.dash-bg .dash-side .asis{background:none;border:0;box-shadow:none;padding:0}
.dash-bg .has-side .dash-side .asis-row{padding:12px 14px;margin-bottom:8px;border:1px solid var(--dsmk-ink-100);border-radius:var(--dsmk-r-lg);background:var(--dsmk-bg-2,var(--dsmk-bg))}
.dash-bg .has-side .dash-side .asis-row:last-child{border-bottom:1px solid var(--dsmk-ink-100);margin-bottom:0}
@media(max-width:600px){.dash-main > .proceso,.dash-side{padding:4px 16px 18px;border-radius:16px}.dash-main > .proceso::before,.dash-side::before{left:16px;right:16px}}

/* Webinar del alumno */
.wb-chips{display:flex;flex-wrap:wrap;gap:10px}
.wb-chip{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:var(--dsmk-r-pill);background:var(--dsmk-surface);border:1px solid var(--dsmk-ink-100);font-size:0.8125rem;color:var(--dsmk-ink-700)}
.wb-chip .material-symbols-rounded{font-size:1.1rem;color:var(--dsmk-brand-500)}
.wb-chip.is-ok{color:#15803d;border-color:rgba(22,163,74,.4)}
.wb-chip.is-ok .material-symbols-rounded{color:#16a34a}
.wb .grid-2{gap:24px;align-items:stretch}
.wb-card{position:relative;overflow:hidden;background:var(--dsmk-surface);border:1px solid var(--dsmk-ink-100);border-radius:var(--dsmk-r-xl,20px);padding:44px 28px 36px;box-shadow:0 1px 2px rgba(0,0,0,.06),0 12px 32px -16px rgba(0,0,0,.35);justify-content:center}
.wb-card::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,var(--dsmk-brand-600),var(--dsmk-brand-400,#e30cc9))}
.wb-card > .material-symbols-rounded.xl{display:grid;place-items:center;width:84px;height:84px;border-radius:50%;font-size:2.75rem;background:rgba(134,56,235,.12);box-shadow:0 0 0 8px rgba(134,56,235,.06)}
.wb-n{font-family:var(--dsmk-font-mono);font-size:0.6875rem;letter-spacing:.14em;text-transform:uppercase;color:var(--dsmk-ink-500);margin-bottom:-8px}
.wb-card h2{margin:0}
.wb-card.dsmk-card--featured{border-color:var(--dsmk-brand-600);box-shadow:0 0 0 3px rgba(134,56,235,.2),0 16px 40px -16px rgba(134,56,235,.5)}
.wb-card .dsmk-alert{text-align:left}

/* Cabecera integrada con el fondo (sin corte duro entre hero y contenido) */
.dash-bg{background:
  linear-gradient(180deg,rgba(134,56,235,.16) 0,rgba(134,56,235,.05) 300px,transparent 520px),
  radial-gradient(60rem 28rem at 8% 42%,rgba(134,56,235,.10),transparent 70%),
  radial-gradient(48rem 26rem at 96% 72%,rgba(227,12,201,.09),transparent 70%),
  var(--dsmk-bg)}
.dash-bg .app-hero{background:none;overflow:visible;padding:52px 0 28px}
.dash-bg .aurora{-webkit-mask-image:linear-gradient(180deg,#000 55%,transparent 100%);mask-image:linear-gradient(180deg,#000 55%,transparent 100%)}
.dash-bg .aurora::after{display:none}
.dash-bg::before{-webkit-mask-image:linear-gradient(180deg,#000 0,#000 100%);mask-image:linear-gradient(180deg,#000 0,#000 100%);opacity:.35}
.dash-bg .app-hero h1{background:linear-gradient(90deg,var(--dsmk-ink-900),var(--dsmk-brand-600));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;width:fit-content}
.dash-bg .status-pill{background:var(--dsmk-surface);border:1px solid var(--dsmk-ink-100);box-shadow:0 2px 8px -4px rgba(0,0,0,.2)}
.dash-bg .app-hero{padding:26px 0 8px}
.dash-bg .app-hero h1{margin-top:10px;margin-bottom:0;line-height:1.15}
.dash-bg .app-hero .mt-4{margin-top:10px}
.dash-bg .page{padding-top:16px}
.side-legal{display:flex;gap:18px;margin-top:18px;padding-top:14px;border-top:1px solid var(--dsmk-ink-100);font-size:0.78rem}
.side-legal a{color:var(--dsmk-ink-500)}
.side-legal a:hover{color:var(--dsmk-ink-900)}
body:has(.dash-bg.has-legal) .dsmk-footer{display:none}

/* Inicio sin scroll de página en escritorio: todo cabe en la pantalla; si no cabe, solo se desplaza dentro de su columna */
@media(min-width:981px) and (min-height:760px){
  html:has(.dash-bg.has-legal),body:has(.dash-bg.has-legal){height:100%;overflow:hidden}
  body:has(.dash-bg.has-legal) main#contenido{height:calc(100vh - 64px);overflow:hidden}
  .dash-bg.has-legal{height:100%;display:flex;flex-direction:column}
  .dash-bg.has-legal .app-hero{flex:none;padding:18px 0 6px}
  .dash-bg.has-legal .app-hero h1{font-size:clamp(1.5rem,2.6vw,2rem)}
  .dash-bg.has-legal .page{flex:1;min-height:0;padding-top:10px;padding-bottom:16px;width:100%;box-sizing:border-box}
  .dash-bg.has-legal .dash-grid.has-side{height:100%;align-items:stretch}
  .dash-bg.has-legal .dash-main,.dash-bg.has-legal .dash-side{min-height:0}
  .dash-bg.has-legal .dash-side{position:static}
  .dash-bg.has-legal .dash-main > .proceso{margin-bottom:0}
  .dash-bg.has-legal .proceso .section-title,.dash-bg.has-legal .dash-side .section-title{margin:12px 0 12px;padding-bottom:10px}
  .dash-bg.has-legal .proceso .steps{gap:8px}
  .dash-bg.has-legal .proceso .step{padding:8px 14px}
  .dash-bg.has-legal .proceso .step::after{display:none}
}
@media(min-width:981px) and (min-height:760px){
  .dash-bg.has-legal .dash-side{position:relative}
  .dash-bg.has-legal .dash-grid.has-side{align-items:start}
}
.dash-bg .app-hero h1.hola{font-size:clamp(.8125rem,1.7vw,1.25rem);margin-top:6px}
.hero-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.dash-bg .app-hero .hero-row h1.hola{margin:0}
.hero-row .status-pill{margin-left:auto}
.dash-main > .proceso,.dash-side{padding-top:18px}
@media(max-width:600px){.dash-main > .proceso,.dash-side{padding-top:14px}}
.wb-info{position:relative;overflow:hidden;margin-bottom:24px;padding:28px 28px 24px;border-radius:var(--dsmk-r-xl,20px);box-shadow:0 1px 2px rgba(0,0,0,.06),0 12px 32px -16px rgba(0,0,0,.35)}
.wb-info::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,var(--dsmk-brand-600),var(--dsmk-brand-400,#e30cc9))}
.wb-info h1{margin:6px 0 16px;font-size:clamp(1.5rem,3vw,2.25rem);font-weight:700;letter-spacing:-.025em}
.wb .page{padding-top:28px}
.wb .grid-2{grid-template-columns:repeat(3,minmax(0,1fr))}
.wb-info{margin-bottom:0;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:44px 24px 36px}
.wb-info h1{margin:6px 0 18px;font-size:clamp(1.25rem,2.2vw,1.75rem)}
.wb-info .wb-chips{flex-direction:column;align-items:center}
@media(max-width:900px){.wb .grid-2{grid-template-columns:1fr}}
.wb .page{padding-top:16px}
.wb-cuenta{display:flex;flex-direction:column;align-items:center;gap:2px;margin:0 0 18px;padding:12px 20px;border-radius:var(--dsmk-r-lg);background:rgba(134,56,235,.1);border:1px solid rgba(134,56,235,.25)}
.wb-cuenta small{font-size:0.6875rem;letter-spacing:.14em;text-transform:uppercase;color:var(--dsmk-ink-500)}
.wb-cuenta-t{font-family:var(--dsmk-font-mono);font-size:clamp(1.5rem,2.6vw,2rem);font-weight:700;letter-spacing:.02em;color:var(--dsmk-brand-600);font-variant-numeric:tabular-nums}
.wb-chip b{font-variant-numeric:tabular-nums;color:var(--dsmk-ink-900)}
.wb-card .wb-cuenta{margin:0 0 4px;align-self:stretch}
/* Cuenta regresiva compacta del Paso 1 */
.wb-card .wb-cuenta{flex-direction:row;align-items:center;justify-content:center;gap:10px;align-self:center;margin:0 0 6px;padding:6px 16px;border-radius:999px;border:0;background:linear-gradient(var(--dsmk-surface),var(--dsmk-surface)) padding-box,linear-gradient(90deg,var(--dsmk-brand-600),var(--dsmk-brand-400,#e30cc9)) border-box;border:1.5px solid transparent;box-shadow:0 6px 16px -8px rgba(134,56,235,.55)}
.wb-card .wb-cuenta::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--dsmk-brand-500);box-shadow:0 0 0 0 rgba(134,56,235,.5);animation:wbpulse 1.6s ease-out infinite}
.wb-card .wb-cuenta small{font-size:0.625rem;letter-spacing:.14em}
.wb-card .wb-cuenta-t{font-size:1.0625rem;letter-spacing:.04em}
@keyframes wbpulse{to{box-shadow:0 0 0 8px rgba(134,56,235,0)}}
@media(prefers-reduced-motion:reduce){.wb-card .wb-cuenta::before{animation:none}}
/* Webinar: columna 1 (fecha) y contador rojo del Paso 1 */
.wb-info .eyebrow{margin-bottom:2px}
.wb-info h1{margin:0 0 14px}
.wb-ahora{display:flex;flex-direction:column;align-items:center;gap:2px;margin-top:22px;padding-top:16px;border-top:1px solid var(--dsmk-ink-100);align-self:stretch}
.wb-ahora small{font-size:0.6875rem;letter-spacing:.14em;text-transform:uppercase;color:var(--dsmk-ink-500)}
.wb-ahora b{font-family:var(--dsmk-font-mono);font-size:1.25rem;font-variant-numeric:tabular-nums;color:var(--dsmk-ink-900)}
.wb-card .wb-cuenta{background:linear-gradient(var(--dsmk-surface),var(--dsmk-surface)) padding-box,linear-gradient(90deg,#dc2626,#f87171) border-box;box-shadow:0 6px 16px -8px rgba(220,38,38,.55)}
.wb-card .wb-cuenta::before{background:#dc2626;animation-name:wbpulseR}
.wb-card .wb-cuenta small{color:#b91c1c}
.wb-card .wb-cuenta-t{color:#dc2626}
@keyframes wbpulseR{0%{box-shadow:0 0 0 0 rgba(220,38,38,.5)}to{box-shadow:0 0 0 8px rgba(220,38,38,0)}}

/* Examen: espera hasta que abre */
.ex-espera{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;max-width:760px;margin:12px auto 0;padding:44px 28px 30px;border-radius:var(--dsmk-r-xl,20px);border:1px solid var(--dsmk-ink-100);box-shadow:0 1px 2px rgba(0,0,0,.06),0 24px 56px -24px rgba(134,56,235,.55)}
.ex-espera::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,var(--dsmk-brand-600),#e30cc9,var(--dsmk-brand-600));background-size:200% 100%;animation:exflow 4s linear infinite}
.ex-espera > *{position:relative}
.ex-aura{position:absolute!important;inset:0;pointer-events:none;overflow:hidden}
.ex-aura i{position:absolute;border-radius:50%;filter:blur(60px);opacity:.35}
.ex-aura i:nth-child(1){width:300px;height:300px;left:-80px;top:-100px;background:radial-gradient(circle,rgba(227,12,201,.7),transparent 65%)}
.ex-aura i:nth-child(2){width:260px;height:260px;right:-60px;bottom:-90px;background:radial-gradient(circle,rgba(134,56,235,.7),transparent 65%)}
.ex-aura i:nth-child(3){display:none}
.ex-ico{display:grid;place-items:center;width:92px;height:92px;border-radius:50%;background:linear-gradient(135deg,var(--dsmk-brand-600),#e30cc9);color:#fff;animation:exring 2.2s ease-out infinite}
.ex-ico .material-symbols-rounded{font-size:3rem;color:#fff}
.ex-espera h2{margin:0;font-size:1.5rem}
.ex-reloj{display:inline-flex;align-items:center;gap:12px;padding:10px 26px;border-radius:var(--dsmk-r-lg);background:var(--dsmk-surface);border:1.5px solid rgba(134,56,235,.35);box-shadow:inset 0 0 0 4px rgba(134,56,235,.06)}
.ex-reloj .material-symbols-rounded{font-size:2rem;color:var(--dsmk-brand-500)}
.ex-reloj span:last-child{font-family:var(--dsmk-font-mono);font-size:clamp(2rem,6vw,3.25rem);font-weight:700;letter-spacing:.04em;font-variant-numeric:tabular-nums;background:linear-gradient(90deg,var(--dsmk-brand-600),#e30cc9);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.ex-datos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:100%;margin-top:10px}
.ex-datos > div{display:flex;flex-direction:column;align-items:center;gap:2px;padding:14px 8px;border-radius:var(--dsmk-r-lg);background:var(--dsmk-bg-2,var(--dsmk-bg));border:1px solid var(--dsmk-ink-100)}
.ex-datos .material-symbols-rounded{color:var(--dsmk-brand-500)}
.ex-datos b{color:var(--dsmk-ink-900)}
.ex-datos small{color:var(--dsmk-ink-500);font-size:0.75rem}
.ex-tip{display:flex;align-items:center;gap:6px;margin:4px 0 0}
.ex-tip .material-symbols-rounded{font-size:1.1rem;color:#f59e0b}
@keyframes exring{0%{box-shadow:0 0 0 0 rgba(134,56,235,.5)}to{box-shadow:0 0 0 26px rgba(134,56,235,0)}}
@keyframes exflow{to{background-position:200% 0}}
@media(max-width:600px){.ex-datos{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.ex-ico,.ex-espera::before{animation:none}}
/* Examen: reloj en cajas y reglas */
.ex-reloj{display:flex;gap:12px;padding:0;border:0;background:none;box-shadow:none}
.ex-box{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:86px;padding:14px 10px 10px;border-radius:var(--dsmk-r-lg);background:var(--dsmk-surface);border:1.5px solid rgba(134,56,235,.3);box-shadow:0 10px 24px -14px rgba(134,56,235,.6)}
.ex-box b{font-family:var(--dsmk-font-mono);font-size:clamp(1.75rem,5.5vw,2.75rem);line-height:1;font-weight:700;font-variant-numeric:tabular-nums;background:linear-gradient(180deg,var(--dsmk-brand-600),#e30cc9);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.ex-box small{font-size:0.6875rem;letter-spacing:.12em;text-transform:uppercase;color:var(--dsmk-ink-500)}
.ex-box:last-child b{animation:exsec 1s steps(1) infinite}
.ex-reglas{width:100%;text-align:left;margin:6px 0 0}
@keyframes exsec{50%{opacity:.75}}
@media(max-width:600px){.ex-reloj{gap:8px}.ex-box{min-width:0;flex:1;padding:12px 6px 8px}}
@media(prefers-reduced-motion:reduce){.ex-box:last-child b{animation:none}}

/* Hojas de clase (semana): fondo negro completo con el tema oscuro */
.sem-dark{--dsmk-bg:#000;--dsmk-bg-2:#07090e;background:#000;color:var(--dsmk-ink-900);min-height:calc(100vh - 64px)}
.sem-dark .page{padding-bottom:64px}
body:has(.sem-dark){background:#000}
body:has(.sem-dark) .dsmk-footer{background:#000}
.sem-dark .player{box-shadow:0 0 0 1px rgba(255,255,255,.08),0 24px 60px rgba(0,0,0,.8)}
/* Contraseña: botón «Ver contraseña» dentro del campo y medidor de seguridad */
.pw-field{position:relative}
.pw-field .dsmk-input{padding-right:44px}
.pw-ver{position:absolute;right:6px;top:50%;transform:translateY(-50%);display:flex;padding:6px;border:0;border-radius:8px;background:none;color:var(--dsmk-ink-500);cursor:pointer}
.pw-ver:hover{color:var(--dsmk-ink-900);background:var(--dsmk-ink-100)}
.pw-ver:focus-visible{outline:2px solid var(--dsmk-brand-600);outline-offset:2px}
.pw-ver .material-symbols-rounded{font-size:20px;margin:0}
.pw-meter{display:flex;align-items:center;gap:10px;margin-top:6px;font-size:.8125rem;color:var(--dsmk-ink-500)}
.pw-meter i{flex:1;max-width:160px;height:6px;border-radius:999px;background:var(--dsmk-ink-100);overflow:hidden}
.pw-meter b{display:block;height:100%;width:0;border-radius:inherit;transition:width .2s,background .2s}
.pw-meter[data-nivel="debil"] b{width:25%;background:#dc2626}
.pw-meter[data-nivel="media"] b{width:50%;background:#f59e0b}
.pw-meter[data-nivel="buena"] b{width:75%;background:#22c55e}
.pw-meter[data-nivel="fuerte"] b{width:100%;background:#15803d}
.pw-meter[data-nivel="debil"] span{color:#dc2626}
.pw-meter[data-nivel="fuerte"] span,.pw-meter[data-nivel="buena"] span{color:#15803d}

/* Selectores del usuario de pruebas dentro del encabezado: compactos para que no desplacen el menú */
.dsmk-topnav-actions .vista-select{max-width:150px;padding:6px 10px;font-size:.8125rem;text-overflow:ellipsis}

/* Registro: «Carga tus datos con un código» (añadido bajo el email) */
.reg-codigo-abrir { background: none; border: 0; padding: 0; font: inherit; color: var(--dsmk-primary, #8638eb); text-decoration: underline; cursor: pointer; }
.reg-codigo-panel { margin-top: .5rem; display: grid; gap: .5rem; justify-items: start; }
.reg-codigo-panel [data-rc-verif] { display: flex; gap: .5rem; flex-wrap: wrap; align-items: center; }
.reg-codigo-panel [data-rc-codigo] { max-width: 11rem; letter-spacing: .2em; text-align: center; }
.reg-codigo [hidden] { display: none; }

.reg-aviso { margin: 0 0 1rem; font-size: .9rem; color: var(--dsmk-ink-700, #3d4a5c); }
