/* YouTeacher student themes. Scoped to authenticated student screens. */
:root,[data-yt-theme="soft"]{
  --yt-bg:#29384f;--yt-side:#19253b;--yt-card:#364860;--yt-card-alt:#3d506a;
  --yt-line:#526780;--yt-text:#f4f7fd;--yt-muted:#c1cede;--yt-accent:#c3b4ff;
  --yt-track:#23334b;--yt-wash:#423d67;--yt-shadow:0 8px 24px #11223916;
}
[data-yt-theme="night"]{
  --yt-bg:#101934;--yt-side:#080f26;--yt-card:#1b2b4f;--yt-card-alt:#25365c;
  --yt-line:#394e79;--yt-text:#f4f7ff;--yt-muted:#b9c8e1;--yt-accent:#bdadff;
  --yt-track:#0d1b38;--yt-wash:#302c59;--yt-shadow:0 8px 24px #00092324;
}
[data-yt-theme="light"]{
  --yt-bg:#f5f5fb;--yt-side:#14182f;--yt-card:#fff;--yt-card-alt:#f0eff8;
  --yt-line:#e0e2ed;--yt-text:#23283f;--yt-muted:#656d88;--yt-accent:#654bcc;
  --yt-track:#e9e8f2;--yt-wash:#f1edff;--yt-shadow:0 8px 24px #22233e06;
}
body.yt-student-ui:not(.auth-landing-active){background:var(--yt-bg)}
body.yt-student-ui:not(.auth-landing-active) .app-shell{background:var(--yt-bg);width:min(100%,1600px)!important;grid-template-columns:224px minmax(0,1fr);overflow:visible!important}
body.yt-student-ui:not(.auth-landing-active) .main-area{background:var(--yt-bg);color:var(--yt-text);padding:26px 32px 40px;overflow:visible;min-width:0}
body.yt-student-ui:not(.auth-landing-active) .sidebar{background:var(--yt-side);padding:28px 16px 22px;position:sticky;top:0;align-self:start;height:100dvh;min-height:0;overflow-y:auto;color:#f4f6ff;border-right:1px solid #a6b6ed10}
body.yt-student-ui .sidebar-brand{font-size:23px;padding:0 9px 25px;gap:10px;justify-content:flex-start}
body.yt-student-ui .brand-mark{width:39px;height:39px;flex-basis:39px;border-radius:12px;background:linear-gradient(145deg,#987bff,#6948ed);box-shadow:0 5px 16px #6f52e52b}
body.yt-student-ui .brand-copy strong{font-size:22px;letter-spacing:-.5px}
body.yt-student-ui .brand-copy small{font-size:8px;letter-spacing:1.55px;color:#bac2df}
body.yt-student-ui .side-nav{gap:5px}
.yt-nav-heading{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:#9dacc8;margin:13px 12px 8px;font-weight:650}
body.yt-student-ui .side-link{min-height:46px;padding:11px 12px!important;border-radius:11px;font-size:13px;line-height:1.35;gap:11px;color:#c3cce0;box-shadow:none;border:1px solid transparent}
body.yt-student-ui .side-link:hover{background:#a6b6ed12;color:#fff;transform:none;box-shadow:none}
body.yt-student-ui .side-link.active{background:linear-gradient(105deg,#7754f1,#6548df);border-color:#b29aff66;box-shadow:0 4px 14px #6f43e026;color:#fff}
body.yt-student-ui .side-icon{width:20px;flex-basis:20px}
body.yt-student-ui .side-icon svg{width:20px;height:20px;stroke-width:1.7}
body.yt-student-ui .side-link .label{display:block}
body.yt-student-ui #sideAuthBtn{margin-top:15px;border-top:1px solid #7c92be24;border-radius:0;padding-top:18px!important;color:#aebbd1}
body.yt-student-ui .side-contact{margin-top:auto;padding-top:24px;border:0}
body.yt-student-ui .side-premium{background:linear-gradient(150deg,#b6a1fc13,#819bd308);border:1px solid #ac9fe433;border-radius:14px;padding:14px 12px}
body.yt-student-ui .side-premium h4{color:#eeeaff;font-size:12px;line-height:1.5}
body.yt-student-ui .side-premium p{font-size:11px;color:#b3bfd7;line-height:1.5;opacity:1}
body.yt-student-ui .side-premium button{font-size:11px;background:#8062ee;color:#fff;border:0;border-radius:8px;min-height:36px;padding:8px}
body.yt-student-ui:not(.onboarding-active):not(.auth-landing-active) #mainTopbar{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:minmax(46px,auto);align-items:center;gap:0 18px;min-height:68px!important;margin:0 auto 18px!important;padding:11px clamp(24px,3vw,40px)!important}
.yt-breadcrumb{grid-column:1;grid-row:1;display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;min-width:0;min-height:46px;padding-inline:clamp(12px,1.25vw,20px);color:var(--yt-muted);font-size:12px}
.yt-breadcrumb strong{color:var(--yt-text);font-weight:600}
.yt-next-action{grid-column:2;grid-row:1;align-self:stretch;display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;min-width:0;min-height:46px;padding-inline:clamp(12px,1.25vw,20px);text-align:center}
.yt-next-action-label{display:block;width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body.yt-student-ui .context-back-bar{grid-column:3;grid-row:1;align-self:center;justify-self:center;max-width:100%}
body.yt-student-ui .main-topbar .welcome{display:none}
body.yt-student-ui .top-user-wrap{display:flex!important}
body.yt-student-ui .top-user-wrap .user-badge{border:1px solid var(--yt-line);background:var(--yt-card);color:var(--yt-text);border-radius:24px;font-size:12px;padding:9px 15px;max-width:200px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;min-height:40px;width:auto;cursor:pointer}
body.yt-student-ui .context-back-bar{background:var(--yt-card-alt);border-color:var(--yt-line);color:var(--yt-accent);box-shadow:none}
body.yt-student-ui [data-yt-local-back="true"]{display:none!important}
body.yt-student-ui :is(.vocab-category-card,.profession-topic-card).is-route-selected,
body.yt-student-ui :is(.vocab-category-card,.profession-topic-card)[aria-current="step"]{background:var(--yt-wash)!important;border-color:var(--yt-accent)!important;box-shadow:inset 4px 0 0 var(--yt-accent)!important}
body.yt-student-ui .profession-card.is-route-selected,
body.yt-student-ui .profession-card[aria-current="step"]{background:var(--yt-card)!important;border-color:var(--yt-accent)!important;box-shadow:0 0 0 2px var(--yt-accent),var(--yt-shadow)!important}
body:not(.yt-student-ui) .yt-breadcrumb{display:none}
body.yt-student-ui .yt-home-heading{margin:0 0 23px}
body.yt-student-ui .home-hello{color:var(--yt-muted);font-size:14px;margin:0 0 6px}
body.yt-student-ui .yt-home-heading h1{color:var(--yt-text);font-size:clamp(24px,2.1vw,31px);font-weight:700;line-height:1.2;letter-spacing:-1px;margin:0}
body.yt-student-ui .home-hero.yt-home-hero{position:relative;isolation:isolate;display:flex;align-items:center;min-height:300px;border-radius:22px;padding:32px 36px;overflow:hidden;background:radial-gradient(ellipse at 82% 60%,#4678ba88,transparent 51%),linear-gradient(118deg,#7160cf 0%,#50438e 40%,#1b2a56 80%);color:#fff;box-shadow:var(--yt-shadow);margin:0 0 22px}
body.yt-student-ui .yt-hero-copy{position:relative;z-index:1;max-width:60%}
.yt-eyebrow{font-size:10px;letter-spacing:1.9px;font-weight:600;display:block;color:#e0d9ff;margin:0 0 15px}
body.yt-student-ui .yt-hero-copy h2{font-size:clamp(31px,3vw,43px);line-height:1.04;letter-spacing:-1.3px;font-weight:750;margin:0 0 16px;color:#fff}
body.yt-student-ui .yt-hero-copy p{color:#e6e4f5;font-size:13px;line-height:1.6;margin:0 0 21px}
body.yt-student-ui .yt-primary{display:inline-flex;width:auto;align-items:center;justify-content:center;gap:24px;background:#7351e9;color:#fff;border:1px solid #b69bff55;border-radius:10px;min-height:44px;padding:11px 19px;font-family:inherit;font-size:13px;font-weight:650;line-height:1.3;cursor:pointer;box-shadow:0 4px 12px #080a2112;transition:background .15s}
body.yt-student-ui .yt-primary:hover{background:#6541df}
body.yt-student-ui .yt-hero-copy .yt-primary{background:#fff;color:#453293;border:0;box-shadow:0 4px 18px #17133220}
.yt-hero-planet{position:absolute;z-index:0;width:49%;height:385px;right:0;top:-2px;pointer-events:none}
.yt-hero-planet canvas{width:100%;height:100%;display:block}
.yt-orbit-label{position:absolute;top:31px;right:24px;color:#dae9fa;background:#142d4f60;border:1px solid #b8d3ff55;border-radius:22px;padding:9px 15px;font-size:10px;letter-spacing:.7px;transform:rotate(4deg)}
.yt-earth-unavailable{background:radial-gradient(circle at 55% 52%,#6a95bc44,transparent 65%)}
.yt-home-learning{display:grid;grid-template-columns:1.15fr 1fr;gap:20px;margin:0 0 27px}
.yt-resume-card,.yt-progress-card{background:var(--yt-card);border:1px solid var(--yt-line);border-radius:18px;box-shadow:var(--yt-shadow);padding:23px;min-width:0}
.yt-section-label{font-size:10px;letter-spacing:1.6px;color:var(--yt-muted);font-weight:650;margin:0 0 18px}
.yt-resume-title{display:flex;gap:13px;align-items:center}
.yt-course-flag{width:40px;height:30px;object-fit:cover;border-radius:6px;flex-shrink:0;box-shadow:0 0 0 1px #15244112}
body.yt-student-ui .yt-resume-title h2,body.yt-student-ui .yt-resume-card h2{font-size:20px;font-weight:650;line-height:1.25;margin:0 0 5px;color:var(--yt-text)}
.yt-resume-title p{color:var(--yt-muted);font-size:12px;margin:0}
.yt-resume-hint{color:var(--yt-muted);font-size:12px;line-height:1.6;margin:17px 0}
.yt-progress-card{display:flex;align-items:center;justify-content:space-between;gap:18px}
.yt-progress-copy{min-width:0}
.yt-progress-copy h2{color:var(--yt-text);font-size:20px;font-weight:650;margin:0 0 10px}
.yt-progress-copy p{color:var(--yt-muted);font-size:12px;line-height:1.6;max-width:210px;margin:0 0 17px}
body.yt-student-ui .yt-text-button{display:inline-flex;gap:18px;align-items:center;width:auto;padding:8px 0;min-height:38px;background:transparent;color:var(--yt-accent);border:0;font:inherit;font-size:12px;font-weight:600;cursor:pointer}
.yt-progress-ring{--progress:0%;position:relative;width:118px;height:118px;flex:0 0 118px;border-radius:50%;background:conic-gradient(#9a7cf8 var(--progress),var(--yt-track) 0);display:flex;flex-direction:column;align-items:center;justify-content:center;isolation:isolate}
.yt-progress-ring:before{content:"";position:absolute;inset:9px;border-radius:50%;background:var(--yt-card);z-index:-1}
.yt-progress-ring strong{color:var(--yt-text);font-size:25px;font-weight:700;letter-spacing:-1px}
.yt-progress-ring small{color:var(--yt-muted);font-size:10px;margin-top:4px}
body.yt-student-ui .home-sec-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 13px}
body.yt-student-ui .home-sec-head h2{font-size:15px;color:var(--yt-text);font-weight:650;letter-spacing:-.1px;margin:0}
body.yt-student-ui .home-sec-head button{background:transparent;color:var(--yt-accent);border:0;font-size:12px;min-height:36px;width:auto;font-weight:600;padding:8px 0}
body.yt-student-ui .home-langs{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin:0 0 27px}
body.yt-student-ui .home-lang-card{width:100%;min-width:0;text-align:left;padding:17px;border:1px solid var(--yt-line);background:var(--yt-card);border-radius:15px;box-shadow:none;cursor:pointer;color:var(--yt-text)}
body.yt-student-ui .home-lang-card:hover{background:var(--yt-card-alt);transform:none;border-color:var(--yt-accent);box-shadow:none}
body.yt-student-ui .home-lang-card.yt-current-language{border-color:#9d88db}
body.yt-student-ui .hl-top{display:flex;align-items:center;gap:12px;margin-bottom:16px}
body.yt-student-ui .hl-top .yt-course-flag{width:36px;height:27px;object-fit:cover;border-radius:4px;box-shadow:none}
body.yt-student-ui .hl-name{color:var(--yt-text);font-size:14px;font-weight:650}
body.yt-student-ui .hl-sub{color:var(--yt-muted);font-size:11px;text-transform:none;margin-top:3px}
body.yt-student-ui .hl-bar{height:4px;background:var(--yt-track);border-radius:8px;margin:0 0 10px;overflow:hidden}
body.yt-student-ui .hl-bar span{display:block;height:100%;border-radius:8px;background:#ab94fa}
body.yt-student-ui .hl-meta{color:var(--yt-muted);font-size:10px;font-weight:400}
.yt-country-arrow{margin-left:auto;color:var(--yt-muted);font-size:16px;align-self:flex-start}
.yt-empty-summary{font-size:13px;color:var(--yt-muted);padding:20px;background:var(--yt-card);border:1px solid var(--yt-line);border-radius:14px}
body.yt-student-ui .home-explore{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0}
body.yt-student-ui .home-ex-card{position:relative;min-width:0;min-height:160px;text-align:left;padding:20px;border-radius:16px;border:1px solid var(--yt-line);background:var(--yt-card);box-shadow:none;cursor:pointer}
body.yt-student-ui .home-ex-card:hover{background:var(--yt-card-alt);border-color:var(--yt-accent);transform:none}
body.yt-student-ui .home-ex-card h3{color:var(--yt-text);font-size:14px;font-weight:650;margin:12px 0 7px}
body.yt-student-ui .home-ex-card p{color:var(--yt-muted);font-size:11px;font-weight:400;line-height:1.6;max-width:88%;margin:0}
body.yt-student-ui .home-ex-card .ex-ico{width:35px;height:35px;border-radius:10px;background:#8e72ed24;color:var(--yt-accent)}
body.yt-student-ui .home-ex-card .ex-ico svg{width:19px;height:19px}
body.yt-student-ui .home-ex-card.tint-b .ex-ico{background:#64b0ed22;color:#85bef0}
body.yt-student-ui .home-ex-card.tint-y .ex-ico{background:#d9b45a22;color:#dfc486}
[data-yt-theme="light"] body.yt-student-ui .home-ex-card.tint-b .ex-ico{color:#3876c0}
[data-yt-theme="light"] body.yt-student-ui .home-ex-card.tint-y .ex-ico{color:#a0681b}
body.yt-student-ui .home-ex-card .ex-arrow{color:var(--yt-muted);right:20px;bottom:20px}
/* Appearance settings use native radios: keyboard arrows, focus and checked state. */
body.yt-student-ui #placeholder-ajustes{background:transparent;color:var(--yt-text);box-shadow:none;padding:0}
body.yt-student-ui .ajustes-home{max-width:900px;margin:0}
body.yt-student-ui .ajustes-home[hidden]{display:none!important}
body.yt-student-ui .ajustes-home h2{color:var(--yt-text);font-size:28px;letter-spacing:-.7px}
body.yt-student-ui .ajustes-home>p{color:var(--yt-muted);margin:10px 0 27px;font-size:13px}
body.yt-student-ui .ajustes-home .ajustes-card + .ajustes-card{margin-top:12px}
body.yt-student-ui .ajustes-appearance-card b{color:var(--yt-accent);font-weight:750}
.yt-appearance{border:1px solid var(--yt-line);background:var(--yt-card);border-radius:20px;padding:26px;margin:0 0 24px;min-width:0}
.yt-appearance legend{float:left;width:100%;font-size:18px;color:var(--yt-text);font-weight:650;padding:0;margin:0 0 8px}
.yt-appearance>p{clear:both;font-size:13px;color:var(--yt-muted);line-height:1.6;margin:0 0 22px}
.yt-theme-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;clear:both}
.yt-theme-option{display:block;min-width:0;position:relative;border:2px solid var(--yt-line);border-radius:14px;padding:10px 10px 16px;cursor:pointer;background:var(--yt-bg)}
.yt-theme-option.is-selected{border-color:#ac94ff;background:var(--yt-wash)}
.yt-theme-option:has(input:focus-visible){outline:3px solid var(--yt-accent);outline-offset:4px}
.yt-theme-option input{position:absolute;right:14px;bottom:32px;width:17px;height:17px;min-height:0;padding:0;margin:0;accent-color:#7252dc;cursor:pointer}
.yt-theme-name{display:block;font-size:13px;font-weight:650;color:var(--yt-text);margin:13px 25px 5px 3px}
.yt-theme-option small{display:block;font-size:10px;font-weight:400;color:var(--yt-muted);margin-left:3px;padding-right:24px;line-height:1.5}
.yt-theme-preview{display:flex;gap:7px;width:100%;height:117px;background:#29384f;border-radius:7px;overflow:hidden;border:1px solid #7383a030}
.yt-theme-preview>i{width:25%;background:#19253b;padding-top:28px}
.yt-theme-preview>i:after{content:"";display:block;background:#8665e8;height:8px;margin:0 5px;border-radius:2px;box-shadow:0 16px 0 #8599bb30,0 32px 0 #8599bb30,0 48px 0 #8599bb30}
.yt-theme-preview>b{display:flex;align-content:flex-start;flex-wrap:wrap;gap:6px;flex:1;padding:14px 8px 10px 0}
.yt-theme-preview em{width:100%;height:43px;background:linear-gradient(120deg,#7d69c4,#233d67);border-radius:4px;position:relative;overflow:hidden}
.yt-theme-preview em:after{content:"";position:absolute;right:6px;top:7px;width:35px;height:35px;border-radius:50%;background:radial-gradient(circle at 35% 25%,#9bb9ae,#496f8e 45%,#273b60 80%)}
.yt-theme-preview b>span{height:27px;flex:1;border-radius:4px;background:#40536e;border:1px solid #7383a025}
.yt-preview-night{background:#101934}.yt-preview-night>i{background:#080f26}.yt-preview-night b>span{background:#1b2b4f}
.yt-preview-light{background:#f5f5fb}.yt-preview-light>i{background:#14182f}.yt-preview-light b>span{background:#fff}
.yt-appearance .yt-theme-note{font-size:11px;margin:20px 0 0}
.yt-appearance .yt-theme-status{color:var(--yt-accent);font-size:12px;min-height:20px;margin:8px 0 0}
body.yt-student-ui .ajustes-card{background:var(--yt-card);border-color:var(--yt-line);box-shadow:none;padding:20px;border-radius:17px}
body.yt-student-ui .ajustes-card strong{color:var(--yt-text)}
body.yt-student-ui .ajustes-card span,body.yt-student-ui .ajustes-card .go{color:var(--yt-muted)}
/* Realistic country picker and accessible companion country list. */
body.yt-student-ui #dashboard-language-picker .lp-hero-banner{background:transparent;color:var(--yt-text);padding:0!important;border-radius:0;box-shadow:none;min-height:0;overflow:visible;margin:0 0 23px}
body.yt-student-ui #dashboard-language-picker .lp-hero-banner h2{color:var(--yt-text);font-size:30px;font-weight:700;letter-spacing:-.8px;max-width:100%;margin:0 0 8px}
body.yt-student-ui #dashboard-language-picker .lp-hero-banner p{color:var(--yt-muted);font-size:13px;margin:0}
body.yt-student-ui #dashboard-language-picker .lp-hero-art{display:none}
body.yt-student-ui #ytLanguageGlobe{color:var(--yt-text);margin-top:0}
body.yt-student-ui #ytLanguageGlobe .yt-world{grid-template-columns:minmax(0,1.6fr) minmax(290px,1fr);background:var(--yt-card);border:1px solid var(--yt-line);border-radius:22px;box-shadow:var(--yt-shadow)}
body.yt-student-ui #ytLanguageGlobe .yt-world-scene{background:radial-gradient(ellipse at 50% 47%,#234268 0%,#10243e 47%,#101d33 80%);padding:23px 16px 18px;min-width:0}
body.yt-student-ui #ytLanguageGlobe .yt-world-instruction{color:#c5d6ea;font-size:12px;margin:0 10px 4px}
body.yt-student-ui #ytLanguageGlobe .yt-world-stage{height:460px}
body.yt-student-ui #ytLanguageGlobe .yt-world-panel{background:var(--yt-card);color:var(--yt-text);padding:27px;gap:22px}
body.yt-student-ui #ytLanguageGlobe .yt-world-panel label{color:var(--yt-muted);font-size:11px;font-weight:600}
body.yt-student-ui #ytLanguageGlobe :is(#ytWorldSearch,#ytWorldCountry){background:var(--yt-bg);border:1px solid var(--yt-line);border-radius:10px;color:var(--yt-text);font-family:inherit;font-size:13px;min-height:45px;margin:7px 0 0;padding:10px 12px;color-scheme:dark}
[data-yt-theme="light"] body.yt-student-ui #ytLanguageGlobe :is(#ytWorldSearch,#ytWorldCountry){color-scheme:light}
body.yt-student-ui #ytLanguageGlobe #ytWorldSearch::placeholder{color:var(--yt-muted);opacity:.8}
body.yt-student-ui #ytLanguageGlobe .yt-world-country-head{border-bottom:1px solid var(--yt-line);padding:0 0 18px}
body.yt-student-ui #ytLanguageGlobe .yt-world-country-head h3{color:var(--yt-text);font-size:25px}
body.yt-student-ui #ytLanguageGlobe .yt-world-eyebrow{color:var(--yt-accent);font-size:10px;letter-spacing:1.5px}
body.yt-student-ui #ytLanguageGlobe .yt-world-language{background:var(--yt-card-alt);color:var(--yt-text);border:1px solid var(--yt-line);border-radius:12px;padding:14px 12px;min-height:67px;box-shadow:none}
body.yt-student-ui #ytLanguageGlobe .yt-world-language[aria-pressed="true"]{background:var(--yt-wash);border:1.5px solid #a58bed}
body.yt-student-ui #ytLanguageGlobe .yt-world-language:hover:not(:disabled){border-color:var(--yt-accent)}
body.yt-student-ui #ytLanguageGlobe .yt-world-language:disabled{opacity:.65;background:var(--yt-bg)}
body.yt-student-ui #ytLanguageGlobe .yt-world-lang-copy strong{color:var(--yt-text);font-size:14px}
body.yt-student-ui #ytLanguageGlobe .yt-world-lang-copy small,body.yt-student-ui #ytLanguageGlobe .yt-world-state,body.yt-student-ui #ytLanguageGlobe .yt-world-message,body.yt-student-ui #ytLanguageGlobe .yt-world-selection{color:var(--yt-muted);font-size:11px;line-height:1.6}
body.yt-student-ui #ytLanguageGlobe .yt-world-state{background:var(--yt-card-alt);padding:4px 7px}
body.yt-student-ui #ytLanguageGlobe .yt-world-choice{border-color:var(--yt-line);background:var(--yt-bg);flex-shrink:0}
body.yt-student-ui #ytLanguageGlobe [aria-pressed="true"] .yt-world-choice{background:#8262e8;color:white;border-color:#b79bff}
body.yt-student-ui #ytLanguageGlobe .yt-world-continue{border-radius:11px;min-height:46px;background:#7351e9;color:#fff;box-shadow:none;font-size:13px}
body.yt-student-ui #ytLanguageGlobe .yt-world-suggest{color:var(--yt-accent);font-size:11px}
body.yt-student-ui #ytLanguageGlobe .yt-world-pin{border-radius:14px;border:1px solid #eaf1ff;padding:8px;box-shadow:0 4px 12px #00062c44}
body.yt-student-ui #ytLanguageGlobe .yt-world-pin[aria-pressed="true"]{box-shadow:0 0 0 3px #b39bff,0 4px 18px #00062c44}
body.yt-student-ui #ytLanguageGlobe .yt-world-tools{gap:7px;margin-top:8px}
body.yt-student-ui #ytLanguageGlobe .yt-world-tools button{border:1px solid #8ba3c74a;background:#d7e7ff13;color:#ecf2ff;border-radius:10px;font-size:13px;min-height:42px}
body.yt-student-ui #ytLanguageGlobe .yt-world-source{margin-top:15px;font-size:9px;color:#9db1cb}
body.yt-student-ui #ytLanguageGlobe .yt-world-source a{color:#9db1cb}
/* Existing lesson/grammar surfaces retain their readable content colors. */
body.yt-student-ui :is(.vocab-header,.profession-topic-head){border-color:var(--yt-line)}
body.yt-student-ui :is(.vocab-header,.profession-topic-head) :is(h1,h2){color:var(--yt-text)}
body.yt-student-ui :is(.vocab-header,.profession-topic-head)>p{color:var(--yt-muted)}

/* Every student workspace uses the selected appearance, not the legacy white cards. */
body.yt-student-ui:not(.auth-landing-active) :is(
  .language-picker-page,.lang-profession-wrap,.profession-topic-page,.vocab-page,
  .activity-page,.placeholder-page,.vocab-db-page
){color:var(--yt-text)}

body.yt-student-ui:not(.auth-landing-active) :is(
  .lp-pop-card,.lp-country,.lp-suggest,.lang-summary,.vocab-category-card,
  .profession-card,.profession-view-all,.profession-footer-note,
  .profession-topic-context,.profession-topic-context-icon,.profession-topic-language,
  .profession-topic-card,.activity-page,.activity-country-context,.skill-card,
  .activity-game-card,.activity-progress,.activity-challenge-toolbar,.activity-mini-game,
  .placeholder-page,.vocab-modern-card,.vocab-progress-box
){
  background:var(--yt-card);border-color:var(--yt-line);box-shadow:none;
}

body.yt-student-ui:not(.auth-landing-active) :is(
  .lp-pop-card:hover,.lp-pop-card.selected,.lp-country:hover,.lp-country.selected,
  .vocab-category-card:hover,.profession-card:hover,.profession-topic-card:hover,
  .skill-card:hover,.skill-card.active,.activity-game-card:hover
){background:var(--yt-card-alt);border-color:var(--yt-accent);box-shadow:none}

body.yt-student-ui:not(.auth-landing-active) :is(
  .lp-title h1,.lp-section-title,.lp-pop-name,.lp-country-name,.lp-suggest-text strong,
  .lang-summary .name,.vocab-title-wrap h1,.vocab-section-title,.vocab-cat-name,
  .profession-card-name,.profession-footer-note strong,.profession-topic-head h1,
  .profession-topic-context-copy strong,.profession-topic-section-title,.profession-topic-card-name,
  .activity-section-title,.skill-card .name,.game-main h3,.activity-progress-intro strong,
  .activity-challenge-toolbar .challenge-copy strong,.activity-mini-game h3,
  .placeholder-inner h2,.vocab-word,.vocab-progress-info strong
){color:var(--yt-text)}

body.yt-student-ui:not(.auth-landing-active) :is(
  .lp-title p,.lp-pop-country,.lp-country-lang,.lp-arrow,.lp-suggest-text span,
  .lang-summary .small,.vocab-title-wrap p,.vocab-cat-lang,.vocab-cat-native,
  .vocab-cat-arrow,.profession-card-count,.profession-arrow,.profession-progress-pct,
  .profession-topic-head p,.profession-topic-context-copy :is(small,span),
  .profession-topic-card-desc,.profession-topic-card-arrow,.game-main p,.game-meta span,
  .game-meta strong,.activity-country-selected :is(small,strong),.activity-progress-intro span,
  .skill-progress small,.activity-challenge-toolbar .challenge-copy span,.activity-mini-game p,
  .placeholder-inner p,.vocab-translation,.vocab-example-text,.vocab-db-wrap > p,.vocab-db-note
){color:var(--yt-muted)}

body.yt-student-ui:not(.auth-landing-active) :is(
  .lp-search input,.lp-filter,.lp-all-tools .lp-search input,.lang-profession-search input,
  .lang-filter-btn,.vocab-search input,.vocab-filter-btn,.vocab-list-toolbar input,
  .vocab-list-toolbar select,.vocab-favorite-filter,.vocab-db-toolbar input,
  .vocab-db-toolbar select,.vocab-db-form input,.vocab-db-form select,.activity-answer-row input,
  .profession-topic-back,.activity-country-back,.activity-challenge-toolbar .challenge-back
){background:var(--yt-card-alt);border-color:var(--yt-line);color:var(--yt-text);color-scheme:dark}

[data-yt-theme="light"] body.yt-student-ui:not(.auth-landing-active) :is(
  .lp-search input,.lp-filter,.lp-all-tools .lp-search input,.lang-profession-search input,
  .lang-filter-btn,.vocab-search input,.vocab-filter-btn,.vocab-list-toolbar input,
  .vocab-list-toolbar select,.vocab-favorite-filter,.vocab-db-toolbar input,
  .vocab-db-toolbar select,.vocab-db-form input,.vocab-db-form select,.activity-answer-row input,
  .profession-topic-back,.activity-country-back,.activity-challenge-toolbar .challenge-back
){color-scheme:light}

body.yt-student-ui:not(.auth-landing-active) :is(
  .lp-step,.lp-word-pill,.vocab-native-tag,.vocab-cat-count,.profession-topic-card-count,
  .profession-topic-chip,.activity-challenge-toolbar .challenge-step,.game-tag
){background:var(--yt-wash);color:var(--yt-accent)}

body.yt-student-ui:not(.auth-landing-active) :is(
  .profession-progress-track,.activity-progress .skill-progress .ring
){background:var(--yt-track)}
body.yt-student-ui:not(.auth-landing-active) .activity-progress .skill-progress .ring::after{background:var(--yt-card)}
body.yt-student-ui:not(.auth-landing-active) :is(.activity-country-back,.profession-topic-back,.activity-challenge-toolbar .challenge-back){color:var(--yt-accent)}
body.yt-student-ui:not(.auth-landing-active) .vocab-modern-actions button{background:var(--yt-card-alt);border-color:var(--yt-line);color:var(--yt-text)}
body.yt-student-ui:not(.auth-landing-active) :is(.vocab-letter,.game-icon,.profession-topic-card-icon,.vocab-title-icon){background:var(--yt-wash);color:var(--yt-accent)}
body.yt-student-ui:not(.auth-landing-active) .profession-topic-card.is-actions-tasks{
  border-style:dashed!important;
  border-color:color-mix(in srgb,var(--yt-accent) 58%,var(--yt-line))!important;
  background:linear-gradient(135deg,var(--yt-card),var(--yt-wash))!important;
}
body.yt-student-ui:not(.auth-landing-active) .profession-topic-card.is-actions-tasks .profession-topic-card-icon{
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--yt-accent) 45%,transparent);
}
body.yt-student-ui:not(.auth-landing-active) .profession-topic-card.is-actions-tasks.is-empty .profession-topic-card-count{
  border:1px dashed var(--yt-accent);
  border-radius:999px;
  padding:5px 8px;
}
body.yt-student-ui:not(.auth-landing-active) .profession-topic-card.is-master-bank{
  border-left:4px solid #15a789;
}
body.yt-student-ui:not(.auth-landing-active) .profession-topic-card.is-master-bank .profession-topic-card-count{
  background:#e9faf6;color:#087866;font-weight:800;
}
body.yt-student-ui :is(.yt-primary,.side-link,.yt-text-button,.home-ex-card,.home-lang-card,.ajustes-card):focus-visible{outline:3px solid #c0a8ff;outline-offset:3px}
@media(min-width:761px) and (max-width:1050px){
  body.yt-student-ui:not(.auth-landing-active) .app-shell{grid-template-columns:190px minmax(0,1fr)}
  body.yt-student-ui:not(.auth-landing-active) .sidebar{padding:24px 12px}
  body.yt-student-ui .brand-copy strong{font-size:18px}
  body.yt-student-ui .brand-copy small{font-size:7px;letter-spacing:1px}
  body.yt-student-ui .sidebar-brand{gap:8px;padding:0 4px 20px}
  body.yt-student-ui:not(.auth-landing-active) .main-area{padding:22px}
  body.yt-student-ui .home-hero.yt-home-hero{padding:28px;min-height:290px}
  .yt-hero-planet{width:48%;top:25px;height:300px}
  .yt-orbit-label{top:0;right:12px;font-size:9px;padding:7px 10px}
  .yt-home-learning{grid-template-columns:1fr;gap:14px}
  .yt-progress-card{min-height:178px}
  .yt-theme-options{gap:10px}
  .yt-theme-preview{height:100px}
  body.yt-student-ui #ytLanguageGlobe .yt-world{grid-template-columns:minmax(0,1fr)}
  body.yt-student-ui #ytLanguageGlobe .yt-world-stage{height:430px}
  body.yt-student-ui #ytLanguageGlobe .yt-world-languages{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  body.yt-student-ui:not(.auth-landing-active) .app-shell{display:block!important;width:100%!important}
  body.yt-student-ui:not(.auth-landing-active) .sidebar{position:sticky!important;top:0;width:100%;height:auto!important;padding:8px 10px!important;min-height:0;overflow:hidden!important;background:var(--yt-side);border-bottom:1px solid #a6b6ed20}
  body.yt-student-ui .sidebar-brand,body.yt-student-ui .side-contact,body.yt-student-ui .yt-nav-heading{display:none}
  body.yt-student-ui .side-nav{display:flex;flex-direction:row;gap:4px;overflow-x:auto!important;width:100%;scrollbar-width:thin;scrollbar-color:#7584a34d transparent;padding:2px 2px 4px}
  body.yt-student-ui .side-link{width:auto;min-width:63px;min-height:53px;flex:0 0 auto;flex-direction:column;gap:4px;padding:6px 9px!important;border-radius:9px!important}
  body.yt-student-ui .side-link .label{display:block!important;font-size:9px;line-height:1.2}
  body.yt-student-ui .side-link .side-icon{width:18px;flex-basis:auto;height:19px}
  body.yt-student-ui .side-link svg{width:18px;height:18px}
  body.yt-student-ui #sideAuthBtn{margin-top:0;border-top:0;padding:6px 9px!important}
  body.yt-student-ui:not(.auth-landing-active) .main-area{padding:18px 16px 28px}
  body.yt-student-ui:not(.onboarding-active):not(.auth-landing-active) #mainTopbar{grid-template-columns:minmax(86px,1.2fr) minmax(64px,1fr) minmax(88px,.95fr);grid-template-rows:minmax(48px,auto);gap:0 clamp(3px,1.4vw,7px)!important;min-height:64px!important;margin-bottom:21px!important;padding:8px clamp(10px,3vw,14px)!important}
  .yt-breadcrumb{grid-column:1;grid-row:1;min-height:48px;padding-inline:clamp(3px,1.5vw,7px);gap:7px;font-size:9px;overflow-x:auto;white-space:nowrap}
  .yt-breadcrumb-track{min-height:48px;justify-content:flex-start}
  .yt-next-action{grid-column:2;grid-row:1;min-height:48px;padding-inline:clamp(3px,1.5vw,7px);overflow:hidden;font-size:8px;line-height:1.2;white-space:nowrap;text-overflow:ellipsis}
  body.yt-student-ui .context-back-bar{grid-column:3;grid-row:1;justify-self:end;max-width:100%;min-height:36px!important;padding:7px clamp(6px,1.7vw,9px)!important;overflow:hidden;font-size:9px!important;white-space:nowrap}
  body.yt-student-ui .context-back-bar span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .yt-breadcrumb>*{display:inline-flex!important}
  body.yt-student-ui .top-user-wrap .user-badge{font-size:11px;min-height:36px;padding:7px 12px;max-width:135px}
  body.yt-student-ui .home-hello{font-size:12px;margin-bottom:8px}
  body.yt-student-ui .yt-home-heading h1{font-size:25px;letter-spacing:-.7px;line-height:1.25}
  body.yt-student-ui .yt-home-heading{margin-bottom:19px}
  body.yt-student-ui .home-hero.yt-home-hero{min-height:310px;padding:26px 24px;align-items:flex-start;border-radius:18px;margin-bottom:17px}
  body.yt-student-ui .yt-hero-copy{max-width:72%}
  body.yt-student-ui .yt-hero-copy h2{font-size:33px;line-height:1.04;margin-bottom:13px}
  body.yt-student-ui .yt-hero-copy p{font-size:11px;line-height:1.6;max-width:220px;margin-bottom:18px}
  .yt-eyebrow{font-size:8px;letter-spacing:1.5px;white-space:nowrap;margin-bottom:13px}
  .yt-hero-planet{width:235px;height:255px;right:-62px;top:80px;opacity:.8}
  .yt-orbit-label{display:none}
  body.yt-student-ui .yt-primary{min-height:43px;font-size:12px;padding:11px 15px;gap:15px}
  .yt-home-learning{grid-template-columns:1fr;gap:14px;margin-bottom:23px}
  .yt-resume-card,.yt-progress-card{padding:20px;border-radius:16px}
  .yt-section-label{font-size:9px;margin-bottom:15px}
  .yt-progress-ring{width:104px;height:104px;flex-basis:104px}
  .yt-progress-ring strong{font-size:24px}
  .yt-progress-copy h2{font-size:19px}
  body.yt-student-ui .home-langs{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:23px}
  body.yt-student-ui .home-lang-card{padding:14px 11px}
  body.yt-student-ui .hl-top{gap:8px;flex-wrap:wrap}
  body.yt-student-ui .hl-top .yt-course-flag{width:27px;height:20px}
  body.yt-student-ui .hl-name{font-size:12px}
  body.yt-student-ui .hl-sub{font-size:9px}
  .yt-country-arrow{display:none}
  body.yt-student-ui .hl-meta{font-size:9px}
  body.yt-student-ui .home-explore{grid-template-columns:1fr;gap:10px}
  body.yt-student-ui .home-ex-card{min-height:112px;padding:18px 20px 18px 72px}
  body.yt-student-ui .home-ex-card .ex-ico{position:absolute;left:19px;top:23px}
  body.yt-student-ui .home-ex-card h3{margin:3px 0 7px}
  body.yt-student-ui .home-ex-card p{max-width:92%;font-size:11px}
  .yt-appearance{padding:21px 15px;border-radius:17px}
  .yt-theme-options{grid-template-columns:1fr;gap:12px}
  .yt-theme-option{display:grid;grid-template-columns:125px 1fr;grid-template-rows:auto auto;column-gap:16px;padding:10px 34px 10px 10px;align-items:center}
  .yt-theme-preview{grid-row:1/3;height:87px}
  .yt-theme-name{align-self:end;margin:0 0 6px;font-size:13px}
  .yt-theme-option small{align-self:start;padding:0;margin:0;font-size:10px}
  .yt-theme-option input{right:11px;bottom:calc(50% - 8px)}
  body.yt-student-ui .ajustes-card{padding:17px}
  body.yt-student-ui .ajustes-card span{font-size:11px;line-height:1.5}
  body.yt-student-ui #dashboard-language-picker .lp-hero-banner h2{font-size:28px;max-width:100%}
  body.yt-student-ui #dashboard-language-picker .lp-hero-banner p{font-size:12px;line-height:1.6;max-width:100%}
  body.yt-student-ui #ytLanguageGlobe .yt-world{grid-template-columns:1fr;border-radius:18px}
  body.yt-student-ui #ytLanguageGlobe .yt-world-scene{padding:20px 8px 16px}
  body.yt-student-ui #ytLanguageGlobe .yt-world-instruction{font-size:11px}
  body.yt-student-ui #ytLanguageGlobe .yt-world-stage{height:350px}
  body.yt-student-ui #ytLanguageGlobe .yt-world-panel{padding:23px 19px;gap:19px}
  body.yt-student-ui #ytLanguageGlobe .yt-world-languages{grid-template-columns:1fr}
  body.yt-student-ui #ytLanguageGlobe .yt-world-tools button{min-height:44px}
  body.yt-student-ui #ytLanguageGlobe :is(#ytWorldSearch,#ytWorldCountry){font-size:16px}
}
@media(max-width:360px){
  body.yt-student-ui:not(.auth-landing-active) .main-area{padding:16px 12px 25px}
  body.yt-student-ui:not(.onboarding-active):not(.auth-landing-active) #mainTopbar{grid-template-columns:minmax(78px,1.22fr) minmax(58px,.9fr) minmax(80px,.92fr);gap:0 3px!important;padding-inline:8px!important}
  .yt-breadcrumb{font-size:8px}
  .yt-next-action{font-size:7px}
  body.yt-student-ui .context-back-bar{font-size:8px!important;padding-inline:5px!important}
  body.yt-student-ui .yt-hero-copy{max-width:87%}
  .yt-theme-option{grid-template-columns:100px 1fr;column-gap:12px}
  body.yt-student-ui #ytLanguageGlobe .yt-world-stage{height:310px}
}
@media(prefers-reduced-motion:reduce){
  body.yt-student-ui .side-link,body.yt-student-ui .home-lang-card,body.yt-student-ui .home-ex-card,body.yt-student-ui .yt-primary{transition:none;animation:none}
}
/* Override earlier fixed-color !important patches in the legacy stylesheet. */
body.yt-student-ui:not(.auth-landing-active),
body.yt-student-ui:not(.auth-landing-active) :is(.app-shell,.main-area,#dashboard-home,#dashboard-language-picker){background:var(--yt-bg)!important}
body.yt-student-ui #placeholder-ajustes{background:transparent!important}
body.yt-student-ui:not(.auth-landing-active) .sidebar{background:var(--yt-side)!important}
body.yt-student-ui .sidebar .side-link,body.yt-student-ui .sidebar .side-link :is(.label,.side-icon){color:#c3cce0!important}
body.yt-student-ui .sidebar .side-link{background:transparent!important;border:1px solid transparent!important;box-shadow:none!important}
body.yt-student-ui .sidebar .side-link:hover{background:#a6b6ed12!important;border-color:#a6b6ed28!important;box-shadow:none!important}
body.yt-student-ui .sidebar .side-link.active{background:linear-gradient(105deg,#7754f1,#6548df)!important;border-color:#b29aff66!important;box-shadow:0 4px 14px #6f43e026!important;color:#fff!important}
body.yt-student-ui .sidebar .side-link.active :is(.label,.side-icon){color:#fff!important}
body.yt-student-ui .sidebar .brand-copy small{color:#bac2df!important}
body.yt-student-ui .sidebar .side-premium p{color:#b3bfd7!important}
body.yt-student-ui .sidebar .side-contact{border:0!important}
body.yt-student-ui .sidebar #sideAuthBtn{border-top:1px solid #7c92be24!important}
body.yt-student-ui :is(#placeholder-libros,#placeholder-podcast,#placeholder-favoritos,#placeholder-progreso,#placeholder-comunidad){background:var(--yt-card)!important;border:1px solid var(--yt-line);box-shadow:var(--yt-shadow)}
body.yt-student-ui .placeholder-inner h2{color:var(--yt-text)}
body.yt-student-ui .placeholder-inner p{color:var(--yt-muted)}
body.yt-student-ui.onboarding-active .app-shell{grid-template-columns:1fr!important}
body.yt-student-ui.onboarding-active .sidebar{display:none!important}
body.yt-student-ui.onboarding-active .main-area{color:#1f2937}
body.yt-student-ui.onboarding-active,body.yt-student-ui.onboarding-active :is(.app-shell,.main-area){background:#f4f2fb!important}
body.yt-student-ui #ytLanguageGlobe .yt-world-instruction{padding:0 10px!important;margin:0 0 4px!important;font-size:12px!important;color:#c5d6ea!important}
body.yt-student-ui #ytLanguageGlobe .yt-world-continue:disabled{background:var(--yt-track);color:var(--yt-muted);opacity:.65;cursor:not-allowed}

/* =========================================================
   A MEJORAR · práctica adaptativa v23
   Usa las mismas variables visuales del panel moderno actual.
   ========================================================= */
.improve-page{display:none;min-width:0;color:var(--yt-text)}
.improve-page.active{display:block}
.improve-hero{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:30px 32px;border:1px solid var(--yt-line);border-radius:20px;background:linear-gradient(118deg,var(--yt-card) 0%,var(--yt-card) 58%,var(--yt-wash) 100%);box-shadow:var(--yt-shadow);overflow:hidden;position:relative}
.improve-hero:after{content:"";position:absolute;width:220px;height:220px;border-radius:50%;right:-90px;top:-110px;background:#7654ee16;pointer-events:none}
.improve-eyebrow{display:block;color:var(--yt-accent);font-size:10px;font-weight:800;letter-spacing:1.5px;margin-bottom:8px}
.improve-hero h1{font-size:30px;line-height:1.1;letter-spacing:-.8px;margin:0 0 9px;color:var(--yt-text)}
.improve-hero p{max-width:610px;margin:0;color:var(--yt-muted);font-size:13px;line-height:1.6}
.improve-rule-card{position:relative;z-index:1;display:grid;grid-template-columns:auto auto;align-items:center;gap:2px 9px;min-width:250px;padding:15px 18px;border:1px solid var(--yt-line);border-radius:14px;background:var(--yt-card-alt);box-shadow:0 8px 20px #17203c0d}
.improve-rule-card b{grid-row:span 2;color:var(--yt-accent);font-size:24px;line-height:1}
.improve-rule-card span{color:var(--yt-muted);font-size:10px;line-height:1.35}
.improve-rule-card i{grid-column:1/-1;height:1px;background:var(--yt-line);margin:7px 0}
.improve-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:16px 0 22px}
.improve-stats article{display:flex;align-items:center;gap:13px;padding:17px 18px;border:1px solid var(--yt-line);border-radius:15px;background:var(--yt-card);box-shadow:var(--yt-shadow)}
.improve-stat-icon{display:grid;place-items:center;width:39px;height:39px;flex:0 0 39px;border-radius:12px;font-size:18px;font-weight:800}
.improve-stat-icon.purple{background:#eee9ff;color:#6d50ee}.improve-stat-icon.blue{background:#e4f1ff;color:#2874c7}.improve-stat-icon.green{background:#e5f8ee;color:#15834e}
.improve-stats strong{display:block;color:var(--yt-text);font-size:19px}.improve-stats small{display:block;margin-top:2px;color:var(--yt-muted);font-size:10px}
.improve-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:0 0 15px}
.improve-toolbar h2{margin:0 0 4px;color:var(--yt-text);font-size:20px}.improve-toolbar p{margin:0;color:var(--yt-muted);font-size:11px}
.improve-filters{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}
.improve-filter{border:1px solid var(--yt-line);border-radius:999px;background:var(--yt-card);color:var(--yt-muted);padding:8px 11px;font:700 10px/1 Inter,sans-serif;cursor:pointer}
.improve-filter:hover,.improve-filter.active{border-color:#8b6df0;background:var(--yt-wash);color:var(--yt-accent)}
.improve-status{min-height:0;color:var(--yt-muted);font-size:12px}
.improve-word-list{display:grid;gap:11px}
.improve-word-card{display:grid;grid-template-columns:58px minmax(170px,1fr) minmax(260px,1.4fr);align-items:center;gap:16px;padding:13px 15px;border:1px solid var(--yt-line);border-radius:16px;background:var(--yt-card);box-shadow:var(--yt-shadow)}
.improve-word-image{width:58px;height:58px;border-radius:13px;object-fit:cover;background:var(--yt-card-alt);border:1px solid var(--yt-line)}
.improve-word-copy{min-width:0}.improve-word-copy strong{display:block;color:var(--yt-text);font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.improve-word-copy span{display:block;margin-top:4px;color:var(--yt-muted);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.improve-skill-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:7px}
.improve-skill-button{display:flex;align-items:center;gap:8px;min-height:40px;border:1px solid var(--yt-line);border-radius:11px;background:var(--yt-card-alt);color:var(--yt-text);padding:7px 10px;cursor:pointer;font:700 10px/1.2 Inter,sans-serif;text-align:left}
.improve-skill-button:hover{border-color:#8b6df0;transform:translateY(-1px)}
.improve-skill-button b{display:grid;place-items:center;width:25px;height:25px;border-radius:8px;background:var(--yt-wash);color:var(--yt-accent);font-size:13px}
.improve-skill-button span small{display:block;color:var(--yt-muted);font-size:8px;margin-top:2px;font-weight:600}
.improve-empty{display:grid;place-items:center;text-align:center;min-height:260px;padding:35px;border:1px dashed var(--yt-line);border-radius:18px;background:var(--yt-card)}
.improve-empty span{display:grid;place-items:center;width:62px;height:62px;border-radius:20px;background:var(--yt-wash);color:var(--yt-accent);font-size:28px;margin-bottom:15px}.improve-empty h3{color:var(--yt-text);font-size:18px;margin:0 0 7px}.improve-empty p{color:var(--yt-muted);font-size:11px;line-height:1.6;max-width:400px;margin:0}
.improve-nav-count{min-width:19px;height:19px;border-radius:10px;background:#f04461;color:#fff;font-size:9px;font-weight:800;display:inline-grid;place-items:center;padding:0 5px;margin-left:auto}
.improve-nav-count[hidden]{display:none!important}
@media(max-width:980px){.improve-word-card{grid-template-columns:58px 1fr}.improve-skill-actions{grid-column:1/-1;justify-content:flex-start}.improve-rule-card{min-width:220px}}
@media(max-width:760px){.improve-hero{align-items:flex-start;flex-direction:column;padding:23px 20px}.improve-rule-card{width:100%;min-width:0}.improve-stats{grid-template-columns:1fr}.improve-toolbar{align-items:flex-start;flex-direction:column}.improve-filters{justify-content:flex-start}.improve-word-card{grid-template-columns:50px minmax(0,1fr);gap:12px;padding:12px}.improve-word-image{width:50px;height:50px}.improve-skill-actions{grid-column:1/-1}.improve-skill-button{flex:1 1 135px}.side-link[data-page="improve"]{position:relative}.improve-nav-count{position:absolute;top:4px;right:5px;margin:0}}

/* Resultados: una tarjeta y un cómputo independiente por habilidad. */
body.yt-student-ui #placeholder-progreso.skill-results-page{display:none;background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;color:var(--yt-text)}
body.yt-student-ui #placeholder-progreso.skill-results-page.active{display:block}
.skill-results-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px 30px;margin-bottom:18px;border:1px solid var(--yt-line);border-radius:20px;background:linear-gradient(118deg,var(--yt-card),var(--yt-wash));box-shadow:var(--yt-shadow)}
.skill-results-hero h1{margin:0 0 8px;color:var(--yt-text);font-size:29px;line-height:1.15;letter-spacing:-.7px}
.skill-results-hero p{max-width:750px;margin:0;color:var(--yt-muted);font-size:12px;line-height:1.6}
.skill-results-lock{flex:0 0 auto;border:1px solid var(--yt-line);border-radius:999px;background:var(--yt-card-alt);color:var(--yt-accent);padding:9px 13px;font-size:10px;font-weight:750;white-space:nowrap}
.skill-results-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.skill-result-card{min-width:0;padding:19px;border:1px solid var(--yt-line);border-radius:17px;background:var(--yt-card);box-shadow:var(--yt-shadow);color:var(--yt-text)}
.skill-result-head{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:11px}
.skill-result-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--yt-wash);color:var(--yt-accent);font-size:14px;font-weight:850}
.skill-result-head h2{margin:0 0 3px;color:var(--yt-text);font-size:16px}
.skill-result-head small{display:block;color:var(--yt-muted);font-size:9px}
.skill-result-head>strong{color:var(--yt-accent);font-size:21px}
.skill-result-bar{height:6px;margin:15px 0;border-radius:999px;background:var(--yt-track);overflow:hidden}
.skill-result-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#6c4be8,#a890ff)}
.skill-result-card dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:0 0 15px}
.skill-result-card dl div{padding:9px 7px;border:1px solid var(--yt-line);border-radius:10px;background:var(--yt-card-alt);text-align:center}
.skill-result-card dt{color:var(--yt-muted);font-size:8px;line-height:1.2}.skill-result-card dd{margin:3px 0 0;color:var(--yt-text);font-size:14px;font-weight:800}
body.yt-student-ui .skill-result-card button{width:100%;min-height:38px;border:1px solid var(--yt-line);border-radius:10px;background:var(--yt-wash);color:var(--yt-accent);font:700 10px/1.2 Inter,sans-serif;cursor:pointer}
body.yt-student-ui .skill-result-card button:hover{border-color:var(--yt-accent);background:var(--yt-card-alt)}
@media(max-width:900px){.skill-results-grid{grid-template-columns:1fr}}
@media(max-width:600px){.skill-results-hero{align-items:flex-start;flex-direction:column;padding:22px 19px}.skill-results-lock{white-space:normal}.skill-result-card{padding:15px}.skill-result-card dl{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
  body.yt-student-ui:not(.auth-landing-active) .sidebar-brand{display:none!important}
  body.yt-student-ui:not(.auth-landing-active) .main-area{padding:18px max(16px,env(safe-area-inset-right)) max(28px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))!important}
  body.yt-student-ui .side-link{flex:0 0 auto!important;width:auto!important;min-width:63px!important;height:55px!important;min-height:55px!important}
  body.yt-student-ui .side-link .side-icon{width:18px!important;height:19px!important;flex:0 0 19px!important}
  body.yt-student-ui .side-link .side-icon svg{width:18px!important;height:18px!important}
  body.yt-student-ui .sidebar #sideAuthBtn{border-top:0!important}
  body.yt-student-ui .home-hero.yt-home-hero{padding:26px 24px!important}
  body.yt-student-ui .home-langs{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.yt-student-ui .home-explore{grid-template-columns:1fr!important}
}

/* =========================================================
   THEMES · LEGACY STUDENT VIEWS
   The HTML still contains later fixed-white declarations. This final,
   student-scoped layer makes Profession, Grammar and Exercises consume
   the active appearance variables without changing their behaviour.
   ========================================================= */

/* Main workspaces: light stays light; night and soft inherit their blue. */
body.yt-student-ui:not(.auth-landing-active) :is(
  #dashboard-vocabulario,
  #dashboard-profession-topic-picker,
  #dashboard-grammar,
  #dashboard-activity,
  #screen-cats,
  #legacyApp,
  #screen-cards.studio-ui,
  .vocab-page,
  .lang-profession-wrap,
  .profession-topic-page,
  .grammar-page,
  .grammar-body,
  .activity-page,
  .activity-content
){
  background:var(--yt-bg)!important;
  color:var(--yt-text)!important;
}

/* Shared cards and panels. */
body.yt-student-ui:not(.auth-landing-active) :is(
  .vocab-category-card,
  .vocab-empty,
  .profession-card,
  .profession-view-all,
  .profession-footer-note,
  .profession-topic-context,
  .profession-topic-context-icon,
  .profession-topic-language,
  .profession-topic-card,
  .grammar-country-context,
  .grammar-level-panel,
  .grammar-roadmap-panel,
  .grammar-search,
  .grammar-card,
  .grammar-empty,
  .grammar-step-toolbar,
  .grammar-topic-panel,
  .grammar-topic-block,
  .grammar-topic-main-example,
  .grammar-example,
  .activity-country-context,
  .activity-skill-step-toolbar,
  .skill-card,
  .activity-game-card,
  .activity-progress,
  .activity-challenge-toolbar,
  .activity-mini-game,
  .profession-practice-card,
  .professional-mixed-footer,
  .professional-mixed-complete
){
  background:var(--yt-card)!important;
  border-color:var(--yt-line)!important;
  color:var(--yt-text)!important;
  box-shadow:var(--yt-shadow)!important;
}

body.yt-student-ui:not(.auth-landing-active) :is(
  .vocab-category-card:hover,
  .profession-card:hover,
  .profession-topic-card:hover,
  .grammar-card:hover,
  .skill-card:hover,
  .skill-card.active,
  .activity-game-card:hover
){
  background:var(--yt-card-alt)!important;
  border-color:var(--yt-accent)!important;
}

/* Search fields, text fields and secondary buttons. */
body.yt-student-ui:not(.auth-landing-active) :is(
  .vocab-search input,
  .vocab-filter-btn,
  .lang-profession-search input,
  .lang-filter-btn,
  .profession-topic-back,
  .grammar-country-back,
  .grammar-step-back,
  .grammar-search input,
  .activity-country-back,
  .activity-skill-back,
  .activity-challenge-toolbar .challenge-back,
  .activity-answer-row input,
  .activity-reveal-btn
){
  background:var(--yt-card-alt)!important;
  border-color:var(--yt-line)!important;
  color:var(--yt-text)!important;
  box-shadow:none!important;
  color-scheme:dark;
}

[data-yt-theme="light"] body.yt-student-ui:not(.auth-landing-active) :is(
  .vocab-search input,
  .vocab-filter-btn,
  .lang-profession-search input,
  .lang-filter-btn,
  .profession-topic-back,
  .grammar-country-back,
  .grammar-step-back,
  .grammar-search input,
  .activity-country-back,
  .activity-skill-back,
  .activity-challenge-toolbar .challenge-back,
  .activity-answer-row input,
  .activity-reveal-btn
){color-scheme:light}

body.yt-student-ui:not(.auth-landing-active) :is(
  .vocab-search input,
  .lang-profession-search input,
  .grammar-search input,
  .activity-answer-row input
)::placeholder{color:var(--yt-muted)!important;opacity:.82}

/* Primary labels. */
body.yt-student-ui:not(.auth-landing-active) :is(
  .vocab-title-wrap h1,
  .vocab-section-title,
  .vocab-cat-name,
  .lang-profession-head h2,
  .profession-card-name,
  .profession-footer-note strong,
  .profession-topic-head h1,
  .profession-topic-context-copy strong,
  .profession-topic-section-title,
  .profession-topic-card-name,
  .grammar-country-selected strong,
  .grammar-level-summary strong,
  .grammar-level-name,
  .grammar-roadmap-head strong,
  .grammar-road-name,
  .grammar-card-title h3,
  .grammar-topic-heading h2,
  .grammar-topic-main-example strong,
  .grammar-example strong,
  .activity-section-title,
  .activity-country-selected strong,
  .activity-skill-step-copy strong,
  .skill-card .name,
  .game-main h3,
  .activity-progress-intro strong,
  .activity-challenge-toolbar .challenge-copy strong,
  .activity-mini-game h3,
  .profession-practice-copy strong,
  .professional-mixed-footer-copy strong,
  .professional-mixed-complete h2
){color:var(--yt-text)!important}

/* Supporting labels. */
body.yt-student-ui:not(.auth-landing-active) :is(
  .vocab-title-wrap p,
  .vocab-cat-lang,
  .vocab-cat-native,
  .vocab-cat-arrow,
  .lang-profession-head p,
  .profession-card-count,
  .profession-arrow,
  .profession-progress-pct,
  .profession-footer-note,
  .profession-topic-head p,
  .profession-topic-context-copy small,
  .profession-topic-context-copy span,
  .profession-topic-card-desc,
  .profession-topic-card-arrow,
  .grammar-country-selected small,
  .grammar-level-summary small,
  .grammar-level-desc,
  .grammar-roadmap-head small,
  .grammar-roadmap-total,
  .grammar-road-empty,
  .grammar-count,
  .grammar-card-title p,
  .grammar-card-preview,
  .grammar-rule,
  .grammar-topic-heading p,
  .grammar-topic-main-example p,
  .grammar-example,
  .grammar-empty,
  .activity-country-selected small,
  .activity-skill-step-copy small,
  .activity-skill-step-copy span,
  .skill-card .native-name,
  .game-main p,
  .game-meta span,
  .game-meta strong,
  .activity-progress-intro span,
  .skill-progress small,
  .activity-challenge-toolbar .challenge-copy span,
  .activity-mini-game p,
  .activity-revealed-answer,
  .profession-practice-copy span,
  .professional-mixed-footer-copy span,
  .professional-mixed-complete p
){color:var(--yt-muted)!important}

/* Pills, icons and tracks. */
body.yt-student-ui:not(.auth-landing-active) :is(
  .lp-step,
  .vocab-native-tag,
  .vocab-cat-count,
  .profession-view-all .view-icon,
  .profession-topic-chip,
  .profession-topic-card-count,
  .profession-topic-card-icon,
  .grammar-card-level,
  .grammar-topic-level-badge,
  .grammar-roadmap-count,
  .grammar-step-label,
  .grammar-card-icon,
  .grammar-topic-icon,
  .game-icon,
  .game-tag,
  .skill-native-pill,
  .profession-practice-icon,
  .professional-mixed-complete-icon,
  .activity-challenge-toolbar .challenge-step
){
  background:var(--yt-wash)!important;
  border-color:var(--yt-line)!important;
  color:var(--yt-accent)!important;
}

body.yt-student-ui:not(.auth-landing-active) :is(
  .profession-progress-track,
  .grammar-level-track::before,
  .grammar-level-mini,
  .vocab-progress-track,
  .professional-mixed-footer-progress > div
){background:var(--yt-track)!important}

body.yt-student-ui:not(.auth-landing-active) .grammar-roadmap-wave .road-base{stroke:var(--yt-line)!important}
body.yt-student-ui:not(.auth-landing-active) .grammar-roadmap-wave .road-dash{stroke:var(--yt-accent)!important}
body.yt-student-ui:not(.auth-landing-active) .grammar-level-dot,
body.yt-student-ui:not(.auth-landing-active) .grammar-road-circle{
  background:var(--yt-card-alt)!important;
  border-color:var(--yt-card)!important;
  color:var(--yt-muted)!important;
  box-shadow:0 0 0 1px var(--yt-line)!important;
}
body.yt-student-ui:not(.auth-landing-active) .grammar-progress{
  background:conic-gradient(#8062ee var(--gp),var(--yt-track) 0)!important;
}
body.yt-student-ui:not(.auth-landing-active) .grammar-progress::after,
body.yt-student-ui:not(.auth-landing-active) .skill-progress .ring::after{
  background:var(--yt-card)!important;
  color:var(--yt-text)!important;
}

/* Preserve semantic completed/current states. */
body.yt-student-ui:not(.auth-landing-active) .grammar-level-item.current .grammar-level-dot,
body.yt-student-ui:not(.auth-landing-active) .grammar-road-node.current .grammar-road-circle{
  background:linear-gradient(135deg,#7659ff,#4d38d7)!important;
  border-color:var(--yt-card)!important;
  color:#fff!important;
}
body.yt-student-ui:not(.auth-landing-active) .grammar-road-node.completed .grammar-road-circle{
  background:linear-gradient(135deg,#56cf88,#2fad6b)!important;
  border-color:var(--yt-card)!important;
  color:#fff!important;
}

body.yt-student-ui:not(.auth-landing-active) :is(
  .vocab-header,
  .profession-topic-head,
  .grammar-detail,
  .grammar-topic-head
){border-color:var(--yt-line)!important}

/* Full exercise modes: writing, reading, listening and images. */
body.yt-student-ui:not(.auth-landing-active) #dashboard-activity.activity-page:is(
  .writing-exercise-mode,
  .reading-exercise-mode,
  .listening-exercise-mode,
  .image-exercise-mode
),
body.yt-student-ui:not(.auth-landing-active) #dashboard-activity.activity-page:is(
  .writing-exercise-mode,
  .reading-exercise-mode,
  .listening-exercise-mode,
  .image-exercise-mode
) .activity-mini-game{
  background:var(--yt-bg)!important;
}

body.yt-student-ui:not(.auth-landing-active) #dashboard-activity :is(
  .writing-exercise-chrome,
  .writing-exit-btn,
  .writing-profession-chip,
  .writing-hero-card,
  .writing-pro-flashcard,
  .writing-pro-flash-hidden,
  .writing-write-grid,
  .writing-speak-grid,
  .writing-speak-grid aside,
  .writing-match-board,
  .writing-big-option:not(.correct):not(.wrong),
  .writing-dont-know,
  .writing-hint-btn,
  .writing-match-row-image:not(.matched),
  .writing-match-row-word:not(.selected):not(.matched),
  .writing-match-bottom,
  .writing-match-bottom button:not(.writing-check-match),
  .writing-pronunciation,
  .writing-speaking-feedback-placeholder,
  .writing-answer-feedback-box:not(.error):not(.success),
  .writing-text-card,
  .writing-text-prompt,
  .reading-text-panel,
  .activity-choice-list button:not(.correct):not(.wrong),
  .reading-statement,
  .reading-order-source button,
  .reading-order-result,
  .reading-title-pool button:not(.selected),
  .reading-mini-texts button:not(.matched),
  .image-match-words button:not(.selected),
  .image-match-photos button:not(.matched),
  .image-match-photos span,
  .image-flashcard,
  .image-flash-back,
  .image-photo-options button:not(.correct):not(.wrong)
){
  background:var(--yt-card)!important;
  border-color:var(--yt-line)!important;
  color:var(--yt-text)!important;
  box-shadow:var(--yt-shadow)!important;
}

body.yt-student-ui:not(.auth-landing-active) #dashboard-activity :is(
  .writing-match-row-word.selected,
  .writing-topic-chip,
  .writing-image-label,
  .writing-letter-hints span,
  .writing-order-chip
){
  background:var(--yt-wash)!important;
  border-color:var(--yt-line)!important;
  color:var(--yt-accent)!important;
}

body.yt-student-ui:not(.auth-landing-active) #dashboard-activity .writing-large-input{
  background:var(--yt-card-alt)!important;
  border-color:var(--yt-accent)!important;
  color:var(--yt-text)!important;
}
body.yt-student-ui:not(.auth-landing-active) #dashboard-activity .writing-large-input input{
  background:transparent!important;
  color:var(--yt-text)!important;
  color-scheme:dark;
}
[data-yt-theme="light"] body.yt-student-ui:not(.auth-landing-active) #dashboard-activity .writing-large-input input{
  color-scheme:light;
}
body.yt-student-ui:not(.auth-landing-active) #dashboard-activity .writing-large-input input::placeholder{
  color:var(--yt-muted)!important;
  opacity:.82;
}

body.yt-student-ui:not(.auth-landing-active) #dashboard-activity :is(
  .writing-mode-copy strong,
  .writing-question-row h2,
  .writing-flash-title-row h2,
  .writing-pro-flash-hidden strong,
  .writing-match-title h2,
  .writing-speak-question h2,
  .writing-speak-grid aside h3,
  .writing-mic-label,
  .writing-write-answer h2,
  .writing-text-card h2,
  .activity-game-question,
  .reading-text-panel,
  .image-flash-back strong,
  .image-target-word strong
){color:var(--yt-text)!important}

body.yt-student-ui:not(.auth-landing-active) #dashboard-activity :is(
  .writing-mode-copy small,
  .writing-tip,
  .writing-flash-footer,
  .writing-pro-flash-hidden em,
  .writing-match-title p,
  .writing-speak-grid aside p,
  .writing-speak-grid main > small,
  .writing-write-answer > p,
  .writing-write-hint,
  .writing-text-card > p,
  .activity-instruction,
  .reading-order-result,
  .image-flash-back em,
  .image-target-word small,
  .image-target-word span
){color:var(--yt-muted)!important}

/* Theme-aware scrollbars in the affected catalogues. */
body.yt-student-ui:not(.auth-landing-active) :is(
  #vocabCategoryList,
  .profession-grid,
  .grammar-roadmap-scroll
){scrollbar-color:var(--yt-line) var(--yt-track)}
body.yt-student-ui:not(.auth-landing-active) :is(
  #vocabCategoryList,
  .profession-grid
)::-webkit-scrollbar-track{background:var(--yt-track)!important}
body.yt-student-ui:not(.auth-landing-active) :is(
  #vocabCategoryList,
  .profession-grid
)::-webkit-scrollbar-thumb{
  background:var(--yt-line)!important;
  border-color:var(--yt-track)!important;
}

/* Vocabulario y navegación: ningún canal de desplazamiento hereda el blanco
   fijo de la interfaz antigua cuando el alumno usa Suave o Noche. */
body.yt-student-ui:not(.auth-landing-active) :is(
  .side-nav,
  #listaContent,
  #allWordsList,
  .vocab-list-shell,
  #vocabCategoryList,
  .profession-grid,
  .grammar-roadmap-scroll
){
  scrollbar-color:var(--yt-line) var(--yt-track)!important;
}
body.yt-student-ui:not(.auth-landing-active) :is(
  .side-nav,
  #listaContent,
  #allWordsList,
  .vocab-list-shell,
  #vocabCategoryList,
  .profession-grid,
  .grammar-roadmap-scroll
)::-webkit-scrollbar-track,
body.yt-student-ui:not(.auth-landing-active) :is(
  .side-nav,
  #listaContent,
  #allWordsList,
  .vocab-list-shell,
  #vocabCategoryList,
  .profession-grid,
  .grammar-roadmap-scroll
)::-webkit-scrollbar-corner{
  background:var(--yt-track)!important;
}
body.yt-student-ui:not(.auth-landing-active) :is(
  .side-nav,
  #listaContent,
  #allWordsList,
  .vocab-list-shell,
  #vocabCategoryList,
  .profession-grid,
  .grammar-roadmap-scroll
)::-webkit-scrollbar-thumb{
  background:var(--yt-line)!important;
  border-color:var(--yt-track)!important;
}
body.yt-student-ui:not(.auth-landing-active) :is(
  #lista.panel,
  #listaContent,
  #allWordsList,
  .vocab-list-shell,
  .vocab-list-toolbar,
  .studio-vocab-head
){
  background-color:var(--yt-card)!important;
  border-color:var(--yt-line)!important;
}

/* =========================================================
   YOUTEACHER · TARJETAS DE CATEGORÍAS PROFESIONALES · V43
   Presentación visual del catálogo existente. No crea ni
   modifica categorías, profesiones, asociaciones o contadores.
   ========================================================= */
body.yt-student-ui:not(.auth-landing-active) .profession-topic-page{
  width:100%;
  max-width:1220px;
}

body.yt-student-ui:not(.auth-landing-active) .profession-topic-list{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:14px!important;
  align-items:stretch;
}

body.yt-student-ui:not(.auth-landing-active) .profession-learning-tree{
  grid-column:1 / -1;
}

body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile{
  --topic-accent:#7553f3;
  --topic-accent-2:#9b87ff;
  position:relative;
  display:flex;
  flex-direction:column;
  min-width:0;
  min-height:258px;
  overflow:hidden;
  border:1px solid var(--yt-line);
  border-radius:20px;
  background:var(--yt-card);
  box-shadow:var(--yt-shadow);
  isolation:isolate;
  transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;
}

body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile:hover,
body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile:focus-within{
  transform:translateY(-3px);
  border-color:color-mix(in srgb,var(--topic-accent) 68%,var(--yt-line));
  box-shadow:0 18px 40px color-mix(in srgb,var(--topic-accent) 15%,transparent);
}

body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile.is-route-selected{
  border-color:var(--topic-accent)!important;
  box-shadow:0 0 0 2px color-mix(in srgb,var(--topic-accent) 38%,transparent),var(--yt-shadow)!important;
}

body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile.is-featured{
  grid-column:span 2;
  min-height:244px;
}

body.yt-student-ui:not(.auth-landing-active) .profession-topic-list .profession-topic-card{
  position:relative;
  display:flex!important;
  flex:1 1 auto;
  flex-direction:column;
  align-items:stretch;
  gap:0!important;
  width:100%;
  min-width:0;
  min-height:0;
  padding:0!important;
  overflow:hidden;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--yt-text)!important;
  box-shadow:none!important;
  text-align:left;
  cursor:pointer;
  transform:none!important;
}

body.yt-student-ui:not(.auth-landing-active) .profession-topic-list .profession-topic-card:focus-visible{
  outline:3px solid color-mix(in srgb,var(--topic-accent) 52%,transparent);
  outline-offset:-4px;
}

body.yt-student-ui:not(.auth-landing-active) .profession-topic-card-visual{
  position:relative;
  display:grid;
  place-items:center;
  width:100%;
  height:116px;
  flex:0 0 116px;
  overflow:hidden;
  background:var(--yt-wash);
  background:
    radial-gradient(circle at 72% 28%,color-mix(in srgb,var(--topic-accent-2) 44%,transparent),transparent 37%),
    linear-gradient(145deg,color-mix(in srgb,var(--topic-accent) 22%,var(--yt-card)),color-mix(in srgb,var(--topic-accent-2) 12%,var(--yt-card-alt)));
}

body.yt-student-ui:not(.auth-landing-active) .profession-topic-card-visual.has-image::before,
body.yt-student-ui:not(.auth-landing-active) .profession-topic-card-visual.has-image::after{
  display:none;
}

body.yt-student-ui:not(.auth-landing-active) .profession-topic-card-image{
  position:absolute;
  inset:0;
  z-index:1;
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}

body.yt-student-ui:not(.auth-landing-active) .profession-topic-card-visual::before,
body.yt-student-ui:not(.auth-landing-active) .profession-topic-card-visual::after{
  content:"";
  position:absolute;
  border:1px solid color-mix(in srgb,var(--topic-accent-2) 34%,transparent);
  border-radius:999px;
}

body.yt-student-ui:not(.auth-landing-active) .profession-topic-card-visual::before{
  width:126px;
  height:126px;
  top:-70px;
  right:-30px;
}

body.yt-student-ui:not(.auth-landing-active) .profession-topic-card-visual::after{
  width:72px;
  height:72px;
  bottom:-42px;
  left:-12px;
}

body.yt-student-ui:not(.auth-landing-active) .profession-topic-card-orbit{
  position:absolute;
  width:88px;
  height:35px;
  border:2px solid color-mix(in srgb,var(--topic-accent) 30%,transparent);
  border-radius:50%;
  transform:rotate(-12deg);
}

body.yt-student-ui:not(.auth-landing-active) .profession-topic-card-icon{
  position:relative;
  z-index:1;
  display:grid;
  place-items:center;
  width:76px!important;
  height:76px!important;
  flex:0 0 76px!important;
  border:1px solid color-mix(in srgb,var(--topic-accent) 32%,var(--yt-line))!important;
  border-radius:24px!important;
  background:color-mix(in srgb,var(--topic-accent) 16%,var(--yt-card))!important;
  color:var(--yt-text)!important;
  box-shadow:0 14px 28px color-mix(in srgb,var(--topic-accent) 22%,transparent)!important;
  font-size:2.45rem!important;
  transform:rotate(-3deg);
  transition:transform .2s ease;
}

body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile:hover .profession-topic-card-icon,
body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile:focus-within .profession-topic-card-icon{
  transform:rotate(0deg) scale(1.05);
}

body.yt-student-ui:not(.auth-landing-active) .profession-topic-card-main{
  display:flex!important;
  flex:1 1 auto;
  flex-direction:column;
  align-items:flex-start;
  min-width:0;
  width:100%;
  padding:15px 16px 13px;
}

body.yt-student-ui:not(.auth-landing-active) .profession-topic-card-name{
  color:var(--yt-text)!important;
  font-size:1rem!important;
  font-weight:900!important;
  line-height:1.16!important;
}

body.yt-student-ui:not(.auth-landing-active) .profession-topic-card-desc{
  display:-webkit-box!important;
  width:100%;
  margin-top:6px!important;
  overflow:hidden;
  color:var(--yt-muted)!important;
  font-size:.74rem!important;
  line-height:1.4!important;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
}

body.yt-student-ui:not(.auth-landing-active) .profession-topic-card-count{
  display:inline-flex;
  align-items:center;
  min-height:25px;
  margin-top:auto;
  padding:5px 9px!important;
  border:1px solid color-mix(in srgb,var(--topic-accent) 26%,var(--yt-line))!important;
  border-radius:999px;
  background:color-mix(in srgb,var(--topic-accent) 10%,var(--yt-card-alt))!important;
  color:var(--topic-accent)!important;
  font-size:.7rem!important;
  font-weight:900!important;
  line-height:1!important;
  white-space:nowrap;
}

body.yt-student-ui:not(.auth-landing-active) .profession-topic-card-arrow{
  position:absolute;
  z-index:2;
  top:12px;
  right:12px;
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  border:1px solid color-mix(in srgb,var(--topic-accent) 32%,var(--yt-line));
  border-radius:999px;
  background:color-mix(in srgb,var(--yt-card) 86%,transparent);
  color:var(--topic-accent)!important;
  font-size:.9rem!important;
  font-weight:900;
  backdrop-filter:blur(8px);
}

body.yt-student-ui:not(.auth-landing-active) .profession-topic-card-actions{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:9px;
  padding:0 14px 14px;
}

body.yt-student-ui:not(.auth-landing-active) :is(.profession-topic-study-btn,.profession-topic-practice-btn){
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  width:100%;
  min-width:0;
  min-height:39px;
  padding:8px 11px;
  border-radius:11px;
  font:inherit;
  font-size:.78rem;
  font-weight:850;
  cursor:pointer;
  transition:transform .16s ease,box-shadow .16s ease,background .16s ease;
}

body.yt-student-ui:not(.auth-landing-active) .profession-topic-study-btn{
  border:1px solid transparent;
  background:linear-gradient(135deg,var(--topic-accent),var(--topic-accent-2));
  color:#fff;
  box-shadow:0 7px 16px color-mix(in srgb,var(--topic-accent) 22%,transparent);
}

body.yt-student-ui:not(.auth-landing-active) .profession-topic-practice-btn{
  border:1px solid color-mix(in srgb,var(--topic-accent) 56%,var(--yt-line));
  background:var(--yt-card-alt);
  color:var(--yt-text);
}

body.yt-student-ui:not(.auth-landing-active) :is(.profession-topic-study-btn,.profession-topic-practice-btn):hover{
  transform:translateY(-1px);
}

body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile.is-featured .profession-topic-card{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(155px,38%);
  grid-template-rows:1fr;
  min-height:178px;
}

body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile.is-featured .profession-topic-card-visual{
  grid-column:2;
  grid-row:1;
  width:100%;
  height:100%;
  min-height:178px;
  align-self:stretch;
}

body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile.is-featured .profession-topic-card-main{
  grid-column:1;
  grid-row:1;
  justify-content:center;
  padding:22px 20px 18px;
}

body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile.is-featured .profession-topic-card-name{
  max-width:390px;
  font-size:1.48rem!important;
}

body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile.is-featured .profession-topic-card-desc{
  max-width:360px;
  font-size:.8rem!important;
  -webkit-line-clamp:3;
}

body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile.is-featured .profession-topic-card-count{
  margin-top:14px;
}

body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile.is-featured .profession-topic-card-icon{
  width:92px!important;
  height:92px!important;
  flex-basis:92px!important;
  border-radius:28px!important;
  font-size:3rem!important;
}

body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile[data-topic-key="actions"]{
  --topic-accent:#6946ed;
  --topic-accent-2:#9a7bff;
}
body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile[data-topic-key="actions_tasks"]{
  --topic-accent:#5769e8;
  --topic-accent-2:#8d9cff;
}
body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile[data-topic-key="profession_equipment"]{
  --topic-accent:#b56a35;
  --topic-accent-2:#e7a874;
}
body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile[data-topic-key="places"]{
  --topic-accent:#3279ca;
  --topic-accent-2:#72b7eb;
}
body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile[data-topic-key="instruments"]{
  --topic-accent:#178c7f;
  --topic-accent-2:#63c7b6;
}
body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile[data-topic-key="documents"]{
  --topic-accent:#4f67b6;
  --topic-accent-2:#94a7ea;
}
body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile[data-topic-key="symptoms"]{
  --topic-accent:#c15264;
  --topic-accent-2:#ec8c9b;
}
body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile[data-topic-key="treatment"]{
  --topic-accent:#8353c7;
  --topic-accent-2:#bb8ce9;
}
body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile[data-topic-key="ethics"]{
  --topic-accent:#bd557f;
  --topic-accent-2:#e993b3;
}
body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile[data-topic-key="pending"]{
  --topic-accent:#718096;
  --topic-accent-2:#a9b4c3;
}

body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile.is-actions-tasks{
  border-style:solid!important;
}

body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile.is-master-bank::before{
  content:"";
  position:absolute;
  z-index:3;
  top:0;
  left:0;
  right:0;
  height:3px;
  background:linear-gradient(90deg,#15a789,var(--topic-accent));
}

body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile.is-empty .profession-topic-card-count{
  border-style:dashed!important;
}

@media (min-width:761px) and (max-width:1100px){
  body.yt-student-ui:not(.auth-landing-active) .profession-topic-list{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile.is-featured{
    grid-column:span 1;
  }

  body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile.is-featured .profession-topic-card{
    grid-template-columns:minmax(0,1fr) minmax(125px,38%);
  }
}

@media (max-width:760px){
  body.yt-student-ui:not(.auth-landing-active) .profession-topic-list{
    grid-template-columns:1fr!important;
    gap:11px!important;
  }

  body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile,
  body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile.is-featured{
    grid-column:auto;
    min-height:0;
    border-radius:17px;
  }

  body.yt-student-ui:not(.auth-landing-active) .profession-topic-list .profession-topic-card,
  body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile.is-featured .profession-topic-card{
    display:grid!important;
    grid-template-columns:82px minmax(0,1fr);
    grid-template-rows:auto;
    min-height:112px;
  }

  body.yt-student-ui:not(.auth-landing-active) .profession-topic-card-visual,
  body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile.is-featured .profession-topic-card-visual{
    grid-column:1;
    grid-row:1;
    width:82px;
    height:100%;
    min-height:112px;
    align-self:stretch;
  }

  body.yt-student-ui:not(.auth-landing-active) .profession-topic-card-icon,
  body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile.is-featured .profession-topic-card-icon{
    width:58px!important;
    height:58px!important;
    flex-basis:58px!important;
    border-radius:19px!important;
    font-size:1.85rem!important;
  }

  body.yt-student-ui:not(.auth-landing-active) .profession-topic-card-main,
  body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile.is-featured .profession-topic-card-main{
    grid-column:2;
    grid-row:1;
    justify-content:center;
    padding:14px 42px 13px 13px;
  }

  body.yt-student-ui:not(.auth-landing-active) .profession-topic-card-name,
  body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile.is-featured .profession-topic-card-name{
    font-size:.98rem!important;
  }

  body.yt-student-ui:not(.auth-landing-active) .profession-topic-card-desc,
  body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile.is-featured .profession-topic-card-desc{
    font-size:.71rem!important;
    -webkit-line-clamp:2;
  }

  body.yt-student-ui:not(.auth-landing-active) .profession-topic-card-count,
  body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile.is-featured .profession-topic-card-count{
    margin-top:8px;
  }

  body.yt-student-ui:not(.auth-landing-active) .profession-topic-card-arrow{
    top:10px;
    right:10px;
    width:27px;
    height:27px;
  }

  body.yt-student-ui:not(.auth-landing-active) .profession-topic-card-actions{
    padding:0 11px 11px;
  }
}

@media (max-width:390px){
  body.yt-student-ui:not(.auth-landing-active) .profession-topic-card-actions{
    grid-template-columns:1fr;
  }
}

@media (prefers-reduced-motion:reduce){
  body.yt-student-ui:not(.auth-landing-active) .profession-topic-tile,
  body.yt-student-ui:not(.auth-landing-active) .profession-topic-card-icon,
  body.yt-student-ui:not(.auth-landing-active) :is(.profession-topic-study-btn,.profession-topic-practice-btn){
    transition:none!important;
  }
}

/* =========================================================
   YOUTEACHER · BANNER PROFESIONAL AL 100 % · V46
   Referencia de escritorio: 1260 × 189 px. Se aplica de
   forma genérica a cualquier profesión actual o futura.
   ========================================================= */
body.yt-student-ui:not(.auth-landing-active) #screen-cards.studio-ui.has-custom-banner > header{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:1260px!important;
  height:189px!important;
  min-height:189px!important;
  max-height:189px!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
}

body.yt-student-ui:not(.auth-landing-active) #screen-cards.studio-ui.has-custom-banner .banner-frame{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  box-sizing:border-box!important;
  width:100%!important;
  height:100%!important;
  min-width:100%!important;
  min-height:100%!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  border-radius:inherit!important;
}

body.yt-student-ui:not(.auth-landing-active) #screen-cards.studio-ui.has-custom-banner .banner-photo{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  box-sizing:border-box!important;
  width:100%!important;
  height:100%!important;
  min-width:100%!important;
  min-height:100%!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  object-fit:cover!important;
  object-position:center center!important;
  transform:none!important;
  image-rendering:auto!important;
}

@media(max-width:760px){
  body.yt-student-ui:not(.auth-landing-active) #screen-cards.studio-ui.has-custom-banner > header{
    height:126px!important;
    min-height:126px!important;
    max-height:126px!important;
  }

  body.yt-student-ui:not(.auth-landing-active) #screen-cards.studio-ui.has-custom-banner .banner-photo{
    object-position:right center!important;
  }
}

@media(max-width:390px){
  body.yt-student-ui:not(.auth-landing-active) #screen-cards.studio-ui.has-custom-banner > header{
    height:116px!important;
    min-height:116px!important;
    max-height:116px!important;
  }
}

/* Progreso y A mejorar · V49. Presentation only; shared engines remain unchanged. */
body.yt-student-ui .app-shell:has(#placeholder-progreso.active,#dashboard-improve.active){
  width:100%!important;max-width:none!important;
}
body.yt-student-ui .main-area:has(#placeholder-progreso.active,#dashboard-improve.active){
  --pt-bg:var(--yt-bg);--pt-card:var(--yt-card);--pt-alt:var(--yt-card-alt);--pt-line:var(--yt-line);
  padding:16px 26px 28px;background:var(--pt-bg)!important;
}
[data-yt-theme="night"] body.yt-student-ui .main-area:has(#placeholder-progreso.active,#dashboard-improve.active){
  --pt-bg:#14263d;--pt-card:#1c324e;--pt-alt:#223c59;--pt-line:#345474;
  background:radial-gradient(ellipse at 45% 0,#20334e 0,transparent 66%),var(--pt-bg)!important;
}
body.yt-student-ui .main-area:has(#placeholder-progreso.active,#dashboard-improve.active) #mainTopbar{
  min-height:46px!important;margin:0 0 18px!important;padding:0 8px!important;
  border-color:transparent;background:transparent;box-shadow:none;
}
body.yt-student-ui #placeholder-progreso.progress-page,
body.yt-student-ui #dashboard-improve.training-page{
  width:100%;max-width:none;min-width:0;min-height:0;margin:0;padding:0!important;
  place-items:normal;text-align:left;border:0!important;background:transparent!important;
  box-shadow:none!important;color:var(--yt-text);font:400 14px/1.45 Inter,system-ui,sans-serif;
}
body.yt-student-ui #placeholder-progreso.progress-page.active,
body.yt-student-ui #dashboard-improve.training-page.active{display:block!important}
:is(.progress-page,.training-page) *{box-sizing:border-box}
:is(.progress-page,.training-page) :is(button,select){font-family:inherit}
:is(.progress-page,.training-page) button{cursor:pointer}
:is(.progress-page,.training-page) button:focus-visible,
:is(.progress-page,.training-page) select:focus-visible{outline:3px solid var(--yt-accent);outline-offset:3px}
:is(.progress-page,.training-page) button:disabled{cursor:default;opacity:.6}
.progress-page-head,.training-page-head{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;margin:0 0 18px;padding:0;background:transparent;border:0;text-align:left}
.progress-page-head>div:first-child,.training-page-head>div:first-child{min-width:0}
.progress-page-head h1,.training-page-head h1{margin:0 0 4px;padding:0;color:var(--yt-text);font-family:inherit;font-size:clamp(27px,2.5vw,38px);line-height:1.15;font-weight:800;letter-spacing:-1.1px}
.progress-page-head p,.training-page-head p{margin:0;padding:0;color:var(--yt-muted);font-size:17px;line-height:1.45}
.progress-eyebrow,.training-eyebrow{display:none}
.progress-filters,.training-head-controls{display:flex;align-items:center;gap:12px;min-width:0;flex:0 0 auto}
.training-head-controls{flex-direction:column;align-items:flex-end;gap:6px}
.progress-filters label,.training-language-label{display:grid;gap:4px;min-width:0;color:var(--yt-muted);font-size:11px}
.progress-filters label>span,.training-language-label>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.progress-filters select,.training-language-label select{width:auto;max-width:220px;min-height:40px;margin:0;padding:8px 28px 8px 12px;border:1px solid var(--pt-line);border-radius:10px;background:var(--pt-card);color:var(--yt-text);font-size:12px;color-scheme:dark}
[data-yt-theme="light"] :is(.progress-filters,.training-language-label) select{color-scheme:light}
.training-separation-badge{display:block;padding:7px 12px;border:1px solid var(--pt-line);border-radius:10px;background:var(--pt-card);color:var(--yt-text);font-size:11px}
.progress-status{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.improve-status:empty{display:none}
.improve-status{margin:5px 0 10px;color:var(--yt-muted);font-size:12px}
.yt-skill-art{
  display:block;flex:0 0 auto;width:64px;height:64px;
  background-image:url("skills-atlas-v49.png");background-size:400% 200%;background-repeat:no-repeat;
  border-radius:50%;mix-blend-mode:lighten;
}
.yt-skill-art[data-art="vocabulary"]{background-position:0 0}
.yt-skill-art[data-art="writing"]{background-position:33.333333% 0}
.yt-skill-art[data-art="listening"]{background-position:66.666667% 0}
.yt-skill-art[data-art="grammar"]{background-position:100% 0}
.yt-skill-art[data-art="speaking"]{background-position:0 100%}
.yt-skill-art[data-art="reading"]{background-position:33.333333% 100%}
.yt-skill-art[data-art="images"]{background-position:66.666667% 100%}
.yt-skill-art[data-art="achievement"]{background-position:100% 100%}
[data-yt-theme="light"] .yt-skill-art{mix-blend-mode:normal}

/* Progress: the map and detail share a full-width, two-column workspace. */
.progress-summary-grid{display:grid;grid-template-columns:1fr 1fr 1.07fr;gap:12px;width:100%;margin:0 0 12px}
.progress-summary-grid article{display:flex;align-items:center;gap:18px;min-width:0;min-height:88px;padding:12px 18px;border:1px solid var(--pt-line);border-radius:11px;background:linear-gradient(135deg,var(--pt-card),var(--pt-alt))}
.progress-summary-icon{display:grid;place-items:center;flex:0 0 62px;width:62px;height:62px;border-radius:50%;color:#fff;background:radial-gradient(circle at 38% 26%,#7865e7,#403886 75%);font-size:32px;font-weight:700;box-shadow:inset 0 0 16px #c3b5ff22}
.progress-summary-icon.is-success{background:radial-gradient(circle at 40% 25%,#428f90,#1a595f);color:#76efd2}
.progress-summary-icon.is-focus{background:radial-gradient(circle at 40% 25%,#7566f7,#3a30a1)}
.progress-summary-grid article>div{min-width:0;display:flex;align-items:baseline;flex-wrap:wrap;gap:3px 10px}
.progress-summary-grid small{display:block;flex-basis:100%;font-size:12px;color:var(--yt-muted)}
.progress-summary-grid strong{font-size:27px;line-height:1.15;color:var(--yt-text)}
.progress-summary-grid article>div>span{color:var(--yt-muted);font-size:11px}
.progress-summary-grid .progress-next-card{gap:12px;padding-inline:14px}
.progress-next-card strong{font-size:20px}
.progress-next-card>div{flex:1}
.progress-next-card>div>span{font-size:10px}
.progress-next-card button,.progress-recommendation-card button,.progress-detail-actions>button,
.training-primary,.training-recommendation-bar>button{
  width:auto;min-height:40px;padding:10px 17px;border:1px solid #9470ff;border-radius:9px;
  background:linear-gradient(115deg,#7544fd,#6037ed);color:#fff;font-size:13px;line-height:1.3;font-weight:700;
  box-shadow:inset 0 1px 0 #c6b2ff20;white-space:normal;
}
.progress-next-card button{flex:0 1 auto;max-width:148px;font-size:11px;padding:9px 14px;min-height:36px}
.progress-main-grid{display:grid;grid-template-columns:minmax(0,1.62fr) minmax(0,1fr);gap:12px;align-items:stretch;width:100%}
.progress-map-panel,.progress-skill-detail{min-width:0;border:1px solid var(--pt-line);border-radius:13px;background:var(--pt-card)}
.progress-map-panel{position:relative;padding:16px 20px 14px;overflow:hidden;background:
  radial-gradient(circle at 12% 35%,#846effaa 0 .6px,transparent 1.6px),
  radial-gradient(circle at 79% 68%,#668ce888 0 .5px,transparent 1.6px),
  radial-gradient(ellipse at 52% 54%,#7856fc18,transparent 60%),var(--pt-bg);
  background-size:89px 97px,127px 109px,auto,auto;
}
.progress-section-head,.training-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;min-width:0}
.progress-section-head h2,.training-section-head h2{margin:0 0 3px;padding:0;color:var(--yt-text);font-size:23px;line-height:1.25;font-weight:750;letter-spacing:-.4px}
.progress-section-head p,.training-section-head p{margin:0;color:var(--yt-muted);font-size:14px;line-height:1.4}
.progress-view-toggle{display:flex;flex:0 0 auto;padding:3px;border:1px solid var(--pt-line);border-radius:10px;background:var(--pt-card)}
.progress-view-toggle button{width:auto;min-height:30px;padding:6px 20px;border:0;border-radius:7px;background:transparent;color:var(--yt-muted);font-size:11px}
.progress-view-toggle button.active{background:linear-gradient(115deg,#7848fa,#6139df);color:#fff;box-shadow:inset 0 1px 2px #d4c4ff6b}
.progress-skill-map{position:relative;min-height:429px;margin:8px 0 0;isolation:isolate}
.progress-map-orbits{position:absolute;inset:10% 17% 6%;z-index:-1;pointer-events:none}
.progress-map-orbits i{position:absolute;inset:0;border:1px solid #a28dff99;border-radius:50%}
.progress-map-orbits i:nth-child(2){inset:12%;border-color:#526da67a}
.progress-map-orbits i:nth-child(3){inset:24%;border-color:#9880ff88}
.progress-map-orbits i:before,.progress-map-orbits i:after{content:"";position:absolute;left:15%;top:13%;width:10px;height:10px;border-radius:50%;background:linear-gradient(#b499ff,#734def);box-shadow:0 0 10px #9272e833}
.progress-map-orbits i:after{left:75%;top:85%}
.progress-map-center{position:absolute;top:51%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:168px;height:168px;padding:18px;border:1px solid #d1beffb0;border-radius:50%;color:#fff;text-align:center;
  background:repeating-linear-gradient(16deg,transparent 0 19px,#d5c8ff14 20px,transparent 21px),radial-gradient(circle at 35% 18%,#d4c7ff,#776ce2 18%,#3f3e8b 52%,#292761 73%,#8475e8);
  box-shadow:0 0 0 10px #775cf021,0 0 30px #aa8eff99,inset 0 0 25px #e6dfff75;
}
.progress-map-center:before,.progress-map-center:after{content:"";position:absolute;inset:10px 29%;border:1px solid #d7c9ff3b;border-radius:50%;pointer-events:none}
.progress-map-center:after{inset:29% 6px}
.progress-map-center span{font-size:40px;line-height:1.3;filter:drop-shadow(0 3px 4px #1b234c)}
.progress-map-center span img{display:block;width:56px;height:56px;border:2px solid #cfc0ff;border-radius:50%;object-fit:cover}
.progress-map-center strong{position:relative;z-index:1;max-width:138px;font-size:14px;line-height:1.2;color:#fff}
.progress-map-center small{position:relative;z-index:1;color:#e0dcff;font-size:11px}
.progress-map-nodes{position:absolute;inset:0}
.progress-map-node{position:absolute;display:flex;align-items:center;gap:12px;min-width:0;width:190px;min-height:96px;margin:0;padding:0;border:0;background:transparent;box-shadow:none;text-align:left;transform:none;color:var(--yt-text)}
.progress-map-node:hover,.progress-map-node.active{background:transparent;box-shadow:none}
.progress-node-orb{display:grid;place-items:center;width:88px;height:88px;flex:0 0 88px;border:3px solid #4ec9bf;border-radius:50%;background:radial-gradient(circle at 30% 25%,#405888,#192d4e);box-shadow:inset 0 0 17px #71dad966,0 0 0 3px #49e0d318}
.progress-node-orb .yt-skill-art{width:78px;height:78px}
.progress-map-node.active .progress-node-orb{border-color:#d2aaff;box-shadow:0 0 0 4px #9470ff55,0 0 20px #a97affd9,inset 0 0 20px #ae8bff66}
.progress-node-copy{display:block;min-width:0}
.progress-node-copy strong{display:block;color:var(--yt-text);font-size:13px;line-height:1.3}
.progress-node-copy b{display:block;color:var(--yt-text);font-size:22px;line-height:1.2}
.progress-map-node.active .progress-node-copy b{color:#ad83ff}
.progress-node-copy small{display:block;color:var(--yt-muted);font-size:12px}
.progress-map-node[data-skill="vocabulary"]{top:0;left:50%;transform:translateX(-39%)}
.progress-map-node[data-skill="writing"]{top:17%;right:0}
.progress-map-node[data-skill="listening"]{top:50%;right:-1%}
.progress-map-node[data-skill="grammar"]{bottom:0;right:12%}
.progress-map-node[data-skill="speaking"]{bottom:0;left:12%;flex-direction:row-reverse}
.progress-map-node[data-skill="reading"]{top:17%;left:0;flex-direction:row-reverse}
.progress-map-node[data-skill="images"]{top:50%;left:-1%;flex-direction:row-reverse}
.progress-map-node:is([data-skill="reading"],[data-skill="images"],[data-skill="speaking"]) .progress-node-copy{text-align:right}
.progress-separation-note{display:block;margin:10px 0 0;text-align:center;color:var(--yt-muted);font-size:11px}
.progress-separation-note:before{content:"ⓘ";margin-right:9px;font-size:16px}
.progress-skill-map.is-list{min-height:429px;padding-top:10px}
.progress-skill-list{display:grid;gap:8px}
.progress-list-row{display:grid;grid-template-columns:44px minmax(0,1fr) auto auto;align-items:center;gap:12px;width:100%;min-width:0;min-height:53px;margin:0;padding:5px 12px;border:1px solid var(--pt-line);border-radius:10px;background:var(--pt-card);color:var(--yt-text);text-align:left}
.progress-list-row.active{border-color:#ad82ff;background:var(--yt-wash)}
.progress-list-row .yt-skill-art{width:44px;height:44px}
.progress-list-row strong,.progress-list-row small{display:block}
.progress-list-row strong{font-size:13px}
.progress-list-row small,.progress-list-row em{font-size:10px;font-style:normal;color:var(--yt-muted)}
.progress-list-row b{font-size:20px;color:var(--yt-accent)}
.progress-skill-detail{display:flex;flex-direction:column;padding:18px 20px;background:linear-gradient(145deg,var(--pt-card),color-mix(in srgb,var(--pt-alt) 65%,var(--pt-card)))}
.progress-detail-head{display:flex;align-items:center;gap:16px;min-width:0}
.progress-detail-head>.yt-skill-art{width:80px;height:80px;border:1px solid var(--pt-line);border-radius:16px}
.progress-detail-head>div{min-width:0}
.progress-detail-title{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px}
.progress-detail-title h2{margin:0;color:var(--yt-text);font-size:26px;line-height:1.2;font-weight:750}
.progress-detail-title em{padding:3px 10px;border:1px solid #8c62e9;border-radius:20px;background:#6d42d52b;color:var(--yt-accent);font-size:10px;font-style:normal;white-space:nowrap}
.progress-detail-head p{margin:7px 0 0;color:var(--yt-muted);font-size:13px;line-height:1.5}
.progress-detail-score{display:flex;align-items:center;gap:28px;padding:12px 0 14px}
.progress-accuracy-ring{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;flex:0 0 124px;width:124px;height:124px;gap:0;border-radius:50%;background:conic-gradient(from 0deg,#a37bff var(--accuracy),color-mix(in srgb,var(--pt-line) 85%,transparent) 0);isolation:isolate}
.progress-accuracy-ring:before{content:"";position:absolute;z-index:-1;inset:11px;border-radius:50%;background:var(--pt-card);box-shadow:inset 0 0 13px #13203b44}
.progress-accuracy-ring strong{font-size:32px;line-height:1.2;color:var(--yt-text)}
.progress-accuracy-ring small{font-size:12px;color:var(--yt-muted)}
.progress-detail-score>div:last-child{min-width:0}
.progress-detail-score>div:last-child>strong{font-size:15px;line-height:1.4;color:var(--yt-text)}
.progress-detail-score p{margin:6px 0 0;color:var(--yt-muted);font-size:12px;line-height:1.65}
.progress-detail-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 14px}
.progress-detail-metrics>div{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:12px;align-items:center;min-width:0;padding:9px 12px;border:1px solid var(--pt-line);border-radius:10px;background:var(--pt-card)}
.progress-detail-metrics span{grid-row:1/3;font-size:29px;font-weight:800;line-height:1;color:#8a80ff}
.progress-detail-metrics span.is-error{color:#ff647b;font-size:36px}
.progress-detail-metrics dt{color:var(--yt-muted);font-size:10px;white-space:nowrap}
.progress-detail-metrics dd{margin:0;color:var(--yt-text);font-size:22px;font-weight:750;line-height:1.2}
.progress-activity{margin:0 0 16px}
.progress-activity>strong{display:block;margin:0 0 9px;color:var(--yt-text);font-size:12px}
.progress-activity-chart{display:grid;grid-template-columns:18px minmax(0,1fr);gap:7px}
.progress-activity-axis{display:flex;flex-direction:column;justify-content:space-between;color:var(--yt-muted);font-size:10px}
.progress-activity-bars{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));align-items:end;gap:8px;height:62px;padding:0 5px;border-left:1px solid var(--pt-line);border-bottom:1px solid var(--pt-line);background:repeating-linear-gradient(to top,transparent 0 30px,color-mix(in srgb,var(--pt-line) 60%,transparent) 31px)}
.progress-activity-bars>span{position:relative;display:flex;align-items:flex-end;justify-content:center;height:100%}
.progress-activity-bars i{display:block;width:min(100%,26px);border-radius:5px 5px 0 0;background:linear-gradient(#aa7bfc,#6d47ed);box-shadow:inset 0 1px 0 #d5bcff66}
.progress-activity-bars small{position:absolute;bottom:-20px;font-size:10px;color:var(--yt-muted)}
.progress-activity-bars b{position:absolute;bottom:100%;font-size:10px;color:var(--yt-text);opacity:0}
.progress-activity-bars>span:hover b{opacity:1}
.progress-detail-tip{margin:18px 0 12px;padding:14px 15px;border:1px solid #8f74c9;border-radius:10px;background:color-mix(in srgb,var(--yt-wash) 75%,var(--pt-card));color:var(--yt-accent);font-size:12px;line-height:1.5}
.progress-detail-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;margin-top:auto}
.progress-history-button{border-color:transparent!important;background:transparent!important;box-shadow:none!important;color:var(--yt-accent)!important;font-size:12px!important}
.progress-detail-complete{display:block;margin:25px 0 0;padding:12px;border:1px solid #40bb9f66;border-radius:10px;background:#1e9e831a;color:var(--yt-text);font-size:13px;text-align:center}
.progress-insights-grid{display:grid;grid-template-columns:1fr 1fr 1.07fr;gap:12px;margin:12px 0}
.progress-insight-card{min-width:0;padding:12px 18px;border:1px solid var(--pt-line);border-radius:11px;background:var(--pt-card)}
.progress-insight-card.is-strength{border-color:#398b8580;background:linear-gradient(120deg,#33978322,var(--pt-card))}
.progress-insight-card.is-growth{border-color:#af8d5780;background:linear-gradient(120deg,#bb863622,var(--pt-card))}
.progress-insight-title{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 4px}
.progress-insight-title strong{font-size:12px;color:var(--yt-accent)}
.is-strength .progress-insight-title strong{color:#69d8bc}
.is-growth .progress-insight-title strong{color:#ffd37b}
.progress-insight-title small{padding:3px 9px;border:1px solid currentColor;border-radius:20px;color:var(--yt-muted);font-size:9px}
.progress-insight-body{display:flex;align-items:center;gap:18px;min-width:0}
.progress-insight-body>.yt-skill-art{width:88px;height:78px}
.progress-insight-body>div{min-width:0}
.progress-insight-body strong,.progress-insight-body b{display:block;font-size:14px;line-height:1.4;color:var(--yt-text)}
.progress-insight-body b{font-size:17px}
.progress-insight-body p{margin:3px 0 0;color:var(--yt-muted);font-size:11px;line-height:1.6}
.progress-recommendation-card,.training-recommendation-bar{display:flex;align-items:center;gap:18px;min-width:0;margin:12px 0 0;padding:8px 15px;border:1px solid #8970c9;border-radius:10px;background:linear-gradient(105deg,var(--yt-wash),var(--pt-card))}
.progress-recommendation-icon,.training-recommendation-icon{flex:0 0 32px;color:#d4b6ff;filter:drop-shadow(0 0 9px #9c58ff);font-size:30px;line-height:1}
.progress-recommendation-card>div{flex:1;display:flex;align-items:center;gap:20px;min-width:0}
.progress-recommendation-card small{flex:0 0 auto;color:var(--yt-text);font-size:13px;font-weight:700}
.progress-recommendation-card strong{padding-left:20px;border-left:1px solid var(--pt-line);color:var(--yt-muted);font-size:12px;font-weight:400;line-height:1.5}
.progress-recommendation-card button{flex:0 0 auto;min-height:34px;font-size:11px;padding:8px 18px}

/* A mejorar: a single-skill session, its contents and the pending queue. */
.training-skill-selector{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;width:100%;margin:0}
.training-skill-card{display:flex;align-items:center;gap:14px;min-width:0;min-height:76px;width:100%;margin:0;padding:10px 12px;border:1px solid var(--pt-line);border-radius:12px;background:linear-gradient(120deg,var(--pt-card),var(--pt-alt));text-align:left;box-shadow:none;color:var(--yt-text)}
.training-skill-card .yt-skill-art{width:52px;height:52px}
.training-skill-card>span:last-child{min-width:0}
.training-skill-card small,.training-skill-card strong{display:block;color:var(--yt-text);line-height:1.3}
.training-skill-card small{font-size:12px;overflow-wrap:anywhere}
.training-skill-card strong{margin-top:4px;font-size:23px}
.training-skill-card.active{border-color:#a379ff;background:linear-gradient(120deg,#7b3eff,#6539ef);box-shadow:inset 0 1px 0 #cab8ff44,0 0 17px #7441ff26}
.training-skill-card.active :is(small,strong){color:#fff}
.training-isolation-note{margin:9px 0;text-align:center;color:var(--yt-muted);font-size:12px;line-height:1.55}
.training-isolation-note:before{content:"ⓘ";margin-right:10px;font-size:17px;vertical-align:middle}
.training-workspace{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:start;gap:12px;width:100%}
.training-main-column,.training-side-column{display:grid;gap:12px;min-width:0}
.training-session-card{position:relative;isolation:isolate;overflow:hidden;padding:8px;border:1px solid #7565ac;border-radius:13px;background:
  radial-gradient(circle at 84% 16%,#c797ff 0 .7px,transparent 1.8px),
  radial-gradient(circle at 61% 60%,#a689ff 0 .6px,transparent 1.8px),
  radial-gradient(ellipse at 75% 28%,#7154e448,transparent 60%),linear-gradient(135deg,var(--pt-bg),var(--pt-card));background-size:143px 99px,181px 147px,auto,auto;
}
.training-session-top{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:center;gap:12px;min-height:247px;padding:15px 20px}
.training-session-copy{position:relative;z-index:2;min-width:0}
.training-session-eyebrow{display:block;color:#b48dff;font-size:10px;font-weight:750;letter-spacing:1.8px}
.training-session-copy h2{margin:7px 0 5px;color:var(--yt-text);font-size:clamp(28px,2.5vw,37px);font-weight:800;line-height:1.1;letter-spacing:-1px}
.training-session-copy>p{margin:0;color:var(--yt-muted);font-size:14px;line-height:1.55}
.training-session-copy .training-session-scope{margin-top:6px;font-size:12px}
.training-session-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:12px 0 15px}
.training-session-meta>span{display:inline-flex;align-items:center;gap:7px;max-width:100%;padding:6px 11px;border:1px solid #8470c555;border-radius:10px;background:#7859bf1c;color:var(--yt-accent);font-size:15px}
.training-session-meta strong{font-size:12px;line-height:1.5;color:var(--yt-text);font-weight:650;overflow-wrap:anywhere}
.training-session-meta>span:first-child strong{font-size:20px}
.training-session-actions{position:relative;z-index:2;display:flex;align-items:stretch;gap:12px;width:max-content;max-width:180%}
.training-primary{min-height:51px;padding:13px 24px;font-size:14px}
.training-secondary{width:auto;min-height:51px;padding:12px 19px;border:1px solid #b9b6fb;border-radius:10px;background:#2f285126;color:var(--yt-text);font-size:12px}
.training-session-visual{position:relative;isolation:isolate;min-width:0;width:100%;height:225px;align-self:center;pointer-events:none}
.training-session-visual:before{content:"";position:absolute;inset:8% 3%;border-radius:50%;background:radial-gradient(ellipse,#8960ff55,transparent 70%);filter:blur(9px)}
.training-session-visual:after{content:"";position:absolute;left:8%;right:8%;bottom:15%;height:31%;border-bottom:4px solid #b595ff9c;border-radius:50%;transform:rotate(-20deg);box-shadow:0 7px 9px #8665ff2e}
.training-visual-skill{position:absolute;left:-14%;top:20%;z-index:2;width:190px;height:190px;transform:rotate(-10deg);mix-blend-mode:lighten}
.training-visual-skill .yt-skill-art{width:100%;height:100%;border-radius:50%}
.training-session-visual>div{position:absolute;top:7%;left:28%;right:20%;z-index:3;display:grid;gap:13px}
.training-session-visual b{display:block;width:max-content;max-width:145px;padding:6px 11px;border:2px solid #e7d7ff;border-radius:7px;background:linear-gradient(135deg,#e9e0ff,#ac97f0);color:#35347a;font-size:17px;font-weight:700;line-height:1.3;box-shadow:inset 0 0 4px #fff,0 0 20px #a771ff70;transform:rotate(-14deg);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.training-session-visual b:nth-child(2){margin-left:35px;transform:rotate(-10deg)}
.training-session-visual b:nth-child(3){margin-left:-18px;transform:rotate(9deg)}
.training-session-visual>i{position:absolute;right:-1%;top:21%;z-index:1;display:grid;place-items:center;width:86px;height:138px;border:12px solid #76efdd;border-radius:50%;background:radial-gradient(ellipse at 30% 35%,#70ead0,#109e85 55%,#246c79);color:#cbffef;font-size:46px;font-style:normal;transform:rotate(17deg);box-shadow:inset 0 0 0 7px #258678,0 0 0 6px #7888d4,0 0 27px #48ebd766}
.training-recovery-steps{display:grid;grid-template-columns:1fr 22px 1fr 22px 1fr;align-items:center;gap:8px;min-width:0;padding:12px 18px;border:1px solid var(--pt-line);border-radius:11px;background:color-mix(in srgb,var(--pt-bg) 75%,transparent)}
.training-recovery-steps article{display:flex;align-items:center;gap:10px;min-width:0}
.training-recovery-steps .yt-skill-art{width:60px;height:60px;border:1px solid #7e95c099}
.training-recovery-steps .active .yt-skill-art{border:2px solid #b393ff;box-shadow:0 0 10px #b383ff99}
.training-recovery-steps b{color:var(--yt-accent);font-size:14px}
.training-recovery-steps strong{display:block;color:var(--yt-text);font-size:13px}
.training-recovery-steps small{display:block;margin-top:3px;color:var(--yt-muted);font-size:11px;line-height:1.4}
.training-recovery-steps>i{display:block;width:100%;height:1px;background:#9e8ed4}
.training-session-list,.training-queue-card{min-width:0;padding:14px 16px;border:1px solid var(--pt-line);border-radius:12px;background:linear-gradient(130deg,var(--pt-card),color-mix(in srgb,var(--pt-bg) 40%,var(--pt-card)))}
.training-session-list .training-section-head{align-items:center;margin-bottom:10px}
.training-session-list h2{font-size:19px}
.training-section-head>#improveSessionCount{color:var(--yt-muted);font-size:11px;text-align:right}
.training-word-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-width:0}
.training-word-card{display:grid;grid-template-columns:58px minmax(0,1fr) auto auto;align-items:center;gap:10px;min-width:0;min-height:72px;padding:6px 10px;border:1px solid var(--pt-line);border-radius:12px;background:linear-gradient(135deg,var(--pt-card),var(--pt-alt))}
.training-word-card>img{width:58px;height:58px;object-fit:cover;border-radius:10px}
.training-word-copy{min-width:0}
.training-word-copy strong,.training-word-copy span{display:block;overflow-wrap:anywhere;line-height:1.4}
.training-word-copy strong{color:var(--yt-text);font-size:14px}
.training-word-copy span{margin-top:3px;color:var(--yt-muted);font-size:12px}
.training-word-profession{max-width:95px;padding:5px 9px;border:1px solid var(--pt-line);border-radius:20px;background:var(--pt-alt);color:var(--yt-text);font-size:10px;line-height:1.3;overflow-wrap:anywhere}
.training-word-recovery{min-width:0}
.training-word-recovery>div{display:flex;gap:6px}
.training-word-recovery i{display:block;width:14px;height:14px;border:1px solid #7f9aba;border-radius:50%;background:transparent}
.training-word-recovery i.done{background:linear-gradient(#ffe798,#ffb849);border-color:#ffcf66;box-shadow:0 0 6px #ffd07955}
.training-word-recovery small{display:block;margin-top:3px;text-align:center;font-size:10px;color:var(--yt-muted)}
.training-queue-card{padding:16px 10px 10px}
.training-queue-card>.training-section-head{padding:0 10px;margin-bottom:12px}
.training-queue-card h2{font-size:22px}
#improveQueueTotal{display:none}
.training-queue{display:grid;gap:8px}
.training-queue-row{display:flex;align-items:center;gap:12px;min-width:0;min-height:84px;padding:9px 12px;border:1px solid var(--pt-line);border-radius:12px;background:var(--pt-card)}
.training-queue-row.active{border-color:#ac85ff;background:linear-gradient(110deg,#7454cd3d,var(--pt-card))}
.training-queue-row>.yt-skill-art{width:65px;height:65px}
.training-queue-row>div{flex:1;min-width:0}
.training-queue-row strong,.training-queue-row small{display:block;color:var(--yt-text);font-size:13px;line-height:1.5}
.training-queue-row strong{font-weight:750}
.training-queue-row p{margin:2px 0 0;color:var(--yt-muted);font-size:10px}
.training-queue-row button{width:auto;flex:0 0 auto;min-height:43px;min-width:117px;padding:9px 12px;border:1px solid #8095b5;border-radius:10px;background:var(--pt-alt);color:var(--yt-text);font-size:12px;font-weight:650}
.training-queue-row.active button{background:linear-gradient(110deg,#7b47fa,#633cee);border-color:#9b7fff;color:#fff}
.training-rule-card{min-width:0;padding:12px 14px;border:1px solid #c099555c;border-radius:12px;background:linear-gradient(120deg,#b7833a1a,var(--pt-card))}
.training-rule-card h2{margin:0 0 8px;color:#f7d88b;font-size:18px;line-height:1.3}
.training-rule-row{display:grid;grid-template-columns:34px 32px minmax(0,1fr) 20px minmax(55px,.75fr);align-items:center;gap:9px;min-height:50px;margin-top:7px;padding:7px 8px;border:1px solid #8490b52e;border-radius:10px;background:#777e9c12}
.training-rule-row>span{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;font-size:31px;font-weight:800;line-height:1}
.training-rule-row .is-error{color:#ff7086;background:#fb6b8a24}
.training-rule-row .is-success{color:#82efc8;background:#47d0a638;font-size:26px}
.training-rule-row>strong{color:var(--yt-text);font-size:31px;line-height:1}
.training-rule-row p{margin:0;color:var(--yt-text);font-size:11px;line-height:1.45}
.training-rule-row i{color:var(--yt-muted);font-size:21px;font-style:normal}
.training-rule-row b{color:var(--yt-text);font-size:11px;font-weight:500;line-height:1.4}
.training-rule-row:last-child b{color:#7df0c9}
.training-latest-card{display:flex;align-items:center;gap:16px;min-width:0;min-height:106px;padding:13px 17px;border:1px solid #358b8b66;border-radius:12px;background:linear-gradient(120deg,#209c8726,var(--pt-card))}
.training-latest-icon{display:grid;place-items:center;flex:0 0 67px;width:67px;height:67px;border:12px solid #0f8a7b66;border-radius:50%;color:#063e40;background:#65e7c1;background-clip:padding-box;font-size:39px;font-weight:800;line-height:1}
.training-latest-icon.is-empty{background:transparent;color:var(--yt-muted);border-color:var(--pt-line)}
.training-latest-card>div{min-width:0}
.training-latest-card small{color:#84e8c9;font-size:12px;font-weight:700}
.training-latest-card strong{display:block;margin:4px 0 0;color:var(--yt-text);font-size:20px;line-height:1.2;overflow-wrap:anywhere}
.training-latest-card p{margin:4px 0 0;color:var(--yt-muted);font-size:12px;line-height:1.5}
.training-recommendation-bar>strong{color:var(--yt-text);font-size:13px;flex:0 0 auto}
.training-recommendation-bar>p{flex:1;min-width:0;margin:0;padding-left:20px;border-left:1px solid var(--pt-line);color:var(--yt-muted);font-size:12px;line-height:1.5}
.training-recommendation-bar>button{flex:0 0 auto;min-width:190px;min-height:40px}
.training-empty{grid-column:1/-1;text-align:center;min-height:170px;padding:25px 15px;color:var(--yt-muted)}
.training-empty>span{display:block;color:var(--yt-accent);font-size:27px}
.training-empty h3{margin:8px 0;color:var(--yt-text);font-size:18px}
.training-empty p{max-width:550px;margin:0 auto;color:var(--yt-muted);font-size:13px;line-height:1.6}
.training-queue-empty{display:grid;place-items:center;gap:7px;min-height:176px;padding:20px;text-align:center;color:var(--yt-text)}
.training-queue-empty>span{color:#67dfbc;font-size:32px}
.training-queue-empty>small{color:var(--yt-muted);font-size:12px}
[data-yt-theme="light"] .training-rule-card h2{color:#835808}
[data-yt-theme="light"] .training-visual-skill{mix-blend-mode:normal}
[data-yt-theme="light"] :is(.training-latest-card small,.training-rule-row:last-child b,.is-strength .progress-insight-title strong){color:#087461}
[data-yt-theme="light"] .is-growth .progress-insight-title strong{color:#846014}
[data-yt-theme="light"] .progress-map-panel{background-color:var(--pt-card)}

/* Compact screens retain content and actions, without horizontal scrolling. */
@media(min-width:1700px){.progress-skill-map{min-height:460px}.progress-map-node[data-skill="writing"],.progress-map-node[data-skill="listening"]{right:5%}.progress-map-node[data-skill="reading"],.progress-map-node[data-skill="images"]{left:5%}.progress-map-node[data-skill="grammar"]{right:19%}.progress-map-node[data-skill="speaking"]{left:19%}}
@media(max-width:1450px){
  .progress-page-head{align-items:flex-start}.progress-filters{flex-direction:column;gap:7px;align-items:flex-end}
  .training-skill-card{gap:7px;padding:10px 8px}.training-skill-card .yt-skill-art{width:44px;height:44px}
  .progress-main-grid{grid-template-columns:minmax(0,1.48fr) minmax(0,1fr)}
  .progress-summary-grid article{gap:10px;padding:12px}.progress-summary-icon{width:48px;height:48px;flex-basis:48px;font-size:26px}
  .progress-next-card{flex-wrap:wrap}.progress-next-card button{margin-left:auto}
  .progress-map-panel{padding:15px}.progress-section-head{flex-wrap:wrap}.progress-section-head p{font-size:12px}
  .progress-map-node{width:160px;gap:7px}.progress-node-orb{width:76px;height:76px;flex-basis:76px}.progress-node-orb .yt-skill-art{width:68px;height:68px}
  .progress-node-copy strong{font-size:11px}.progress-node-copy b{font-size:20px}.progress-node-copy small{font-size:10px}
  .progress-map-center{width:146px;height:146px}.progress-map-center strong{font-size:12px}
  .progress-detail-score{gap:16px}.progress-accuracy-ring{width:105px;height:105px;flex-basis:105px}
  .progress-detail-metrics{gap:7px}.progress-detail-metrics>div{padding:8px;gap:5px}.progress-detail-metrics span{font-size:23px}.progress-detail-metrics dt{font-size:9px}
  .progress-detail-head{gap:10px}.progress-detail-head>.yt-skill-art{width:66px;height:66px}
  .progress-insight-card{padding:12px}.progress-insight-body{gap:9px}.progress-insight-body>.yt-skill-art{width:65px;height:65px}
  .training-session-top{padding:12px;min-height:270px}.training-session-copy h2{font-size:29px}
  .training-session-visual{height:212px}.training-visual-skill{left:-12%;width:155px;height:155px}
  .training-session-visual>div{left:27%}.training-session-visual b{max-width:108px;font-size:15px}
  .training-session-visual>i{width:65px;height:110px;right:0;font-size:34px;border-width:9px}
  .training-primary{font-size:12px;padding:12px 17px}.training-secondary{font-size:11px;padding:10px 13px}
  .training-recovery-steps{padding:10px;gap:4px;grid-template-columns:1fr 12px 1fr 12px 1fr}
  .training-recovery-steps .yt-skill-art{width:42px;height:42px}.training-recovery-steps article{gap:6px}.training-recovery-steps strong{font-size:12px}.training-recovery-steps small{font-size:10px}
  .training-word-card{gap:7px;grid-template-columns:42px minmax(0,1fr) auto;padding:7px}.training-word-card>img{width:42px;height:42px;grid-row:1/3}.training-word-copy strong{font-size:12px}.training-word-profession{grid-column:2;grid-row:2;justify-self:start}.training-word-recovery{grid-column:3;grid-row:1/3}.training-word-copy span{font-size:11px}
  .training-queue-row{gap:8px;padding:8px}.training-queue-row>.yt-skill-art{width:48px;height:48px}.training-queue-row button{min-width:92px;font-size:11px;padding:8px}
}
@media(max-width:1180px){
  .progress-main-grid{grid-template-columns:1fr}.progress-skill-map{min-height:440px}
  .progress-section-head{flex-wrap:nowrap}.progress-skill-detail{display:grid;grid-template-columns:1fr 1fr;gap:10px 24px}
  .progress-detail-head{grid-column:1/-1}.progress-detail-score{grid-row:2/4;margin:0;padding:0}.progress-detail-metrics{margin:0}.progress-activity{margin:0 0 14px}
  .progress-detail-tip,.progress-detail-actions,.progress-detail-complete{grid-column:1/-1}
  .progress-summary-grid{grid-template-columns:1fr 1fr}.progress-next-card{grid-column:1/-1}.progress-summary-grid .progress-next-card{flex-wrap:nowrap}.progress-next-card button{max-width:none}
  .progress-insights-grid{grid-template-columns:1fr 1fr}.progress-insight-card:last-child{grid-column:1/-1}
  .training-workspace{grid-template-columns:1fr}.training-side-column{grid-template-columns:1fr 1fr}.training-queue-card{grid-row:1/3}.training-rule-card,.training-latest-card{grid-column:2}
  .training-session-top{grid-template-columns:minmax(0,1fr) minmax(250px,.7fr);min-height:235px}
  .training-session-actions{max-width:160%}.training-skill-selector{grid-template-columns:repeat(4,minmax(0,1fr))}
  .training-skill-card{gap:14px;padding:10px 14px}.training-skill-card .yt-skill-art{width:52px;height:52px}
}
@media(max-width:900px){
  body.yt-student-ui .main-area:has(#placeholder-progreso.active,#dashboard-improve.active){padding:16px}
  .progress-page-head,.training-page-head{flex-direction:column;align-items:stretch;gap:12px}.progress-page-head h1,.training-page-head h1{font-size:30px}
  .progress-page-head p,.training-page-head p{font-size:15px}
  .progress-filters{flex-direction:row;align-items:center;justify-content:flex-start}.progress-filters label{flex:1}.progress-filters select{width:100%;max-width:none}
  .training-head-controls{flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:wrap}.training-separation-badge{font-size:10px}
  .progress-map-node[data-skill="grammar"]{right:9%}.progress-map-node[data-skill="speaking"]{left:9%}
  .progress-recommendation-card,.training-recommendation-bar{flex-wrap:wrap;gap:9px 12px}
  .progress-recommendation-card>div{flex-basis:calc(100% - 50px);flex-wrap:wrap;gap:3px}
  .progress-recommendation-card strong{flex-basis:100%;border:0;padding:0}
  .progress-recommendation-card button{margin-left:auto}
  .training-recommendation-bar>p{flex-basis:100%;border:0;padding:0}
  .training-recommendation-bar>button{margin-left:auto}
}
@media(max-width:640px){
  .progress-page-head h1,.training-page-head h1{font-size:28px}
  .progress-summary-grid{gap:8px}.progress-summary-grid article{padding:12px;gap:9px}.progress-summary-grid strong{font-size:21px}
  .progress-summary-icon{width:38px;height:38px;flex-basis:38px;font-size:22px}.progress-summary-grid small{font-size:10px}.progress-summary-grid article>div>span{font-size:10px}
  .progress-next-card strong{font-size:17px}
  .progress-section-head{flex-wrap:wrap}.progress-section-head h2{font-size:22px}.progress-section-head p{font-size:13px}
  .progress-view-toggle{width:100%}.progress-view-toggle button{flex:1;min-height:36px}
  .progress-skill-map{min-height:0;margin-top:15px}
  .progress-map-orbits{display:none}
  .progress-map-center{position:relative;left:auto;top:auto;transform:none;flex-direction:row;flex-wrap:wrap;width:100%;height:auto;min-height:87px;padding:13px 18px;border-radius:15px;gap:4px 12px;background:linear-gradient(125deg,#5d4ab1,#2a365b);box-shadow:inset 0 0 22px #a38bee44}
  .progress-map-center:before,.progress-map-center:after{display:none}.progress-map-center span{font-size:32px}.progress-map-center strong{max-width:none;font-size:14px}.progress-map-center small{flex-basis:100%}
  .progress-map-nodes{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px}
  .progress-map-node,.progress-map-node[data-skill]{position:static;display:flex;flex-direction:row;transform:none;gap:9px;width:100%;min-height:83px;padding:8px;border:1px solid var(--pt-line);border-radius:12px;background:var(--pt-card)}
  .progress-map-node.active{border-color:#a78aff;background:var(--yt-wash)}.progress-map-node .progress-node-copy{min-width:0}
  .progress-map-node[data-skill] .progress-node-copy{text-align:left}
  .progress-node-orb{width:48px;height:48px;flex-basis:48px;border-width:2px;box-shadow:none}.progress-node-orb .yt-skill-art{width:42px;height:42px}
  .progress-node-copy strong{font-size:11px}.progress-node-copy b{font-size:18px}.progress-node-copy small{font-size:10px}
  .progress-skill-map.is-list{min-height:0}.progress-list-row{grid-template-columns:40px minmax(0,1fr) auto;gap:6px}.progress-list-row>.yt-skill-art{width:40px;height:40px}.progress-list-row em{grid-column:2/4}
  .progress-skill-detail{display:flex;gap:0;padding:17px}.progress-detail-head>.yt-skill-art{width:65px;height:65px}.progress-detail-head h2{font-size:25px}.progress-detail-head p{font-size:12px}
  .progress-detail-score{padding:16px 0;gap:20px}.progress-detail-metrics{margin:0 0 14px}
  .progress-activity{margin:0 0 16px}
  .progress-detail-actions{grid-template-columns:1fr}.progress-detail-actions button{width:100%;min-height:44px}
  .progress-insights-grid{grid-template-columns:1fr}.progress-insight-card:last-child{grid-column:auto}
  .progress-insight-body>.yt-skill-art{width:78px;height:78px}.progress-insight-card{padding:14px 18px}
  .training-skill-selector{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.training-skill-card{padding:10px;gap:10px;min-height:72px}
  .training-isolation-note{padding:0 4px;font-size:11px}
  .training-session-top{display:flex;flex-direction:column;gap:0;padding:14px 10px}
  .training-session-copy{width:100%}.training-session-copy h2{font-size:30px}
  .training-session-meta{gap:6px}.training-session-actions{display:grid;grid-template-columns:1fr;width:100%;max-width:100%;gap:8px}
  .training-session-actions button{width:100%;min-height:48px}
  .training-session-visual{width:100%;max-width:350px;height:190px;margin-top:16px}
  .training-visual-skill{left:0;top:7%;width:177px;height:177px}.training-session-visual>div{left:40%;top:0}
  .training-session-visual>i{right:3%;top:28%;width:72px;height:115px}
  .training-recovery-steps{grid-template-columns:1fr;padding:13px;gap:8px}.training-recovery-steps article{gap:13px}.training-recovery-steps .yt-skill-art{width:45px;height:45px}.training-recovery-steps>i{width:1px;height:10px;margin-left:22px}.training-recovery-steps small{font-size:12px}
  .training-word-list{grid-template-columns:1fr}.training-word-card{grid-template-columns:52px minmax(0,1fr) auto auto;gap:9px;padding:8px}.training-word-card>img{width:52px;height:52px;grid-row:auto}.training-word-profession{grid-column:auto;grid-row:auto}.training-word-recovery{grid-column:auto;grid-row:auto}
  .training-word-copy strong{font-size:14px}.training-word-copy span{font-size:12px}.training-section-head>#improveSessionCount{font-size:10px}
  .training-side-column{grid-template-columns:1fr}.training-queue-card{grid-row:auto}.training-rule-card,.training-latest-card{grid-column:auto}
  .training-queue-row>.yt-skill-art{width:58px;height:58px}.training-queue-row{padding:10px;gap:12px}
  .progress-recommendation-card button,.training-recommendation-bar>button{width:100%;margin:5px 0 0}
}
@media(max-width:390px){
  body.yt-student-ui .main-area:has(#placeholder-progreso.active,#dashboard-improve.active){padding:12px}
  .progress-summary-grid{grid-template-columns:1fr}.progress-next-card{grid-column:auto}
  .progress-summary-grid .progress-next-card{flex-wrap:wrap}.progress-next-card button{margin-left:47px}
  .progress-map-panel{padding:12px}.progress-node-orb{width:40px;height:40px;flex-basis:40px}.progress-node-orb .yt-skill-art{width:35px;height:35px}
  .progress-map-node,.progress-map-node[data-skill]{padding:7px;gap:6px}.progress-node-copy strong{font-size:10px}.progress-node-copy small{font-size:9px}
  .progress-detail-metrics>div{grid-template-columns:1fr;text-align:center}.progress-detail-metrics span{display:none}
  .progress-filters{flex-wrap:wrap}.progress-filters label{flex-basis:100%}
  .training-skill-card{gap:7px;padding:8px}.training-skill-card .yt-skill-art{width:42px;height:42px}.training-skill-card small{font-size:11px}
  .training-word-card{grid-template-columns:46px minmax(0,1fr) auto}.training-word-card>img{width:46px;height:46px;grid-row:1/3}
  .training-word-profession{grid-column:2;grid-row:2}.training-word-recovery{grid-column:3;grid-row:1/3}
  .training-queue-row{gap:8px;padding:8px}.training-queue-row>.yt-skill-art{width:45px;height:45px}
  .training-rule-row{gap:6px;padding:7px 5px;grid-template-columns:29px 25px minmax(0,1fr) 15px minmax(49px,.7fr)}
  .training-rule-row p,.training-rule-row b{font-size:10px}
}
@media(prefers-reduced-motion:reduce){:is(.progress-page,.training-page) *{scroll-behavior:auto!important;transition:none!important}}

/* V116 · lectura más cómoda en el panel lateral. */
body.yt-student-ui .sidebar .side-link{
  font-size:14px;
}
body.yt-student-ui .sidebar .yt-nav-heading{
  font-size:11px;
}
@media(max-width:760px){
  body.yt-student-ui .sidebar .side-link .label{
    font-size:10px;
  }
}
