.course-path{color:var(--text-primary);font-family:var(--font-sans),system-ui,sans-serif;background:var(--surface-base);min-height:100dvh}.course-path__wrap{display:flex;flex-direction:column;gap:0}.course-path__wrap.course-path__wrap--shell{padding:0}.course-path__desktop-layout{display:flex;flex-direction:column}.course-path__main{min-width:0}.course-path__search{position:relative;width:100%}.course-path__search-box{position:relative;display:flex;align-items:center;gap:var(--space-3);min-height:3.25rem;padding:0 var(--space-5);background:var(--surface-raised);border:1px solid var(--border-default);border-radius:var(--radius-full);transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast)}.course-path__search-box:focus-within{background:var(--surface-base);border-color:var(--text-strong);box-shadow:0 0 0 3px color-mix(in oklch,var(--text-strong) 15%,transparent)}.course-path__search-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--text-tertiary)}.course-path__search-input{flex:1;min-width:0;height:2.5rem;background:transparent;border:none;color:var(--text-primary);font-family:var(--font-sans),system-ui,sans-serif;font-size:var(--text-size-body-sm);outline:none;padding:0}.course-path__search-input::placeholder{color:var(--text-placeholder)}.course-path__search-clear{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;padding:0;background:var(--surface-sunken);color:var(--text-secondary);border:none;border-radius:var(--radius-full);cursor:pointer;transition:color var(--transition-fast),background var(--transition-fast)}.course-path__search-clear:hover{background:var(--border-default);color:var(--text-primary)}.course-path__search-clear:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.course-path__search-kbd{flex-shrink:0;padding:.125rem .375rem;font-family:var(--font-mono-var),monospace;font-size:var(--text-size-xxs);color:var(--text-secondary);background:var(--surface-sunken);border:1px solid var(--border-subtle);border-radius:var(--radius-xs);line-height:1.2;user-select:none}.course-path__search-dropdown{position:absolute;top:calc(100% + var(--space-1));left:0;right:0;background:var(--surface-raised);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:30;max-height:20rem;overflow-y:auto;overscroll-behavior:contain}.course-path__search-list{margin:0;padding:var(--space-1) 0;list-style:none}.course-path__search-item-wrap{margin:0;padding:0;list-style:none}.course-path__search-item{display:flex;flex-direction:column;gap:.125rem;padding:var(--space-2) var(--space-3);cursor:pointer;border-left:2px solid transparent;text-decoration:none;color:inherit;transition:background var(--transition-fast),border-color var(--transition-fast)}.course-path__search-item--focused,.course-path__search-item:hover{background:var(--surface-sunken);border-left-color:var(--primary);text-decoration:none}.course-path__search-item-main{display:flex;align-items:center;gap:var(--space-2);min-width:0}.course-path__search-item-level{display:inline-flex;align-items:center;padding:.0625rem .375rem;border-radius:var(--radius-xs);background:var(--primary-soft);color:var(--primary);font-family:var(--font-mono-var),monospace;font-size:var(--text-size-xxs);font-weight:700;letter-spacing:.03em;flex-shrink:0}.course-path__search-item-title{font-size:var(--text-size-body-sm);font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.course-path__search-item-sub{font-size:var(--text-size-tiny);color:var(--text-tertiary);padding-left:calc(var(--space-2) + 1.75rem);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.course-path__search-empty{padding:var(--space-4) var(--space-3);text-align:center}.course-path__search-empty p{margin:0;font-size:var(--text-size-body-sm);color:var(--text-tertiary)}.course-path__hero-search{margin-bottom:var(--space-4);width:100%}.course-path__aside{display:none;flex-direction:column;gap:var(--space-5);margin-top:0}.course-path__aside-card{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5);background:var(--surface-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);text-decoration:none;color:inherit;transition:border-color var(--transition-fast),background var(--transition-fast)}.course-path__aside-card:hover{border-color:var(--border-default)}.course-path__aside-card-toggle{width:100%;padding:0;background:transparent;border:none;text-align:left;cursor:pointer;color:inherit;font:inherit}.course-path__aside-card-head{display:flex;align-items:center;gap:var(--space-3);width:100%}.course-path__aside-card-icon-box{display:flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border-radius:var(--radius-md);background:var(--surface-sunken);color:var(--text-secondary);flex-shrink:0}.course-path__aside-card-icon-box--amber{background:color-mix(in srgb,var(--warning) 18%,transparent);color:var(--warning)}.course-path__aside-card-heading{display:flex;flex-direction:column;gap:.125rem;flex:1;min-width:0}.course-path__aside-card-title-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);width:100%}.course-path__aside-card-title{margin:0;font-family:var(--font-sans),system-ui,sans-serif;font-size:var(--text-size-body);font-weight:600;color:var(--text-primary);line-height:1.3}.course-path__aside-card-sub{margin:0;font-size:var(--text-size-caption);color:var(--text-tertiary);line-height:1.3}.course-path__aside-card-chevron{color:var(--text-tertiary);transition:transform .2s cubic-bezier(.25,1,.5,1);flex-shrink:0}.course-path__aside-card-chevron--open{transform:rotate(180deg)}.course-path__pronunciation-tags{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-1)}.course-path__pronunciation-tag{display:inline-flex;align-items:center;padding:.125rem .5rem;border-radius:var(--radius-sm);background:var(--surface-sunken);color:var(--text-secondary);font-family:var(--font-mono-var),monospace;font-size:var(--text-size-xxs)}.course-path__irl-body{padding-top:var(--space-3)}.course-path__aside-section,.course-path__irl-body{display:flex;flex-direction:column;gap:var(--space-3);border-top:1px solid var(--border-subtle)}.course-path__aside-section{padding-top:var(--space-5)}.course-path__aside-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.course-path__aside-level{display:inline-flex;align-items:center;flex-shrink:0;min-height:1.375rem;padding:.0625rem .5rem;border-radius:var(--radius-xs);background:var(--primary-soft);color:var(--primary);font-weight:700;letter-spacing:.04em}.course-path__aside-kicker,.course-path__aside-level{font-family:var(--font-mono-var),monospace;font-size:var(--text-size-xxs);text-transform:uppercase}.course-path__aside-kicker{margin:0;color:var(--text-tertiary);font-weight:600;letter-spacing:.08em}.course-path__aside-title{margin:0;color:var(--text-primary);font-size:var(--text-size-body-lg);font-weight:600;line-height:1.3}.course-path__aside-title--small{font-size:var(--text-size-body)}.course-path__aside-copy{max-width:30ch;margin:0;color:var(--text-secondary);font-size:var(--text-size-body-sm);line-height:1.5}.course-path__aside-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3) var(--space-4);margin:0}.course-path__aside-facts div{display:flex;flex-direction:column;gap:.125rem}.course-path__aside-facts dt,.course-path__aside-meta{color:var(--text-tertiary);font-size:var(--text-size-tiny);line-height:1.3}.course-path__aside-facts dd{margin:0;color:var(--text-primary);font-size:var(--text-size-body);font-weight:600;font-variant-numeric:tabular-nums;line-height:1.2}.course-path__aside-link{display:inline-flex;align-items:center;align-self:flex-start;gap:var(--space-2);min-height:2.25rem;color:var(--primary);font-size:var(--text-size-body-sm);font-weight:600;text-decoration:none}.course-path__aside-link:hover{color:var(--primary-hover);text-decoration:underline;text-underline-offset:3px}.course-path__aside-link:focus-visible{outline:2px solid var(--primary);outline-offset:3px;border-radius:var(--radius-xs)}@media (min-width:1024px){.course-path__hero-search{display:none}.course-path__desktop-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(16rem,20rem);align-items:start;gap:var(--space-10)}.course-path__aside{display:flex;position:sticky;top:var(--space-6);margin-top:0}}.course-path__level-picker{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-5)}.course-path__level-picker-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);width:100%}.course-path__level-picker-title{margin:0;font-size:var(--text-size-body);font-weight:600;letter-spacing:0;color:var(--text-primary)}.course-path__level-picker-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-1) var(--space-4)}.course-path__text-link{display:inline-flex;align-items:center;flex-shrink:0;min-height:2.75rem;font-size:var(--text-size-body-sm);font-weight:600;color:var(--primary);text-decoration:none}.course-path__text-link:hover{color:var(--primary-hover);text-decoration:underline;text-underline-offset:3px}.course-path__text-link:focus-visible{outline:2px solid var(--primary);outline-offset:3px;border-radius:var(--radius-xs)}.course-path__legend{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--border-subtle);font-size:var(--text-size-tiny);color:var(--text-tertiary)}.course-path__legend-disclosure{margin-top:var(--space-8);border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle)}.course-path__legend-summary{padding-block:var(--space-3);color:var(--text-secondary);cursor:pointer;font-size:var(--text-size-body-sm);font-weight:600;list-style-position:inside}.course-path__legend-summary:focus-visible{outline:2px solid var(--primary);outline-offset:3px;border-radius:var(--radius-xs)}.course-path__legend-disclosure[open] .course-path__legend-summary{color:var(--text-primary)}.course-path__legend-disclosure .course-path__legend{padding-top:0;border-top:0}.course-path__lg{display:flex;align-items:center;gap:var(--space-2)}.course-path__spine{display:flex;align-items:center;gap:var(--space-1);padding:.25rem .35rem;background:var(--surface-raised,#ffffff);border:1.5px solid var(--border-subtle);border-radius:9999px;margin:0;box-shadow:0 1px 3px rgba(0,0,0,.04)}.course-path__level{display:inline-flex;align-items:center;justify-content:center;gap:.15rem;min-height:2.125rem;padding:.4rem .95rem;border-radius:9999px;border:1px solid transparent;background:transparent;transition:all .2s cubic-bezier(.16,1,.3,1);color:var(--text-primary);font-family:var(--font-sans),system-ui,sans-serif;font-size:var(--text-size-body-sm);font-weight:700;cursor:pointer;text-decoration:none;position:relative;white-space:nowrap}.course-path__level:hover:not(.course-path__level--on){color:var(--text-primary);background:var(--surface-sunken)}.course-path__level-dot,.course-path__level-lv{font-weight:700;line-height:1;color:inherit}.course-path__level-dot{margin:0 .1rem}.course-path__level-count{font-family:inherit;font-size:inherit;color:inherit;font-weight:700;line-height:1}.course-path__level:focus-visible{outline:2px solid #2563eb;outline-offset:2px}.course-path__level--on{border-color:transparent;background:#2563eb!important;color:#ffffff!important;box-shadow:0 2px 8px color-mix(in oklch,#2563eb 30%,transparent)}.course-path__level--on .course-path__level-count,.course-path__level--on .course-path__level-dot,.course-path__level--on .course-path__level-lv{color:#ffffff!important}.course-path__level--on .course-path__level-progress{background:color-mix(in srgb,var(--primary) 20%,var(--surface-sunken))}.course-path__level--on .course-path__level-progress-bar{background:var(--primary)}.course-path__level--on .course-path__level-count{color:var(--text-secondary);font-weight:600}.course-path__mobile-toolbar{display:flex;align-items:flex-start;gap:var(--space-2);margin-bottom:0;width:100%}.course-path__mobile-search-wrap{flex:1;min-width:0}.course-path__level-picker-mobile{display:none}@media (max-width:1023px){.course-path__level-picker{gap:0;margin-bottom:0}.course-path__level-picker-head,.course-path__spine--desktop{display:none}.course-path .page-header{position:relative}.course-path .page-header .course-path__level-picker{position:absolute;top:0;right:0}.course-path .page-header .course-path__level-picker-mobile-label{display:none}.course-path__level-picker-mobile{position:relative;display:block;flex-shrink:0}.course-path__level-picker-mobile-summary{display:flex;align-items:center;gap:var(--space-2);padding:.35rem .85rem;color:var(--text-primary);background:var(--surface-raised,#ffffff);border:1.5px solid var(--border-subtle);border-radius:9999px;cursor:pointer;list-style:none;white-space:nowrap;box-shadow:0 1px 2px rgba(0,0,0,.04)}.course-path__level-picker-mobile-summary::-webkit-details-marker{display:none}.course-path__level-picker-mobile-summary::marker{content:""}.course-path__level-picker-mobile-summary:focus-visible{outline:2px solid #2563eb;outline-offset:2px}.course-path__level-picker-mobile-label{font-size:var(--text-size-caption);color:var(--text-tertiary);font-weight:500}.course-path__level-picker-mobile-current{padding:.15rem .6rem;border-radius:9999px;background:#2563eb;color:#ffffff!important;font-weight:700;font-size:.8125rem;line-height:1.2}.course-path__level-picker-mobile-summary svg{color:var(--text-tertiary);transition:transform var(--transition-fast)}.course-path__level-picker-mobile[open] .course-path__level-picker-mobile-summary svg{transform:rotate(180deg)}.course-path__level-picker-mobile-content{position:absolute;top:calc(100% + var(--space-2));right:0;width:min(calc(100vw - 2rem),20rem);z-index:50;background:var(--surface-raised,#ffffff);border:1.5px solid var(--border-subtle);border-radius:1.25rem;box-shadow:0 12px 32px rgba(0,0,0,.14);display:flex;flex-direction:column;gap:var(--space-2);padding:.75rem}.course-path__mobile-menu-header{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary);padding:.25rem .35rem 0}.course-path__mobile-options-list{display:flex;flex-direction:column;gap:.35rem;max-height:19rem;overflow-y:auto;padding-right:.15rem}.course-path__mobile-option{display:flex;align-items:center;justify-content:space-between;padding:.625rem .875rem;border-radius:.75rem;text-decoration:none;background:var(--surface-sunken);color:var(--text-primary);transition:all .15s ease-in-out}.course-path__mobile-option--active{background:#2563eb!important;color:#ffffff!important;box-shadow:0 2px 8px color-mix(in oklch,#2563eb 25%,transparent)}.course-path__mobile-option-title{font-size:.875rem;font-weight:700;color:inherit;line-height:1.25}.course-path__mobile-option-sub{font-size:.75rem;color:inherit;opacity:.8;line-height:1.2;margin-top:.1rem}.course-path__mobile-option-badge{font-size:.75rem;font-weight:700;padding:.2rem .55rem;border-radius:9999px;background:rgba(255,255,255,.22);color:inherit;flex-shrink:0;margin-left:.5rem}.course-path__mobile-option:not(.course-path__mobile-option--active) .course-path__mobile-option-badge{background:var(--surface-raised);color:var(--text-secondary)}.course-path__level-picker-mobile-actions{display:flex;flex-direction:column;gap:.25rem;padding-top:.5rem;border-top:1px solid var(--border-subtle);margin-top:.25rem}}.course-path__head{margin-bottom:var(--space-4);padding:var(--space-2) 0 var(--space-3);border-bottom:1px solid var(--border-subtle)}.course-path__head h1,.course-path__head h2{margin:0;font-family:var(--font-display),"Bricolage Grotesque",system-ui,sans-serif;font-weight:600;font-size:var(--text-size-h1);letter-spacing:-.02em;color:var(--text-primary);text-wrap:balance}.course-path__head-subtitle{margin:var(--space-1) 0 0 0;font-family:var(--font-sans),system-ui,sans-serif;font-size:var(--text-size-body-sm);color:var(--text-secondary);line-height:1.4}.course-path__inline-pri{display:inline-flex;align-items:center;gap:var(--space-1);color:var(--primary);vertical-align:middle}.course-path__star-icon{color:var(--primary)}.course-path__units{display:flex;flex-direction:column;gap:var(--space-2)}.course-path__unit{background:var(--surface-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);overflow:hidden}.course-path__unit--active,.course-path__unit[open]{border-color:var(--border-default)}.course-path__unit--done{border-color:color-mix(in oklch,var(--success) 35%,var(--border-subtle))}.course-path__unit--done .course-path__urow{background:var(--success-soft)}.course-path__urow{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);border:none;background:transparent;color:inherit;font:inherit;cursor:pointer;text-align:left;min-height:3.75rem}.course-path__urow::-webkit-details-marker{display:none}.course-path__urow:hover{background:var(--surface-sunken)}.course-path__urow[aria-disabled=true]{cursor:default}.course-path__urow[aria-disabled=true]:hover{background:transparent}.course-path__urow:focus-visible{outline:2px solid var(--primary);outline-offset:-2px;border-radius:var(--radius-lg)}.course-path__uinfo{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.course-path__ring{flex-shrink:0;width:44px;height:44px;background:conic-gradient(var(--primary) calc(var(--p, 0) * 1%),var(--surface-sunken) 0)}.course-path__ring,.course-path__ring-inner{border-radius:50%;display:flex;align-items:center;justify-content:center}.course-path__ring-inner{width:34px;height:34px;background:var(--surface-raised);color:var(--text-primary);font-size:var(--text-size-xxs);font-weight:600;letter-spacing:-.02em}.course-path__unit--done .course-path__ring{background:var(--success)}.course-path__unit--done .course-path__ring-inner{color:var(--success-value)}.course-path__unit--locked .course-path__ring{background:var(--surface-sunken)}.course-path__un,.course-path__unit--locked .course-path__ring-inner{color:var(--text-tertiary)}.course-path__un{font-size:var(--text-size-xxs);font-weight:600;letter-spacing:.08em;text-transform:uppercase}.course-path__ut{font-family:var(--font-sans),system-ui,sans-serif;font-size:var(--text-size-body);font-weight:600;color:var(--text-primary);letter-spacing:-.01em;line-height:1.35}.course-path__um{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-size-caption);color:var(--text-tertiary);line-height:1.25}.course-path__uicon-chevron{flex-shrink:0;color:var(--text-tertiary);margin-left:auto;transition:transform .2s cubic-bezier(.25,1,.5,1),color .15s}.course-path__unit[open] .course-path__uicon-chevron{transform:rotate(90deg);color:var(--text-secondary)}.course-path__chev{color:var(--text-tertiary);transition:transform .2s cubic-bezier(.25,1,.5,1),color .15s}.course-path__unit--open .course-path__chev{transform:rotate(90deg);color:var(--primary)}.course-path__hero-banner{display:flex;flex-direction:column;justify-content:space-between;gap:var(--space-6);padding:var(--space-6) var(--space-7);margin-bottom:var(--space-6);background:var(--sky)!important;border:1px solid color-mix(in oklch,var(--sky-deep) 35%,transparent);border-radius:28px;text-decoration:none;transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden;color:#12151c!important}@media (min-width:640px){.course-path__hero-banner{flex-direction:row;align-items:center;padding:var(--space-7) var(--space-8);min-height:16.5rem}}.course-path__hero-banner:hover{transform:translateY(-2px);box-shadow:0 10px 28px color-mix(in oklch,var(--sky-deep) 35%,transparent)}.course-path__hero-content{display:flex;flex-direction:column;flex:1;min-width:0;z-index:1}.course-path__hero-title{margin:0 0 .5rem;font-family:var(--font-display),"Bricolage Grotesque",system-ui,sans-serif;font-size:clamp(1.65rem,2.8vw,2.35rem);font-weight:800;color:#12151c!important;line-height:1.2;letter-spacing:-.025em}.course-path__hero-desc{margin:0 0 var(--space-4) 0;font-size:var(--text-size-body);font-weight:500;color:#12151c/.75;color:color-mix(in oklch,#12151c 75%,transparent);line-height:1.4;max-width:32rem}.course-path__hero-progress{width:100%;max-width:26rem;margin-bottom:var(--space-4)}.course-path__hero-progress-track{height:.5rem;width:100%;background:rgba(18,21,28,.14);border:1px solid rgba(18,21,28,.22);border-radius:var(--radius-full);overflow:hidden;margin-bottom:.5rem}.course-path__hero-progress-bar{height:100%;background:#12151c;border-radius:var(--radius-full);transition:width .35s ease}.course-path__hero-progress-meta{display:flex;align-items:center;justify-content:space-between;font-size:var(--text-size-caption);font-weight:600;color:#12151c}.course-path__hero-progress-duration{display:inline-flex;align-items:center;gap:.25rem}.course-path__hero-action{display:flex;align-items:center}.course-path__hero-action-pill{display:inline-flex;align-items:center;gap:var(--space-2);padding:.65rem 1.6rem;background:var(--accent-blue);color:#ffffff;font-size:var(--text-size-body-sm);font-weight:700;border-radius:var(--radius-full);box-shadow:0 2px 8px color-mix(in oklch,var(--accent-blue) 35%,transparent);transition:background var(--transition-fast),transform var(--transition-fast)}.course-path__hero-banner:hover .course-path__hero-action-pill{background:color-mix(in oklch,var(--accent-blue) 85%,black);transform:translateX(2px)}.course-path__hero-illustration-box{position:relative;flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:transform .3s ease;color:var(--ink)}.course-path__hero-banner:hover .course-path__hero-illustration-box{transform:scale(1.04)}@media (max-width:1023px){.course-path__hero-banner{gap:var(--space-3);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-4)}.course-path__hero-icon-box{width:2.5rem;height:2.5rem;border-radius:var(--radius-lg)}.course-path__hero-title{font-size:clamp(1.25rem,5vw,1.65rem)}.course-path__hero-desc{font-size:var(--text-size-body-sm);margin-bottom:var(--space-3)}.course-path__hero-progress{max-width:none;margin-bottom:var(--space-3)}.course-path__hero-action-text{display:none}}@media (max-width:639px){.course-path__hero-banner{padding:var(--space-4);border-radius:20px}.course-path__hero-illustration-box{display:none}}@media (min-width:640px){.course-path__hero-illustration-box{margin-top:0;max-width:17rem}}@media (min-width:1024px){.course-path__hero-illustration-box{max-width:19rem}}.course-path__main-card{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-6)}.course-path__lessons>div{display:flex;flex-direction:column;gap:var(--space-1);padding:0 var(--space-4) var(--space-3)}.course-path__lesson-group{background:var(--surface-raised);border:1px solid var(--border-subtle);border-radius:20px;overflow:hidden;margin-bottom:var(--space-3);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.course-path__lesson-group[open]{border-color:var(--border-default);box-shadow:0 2px 8px color-mix(in oklch,var(--text-strong) 4%,transparent)}.course-path__lesson-group-summary{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);color:var(--text-secondary);cursor:pointer;list-style:none;transition:background var(--transition-fast)}.course-path__lesson-group-summary::-webkit-details-marker{display:none}.course-path__lesson-group-summary:hover{background:var(--surface-sunken)}.course-path__lesson-group-summary:focus-visible{outline:2px solid var(--primary);outline-offset:-2px;border-radius:18px}.course-path__group-icon-box{display:flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border-radius:14px;flex-shrink:0;border:0;transition:background var(--transition-fast),color var(--transition-fast)}.course-path__group-icon-box--lilac,.course-path__lvb--lilac{background:var(--lilac);color:var(--ink)}.course-path__group-icon-box--butter,.course-path__lvb--butter{background:var(--butter);color:var(--ink)}.course-path__group-icon-box--mint,.course-path__lvb--mint{background:var(--mint);color:var(--ink)}.course-path__group-icon-box--coral,.course-path__lvb--coral{background:var(--coral);color:var(--ink)}.course-path__group-icon-box--sky,.course-path__lvb--sky{background:var(--sky);color:var(--ink)}.course-path__lesson-group-heading{display:flex;flex-direction:column;gap:.125rem;flex:1;min-width:0}.course-path__lesson-group-title{color:var(--text-strong);font-family:var(--font-sans),system-ui,sans-serif;font-size:var(--text-size-body-lg);font-weight:700;line-height:1.3}.course-path__lesson-group-meta{color:var(--text-tertiary);font-size:var(--text-size-body-sm);font-variant-numeric:tabular-nums;line-height:1.25}.course-path__meta-status--done{color:var(--success);font-weight:600}.course-path__meta-status--partial{color:var(--primary);font-weight:600}.course-path__meta-status--unstarted{color:var(--text-tertiary)}.course-path__lesson-group-chevron{flex-shrink:0;color:var(--text-tertiary);margin-left:auto;transition:transform .24s cubic-bezier(.16,1,.3,1),color .18s ease}.course-path__lesson-group[open] .course-path__lesson-group-chevron{color:var(--primary);transform:rotate(90deg)}.course-path__lesson-group-body{display:flex;flex-direction:column;gap:0;padding:0;border-top:1px solid var(--border-subtle)}.course-path__subgroup-kicker{font-family:var(--font-mono-var),monospace;font-size:var(--text-size-caption);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary);padding:var(--space-5) var(--space-5) var(--space-2);margin-top:var(--space-2);border-top:0}.course-path__subgroup-kicker:first-child{border-top:0;margin-top:0;padding-top:var(--space-3)}.course-path__lesson{--lesson-pad-y:var(--space-4);display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--lesson-pad-y) var(--space-5);margin:0;background:transparent;border:0;border-bottom:1px solid var(--border-subtle);border-radius:0;text-decoration:none;color:inherit;transition:background var(--transition-fast)}.course-path__lesson--current{background:var(--surface-sunken)}.course-path__lesson--current:hover{background:color-mix(in oklch,var(--border-subtle) 35%,var(--surface-sunken))}.course-path__lesson:last-child{border-bottom:0}.course-path__num-circle{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;width:1.625rem;height:1.625rem;border-radius:50%;border:0;background:color-mix(in oklch,var(--border-strong) 40%,var(--surface-raised));color:var(--text-strong);font-family:var(--font-mono-var),monospace;font-size:var(--text-size-caption);font-weight:700;flex-shrink:0;line-height:1;margin-top:2px}.course-path__num-circle--done{border:0;background:var(--success);color:var(--on-success,#ffffff)}.course-path__num-circle--current{border:0;background:var(--primary);color:var(--on-primary,#ffffff);box-shadow:0 1px 3px color-mix(in oklch,var(--primary) 30%,transparent)}.course-path__spine-body{padding-bottom:var(--space-2)}.course-path__spine-item{position:relative}.course-path__spine-node-col{position:relative;display:flex;flex-direction:column;align-items:center;flex-shrink:0;width:1.625rem;align-self:stretch}.course-path__spine-line{position:absolute;top:15px;bottom:calc(-2 * var(--lesson-pad-y, var(--space-4)) - 16px);left:50%;transform:translateX(-50%);width:2px;background:var(--border-default);z-index:1}.course-path__lesson--done .course-path__spine-line{background:color-mix(in oklch,var(--success) 55%,var(--border-subtle))}.course-path__spine-continue{display:inline-flex;align-items:center;gap:var(--space-2);align-self:flex-start;margin-top:var(--space-2);padding:.5rem 1.125rem;background:var(--primary);color:var(--on-primary,#ffffff);font-size:var(--text-size-body-sm);font-weight:600;border-radius:var(--radius-full);text-decoration:none;transition:background var(--transition-fast),transform var(--transition-fast)}.course-path__spine-continue:hover{background:var(--primary-hover);transform:translateX(2px)}.course-path__spine-continue:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.course-path__num{font-family:var(--font-mono-var),monospace;font-size:var(--text-size-caption);color:var(--text-tertiary);flex-shrink:0;width:1.5rem}.course-path__lesson-main{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.course-path__lesson-title-row{display:flex;align-items:center;gap:var(--space-2);min-width:0;flex-wrap:wrap}.course-path__lesson-heart{opacity:0;transition:opacity var(--transition-fast);display:inline-flex;align-items:center;flex-shrink:0;margin-left:auto}.course-path__lesson-heart [aria-pressed=true],.course-path__lesson-heart [data-saved=true],.course-path__lesson-heart:focus-within,.course-path__lesson:hover .course-path__lesson-heart{opacity:1}@media (max-width:1023px){.course-path__lesson-heart{display:none}.course-path__lesson-heart:has([aria-pressed=true]),.course-path__lesson-heart:has([data-saved=true]){display:inline-flex;opacity:1}}.course-path__lesson-keywords{font-family:var(--font-mono-var),monospace;font-size:var(--text-size-caption);color:var(--text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.course-path__lesson-meta-end{display:flex;align-items:center;gap:var(--space-4);flex-shrink:0;margin-left:auto}.course-path__tag{display:inline-flex;align-items:center;padding:1px 7px;border-radius:var(--radius-full);font-family:var(--font-mono-var),monospace;font-size:.625rem;font-weight:600;letter-spacing:.04em;text-transform:lowercase;border:1px solid transparent;line-height:1.25;white-space:nowrap;flex-shrink:0}.course-path__tag--concepto{background:var(--sky);color:var(--ink);border-color:var(--sky-deep)}.course-path__tag--practica{background:var(--mint);color:var(--ink);border-color:var(--mint-deep)}.course-path__tag--pronunciacion{background:var(--lilac);color:var(--ink);border-color:var(--lilac-deep)}.course-path__tag--repaso{background:var(--butter);color:var(--ink);border-color:var(--butter-deep)}.course-path__duration{font-family:var(--font-mono-var),monospace;font-size:var(--text-size-caption);color:var(--text-tertiary);margin-left:auto;text-align:right;flex-shrink:0;white-space:nowrap}.course-path__optional-card{background:var(--surface-raised);border:1px dashed var(--border-subtle);border-radius:var(--radius-xl);overflow:hidden;margin-top:var(--space-4);transition:border-color var(--transition-fast)}.course-path__optional-card:hover{border-color:var(--border-default)}.course-path__optional-summary{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);cursor:pointer;list-style:none}.course-path__optional-summary::-webkit-details-marker{display:none}.course-path__optional-summary::marker{content:"";display:none}.course-path__optional-summary:hover{background:var(--surface-sunken)}.course-path__optional-summary:focus-visible{outline:2px solid var(--primary);outline-offset:-2px;border-radius:var(--radius-sm)}.course-path__optional-icon-box{display:flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border-radius:var(--radius-md);background:var(--surface-sunken);border:1px solid var(--border-subtle);color:var(--text-secondary);flex-shrink:0}.course-path__optional-heading{display:flex;flex-direction:column;gap:.125rem;flex:1;min-width:0}.course-path__optional-title{font-family:var(--font-display),"Bricolage Grotesque",system-ui,sans-serif;font-size:var(--text-size-body);font-weight:600;color:var(--text-primary);line-height:1.35}.course-path__optional-meta{font-size:var(--text-size-caption);color:var(--text-tertiary);display:flex;align-items:center;gap:var(--space-2);line-height:1.25}.course-path__optional-badge{display:inline-flex;align-items:center;padding:.0625rem .375rem;border-radius:var(--radius-xs);background:var(--surface-sunken);border:1px solid var(--border-subtle);color:var(--text-tertiary);font-family:var(--font-mono-var),monospace;font-size:var(--text-size-xxs);font-weight:700;letter-spacing:.05em;text-transform:uppercase}.course-path__optional-chevron{color:var(--text-tertiary);margin-left:auto;flex-shrink:0;transition:transform .2s cubic-bezier(.25,1,.5,1)}.course-path__optional-card[open] .course-path__optional-chevron{transform:rotate(90deg);color:var(--text-secondary)}.course-path__optional-body{display:flex;flex-direction:column;gap:0;padding:var(--space-2) var(--space-4) var(--space-3);border-top:1px solid var(--border-subtle)}.course-path__lesson--locked{opacity:.6}.course-path__locked-label{flex-shrink:0;font-size:var(--text-size-xxs);font-weight:500;color:var(--text-tertiary);letter-spacing:.04em;margin-left:auto}.course-path__lesson:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.course-path__st{flex-shrink:0;width:22px;height:22px;border-radius:50%;border:1.5px solid var(--border-default);color:var(--text-tertiary);font-size:var(--text-size-xxs);display:flex;align-items:center;justify-content:center}.course-path__lesson--current .course-path__st{background:var(--primary-soft);border-color:var(--primary);color:var(--primary)}.course-path__lt,.course-path__lt--link{flex:0 1 auto;min-width:0;font-size:var(--text-size-label);color:var(--text-primary);background:transparent;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.course-path__lesson--current .course-path__lt{font-weight:600}.course-path__lesson--done .course-path__st{border-color:var(--success);color:var(--success)}.course-path__lesson--done .course-path__lt{color:var(--text-secondary)}.course-path__lesson:target{background:var(--surface-sunken);border-color:var(--border-strong);scroll-margin-top:6rem}.course-path__lk{display:inline-flex;align-items:center;gap:var(--space-1);flex-shrink:0;margin-left:auto;padding:4px 10px 4px 12px;font-size:var(--text-size-tiny);font-weight:600;color:var(--primary);background:var(--primary-soft);border-radius:var(--radius-full);text-decoration:none;white-space:nowrap;transition:background .15s ease-out,color .15s ease-out}.course-path__lk:hover{background:color-mix(in oklch,var(--primary) 18%,var(--surface-raised));color:var(--primary-hover)}.course-path__lk:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.course-path__why{background:color-mix(in oklch,var(--primary) 5%,var(--surface-raised));border:1px solid color-mix(in oklch,var(--primary) 18%,var(--border-subtle));border-radius:var(--radius-lg);overflow:hidden}.course-path__why-summary{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-3) var(--space-4);cursor:pointer;font-family:var(--font-sans),system-ui,sans-serif;font-weight:480;font-size:var(--text-size-body);color:var(--text-secondary);transition:color .15s;user-select:none;background:transparent;border:none;text-align:left}.course-path__why-summary:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:var(--radius-md)}.course-path__why-chev{flex-shrink:0;color:var(--text-tertiary);transition:transform .18s cubic-bezier(.25,1,.5,1)}.course-path__why-chev--open{transform:rotate(90deg)}.course-path__why-summary:hover{color:var(--text-primary)}.course-path__why-body{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);border-top:1px solid color-mix(in oklch,var(--primary) 12%,var(--border-subtle))}.course-path__why-body p{font-size:var(--text-size-body-sm);color:var(--text-secondary);line-height:1.6}.course-path__why-body strong{color:var(--primary);font-weight:600}.course-path__lg>span{color:var(--text-secondary);line-height:1.4}.course-path__lt--link{text-decoration:none;display:inline-flex;align-items:center;gap:var(--space-2)}.course-path__lt-check{flex-shrink:0;color:var(--success);opacity:.85}.course-path__lt--link:hover,.course-path__snd{color:var(--primary)}.course-path__snd{display:inline-flex;align-items:center;gap:var(--space-1);padding:2px 6px;border-radius:var(--radius-sm);text-decoration:none;background:var(--accent-dim);transition:background var(--transition-fast),color var(--transition-fast);white-space:nowrap;flex-shrink:0}.course-path__snd:hover{background:color-mix(in oklch,var(--primary) 18%,var(--surface-sunken));color:var(--primary-hover)}.course-path__snd-label{font-size:var(--text-size-xxs);font-weight:600;letter-spacing:.02em}.course-path__unit--optional-block{border-style:dashed;opacity:.82}.course-path__unit--optional-block.course-path__unit--open,.course-path__unit--optional-block:has(.course-path__unit--open){opacity:1}.course-path__unit--optional-block .course-path__un{color:var(--text-tertiary)}.course-path__optional-tag{font-size:var(--text-size-xxs);font-weight:500;letter-spacing:.06em;color:var(--text-tertiary);border:1px solid var(--border-subtle);border-radius:var(--radius-full);padding:1px 6px;text-transform:uppercase}.course-path__rutas{display:flex;flex-direction:column;gap:var(--space-3)}.course-path__ruta{background:var(--surface-raised);border:1px solid var(--border-subtle);border-radius:20px;overflow:hidden;margin-bottom:var(--space-3);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.course-path__ruta--open{border-color:var(--border-default);box-shadow:0 2px 8px color-mix(in oklch,var(--text-strong) 4%,transparent)}.course-path__rrow{display:flex;align-items:center;gap:var(--space-4);width:100%;padding:var(--space-4) var(--space-5);border:none;background:transparent;color:inherit;font:inherit;cursor:pointer;text-align:left;min-height:4rem}.course-path__rrow:hover{background:var(--surface-sunken)}.course-path__rrow:focus-visible{outline:2px solid var(--primary);outline-offset:-2px;border-radius:18px}.course-path__rinfo{flex:1;display:flex;flex-direction:column;gap:.125rem;min-width:0}.course-path__rm{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-size-body-sm);color:var(--text-tertiary)}.course-path__ruta-body-wrap{display:grid;grid-template-rows:0fr;transition:grid-template-rows .22s cubic-bezier(.25,1,.5,1)}.course-path__ruta-body-wrap>*{overflow:hidden}.course-path__ruta--open .course-path__ruta-body-wrap{grid-template-rows:1fr}.course-path__ruta-body{padding:var(--space-3) var(--space-4) var(--space-4);border-top:1px solid var(--border-subtle)}.course-path__lvb{flex-shrink:0;width:2.75rem;height:2.75rem;display:flex;align-items:center;justify-content:center;font-size:var(--text-size-body);border-radius:14px;border:0}.course-path__lvb,.course-path__rt{font-family:var(--font-sans),system-ui,sans-serif}.course-path__rt{font-size:var(--text-size-body-lg);font-weight:700;color:var(--text-strong);line-height:1.3}.course-path__lvb--spec{color:var(--primary);background:var(--badge-primary-bg);border-color:var(--badge-primary-border)}.course-path__rchev{color:var(--text-tertiary);transition:transform .2s cubic-bezier(.25,1,.5,1),color .15s}.course-path__ruta--open .course-path__rchev{transform:rotate(90deg);color:var(--primary)}.course-path__head--compact h1,.course-path__head--compact h2{font-size:var(--text-size-body-lg);font-weight:600;letter-spacing:0}.course-path__resume,.course-path__start-here{margin-bottom:var(--space-4)}.course-path__start-here{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);background:var(--cta-bg);border-radius:var(--radius-md);text-decoration:none;transition:background .15s,transform .15s}.course-path__start-here:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.course-path__start-here:hover{background:color-mix(in oklch,var(--cta-bg) 88%,var(--primary))}.course-path__start-here:active{transform:scale(.99)}.course-path__start-label{font-size:var(--text-size-tiny);font-weight:700;letter-spacing:.1em;color:var(--cta-fg);text-transform:uppercase;white-space:nowrap}.course-path__start-title{flex:1;font-size:var(--text-size-body-sm);font-weight:500;color:var(--cta-fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:.8}.course-path__start-here svg{color:var(--cta-fg);flex-shrink:0;opacity:.7}.course-path__resume{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);background:var(--cta-bg);border:1px solid var(--cta-bg);border-radius:var(--radius-md);text-decoration:none;transition:background .15s,border-color .15s,transform .15s}.course-path__resume:active{transform:scale(.99)}.course-path__resume:focus-visible{outline:2px solid var(--primary);outline-offset:3px}.course-path__resume:hover{background:color-mix(in oklch,var(--cta-bg) 88%,var(--primary));border-color:color-mix(in oklch,var(--cta-bg) 88%,var(--primary))}.course-path__resume-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-1)}.course-path__resume-label{font-size:var(--text-size-xxs);font-weight:600;letter-spacing:.08em;color:color-mix(in oklch,var(--cta-fg) 68%,transparent);text-transform:uppercase;white-space:nowrap}.course-path__resume-title{font-size:var(--text-size-body);color:var(--cta-fg);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.course-path__resume-action{font-size:var(--text-size-caption);color:var(--cta-fg);font-weight:600}.course-path__resume svg{color:var(--cta-fg);flex-shrink:0;opacity:.72}.course-path__load-error{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);background:var(--error-soft);border:1px solid color-mix(in oklch,var(--error) 25%,var(--border-subtle));border-radius:var(--radius-md);font-size:var(--text-size-body-sm);color:var(--text-secondary)}.course-path__load-error span{flex:1 1 16rem}.course-path__progress-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:min(24rem,50dvh);margin-bottom:var(--space-4);padding-block:var(--space-8)}.course-path__load-retry{margin-left:auto;font-size:var(--text-size-caption);font-weight:600;color:var(--error);background:transparent;border:none;font-family:inherit;cursor:pointer;padding:0;transition:opacity .15s}.course-path__load-retry:hover{opacity:.75}@media (max-width:1023px){.course-path__head{margin-bottom:var(--space-2);padding:var(--space-1) 0 var(--space-2)}.course-path__lesson-group-summary{gap:var(--space-3);padding:var(--space-3) var(--space-4)}.course-path__lesson-group-body{padding:0}.course-path__subgroup-kicker{padding:var(--space-3) var(--space-4) var(--space-2)}.course-path__subgroup-kicker:first-child{padding-top:var(--space-3)}.course-path__lesson{--lesson-pad-y:var(--space-3);gap:var(--space-3);padding:var(--lesson-pad-y) var(--space-4)}.course-path__lesson-main{gap:var(--space-1)}.course-path__lesson-title-row{row-gap:var(--space-1)}.course-path__lesson-keywords{white-space:normal}}.course-path__lesson--optional{opacity:.78}.course-path__lesson--optional:focus-within,.course-path__lesson--optional:hover{opacity:1}.course-path__lessons{display:grid;grid-template-rows:0fr;transition:grid-template-rows .22s cubic-bezier(.25,1,.5,1)}.course-path__lessons>*{overflow:hidden}.course-path__unit--open .course-path__lessons,.course-path__unit[open] .course-path__lessons{grid-template-rows:1fr}.course-path__irl{container-type:inline-size;container-name:course-path-irl;display:flex;flex-direction:column;gap:var(--space-4);margin-top:0}.course-path__irl-head{display:flex;flex-direction:column;gap:var(--space-1)}.course-path__irl-head-top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.course-path__irl-kicker{margin:0;letter-spacing:.08em;text-transform:uppercase}.course-path__irl-counter,.course-path__irl-kicker{font-family:var(--font-mono-var),monospace;font-size:var(--text-size-xxs);font-weight:600;color:var(--text-tertiary)}.course-path__irl-counter{flex-shrink:0;letter-spacing:.04em;font-variant-numeric:tabular-nums;white-space:nowrap}.course-path__irl-title{margin:0;font-weight:600;font-size:var(--text-size-body-lg);line-height:1.25;color:var(--text-primary);text-wrap:balance}.course-path__irl-sub{margin:0;font-size:var(--text-size-body-sm);line-height:1.4;color:var(--text-secondary)}.course-path__irl-stage{display:flex;flex-direction:column}.course-path__irl-viewport{position:relative}.course-path__irl-card{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-4);background:var(--surface-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-xl)}.course-path__irl-card-head{display:flex;align-items:center;gap:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--border-subtle)}.course-path__irl-icon{display:grid;place-items:center;width:2.25rem;height:2.25rem;flex-shrink:0;border-radius:var(--radius-md);background:var(--primary-soft);color:var(--primary)}.course-path__irl-card-title{margin:0;font-weight:600;font-size:var(--text-size-body);line-height:1.3;color:var(--text-primary);text-wrap:balance;min-width:0}.course-path__irl-phrases-block{display:flex;flex-direction:column;gap:var(--space-3)}.course-path__irl-card-label{margin:0;font-family:var(--font-mono-var),monospace;font-size:var(--text-size-xxs);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary)}.course-path__irl-phrases{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-3)}.course-path__irl-phrase{display:flex;align-items:center;gap:var(--space-3)}.course-path__irl-phrase-num{display:grid;place-items:center;width:1.375rem;height:1.375rem;flex-shrink:0;border-radius:var(--radius-full);background:var(--surface-sunken);color:var(--text-secondary);font-family:var(--font-sans),system-ui,sans-serif;font-size:var(--text-size-xxs);font-weight:700}.course-path__irl-phrase-text{font-size:var(--text-size-body-sm);font-weight:600;line-height:1.4;color:var(--text-primary)}.course-path__irl-vocab-box{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--surface-sunken);border-radius:var(--radius-lg)}.course-path__irl-vocab{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--space-4);row-gap:var(--space-2);margin:0}.course-path__irl-vocab-item{display:flex;flex-direction:column;gap:.125rem;min-width:0}.course-path__irl-vocab-term{font-size:var(--text-size-body-sm);font-weight:600;color:var(--primary);margin:0}.course-path__irl-vocab-def{font-size:var(--text-size-caption);line-height:1.35;color:var(--text-secondary);margin:0}.course-path__irl-nav{gap:var(--space-3);margin-top:var(--space-1)}.course-path__irl-nav,.course-path__irl-pager{display:flex;align-items:center;justify-content:center}.course-path__irl-arrow{display:grid;place-items:center;width:2.25rem;height:2.25rem;border:1px solid var(--border-subtle);border-radius:var(--radius-full);background:var(--surface-raised);color:var(--text-secondary);cursor:pointer;flex-shrink:0;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}.course-path__irl-arrow:hover:not(:disabled){background:var(--surface-sunken);color:var(--text-primary);border-color:var(--border-default)}.course-path__irl-arrow:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.course-path__irl-arrow:disabled{opacity:.35;cursor:default}.course-path__irl-dots{display:flex;align-items:center;justify-content:center;gap:var(--space-2)}.course-path__irl-dot{width:.375rem;height:.375rem;padding:0;border:none;border-radius:var(--radius-full);background:var(--border-strong);cursor:pointer;transition:width .2s cubic-bezier(.25,1,.5,1),background .15s}.course-path__irl-dot--active{width:1.25rem;background:var(--primary)}.course-path__irl-dot:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.course-path__c1-electives{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-8);padding-top:var(--space-6);border-top:1px solid var(--border-subtle)}.course-path__c1-electives-title{font-family:var(--font-display),"Bricolage Grotesque",system-ui,sans-serif;font-weight:700;font-size:var(--text-size-h3);color:var(--text-primary)}.course-path__c1-electives-sub{font-size:var(--text-size-body-sm);color:var(--text-secondary)}.course-path__c1-electives>.course-path__rutas{margin-top:var(--space-3)}@media (max-width:480px){.course-path__wrap{padding-inline:var(--space-3);padding-bottom:var(--space-12)}.course-path__level-picker{margin-bottom:var(--space-4)}.course-path__level-picker-head{align-items:center;flex-wrap:wrap;gap:var(--space-2) var(--space-3)}.course-path__level-picker-title{font-size:var(--text-size-body)}.course-path__level{min-width:52px;padding-inline:var(--space-3)}.course-path__level-lv{font-size:var(--text-size-label)}.course-path__head h1,.course-path__head h2{font-size:var(--text-size-h3)}.course-path__urow{padding:var(--space-3) var(--space-3);gap:var(--space-2)}.course-path__ut{font-size:var(--text-size-label)}.course-path__un{font-size:var(--text-size-xxs)}.course-path__um{font-size:var(--text-size-tiny)}.course-path__ring{width:38px;height:38px}.course-path__ring-inner{width:28px;height:28px;font-size:var(--text-size-xxs)}.course-path__lessons>div{padding-inline:var(--space-3);padding-bottom:var(--space-3)}.course-path__lesson{padding:var(--space-4) var(--space-2);gap:var(--space-3);flex-wrap:nowrap;align-items:flex-start}.course-path__lt,.course-path__lt--link{font-size:var(--text-size-body-sm);white-space:normal;overflow:visible;text-overflow:unset;flex:0 1 auto}.course-path__st{width:20px;height:20px;flex-shrink:0}.course-path__lk,.course-path__locked-label{margin-left:0}.course-path__resume-title,.course-path__start-title{white-space:normal;overflow:visible;text-overflow:unset;font-size:var(--text-size-body-sm)}.course-path__resume,.course-path__start-here{padding:var(--space-3) var(--space-4);align-items:flex-start}.course-path__head{margin-bottom:var(--space-3)}.course-path__resume-action{display:none}.course-path__why{margin-bottom:var(--space-6)}.course-path__irl-card-title{font-size:var(--text-size-label)}.course-path__practice-current-title{font-size:var(--text-size-caption);white-space:normal;overflow:visible;text-overflow:unset}.course-path__practice-suggestions{grid-template-columns:1fr;gap:var(--space-3)}.course-path__practice-review-list{flex-direction:column}}@keyframes course-path-panel-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.course-path__panel-enter{animation:course-path-panel-in .22s cubic-bezier(.22,1,.36,1) both}.course-path__panel-enter--selected{margin-top:0}@keyframes course-path-level-select{0%{transform:scale(.96)}to{transform:scale(1)}}.course-path__level--on{animation:course-path-level-select .2s cubic-bezier(.22,1,.36,1) both}@keyframes course-path-row-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.course-path__unit--open .course-path__lesson,.course-path__unit[open] .course-path__lesson{animation:course-path-row-in .2s cubic-bezier(.22,1,.36,1) both}.course-path__unit--open .course-path__lesson:first-child{animation-delay:60ms}.course-path__unit--open .course-path__lesson:nth-child(2){animation-delay:90ms}.course-path__unit--open .course-path__lesson:nth-child(3){animation-delay:115ms}.course-path__unit--open .course-path__lesson:nth-child(4){animation-delay:135ms}.course-path__unit--open .course-path__lesson:nth-child(5){animation-delay:152ms}.course-path__unit--open .course-path__lesson:nth-child(n+6){animation-delay:165ms}.course-path__unit[open] .course-path__lesson:first-child{animation-delay:60ms}.course-path__unit[open] .course-path__lesson:nth-child(2){animation-delay:90ms}.course-path__unit[open] .course-path__lesson:nth-child(3){animation-delay:115ms}.course-path__unit[open] .course-path__lesson:nth-child(4){animation-delay:135ms}.course-path__unit[open] .course-path__lesson:nth-child(5){animation-delay:152ms}.course-path__unit[open] .course-path__lesson:nth-child(n+6){animation-delay:165ms}@keyframes course-path-cta-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.course-path__resume,.course-path__start-here{animation:course-path-cta-in .24s cubic-bezier(.22,1,.36,1) both;animation-delay:80ms}.course-path__lesson:not(.course-path__lesson--locked){transition:background var(--transition-fast),border-color var(--transition-fast)}.course-path__lesson:not(.course-path__lesson--locked):hover{border-color:var(--border-subtle);background:var(--surface-sunken)}.course-path__urow{transition:background .15s}.course-path__practice-suggestions{margin-top:var(--space-6);margin-bottom:var(--space-2);display:grid;grid-template-columns:minmax(150px,.35fr) 1fr;align-items:start;gap:var(--space-4) var(--space-6);padding:var(--space-4) 0;border-top:1px solid var(--border-subtle)}.course-path__practice-suggestions-heading{font-size:var(--text-size-tiny);font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-tertiary)}.course-path__practice-heading{display:flex;flex-direction:column;gap:var(--space-1)}.course-path__practice-heading p{margin:0;max-width:30ch;font-size:var(--text-size-tiny);line-height:1.45;color:var(--text-tertiary)}.course-path__practice-review-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--space-2)}.course-path__practice-review-list li{flex:1 1 240px}.course-path__practice-review-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--surface-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-md);font-size:var(--text-size-body-sm);color:var(--text-secondary);text-decoration:none;transition:border-color .15s,color .15s,transform .15s}.course-path__practice-review-item:hover{border-color:color-mix(in oklch,var(--primary) 35%,var(--border-subtle));color:var(--text-primary);transform:translateY(-1px)}.course-path__practice-review-item:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.course-path__practice-review-item svg{flex-shrink:0;color:var(--text-tertiary)}.grammar-deck__unavailable{max-width:620px;margin:var(--space-12) auto 0;padding:var(--layout-card-pad);text-align:center;background:var(--surface-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-lg)}.grammar-deck__unavailable-icon{width:48px;height:48px;margin:0 auto var(--space-4);display:grid;place-items:center;color:var(--primary);background:var(--primary-soft);border-radius:var(--radius-md)}.grammar-deck__unavailable-eyebrow{margin:0 0 var(--space-2);color:var(--text-tertiary);font-size:var(--text-size-tiny);font-weight:700;letter-spacing:.08em;text-transform:uppercase}.grammar-deck__unavailable h1{margin:0;color:var(--text-primary);font-family:var(--font-sans),system-ui,sans-serif;font-size:var(--text-size-display-ipa)}.grammar-deck__unavailable>p:not(.grammar-deck__unavailable-eyebrow){max-width:52ch;margin:var(--space-3) auto var(--space-6);color:var(--text-secondary);line-height:1.6}.grammar-deck__unavailable-action{display:inline-flex;padding:var(--space-3) var(--space-5);color:var(--cta-fg);background:var(--cta-bg);border-radius:var(--radius-md);font-weight:600;text-decoration:none}.grammar-deck__unavailable-action:hover{background:color-mix(in oklch,var(--cta-bg) 88%,var(--primary))}.grammar-deck__unavailable-action:focus-visible{outline:2px solid var(--primary);outline-offset:3px}@media (prefers-reduced-motion:reduce){.course-path__level--on,.course-path__panel-enter,.course-path__resume,.course-path__start-here,.course-path__unit--open .course-path__lesson{animation:none}.course-path__lesson:not(.course-path__lesson--locked){transition:border-color .15s}.course-path__lesson:not(.course-path__lesson--locked):hover{transform:none;box-shadow:none}.course-path__chev,.course-path__irl-dot,.course-path__lessons,.course-path__rchev,.course-path__ruta-body-wrap{transition:none}}.course-path__client-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-6)}.course-path__client-layout--no-aside{display:block}@media (min-width:1024px){.course-path__client-layout:not(.course-path__client-layout--no-aside){grid-template-columns:minmax(0,1fr) minmax(17rem,21rem);align-items:start;gap:var(--space-8)}.course-path__client-layout--no-aside{display:block;grid-template-columns:minmax(0,1fr)}}.course-path__client-main{min-width:0}.course-path__client-aside{display:flex;flex-direction:column;gap:var(--space-4)}@media (min-width:1024px){.course-path__client-aside{position:sticky;top:var(--space-6)}}.course-path__ya-puedes{display:flex;flex-direction:column;gap:var(--space-5);padding:var(--space-6);margin-block:var(--space-6);background:color-mix(in srgb,var(--primary) 9%,var(--surface-raised));border:1px solid color-mix(in srgb,var(--primary) 22%,transparent);border-radius:var(--radius-2xl);transition:all .25s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 20px -6px color-mix(in srgb,var(--primary) 12%,transparent)}.course-path__ya-puedes--locked{opacity:.72}.course-path__ya-puedes-head{display:flex;flex-direction:column;gap:var(--space-4)}@media (max-width:639px){.course-path__ya-puedes{padding:var(--space-4);gap:var(--space-4);margin-block:var(--space-4)}}.course-path__ya-puedes-title-row{display:flex;align-items:flex-start;gap:var(--space-3)}.course-path__ya-puedes-icon-badge{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:var(--radius-lg);background:color-mix(in srgb,var(--primary) 18%,var(--surface-raised));color:var(--primary);flex-shrink:0}.course-path__ya-puedes-title{margin:0;font-family:var(--font-sans),system-ui,sans-serif;font-size:var(--text-size-body-lg);font-weight:700;color:var(--text-primary);line-height:1.25}.course-path__ya-puedes-sub{margin:.125rem 0 0;font-size:var(--text-size-body-sm);color:var(--text-secondary);line-height:1.4}.course-path__ya-puedes-chips{display:flex;flex-wrap:wrap;gap:var(--space-2)}.course-path__ya-puedes-chip{padding:.25rem .75rem;border-radius:var(--radius-full);font-size:var(--text-size-caption);font-weight:600;background:var(--surface-raised);border:1px solid color-mix(in srgb,var(--primary) 20%,var(--border-subtle));color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.course-path__ya-puedes-chip:hover{border-color:var(--primary);color:var(--primary)}.course-path__ya-puedes-chip--active{background:var(--primary);color:var(--on-primary,#ffffff);border-color:var(--primary);box-shadow:0 2px 8px -2px color-mix(in srgb,var(--primary) 30%,transparent)}.course-path__ya-puedes-list{display:flex;flex-direction:column;gap:var(--space-3)}.course-path__ya-puedes-card{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4) var(--space-5);background:var(--surface-raised);border:1px solid color-mix(in srgb,var(--primary) 12%,var(--border-subtle));border-radius:var(--radius-xl);transition:all .2s ease;box-shadow:0 1px 3px 0 oklch(0 0 0/.03)}.course-path__ya-puedes-card:hover{border-color:color-mix(in srgb,var(--primary) 35%,var(--border-subtle));transform:translateY(-1px);box-shadow:0 4px 12px -2px color-mix(in srgb,var(--primary) 15%,transparent)}.course-path__ya-puedes-card-main{display:flex;flex-direction:column;gap:.125rem;min-width:0}.course-path__ya-puedes-en{font-family:var(--font-sans),system-ui,sans-serif;font-size:var(--text-size-body-lg);font-weight:700;color:var(--text-primary);line-height:1.3}.course-path__ya-puedes-es{font-size:var(--text-size-body-sm);color:var(--text-secondary);line-height:1.3}.course-path__ya-puedes-audio-btn{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:var(--radius-full);background:color-mix(in srgb,var(--primary) 12%,var(--surface-raised));border:1px solid color-mix(in srgb,var(--primary) 25%,transparent);color:var(--primary);cursor:pointer;flex-shrink:0;transition:all .2s ease}.course-path__ya-puedes-audio-btn:hover{background:var(--primary);color:var(--on-primary,#ffffff);transform:scale(1.06)}.course-path__ya-puedes-audio-btn--playing{background:var(--primary);color:var(--on-primary,#ffffff);animation:pulse 1s infinite alternate}.course-path__ya-puedes-foot{display:flex;align-items:center;justify-content:center;padding-top:var(--space-1)}.course-path__ya-puedes-foot-link{font-size:var(--text-size-body-sm);font-weight:600;color:var(--primary);text-decoration:none}.course-path__aside-progress{display:flex;flex-direction:column;gap:var(--space-4)}.course-path__aside-progress-card{gap:var(--space-4)}.course-path__aside-progress-row{display:flex;align-items:center;gap:var(--space-4)}.course-path__aside-ring-wrap{position:relative;width:4.5rem;height:4.5rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}.course-path__aside-ring-svg{transform:rotate(0deg)}.course-path__aside-ring-text{position:absolute;font-family:var(--font-sans),system-ui,sans-serif;font-size:var(--text-size-body-lg);font-weight:700;color:var(--text-primary)}.course-path__aside-progress-info{display:flex;flex-direction:column;gap:.125rem}.course-path__aside-progress-count{font-size:var(--text-size-body-sm);font-weight:600;color:var(--text-primary)}.course-path__aside-progress-sub{font-size:var(--text-size-caption);color:var(--text-tertiary)}.course-path__aside-milestone-card{gap:var(--space-2)}.course-path__aside-milestone-bar-wrap{width:100%;height:6px;border-radius:var(--radius-full);background:var(--surface-sunken);overflow:hidden;margin-block:var(--space-1)}.course-path__aside-milestone-bar{height:100%;border-radius:var(--radius-full);background:var(--primary);transition:width .3s ease}.course-path__aside-milestone-sub{margin:0;font-size:var(--text-size-caption);color:var(--text-tertiary)}.course-path__aside-milestone-link{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--text-size-body-sm);font-weight:600;color:var(--primary);text-decoration:none;margin-top:var(--space-1)}.course-path__aside-milestone-link:hover{text-decoration:underline}.course-path__aside-review-title-row{display:flex;align-items:center;gap:var(--space-2)}.course-path__aside-review-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.25rem;height:1.25rem;padding-inline:.375rem;border-radius:var(--radius-full);background:color-mix(in srgb,var(--warning) 20%,var(--surface-raised));color:var(--warning);font-family:var(--font-mono-var),monospace;font-size:var(--text-size-xxs);font-weight:700}.course-path__aside-review-topics{display:flex;flex-direction:column;gap:var(--space-3);margin:0;padding:0;list-style:none}.course-path__aside-review-topic-item{display:flex;flex-direction:column;gap:.25rem}.course-path__aside-review-topic-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.course-path__aside-review-topic-title{font-size:var(--text-size-body-sm);font-weight:600;color:var(--text-primary)}.course-path__aside-review-topic-pct{font-family:var(--font-mono-var),monospace;font-size:var(--text-size-caption);color:var(--text-tertiary)}.course-path__aside-review-topic-bar-bg{width:100%;height:4px;border-radius:var(--radius-full);background:var(--surface-sunken);overflow:hidden}.course-path__aside-review-topic-bar{height:100%;border-radius:var(--radius-full);background:var(--warning);transition:width .3s ease}.course-path__aside-review-btn{display:flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:2.5rem;padding:0 var(--space-4);border-radius:var(--radius-lg);background:var(--surface-sunken);border:1px solid var(--border-subtle);color:var(--text-primary);font-size:var(--text-size-body-sm);font-weight:600;text-decoration:none;transition:all .2s ease;margin-top:var(--space-1)}.course-path__aside-review-btn:hover{background:color-mix(in srgb,var(--primary) 10%,var(--surface-raised));border-color:var(--primary);color:var(--primary)}.course-path__aside-streak-dots{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:var(--space-2);margin-top:var(--space-1)}.course-path__aside-streak-col{display:flex;flex-direction:column;align-items:center;gap:var(--space-1)}.course-path__aside-streak-dot{width:1.5rem;height:1.5rem;border-radius:var(--radius-sm);background:var(--surface-sunken);border:1px solid var(--border-subtle);transition:all .2s ease}.course-path__aside-streak-dot--active{background:var(--primary);border-color:var(--primary);box-shadow:0 2px 6px -1px color-mix(in srgb,var(--primary) 30%,transparent)}.course-path__aside-streak-day{font-family:var(--font-mono-var),monospace;font-size:var(--text-size-xxs);color:var(--text-tertiary)}