:root{--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--bg-primary:#fff;--bg-secondary:#f5f5f5;--bg-tertiary:#e8e8e8;--text-primary:#000;--text-secondary:#4a4a4a;--text-tertiary:#7a7a7a;--border-color:#d0d0d0;--border-hover:#a0a0a0;--accent:gray;--accent-hover:#606060;--accent-light:silver;--success:#4a4a4a;--warning:#6a6a6a;--error:#2a2a2a;--shadow-sm:0 1px 2px #0000001a;--shadow-md:0 4px 6px #00000026;--shadow-lg:0 10px 15px #0003;--motion-duration-instant:.1s;--motion-duration-fast:.16s;--motion-duration-base:.24s;--motion-duration-slow:.36s;--motion-ease-standard:cubic-bezier(.2, 0, 0, 1);--motion-ease-emphasized:cubic-bezier(.2, .8, .2, 1);--skeleton-base:#e4e4e4;--skeleton-highlight:#f5f5f5}[data-theme=dark]{--bg-primary:#1a1a1a;--bg-secondary:#2a2a2a;--bg-tertiary:#3a3a3a;--text-primary:#fff;--text-secondary:#d0d0d0;--text-tertiary:#a0a0a0;--border-color:#4a4a4a;--border-hover:#6a6a6a;--accent:gray;--accent-hover:#a0a0a0;--accent-light:#606060;--success:#b0b0b0;--warning:#909090;--error:#707070;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 6px #0006;--shadow-lg:0 10px 15px #00000080;--skeleton-base:#343434;--skeleton-highlight:#484848}*{box-sizing:border-box;margin:0;padding:0}html,body{max-width:100vw;overflow-x:hidden}body{padding:var(--safe-top) var(--safe-right) var(--safe-bottom) var(--safe-left);background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-montserrat), -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color var(--motion-duration-base) var(--motion-ease-standard), color var(--motion-duration-base) var(--motion-ease-standard)}a{color:inherit;text-decoration:none}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}input,textarea,select{color:inherit;font-family:inherit}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 1rem}.card{background-color:var(--bg-secondary);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);transition:box-shadow var(--motion-duration-fast) var(--motion-ease-standard), border-color var(--motion-duration-fast) var(--motion-ease-standard);border-radius:8px;padding:1.5rem}.card:hover{box-shadow:var(--shadow-md);border-color:var(--border-hover)}.btn{transition:background-color var(--motion-duration-fast) var(--motion-ease-standard), border-color var(--motion-duration-fast) var(--motion-ease-standard), box-shadow var(--motion-duration-fast) var(--motion-ease-standard), transform var(--motion-duration-fast) var(--motion-ease-standard);border:1px solid var(--border-color);background-color:var(--bg-secondary);color:var(--text-primary);border-radius:6px;padding:.75rem 1.5rem;font-weight:500}.btn:hover{background-color:var(--bg-tertiary);border-color:var(--border-hover)}.btn-primary{background-color:var(--accent);color:var(--bg-primary);border-color:var(--accent)}.btn-primary:hover{background-color:var(--accent-hover);border-color:var(--accent-hover)}.input{border:1px solid var(--border-color);background-color:var(--bg-secondary);width:100%;color:var(--text-primary);transition:border-color var(--motion-duration-fast) var(--motion-ease-standard);border-radius:6px;padding:.75rem}.input:focus{border-color:var(--accent);outline:none}.input::placeholder{color:var(--text-tertiary)}.homepage{width:100%;min-height:calc(100vh - var(--safe-top) - var(--safe-bottom));min-height:calc(100dvh - var(--safe-top) - var(--safe-bottom));background-color:var(--bg-primary);justify-content:center;align-items:center;padding-block:6rem 7rem;display:flex;position:relative}.homepage-brand{position:absolute;top:max(1rem,2.5vh);left:max(1rem,3vw)}.devlog-brand{margin-bottom:1rem}html{scrollbar-gutter:stable}.marketing-shell{position:relative}.marketing-header{z-index:20;justify-content:space-between;align-items:center;gap:1rem;padding:max(1rem,2.5vh) max(1rem,3vw);display:flex;position:absolute;top:0;left:0;right:0}.marketing-header .auth-module{flex-shrink:0;padding:0;position:static}.auth-session-skeleton{border-radius:.5rem;width:6rem;height:3rem;display:block}.marketing-header .brand-logo{flex-shrink:1;min-width:0}.marketing-route-content{animation:.22s ease-out both marketing-content-enter}.marketing-route-content>main{animation:none}.marketing-route-content.is-exiting{pointer-events:none;animation:.16s ease-in both marketing-content-exit}.marketing-shell .pricing-page{padding-top:7rem;overflow:visible}.pricing-home-link{color:var(--text-secondary);margin-bottom:1.5rem;font-size:.8rem;display:inline-block}.marketing-skeleton-content{width:min(56rem,100%);margin:5rem auto}.marketing-skeleton-title,.marketing-skeleton-copy{border-radius:.5rem;width:65%;height:3rem;margin:0 auto 1.5rem;display:block}.marketing-skeleton-copy{width:45%;height:1.25rem}.marketing-skeleton-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;margin-top:3rem;display:grid}.marketing-skeleton-card{border-radius:1rem;height:20rem;display:block}.marketing-skeleton-button{border-radius:.5rem;height:3rem;display:block}@keyframes marketing-content-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes marketing-content-exit{0%{opacity:1}to{opacity:0;transform:translateY(-4px)}}@media (max-width:600px){.marketing-header{flex-wrap:wrap;gap:1rem;padding:1.5rem}.marketing-header .brand-logo{flex-shrink:0}.marketing-header .auth-module{margin-left:auto}.marketing-shell .pricing-page{padding-top:11rem}main.devlog-page{padding-top:1.5rem;padding-left:1.5rem;padding-right:1.5rem}.marketing-skeleton-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.marketing-route-content,.marketing-route-content.is-exiting{animation:none}}.auth-module{z-index:10;padding:max(1rem,2.5vh) max(1rem,3vw);position:absolute;top:0;right:0}.login-button{border:1px solid var(--border-color);background-color:var(--bg-secondary);color:var(--text-primary);border-radius:.5rem;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;transition:all .2s}.login-button:hover{background-color:var(--bg-tertiary);border-color:var(--border-hover);transform:translateY(-.1rem)}.login-button:disabled{cursor:wait;opacity:.65;transform:none}.profile-container{align-items:center;gap:.75rem;display:flex;position:relative}.account-plan{align-items:center;gap:.65rem;display:flex}.account-plan-label{color:var(--text-secondary);font-size:.8rem;font-weight:650;text-decoration:none}.account-plan-label:hover{color:var(--text-primary)}.account-upgrade-pill{border:1px solid color-mix(in srgb, var(--accent) 28%, var(--border-color));background:color-mix(in srgb, var(--accent) 75%, #000);color:#fff;border-radius:999px;justify-content:center;align-items:center;gap:.35rem;min-height:44px;padding:.5rem .9rem;font-size:.78rem;font-weight:700;text-decoration:none;transition:transform .16s,box-shadow .16s;display:inline-flex}.account-upgrade-pill:hover{box-shadow:0 3px 12px color-mix(in srgb, var(--accent) 25%, transparent);transform:translateY(-1px)}.account-upgrade-pill:focus-visible,.account-plan-label:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.account-plan-loading{border-radius:1rem;width:8rem;height:1.5rem;display:block}@media (max-width:480px){.profile-container{gap:.5rem}.account-plan{gap:.4rem}.account-upgrade-pill{padding-inline:.65rem}.homepage:has(.profile-container) .homepage-brand{max-width:calc(100vw - 15.5rem)}}@media (prefers-reduced-motion:reduce){.account-upgrade-pill{transition:none}}.profile-button{cursor:pointer;background:0 0;border:none;padding:0;transition:transform .2s}.profile-button:hover{transform:scale(1.05)}.profile-avatar{background-color:var(--accent);width:3rem;height:3rem;color:var(--bg-primary);border:2px solid var(--border-color);border-radius:50%;justify-content:center;align-items:center;font-size:1.25rem;font-weight:600;transition:border-color .2s;display:flex;overflow:hidden}.profile-avatar img{object-fit:cover;width:100%;height:100%}.profile-button:hover .profile-avatar{border-color:var(--accent)}.profile-menu{background-color:var(--bg-secondary);border:1px solid var(--border-color);box-shadow:var(--shadow-lg);z-index:20;border-radius:.5rem;width:max-content;min-width:14rem;max-width:calc(100vw - 2rem);position:absolute;top:calc(100% + .5rem);right:0;overflow:hidden}.profile-menu-item{text-align:left;width:100%;color:var(--text-primary);cursor:pointer;background:0 0;border:none;padding:.75rem 1rem;font-size:.9375rem;transition:background-color .2s}.profile-menu-item:hover{background-color:var(--bg-tertiary)}.profile-menu-item:not(:last-child){border-bottom:1px solid var(--border-color)}.profile-menu-email{color:var(--text-secondary);white-space:nowrap;border-bottom:1px solid var(--border-color);padding:.875rem 1rem;font-size:.75rem;line-height:1.4}.auth-dialog-backdrop{z-index:1000;padding:calc(1rem + var(--safe-top)) calc(1rem + var(--safe-right)) calc(1rem + var(--safe-bottom)) calc(1rem + var(--safe-left));-webkit-backdrop-filter:blur(.25rem);backdrop-filter:blur(.25rem);animation:ui-page-enter var(--motion-duration-fast) var(--motion-ease-standard) both;background-color:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.auth-dialog{width:min(100%,28rem);max-height:calc(100vh - 2rem - var(--safe-top) - var(--safe-bottom));max-height:calc(100dvh - 2rem - var(--safe-top) - var(--safe-bottom));border:1px solid var(--border-color);background-color:var(--bg-primary);box-shadow:var(--shadow-lg);animation:ui-rise-in var(--motion-duration-base) var(--motion-ease-emphasized) both;border-radius:1rem;padding:2rem;position:relative;overflow-y:auto}.auth-dialog-close{width:2.5rem;height:2.5rem;color:var(--text-secondary);transition:background-color var(--motion-duration-fast) var(--motion-ease-standard), color var(--motion-duration-fast) var(--motion-ease-standard);border-radius:50%;font-size:1.5rem;position:absolute;top:.75rem;right:.75rem}.auth-dialog-close:hover{color:var(--text-primary);background-color:var(--bg-tertiary)}.auth-dialog-close:focus-visible,.auth-field input:focus-visible,.auth-submit:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.auth-dialog-title{margin-bottom:.5rem;padding-right:2.5rem;font-size:1.75rem}.auth-dialog-copy{color:var(--text-secondary);margin-bottom:1.5rem;line-height:1.6}.auth-field{color:var(--text-primary);flex-direction:column;gap:.5rem;margin-bottom:1rem;font-size:.875rem;font-weight:600;display:flex}.auth-field input,.auth-input{border:1px solid var(--border-color);background-color:var(--bg-secondary);width:100%;color:var(--text-primary);transition:border-color var(--motion-duration-fast) var(--motion-ease-standard);border-radius:.5rem;padding:.875rem 1rem;font-size:1rem}.auth-field input:focus,.auth-input:focus{border-color:var(--accent)}.auth-label{margin:1rem 0 .5rem;font-size:.875rem;font-weight:600;display:block}.auth-input{margin-bottom:1rem}.auth-input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.auth-form+.account-access-action{margin-top:1rem}.auth-error{border:1px solid var(--border-hover);background-color:var(--bg-tertiary);color:var(--text-primary);border-radius:.5rem;margin:.25rem 0 1rem;padding:.75rem;font-size:.875rem;line-height:1.5}.auth-submit{background-color:var(--text-primary);width:100%;color:var(--bg-primary);box-shadow:var(--shadow-sm);transition:background-color var(--motion-duration-fast) var(--motion-ease-standard), box-shadow var(--motion-duration-fast) var(--motion-ease-standard), transform var(--motion-duration-fast) var(--motion-ease-standard);border-radius:.5rem;padding:.875rem 1rem;font-size:1rem;font-weight:600}.auth-submit:hover:not(:disabled){background-color:var(--text-secondary);box-shadow:var(--shadow-md);transform:translateY(-.1rem)}.auth-submit:disabled{cursor:wait;opacity:.65}.auth-links{flex-wrap:wrap;justify-content:space-between;gap:1rem;margin-top:1.25rem;font-size:.875rem;display:flex}.auth-links button,.auth-links a{color:var(--text-secondary);text-underline-offset:.2em;text-decoration:underline}.auth-links button:focus-visible,.auth-links a:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.account-access-page{min-height:100dvh;padding:calc(2rem + var(--safe-top)) 1rem calc(2rem + var(--safe-bottom));flex-direction:column;justify-content:center;align-items:center;gap:2rem;display:flex}.account-access-panel{border:1px solid var(--border-color);background:var(--bg-primary);border-radius:1rem;width:min(100%,28rem);padding:clamp(1.25rem,4vw,2rem)}.account-access-action{text-align:center;display:block}.account-access-panel .auth-dialog-title{padding-right:0}.study-activity{margin-top:2rem}.study-activity-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:.5rem;margin:1rem 0;padding:0;list-style:none;display:grid}.study-activity-days li{border:1px solid var(--border-color);border-radius:.5rem;flex-direction:column;align-items:center;gap:.5rem;padding:.75rem .25rem;font-size:.75rem;display:flex}.study-activity-days li.has-activity{background:var(--bg-secondary);border-color:var(--text-secondary)}.study-activity-days strong{font-size:1.25rem}.study-activity-note{color:var(--text-secondary);font-size:.8rem;line-height:1.5}.settings-page{background:radial-gradient(circle at top right, var(--bg-secondary), transparent 32rem), var(--bg-primary);min-height:100vh;padding:clamp(1.25rem,4vw,3rem)}.settings-shell{width:min(100%,68rem);animation:ui-page-enter var(--motion-duration-base) var(--motion-ease-standard) both;margin:0 auto}.settings-back{border:1px solid var(--border-color);background:var(--bg-secondary);min-height:2.75rem;transition:background-color var(--motion-duration-fast) var(--motion-ease-standard), border-color var(--motion-duration-fast) var(--motion-ease-standard), transform var(--motion-duration-fast) var(--motion-ease-standard);border-radius:.6rem;margin-bottom:2rem;padding:.625rem 1rem;font-size:.9375rem}.settings-back:hover{border-color:var(--border-hover);background:var(--bg-tertiary);transform:translate(-.15rem)}.settings-back:disabled{cursor:wait;opacity:.6;transform:none}.settings-header{margin-bottom:2rem}.settings-eyebrow{color:var(--text-tertiary);letter-spacing:.11em;text-transform:uppercase;margin-bottom:.5rem;font-size:.75rem;font-weight:700}.settings-header h1{letter-spacing:-.04em;font-size:clamp(2.5rem,7vw,4.25rem);line-height:1}.settings-header>p:last-child{max-width:43rem;color:var(--text-secondary);margin-top:.875rem;font-size:1.05rem;line-height:1.6}.settings-form{gap:1.25rem;display:grid}.settings-section{border:1px solid var(--border-color);background:color-mix(in srgb, var(--bg-primary) 88%, var(--bg-secondary));box-shadow:var(--shadow-sm);border-radius:1rem;padding:clamp(1.25rem,3vw,2rem)}.settings-section-heading{justify-content:space-between;align-items:center;gap:1.5rem;margin-bottom:1.5rem;display:flex}.settings-section-heading h2{letter-spacing:-.02em;font-size:1.4rem}.settings-section-heading p{max-width:40rem;color:var(--text-secondary);margin-top:.35rem;font-size:.9rem;line-height:1.55}.settings-avatar-preview{border:2px solid var(--border-color);background:var(--accent);width:4rem;height:4rem;color:var(--bg-primary);border-radius:50%;flex:none;place-items:center;font-size:1.4rem;font-weight:700;display:grid;overflow:hidden}.settings-avatar-preview img{object-fit:cover;width:100%;height:100%}.deletion-recovery-notice{text-align:center;margin:0;padding:.75rem 1rem}.settings-section-actions{flex-wrap:wrap;gap:.75rem;margin-top:1rem;display:flex}.settings-fields-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.settings-field{flex-direction:column;gap:.45rem;margin-bottom:1rem;font-size:.875rem;font-weight:650;display:flex}.settings-field input{border:1px solid var(--border-color);background:var(--bg-secondary);width:100%;min-height:3rem;transition:border-color var(--motion-duration-fast) var(--motion-ease-standard), box-shadow var(--motion-duration-fast) var(--motion-ease-standard);border-radius:.6rem;outline:none;padding:.75rem .875rem;font-size:1rem}.settings-field input:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 25%, transparent)}.settings-field input:disabled{cursor:not-allowed;opacity:.65}.settings-field small,.settings-radio small,.settings-language-option small{color:var(--text-tertiary);font-size:.75rem;font-weight:450;line-height:1.4}.settings-choice-group{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:.25rem 0 1rem;display:grid}.settings-choice-group legend{width:100%;margin-bottom:.75rem;font-size:.875rem;font-weight:650}.settings-radio,.settings-language-option{border:1px solid var(--border-color);background:var(--bg-secondary);cursor:pointer;transition:border-color var(--motion-duration-fast) var(--motion-ease-standard), background-color var(--motion-duration-fast) var(--motion-ease-standard), transform var(--motion-duration-fast) var(--motion-ease-standard);border-radius:.7rem;align-items:flex-start;gap:.75rem;padding:.9rem;display:flex}.settings-radio:hover,.settings-language-option:hover{border-color:var(--border-hover);transform:translateY(-.1rem)}.settings-radio input,.settings-language-option input{accent-color:var(--accent);flex:none;margin-top:.2rem}.settings-radio span,.settings-language-option span{flex-direction:column;gap:.2rem;display:flex}.settings-language-picker{transition:opacity var(--motion-duration-fast) var(--motion-ease-standard);grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.settings-language-picker.is-disabled{opacity:.48}:is(.settings-language-option:has(input:checked),.settings-radio:has(input:checked)){border-color:var(--text-primary);background:var(--bg-tertiary)}.settings-language-option:has(input:disabled){cursor:not-allowed}.settings-actions{justify-content:flex-end;display:flex}.settings-primary-button,.settings-secondary-button{min-height:3rem;transition:background-color var(--motion-duration-fast) var(--motion-ease-standard), box-shadow var(--motion-duration-fast) var(--motion-ease-standard), transform var(--motion-duration-fast) var(--motion-ease-standard);border-radius:.65rem;padding:.75rem 1.25rem;font-size:.9375rem;font-weight:700}.settings-primary-button{background:var(--text-primary);color:var(--bg-primary)}.settings-secondary-button{border:1px solid var(--border-color);background:var(--bg-secondary)}.settings-primary-button:hover:not(:disabled),.settings-secondary-button:hover:not(:disabled){box-shadow:var(--shadow-md);transform:translateY(-.1rem)}.settings-primary-button:disabled,.settings-secondary-button:disabled{cursor:wait;opacity:.6}.practice-credits{text-align:left;margin-top:24px;font-size:.875rem}.practice-credits summary{cursor:pointer}.practice-credits ul{margin-top:12px;padding-left:20px;line-height:1.5}.dictionary-note{margin-top:12px}.dictionary-note summary{cursor:pointer;font-size:.875rem}.dictionary-note form{gap:10px;margin-top:12px;display:grid}.dictionary-note textarea{width:100%;color:inherit;background:var(--bg-secondary);border:1px solid var(--border-color);resize:vertical;font:inherit;border-radius:8px;padding:10px}.dictionary-note button{justify-self:start}.settings-session-list{gap:16px;margin:16px 0;padding:0;font-size:.875rem;line-height:1.5;list-style:none;display:grid}.settings-session-list li{gap:4px;display:grid}.settings-feedback{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:.65rem;padding:.8rem 1rem;font-size:.875rem}.settings-feedback.is-error{border-color:var(--text-secondary);color:var(--text-primary)}.settings-password-form{margin-top:1.25rem}.settings-password-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.settings-release-footer{border-top:1px solid var(--border-color);color:var(--text-tertiary);justify-content:space-between;align-items:center;gap:1rem;margin:2rem 0 0;padding:1.25rem 0 0;font-size:.8rem;display:flex}.settings-release-footer strong{color:var(--text-secondary);font-variant-numeric:tabular-nums}.settings-release-footer a{color:var(--text-primary);font-weight:700;text-decoration:none}.settings-release-footer a:hover{text-underline-offset:.2em;text-decoration:underline}.settings-status{border:1px solid var(--text-secondary);background:var(--bg-tertiary);text-transform:uppercase;border-radius:999px;flex:none;padding:.4rem .65rem;font-size:.72rem;font-weight:700}.settings-empty{border:1px solid var(--border-color);background:var(--bg-secondary);text-align:center;border-radius:1rem;width:min(100%,34rem);margin:20vh auto 0;padding:2rem}.settings-empty p{color:var(--text-secondary);margin:.75rem 0 1.5rem;line-height:1.6}.settings-loading{gap:1.25rem;display:grid}.settings-skeleton{background:linear-gradient(90deg, var(--skeleton-base), var(--skeleton-highlight), var(--skeleton-base));background-size:200% 100%;border-radius:.8rem;animation:1.3s linear infinite skeleton-shimmer}.settings-skeleton-short{width:6rem;height:2.75rem}.settings-skeleton-title{width:min(28rem,75%);height:5rem}.settings-skeleton-card{width:100%;height:19rem}@media (max-width:760px){.settings-fields-grid,.settings-password-grid,.settings-choice-group,.settings-language-picker{grid-template-columns:1fr}.settings-section-heading{align-items:flex-start}.settings-release-footer{flex-direction:column;align-items:flex-start;gap:.45rem}}.devlog-page{background:radial-gradient(circle at top right, color-mix(in srgb, var(--accent) 15%, transparent), transparent 32rem), var(--bg-primary);min-height:100vh;padding:clamp(1.25rem,4vw,3rem)}.devlog-shell{width:min(100%,52rem);animation:ui-page-enter var(--motion-duration-base) var(--motion-ease-standard) both;margin:0 auto}.devlog-back{border:1px solid var(--border-color);background:var(--bg-secondary);min-height:2.75rem;color:var(--text-primary);border-radius:.6rem;align-items:center;padding:.625rem 1rem;font-size:.9375rem;text-decoration:none;display:inline-flex}.devlog-back:hover{border-color:var(--border-hover);background:var(--bg-tertiary)}.devlog-header{margin:clamp(2.5rem,8vw,5rem) 0 clamp(2rem,5vw,3.5rem)}.devlog-eyebrow,.devlog-version{color:var(--text-tertiary);letter-spacing:.11em;text-transform:uppercase;font-size:.75rem;font-weight:750}.devlog-header h1{letter-spacing:-.055em;margin-top:.5rem;font-size:clamp(3rem,9vw,5.5rem);line-height:.9}.devlog-header>p:not(.devlog-eyebrow){max-width:38rem;color:var(--text-secondary);margin-top:1.1rem;font-size:1.05rem;line-height:1.65}.devlog-current-version{border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-secondary);border-radius:999px;gap:.55rem;margin-top:1.5rem;padding:.55rem .75rem;font-size:.8rem;display:inline-flex}.devlog-current-version strong{color:var(--text-primary);font-variant-numeric:tabular-nums}.devlog-list{border-left:1px solid var(--border-color);gap:1.5rem;margin:0;padding:0 0 1rem 1.5rem;list-style:none;display:grid}.devlog-entry{position:relative}.devlog-marker{border:2px solid var(--bg-primary);background:var(--accent);width:.75rem;height:.75rem;box-shadow:0 0 0 1px var(--border-color);border-radius:50%;position:absolute;top:1.4rem;left:-1.88rem}.devlog-entry article{border:1px solid var(--border-color);background:color-mix(in srgb, var(--bg-primary) 88%, var(--bg-secondary));box-shadow:var(--shadow-sm);border-radius:1rem;padding:clamp(1.25rem,3vw,1.75rem)}.devlog-entry-topline,.devlog-entry-footer{justify-content:space-between;align-items:center;gap:1rem;display:flex}.devlog-entry time{color:var(--text-tertiary);font-size:.8rem}.devlog-entry h2{letter-spacing:-.025em;margin-top:1rem;font-size:clamp(1.3rem,3vw,1.65rem)}.devlog-subject{color:var(--text-secondary);margin-top:.45rem;font-size:.88rem}.devlog-entry ul{color:var(--text-secondary);gap:.4rem;margin:1rem 0 0;padding-left:1.15rem;font-size:.9rem;line-height:1.55;display:grid}.devlog-entry-footer{border-top:1px solid var(--border-color);margin-top:1.5rem;padding-top:1rem}.devlog-author,.devlog-commit-link{color:var(--text-primary);align-items:center;gap:.5rem;font-size:.82rem;font-weight:650;text-decoration:none;display:inline-flex}.devlog-author img,.devlog-author-fallback{border-radius:50%;width:1.75rem;height:1.75rem}.devlog-author img{object-fit:cover}.devlog-author-fallback{background:var(--text-primary);color:var(--bg-primary);place-items:center;font-size:.72rem;display:grid}.devlog-author:hover span:last-child,.devlog-commit-link:hover{text-underline-offset:.2em;text-decoration:underline}@media (max-width:520px){.devlog-list{padding-left:1.1rem}.devlog-marker{left:-1.48rem}.devlog-entry-footer{flex-direction:column;align-items:flex-start}}.homepage-content{text-align:center;flex-direction:column;justify-content:center;align-items:center;width:100%;max-width:90%;padding:5vh 5vw;display:flex}.homepage-title{color:var(--text-primary);margin-bottom:2vh;font-size:clamp(2rem,8vw,4.5rem);font-weight:700;line-height:1.2}.homepage-subtitle{color:var(--text-secondary);max-width:80%;margin-bottom:5vh;font-size:clamp(1rem,2.5vw,1.5rem);line-height:1.6}.homepage-actions{justify-content:center;gap:1rem;max-width:100%;display:flex}.homepage-actions .get-started-button{padding-inline:clamp(1rem,4vw,3rem)}.get-started-button{background-color:var(--accent);color:var(--bg-primary);cursor:pointer;box-shadow:var(--shadow-md);border:none;border-radius:.5rem;padding:1rem 3rem;font-size:clamp(1rem,2vw,1.25rem);font-weight:600;transition:all .2s}.get-started-button:hover{background-color:var(--accent-hover);box-shadow:var(--shadow-lg);transform:translateY(-.15rem)}.get-started-button:active{transform:translateY(0)}.homepage-secondary-button{background-color:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);box-shadow:none}.homepage-secondary-button:hover{background-color:var(--bg-tertiary,var(--bg-secondary))}.homepage-review-label{justify-content:center;align-items:center;gap:.5rem;display:inline-flex}.homepage-review-count{background:var(--text-primary);width:2rem;height:2rem;color:var(--bg-primary);border-radius:50%;flex-shrink:0;place-items:center;font-size:.6875rem;font-weight:700;display:inline-grid}.homepage-review-count.skeleton{background:linear-gradient(90deg, var(--skeleton-base), var(--skeleton-highlight), var(--skeleton-base));background-size:200% 100%}.homepage-actions .get-started-button:disabled{cursor:default;opacity:.65;box-shadow:none;transform:none}.homepage-actions .get-started-button:focus-visible{outline:2px solid var(--text-primary);outline-offset:4px}.pricing-page{min-height:100dvh;padding:clamp(1.25rem,4vw,3rem);overflow-y:auto}.pricing-nav{justify-content:space-between;align-items:center;gap:1.5rem;display:flex}.pricing-nav a{color:var(--text-primary);text-underline-offset:.25rem}.pricing-nav a:first-child{font-weight:700}.pricing-content{text-align:center;max-width:56rem;margin:clamp(3rem,8vh,6rem) auto}.pricing-eyebrow{letter-spacing:.18em;color:var(--text-secondary);margin-bottom:1rem;font-size:.75rem;font-weight:600}.pricing-content h1{text-wrap:balance;font-size:clamp(2rem,5vw,3.5rem);line-height:1.15}.pricing-intro{color:var(--text-secondary);margin:1.25rem 0 2rem;line-height:1.6}.pricing-billing{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:.75rem;padding:.3rem;display:inline-flex}.pricing-billing button{color:var(--text-secondary);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:.5rem;padding:.75rem 1.5rem}.pricing-billing button[aria-pressed=true]{background:var(--text-primary);color:var(--bg-primary)}.pricing-billing button:focus-visible{outline:2px solid var(--text-primary);outline-offset:3px}.pricing-savings{color:var(--text-secondary);margin:1rem 0 2.5rem;font-size:.875rem}.pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;display:grid}.pricing-card{border:1px solid var(--border-color);text-align:left;background:var(--bg-secondary);border-radius:1rem;padding:clamp(1.5rem,4vw,3rem)}.pricing-card h2{margin:0;font-size:1.5rem}.pricing-card-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:2rem;display:flex}.pricing-save-badge{background:var(--text-primary);color:var(--bg-primary);border-radius:.3rem;margin-left:.4rem;padding:.25rem .4rem;font-size:.7rem;font-weight:700;display:inline-block}.pricing-billing button[aria-pressed=true] .pricing-save-badge{background:var(--bg-primary);color:var(--text-primary)}.pricing-recommendation{letter-spacing:.03em;border:1px solid;border-radius:2rem;padding:.4rem .6rem;font-size:.65rem;font-weight:600}.pricing-card-featured{background:var(--text-primary);color:var(--bg-primary);border-color:var(--text-primary)}.pricing-card-featured .pricing-amount span,.pricing-card-featured .pricing-terms,.pricing-card-featured .pricing-alternative{color:inherit}.pricing-card-featured .pricing-amount span,.pricing-card-featured .pricing-terms{opacity:.8}.pricing-card-featured .pricing-alternative{border-color:color-mix(in srgb, var(--bg-primary) 25%, transparent)}.pricing-alternative strong{font-weight:600;display:block}.pricing-amount{align-items:baseline;gap:.3rem;display:flex}.pricing-amount strong{letter-spacing:-.04em;font-size:clamp(2.5rem,5vw,3.5rem)}.pricing-amount span,.pricing-terms,.pricing-alternative{color:var(--text-secondary)}.pricing-terms{margin-top:.5rem;font-size:.875rem}.pricing-alternative{border-top:1px solid var(--border-color);margin-top:2rem;padding-top:1.25rem;font-size:.875rem;line-height:1.6}@media (max-width:560px){.pricing-grid{grid-template-columns:1fr}.pricing-nav{font-size:.875rem}}.copyright{max-width:calc(100% - 8rem);color:var(--text-tertiary);z-index:10;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;padding:2.5vh 3vw;font-size:clamp(.75rem,1.5vw,.9375rem);display:flex;position:absolute;bottom:0;left:0}.copyright-devlog{min-height:44px;color:var(--text-primary);align-items:center;gap:.5rem;padding:0;text-decoration:none;display:inline-flex}.copyright-links{flex-wrap:wrap;align-items:center;gap:1rem;display:inline-flex}.copyright-devlog span{color:var(--text-tertiary)}.copyright-devlog:hover{text-underline-offset:.2em;text-decoration:underline}.copyright-devlog:focus-visible{outline-offset:3px;outline:2px solid}.preference-controls{right:calc(clamp(1rem, 3vw, 2rem) + var(--safe-right));bottom:calc(clamp(1rem, 3vw, 2rem) + var(--safe-bottom));z-index:60;transition:opacity var(--motion-duration-fast) var(--motion-ease-standard), visibility var(--motion-duration-fast);align-items:center;gap:0;display:flex;position:fixed}.theme-control-presence{opacity:0;visibility:hidden;width:0;transition:width var(--motion-duration-base) var(--motion-ease-standard), margin-right var(--motion-duration-base) var(--motion-ease-standard), opacity var(--motion-duration-fast), transform var(--motion-duration-base), visibility var(--motion-duration-base);margin-right:0;display:block;overflow:hidden;transform:translateY(.4rem)}.theme-control-presence.is-visible{opacity:1;visibility:visible;width:3rem;margin-right:.5rem;overflow:visible;transform:none}.marketing-footer{left:var(--safe-left);right:var(--safe-right);bottom:var(--safe-bottom);z-index:55;background:var(--bg-primary);opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--motion-duration-base), transform var(--motion-duration-base), visibility var(--motion-duration-base);position:fixed;transform:translateY(.5rem)}.marketing-footer .copyright{padding:.25rem .75rem;position:static}.marketing-footer.is-visible{opacity:1;visibility:visible;pointer-events:auto;transform:none}.pricing-page{padding-bottom:8rem}:is(body:has(.auth-dialog-backdrop) .preference-controls,body:has(.auth-dialog-backdrop) .marketing-footer){opacity:0;visibility:hidden;pointer-events:none}.preference-toggle{border:1px solid var(--border-color);background:color-mix(in srgb, var(--bg-primary) 84%, transparent);width:3rem;height:3rem;color:var(--text-primary);box-shadow:var(--shadow-sm);cursor:pointer;-webkit-backdrop-filter:blur(.75rem);backdrop-filter:blur(.75rem);transition:transform var(--motion-duration-fast) var(--motion-ease-standard), background-color var(--motion-duration-fast) var(--motion-ease-standard);border-radius:50%;flex:0 0 3rem;place-items:center;padding:0;font-size:1.125rem;display:grid}.preference-toggle:hover{background:var(--bg-secondary);transform:translateY(-.125rem)}.preference-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media (max-width:768px){.homepage-content{padding:3vh 5vw}.homepage-subtitle{max-width:95%;margin-bottom:4vh}.get-started-button{padding:.875rem 2.5rem}.auth-module{padding:max(1rem,2vh) max(1rem,4vw)}.homepage-brand{top:max(1rem,2vh);left:max(1rem,4vw)}.copyright{flex-direction:column;align-items:flex-start;gap:0;padding:1rem}.copyright-devlog{align-items:flex-start;gap:.25rem;min-height:1.5rem;padding-top:.125rem;font-size:.625rem;line-height:1.2}}@media (max-height:600px){.homepage-content{padding:2vh 5vw}.homepage-title{margin-bottom:1vh}.homepage-subtitle{margin-bottom:2vh}}.courses-page{background-color:var(--bg-primary);flex-direction:column;width:100%;min-height:100svh;padding:clamp(1.5rem,5vh,4rem) clamp(1rem,5vw,4rem);display:flex;position:relative}.courses-composition{width:min(100%,72rem);animation:courses-composition-recenter var(--motion-duration-base) var(--motion-ease-emphasized) both;grid-template-columns:minmax(0,1fr) minmax(16rem,20rem);align-items:start;gap:clamp(1.25rem,3vw,2.5rem);margin:auto;display:grid}.courses-header,.courses-container{min-width:0}.courses-header{grid-area:1/1;margin-bottom:0}.courses-container{grid-area:2/1/auto/-1}.review-module{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:.85rem;grid-area:1/2;align-self:start;gap:.75rem;width:100%;min-width:0;padding:1rem 1.1rem;display:grid;box-shadow:0 .65rem 1.75rem #0000000f}.review-module.has-reviews{border-color:color-mix(in srgb, var(--accent) 52%, var(--border-color));box-shadow:var(--shadow-md)}.review-module-heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.review-module-kicker{color:var(--text-tertiary);letter-spacing:.1em;text-transform:uppercase;margin-bottom:.2rem;font-size:.62rem;font-weight:750}.review-module h2{letter-spacing:-.03em;font-size:1.35rem}.review-module-count{background:var(--bg-tertiary);width:2.5rem;height:2.5rem;color:var(--text-primary);border-radius:50%;place-items:center;font-size:1.1rem;font-weight:750;display:grid}.review-module.has-reviews .review-module-count{background:var(--accent);color:var(--bg-primary)}.review-module-copy{color:var(--text-secondary);margin:0;font-size:.9rem;line-height:1.35}.review-module-languages{flex-wrap:wrap;align-items:center;gap:.5rem;min-height:2.2rem;display:flex}.review-language-badge{color:var(--text-secondary);align-items:center;gap:.35rem;font-size:.78rem;font-weight:700;display:inline-flex}.review-language-flag{border:1px solid var(--border-color);background:var(--bg-primary);border-radius:50%;place-items:center;width:1.75rem;height:1.75rem;display:grid;overflow:hidden}.review-language-flag img{object-fit:cover;width:100%;height:100%}.review-module-empty{color:var(--text-tertiary);font-size:.85rem}.review-module-action{border:1px solid var(--border-color);background:var(--bg-primary);width:100%;color:var(--text-primary);font:inherit;cursor:pointer;transition:background-color var(--motion-duration-fast) var(--motion-ease-standard), border-color var(--motion-duration-fast) var(--motion-ease-standard), transform var(--motion-duration-fast) var(--motion-ease-standard);border-radius:.55rem;padding:.65rem .85rem;font-size:.9rem;font-weight:700}.review-module-action:hover:not(:disabled){border-color:var(--accent);background:var(--bg-tertiary);transform:translateY(-.1rem)}.review-module-action:disabled{cursor:default;color:var(--text-tertiary)}.courses-container .languages-grid{grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width:900px){.courses-composition{grid-template-columns:1fr}.review-module{grid-area:2/1}.courses-container{grid-area:3/1}}@media (max-width:480px){.courses-container .languages-grid{grid-template-columns:1fr}}.review-page{min-height:100svh;padding:clamp(1.25rem,4vw,3rem) clamp(1rem,5vw,4rem) 5rem}.review-shell{width:min(100%,48rem);margin:0 auto}.review-header{grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:clamp(1rem,3vw,2rem);margin-bottom:clamp(2rem,6vh,4rem);display:grid}.review-back-button{color:var(--text-secondary);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:.55rem;align-items:center;gap:.55rem;padding:.7rem .9rem;font-size:.9rem;display:inline-flex}.review-back-button:hover,.review-back-button:focus-visible{border-color:var(--border-color);background:var(--bg-secondary);color:var(--text-primary)}.review-header-copy h1,.review-header-copy p{margin:0}.review-header-copy h1{letter-spacing:-.055em;font-size:clamp(2rem,5vw,3.25rem)}.review-header-copy>p:last-child{max-width:34rem;color:var(--text-secondary);margin-top:.65rem;line-height:1.55}.review-session-count{color:var(--text-tertiary);justify-items:end;font-size:.78rem;display:grid}.review-session-count strong{color:var(--text-primary);font-size:1.6rem;line-height:1}.review-session-bar{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.8rem;display:flex}.review-session-language{align-items:center;gap:.7rem;min-width:0;display:inline-flex}.review-session-language>span:last-child{gap:.15rem;display:grid}.review-session-language strong{font-size:.9rem}.review-session-language small{color:var(--text-tertiary);font-size:.78rem}.review-session-flag{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:50%;place-items:center;width:2.25rem;height:2.25rem;display:grid;overflow:hidden}.review-session-flag img{object-fit:cover;width:100%;height:100%}.vocabulary-review-card{border:1px solid var(--border-color);background:color-mix(in srgb, var(--course-accent-primary) 5%, var(--bg-secondary));min-height:clamp(25rem,52vh,32rem);box-shadow:var(--shadow-lg);border-radius:1rem;position:relative;overflow:hidden}.vocabulary-review-card.is-correct{background:linear-gradient(135deg, color-mix(in srgb, #22c55e 8%, var(--bg-secondary)) 0%, color-mix(in srgb, #22c55e 16%, var(--bg-secondary)) 100%);border-color:#15803d}.vocabulary-review-card.is-incorrect{background:linear-gradient(135deg, color-mix(in srgb, #ef4444 7%, var(--bg-secondary)) 0%, color-mix(in srgb, #ef4444 14%, var(--bg-secondary)) 100%);border-color:#dc2626}.vocabulary-review-card-inner{min-height:inherit;text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:max(5rem,clamp(1.5rem,7vw,4rem)) clamp(1.5rem,7vw,4rem) max(4.5rem,clamp(1.5rem,7vw,4rem));display:flex}.review-card-kicker{color:var(--text-tertiary);letter-spacing:.1em;text-transform:uppercase;margin-bottom:1.25rem;font-size:.78rem;font-weight:750}.vocabulary-review-word{overflow-wrap:anywhere;max-width:100%;color:var(--text-primary);letter-spacing:-.055em;font-size:clamp(2.5rem,9vw,5rem);line-height:1.05}.review-audio-button{border:1px solid var(--border-color);background:var(--bg-primary);min-width:6rem;height:3rem;color:var(--text-secondary);cursor:pointer;transition:transform var(--motion-duration-fast) var(--motion-ease-standard), border-color var(--motion-duration-fast) var(--motion-ease-standard), color var(--motion-duration-fast) var(--motion-ease-standard);border-radius:.75rem;justify-content:center;place-items:center;gap:.5rem;padding-inline:1rem;font-size:.875rem;display:inline-flex;position:absolute;top:1rem;right:1rem}.review-audio-button:hover,.review-audio-button:focus-visible,.review-audio-button.is-playing{border-color:var(--course-accent-primary);color:var(--course-accent-primary);transform:scale(1.06)}.vocabulary-review-prompt{max-width:28rem;color:var(--text-secondary);margin-top:2rem;line-height:1.55}.vocabulary-review-answer{gap:.5rem;margin-top:2rem;display:grid}.vocabulary-review-answer span{color:var(--text-tertiary);letter-spacing:.1em;text-transform:uppercase;font-size:.72rem;font-weight:750}.vocabulary-review-answer strong{overflow-wrap:anywhere;max-width:36rem;color:var(--course-accent-primary);font-size:clamp(1.5rem,4vw,2.25rem);line-height:1.2}.review-question-area{width:min(100%,34rem);margin-top:1.75rem}.review-matching-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.review-matching-option{border:1px solid var(--border-color);background:var(--bg-primary);min-width:0;min-height:3.5rem;color:var(--text-primary);font:inherit;text-align:left;overflow-wrap:anywhere;cursor:pointer;transition:transform var(--motion-duration-fast) var(--motion-ease-standard), border-color var(--motion-duration-fast) var(--motion-ease-standard), background-color var(--motion-duration-fast) var(--motion-ease-standard);border-radius:.65rem;padding:.85rem 1rem .85rem 2.65rem;font-size:.95rem;font-weight:650;position:relative}.review-matching-option:hover:not(:disabled),.review-matching-option:focus-visible{border-color:var(--course-accent-primary);background:color-mix(in srgb, var(--course-accent-primary) 8%, var(--bg-primary));transform:translateY(-.1rem)}.review-matching-option:disabled{cursor:default;opacity:.68}.review-matching-option .answer-choice-number{color:var(--text-tertiary);position:absolute;top:50%;left:.9rem;transform:translateY(-50%)}.review-typing-test{flex-direction:column;gap:.75rem;display:flex}.review-typing-input{border:1px solid var(--border-color);background:var(--bg-primary);width:100%;min-width:0;color:var(--text-primary);font:inherit;text-align:center;border-radius:.65rem;padding:.95rem 1rem;font-size:1rem}.review-typing-input:focus{border-color:var(--course-accent-primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--course-accent-primary) 18%, transparent);outline:none}.review-submit-button,.review-retry-button{border:1px solid var(--course-accent-primary);background:var(--course-accent-primary);min-height:2.85rem;color:var(--course-accent-contrast);font:inherit;cursor:pointer;border-radius:.65rem;padding:.7rem 1rem;font-weight:750}.review-submit-button:disabled{cursor:default;opacity:.5}.review-submit-button:hover:not(:disabled),.review-retry-button:hover,.review-retry-button:focus-visible{filter:brightness(.92)}.review-feedback-content{text-align:center;flex-direction:column;align-items:center;gap:.65rem;width:min(100%,30rem);margin-top:1.5rem;display:flex}.review-feedback-icon{font-size:2rem}.vocabulary-review-card.is-correct .review-feedback-icon,.vocabulary-review-card.is-correct .review-card-kicker,.vocabulary-review-card.is-correct .review-feedback-prompt,.vocabulary-review-card.is-correct .vocabulary-review-answer{color:#15803d}.vocabulary-review-card.is-incorrect .review-feedback-icon,.vocabulary-review-card.is-incorrect .review-card-kicker,.vocabulary-review-card.is-incorrect .review-feedback-prompt,.vocabulary-review-card.is-incorrect .vocabulary-review-answer{color:#b91c1c}.review-feedback-prompt{color:var(--text-secondary);margin:0;line-height:1.45}.review-feedback-content .vocabulary-review-answer{margin:0;font-size:clamp(1.35rem,4vw,2rem);font-weight:750}.review-retry-button{margin-top:.65rem}.handwritten-answer{width:100%;min-width:0;position:relative}.handwritten-answer-ink{overflow-wrap:anywhere;width:100%;line-height:1.5}.handwritten-answer:not(.is-ready) .handwritten-answer-ink{visibility:hidden;position:absolute;top:0}.handwritten-answer-replay{min-height:44px;color:var(--text-secondary);font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;border-radius:.5rem;margin:.25rem auto;padding:.5rem .75rem;font-size:.8rem;text-decoration:underline;display:block}.handwritten-answer-replay:focus-visible{outline-offset:2px;outline:2px solid}.review-reveal-button,.review-primary-button,.review-secondary-button{min-height:3rem;font:inherit;cursor:pointer;border-radius:.65rem;padding:.85rem 1.35rem;font-weight:750}.review-reveal-button,.review-primary-button{border:1px solid var(--course-accent-primary);background:var(--course-accent-primary);color:var(--course-accent-contrast)}.review-reveal-button{width:min(100%,22rem);margin:1.25rem auto 0;padding-right:2.5rem;display:block;position:relative}.review-reveal-button:hover,.review-primary-button:hover{filter:brightness(.92)}.review-result-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin-top:1.25rem;display:grid}.review-again-button,.review-known-button{min-height:4.25rem;font:inherit;text-align:left;cursor:pointer;border-radius:.65rem;justify-items:start;gap:.25rem;padding:.85rem 1rem;font-weight:750;display:grid;position:relative}.review-again-button{border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary)}.review-known-button{border:1px solid var(--course-accent-primary);background:var(--course-accent-primary);color:var(--course-accent-contrast)}.review-again-button .answer-choice-number,.review-known-button .answer-choice-number,.review-reveal-button .answer-choice-number{color:color-mix(in srgb, currentColor 48%, transparent);opacity:.72}.review-again-button:hover,.review-again-button:focus-visible,.review-known-button:hover,.review-known-button:focus-visible{transform:translateY(-.1rem)}.review-again-button small,.review-known-button small{opacity:.78;font-size:.75rem;font-weight:500}.review-known-button svg{position:absolute;top:50%;right:1rem;transform:translateY(-50%)}.review-empty-card,.review-loading-card{border:1px solid var(--border-color);background:var(--bg-secondary);text-align:center;border-radius:1rem;align-content:center;justify-items:center;gap:.8rem;min-height:20rem;padding:2rem;display:grid}.review-empty-card h2,.review-empty-card p{margin:0}.review-empty-card h2{max-width:28rem;font-size:clamp(1.4rem,4vw,2rem)}.review-empty-card>p:not(.course-kicker){max-width:30rem;color:var(--text-secondary);line-height:1.5}.review-complete-actions{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:.75rem;display:flex}.review-secondary-button{border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-primary)}.review-loading-word{width:min(15rem,70%);height:3.5rem}.review-loading-copy{width:min(24rem,85%);height:1rem}.review-loading-button{width:12rem;height:3rem;margin-top:1rem}@media (max-width:600px){.review-page{padding-inline:1rem}.review-header{grid-template-columns:auto minmax(0,1fr)}.review-session-count{grid-column:2;justify-items:start;margin-top:-1rem}.review-result-actions{grid-template-columns:1fr}}@keyframes courses-composition-recenter{0%{opacity:.72;transform:translateY(.875rem)}to{opacity:1;transform:translateY(0)}}.courses-header{align-items:center;gap:clamp(1rem,3vw,2rem);max-width:100%;margin-bottom:clamp(1.5rem,4vh,3rem);display:flex}.back-button{border:1px solid var(--border-color);background-color:var(--bg-secondary);color:var(--text-primary);cursor:pointer;border-radius:.5rem;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;transition:all .2s}.back-button:hover{background-color:var(--bg-tertiary);border-color:var(--border-hover);transform:translate(-.2rem)}.courses-title{color:var(--text-primary);font-size:clamp(2rem,5vw,3rem);font-weight:700}.courses-container{width:100%;max-width:100%}.languages-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1rem,2.4vw,2rem);width:100%;display:grid}@keyframes ui-page-enter{0%{opacity:0;transform:translateY(.5rem)scale(.995)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes ui-page-exit{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-.25rem)scale(.995)}}@keyframes ui-rise-in{0%{opacity:0;transform:translateY(.375rem)}to{opacity:1;transform:translateY(0)}}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.homepage,.courses-page,.dashboard-page,.devlog-page,.lesson-page{animation:ui-page-enter var(--motion-duration-base) var(--motion-ease-emphasized) both}.page-loading{animation:none}.motion-exit{pointer-events:none;animation:ui-page-exit var(--motion-duration-fast) var(--motion-ease-standard) both!important}.loading-stagger>*{animation:ui-rise-in var(--motion-duration-base) var(--motion-ease-emphasized) both}.loading-stagger>:nth-child(2){animation-delay:40ms}.loading-stagger>:nth-child(3){animation-delay:80ms}.loading-stagger>:nth-child(4){animation-delay:.12s}.loading-stagger>:nth-child(5){animation-delay:.16s}.loading-stagger>:nth-child(6){animation-delay:.2s}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skeleton{background:linear-gradient(100deg, var(--skeleton-base) 20%, var(--skeleton-highlight) 45%, var(--skeleton-base) 70%);background-size:200% 100%;border-radius:.5rem;max-width:100%;animation:1.5s linear infinite skeleton-shimmer;display:block}.skeleton-surface{background-color:var(--bg-secondary);border-color:var(--border-color);pointer-events:none}.skeleton-card{pointer-events:none;cursor:default}.skeleton-circle{border-radius:50%;width:2rem;height:2rem}.skeleton-flag{position:absolute;top:.875rem;right:.875rem}.skeleton-language-content,.skeleton-copy-stack{flex-direction:column;gap:.75rem;display:flex}.skeleton-language-content{align-items:center}.skeleton-text{width:100%;height:1rem}.skeleton-text-short{width:45%}.skeleton-text-medium{width:68%}.skeleton-title{width:55%;height:1.75rem}.skeleton-title-wide{width:min(24rem,75%)}.skeleton-heading{width:min(18rem,45vw);height:clamp(2.25rem,5vw,3.25rem)}.skeleton-section-title{width:min(12rem,40vw);height:2rem;margin-bottom:1.5rem}.skeleton-button{width:8rem;height:3.25rem}.skeleton-back-button{width:10rem;height:2.75rem}.skeleton-action-button{flex:none;width:10rem}.skeleton-pill{border-radius:999px;width:10rem;height:2.25rem}.skeleton-stat-card{flex-direction:column;align-items:center;gap:.75rem;display:flex}.skeleton-stat-value{width:4rem;height:3rem}.skeleton-progress{border-radius:0;width:32%;height:100%}.skeleton-lesson-card{cursor:default}.skeleton-lesson-copy{align-items:center;width:100%}.skeleton-lesson-word{width:55%;height:4rem}.skeleton-audio{width:3.5rem;height:3.5rem;margin-top:1rem}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.skeleton{background:var(--skeleton-base)}}.collapsible{border:1px solid var(--border-color);background-color:var(--bg-secondary);border-radius:.75rem;overflow:hidden}.collapsible-trigger{text-align:left;width:100%;color:var(--text-primary);cursor:pointer;transition:background-color var(--motion-duration-fast) var(--motion-ease-standard);align-items:center;display:flex;position:relative}.collapsible-trigger-label{flex-wrap:wrap;flex:1;align-items:center;gap:.75rem;min-width:0;display:flex}.collapsible-icon{color:var(--text-secondary);transition:transform var(--motion-duration-fast) var(--motion-ease-standard);flex:none;margin-left:auto;font-size:1.75rem;line-height:1;transform:rotate(0)}.collapsible-trigger:hover{background-color:var(--bg-tertiary)}.collapsible-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.collapsible[data-state=open] .collapsible-icon{transform:rotate(90deg)}.collapsible-panel{opacity:0;visibility:hidden;transition:grid-template-rows var(--motion-duration-base) var(--motion-ease-emphasized), opacity var(--motion-duration-fast) var(--motion-ease-standard), transform var(--motion-duration-base) var(--motion-ease-emphasized), visibility 0s linear var(--motion-duration-base);grid-template-rows:0fr;display:grid;transform:translateY(-.375rem)}.collapsible[data-state=open] .collapsible-panel{opacity:1;visibility:visible;transition:grid-template-rows var(--motion-duration-base) var(--motion-ease-emphasized), opacity var(--motion-duration-fast) var(--motion-ease-standard), transform var(--motion-duration-base) var(--motion-ease-emphasized), visibility 0s linear 0s;grid-template-rows:1fr;transform:translateY(0)}.collapsible-panel-inner{min-height:0;overflow:hidden}.down-the-road{background-color:#0000;border:0;border-radius:.75rem;margin-top:clamp(1.25rem,2.5vh,2rem);overflow:visible}.down-the-road-summary{background-color:color-mix(in srgb, var(--bg-secondary) 35%, transparent);min-height:4.25rem;transition:background-color var(--motion-duration-fast) var(--motion-ease-standard), color var(--motion-duration-fast) var(--motion-ease-standard), box-shadow var(--motion-duration-fast) var(--motion-ease-standard);border:1px solid #0000;border-radius:.75rem;gap:.625rem;padding:1rem 1.25rem;font-size:1.125rem;font-weight:600}.down-the-road .collapsible-trigger:hover,.down-the-road .collapsible-trigger:focus-visible{background-color:color-mix(in srgb, var(--bg-tertiary) 72%, transparent);box-shadow:var(--shadow-sm)}.down-the-road .collapsible-trigger:focus-visible{outline-offset:2px}.down-the-road-count{color:var(--text-tertiary);font-size:.875rem;font-weight:500}.down-the-road-grid{padding:.25rem 1.25rem 1.25rem}.language-card{background-color:var(--bg-secondary);border:2px solid var(--border-color);width:100%;transition:background-color var(--motion-duration-fast) var(--motion-ease-standard), border-color var(--motion-duration-fast) var(--motion-ease-standard), box-shadow var(--motion-duration-fast) var(--motion-ease-standard), transform var(--motion-duration-fast) var(--motion-ease-standard);cursor:pointer;min-height:clamp(8.75rem,17vw,10rem);color:inherit;font:inherit;border-radius:1rem;justify-content:center;align-items:center;padding:clamp(1.25rem,3vw,2rem);display:flex;position:relative}.language-flag{border:1px solid var(--border-color);background-color:var(--bg-primary);width:2rem;height:2rem;box-shadow:var(--shadow-sm);border-radius:50%;position:absolute;top:.875rem;right:.875rem;overflow:hidden}.language-flag img{object-fit:cover;width:100%;height:100%;display:block}.language-flag[data-language=haitian] img{transform:scale(1.12)}.language-flag[data-language=navajo] img{transform:scale(1.35)}.language-flag[data-language=latin] img{transform:scale(1.12)}.language-card.available{cursor:pointer}.language-card.available:hover{border-color:var(--accent);background-color:var(--bg-tertiary);box-shadow:var(--shadow-md);transform:translateY(-.25rem)}.language-card.coming-soon{cursor:not-allowed;opacity:.6}.language-card-content{text-align:center;width:100%}.language-name{color:var(--text-primary);margin-bottom:.5rem;font-size:clamp(1.5rem,3vw,2rem);font-weight:600}.language-native-name{color:var(--text-secondary);margin-bottom:1rem;font-size:clamp(1rem,2vw,1.25rem)}.coming-soon-badge{background-color:var(--bg-tertiary);color:var(--text-tertiary);border:1px solid var(--border-color);border-radius:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;display:inline-block}@media (max-width:900px){.languages-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.courses-page-road-open .courses-composition{animation:courses-composition-recenter var(--motion-duration-base) var(--motion-ease-emphasized) both}@media (max-width:768px){.courses-page{padding:2vh 4vw}.courses-header{flex-direction:column;align-items:flex-start;gap:1rem;margin-bottom:1.25rem}.courses-composition>.courses-header{margin-bottom:0}.languages-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(.625rem,2vw,1rem)}.down-the-road{margin-top:1.125rem}.language-card{min-width:0;min-height:clamp(5.75rem,24vw,7.5rem);padding:clamp(.75rem,2.5vw,1.25rem)}.language-flag{width:1.65rem;height:1.65rem;top:.55rem;right:.55rem}.language-name,.language-native-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.language-name{margin-bottom:.3rem;font-size:clamp(.9rem,4vw,1.35rem);line-height:1.1}.language-native-name{margin-bottom:0;font-size:clamp(.72rem,3.4vw,.95rem);line-height:1.2}.down-the-road-grid .language-name{font-size:clamp(.72rem,3.4vw,1rem)}.down-the-road-grid .language-native-name{font-size:clamp(.65rem,2.9vw,.8rem)}}.settings-answer-preference{grid-column:1/-1}@media (max-width:480px){.courses-page{padding:2vh 3vw}.languages-grid{gap:.625rem}.down-the-road-summary{flex-wrap:nowrap;align-items:center;min-height:3.5rem;padding:.75rem 1rem}.down-the-road-count{white-space:nowrap;width:auto}.down-the-road .collapsible-icon{margin-left:auto;position:static}.down-the-road-grid{padding:.125rem .75rem .75rem}.language-card{min-height:5.75rem;padding:.75rem}}.dashboard-page{background-color:var(--bg-primary);padding:5vh 5vw;width:100%;min-height:100vh;padding-bottom:8rem;position:relative}.dashboard-header{flex-direction:column;gap:1.5rem;max-width:100%;margin-bottom:4vh;display:flex}.dashboard-title-section{flex-direction:column;gap:1rem;display:flex}.dashboard-title{color:var(--text-primary);font-size:clamp(2rem,5vw,3rem);font-weight:700}.language-selector{align-items:center;display:flex}.selected-language{color:var(--text-secondary);background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:.5rem;padding:.5rem 1rem;font-size:clamp(1rem,2vw,1.25rem);display:inline-block}.dashboard-content{flex-direction:column;gap:3rem;max-width:100%;display:flex}.dashboard-section{width:100%}.section-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.section-title{color:var(--text-primary);margin-bottom:1.5rem;font-size:clamp(1.5rem,3vw,2rem);font-weight:600}.view-all-button{border:1px solid var(--border-color);background-color:var(--bg-secondary);color:var(--text-primary);cursor:pointer;border-radius:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s}.view-all-button:hover{background-color:var(--bg-tertiary);border-color:var(--border-hover)}.next-lesson-card{background-color:var(--bg-secondary);border:2px solid var(--border-color);border-radius:.75rem;justify-content:space-between;align-items:center;gap:2rem;padding:2rem;transition:all .2s;display:flex}.lesson-info{flex:1}.lesson-title{color:var(--text-primary);margin-bottom:.75rem;font-size:clamp(1.25rem,2.5vw,1.75rem);font-weight:600}.lesson-description{color:var(--text-secondary);margin-bottom:1rem;font-size:clamp(.9375rem,1.5vw,1.125rem);line-height:1.6}.lesson-stats{flex-wrap:wrap;gap:1.5rem;display:flex}.stat-item{color:var(--text-tertiary);background-color:var(--bg-tertiary);border-radius:.375rem;padding:.25rem .75rem;font-size:.875rem}.start-lesson-button{background-color:var(--accent);color:var(--bg-primary);cursor:pointer;box-shadow:var(--shadow-md);white-space:nowrap;border:none;border-radius:.5rem;padding:1rem 2.5rem;font-size:clamp(1rem,2vw,1.25rem);font-weight:600;transition:all .2s}.start-lesson-button:hover{background-color:var(--accent-hover);box-shadow:var(--shadow-lg);transform:translateY(-.15rem)}.start-lesson-button:active{transform:translateY(0)}.start-lesson-button:disabled{cursor:not-allowed;opacity:.55}.start-lesson-button:disabled:hover{background-color:var(--accent);box-shadow:var(--shadow-md);transform:none}.curriculum-section{flex-direction:column;gap:1.5rem;display:flex}.curriculum-heading{justify-content:space-between;align-items:flex-end;gap:2rem;display:flex}.curriculum-heading .section-title{margin-bottom:0}.curriculum-kicker{color:var(--course-accent-primary,var(--accent));letter-spacing:.12em;text-transform:uppercase;margin-bottom:.45rem;font-size:.75rem;font-weight:700}.curriculum-intro{max-width:36rem;color:var(--text-secondary);font-size:1rem;line-height:1.6}.curriculum-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;display:grid}.curriculum-card{border:1px solid var(--border-color);background:var(--bg-secondary);min-width:0;box-shadow:var(--shadow-sm);border-radius:.9rem;flex-direction:column;padding:1.5rem;transition:transform .18s,border-color .18s,box-shadow .18s;display:flex}.curriculum-card:hover,.curriculum-card-active{border-color:color-mix(in srgb, var(--course-accent-primary) 62%, var(--border-color));box-shadow:var(--shadow-md);transform:translateY(-.2rem)}.curriculum-card-topline{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.6rem;display:flex}.curriculum-position{color:var(--text-tertiary);letter-spacing:.1em;font-size:.8rem;font-weight:700}.curriculum-eyebrow,.curriculum-rule{border:1px solid color-mix(in srgb, var(--course-accent-primary) 22%, var(--border-color));background:color-mix(in srgb, var(--course-accent-primary) 7%, var(--bg-tertiary));color:var(--text-secondary);border-radius:999px;padding:.35rem .65rem;font-size:.75rem;font-weight:600}.curriculum-name{color:var(--text-primary);margin-bottom:.65rem;font-size:clamp(1.35rem,2vw,1.8rem);line-height:1.15}.curriculum-description{color:var(--text-secondary);min-height:4.8rem;margin-bottom:1rem;line-height:1.55}.curriculum-rule{align-self:flex-start;margin-bottom:1.4rem}.curriculum-counts{grid-template-columns:auto 1fr;align-items:baseline;column-gap:.55rem;margin-top:auto;margin-bottom:1.25rem;display:grid}.curriculum-counts strong{color:var(--text-primary);font-size:1.55rem}.curriculum-counts span,.curriculum-counts small{color:var(--text-tertiary)}.curriculum-counts small{grid-column:1/-1;margin-top:.2rem}.curriculum-start-button{width:100%;padding:.8rem 1rem;font-size:1rem}.lesson-curriculum-context{color:var(--text-tertiary);align-items:baseline;gap:.55rem;font-size:.8rem;display:flex;position:absolute;top:calc(5vh + 1.4rem);left:50%;transform:translate(-50%)}.lesson-curriculum-context strong{color:var(--text-primary);font-size:.9rem}.lesson-empty-state{border:1px solid var(--border-color);background:var(--bg-secondary);text-align:center;border-radius:1rem;width:min(38rem,100%);padding:2.5rem}.lesson-empty-state h1{color:var(--text-primary);margin-bottom:.8rem;font-size:clamp(1.6rem,4vw,2.4rem)}.lesson-empty-state>p:not(.curriculum-kicker){color:var(--text-secondary);margin-bottom:1.5rem;line-height:1.6}@media (max-width:900px){.curriculum-heading{flex-direction:column;align-items:flex-start;gap:.75rem}.curriculum-grid{grid-template-columns:1fr}.curriculum-description{min-height:0}}.haitian-dashboard-content{gap:clamp(3.5rem,7vw,6.5rem)}.haitian-course-hero{isolation:isolate;color:#fff;background:radial-gradient(circle at 92% 5%,#ffffff29,#0000 17rem),linear-gradient(135deg,#00175f 0%,#00209f 56%,#0b3fc8 100%);border-radius:1.75rem;grid-template-columns:minmax(0,1.35fr) minmax(17rem,.65fr);gap:clamp(2rem,5vw,5rem);padding:clamp(2rem,6vw,4.75rem);display:grid;position:relative;overflow:hidden;box-shadow:0 1.75rem 4rem #00209f38}.haitian-course-hero:after{z-index:-1;content:"";border:4rem solid #d210348c;border-radius:50%;width:22rem;height:22rem;position:absolute;bottom:-7rem;right:-5rem}.haitian-hero-copy{align-self:center}.haitian-hero-identity{color:#ffffffc7;letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:.65rem;margin-bottom:2.25rem;font-size:.78rem;font-weight:700;display:inline-flex}.haitian-hero-flag{background:#fff;border:1px solid #ffffff73;border-radius:.3rem;width:2.5rem;height:1.65rem;overflow:hidden;box-shadow:0 .35rem 1rem #0003}.haitian-hero-flag img{object-fit:cover;width:100%;height:100%}.haitian-hero-kicker{color:#ffbeca;letter-spacing:.14em;text-transform:uppercase;margin-bottom:.75rem;font-size:.82rem;font-weight:800}.haitian-course-hero h1{letter-spacing:-.055em;text-wrap:balance;max-width:12ch;font-size:clamp(2.4rem,6vw,5rem);line-height:.98}.haitian-hero-description{color:#fffc;max-width:42rem;margin-top:1.5rem;font-size:clamp(1rem,1.8vw,1.18rem);line-height:1.65}.haitian-hero-actions{flex-wrap:wrap;align-items:center;gap:1rem 1.25rem;margin-top:2rem;display:flex}.haitian-primary-action,.haitian-curriculum-card button{cursor:pointer;border:0;justify-content:center;align-items:center;gap:.65rem;font-weight:750;display:inline-flex}.haitian-primary-action{color:#00175f;min-height:3.25rem;transition:transform var(--motion-duration-fast) var(--motion-ease-standard), box-shadow var(--motion-duration-fast) var(--motion-ease-standard);background:#fff;border-radius:.8rem;padding:.85rem 1.25rem;box-shadow:0 .75rem 1.75rem #0003}.haitian-primary-action:hover{transform:translateY(-.15rem);box-shadow:0 1rem 2rem #00000040}.haitian-primary-action:focus-visible,.haitian-curriculum-card button:focus-visible{outline-offset:3px;outline:3px solid #ffcfda}.haitian-hero-actions>span{color:#ffffffad;font-size:.82rem}.haitian-course-overview{-webkit-backdrop-filter:blur(.9rem);backdrop-filter:blur(.9rem);background:#000a395c;border:1px solid #fff3;border-radius:1.25rem;align-self:center;padding:clamp(1.35rem,3vw,2rem);box-shadow:inset 0 1px #ffffff1a}.haitian-overview-label{color:#ffffffa3;letter-spacing:.11em;text-transform:uppercase;margin-bottom:.5rem;font-size:.72rem;font-weight:750}.haitian-course-overview>strong{letter-spacing:-.05em;font-size:clamp(2.3rem,5vw,3.75rem);line-height:1;display:block}.haitian-course-overview>span{color:#ffffffb3;margin-top:.35rem;display:block}.haitian-overview-grid{gap:.7rem;margin-top:1.75rem;display:grid}.haitian-overview-grid>div{border-top:1px solid #ffffff29;grid-template-columns:1.5rem 1fr;align-items:center;gap:.1rem .65rem;padding-top:.7rem;display:grid}.haitian-overview-grid svg,.haitian-overview-number{color:#ff9daf;grid-row:1/span 2;font-size:1.05rem}.haitian-overview-grid strong{font-size:.95rem}.haitian-overview-grid span:not(.haitian-overview-number){color:#ffffff9e;font-size:.75rem}.haitian-section-heading{grid-template-columns:minmax(0,.9fr) minmax(20rem,.65fr);align-items:flex-end;gap:2rem;margin-bottom:2rem;display:grid}.haitian-section-heading h2,.haitian-method-section h2{max-width:18ch;color:var(--text-primary);letter-spacing:-.045em;text-wrap:balance;font-size:clamp(2rem,4vw,3.35rem);line-height:1.04}.haitian-section-heading>p{max-width:37rem;color:var(--text-secondary);line-height:1.65}.haitian-curriculum-path{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;list-style:none;display:grid}.haitian-curriculum-path>li{--track-color:#00209f;min-width:0;position:relative}.haitian-curriculum-path>li:nth-child(2){--track-color:#d21034}.haitian-curriculum-path>li:nth-child(3){--track-color:#725b26}.haitian-curriculum-card{border:1px solid var(--border-color);border-top:.35rem solid var(--track-color);background:linear-gradient(180deg, color-mix(in srgb, var(--track-color) 6%, var(--bg-secondary)), var(--bg-secondary) 35%);height:100%;min-height:31rem;box-shadow:var(--shadow-sm);transition:transform var(--motion-duration-fast) var(--motion-ease-standard), border-color var(--motion-duration-fast) var(--motion-ease-standard), box-shadow var(--motion-duration-fast) var(--motion-ease-standard);border-radius:1.25rem;flex-direction:column;padding:1.4rem;display:flex}.haitian-card-marker{color:var(--track-color);justify-content:space-between;align-items:center;margin-bottom:2.4rem;display:flex}.haitian-card-marker span{letter-spacing:.14em;font-size:.8rem;font-weight:800}.haitian-card-marker svg{width:1.2rem;height:1.2rem}.haitian-card-content{flex-direction:column;flex:1;min-height:0;display:flex}.haitian-card-topline{min-height:1.5rem;color:var(--track-color);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:.75rem;font-size:.74rem;font-weight:800;display:flex}.haitian-current-track{background:color-mix(in srgb, var(--track-color) 10%, var(--bg-secondary));letter-spacing:0;text-transform:none;border-radius:999px;padding:.25rem .45rem}.haitian-curriculum-card h3{color:var(--text-primary);letter-spacing:-.035em;margin-top:.65rem;font-size:clamp(1.6rem,2.6vw,2.25rem);line-height:1.05}.haitian-curriculum-card p{color:var(--text-secondary);margin-top:.9rem;line-height:1.6}.haitian-card-rule{border:1px solid color-mix(in srgb, var(--track-color) 22%, var(--border-color));background:color-mix(in srgb, var(--track-color) 6%, var(--bg-tertiary));color:var(--text-secondary);border-radius:999px;align-self:flex-start;margin-top:1.25rem;padding:.42rem .65rem;font-size:.74rem;font-weight:650}.haitian-card-footer{margin-top:auto;padding-top:2rem}.haitian-card-counts{grid-template-columns:auto 1fr;align-items:baseline;gap:.1rem .5rem;margin-bottom:1.2rem;display:grid}.haitian-card-counts strong{color:var(--text-primary);letter-spacing:-.035em;font-size:1.55rem}.haitian-card-counts span,.haitian-card-counts small{color:var(--text-tertiary)}.haitian-card-counts small{grid-column:1/-1;font-size:.75rem}.haitian-curriculum-card button{background:var(--track-color);color:#fff;width:100%;min-height:2.9rem;transition:filter var(--motion-duration-fast) var(--motion-ease-standard), transform var(--motion-duration-fast) var(--motion-ease-standard);border-radius:.7rem;padding:.75rem 1rem}.haitian-curriculum-card button:hover{filter:brightness(.88);transform:translateY(-.1rem)}.haitian-method-section{border:1px solid var(--border-color);background:color-mix(in srgb, var(--course-accent-primary) 4%, var(--bg-secondary));border-radius:1.5rem;grid-template-columns:minmax(15rem,.75fr) minmax(0,1.25fr);gap:clamp(2rem,6vw,6rem);padding:clamp(1.75rem,5vw,3.5rem);display:grid}.haitian-method-grid{gap:1.35rem;display:grid}.haitian-method-grid article{border-bottom:1px solid var(--border-color);grid-template-columns:2.5rem 1fr;gap:.25rem 1rem;padding-bottom:1.35rem;display:grid}.haitian-method-grid article:last-child{border-bottom:0;padding-bottom:0}.haitian-method-grid article>span{color:var(--course-accent-secondary);letter-spacing:.08em;grid-row:1/span 2;font-size:.75rem;font-weight:800}.haitian-method-grid h3{color:var(--text-primary);font-size:1.05rem}.haitian-method-grid p{color:var(--text-secondary);line-height:1.55}@media (max-width:960px){.haitian-course-hero,.haitian-section-heading,.haitian-method-section{grid-template-columns:1fr}.haitian-course-overview{width:100%}.haitian-curriculum-path{grid-template-columns:1fr}.haitian-curriculum-card{min-height:0}.haitian-card-marker{margin-bottom:1.5rem}}@media (max-width:600px){.haitian-course-hero{border-radius:1.2rem;padding:1.5rem}.haitian-course-hero h1{font-size:clamp(2.25rem,13vw,3.4rem)}.haitian-hero-identity{margin-bottom:1.5rem}.haitian-section-heading{gap:1rem}.haitian-overview-grid{grid-template-columns:1fr}.haitian-method-section{padding:1.5rem}}.haitian-dashboard-content{--haitian-blue:#00209f;--haitian-blue-dark:#00175f;--haitian-red:#d21034;--haitian-gold:#e3ad28;--haitian-ink:var(--text-primary);--haitian-paper:color-mix(in srgb, #f4e5c3 24%, var(--bg-secondary));--haitian-lattice:linear-gradient(45deg, transparent 43%, currentColor 44% 56%, transparent 57%) 0 0 / 1.25rem 1.25rem, linear-gradient(-45deg, transparent 43%, currentColor 44% 56%, transparent 57%) 0 0 / 1.25rem 1.25rem;gap:clamp(4rem,8vw,7rem)}.haitian-course-hero{border:1px solid color-mix(in srgb, var(--haitian-blue) 35%, var(--border-color));background:linear-gradient(90deg, color-mix(in srgb, var(--haitian-blue) 5%, transparent), transparent 48%), var(--haitian-paper);box-shadow:.75rem .75rem 0 var(--haitian-blue-dark);color:var(--haitian-ink);border-radius:0;grid-template-columns:minmax(0,1.45fr) minmax(18rem,.55fr);gap:clamp(2.5rem,6vw,6rem);padding:clamp(2.5rem,6vw,5rem);overflow:visible}.haitian-course-hero:before{z-index:1;border:1px solid var(--haitian-blue-dark);background:linear-gradient(90deg, var(--haitian-blue) 0 50%, var(--haitian-red) 50% 100%);content:"";height:1.35rem;position:absolute;top:-1.35rem;left:-1px;right:-1px}.haitian-course-hero:after{z-index:0;background:linear-gradient(45deg, transparent 42%, var(--haitian-red) 43% 57%, transparent 58%) 0 0 / 1.5rem 1.5rem, linear-gradient(-45deg, transparent 42%, var(--haitian-blue) 43% 57%, transparent 58%) 0 0 / 1.5rem 1.5rem;opacity:.34;content:"";border:0;border-radius:0;width:7.5rem;height:2.25rem;position:absolute;bottom:1.25rem;right:1.25rem}.haitian-hero-copy,.haitian-course-overview{z-index:2;position:relative}.haitian-hero-identity{color:var(--haitian-blue-dark);margin-bottom:2.75rem}.haitian-hero-kicker{color:var(--haitian-red)}.haitian-course-hero h1{max-width:13ch;color:var(--haitian-ink);letter-spacing:-.05em;font-size:clamp(2.5rem,5.3vw,4.65rem);line-height:1}.haitian-hero-description{max-width:40rem;color:var(--text-secondary)}.haitian-primary-action{border:1px solid var(--haitian-blue-dark);background:var(--haitian-blue);color:#fff;box-shadow:.35rem .35rem 0 var(--haitian-red);border-radius:0}.haitian-primary-action:hover{box-shadow:.2rem .2rem 0 var(--haitian-red);transform:translate(.15rem,.15rem)}.haitian-primary-action:focus-visible,.haitian-curriculum-card button:focus-visible{outline-color:var(--haitian-gold)}.haitian-hero-actions>span{color:var(--text-tertiary)}.haitian-course-overview{border:2px solid var(--haitian-blue-dark);background:var(--bg-secondary);box-shadow:.55rem .55rem 0 var(--haitian-red);color:var(--haitian-ink);-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:0;padding:1.75rem}.haitian-course-overview:before,.haitian-curriculum-card:before,.haitian-method-section:before{background:linear-gradient(45deg, transparent 42%, var(--haitian-blue) 43% 57%, transparent 58%) 0 0 / 1.25rem 1.25rem, linear-gradient(-45deg, transparent 42%, var(--haitian-red) 43% 57%, transparent 58%) 0 0 / 1.25rem 1.25rem;content:"";height:1.1rem;margin:-1.75rem -1.75rem 1.75rem;display:block}.haitian-overview-label,.haitian-course-overview>span,.haitian-overview-grid span:not(.haitian-overview-number){color:var(--text-secondary)}.haitian-course-overview>strong,.haitian-overview-grid strong{color:var(--text-primary)}.haitian-overview-grid>div{border-top-color:var(--border-color)}.haitian-overview-grid svg,.haitian-overview-number{color:var(--haitian-red)}.haitian-section-heading{border-bottom:1px solid var(--haitian-blue);padding-bottom:1.75rem}.haitian-curriculum-path{gap:1.5rem}.haitian-curriculum-path>li,.haitian-curriculum-path>li:nth-child(2),.haitian-curriculum-path>li:nth-child(3){--track-color:var(--haitian-blue)}.haitian-curriculum-card{border:1px solid color-mix(in srgb, var(--haitian-blue) 38%, var(--border-color));border-top:1px solid color-mix(in srgb, var(--haitian-blue) 38%, var(--border-color));background:var(--bg-secondary);box-shadow:none;border-radius:0;padding:1.75rem;position:relative}.haitian-curriculum-card:before{margin:-1.75rem -1.75rem 1.75rem}.haitian-curriculum-path>li:nth-child(2) .haitian-curriculum-card:before{background-position:.625rem 0,.625rem 0}.haitian-curriculum-path>li:nth-child(3) .haitian-curriculum-card:before{background:radial-gradient(circle, var(--haitian-blue) 0 .14rem, transparent .16rem) 0 0 / .75rem .75rem, linear-gradient(90deg, var(--haitian-red), var(--haitian-red)) center / 100% 1px no-repeat}.haitian-curriculum-card:hover,.haitian-curriculum-card.is-active{border-color:var(--haitian-blue);box-shadow:.45rem .45rem 0 color-mix(in srgb, var(--haitian-red) 74%, transparent);transform:translate(-.15rem,-.15rem)}.haitian-card-marker,.haitian-card-topline{color:var(--haitian-blue)}.haitian-card-marker{border-bottom:1px solid var(--border-color);padding-bottom:1rem}.haitian-current-track,.haitian-card-rule{background:var(--haitian-paper);border-radius:0}.haitian-card-rule{border-color:color-mix(in srgb, var(--haitian-red) 35%, var(--border-color))}.haitian-curriculum-card button{border:1px solid var(--haitian-blue-dark);background:var(--haitian-blue);box-shadow:.25rem .25rem 0 var(--haitian-red);border-radius:0}.haitian-curriculum-card button:hover{filter:none;box-shadow:.12rem .12rem 0 var(--haitian-red);transform:translate(.12rem,.12rem)}.haitian-method-section{border:1px solid color-mix(in srgb, var(--haitian-blue) 35%, var(--border-color));background:var(--haitian-paper);border-radius:0;padding:clamp(2rem,5vw,3.5rem);position:relative}.haitian-method-section:before{grid-column:1/-1;width:auto;margin:calc(-1*clamp(2rem,5vw,3.5rem)) calc(-1*clamp(2rem,5vw,3.5rem)) 0}.haitian-method-grid article{border-bottom-color:color-mix(in srgb, var(--haitian-blue) 26%, var(--border-color));grid-template-columns:3rem 1fr}.haitian-method-grid article>span{color:var(--haitian-red)}@media (max-width:960px){.haitian-course-hero{grid-template-columns:1fr;gap:2.5rem}.haitian-course-overview{max-width:35rem}}@media (max-width:600px){.haitian-dashboard-content{gap:4rem}.haitian-course-hero{box-shadow:.45rem .45rem 0 var(--haitian-blue-dark);padding:1.5rem}.haitian-course-hero:before{height:.9rem;top:-.9rem}.haitian-course-overview,.haitian-curriculum-card,.haitian-method-section{padding:1.25rem}.haitian-course-overview:before,.haitian-curriculum-card:before{margin:-1.25rem -1.25rem 1.25rem}.haitian-method-section:before{margin:-1.25rem -1.25rem 0}}.regional-dashboard{--regional-primary:var(--course-accent-primary);--regional-secondary:var(--course-accent-secondary);--regional-ink:var(--text-primary);--regional-muted:var(--text-secondary);--regional-surface:var(--bg-secondary);--regional-paper:var(--bg-primary);--regional-rule:var(--border-color);gap:clamp(4rem,8vw,7rem)}.regional-hero{border:1px solid var(--regional-rule);background:var(--regional-paper);grid-template-columns:minmax(0,1.1fr) minmax(18rem,.9fr);align-items:center;gap:clamp(2.5rem,7vw,7rem);min-height:36rem;padding:clamp(2rem,6vw,5rem);display:grid}.regional-hero-copy,.regional-visual,.regional-art-front{min-width:0}.regional-identity{color:var(--regional-muted);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:.7rem;margin-bottom:2.75rem;font-size:.76rem;font-weight:750;display:inline-flex}.regional-flag{border:1px solid var(--regional-rule);background:#fff;width:2.65rem;height:1.75rem;overflow:hidden}.regional-flag img{object-fit:cover;width:100%;height:100%}.regional-kicker,.regional-section-heading>div>p,.regional-principles-title>p{color:var(--regional-primary);letter-spacing:.13em;text-transform:uppercase;margin-bottom:.7rem;font-size:.76rem;font-weight:800}.regional-hero h1{max-width:12ch;color:var(--regional-ink);letter-spacing:-.055em;text-wrap:balance;font-size:clamp(2.7rem,5.7vw,5.25rem);line-height:.98}.regional-description{max-width:40rem;color:var(--regional-muted);margin-top:1.5rem;font-size:clamp(1rem,1.8vw,1.18rem);line-height:1.65}.regional-hero-action-row{flex-wrap:wrap;align-items:center;gap:1rem 1.25rem;margin-top:2rem;display:flex}.regional-hero-action-row button,.regional-lane button{border:1px solid var(--regional-primary);background:var(--regional-primary);min-height:3rem;color:var(--course-accent-contrast);cursor:pointer;transition:transform var(--motion-duration-fast) var(--motion-ease-standard), box-shadow var(--motion-duration-fast) var(--motion-ease-standard);border-radius:0;justify-content:center;align-items:center;gap:.65rem;padding:.75rem 1rem;font-weight:750;display:inline-flex}.regional-hero-action-row button:hover:not(:disabled),.regional-lane button:hover:not(:disabled){box-shadow:.3rem .3rem 0 var(--regional-secondary);transform:translate(-.15rem,-.15rem)}.regional-hero-action-row button.regional-hero-secondary-action{color:var(--regional-primary);border-color:var(--regional-primary);box-shadow:none;background:0 0}.regional-hero-action-row button.regional-hero-secondary-action:hover:not(:disabled){background:color-mix(in srgb, var(--regional-primary) 9%, var(--bg-secondary));box-shadow:none}.regional-hero-action-row button:focus-visible,.regional-lane button:focus-visible{outline:3px solid color-mix(in srgb, var(--regional-secondary) 60%, #fff);outline-offset:3px}.regional-hero-action-row button:disabled,.regional-lane button:disabled{cursor:not-allowed;opacity:.55}.regional-hero-action-row>span{color:var(--text-tertiary);font-size:.82rem}.regional-visual{min-height:25rem;position:relative}.regional-curriculum-section{gap:2rem;display:grid}.regional-curriculum-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,19rem),1fr));gap:1.25rem;padding:0;list-style:none;display:grid}.regional-curriculum-card{border:1px solid var(--regional-rule);border-top:.45rem solid var(--regional-primary);background:var(--regional-surface);flex-direction:column;height:100%;min-height:20rem;padding:1.5rem;display:flex}.regional-curriculum-card.is-active{outline:2px solid var(--regional-secondary);outline-offset:4px}.regional-curriculum-marker,.regional-curriculum-footer{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.regional-curriculum-marker{color:var(--regional-primary);font-size:.78rem;font-weight:800}.regional-curriculum-card>p{color:var(--regional-primary);letter-spacing:.12em;text-transform:uppercase;margin-top:2.5rem;font-size:.72rem;font-weight:800}.regional-curriculum-card h3{color:var(--regional-ink);letter-spacing:-.04em;margin-top:.55rem;font-size:clamp(1.55rem,2.5vw,2rem)}.regional-curriculum-card>span{color:var(--regional-muted);margin-top:.85rem;line-height:1.55}.regional-curriculum-rule{color:var(--regional-primary);margin-top:1.2rem;font-size:.78rem;font-weight:750}.regional-curriculum-footer{margin-top:auto;padding-top:1.5rem}.regional-curriculum-footer strong{color:var(--regional-ink);font-size:.82rem}.regional-curriculum-footer button{color:var(--regional-primary);cursor:pointer;background:0 0;border:0;border-bottom:1px solid;align-items:center;gap:.45rem;padding:.6rem 0;font-weight:800;display:inline-flex}.regional-curriculum-footer button:disabled{cursor:not-allowed;opacity:.45}.regional-art{border:1px solid var(--regional-rule);position:absolute}.regional-art-back{background:var(--regional-secondary);width:78%;height:80%;top:0;right:0}.regional-art-front{background:var(--regional-surface);width:78%;min-height:18rem;box-shadow:.65rem .65rem 0 color-mix(in srgb, var(--regional-primary) 80%, transparent);flex-direction:column;justify-content:space-between;padding:1.6rem;display:flex;bottom:0;right:12%}.regional-art-label{color:var(--regional-muted);letter-spacing:.12em;text-transform:uppercase;font-size:.7rem;font-weight:800}.regional-art-front>strong{z-index:2;color:var(--regional-primary);letter-spacing:-.06em;white-space:nowrap;max-width:100%;font-size:clamp(2.5rem,5.2vw,5.25rem);line-height:.95;position:relative}.regional-art-meta{border-top:1px solid var(--regional-rule);color:var(--regional-muted);justify-content:space-between;gap:.75rem;padding-top:.85rem;font-size:.72rem;display:flex}.regional-section-heading{border-bottom:1px solid var(--regional-rule);grid-template-columns:minmax(0,1fr) minmax(18rem,.55fr);align-items:flex-end;gap:2rem;margin-bottom:2rem;padding-bottom:1.5rem;display:grid}.regional-section-heading h2,.regional-principles h2{max-width:17ch;color:var(--regional-ink);letter-spacing:-.045em;text-wrap:balance;font-size:clamp(2rem,4vw,3.4rem);line-height:1.05}.regional-section-heading>span{color:var(--regional-muted);line-height:1.6}.regional-lane-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;display:grid}.regional-lane{border:1px solid var(--regional-rule);background:var(--regional-surface);flex-direction:column;min-height:28rem;padding:1.5rem;display:flex}.regional-lane-index{border-bottom:1px solid var(--regional-rule);color:var(--regional-primary);letter-spacing:.12em;justify-content:space-between;align-items:center;margin-bottom:2.5rem;padding-bottom:1rem;font-size:.76rem;font-weight:800;display:flex}.regional-lane-eyebrow{letter-spacing:.08em;text-transform:uppercase;font-size:.74rem;font-weight:800;color:var(--regional-primary)!important}.regional-lane h3{color:var(--regional-ink);letter-spacing:-.035em;margin-top:.65rem;font-size:clamp(1.45rem,2.3vw,2rem);line-height:1.1}.regional-lane>p:not(.regional-lane-eyebrow){color:var(--regional-muted);margin-top:.9rem;line-height:1.6}.regional-lane button{width:100%;margin-top:auto}.regional-special-section{border:1px solid var(--regional-rule);background:var(--regional-paper);grid-template-columns:minmax(15rem,.7fr) minmax(0,1.3fr);gap:clamp(2rem,7vw,7rem);padding:clamp(2rem,5vw,4rem);display:grid}.regional-special-heading>p{color:var(--regional-primary);letter-spacing:.13em;text-transform:uppercase;margin-bottom:.7rem;font-size:.76rem;font-weight:800}.regional-special-heading h2{max-width:15ch;color:var(--regional-ink);letter-spacing:-.045em;text-wrap:balance;font-size:clamp(2rem,4vw,3.25rem);line-height:1.05}.regional-special-grid{gap:1.25rem;display:grid}.regional-special-card{border:1px solid var(--regional-rule);background:var(--regional-surface);grid-template-columns:minmax(7rem,.42fr) minmax(0,1fr);min-height:17rem;display:grid}.regional-special-mark{border-right:1px solid var(--regional-rule);color:var(--regional-primary);letter-spacing:-.06em;white-space:nowrap;justify-content:center;align-items:center;padding:1rem;font-size:clamp(2.5rem,6vw,5rem);font-weight:800;display:flex}.regional-special-copy{flex-direction:column;align-items:flex-start;min-width:0;padding:1.5rem;display:flex}.regional-special-copy>p{color:var(--regional-primary);letter-spacing:.09em;text-transform:uppercase;font-size:.72rem;font-weight:800}.regional-special-copy h3{color:var(--regional-ink);letter-spacing:-.035em;margin-top:.55rem;font-size:clamp(1.45rem,2.5vw,2.15rem)}.regional-special-copy>span{color:var(--regional-muted);margin-top:.8rem;line-height:1.55}.regional-special-copy button{color:var(--regional-primary);background:0 0;border:0;align-items:center;gap:.6rem;margin-top:auto;padding-top:1.25rem;font-weight:800;display:inline-flex}.regional-special-copy button:disabled{color:var(--text-tertiary)}.regional-principles{border-top:1px solid var(--regional-rule);border-bottom:1px solid var(--regional-rule);grid-template-columns:minmax(15rem,.75fr) minmax(0,1.25fr);gap:clamp(2rem,7vw,7rem);padding:clamp(2rem,5vw,4rem) 0;display:grid}.regional-principle-list{display:grid}.regional-principle-list article{border-bottom:1px solid var(--regional-rule);grid-template-columns:2.5rem 1fr;gap:1rem;padding:1.25rem 0;display:grid}.regional-principle-list article:first-child{padding-top:0}.regional-principle-list article:last-child{border-bottom:0;padding-bottom:0}.regional-principle-list article>span{color:var(--regional-secondary);font-size:.75rem;font-weight:800}.regional-principle-list h3{color:var(--regional-ink);font-size:1.05rem}.regional-principle-list p{color:var(--regional-muted);margin-top:.25rem;line-height:1.55}.dashboard-skeleton-shell .dashboard-header{margin-bottom:2rem}.regional-dashboard-skeleton .skeleton{border-radius:0}.regional-skeleton-hero{min-height:32rem}.regional-skeleton-copy{justify-content:center}.regional-skeleton-headline{width:min(34rem,92%);height:clamp(5rem,12vw,9rem)}.regional-skeleton-headline-short{width:min(25rem,85%);height:clamp(4rem,8vw,6.5rem)}.regional-skeleton-art{border:1px solid var(--border-color);flex-direction:column;justify-content:space-between;min-height:22rem;padding:1.5rem;display:flex}.regional-skeleton-native{width:82%;height:clamp(4rem,9vw,7rem)}.regional-skeleton-section-title{width:min(38rem,100%);margin-bottom:2rem}.regional-skeleton-lane{gap:1rem}.regional-skeleton-lane .skeleton-action-button{margin-top:auto}.regional-skeleton-principles{min-height:16rem}.regional-dashboard[data-region=spanish]{--regional-primary:#174a8b;--regional-secondary:#d67b2c;--regional-paper:color-mix(in srgb, #f7e7bd 34%, var(--bg-primary));--regional-surface:color-mix(in srgb, #fff8e5 52%, var(--bg-secondary))}.regional-dashboard[data-region=spanish] .regional-hero{background-image:linear-gradient(90deg,#0000 49%,#174a8b1f 50% 51%,#0000 52%),linear-gradient(#0000 48%,#174a8b1f 49% 50%,#0000 51%);background-size:4rem 4rem;border:.65rem solid #174a8b}.regional-dashboard[data-region=spanish] .regional-art-back{background:conic-gradient(from 45deg, #174a8b 0 25%, #f2c34e 0 50%, #c74535 0 75%, #f7e7bd 0) 0 0 / 3.5rem 3.5rem}.regional-dashboard[data-region=spanish] .regional-art-front{background:#fffaf0;border:.45rem double #174a8b;box-shadow:.65rem .65rem #d67b2c}.regional-dashboard[data-region=spanish] .regional-lane{border:.35rem double #174a8b}.regional-dashboard[data-region=french]{--regional-primary:#142b67;--regional-secondary:#e23b45;--regional-paper:color-mix(in srgb, #f4f0e8 58%, var(--bg-primary))}.regional-dashboard[data-region=french] .regional-hero{border:0;border-left:.8rem solid #142b67;border-right:.8rem solid #e23b45;position:relative}.regional-dashboard[data-region=french] .regional-hero:after{background:var(--regional-rule);content:"";height:1px;position:absolute;bottom:1.5rem;left:0;right:0}.regional-dashboard[data-region=french] .regional-art-back{background:#e23b45}.regional-dashboard[data-region=french] .regional-art-front{background:#f5f1e8;border:0;border-top:1.2rem solid #142b67;box-shadow:.65rem .65rem #111}.regional-dashboard[data-region=french] .regional-lane:nth-child(2){transform:translateY(1.5rem)}.regional-dashboard[data-region=navajo]{--regional-primary:#8d3e24;--regional-secondary:#1498b8;--regional-paper:color-mix(in srgb, #e4c08b 36%, var(--bg-primary));--regional-surface:color-mix(in srgb, #f0d2a2 28%, var(--bg-secondary))}.regional-dashboard[data-region=navajo] .regional-hero{background:linear-gradient(180deg, color-mix(in srgb, #4fb7d4 25%, var(--bg-primary)) 0 46%, var(--regional-paper) 46% 100%);border:0;border-bottom:.6rem solid #8d3e24;position:relative;overflow:hidden}.regional-dashboard[data-region=navajo] .regional-hero:before,.regional-dashboard[data-region=navajo] .regional-hero:after{background:color-mix(in srgb, #8d3e24 78%, var(--bg-secondary));clip-path:polygon(0 100%,12% 68%,30% 66%,38% 20%,63% 20%,70% 68%,100% 76%,100% 100%);content:"";position:absolute;bottom:.6rem}.regional-dashboard[data-region=navajo] .regional-hero:before{opacity:.2;width:50%;height:42%;right:-5%}.regional-dashboard[data-region=navajo] .regional-art-back{clip-path:polygon(0 100%,0 32%,18% 32%,28% 0,69% 0,79% 38%,100% 38%,100% 100%);background:#1498b8}.regional-dashboard[data-region=navajo] .regional-art-front{background:#d89155;border:0;box-shadow:.65rem .65rem #6f321f}.regional-dashboard[data-region=navajo] .regional-art-front>strong,.regional-dashboard[data-region=navajo] .regional-art-label,.regional-dashboard[data-region=navajo] .regional-art-meta{color:#2f1d16}.regional-dashboard[data-region=navajo] .regional-art-front>strong{text-wrap:balance;white-space:normal;font-size:clamp(2.35rem,4vw,3.7rem);line-height:.92}.regional-dashboard[data-region=navajo] .regional-lane{box-shadow:inset 0 -1px 0 var(--regional-rule);border:0;border-top:.45rem solid #8d3e24}@media (min-width:961px) and (max-width:1120px){.regional-hero{grid-template-columns:minmax(0,1.05fr) minmax(15rem,.75fr);gap:clamp(2rem,4vw,3.25rem);min-height:32rem;padding:clamp(2rem,4vw,3.25rem)}.regional-hero h1{font-size:clamp(2.8rem,5.2vw,4rem)}.regional-visual{min-height:22rem}.regional-art-front{width:88%;min-height:16.5rem;right:5%}}.regional-dashboard[data-region=japanese]{--regional-primary:#a71930;--regional-secondary:#1c1c1c;--regional-paper:color-mix(in srgb, #f4efe4 55%, var(--bg-primary));--regional-surface:color-mix(in srgb, #fff 72%, var(--bg-secondary))}.regional-dashboard[data-region=japanese] .regional-hero{background-image:linear-gradient(90deg,#1c1c1c17 1px,#0000 1px),linear-gradient(#1c1c1c17 1px,#0000 1px);background-size:4.5rem 4.5rem;border-top:.2rem solid #1c1c1c;border-bottom:.2rem solid #a71930}.regional-dashboard[data-region=japanese] .regional-art-back{background:#1c1c1c;width:76%;height:86%;left:0;right:auto}.regional-dashboard[data-region=japanese] .regional-art-front{background:#f8f5ed;border:.12rem solid #1c1c1c;width:78%;min-height:19.5rem;right:0;box-shadow:.6rem .6rem #a71930}.regional-dashboard[data-region=japanese] .regional-art-front:after{z-index:1;content:"";background:#bc002d;border-radius:50%;width:4.25rem;height:4.25rem;position:absolute;top:-2rem;right:-2rem;box-shadow:0 0 0 .55rem #f4efe4}.regional-dashboard[data-region=japanese] .regional-art-label,.regional-dashboard[data-region=japanese] .regional-art-meta{z-index:2;position:relative}.regional-dashboard[data-region=japanese] .regional-lane{background:0 0;border:0;border-left:1px solid #1c1c1c}.regional-dashboard[data-region=japanese] .regional-special-section{background-image:linear-gradient(90deg,#1c1c1c14 1px,#0000 1px),linear-gradient(#1c1c1c14 1px,#0000 1px);background-size:4rem 4rem;border:1px solid #1c1c1c;border-left:0;border-right:0}.regional-dashboard[data-region=japanese] .regional-special-card{border:1px solid #1c1c1c}.regional-dashboard[data-region=japanese] .regional-special-mark{color:#fff;background:#bc002d}@media (max-width:600px){.regional-dashboard[data-region=japanese] .regional-art-front{width:88%;min-height:16rem}.regional-dashboard[data-region=japanese] .regional-art-front:after{width:3.4rem;height:3.4rem;top:-1.4rem;right:-1.1rem;box-shadow:0 0 0 .35rem #f4efe4}}.regional-dashboard[data-region=hebrew]{--regional-primary:#174ea6;--regional-secondary:#b78b4b;--regional-paper:color-mix(in srgb, #d9c29a 28%, var(--bg-primary));--regional-surface:color-mix(in srgb, #ead9b9 25%, var(--bg-secondary))}.regional-dashboard[data-region=hebrew] .regional-hero{background-image:linear-gradient(90deg,#9d7b4c1f 1px,#0000 1px),linear-gradient(#9d7b4c1f 1px,#0000 1px);background-size:5rem 2.5rem;border:.3rem solid #174ea6}.regional-dashboard[data-region=hebrew] .regional-art-back{background-color:#d6bd91;background-image:linear-gradient(90deg,#0000 48%,#174ea673 49% 51%,#0000 52%),linear-gradient(#0000 48%,#174ea673 49% 51%,#0000 52%),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:4rem 2.5rem;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box}.regional-dashboard[data-region=hebrew] .regional-art-front{background:#f1e3c7;border:.2rem solid #174ea6;align-items:flex-end;box-shadow:.65rem .65rem #b78b4b}.regional-dashboard[data-region=hebrew] .regional-art-front>strong{text-align:right;width:100%}.regional-dashboard[data-region=hebrew] .regional-art-label,.regional-dashboard[data-region=hebrew] .regional-art-meta{width:100%}.regional-dashboard[data-region=hebrew] .regional-lane{border:.2rem solid #174ea6;box-shadow:.35rem .35rem #b78b4b}.regional-dashboard[data-region=hebrew] .regional-special-section{background-image:linear-gradient(90deg,#9d7b4c1a 1px,#0000 1px),linear-gradient(#9d7b4c1a 1px,#0000 1px);background-size:5rem 2.5rem;border:.3rem solid #174ea6}.regional-dashboard[data-region=hebrew] .regional-special-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.regional-dashboard[data-region=hebrew] .regional-special-card{grid-template-columns:1fr;box-shadow:.35rem .35rem #b78b4b}.regional-dashboard[data-region=hebrew] .regional-special-mark{color:#fff;background:#174ea6;border-bottom:1px solid #174ea6;border-right:0;min-height:7rem}@media (max-width:960px){.regional-hero,.regional-section-heading,.regional-principles,.regional-special-section{grid-template-columns:1fr}.regional-hero{min-height:0}.regional-visual{width:min(100%,34rem)}.regional-lane-grid,.regional-curriculum-grid{grid-template-columns:1fr}.regional-lane{min-height:20rem}.regional-dashboard[data-region=french] .regional-lane:nth-child(2){transform:none}.regional-dashboard[data-region=hebrew] .regional-special-grid{grid-template-columns:1fr}}@media (max-width:600px){.regional-dashboard{gap:4rem}.regional-hero{gap:2rem;padding:1.5rem}.regional-hero h1{font-size:clamp(2.4rem,13vw,3.5rem)}.regional-identity{margin-bottom:1.75rem}.regional-visual{min-height:20rem}.regional-art-front{width:88%;min-height:15rem;padding:1.25rem;right:5%}.regional-art-front>strong{font-size:clamp(2.35rem,11vw,3.85rem)}.regional-art-meta{flex-direction:column}.regional-section-heading{grid-template-columns:1fr;gap:1rem}.regional-lane{min-height:18rem}.regional-special-section{padding:1.5rem}.regional-special-card{grid-template-columns:1fr}.regional-special-mark{border-right:0;border-bottom:1px solid var(--regional-rule);min-height:7rem}}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:1.5rem;width:100%;display:grid}.stat-card{background-color:var(--bg-secondary);border:1px solid var(--border-color);text-align:center;border-radius:.75rem;padding:2rem;transition:all .2s}.stat-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-sm)}.stat-value{color:var(--text-primary);margin-bottom:.5rem;font-size:clamp(2rem,4vw,3rem);font-weight:700}.stat-label{color:var(--text-secondary);font-size:clamp(.875rem,1.5vw,1rem)}.daily-goal-form{flex-wrap:wrap;align-items:center;gap:12px;margin:20px 0;display:flex}.daily-goal-form label{flex-basis:100%}.study-reminder{margin:24px 0}.study-reminder summary{cursor:pointer}.study-reminder>p{margin-top:16px}.study-reminder input{border:1px solid var(--border-color);max-width:100%;color:var(--text-primary);background:var(--bg-primary);font:inherit;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;border-radius:8px;padding:10px}@media (prefers-color-scheme:dark){.study-reminder input{--lightningcss-light: ;--lightningcss-dark:initial}}.daily-goal-form .view-all-button,.course-themed .study-activity .daily-goal-form .view-all-button{color:var(--text-primary)}.dashboard-shell>.learner-dictionary{margin-top:3rem}.daily-goal-form select{font:inherit;color:inherit;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:10px}.dictionary-page .dashboard-content{max-width:800px;margin:0 auto}.dictionary-page .dashboard-content>a{align-self:flex-start}.dictionary-search{flex-wrap:wrap;align-items:center;gap:12px;margin:24px 0;display:flex}.dictionary-search label{flex-basis:100%}.dictionary-search input[type=search]{border:1px solid var(--border-color,#888);min-width:0;color:inherit;font:inherit;background:0 0;border-radius:8px;flex:1;padding:12px}.dictionary-words{margin:24px 0}.dictionary-words>div{border-bottom:1px solid var(--border-color,#888);overflow-wrap:anywhere;padding:16px 0}.dictionary-words dt{font-weight:600}.dictionary-words dd{margin:6px 0 0}.dictionary-words small{opacity:.7;margin-top:6px;display:block}.dictionary-words .view-all-button{align-items:center;display:inline-flex}.dictionary-words dd>p,.dictionary-save{margin:12px 0}.dictionary-save p{margin:8px 0}.dictionary-search input[type=checkbox]{margin-right:6px}.dictionary-pagination{justify-content:space-between;align-items:center;gap:12px;display:flex}.learner-dictionary button:disabled{opacity:.5;cursor:default}.dictionary-preview{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:.75rem;justify-content:center;align-items:center;min-height:10rem;padding:3rem;display:flex}.empty-state{color:var(--text-tertiary);text-align:center;font-size:clamp(1rem,2vw,1.125rem)}.charts-container{grid-template-columns:repeat(auto-fit,minmax(20rem,1fr));gap:2rem;width:100%;display:grid}.chart-card{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:.75rem;min-height:15rem;padding:2rem}.chart-title{color:var(--text-primary);margin-bottom:1.5rem;font-size:clamp(1.125rem,2vw,1.5rem);font-weight:600}.chart-placeholder{background-color:var(--bg-tertiary);border:1px dashed var(--border-color);border-radius:.5rem;justify-content:center;align-items:center;height:12rem;display:flex}.chart-empty{color:var(--text-tertiary);text-align:center;font-size:.9375rem}@media (max-width:768px){.dashboard-page{padding:3vh 4vw 8rem}.dashboard-header{margin-bottom:3vh}.next-lesson-card{flex-direction:column;align-items:flex-start;padding:1.5rem}.start-lesson-button{width:100%}.stats-grid{grid-template-columns:repeat(2,1fr);gap:1rem}.stat-card{padding:1.5rem}.charts-container{grid-template-columns:1fr;gap:1.5rem}.chart-card{padding:1.5rem}}@media (max-width:480px){.dashboard-page{padding:2vh 3vw 8rem}.stats-grid{grid-template-columns:1fr}.next-lesson-card{padding:1.25rem}.dictionary-preview{min-height:8rem;padding:2rem 1.5rem}.chart-card{min-height:12rem;padding:1.25rem}.chart-placeholder{height:10rem}}.lesson-page{background-color:var(--bg-primary);flex-direction:column;justify-content:center;align-items:center;width:100%;min-width:0;min-height:100vh;padding:5vh 5vw 8rem;display:flex;position:relative;overflow-x:clip}.lesson-loading{color:var(--text-secondary);text-align:center;font-size:1.5rem}.regional-curriculum-cefr{border:1px solid var(--regional-primary);color:var(--regional-primary);letter-spacing:.08em;text-transform:uppercase;align-self:flex-start;margin-top:.65rem;padding:.28rem .45rem;font-size:.7rem;font-weight:850}.regional-curriculum-details{border-top:1px solid var(--regional-rule);gap:.9rem;margin-top:1.2rem;padding-top:1rem;display:grid}.regional-curriculum-details strong{color:var(--regional-ink);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem}.regional-curriculum-details ul{color:var(--regional-muted);gap:.3rem;margin:.45rem 0 0;padding-left:1rem;font-size:.78rem;line-height:1.4;display:grid}.lesson-loading-status{color:var(--text-secondary);letter-spacing:.02em;margin-bottom:.25rem;font-size:.95rem;font-weight:650}.lesson-progress-bar{background-color:var(--bg-tertiary);z-index:100;width:100%;height:.5rem;position:fixed;top:0;left:0}.lesson-progress-fill{background-color:var(--accent);height:100%;transition:width var(--motion-duration-base) var(--motion-ease-standard)}.lesson-card-container{perspective:1000px;width:100%;min-width:0;max-width:35rem;margin:clamp(1.25rem,4vh,2rem) 0}.lesson-card{width:100%;min-width:0;height:auto;min-height:25rem;box-shadow:var(--shadow-lg);background:linear-gradient(135deg, var(--bg-secondary) 0%, var(--bg-tertiary) 100%);border:2px solid var(--border-color);transition:border-color var(--motion-duration-base) var(--motion-ease-standard), box-shadow var(--motion-duration-base) var(--motion-ease-standard), transform var(--motion-duration-base) var(--motion-ease-emphasized);cursor:pointer;border-radius:1rem;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.lesson-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-lg)}.card-content{text-align:center;flex-direction:column;justify-content:center;align-items:center;width:100%;min-width:0;min-height:25rem;padding:clamp(1.25rem,5vw,3rem);display:flex;position:relative}.card-word{color:var(--text-primary);margin-bottom:1rem;font-size:clamp(2.5rem,6vw,4rem);font-weight:700;line-height:1.2}.card-front .card-translation{color:var(--accent);margin-bottom:1rem;font-size:clamp(1.5rem,3vw,2.25rem);font-weight:600}.test-word{overflow-wrap:anywhere;width:100%;min-width:0;color:var(--text-primary);background-color:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:.5rem;margin-bottom:2rem;padding:1rem;font-size:clamp(1.75rem,4vw,2.5rem);font-weight:600}.card-translation{color:var(--accent);margin-bottom:2rem;font-size:clamp(1.5rem,3vw,2.25rem);font-weight:600}.card-hint{color:var(--text-tertiary);margin-top:2rem;font-size:1rem;font-style:italic}.card-continue-hint{color:var(--text-tertiary);margin-top:2rem;font-size:.875rem;font-style:italic}.audio-button{border:2px solid var(--border-color);background-color:var(--bg-primary);color:var(--text-primary);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:3.5rem;height:3.5rem;margin-top:1.5rem;padding:1rem;font-size:1.5rem;transition:all .2s;display:flex}.audio-button:hover{border-color:var(--accent);background-color:var(--bg-tertiary);transform:scale(1.1)}.audio-button:active{transform:scale(.95)}.audio-button svg.playing{color:var(--accent);animation:1s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.card-enter-hint{color:var(--text-tertiary);opacity:.6;pointer-events:none;justify-content:center;align-items:center;font-size:1.25rem;transition:opacity .2s;display:flex;position:absolute;bottom:1rem;right:1rem}.card-front:hover .card-enter-hint{opacity:.8}.card-enter-hint svg{width:1.5rem;height:1.5rem}.card-test{width:100%;min-width:0;margin-top:0}.matching-test,.typing-test{width:100%;min-width:0}.test-instruction{color:var(--text-secondary);margin-bottom:1.5rem;font-size:1rem;font-weight:500}.lesson-language-direction{width:min(100%,25rem);color:var(--text-secondary);justify-content:center;align-items:center;gap:clamp(.65rem,2vw,1rem);margin-bottom:1.35rem;display:flex}.lesson-language-direction-source{text-align:right;flex-direction:column;align-items:flex-end;min-width:0;line-height:1.1;display:flex}.lesson-language-direction-source strong,.lesson-language-direction-target{color:var(--text-primary);font-size:clamp(.9rem,2.2vw,1rem);font-weight:800}.lesson-language-direction-source small{color:var(--text-tertiary);margin-top:.2rem;font-size:.72rem;font-weight:650}.lesson-language-direction-arrow{color:var(--course-accent-primary,var(--accent));flex:none;font-size:1.2rem;font-weight:800}.lesson-language-direction-target{text-align:left;min-width:0}.matching-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;width:100%;display:grid}.matching-option{border:2px solid var(--border-color);background-color:var(--bg-primary);width:100%;min-width:0;min-height:3.75rem;color:var(--text-primary);cursor:pointer;text-align:left;overflow-wrap:anywhere;border-radius:.75rem;padding:clamp(.8rem,2vw,1.25rem) clamp(1rem,4vw,2rem);font-size:1.125rem;font-weight:500;transition:all .2s;position:relative}.matching-option:hover{border-color:var(--accent);background-color:var(--bg-tertiary);transform:translate(.5rem)}.matching-option:active{transform:translate(.25rem)}.typing-test{flex-direction:column;gap:1rem;width:100%;display:flex}.typing-input{border:2px solid var(--border-color);background-color:var(--bg-primary);width:100%;min-width:0;color:var(--text-primary);border-radius:.75rem;padding:1.25rem 1.5rem;font-size:1.125rem;transition:border-color .2s}.typing-input:focus{border-color:var(--accent);outline:none}.submit-answer-button{background-color:var(--accent);color:var(--bg-primary);cursor:pointer;border:none;border-radius:.75rem;padding:1rem 2rem;font-size:1.125rem;font-weight:600;transition:all .2s}.submit-answer-button:hover{background-color:var(--accent-hover);transform:translateY(-.1rem)}.submit-answer-button:active{transform:translateY(0)}.lesson-save-notice{text-align:center;border:1px solid;border-radius:.75rem;width:min(100%,38rem);margin:0 auto 1rem;padding:1rem}.lesson-save-notice p{margin:0 0 .75rem}.lesson-stats{flex-wrap:wrap;justify-content:center;gap:3rem;margin-top:2rem;display:flex}.lesson-stat{flex-direction:column;align-items:center;gap:.5rem;display:flex}.stat-label{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;font-size:.875rem}.stat-value{color:var(--text-primary);font-size:1.5rem;font-weight:700}.exit-lesson-button{border:1px solid var(--border-color);background-color:var(--bg-secondary);color:var(--text-primary);cursor:pointer;z-index:50;border-radius:.5rem;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;transition:all .2s;position:fixed;top:2rem;left:2rem}.exit-lesson-button:hover{background-color:var(--bg-tertiary);border-color:var(--border-hover)}.course-themed{background:radial-gradient(circle at 82% 0%, color-mix(in srgb, var(--course-accent-primary) 11%, transparent), transparent 30rem), radial-gradient(circle at 6% 100%, color-mix(in srgb, var(--course-accent-secondary) 8%, transparent), transparent 26rem), var(--bg-primary)}.course-themed .selected-language{color:var(--course-accent-primary);border-color:color-mix(in srgb, var(--course-accent-primary) 32%, var(--border-color));background-color:color-mix(in srgb, var(--course-accent-primary) 8%, var(--bg-secondary))}.course-themed .stat-item,.course-themed .test-word{border-color:color-mix(in srgb, var(--course-accent-secondary) 20%, var(--border-color));background-color:color-mix(in srgb, var(--course-accent-secondary) 8%, var(--bg-tertiary))}.course-themed .start-lesson-button,.course-themed .submit-answer-button{background-color:var(--course-accent-primary);color:var(--course-accent-contrast)}.course-themed .start-lesson-button:hover,.course-themed .submit-answer-button:hover{background-color:color-mix(in srgb, var(--course-accent-primary) 82%, #000)}.course-themed .view-all-button{color:var(--course-accent-primary);border-color:color-mix(in srgb, var(--course-accent-primary) 26%, var(--border-color))}.course-themed .view-all-button:hover{background-color:color-mix(in srgb, var(--course-accent-primary) 9%, var(--bg-secondary));border-color:var(--course-accent-primary)}.course-themed .lesson-progress-fill{background-color:var(--course-accent-primary)}.course-themed .lesson-card{background-color:color-mix(in srgb, var(--course-accent-primary) 6%, var(--bg-secondary))}.course-themed .lesson-card:hover{border-color:var(--border-hover)}.course-themed .card-translation,.course-themed .audio-button svg.playing{color:var(--course-accent-primary)}.course-themed .audio-button:hover,.course-themed .matching-option:hover,.course-themed .typing-input:focus{border-color:var(--course-accent-primary)}.course-themed .audio-button:hover,.course-themed .matching-option:hover{background-color:color-mix(in srgb, var(--course-accent-primary) 8%, var(--bg-tertiary))}.lesson-card--feedback{background:linear-gradient(135deg,#fff1f2 0%,#ffe4e6 100%);border-color:#dc2626}.lesson-card--feedback.is-correct{background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-color:#15803d}[data-theme=dark] .lesson-card--feedback{background:linear-gradient(135deg,#3f151b 0%,#581c26 100%)}[data-theme=dark] .lesson-card--feedback.is-correct{background:linear-gradient(135deg,#112f1c 0%,#14532d 100%)}.lesson-feedback-content{gap:.7rem}.lesson-feedback-icon{color:#dc2626;font-size:2.25rem}.lesson-feedback-kicker{color:#b91c1c;letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:1.125rem;font-weight:800}.lesson-feedback-prompt{color:var(--text-secondary);margin:.5rem 0 0}.lesson-feedback-word{color:var(--text-primary);font-size:clamp(2.25rem,6vw,3.5rem);font-weight:800;line-height:1.05}.lesson-feedback-translation{color:#b91c1c;font-size:clamp(1.25rem,3vw,1.75rem);font-weight:750}.lesson-card--feedback.is-correct .lesson-feedback-icon,.lesson-card--feedback.is-correct .lesson-feedback-kicker,.lesson-card--feedback.is-correct .lesson-feedback-translation{color:#15803d}[data-theme=dark] .lesson-card--feedback.is-correct .lesson-feedback-icon,[data-theme=dark] .lesson-card--feedback.is-correct .lesson-feedback-kicker,[data-theme=dark] .lesson-card--feedback.is-correct .lesson-feedback-translation{color:#86efac}.lesson-retry-button{color:#fff;cursor:pointer;min-height:3rem;font:inherit;background:#b91c1c;border:0;border-radius:.75rem;margin-top:1rem;padding:.75rem 2.5rem .75rem 1.25rem;font-weight:800;position:relative}.lesson-retry-button .answer-choice-number{color:color-mix(in srgb, currentColor 52%, transparent)}.lesson-retry-button:hover{background:#991b1b}.lesson-pronunciation-toggle{z-index:60;border:1px solid var(--border-color);background:color-mix(in srgb, var(--bg-primary) 92%, transparent);min-height:2.75rem;color:var(--text-primary);box-shadow:var(--shadow-sm);cursor:pointer;font:inherit;border-radius:999px;align-items:center;gap:.45rem;padding:0 .85rem;font-size:.8rem;font-weight:700;display:inline-flex;position:fixed;bottom:clamp(1rem,3vw,2rem);right:clamp(4.5rem,9vw,6rem)}.lesson-pronunciation-toggle[aria-pressed=false]{color:var(--text-tertiary)}.lesson-pronunciation-toggle:focus-visible,.lesson-retry-button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.course-themed .typing-input:focus{box-shadow:0 0 0 3px color-mix(in srgb, var(--course-accent-primary) 18%, transparent)}.course-themed .exit-lesson-button:hover{border-color:var(--course-accent-primary);background-color:color-mix(in srgb, var(--course-accent-primary) 8%, var(--bg-secondary))}.lesson-language-flag{z-index:50;border:2px solid var(--border-color);background:var(--bg-secondary);width:2.75rem;height:2.75rem;box-shadow:var(--shadow-sm);border-radius:50%;position:fixed;top:2rem;right:2rem;overflow:hidden}.lesson-language-flag img{object-fit:cover;width:100%;height:100%}.course-path-coverage{color:var(--text-muted);margin-top:.75rem;font-size:.8rem;display:block}.regional-special-coverage{color:var(--text-muted);margin-top:.7rem;font-size:.78rem;line-height:1.4;display:block}.kanji-review-page{min-height:100vh;padding:2.75rem 1.5rem}.kanji-review-shell{width:min(100%,44rem);margin:0 auto}.kanji-review-header{align-items:center;gap:1rem;margin:2rem 0;display:flex}.kanji-review-header h1{letter-spacing:-.06em;margin:0;font-size:clamp(2.3rem,7vw,4.25rem)}.kanji-review-header p:last-child{color:var(--text-muted);margin:.35rem 0 0}.kanji-review-workspace{gap:1rem;display:grid}.kanji-review-session-bar{justify-content:space-between;align-items:flex-end;gap:1rem;display:flex}.kanji-review-session-bar .course-kicker{margin:0 0 .3rem}.kanji-review-session-bar strong{color:var(--text-secondary);font-size:.9rem}.kanji-example-heading{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.kanji-example-heading .course-kicker{margin:0}.srs-progress-dots{flex:none;align-items:center;gap:.35rem;display:inline-flex}.srs-progress-dot{border:1px solid color-mix(in srgb, var(--course-accent-primary) 50%, var(--border-color));width:.65rem;height:.65rem;transition:background-color var(--motion-duration-fast) var(--motion-ease-standard), transform var(--motion-duration-fast) var(--motion-ease-standard);background:0 0;border-radius:50%}.srs-progress-dot.is-complete{border-color:var(--course-accent-primary);background:var(--course-accent-primary)}.kanji-review-card-frame{position:relative}.lesson-card--test .card-content{justify-content:flex-start}.lesson-card-progress{justify-content:flex-end;align-self:stretch;margin-bottom:clamp(1rem,3vw,1.75rem)}.kanji-review-skeleton{pointer-events:none}.kanji-skeleton-copy{gap:.55rem;display:grid}.kanji-skeleton-kicker{width:5.5rem;height:.7rem}.kanji-skeleton-recall{width:12.5rem;height:1rem}.kanji-skeleton-dots{border-radius:999px;width:7.25rem;height:.75rem}.kanji-skeleton-reader{border-radius:50%;width:2.5rem;height:2.5rem;position:absolute;top:1rem;right:1rem}.kanji-skeleton-character{width:clamp(7rem,20vw,10rem);height:clamp(7rem,20vw,10rem);margin:0 auto}.kanji-skeleton-prompt{width:min(16rem,74%);height:1rem;margin:0 auto}.kanji-skeleton-actions{justify-content:flex-end;display:flex}.kanji-skeleton-action{width:15rem;height:3rem}.kanji-card-reader{z-index:1;width:2.5rem;height:2.5rem;color:var(--course-accent-primary);background:color-mix(in srgb, var(--course-accent-primary) 7%, var(--bg-secondary));border:1px solid color-mix(in srgb, var(--course-accent-primary) 24%, var(--border-color));cursor:pointer;border-radius:50%;place-items:center;transition:background .18s,border-color .18s,transform .18s;display:grid;position:absolute;top:1rem;right:1rem}.kanji-card-reader:hover,.kanji-card-reader:focus-visible,.kanji-card-reader.is-playing{background:color-mix(in srgb, var(--course-accent-primary) 16%, var(--bg-secondary));border-color:var(--course-accent-primary);transform:scale(1.06)}.kanji-review-card{width:100%;min-height:23rem;color:var(--text-primary);background:var(--bg-secondary);border:1px solid var(--border-color);cursor:pointer;border-radius:1.1rem;place-content:center;gap:1rem;padding:2.5rem;transition:transform .18s,border-color .18s,box-shadow .18s;display:grid;box-shadow:0 1rem 2.5rem #0000000d}.kanji-review-card:hover,.kanji-review-card:focus-visible{border-color:var(--course-accent-primary);transform:translateY(-2px);box-shadow:0 1.25rem 3rem #00000014}.kanji-character{font-size:clamp(7rem,23vw,12rem);line-height:.9;font-family:var(--font-japanese,sans-serif)}.kanji-vocabulary-display{text-align:center;gap:.65rem;max-width:100%;display:grid}.kanji-vocabulary-word{max-width:100%;font-size:clamp(3.25rem,13vw,7rem);line-height:.98;font-family:var(--font-japanese,sans-serif);overflow-wrap:anywhere;display:block}.kanji-vocabulary-reading{color:var(--text-muted);font-size:clamp(1.1rem,3.5vw,1.65rem);font-weight:500;line-height:1.2;font-family:var(--font-japanese,sans-serif);display:block}.kanji-card-prompt,.kanji-card-details{color:var(--text-muted);text-align:center}.kanji-card-details{gap:.4rem;font-size:1rem;display:grid}.kanji-card-details strong{color:var(--text-primary);font-size:1.4rem}.kanji-card-details small{color:var(--course-accent-primary)}.kanji-example-card{background:color-mix(in srgb, var(--course-accent-secondary) 12%, var(--bg-secondary));border:1px solid color-mix(in srgb, var(--course-accent-primary) 26%, var(--border-color));border-radius:.9rem;gap:.35rem;padding:1.25rem 1.4rem;display:grid}.kanji-example-card .course-kicker,.kanji-example-card p{margin:0}.kanji-example-card strong{font-size:1.5rem;font-family:var(--font-japanese,sans-serif)}.kanji-example-card>span,.kanji-example-card>p:last-of-type{color:var(--text-muted)}.kanji-next-button{color:var(--course-accent-contrast);background:var(--course-accent-primary);border:1px solid var(--course-accent-primary);font:inherit;cursor:pointer;border-radius:.6rem;align-items:center;gap:.55rem;padding:.75rem 1rem;font-weight:700;display:inline-flex}.kanji-next-button span{opacity:.8;font-size:.8rem;font-weight:550}.kanji-review-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.75rem;display:flex}.kanji-review-notice{color:var(--text-secondary);border:1px solid color-mix(in srgb, var(--course-accent-primary) 34%, var(--border-color));background:color-mix(in srgb, var(--course-accent-primary) 6%, var(--bg-secondary));border-radius:.6rem;margin:0 0 .85rem;padding:.7rem .85rem;font-size:.9rem}.kanji-review-actions>button{padding-right:2.25rem;position:relative}.kanji-review-actions .answer-choice-number{color:color-mix(in srgb, currentColor 44%, transparent);opacity:.65}.kanji-learning-check{border:1px solid color-mix(in srgb, var(--course-accent-primary) 28%, var(--border-color));background:color-mix(in srgb, var(--course-accent-primary) 5%, var(--bg-secondary));border-radius:.8rem;gap:.85rem;padding:1rem;display:grid}.kanji-learning-check .course-kicker,.kanji-learning-feedback{margin:0}.kanji-learning-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.kanji-learning-option{min-height:3.5rem;color:var(--text-primary);border:1px solid var(--border-color);background:var(--bg-secondary);font:inherit;cursor:pointer;border-radius:.6rem;padding:.65rem .8rem;font-weight:650;position:relative}.answer-choice-number{color:color-mix(in srgb, var(--text-muted) 68%, transparent);pointer-events:none;font-size:.7rem;font-weight:700;line-height:1;position:absolute;top:.45rem;right:.55rem}.kanji-learning-option:hover,.kanji-learning-option:focus-visible{border-color:var(--course-accent-primary);color:var(--course-accent-primary)}.kanji-learning-typing{gap:.65rem;display:flex}.kanji-learning-typing input{min-width:0;min-height:3rem;color:var(--text-primary);border:1px solid var(--border-color);background:var(--bg-secondary);font:inherit;border-radius:.6rem;flex:1;padding:.7rem .85rem}.kanji-learning-question{max-width:26rem;color:var(--text-primary);text-align:center;font-size:clamp(1.65rem,5vw,2.75rem);font-weight:750;line-height:1.1}.kanji-learning-question strong{color:var(--course-accent-primary)}.kanji-learning-feedback{color:var(--text-secondary);line-height:1.45}.kanji-session-complete-actions{flex-wrap:wrap;align-items:center;gap:.65rem;margin-top:.35rem;display:flex}.kanji-relearn-button{min-height:2.75rem;color:var(--text-secondary);border:1px solid var(--border-color);font:inherit;cursor:pointer;background:0 0;border-radius:.6rem;padding:.7rem .85rem;font-weight:650}.kanji-relearn-button:hover:not(:disabled){border-color:var(--course-accent-primary);color:var(--course-accent-primary)}.kanji-next-button:disabled,.kanji-relearn-button:disabled{cursor:wait;opacity:.65}.kanji-coverage-note,.kanji-review-loading,.kanji-review-error{color:var(--text-muted)}.kanji-copyright{z-index:20;position:fixed;bottom:1.25rem;left:1.25rem}.kanji-copyright>button{width:2.25rem;height:2.25rem;color:var(--text-secondary);border:1px solid var(--border-color);background:color-mix(in srgb, var(--bg-primary) 88%, transparent);font:inherit;cursor:help;-webkit-backdrop-filter:blur(.7rem);backdrop-filter:blur(.7rem);border-radius:50%;place-items:center;padding:0;font-size:1.05rem;display:grid}.kanji-copyright>button:hover,.kanji-copyright>button:focus-visible{color:var(--course-accent-primary);border-color:var(--course-accent-primary)}.kanji-copyright-tooltip{width:min(18rem,100vw - 2.5rem);color:var(--text-secondary);border:1px solid var(--border-color);background:var(--bg-secondary);opacity:0;pointer-events:none;transition:opacity var(--motion-duration-fast) var(--motion-ease-standard), transform var(--motion-duration-fast) var(--motion-ease-standard), visibility var(--motion-duration-fast) var(--motion-ease-standard);visibility:hidden;border-radius:.6rem;gap:.4rem;padding:.9rem 1rem;font-size:.75rem;line-height:1.45;display:grid;position:absolute;bottom:calc(100% + .65rem);left:0;transform:translateY(.35rem);box-shadow:0 .8rem 2rem #0000001f}.kanji-copyright-tooltip strong{color:var(--text-primary);font-size:.8rem}.kanji-copyright:hover .kanji-copyright-tooltip,.kanji-copyright:focus-within .kanji-copyright-tooltip{opacity:1;visibility:visible;transform:translateY(0)}.kanji-review-empty{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:.8rem;gap:.75rem;padding:clamp(1.5rem,5vw,2.5rem);display:grid}.kanji-review-empty .course-kicker,.kanji-review-empty h2,.kanji-review-empty p:last-child{margin:0}.kanji-review-empty p:last-child{max-width:36rem;color:var(--text-secondary);line-height:1.55}@media (max-width:520px){.kanji-review-page{padding:1.25rem 1rem 2rem}.kanji-review-header{margin:1.5rem 0}.kanji-review-card{min-height:19rem;padding:1.5rem}.kanji-review-session-bar{flex-direction:column;align-items:flex-start}.kanji-review-actions{flex-direction:column-reverse;align-items:stretch}.kanji-learning-typing,.kanji-session-complete-actions{flex-direction:column;align-items:stretch}.kanji-next-button,.kanji-relearn-button{justify-content:center;width:100%}.kanji-copyright{bottom:.9rem;left:.9rem}}.dashboard-shell{width:min(100%,76rem);margin:0 auto}.course-development-note{color:var(--text-secondary);margin:0 0 1.5rem;font-size:.875rem;line-height:1.6}.word-recording{text-align:left;margin-top:1.5rem}.word-recording summary{cursor:pointer}.word-recording p{margin-block:.75rem;line-height:1.5}.word-recording audio{width:100%;max-width:100%;margin-block:1rem;display:block}.dashboard-page .back-button{box-shadow:none;background:0 0;border-color:#0000;align-self:flex-start;margin-left:-.75rem;padding-inline:.75rem}.dashboard-page .back-button:hover{background:color-mix(in srgb, var(--text-primary) 7%, transparent);border-color:#0000}.dashboard-page .back-button:focus-visible{outline:2px solid var(--course-accent-primary);outline-offset:2px}.language-dashboard-identity{align-items:center;gap:clamp(1rem,3vw,1.5rem);display:flex}.language-dashboard-flag{border:2px solid var(--border-color);background:var(--bg-secondary);width:clamp(3.5rem,8vw,5rem);height:clamp(3.5rem,8vw,5rem);box-shadow:var(--shadow-sm);border-radius:50%;flex:none;overflow:hidden}.language-dashboard-flag img{object-fit:cover;width:100%;height:100%}.course-kicker{color:var(--text-tertiary);letter-spacing:.1em;text-transform:uppercase;margin-bottom:.3rem;font-size:.72rem;font-weight:700}.course-native-name{color:var(--course-accent-primary);margin-top:.3rem;font-size:clamp(1rem,2vw,1.2rem);font-weight:600}.section-supporting-copy{max-width:42rem;color:var(--text-secondary);margin-top:-.75rem;margin-bottom:1.5rem;line-height:1.55}.course-paths-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.course-path-card{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:.85rem;flex-direction:column;align-items:flex-start;min-height:13rem;padding:1.5rem;display:flex}.course-path-card h3{letter-spacing:-.01em;font-size:1.2rem}.course-path-card p{color:var(--text-secondary);margin-top:.6rem;line-height:1.55}.course-path-button,.course-path-status{margin-top:auto;padding-top:1.25rem;font-size:.875rem;font-weight:700}.course-path-button{color:var(--course-accent-primary)}.course-path-button:hover:not(:disabled){color:color-mix(in srgb, var(--course-accent-primary) 78%, #000);text-underline-offset:.25rem;text-decoration:underline}.course-path-button:disabled{cursor:not-allowed;color:var(--text-tertiary)}.course-path-status{color:var(--text-tertiary)}.course-timeline-tool{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:.85rem;padding:clamp(1.25rem,3vw,2rem)}.course-timeline-current{gap:.35rem;display:grid}.course-timeline-current span{color:var(--course-accent-primary);letter-spacing:.06em;text-transform:uppercase;font-size:.8rem;font-weight:700}.course-timeline-current strong{letter-spacing:-.02em;font-size:clamp(1.25rem,3vw,1.75rem)}.course-timeline-current p{max-width:42rem;color:var(--text-secondary);line-height:1.55}.course-timeline-slider{width:100%;accent-color:var(--course-accent-primary);margin:1.75rem 0 .7rem}.course-timeline-labels{color:var(--text-tertiary);justify-content:space-between;gap:.75rem;font-size:.75rem;display:flex}.course-timeline-labels span{flex:1}.course-timeline-labels span:nth-child(2){text-align:center}.course-timeline-labels span:last-child{text-align:right}.course-timeline-labels .is-active{color:var(--course-accent-primary);font-weight:700}.course-signature{border-top:2px solid var(--course-accent-primary);border-bottom:1px solid var(--border-color);background:color-mix(in srgb, var(--course-accent-primary) 4%, var(--bg-secondary));grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(1.5rem,4vw,4rem);padding:clamp(1.5rem,4vw,3rem);display:grid}.course-signature-heading{align-content:start;gap:.85rem;display:grid}.course-signature-heading>p,.course-signature-heading h2,.course-signature-heading>span,.course-signature-note{margin:0}.course-signature-heading>p,.course-signature-focus>div:last-child>p{color:var(--course-accent-primary);letter-spacing:.1em;text-transform:uppercase;font-size:.72rem;font-weight:750}.course-signature-heading h2{letter-spacing:-.035em;max-width:24ch;font-size:clamp(1.55rem,3.5vw,2.35rem);line-height:1.04}.course-signature-heading>span,.course-signature-focus>div:last-child>span,.course-signature-note{color:var(--text-secondary);line-height:1.55}.course-signature-workspace{gap:1.25rem;display:grid}.course-signature-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;display:grid}.course-signature-steps button{min-height:4.5rem;color:var(--text-secondary);text-align:left;border:1px solid var(--border-color);font:inherit;cursor:pointer;transition:color var(--motion-duration-fast) var(--motion-ease-standard), border-color var(--motion-duration-fast) var(--motion-ease-standard), background-color var(--motion-duration-fast) var(--motion-ease-standard);background:0 0;border-radius:.45rem;gap:.3rem;padding:.75rem;display:grid}.course-signature-steps button span{color:var(--text-tertiary);letter-spacing:.08em;font-size:.7rem;font-weight:750}.course-signature-steps button strong{font-size:.82rem;line-height:1.2}.course-signature-steps button:hover,.course-signature-steps button.is-active{color:var(--text-primary);border-color:var(--course-accent-primary);background:color-mix(in srgb, var(--course-accent-primary) 9%, var(--bg-secondary))}.course-signature-steps button:focus-visible{outline:3px solid color-mix(in srgb, var(--course-accent-secondary) 55%, #fff);outline-offset:3px}.course-signature-focus{border:1px solid var(--border-color);background:var(--bg-secondary);grid-template-columns:minmax(7rem,.7fr) minmax(0,1fr);align-items:stretch;min-height:12rem;display:grid;overflow:hidden}.course-signature-signal{color:var(--course-accent-primary);background:color-mix(in srgb, var(--course-accent-primary) 8%, var(--bg-secondary));letter-spacing:-.04em;text-align:center;place-items:center;padding:1.25rem;font-size:clamp(1.2rem,3vw,2rem);font-weight:780;display:grid}.course-signature-focus>div:last-child{align-content:center;gap:.5rem;padding:clamp(1.25rem,3vw,2rem);display:grid}.course-signature-focus h3,.course-signature-focus p,.course-signature-focus span{margin:0}.course-signature-focus h3{letter-spacing:-.025em;font-size:clamp(1.2rem,2.5vw,1.6rem)}.course-signature-note{grid-column:2;max-width:62rem;padding-top:.25rem;font-size:.82rem}.course-signature--conversation .course-signature-focus{grid-template-columns:minmax(8.5rem,.75fr) minmax(0,1fr)}.course-signature--conversation .course-signature-signal{color:var(--course-accent-contrast);background:var(--course-accent-primary)}.course-signature--sound .course-signature-focus{grid-template-columns:1fr;min-height:13.5rem}.course-signature--sound .course-signature-signal{min-height:5.25rem;color:var(--course-accent-primary);background:repeating-linear-gradient(90deg, transparent 0 .7rem, color-mix(in srgb, var(--course-accent-primary) 28%, transparent) .7rem .9rem, transparent .9rem 1.45rem), color-mix(in srgb, var(--course-accent-primary) 7%, var(--bg-secondary));align-content:end;position:relative}.course-signature--structure .course-signature-focus{grid-template-columns:repeat(2,minmax(0,1fr))}.course-signature--structure .course-signature-signal{color:var(--course-accent-contrast);background:var(--course-accent-primary)}.course-signature--roots .course-signature-focus{grid-template-columns:minmax(9rem,.8fr) minmax(0,1fr)}.course-signature--roots .course-signature-signal{border:1.5rem solid color-mix(in srgb, var(--course-accent-primary) 14%, var(--bg-secondary));background:var(--bg-secondary)}.course-signature--script .course-signature-focus{border-color:#1c1c1c;grid-template-columns:repeat(2,minmax(0,1fr))}.course-signature--script .course-signature-signal{color:#fff;background:#1c1c1c}.course-signature--history .course-signature-focus{grid-template-columns:minmax(8rem,.75fr) minmax(0,1fr)}.course-signature--history .course-signature-signal{color:var(--course-accent-contrast);background:var(--course-accent-primary);font-family:Georgia,Times New Roman,serif}@media (max-width:768px){.dashboard-page{padding:1.5rem 1rem 7rem}.dashboard-header{gap:1.25rem;margin-bottom:2rem}.course-paths-grid{grid-template-columns:1fr}.course-path-card{min-height:11rem}.section-supporting-copy{margin-bottom:1.25rem}.course-signature{grid-template-columns:1fr;gap:1.5rem}.course-signature-note{grid-column:auto}}@media (max-width:480px){.language-dashboard-identity{align-items:flex-start}.language-dashboard-flag{width:3.25rem;height:3.25rem}.course-timeline-labels{font-size:.66rem}.lesson-language-flag{width:2.4rem;height:2.4rem;top:1rem;right:1rem}.course-signature{padding:1.25rem}.course-signature-steps{grid-template-columns:1fr}.course-signature-steps button{grid-template-columns:2rem 1fr;align-items:center;min-height:3.5rem}.course-signature-focus,.course-signature--conversation .course-signature-focus,.course-signature--structure .course-signature-focus,.course-signature--roots .course-signature-focus,.course-signature--script .course-signature-focus,.course-signature--history .course-signature-focus{grid-template-columns:1fr}.course-signature-signal{min-height:5rem}}@media (max-width:768px){.lesson-page{padding:3vh 4vw 8rem}.lesson-card-container{max-width:100%}.lesson-card{min-height:20rem}.card-content{padding:2rem}.lesson-stats{gap:2rem}.exit-lesson-button{padding:.625rem 1.25rem;font-size:.875rem;top:1rem;left:1rem}}@media (max-width:480px){.lesson-page{padding:2vh 3vw 8rem}.lesson-card{min-height:18rem}.card-content{padding:1.5rem}.matching-option{padding:1rem 1.5rem;font-size:1rem}.typing-input{padding:1rem 1.25rem;font-size:1rem}.submit-answer-button{padding:.875rem 1.5rem;font-size:1rem}.lesson-stats{flex-direction:row;gap:1.5rem}}.lesson-progress-bar{top:var(--safe-top);left:var(--safe-left);width:calc(100% - var(--safe-left) - var(--safe-right))}.review-submitted-answer{max-width:100%;color:var(--text-primary);overflow-wrap:anywhere;gap:.25rem;display:grid}.review-submitted-answer span{color:var(--text-secondary);font-size:.8rem}.review-submitted-answer strong{font-size:1.15rem}.review-report-link{min-height:44px;color:var(--text-secondary);font:inherit;cursor:pointer;background:0 0;border:0;padding:.5rem;font-size:.75rem;position:absolute;bottom:.5rem;left:1rem}.review-report-link:hover{color:var(--text-primary);text-decoration:underline}.review-report-link:focus-visible{outline:2px solid var(--course-accent-primary);outline-offset:2px;border-radius:.4rem}.review-report-dialog{width:min(30rem, calc(100vw - 2rem - var(--safe-left) - var(--safe-right)));max-height:calc(100dvh - 2rem - var(--safe-top) - var(--safe-bottom));border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-primary);box-shadow:var(--shadow-lg);text-align:left;border-radius:1rem;margin:auto;padding:1.5rem;position:fixed;inset:0;overflow-y:auto}.review-report-dialog[open]{animation:.16s ease-out review-report-enter}.review-report-dialog::backdrop{background:#00000073}.review-report-dialog h2{margin:0 0 1rem;font-size:1.4rem}.review-report-dialog p{overflow-wrap:anywhere;margin:0 0 1rem}.review-report-dialog label{margin:1rem 0 .4rem;font-size:.85rem;display:block}.review-report-dialog select,.review-report-dialog textarea{border:1px solid var(--border-color);background:var(--bg-secondary);width:100%;color:var(--text-primary);font:inherit;border-radius:.5rem;padding:.75rem;font-size:1rem;display:block}.review-report-dialog textarea{resize:vertical}.review-report-dialog .review-report-hint{color:var(--text-secondary);margin-top:.75rem;font-size:.75rem}.review-report-actions{flex-wrap:wrap;justify-content:flex-end;gap:.75rem;display:flex}.review-report-error{color:#dc2626}@keyframes review-report-enter{0%{opacity:0;transform:translateY(.5rem)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.review-report-dialog[open]{animation:none}}.exit-lesson-button{top:calc(clamp(1rem, 3vw, 2rem) + var(--safe-top));left:calc(clamp(1rem, 3vw, 2rem) + var(--safe-left))}.lesson-language-flag{top:calc(clamp(1rem, 3vw, 2rem) + var(--safe-top));right:calc(clamp(1rem, 3vw, 2rem) + var(--safe-right))}.lesson-pronunciation-toggle{right:calc(clamp(1rem, 3vw, 2rem) + 7rem + var(--safe-right));bottom:calc(clamp(1rem, 3vw, 2rem) + var(--safe-bottom));min-height:3rem}.kanji-copyright{bottom:calc(1rem + var(--safe-bottom));left:calc(1rem + var(--safe-left))}@media (max-width:380px){.lesson-pronunciation-toggle{right:calc(1rem + var(--safe-right));bottom:calc(4.5rem + var(--safe-bottom))}}.devlog-range{color:var(--text-secondary);margin-top:2rem;font-size:.875rem}.devlog-pagination{justify-content:space-between;align-items:center;gap:.75rem;margin-block:1rem 2rem;font-size:.875rem;display:flex}.devlog-pagination a,.devlog-pagination>span{align-items:center;min-height:44px;display:inline-flex}.devlog-pagination a{text-underline-offset:.25em}.devlog-pagination a:hover{text-decoration:underline}.devlog-pagination a:focus-visible{outline-offset:4px;outline:2px solid}.devlog-pagination [aria-disabled]{color:var(--text-tertiary)}.devlog-page{padding-bottom:calc(6rem + var(--safe-bottom))}.devlog-skeleton-header{margin-top:2rem}.devlog-skeleton-avatar{width:2rem;height:2rem}.marketing-footer{background:linear-gradient(to top, var(--bg-primary) 0%, color-mix(in srgb, var(--bg-primary) 94%, transparent) 40%, transparent 100%);pointer-events:none;padding-top:2rem}.marketing-footer.is-visible{pointer-events:none}.marketing-footer.is-visible .copyright-devlog{pointer-events:auto}.sound-effects-switch{border:1px solid var(--border-color);background:color-mix(in srgb, var(--bg-primary) 94%, transparent);min-height:3rem;color:var(--text-primary);white-space:nowrap;box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(.75rem);backdrop-filter:blur(.75rem);transition:background-color var(--motion-duration-fast), border-color var(--motion-duration-fast);border-radius:.75rem;justify-content:center;align-items:center;gap:.5rem;padding:0 .75rem;font-size:.75rem;display:inline-flex}.sound-effects-switch:hover{border-color:var(--border-hover);background:var(--bg-secondary)}.sound-effects-switch:focus-visible{outline:2px solid var(--text-primary);outline-offset:3px}.sound-effects-track{background:var(--text-tertiary);width:2rem;height:1.125rem;transition:background-color var(--motion-duration-fast);border-radius:1rem;align-items:center;padding:.1875rem;display:inline-flex}.sound-effects-track>span{background:var(--bg-primary);width:.75rem;height:.75rem;transition:transform var(--motion-duration-fast);border-radius:50%;transform:translate(0)}.sound-effects-switch[aria-checked=true] .sound-effects-track{background:var(--text-primary)}.sound-effects-switch[aria-checked=true] .sound-effects-track>span{transform:translate(.875rem)}.sound-effects-state{min-width:1.25rem}.sound-effects-mobile-label{display:none}.review-audio-button:disabled{cursor:default}.lesson-pronunciation-toggle{right:calc(clamp(1rem, 3vw, 2rem) + 17rem + var(--safe-right))}@media (max-width:600px){body:has(.marketing-footer.is-visible) .preference-controls{bottom:calc(1.375rem + var(--safe-bottom))}.preference-controls{right:calc(.75rem + var(--safe-right))}.preference-controls .theme-control-presence.is-visible{width:2.75rem;margin-right:.375rem}.preference-controls .theme-toggle{width:2.75rem;height:2.75rem;min-height:2.75rem;padding:.75rem;font-size:1rem}.sound-effects-switch{border-radius:.625rem;gap:.375rem;min-height:2.75rem;padding:0 .625rem;font-size:.6875rem}.sound-effects-label,.sound-effects-track{display:none}.sound-effects-mobile-label{display:inline}.marketing-footer{align-items:center;min-height:5.5rem;padding-top:0;display:flex}.marketing-footer .copyright{width:calc(100% - 10.25rem);max-width:none;padding:.5rem .75rem;font-size:.625rem;line-height:1.4}.lesson-pronunciation-toggle{right:calc(1rem + var(--safe-right));bottom:calc(4.5rem + var(--safe-bottom))}}.reviewed-practice-answer{color:var(--text-primary);overflow-wrap:anywhere;margin:1.25rem 0;font-size:clamp(1.5rem,4vw,2.25rem);line-height:1.3;display:block}.vocabulary-review-card.reviewed-practice-card .review-card-kicker{color:var(--text-secondary)}.reviewed-audio{width:100%;max-width:28rem;margin:1rem auto}.reviewed-audio audio{width:100%;display:block}.reviewed-audio-speed{flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;margin-top:.5rem;display:flex}.reviewed-audio-speed button[aria-pressed=true]{outline-offset:2px;outline:2px solid}.word-pronunciation{width:100%;min-width:0}
