:root{--background: #fcfaff;--surface: rgba(255, 255, 255, .92);--surface-alt: #f7f1fb;--surface-soft: #f2e8fb;--border: #e8dcf5;--border-strong: #d6bceb;--text: #22112e;--muted: #725f81;--body: #5f4d6e;--primary: #820ad1;--primary-dark: #4c0677;--primary-soft: #efe0fb;--highlight: #f6ecff;--shadow-sm: 0 18px 40px rgba(91, 27, 125, .09);--shadow-lg: 0 24px 64px rgba(76, 6, 119, .16);--radius-banner: 1.25rem;--reliability-good: #1f9d57;--reliability-warn: #c8860d;--reliability-bad: #d1334b;--tier-free: #0f7a4c;--tier-learner: var(--primary);--tier-master: var(--primary-dark);--tier-reviewed: #b3a3c4;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--text-xs: clamp(.7rem, 1.5vw, .75rem);--text-sm: clamp(.8rem, 1.8vw, .875rem);--text-base: clamp(.9rem, 2vw, 1rem);--text-md: clamp(1rem, 2.2vw, 1.125rem);--text-lg: clamp(1.1rem, 2.5vw, 1.25rem);--text-xl: clamp(1.25rem, 3vw, 1.5rem);--text-2xl: clamp(1.5rem, 4vw, 2rem);--text-3xl: clamp(1.75rem, 5vw, 2.5rem);--text-hero: clamp(2rem, 6vw, 4.75rem);font-family:Nunito Sans,Segoe UI,sans-serif;font-size:var(--text-base);color:var(--body);background:radial-gradient(circle at top left,rgba(130,10,209,.08),transparent 28%),radial-gradient(circle at top right,rgba(159,59,218,.1),transparent 22%),linear-gradient(180deg,#ffffff 0%,var(--background) 38%,#ffffff 100%)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;overflow-x:hidden}body,button,input,textarea,select{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}button,[role=button],a:not(.lesson-card-title-link):not(.brand-mark):not(.nav-pill){min-height:44px}.pill-tag,.outline-tag,.lesson-meta-pill,.asset-dot,.generating-shimmer-tag,.ghost-badge,.sparkline-label,.lang-chart-label,.wave-label{min-height:unset}.section-shell{width:100%;max-width:1160px;margin-inline:auto;padding-inline:var(--space-4)}@media(min-width:640px){.section-shell{padding-inline:var(--space-6)}}@media(min-width:1024px){.section-shell{padding-inline:var(--space-8)}}.surface-card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.app-shell{min-height:100vh;padding-block-end:var(--space-12)}.site-header{position:sticky;top:0;z-index:100;background:#fcfaffe0;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);padding-block:max(var(--space-5),env(safe-area-inset-top,var(--space-5)));padding-inline:max(var(--space-4),env(safe-area-inset-left,0px))}.brand-mark{display:inline-flex;align-items:center;gap:.55rem;text-decoration:none;min-height:unset}.brand-mark-badge{width:36px;height:36px;border-radius:50%;background:var(--primary-dark);box-shadow:0 2px 10px #4c067773;display:flex;align-items:center;justify-content:center;flex-shrink:0}.brand-mark-wordmark{font-size:var(--text-md);font-weight:900;letter-spacing:-.01em;line-height:1;color:var(--text)}.brand-mark-wordmark span{color:var(--primary)}.site-nav{display:flex;gap:var(--space-3);flex-wrap:wrap}.nav-pill{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 var(--space-5);border-radius:999px;border:1px solid transparent;color:var(--text);font-size:var(--text-sm);transition:transform .18s ease,background .18s ease;white-space:nowrap}.nav-pill:hover{transform:translateY(-1px);background:#ffffffb3}.nav-user{display:inline-flex;align-items:center;min-height:44px;padding:0 var(--space-4);color:var(--muted);font-weight:700}.nav-pill-primary{background:var(--primary-soft);border-color:#820ad14d;color:var(--primary)}@media(max-width:640px){.site-header{flex-direction:column;align-items:flex-start;gap:var(--space-2);padding-block:var(--space-3)}.site-nav{width:100%;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;padding-bottom:var(--space-1)}.site-nav::-webkit-scrollbar{display:none}.nav-pill{flex-shrink:0}}.dashboard-page{padding-top:var(--space-4)}.hero,.panel,.auth-panel,.lesson-card,.lesson-form-panel,.detail-hero,.content-block{border-radius:2rem}.hero{display:grid;grid-template-columns:1.7fr .9fr;gap:var(--space-8);padding:var(--space-8)}.hero-actions{display:grid;align-content:center;gap:var(--space-3)}.dashboard-grid{display:grid;grid-template-columns:minmax(280px,340px) minmax(0,1fr);gap:var(--space-6);margin-top:var(--space-6)}.panel{padding:var(--space-6)}.lesson-grid{display:grid;grid-template-columns:1fr;gap:var(--space-4)}@media(min-width:900px){.lesson-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.lesson-card{padding:var(--space-4);border-radius:1.25rem;display:grid;gap:var(--space-3)}@media(min-width:768px){.lesson-card{padding:var(--space-5);border-radius:2rem}}.lesson-card-link{display:block}.lesson-card h3,.panel h2,.hero h1,.auth-panel h1,.lesson-form-panel h1,.detail-hero h1,.content-block h2{color:var(--text);margin:0}.hero h1{font-size:var(--text-hero);line-height:1.02}.lead{color:var(--muted);line-height:1.7;font-size:var(--text-md)}.eyebrow{margin:0 0 .6rem;font-size:var(--text-xs);font-weight:900;letter-spacing:.28em;text-transform:uppercase;color:var(--primary)}.pill-tag{display:inline-flex;align-items:center;width:fit-content;margin-bottom:.9rem;padding:.45rem .75rem;border-radius:999px;background:var(--primary-soft);color:var(--primary);font-size:var(--text-sm);font-weight:800}.primary-button,.secondary-button{display:inline-flex;align-items:center;justify-content:center;min-height:3.2rem;border-radius:999px;border:1px solid transparent;padding:0 var(--space-5);font-weight:800}.primary-button{background:linear-gradient(135deg,var(--primary),#a53ce2);color:#fff;box-shadow:var(--shadow-sm)}.secondary-button{background:#fff;color:var(--text);border-color:var(--border)}.danger-button{display:inline-flex;align-items:center;justify-content:center;min-height:3.2rem;border-radius:999px;border:1px solid transparent;padding:0 var(--space-5);font-weight:800;background:#b42318;color:#fff}.danger-button:disabled{opacity:.6}.danger-zone{border:1px solid #fca5a5;background:#fef2f2;border-radius:2rem;overflow:hidden}.danger-zone-summary{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-4) var(--space-6);font-size:var(--text-sm);font-weight:700;color:#b42318;cursor:pointer;-webkit-user-select:none;user-select:none;background:none;border:none;width:100%;text-align:left;transition:background .15s}.danger-zone-summary:hover{background:#b423180d}.danger-zone-summary-chevron{margin-left:auto;color:#b42318;opacity:.6;transition:transform .2s}.danger-zone-summary-chevron--open{transform:rotate(180deg)}.danger-zone-body{padding:0 var(--space-6) var(--space-6);border-top:1px solid #fca5a5;display:grid;gap:var(--space-4)}.danger-zone-description{font-size:var(--text-sm);color:#b42318;opacity:.85;margin-top:var(--space-4)}.danger-zone-confirm-box{background:#fff;border:1px solid #fca5a5;border-radius:1rem;padding:var(--space-4) var(--space-5);display:grid;gap:var(--space-4)}.danger-zone-confirm-question{font-size:var(--text-sm);font-weight:700;color:var(--text)}.danger-zone-actions{display:flex;gap:var(--space-3);flex-wrap:wrap}.danger-ghost-button{display:inline-flex;align-items:center;justify-content:center;min-height:3.2rem;border-radius:999px;border:1.5px solid #fca5a5;padding:0 var(--space-5);font-weight:700;font-size:var(--text-sm);background:transparent;color:#b42318;transition:background .15s}.danger-ghost-button:hover{background:#b4231814}@media(max-width:640px){.danger-zone-summary{padding:var(--space-3) var(--space-4)}.danger-zone-body{padding:0 var(--space-4) var(--space-4)}}.confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#22112e80;display:grid;place-items:center;z-index:100;padding:max(var(--space-4),env(safe-area-inset-top,var(--space-4))) max(var(--space-4),env(safe-area-inset-right,var(--space-4))) max(var(--space-4),env(safe-area-inset-bottom,var(--space-4))) max(var(--space-4),env(safe-area-inset-left,var(--space-4)))}.confirm-dialog{width:min(480px,100%);padding:var(--space-8);border-radius:2rem;display:grid;gap:var(--space-4)}.button-link{width:100%}.check-list{display:grid;gap:.8rem;padding-left:var(--space-5);margin:var(--space-5) 0 0}.auth-page{display:grid;place-items:center;min-height:100vh;padding:max(var(--space-4),env(safe-area-inset-top,var(--space-4))) max(var(--space-4),env(safe-area-inset-right,var(--space-4))) max(var(--space-4),env(safe-area-inset-bottom,var(--space-4))) max(var(--space-4),env(safe-area-inset-left,var(--space-4)))}.auth-brand-mark{display:flex;flex-direction:column;align-items:center;gap:.6rem}.brand-mark-badge--lg{width:64px;height:64px}.auth-brand-wordmark{font-size:var(--text-xl);font-weight:900;letter-spacing:-.01em;line-height:1;color:var(--text)}.auth-brand-wordmark span{color:var(--primary)}.auth-panel{width:min(460px,100%);padding:var(--space-8);display:grid;gap:1.4rem}@media(max-width:400px){.auth-panel{padding:var(--space-5)}}.auth-form{display:grid;gap:var(--space-4)}.auth-form label{display:grid;gap:.45rem;color:var(--text);font-weight:700}.auth-form input{border-radius:1rem;border:1px solid var(--border);min-height:3.25rem;padding:0 var(--space-4);background:#fff}@media(max-width:640px){.auth-form input,.form-input,.dashboard-search,.lesson-form input,.lesson-form textarea,.lesson-form select{font-size:16px}}.switch-copy{margin:0;color:var(--muted)}.switch-copy a{color:var(--primary);text-decoration:underline;font-weight:600}.form-error{margin:0;color:#b42318;font-weight:700}.form-success{margin:0;color:#166534;font-weight:700;font-size:var(--text-sm)}.composer-layout,.detail-page{display:grid;gap:var(--space-6)}.composer-layout{grid-template-columns:minmax(0,1.45fr) minmax(280px,360px)}.panel-stack{display:grid;gap:var(--space-4);align-content:start}.lesson-form-panel,.detail-hero,.content-block{padding:1.75rem}.lesson-form{display:grid;gap:var(--space-4)}.lesson-form label{display:grid;gap:.45rem;color:var(--text);font-weight:700}.lesson-form input,.lesson-form textarea,.lesson-form select,.title-form input{border-radius:1rem;border:1px solid var(--border);min-height:3.25rem;padding:.9rem var(--space-4);background:#fff;resize:vertical}.lesson-form select{-webkit-appearance:none;-moz-appearance:none;appearance:none}.mode-toggle{display:inline-grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem;padding:.35rem;border-radius:1.25rem;background:var(--surface-soft);border:1px solid var(--border);width:100%}.mode-toggle-button{min-height:2.8rem;border:1px solid transparent;border-radius:1rem;background:transparent;color:var(--muted);font-weight:800}.mode-toggle-button.is-active{background:#fff;color:var(--text);border-color:var(--border);box-shadow:var(--shadow-sm)}.option-group-label{font-size:var(--text-sm);font-weight:800;color:var(--text);margin-bottom:.6rem}.option-cards{display:grid;grid-template-columns:1fr 1fr 1fr;gap:.65rem}.option-card{position:relative;display:flex;flex-direction:column;gap:.3rem;padding:.9rem .9rem .9rem 2.6rem;border:2px solid var(--border);border-radius:12px;background:#fff;cursor:pointer;text-align:left;font-family:inherit;transition:border-color .15s,background .15s,box-shadow .15s}.option-card:hover{border-color:var(--border-strong);box-shadow:0 4px 14px #820ad112}.option-card.is-selected{border-color:var(--primary);background:var(--highlight);box-shadow:0 0 0 3px #820ad114}.option-card:before{content:"";position:absolute;left:.9rem;top:1rem;width:1rem;height:1rem;border-radius:50%;border:2px solid var(--border-strong);background:#fff;transition:border-color .15s,background .15s}.option-card.is-selected:before{border-color:var(--primary);background:var(--primary);box-shadow:inset 0 0 0 2px #fff}.option-card--checkbox:before{border-radius:4px;box-shadow:none}.option-card--checkbox.is-selected:before{border-color:var(--primary);background:var(--primary);box-shadow:none}.option-card--checkbox.is-selected:after{content:"✓";position:absolute;left:.9rem;top:.975rem;width:1rem;height:1rem;font-size:.65rem;font-weight:900;color:#fff;display:flex;align-items:center;justify-content:center;line-height:1}.option-card--full{grid-column:1 / -1}.option-card-title{font-size:var(--text-sm);font-weight:800;color:var(--text);line-height:1.3}.option-card.is-selected .option-card-title{color:var(--primary-dark)}.option-card-desc{font-size:var(--text-sm);color:var(--muted);line-height:1.55;font-weight:400}@media(max-width:600px){.option-cards{grid-template-columns:1fr}}.context-ready{display:flex;align-items:center;gap:.6rem;padding:.85rem 1rem;background:#f9f5ff;border:1px solid var(--border);border-radius:10px;font-size:.82rem;color:var(--text-secondary);font-weight:700}.context-ready-icon{font-size:1.2rem;flex-shrink:0}.nudge{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.6rem;padding:1.5rem 1.25rem;border:2px dashed var(--border-strong);border-radius:12px;background:#fdfaff}.nudge-title{font-size:.82rem;font-weight:800;color:var(--text-primary)}.nudge-desc{font-size:.75rem;color:var(--text-secondary);line-height:1.6;max-width:300px}.nudge-cta{display:inline-block;margin-top:.25rem;padding:.55rem 1.25rem;border-radius:8px;background:var(--primary);color:#fff;font-weight:800;font-size:.75rem;border:none;cursor:pointer;font-family:inherit}.nudge-cta:hover{background:var(--primary-dark)}.lesson-form-grid,.detail-grid{display:grid;gap:var(--space-4)}.lesson-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.field-hint,.content-copy{margin:0;color:var(--muted);line-height:1.7}.detail-hero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(240px,320px);gap:var(--space-6)}.detail-grid{grid-template-columns:minmax(0,1.5fr) minmax(280px,340px)}.meta-list{display:grid;gap:.9rem;margin:0}.meta-list div{display:grid;gap:.2rem}.meta-list dt{font-size:var(--text-sm);font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.meta-list dd{margin:0;color:var(--text);font-weight:700}.empty-state{display:grid;gap:var(--space-3);align-content:start}.title-editor{max-width:460px}.transcript-panel{display:grid;gap:1.25rem;padding:1.75rem;border-radius:2rem}.transcript-header{display:flex;justify-content:space-between;gap:var(--space-4);align-items:flex-start}.transcript-body,.transcript-empty{display:grid;gap:var(--space-4)}.transcript-block{padding:1.1rem;border-radius:1.4rem;background:var(--highlight);border:1px solid var(--border)}.preserve-lines{white-space:pre-wrap}.script-inspector{border:1px solid var(--border);border-radius:1.25rem;background:#fff;padding:var(--space-4);overflow:hidden}.script-inspector summary{cursor:pointer;font-weight:800;color:var(--text)}.script-inspector pre{margin:var(--space-4) 0 0;white-space:pre-wrap;word-break:break-all;overflow-wrap:break-word;color:var(--body);font-family:Consolas,Courier New,monospace;font-size:var(--text-sm)}.lesson-audio-player{width:100%}.lesson-meta-pills{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.9rem}.lesson-meta-pill{display:inline-flex;align-items:center;padding:.3rem .75rem;border-radius:999px;font-size:var(--text-sm);font-weight:800;border:1px solid var(--border)}.lesson-meta-pill--lang{background:var(--primary-soft);color:var(--primary);border-color:#820ad140}.lesson-meta-pill--level{background:#fff;color:var(--text)}.lesson-meta-pill--personalised{background:#e6f6ef;color:#0f7a4c;border-color:#0f7a4c40}.hero-media-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);margin-top:1.25rem}.hero-audio-player{flex:1 1 240px;min-width:0}.hero-audio-player .lesson-audio-player{max-width:480px}.audio-player-row{display:flex;align-items:center;gap:var(--space-2)}.audio-player-row .lesson-audio-player{flex:1 1 0;min-width:0}.loop-chip{flex-shrink:0;display:inline-flex;align-items:center;height:32px;width:32px;min-height:unset;border:1.5px solid var(--border-strong);border-radius:999px;overflow:hidden;cursor:pointer;background:none;padding:0;transition:border-color .15s,width .15s;-webkit-user-select:none;user-select:none;font-family:inherit}.loop-chip:hover{border-color:var(--primary)}.loop-chip:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.loop-chip-icon{width:30px;height:100%;display:flex;align-items:center;justify-content:center;font-size:1rem;color:var(--muted);transition:background .15s,color .15s}.loop-chip-count{display:none;font-size:var(--text-xs);font-weight:900;color:var(--primary);padding:0 .6rem 0 0;white-space:nowrap}.loop-chip.loop-chip--active{border-color:var(--primary);width:auto}.loop-chip.loop-chip--active .loop-chip-icon{background:var(--primary);color:#fff}.loop-chip.loop-chip--active .loop-chip-count{display:block}@keyframes loop-chip-pulse{0%{transform:scale(1)}40%{transform:scale(1.18)}to{transform:scale(1)}}.loop-chip.loop-chip--pulse{animation:loop-chip-pulse .28s ease-out}.audio-loop-hint{font-size:var(--text-xs);font-weight:800;color:var(--muted);margin-top:var(--space-1);min-height:1.2em}.audio-loop-hint--active{color:var(--primary)}.edit-audio-panel,.title-form{display:grid;gap:var(--space-4)}.title-form label{display:grid;gap:.45rem;color:var(--text);font-weight:700}.tag-list{display:flex;flex-wrap:wrap;gap:.55rem}.tag-list-compact{gap:.45rem}.outline-tag{display:inline-flex;align-items:center;min-height:2rem;padding:0 .8rem;border-radius:999px;border:1px solid var(--border);background:#ffffffd6;color:var(--text);font-size:var(--text-sm);font-weight:800}@media(max-width:900px){.hero,.dashboard-grid,.detail-hero,.detail-grid,.composer-layout{grid-template-columns:1fr}.composer-sidebar{order:-1}.transcript-header{flex-direction:column;align-items:flex-start}.transcript-header>:last-child{align-self:flex-end}}@media(max-width:640px){.hero,.panel,.auth-panel,.lesson-form-panel,.detail-hero,.content-block{padding:1.4rem}.lesson-form-grid{grid-template-columns:1fr}}.form-field{display:grid;gap:.45rem}.form-field label{color:var(--text);font-weight:700;font-size:var(--text-sm)}.form-input{border-radius:1rem;border:1px solid var(--border);min-height:3.25rem;padding:.9rem var(--space-4);background:#fff;resize:vertical;width:100%;color:var(--text)}.form-input:focus{outline:2px solid var(--primary);outline-offset:2px}.form-actions{display:flex;flex-wrap:wrap;gap:var(--space-3)}.lesson-lines-list{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-4)}.lesson-line-item{display:grid;gap:.25rem;padding:var(--space-4) 1.1rem;border-radius:1.1rem;background:#fff;border:1px solid var(--border)}.lesson-line-target{font-size:var(--text-md);font-weight:800;color:var(--text);line-height:1.4}.lesson-line-native{font-size:var(--text-sm);color:var(--muted);line-height:1.4}.lesson-vocab-list{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-3)}.lesson-vocab-item{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.25rem var(--space-4);padding:.85rem 1.1rem;border-radius:1.1rem;background:#fff;border:1px solid var(--border)}@media(max-width:400px){.lesson-vocab-item{grid-template-columns:1fr}}.lesson-vocab-term{font-weight:800;color:var(--text);font-size:var(--text-base)}.lesson-vocab-translation{font-size:var(--text-sm);color:var(--muted);align-self:center}.lesson-vocab-example{grid-column:1 / -1;font-size:var(--text-sm);color:var(--body);font-style:italic;padding-top:.2rem}.detail-native-title{margin:var(--space-1) 0 0;font-size:var(--text-md);font-weight:700;color:var(--muted);line-height:1.3}.jcard-subtitle{display:block;font-size:var(--text-sm);font-weight:700;color:var(--muted);line-height:1.3;margin-top:.15rem}.content-player-card{margin-bottom:var(--space-4);padding:var(--space-3) var(--space-4);background:var(--highlight);border:1px solid var(--border);border-radius:1.25rem}.speed-row{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3)}.speed-label{font-size:var(--text-xs);font-weight:900;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.speed-pills{display:inline-flex;gap:var(--space-1)}.speed-pill{padding:.3rem .85rem;font-size:var(--text-xs);font-weight:800;color:var(--muted);background:#fff;border:1.5px solid var(--border);border-radius:999px;cursor:pointer;transition:all .15s;font-family:inherit;min-height:unset}.speed-pill:hover{border-color:var(--primary)}.speed-pill--active{background:var(--primary);border-color:var(--primary);color:#fff}.vocab-player-card{margin-bottom:var(--space-3);padding:.75rem var(--space-3);background:var(--highlight);border:1px solid var(--border);border-radius:1rem}.transcript-media-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}@media(max-width:640px){.transcript-media-row{grid-template-columns:1fr}}.transcript-media-card{padding:1.25rem;border-radius:1.5rem;display:grid;gap:var(--space-3)}.sound-wave-wrap{display:flex;align-items:center;gap:.6rem;overflow:hidden;max-width:100%}.wave-bars{display:flex;align-items:center;gap:3px;height:36px;overflow:hidden}.wave-bar{width:4px;border-radius:999px;background:linear-gradient(180deg,var(--primary),#a53ce2);transform-origin:center}@keyframes wave-1{0%,to{height:6px}25%{height:28px}60%{height:14px}}@keyframes wave-2{0%,to{height:18px}30%{height:8px}65%{height:32px}}@keyframes wave-3{0%,to{height:30px}40%{height:10px}70%{height:22px}}@keyframes wave-4{0%,to{height:12px}20%{height:34px}55%{height:16px}}@keyframes wave-5{0%,to{height:22px}35%{height:6px}60%{height:30px}}@keyframes wave-6{0%,to{height:8px}45%{height:26px}75%{height:12px}}@keyframes wave-7{0%,to{height:28px}25%{height:12px}50%{height:36px}}@keyframes wave-8{0%,to{height:14px}40%{height:30px}70%{height:8px}}@keyframes wave-9{0%,to{height:32px}30%{height:14px}65%{height:20px}}@keyframes wave-10{0%,to{height:10px}20%{height:24px}55%{height:34px}}@keyframes wave-11{0%,to{height:20px}45%{height:6px}75%{height:28px}}@keyframes wave-12{0%,to{height:26px}35%{height:18px}60%{height:8px}}@keyframes wave-13{0%,to{height:6px}25%{height:32px}50%{height:16px}}@keyframes wave-14{0%,to{height:16px}40%{height:8px}70%{height:30px}}@keyframes wave-15{0%,to{height:30px}30%{height:20px}65%{height:10px}}@keyframes wave-16{0%,to{height:10px}20%{height:28px}55%{height:22px}}@keyframes wave-17{0%,to{height:24px}45%{height:12px}75%{height:34px}}@keyframes wave-18{0%,to{height:8px}35%{height:26px}60%{height:14px}}@keyframes wave-19{0%,to{height:28px}25%{height:10px}50%{height:20px}}@keyframes wave-20{0%,to{height:18px}40%{height:32px}70%{height:6px}}.wave-bars .wave-bar:nth-child(1){animation:wave-1 1.1s ease-in-out infinite}.wave-bars .wave-bar:nth-child(2){animation:wave-2 1.3s ease-in-out infinite .05s}.wave-bars .wave-bar:nth-child(3){animation:wave-3 .9s ease-in-out infinite .1s}.wave-bars .wave-bar:nth-child(4){animation:wave-4 1.4s ease-in-out infinite .15s}.wave-bars .wave-bar:nth-child(5){animation:wave-5 1s ease-in-out infinite .2s}.wave-bars .wave-bar:nth-child(6){animation:wave-6 1.2s ease-in-out infinite .08s}.wave-bars .wave-bar:nth-child(7){animation:wave-7 1.5s ease-in-out infinite .12s}.wave-bars .wave-bar:nth-child(8){animation:wave-8 .95s ease-in-out infinite .18s}.wave-bars .wave-bar:nth-child(9){animation:wave-9 1.25s ease-in-out infinite .06s}.wave-bars .wave-bar:nth-child(10){animation:wave-10 1.1s ease-in-out infinite .22s}.wave-bars .wave-bar:nth-child(11){animation:wave-11 1.35s ease-in-out infinite .03s}.wave-bars .wave-bar:nth-child(12){animation:wave-12 1.05s ease-in-out infinite .14s}.wave-bars .wave-bar:nth-child(13){animation:wave-13 1.45s ease-in-out infinite .09s}.wave-bars .wave-bar:nth-child(14){animation:wave-14 .85s ease-in-out infinite .17s}.wave-bars .wave-bar:nth-child(15){animation:wave-15 1.2s ease-in-out infinite .25s}.wave-bars .wave-bar:nth-child(16){animation:wave-16 1s ease-in-out infinite .11s}.wave-bars .wave-bar:nth-child(17){animation:wave-17 1.3s ease-in-out infinite .07s}.wave-bars .wave-bar:nth-child(18){animation:wave-18 .9s ease-in-out infinite .19s}.wave-bars .wave-bar:nth-child(19){animation:wave-19 1.15s ease-in-out infinite .04s}.wave-bars .wave-bar:nth-child(20){animation:wave-20 1.4s ease-in-out infinite .13s}.wave-label{font-size:var(--text-xs);font-weight:800;color:var(--primary);letter-spacing:.04em}@keyframes checklist-spin{to{transform:rotate(360deg)}}@keyframes checklist-pulse{0%,to{transform:scale(1);opacity:.9}50%{transform:scale(1.12);opacity:1}}@keyframes checklist-slide-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.generating-checklist-card{padding:var(--space-6);border-radius:2rem;display:grid;gap:1.75rem}@media(min-width:640px){.generating-checklist-card{padding:var(--space-8) var(--space-10)}}.generating-checklist-header{display:flex;align-items:flex-start;gap:1.25rem}.generating-checklist-ring-wrap{position:relative;width:56px;height:56px;flex-shrink:0}.generating-checklist-spinner{width:56px;height:56px;border-radius:50%;border:3px solid var(--primary-soft);border-top-color:var(--primary);animation:checklist-spin .9s linear infinite}.generating-checklist-center-dot{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center}.generating-checklist-center-dot span{width:22px;height:22px;border-radius:50%;background:linear-gradient(135deg,var(--primary),#a53ce2);box-shadow:0 3px 10px #820ad14d;display:flex;align-items:center;justify-content:center;font-size:.7rem;color:#fff;animation:checklist-pulse 1.8s ease-in-out infinite}.generating-checklist-header-text{display:grid;gap:.2rem}.generating-checklist-title{margin:0;font-size:clamp(1.15rem,3vw,1.5rem);font-weight:900;color:var(--text);line-height:1.2}.generating-checklist-lead{margin:0;color:var(--muted);line-height:1.6}.generating-checklist-bar-wrap{height:6px;border-radius:999px;background:var(--primary-soft);overflow:hidden}.generating-checklist-bar{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--primary),#a53ce2);transition:width .6s cubic-bezier(.4,0,.2,1);min-width:4px}.generating-checklist-steps{list-style:none;margin:0;padding:0;display:grid;gap:.55rem}.generating-checklist-step{display:flex;align-items:center;gap:.85rem;padding:.7rem var(--space-4);border-radius:1rem;transition:background .3s}.generating-checklist-step--done{background:var(--highlight)}.generating-checklist-step--active{background:var(--primary-soft);animation:checklist-slide-in .35s ease both}.generating-checklist-step--pending{opacity:.42}.generating-checklist-step-icon{width:28px;height:28px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:900}.generating-checklist-step--done .generating-checklist-step-icon{background:var(--primary);color:#fff}.generating-checklist-step--active .generating-checklist-step-icon{border:2px solid var(--primary);animation:checklist-spin 1.2s linear infinite}.generating-checklist-step--pending .generating-checklist-step-icon{background:var(--border);color:var(--muted)}.generating-checklist-step-body{display:grid;gap:.1rem;flex:1;min-width:0}.generating-checklist-step-label{font-weight:800;color:var(--text);font-size:var(--text-sm);word-break:break-word}.generating-checklist-step--pending .generating-checklist-step-label{color:var(--muted)}.generating-checklist-step-sub{font-size:var(--text-xs);color:var(--muted);font-weight:700}.generating-checklist-step-state{margin-left:auto;flex-shrink:0;font-size:var(--text-xs);font-weight:700;color:var(--primary)}.generating-checklist-step--pending .generating-checklist-step-state{color:var(--muted)}.generating-checklist-footer{border-top:1px solid var(--border);padding-top:1.25rem}@keyframes generating-spin{to{transform:rotate(360deg)}}@keyframes generating-pulse-scale{0%,to{transform:scale(1);opacity:.9}50%{transform:scale(1.12);opacity:1}}@keyframes generating-ring-expand{0%{transform:scale(.7);opacity:.8}to{transform:scale(1.6);opacity:0}}@keyframes generating-shimmer{to{background-position:200% center}}.generating-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#22112e8c;display:grid;place-items:center;z-index:200;padding:max(var(--space-4),env(safe-area-inset-top,var(--space-4))) max(var(--space-4),env(safe-area-inset-right,var(--space-4))) max(var(--space-4),env(safe-area-inset-bottom,var(--space-4))) max(var(--space-4),env(safe-area-inset-left,var(--space-4)));-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.generating-card{width:min(440px,100%);padding:var(--space-8) var(--space-8);border-radius:2rem;display:flex;flex-direction:column;align-items:center;gap:1.75rem;text-align:center}@media(min-width:480px){.generating-card{padding:var(--space-10) var(--space-8)}}.generating-ring-wrap{position:relative;width:100px;height:100px}.generating-ring-wrap:before,.generating-ring-wrap:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:2px solid rgba(130,10,209,.3);animation:generating-ring-expand 2s ease-out infinite}.generating-ring-wrap:after{animation-delay:1s}.generating-spinner{width:100px;height:100px;border-radius:50%;border:3px solid var(--primary-soft);border-top-color:var(--primary);animation:generating-spin 1.1s linear infinite}.generating-center-dot{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center}.generating-center-dot span{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--primary),#a53ce2);box-shadow:0 4px 16px #820ad159;animation:generating-pulse-scale 1.8s ease-in-out infinite;display:flex;align-items:center;justify-content:center;font-size:1rem;color:#fff}.generating-text{display:grid;gap:.5rem}.generating-title{margin:0;font-size:var(--text-xl);font-weight:900;color:var(--text)}.generating-subtitle{margin:0;color:var(--muted);line-height:1.6;max-width:340px}.generating-shimmer-tag{display:inline-flex;align-items:center;padding:.4rem var(--space-4);border-radius:999px;font-size:var(--text-sm);font-weight:800;background:linear-gradient(90deg,var(--primary-soft) 25%,#d8b4fe 50%,var(--primary-soft) 75%);background-size:200% auto;color:var(--primary);animation:generating-shimmer 2s linear infinite}.generating-dots{display:flex;gap:.5rem;align-items:center}.generating-dot{width:8px;height:8px;border-radius:50%;background:var(--primary-soft);border:2px solid var(--border-strong)}.generating-dot--active{background:var(--primary);border-color:var(--primary);box-shadow:0 0 0 4px #820ad126;animation:generating-pulse-scale 1.2s ease-in-out infinite}.dashboard-action-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-4);padding:var(--space-5) 0 var(--space-2)}.dashboard-action-bar .primary-button{flex-shrink:0}.dashboard-greeting{margin:0;font-size:var(--text-md);font-weight:700;color:var(--text);line-height:1.3}.dashboard-stats-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-4);margin-top:var(--space-4)}@media(max-width:900px){.dashboard-stats-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:400px){.dashboard-stats-strip{grid-template-columns:1fr}}.dashboard-stat-tile{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:1.5rem;padding:1.25rem var(--space-6);display:grid;gap:.3rem}.dashboard-stat-tile--loading{gap:.6rem}.dashboard-stat-value{font-size:var(--text-2xl);font-weight:900;color:var(--text);line-height:1}.dashboard-stat-label{font-size:var(--text-xs);font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}@keyframes skeleton-shimmer{to{background-position:200% center}}.stat-skeleton{height:1.6rem;border-radius:8px;background:linear-gradient(90deg,var(--primary-soft) 25%,#e8d4fa 50%,var(--primary-soft) 75%);background-size:200% auto;animation:skeleton-shimmer 1.6s linear infinite}.stat-skeleton--narrow{height:.75rem;width:60%}.stat-skeleton--label{width:60px;margin-bottom:var(--space-3)}.stat-skeleton--title{width:80%;height:1.2rem;margin-bottom:var(--space-2)}.dashboard-filter-bar{display:grid;grid-template-columns:1fr auto auto auto auto;gap:var(--space-3);align-items:center;margin-top:var(--space-4)}@media(max-width:900px){.dashboard-filter-bar{grid-template-columns:1fr 1fr 1fr auto}.dashboard-search{grid-column:1 / -1}}@media(max-width:640px){.dashboard-filter-bar{grid-template-columns:1fr}.dashboard-search{grid-column:unset}}.dashboard-search{min-width:0;border-radius:1rem;border:1px solid var(--border);min-height:2.8rem;padding:0 var(--space-4);background:#fff;font:inherit;color:var(--text)}.dashboard-search:focus{outline:2px solid var(--primary);outline-offset:2px}.dashboard-select{border-radius:1rem;border:1px solid var(--border);min-height:2.8rem;padding:0 var(--space-4);background:#fff;font:inherit;color:var(--text);-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.dashboard-select:focus{outline:2px solid var(--primary);outline-offset:2px}.dashboard-filter-clear{background:none;border:1px solid rgba(130,10,209,.3);color:var(--primary);font:inherit;font-weight:800;font-size:var(--text-sm);cursor:pointer;padding:.4rem .75rem;border-radius:999px;min-height:44px}.dashboard-filter-clear:hover{background:var(--primary-soft)}.dashboard-lesson-section{margin-top:var(--space-4)}.dashboard-lesson-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}.dashboard-lesson-count{margin:0;font-size:var(--text-xs);font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.dashboard-view-toggle{background:none;border:1px solid var(--border);border-radius:.75rem;padding:.4rem .6rem;min-height:44px;min-width:44px;color:var(--muted);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:color .18s,border-color .18s}.dashboard-view-toggle:hover{color:var(--primary);border-color:var(--primary)}.lesson-list{display:grid;gap:.5rem}.lesson-row{background:var(--surface);border:1px solid var(--border);border-radius:1.25rem;padding:.9rem 1.1rem;display:grid;grid-template-columns:1fr auto;gap:.5rem var(--space-4);align-items:center;transition:opacity .3s,background .3s}.lesson-row--deleting{opacity:.5;pointer-events:none}.lesson-row-main{display:grid;gap:.35rem;min-width:0}.lesson-row-title{font-weight:800;color:var(--text);font-size:var(--text-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-decoration:none}.lesson-row-title:hover{color:var(--primary)}.lesson-row-meta{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.lesson-row-date{font-size:var(--text-xs);color:var(--muted);font-weight:700}.lesson-row-actions{display:flex;align-items:center;gap:var(--space-3);flex-shrink:0}.lesson-row-spinner{width:18px;height:18px;border-radius:50%;border:2px solid var(--primary-soft);border-top-color:var(--primary);animation:generating-spin .9s linear infinite;display:block}.lesson-row-error{grid-column:1 / -1;font-size:var(--text-sm);margin:0}@media(max-width:768px){.lesson-row{grid-template-columns:1fr}.lesson-row-actions{justify-content:flex-end}}.lesson-row-menu-wrap{position:relative}.lesson-row-menu-btn{background:none;border:1px solid var(--border);border-radius:.75rem;padding:0 .6rem;min-height:44px;min-width:44px;color:var(--muted);font-size:1.1rem;cursor:pointer;line-height:1;display:flex;align-items:center;justify-content:center;transition:color .18s,border-color .18s}.lesson-row-menu-btn:hover{color:var(--text);border-color:var(--border-strong)}.lesson-row-menu{position:absolute;top:calc(100% + 4px);right:0;background:#fff;border:1px solid var(--border);border-radius:1rem;box-shadow:var(--shadow-sm);min-width:120px;overflow:hidden;z-index:50}.lesson-row-menu-item{display:block;width:100%;min-height:44px;padding:0 var(--space-4);display:flex;align-items:center;text-align:left;font:inherit;font-weight:700;font-size:var(--text-sm);background:none;border:none;color:var(--text);cursor:pointer;text-decoration:none}.lesson-row-menu-item:hover{background:var(--highlight)}.lesson-row-menu-item--danger{color:#b42318}.lesson-row-menu-item--danger:hover{background:#fff3f2}.asset-indicators{display:flex;gap:4px;align-items:center}.asset-dot{display:inline-flex;align-items:center;justify-content:center;cursor:default}.asset-dot--filled{color:var(--primary)}.asset-dot--empty{color:var(--border-strong)}.lesson-card-title-link{text-decoration:none;color:inherit;min-height:unset}.lesson-card-title-link:hover h3{color:var(--primary)}.lesson-card h3{overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:break-word}.lesson-card--deleting{opacity:.5;pointer-events:none}.lesson-card-footer{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;margin-top:.25rem}.lesson-card-delete-btn{background:none;border:none;color:#b42318;font:inherit;font-size:var(--text-sm);font-weight:800;cursor:pointer;padding:0 .4rem;min-height:44px;border-radius:.5rem;display:inline-flex;align-items:center}.lesson-card-delete-btn:hover{background:#fff3f2}.lesson-card-delete-btn:disabled{opacity:.5;cursor:not-allowed}.lesson-card-player{margin-top:.25rem}.lesson-card-audio{width:100%;height:36px;border-radius:.5rem;accent-color:var(--primary)}.lesson-card-footer-actions{display:flex;align-items:center;gap:.5rem;margin-left:auto}.lesson-card-download-btn{display:inline-flex;align-items:center;gap:.3rem;background:none;border:1px solid var(--border);color:var(--muted);font:inherit;font-size:var(--text-xs);font-weight:600;cursor:pointer;padding:0 .5rem;min-height:44px;border-radius:.5rem;text-decoration:none;transition:color .15s,border-color .15s}.lesson-card-download-btn:hover{color:var(--primary);border-color:var(--primary)}.lesson-row-play-btn,.lesson-row-download-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;border:1px solid var(--border);background:none;color:var(--muted);cursor:pointer;text-decoration:none;transition:color .15s,border-color .15s,background .15s;flex-shrink:0}.lesson-row-play-btn:hover,.lesson-row-download-btn:hover,.lesson-row-play-btn--active{color:var(--primary);border-color:var(--primary);background:var(--highlight)}.lesson-row-player{padding:.5rem .75rem .5rem var(--space-4);border-top:1px solid var(--border);background:var(--surface)}.lesson-row-audio{width:100%;height:36px;border-radius:.5rem;accent-color:var(--primary)}.dashboard-empty-state{display:grid;gap:var(--space-8);margin-top:var(--space-4)}.dashboard-empty-hero{display:grid;gap:var(--space-3);max-width:560px}.dashboard-empty-hero h2{color:var(--text);margin:0}.lesson-ghost-grid{display:grid;grid-template-columns:1fr;gap:var(--space-4);opacity:.45;pointer-events:none;-webkit-user-select:none;user-select:none;filter:blur(1.5px)}@media(min-width:640px){.lesson-ghost-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:900px){.lesson-ghost-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.lesson-ghost-card{padding:1.25rem;border-radius:2rem;display:grid;gap:.6rem}.ghost-badge{background:var(--surface-soft);color:var(--muted)}.lesson-ghost-title{margin:0;font-weight:800;color:var(--text);font-size:var(--text-sm)}.lesson-ghost-meta{margin:0;font-size:var(--text-sm);color:var(--muted);font-weight:700}.lesson-ghost-tags{display:flex;flex-wrap:wrap;gap:.4rem}.dashboard-charts-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--space-4);margin-top:var(--space-4)}@media(max-width:1200px){.dashboard-charts-row{grid-template-columns:1fr 1fr}.dashboard-charts-row>:last-child{grid-column:1 / -1}}@media(max-width:900px){.dashboard-charts-row{grid-template-columns:1fr}.dashboard-charts-row>:last-child{grid-column:unset}}.dashboard-chart-panel{padding:1.25rem var(--space-6);border-radius:1.75rem;display:grid;gap:var(--space-3);align-content:start}.lang-chart{display:grid;gap:.55rem}.lang-chart-row{display:grid;grid-template-columns:80px 1fr 28px;align-items:center;gap:.5rem}.lang-chart-label{font-size:var(--text-sm);font-weight:800;color:var(--body);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lang-chart-bar-wrap{background:var(--primary-soft);border-radius:999px;height:8px;overflow:hidden}.lang-chart-bar{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--primary),#a53ce2);transition:width .6s cubic-bezier(.4,0,.2,1);min-width:4px}.lang-chart-count{font-size:var(--text-xs);font-weight:800;color:var(--muted);text-align:right}.sparkline{display:flex;gap:.5rem;align-items:flex-end;height:72px}.sparkline-col{display:flex;flex-direction:column;align-items:center;gap:4px;flex:1;min-width:0}.sparkline-bar{width:100%;border-radius:4px 4px 0 0;background:linear-gradient(180deg,#a53ce2,var(--primary));min-height:4px;transition:height .5s ease}.sparkline-label{font-size:.68rem;font-weight:800;color:var(--muted);letter-spacing:.03em}.ug-chart{display:block}.ug-head{display:flex;justify-content:flex-end;margin-bottom:var(--space-4)}.ug-pills{display:flex;gap:var(--space-1);flex-wrap:wrap}.ug-pill{border:1px solid var(--border);background:#fff;color:var(--muted);font-family:inherit;font-weight:800;font-size:var(--text-xs);letter-spacing:.02em;padding:.4rem .9rem;border-radius:999px;cursor:pointer;transition:all .12s ease;white-space:nowrap}.ug-pill:hover{border-color:var(--border-strong);color:var(--text)}.ug-pill[aria-pressed=true]{background:var(--primary);border-color:var(--primary);color:#fff}.ug-hero{display:flex;align-items:baseline;gap:var(--space-3);flex-wrap:wrap;margin-bottom:var(--space-4)}.ug-hero .big{font-size:var(--text-3xl);font-weight:900;color:var(--primary);line-height:1}.ug-hero .cap{font-size:var(--text-xs);font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.ug-delta{font-weight:800;font-size:var(--text-sm);color:var(--success, #16a34a)}.ug-plot{position:relative;width:100%}.ug-plot svg{display:block;width:100%;height:auto;overflow:visible;touch-action:none}.ug-grid-line{stroke:var(--border);stroke-width:1}.ug-axis-label{fill:var(--muted);font-size:11px;font-weight:700;font-family:inherit}.ug-series-line{fill:none;stroke:var(--primary);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.ug-series-dot{fill:var(--primary);stroke:#fff;stroke-width:2.5}.ug-crosshair{stroke:var(--border-strong);stroke-width:1;stroke-dasharray:4 4}.ug-hover-dot{fill:#fff;stroke:var(--primary);stroke-width:3}.ug-tip{position:absolute;pointer-events:none;opacity:0;transform:translate(-50%,-115%);background:var(--text);color:#fff;border-radius:.7rem;padding:.5rem .7rem;font-size:var(--text-xs);font-weight:700;white-space:nowrap;box-shadow:var(--shadow-sm);transition:opacity .1s ease;z-index:5}.ug-tip b{font-weight:900}.ug-tip .sub{color:var(--primary-soft);font-weight:700}.ug-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:var(--space-4);margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--border)}.ug-strip .f label{display:block;font-size:var(--text-xs);font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:var(--space-1)}.ug-strip .f span{font-size:var(--text-xl);font-weight:900;color:var(--text)}.ug-strip .f span.accent{color:var(--primary)}.ug-skeleton{width:100%;aspect-ratio:720 / 280;border-radius:1rem;background:linear-gradient(90deg,var(--surface-soft),var(--highlight),var(--surface-soft));background-size:200% 100%;animation:ug-shimmer 1.4s ease-in-out infinite}@keyframes ug-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.ug-state-note{color:var(--muted);font-weight:700;margin:var(--space-3) 0 0}.ug-empty{color:var(--muted);font-weight:700;display:flex;align-items:center;justify-content:center;min-height:180px;margin:0}.vocab-heatmap{display:flex;flex-wrap:wrap;gap:.4rem .6rem;align-items:center;overflow:hidden;word-break:break-word}.vocab-word{background:none;border:none;cursor:pointer;color:var(--primary);font:inherit;font-weight:800;padding:.1rem .2rem;min-height:unset;border-radius:.4rem;transition:background .18s,color .18s;line-height:1.3}.vocab-word:hover{background:var(--primary-soft)}.vocab-word--active{background:var(--primary);color:#fff;border-radius:.5rem}.vocab-heatmap-hint{margin-bottom:var(--space-3)}.vocab-heatmap-active{margin-top:var(--space-3)}.progress-summary-bar{background:var(--surface);border:1px solid var(--border);border-radius:1.25rem;padding:1.1rem 1.5rem;margin-bottom:var(--space-6);box-shadow:var(--shadow-sm);display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem}@media(max-width:640px){.progress-summary-bar{grid-template-columns:repeat(2,1fr)}}.progress-stat{text-align:center;display:flex;flex-direction:column;gap:.2rem}.progress-stat-num{font-size:var(--text-2xl);font-weight:900;color:var(--primary);line-height:1}.progress-stat-label{font-size:var(--text-xs);color:var(--muted);font-weight:700}.progress-stat--done .progress-stat-num{color:#16a34a}.progress-stat--started .progress-stat-num{color:#b45309}.progress-stat--new .progress-stat-num{color:var(--muted)}.progress-stat-skeleton-num{width:48px;height:1.75rem;margin:0 auto .2rem}.progress-stat-skeleton-label{width:64px;height:.75rem;margin:0 auto}.journey-section{margin-bottom:var(--space-4)}.section-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:.75rem}.section-title{margin:0;font-weight:900;font-size:var(--text-xs);color:var(--muted);letter-spacing:.05em;text-transform:uppercase}.section-count{font-size:var(--text-xs);color:var(--muted);font-weight:700}.section-divider{border:none;border-top:1px solid var(--border);margin:var(--space-6) 0 var(--space-4)}.learning-badge{flex-shrink:0;font-size:.7rem;font-weight:800;padding:.25rem .6rem;border-radius:999px;white-space:nowrap}.learning-badge--new{background:var(--surface-soft);color:var(--muted)}.learning-badge--started{background:var(--primary-soft);color:var(--primary)}.learning-badge--done{background:#dcfce7;color:#16a34a}.lcard{background:var(--surface);border:1px solid var(--border);border-radius:1.25rem;box-shadow:var(--shadow-sm);overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .18s,transform .18s}.lcard:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.lcard--done{opacity:.78}.lcard--deleting{opacity:.5;pointer-events:none}.lcard-strip{height:4px;width:100%}.lcard-strip--new{background:var(--border-strong)}.lcard-strip--started{background:linear-gradient(90deg,var(--primary),#a53ce2)}.lcard-strip--done{background:#16a34a}.lcard-body{padding:1rem 1.1rem .75rem;flex:1;display:flex;flex-direction:column;gap:.55rem}.lcard-top{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem}.lcard-title-link{text-decoration:none;color:inherit;flex:1}.lcard-title-link:hover .lcard-title{color:var(--primary)}.lcard-title{font-weight:900;font-size:var(--text-base);line-height:1.3;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0}.lcard-meta{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.lcard-lang-pair{font-weight:800;font-size:.85rem;color:var(--body)}.lcard-level-pill{font-size:.7rem;font-weight:900;padding:.2rem .55rem;border-radius:999px;background:var(--primary-soft);color:var(--primary)}.lcard-date{font-size:var(--text-xs);color:var(--muted);margin-left:auto}.lcard-footer{padding:.6rem 1.1rem .85rem;display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;border-top:1px solid var(--border);background:var(--surface-alt)}.lcard-footer-right{display:flex;align-items:center;gap:.5rem;margin-left:auto}.asset-pill{display:inline-flex;align-items:center;gap:.2rem;font-size:.72rem;font-weight:700;padding:.2rem .55rem;border-radius:999px}.asset-pill--active{background:var(--primary-soft);color:var(--primary)}.asset-pill--inactive{background:var(--surface-soft);color:var(--muted)}.lcard-action{font-size:.8rem;font-weight:800;color:var(--primary);text-decoration:none;white-space:nowrap}.lcard-action:hover{text-decoration:underline}.lcard-done-btn,.lcard-undo-btn{background:none;border:1px solid var(--border);border-radius:999px;font-size:.72rem;font-weight:800;padding:.2rem .6rem;cursor:pointer;color:var(--muted);min-height:unset;transition:background .15s}.lcard-done-btn:hover{background:#dcfce7;color:#16a34a;border-color:#16a34a}.lcard-undo-btn:hover{background:var(--surface-soft)}.lcard-delete-error{font-size:var(--text-xs)}.lcard-menu-wrap{position:relative}.lcard-menu{top:auto;bottom:calc(100% + 4px)}.lcard-asset-dots{display:flex;gap:.35rem;align-items:center}.lrow{background:var(--surface);border:1px solid var(--border);border-radius:1rem;padding:.75rem 1rem;display:grid;grid-template-columns:4px 1fr auto;gap:0 .9rem;align-items:center;transition:background .15s}.lrow:hover{background:var(--highlight)}.lrow--deleting{opacity:.5;pointer-events:none}.lrow-strip{width:4px;border-radius:2px;align-self:stretch;min-height:36px}.lrow-main{display:flex;flex-direction:column;gap:.3rem;overflow:hidden}.lrow-title{font-weight:800;font-size:var(--text-sm);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-decoration:none}.lrow-title:hover{color:var(--primary)}.lrow-sub{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.lrow-sub .lcard-lang-pair{font-size:.8rem}.lrow-sub .lcard-level-pill{font-size:.68rem}.lrow-right{display:flex;align-items:center;gap:.5rem}.lrow-assets{display:flex;gap:.3rem;align-items:center}.lrow-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.lrow-dot--on{background:var(--primary)}.lrow-dot--off{background:var(--border-strong)}.lrow-date{font-size:var(--text-xs);color:var(--muted);white-space:nowrap}@media(max-width:640px){.lrow{grid-template-columns:4px 1fr}.lrow-right{grid-column:2;justify-content:flex-end;margin-top:.3rem}}.view-tab-btn{padding:.35rem .9rem;border-radius:999px;font-size:var(--text-sm);font-weight:800;border:1px solid var(--border);background:var(--surface);color:var(--muted);cursor:pointer;min-height:unset;transition:background .15s,color .15s}.view-tab-btn[aria-pressed=true]{background:var(--primary);color:#fff;border-color:var(--primary)}.jdash-page{padding-top:var(--space-6);padding-bottom:var(--space-12)}.jdash-greeting{margin-bottom:var(--space-8)}.jdash-greeting-h1{font-size:clamp(1.5rem,4vw,2rem);font-weight:900;color:var(--text);line-height:1.15;margin:0 0 var(--space-2)}.jdash-greeting-subtitle{font-size:var(--text-md);font-weight:700;color:var(--body);margin:0 0 var(--space-5)}.jdash-greeting-actions{display:flex;align-items:center;gap:var(--space-5);flex-wrap:wrap}.jdash-new-btn{font-size:var(--text-base);padding:0 var(--space-6);min-height:3.5rem}.jdash-stats-sentence{font-size:var(--text-sm);font-weight:700;color:var(--muted)}.jdash-sections{display:flex;flex-direction:column;gap:var(--space-8)}.jdash-section-label{font-size:var(--text-xs);font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 var(--space-3)}.jdash-lesson-list{display:flex;flex-direction:column;gap:var(--space-3)}.jcard{background:var(--surface);border:1px solid var(--border);border-radius:2rem;box-shadow:var(--shadow-sm);display:flex;align-items:stretch;transition:box-shadow .22s ease,transform .18s ease;text-decoration:none}.jcard:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}.jcard--deleting{opacity:.55;pointer-events:none}.jcard-icon-col{display:flex;align-items:center;justify-content:center;overflow:visible;padding:0 0 0 var(--space-6);flex-shrink:0}.jcard-icon{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:900;flex-shrink:0;-webkit-user-select:none;user-select:none}.jcard-icon-btn{border:none;cursor:pointer;padding:0;transition:transform .16s ease,box-shadow .16s ease,filter .16s ease;position:relative;z-index:1}.jcard-icon-btn:focus-visible{outline:2px solid var(--primary);outline-offset:3px}.jcard-icon-btn:hover{transform:scale(1.12);filter:brightness(1.1)}.jcard-icon-btn:after{content:attr(data-tooltip);position:absolute;left:50%;top:calc(-100% - 6px);transform:translate(-50%);background:var(--text);color:#fff;font-size:var(--text-xs);font-weight:800;padding:.2rem .55rem;border-radius:6px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .14s ease}.jcard-icon-btn:hover:after{opacity:1}.jcard-icon--inprogress{background:linear-gradient(135deg,var(--primary),#c084fc);color:#fff;font-size:.85rem}.jcard-icon--notstarted{background:transparent;border:2.5px solid var(--border-strong);color:var(--muted);font-size:.75rem}.jcard-icon-btn.jcard-icon--notstarted:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-soft)}.jcard-icon--done{background:#dcfce7;color:#16a34a;font-size:.9rem}.jcard-center{flex:1;padding:var(--space-5) var(--space-4);min-width:0;display:flex;flex-direction:column;gap:var(--space-2)}.jcard-title-link{text-decoration:none;display:block}.jcard-title{font-size:var(--text-md);font-weight:900;color:var(--text);line-height:1.25;display:block}.jcard-title-link:hover .jcard-title{color:var(--primary)}.jcard-meta-line{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.jcard-chip{font-size:var(--text-xs);font-weight:800;color:var(--muted);background:var(--surface-alt);border:1px solid var(--border);border-radius:999px;padding:.18rem .55rem;min-height:unset}.jcard-chip--lang{background:var(--primary-soft);color:var(--primary);border-color:#820ad133}.jcard-meta-sep{color:var(--border-strong);font-size:var(--text-xs)}.jcard-meta-date{font-size:var(--text-xs);font-weight:700;color:var(--muted)}.jcard-tags-row{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.jcard-tag-pill{display:inline-flex;align-items:center;padding:.15rem .55rem;border-radius:999px;border:1px solid var(--border);font-size:var(--text-xs);font-weight:700;color:var(--muted);background:#fff9;min-height:unset}.jcard-tags-toggle{font-size:var(--text-xs);font-weight:800;color:var(--primary);background:none;border:none;cursor:pointer;font-family:inherit;padding:0;min-height:unset;transition:opacity .15s}.jcard-tags-toggle:hover{opacity:.7}.jcard-delete-error{font-size:var(--text-xs);margin-top:var(--space-1)}.jcard-right{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;padding:var(--space-5) var(--space-6) var(--space-5) var(--space-3);gap:var(--space-3);flex-shrink:0}.jcard-cta{display:inline-flex;align-items:center;gap:var(--space-1);border-radius:999px;padding:0 var(--space-5);min-height:2.8rem;font-weight:800;font-size:var(--text-sm);white-space:nowrap;transition:opacity .15s,transform .12s;text-decoration:none;min-height:unset}.jcard-cta--resume{background:linear-gradient(135deg,var(--primary),#a53ce2);color:#fff;border:none;min-height:2.8rem}.jcard-cta--resume:hover{opacity:.88;transform:translateY(-1px)}.jcard-cta--start{background:#fff;color:var(--text);border:1px solid var(--border);min-height:2.8rem}.jcard-cta--start:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-soft)}.jcard-right-footer{display:flex;align-items:center;gap:var(--space-3)}.jcard-asset-dots{display:flex;align-items:center;gap:var(--space-1)}.jcard-dot{width:8px;height:8px;border-radius:50%;display:inline-block;position:relative;min-height:unset;cursor:default}.jcard-dot--audio{background:var(--primary)}.jcard-dot--pdf{background:#ea580c}.jcard-dot--script{background:#16a34a}.jcard-dot--none{background:var(--border-strong)}.jcard-delete-btn{background:none;border:none;color:var(--muted);font-size:.7rem;cursor:pointer;opacity:.4;transition:opacity .15s,color .15s;padding:.2rem;min-height:unset;line-height:1}.jcard-delete-btn:hover{opacity:1;color:#b42318}.jcard-dot:hover:after{content:attr(title);position:absolute;bottom:calc(100% + 5px);right:0;background:var(--text);color:#fff;font-size:.68rem;font-weight:700;font-family:Nunito Sans,sans-serif;padding:.28rem .5rem;border-radius:.4rem;white-space:nowrap;pointer-events:none;z-index:10}.jdash-skeleton-list{display:flex;flex-direction:column;gap:var(--space-3)}.jcard-skeleton{padding:var(--space-5) var(--space-6);pointer-events:none;min-height:80px;align-items:center}.jcard-skeleton-icon{width:40px;height:40px;border-radius:50%;background:var(--surface-alt);flex-shrink:0;margin-right:var(--space-4)}.jcard-skeleton-body{flex:1;display:flex;flex-direction:column;gap:var(--space-2)}.jcard-skeleton-cta{flex-shrink:0;margin-left:var(--space-4)}.stat-skeleton--cta{width:80px;height:2.8rem;border-radius:999px}.jdash-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-4);padding:var(--space-12) var(--space-6)}.jdash-empty-icon{font-size:3rem;line-height:1}.jdash-empty-heading{font-size:var(--text-xl);font-weight:900;color:var(--text);margin:0}.jdash-empty-body{font-size:var(--text-base);color:var(--muted);max-width:400px;line-height:1.7;margin:0}@media(max-width:640px){.jdash-greeting-h1{font-size:1.4rem}.jdash-greeting-subtitle{font-size:var(--text-base)}.jdash-new-btn{min-height:3.2rem}.jcard-icon-col{padding:0 0 0 var(--space-4)}.jcard-icon{width:44px;height:44px;font-size:.85rem}.jcard-center{padding:var(--space-4) var(--space-3)}.jcard-title{font-size:var(--text-base)}.jcard-right{padding:var(--space-4) var(--space-4) var(--space-4) var(--space-2)}.jcard-cta--resume,.jcard-cta--start{font-size:var(--text-xs);padding:0 var(--space-4);min-height:2.4rem}}.ychat-bubble{display:flex;gap:var(--space-3);align-items:flex-start;max-width:88%}.ychat-bubble--user{align-self:flex-end;flex-direction:row-reverse}.ychat-avatar{flex-shrink:0;width:2.25rem;height:2.25rem;border-radius:50%;background:linear-gradient(135deg,var(--primary),#a53ce2);color:#fff;font-size:var(--text-sm);font-weight:900;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-sm)}.ychat-content{padding:var(--space-3) var(--space-4);border-radius:1.25rem;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm)}.ychat-bubble--yara .ychat-content{border-top-left-radius:.25rem;background:#fff}.ychat-bubble--user .ychat-content{border-top-right-radius:.25rem;background:var(--primary-soft);border-color:#820ad140}.ychat-text{margin:0;font-size:var(--text-base);line-height:1.6;color:var(--text)}.ychat-typing{display:inline-flex;align-items:center;gap:5px;padding-block:var(--space-1)}.ychat-typing span{display:block;width:7px;height:7px;border-radius:50%;background:var(--muted);animation:ychat-bounce 1.2s ease-in-out infinite}.ychat-typing span:nth-child(2){animation-delay:.2s}.ychat-typing span:nth-child(3){animation-delay:.4s}@keyframes ychat-bounce{0%,80%,to{transform:translateY(0);opacity:.5}40%{transform:translateY(-5px);opacity:1}}.ychat-input-form{display:flex;gap:var(--space-3);align-items:flex-end}.ychat-input-textarea{flex:1;resize:none;border:1px solid var(--border-strong);border-radius:1rem;padding:var(--space-3) var(--space-4);font-size:var(--text-base);color:var(--text);background:#fff;line-height:1.5;transition:border-color .15s ease,box-shadow .15s ease}.ychat-input-textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #820ad11f}.ychat-input-textarea:disabled{background:var(--surface-alt);color:var(--muted)}.ychat-input-send{flex-shrink:0;align-self:flex-end}.yonboard-page{min-height:100vh;display:flex;flex-direction:column;max-width:720px;margin-inline:auto;padding:var(--space-6) var(--space-4);gap:var(--space-6)}.yonboard-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.yonboard-brand{display:flex;align-items:center;gap:var(--space-4)}.yonboard-avatar{flex-shrink:0;width:3rem;height:3rem;border-radius:50%;background:linear-gradient(135deg,var(--primary),#a53ce2);color:#fff;font-size:var(--text-lg);font-weight:900;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-sm)}.yonboard-title{margin:0;font-size:var(--text-xl);font-weight:900;color:var(--text);line-height:1.2}.yonboard-skip{white-space:nowrap;flex-shrink:0}.yonboard-chat-area{flex:1;display:flex;flex-direction:column;gap:var(--space-4);background:var(--surface);border:1px solid var(--border);border-radius:2rem;box-shadow:var(--shadow-sm);padding:var(--space-6)}.yonboard-messages{flex:1;display:flex;flex-direction:column;gap:var(--space-4);min-height:300px;max-height:60vh;overflow-y:auto;scroll-behavior:smooth}.yonboard-input-area{border-top:1px solid var(--border);padding-top:var(--space-4)}.yonboard-complete{border-top:1px solid var(--border);padding-top:var(--space-4);display:flex;flex-direction:column;align-items:center;gap:var(--space-4);text-align:center}.yonboard-complete-text{margin:0;color:var(--muted);font-size:var(--text-base)}.yonboard-error{border-top:1px solid var(--border);padding-top:var(--space-4);display:flex;flex-direction:column;align-items:center;gap:var(--space-3);text-align:center;color:var(--destructive);font-size:var(--text-sm)}.yonboard-error p{margin:0}.yonboard-send-error{margin:0 0 var(--space-2) 0;color:var(--destructive);font-size:var(--text-sm);text-align:center}@media(min-width:640px){.yonboard-page{padding:var(--space-8) var(--space-6)}}.yprofile-page{padding-top:var(--space-8);display:flex;flex-direction:column;gap:var(--space-6)}.yprofile-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap}.yprofile-header h1{margin:.4rem 0 .6rem;font-size:var(--text-2xl);font-weight:900;color:var(--text)}.yprofile-chat-link{flex-shrink:0;text-decoration:none}.yprofile-content{display:flex;flex-direction:column;gap:var(--space-4)}.yprofile-meta-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--surface-soft);border-radius:1rem;border:1px solid var(--border)}.yprofile-meta-label{font-size:var(--text-sm);font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;flex-shrink:0}.yprofile-meta-value{font-size:var(--text-base);color:var(--text);font-weight:700}.yprofile-insights{border-radius:2rem;padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-5)}.yprofile-section-title{margin:0;font-size:var(--text-lg);font-weight:900;color:var(--text)}.yprofile-insight-list{display:flex;flex-direction:column;gap:var(--space-2)}.yprofile-insight-row{display:grid;grid-template-columns:minmax(120px,180px) 1fr auto;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:.75rem;background:var(--surface-alt);border:1px solid var(--border)}.yprofile-insight-key{font-size:var(--text-sm);font-weight:800;color:var(--primary);text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.yprofile-insight-value{font-size:var(--text-base);color:var(--text);font-weight:700}.yprofile-insight-value-btn{background:none;border:none;padding:var(--space-1) var(--space-2);margin:calc(-1 * var(--space-1)) calc(-1 * var(--space-2));font-size:var(--text-base);font-weight:700;color:var(--text);text-align:left;cursor:text;min-height:unset;width:100%;border-radius:.4rem;transition:background .12s ease}.yprofile-insight-value-btn:hover:not(:disabled){background:#820ad10f}.yprofile-insight-edit-input{width:100%;padding:var(--space-1) var(--space-2);border:1px solid var(--primary);border-radius:.4rem;font-size:var(--text-base);font-weight:700;color:var(--text);background:#fff;box-shadow:0 0 0 3px #820ad11f;outline:none}.yprofile-insight-delete{background:none;border:none;color:var(--muted);font-size:var(--text-lg);font-weight:700;line-height:1;padding:0 var(--space-2);min-height:unset;cursor:pointer;transition:color .15s ease}.yprofile-insight-delete:hover:not(:disabled){color:#b42318}.yprofile-insight-delete:disabled{opacity:.4}.yprofile-add-section{border-top:1px solid var(--border);padding-top:var(--space-5);display:flex;flex-direction:column;gap:var(--space-3)}.yprofile-add-title{margin:0;font-size:var(--text-base);font-weight:900;color:var(--text)}.yprofile-add-form{display:flex;flex-direction:column;gap:var(--space-3)}.yprofile-add-fields{display:grid;grid-template-columns:1fr 2fr;gap:var(--space-3)}.yprofile-add-label{display:flex;flex-direction:column;gap:var(--space-1);font-size:var(--text-sm);font-weight:800;color:var(--muted)}.yprofile-add-input{padding:var(--space-3) var(--space-4);border:1px solid var(--border-strong);border-radius:.75rem;font-size:var(--text-base);color:var(--text);background:#fff;transition:border-color .15s ease,box-shadow .15s ease}.yprofile-add-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #820ad11f}.yprofile-empty-state{border-radius:2rem;padding:var(--space-8);display:flex;flex-direction:column;align-items:center;gap:var(--space-5);text-align:center}.yprofile-empty-text{margin:0;color:var(--muted);font-size:var(--text-md);max-width:36ch;line-height:1.6}.yprofile-empty{color:var(--muted);font-size:var(--text-base)}.yprofile-preferences{border-radius:2rem;padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-4)}.toggle-label{display:flex;align-items:center;gap:var(--space-3);font-size:var(--text-base);font-weight:600;color:var(--text);cursor:pointer}.toggle-label input[type=checkbox]{width:1.1rem;height:1.1rem;accent-color:var(--primary);cursor:pointer}.toggle-label input[type=checkbox]:disabled{opacity:.5;cursor:not-allowed}.yara-nudge{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4) var(--space-5);background:var(--primary-soft);border:1px solid rgba(130,10,209,.25);border-radius:1.25rem;flex-wrap:wrap}.yara-nudge-content{display:flex;align-items:center;gap:var(--space-3);flex:1;min-width:0}.yara-nudge-avatar{flex-shrink:0;width:2.25rem;height:2.25rem;border-radius:50%;background:linear-gradient(135deg,var(--primary),#a53ce2);color:#fff;font-size:var(--text-sm);font-weight:900;display:flex;align-items:center;justify-content:center}.yara-nudge-text{margin:0;font-size:var(--text-sm);color:var(--text);line-height:1.5}.yara-nudge-actions{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.yara-nudge-cta{text-decoration:none;font-size:var(--text-sm);min-height:2.5rem;padding:0 var(--space-4)}.yara-nudge-dismiss{background:none;border:none;color:var(--muted);font-size:var(--text-xl);font-weight:700;line-height:1;padding:0 var(--space-2);min-height:unset;cursor:pointer;transition:color .15s ease}.yara-nudge-dismiss:hover{color:var(--text)}@media(max-width:640px){.yprofile-add-fields{grid-template-columns:1fr}.yprofile-insight-row{grid-template-columns:1fr auto;grid-template-rows:auto auto}.yprofile-insight-key{grid-column:1;grid-row:1}.yprofile-insight-value{grid-column:1;grid-row:2}.yprofile-insight-delete{grid-column:2;grid-row:1 / 3}}.admin-login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:var(--space-4)}.admin-login-panel{width:min(440px,100%);background:var(--surface);border:1px solid var(--border);border-radius:2rem;padding:var(--space-8);box-shadow:var(--shadow-lg)}.admin-login-panel h1{font-size:var(--text-xl);font-weight:900;color:var(--text);margin:0 0 var(--space-2)}.admin-login-panel .lead{color:var(--muted);margin:0 0 var(--space-6)}.admin-login-tabs{display:flex;gap:var(--space-2);margin-bottom:var(--space-6)}.admin-login-tab{flex:1;padding:var(--space-2) var(--space-4);border:1px solid var(--border);border-radius:999px;background:none;color:var(--muted);font-size:var(--text-sm);font-weight:700;font-family:inherit;cursor:pointer;transition:all .18s ease}.admin-login-tab.active{background:var(--primary);border-color:var(--primary);color:#fff}.form-group{margin-bottom:var(--space-4)}.form-group label{display:block;font-size:var(--text-sm);font-weight:700;color:var(--text);margin-bottom:var(--space-1)}.form-group input{width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:.75rem;font-size:var(--text-base);font-family:inherit;color:var(--text);background:#fff;transition:border-color .18s ease}.form-group input:focus{outline:none;border-color:var(--primary)}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:var(--space-3) var(--space-6);background:var(--primary);color:#fff;border:none;border-radius:999px;font-size:var(--text-base);font-weight:800;font-family:inherit;cursor:pointer;transition:background .18s ease}.btn-primary:hover{background:var(--primary-dark)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-outline{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:var(--space-2) var(--space-5);background:none;color:var(--primary);border:1px solid var(--border);border-radius:999px;font-size:var(--text-sm);font-weight:700;font-family:inherit;cursor:pointer;transition:all .18s ease}.btn-outline:hover{background:var(--highlight);border-color:var(--primary)}.btn-danger{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:var(--space-2) var(--space-5);background:#e05555;color:#fff;border:none;border-radius:999px;font-size:var(--text-sm);font-weight:700;font-family:inherit;cursor:pointer;transition:background .18s ease}.btn-danger:hover{background:#c53030}.form-error{color:#e05555;font-size:var(--text-sm);font-weight:700;margin-top:var(--space-2)}.form-success{color:#0f7a4c;font-size:var(--text-sm);font-weight:700;margin-top:var(--space-2)}.admin-header{position:sticky;top:0;z-index:100;background:#fcfaffe0;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);padding-block:var(--space-5);padding-inline:max(var(--space-4),env(safe-area-inset-left))}.admin-nav-groups{flex:1;min-width:0;display:flex;gap:var(--space-3);align-items:center;justify-content:center}.admin-nav-group{position:relative}.admin-nav-group-btn{gap:.4rem;background:transparent;cursor:pointer;font-family:inherit}.admin-nav-chev{transition:transform .18s ease}.admin-nav-group-btn[aria-expanded=true] .admin-nav-chev{transform:rotate(180deg)}.admin-nav-crumb{color:var(--primary);font-weight:800}.admin-nav-menu{position:absolute;top:calc(100% + var(--space-2));left:50%;transform:translate(-50%);min-width:220px;background:#fff;border:1px solid var(--border);border-radius:var(--radius-banner);box-shadow:var(--shadow-lg);padding:var(--space-2);display:flex;flex-direction:column;gap:var(--space-1);z-index:120}.admin-nav-menu-link{display:flex;align-items:center;min-height:44px;padding:0 var(--space-4);border-radius:14px;color:var(--text);font-size:var(--text-sm);font-weight:800;text-decoration:none;border:1px solid transparent}.admin-nav-menu-link:hover{background:var(--highlight)}.admin-nav-menu-link.active{background:var(--primary-soft);color:var(--primary);border-color:#820ad14d}.admin-id-cluster{display:flex;align-items:center;gap:var(--space-3);flex-shrink:0}.admin-id-name{color:var(--muted);font-weight:700;font-size:var(--text-sm);white-space:nowrap}.admin-nav-pill{display:inline-flex;align-items:center;min-height:44px;padding:0 var(--space-5);border-radius:999px;border:1px solid transparent;color:var(--text);font-size:var(--text-sm);font-weight:700;text-decoration:none;transition:transform .18s ease,background .18s ease;white-space:nowrap}.admin-nav-pill:hover{transform:translateY(-1px);background:#ffffffb3}.admin-nav-pill.active{background:#ffffffd9;border-color:var(--border)}.admin-nav-signout{background:var(--primary-soft);border-color:#820ad14d;color:var(--primary);cursor:pointer;font-family:inherit}.admin-badge{font-size:.65rem;font-weight:800;padding:.15rem .5rem;border-radius:4px;text-transform:uppercase;letter-spacing:.06em;background:var(--primary-soft);color:var(--primary);margin-left:var(--space-2)}.admin-content{width:100%;max-width:1200px;margin:0 auto;padding:var(--space-6) var(--space-4)}@media(min-width:640px){.admin-content{padding:var(--space-7) var(--space-6)}}@media(min-width:1024px){.admin-content{padding:var(--space-8) var(--space-8)}}.admin-page-title{font-size:var(--text-2xl);font-weight:900;color:var(--text);margin:0 0 var(--space-6)}.admin-table-wrapper{background:var(--surface);border:1px solid var(--border);border-radius:2rem;overflow-x:auto;-webkit-overflow-scrolling:touch}.admin-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.admin-table th{text-align:left;padding:var(--space-3) var(--space-4);font-weight:800;color:var(--text);border-bottom:1px solid var(--border);background:var(--surface-alt);white-space:nowrap}.admin-table th button{background:none;border:none;font:inherit;color:inherit;cursor:pointer;padding:0;font-weight:800}.admin-table td{padding:var(--space-3) var(--space-4);color:var(--body);border-bottom:1px solid var(--border);vertical-align:middle}.admin-table tr:last-child td{border-bottom:none}.admin-table tr:hover td{background:var(--highlight)}.admin-table a{color:var(--primary);text-decoration:none;font-weight:700}.admin-table a:hover{text-decoration:underline}@media(max-width:640px){.admin-content div:has(>.admin-page-title){flex-wrap:wrap}.billing-job-summary{grid-template-columns:1fr!important;gap:var(--space-4)!important}}@media(max-width:640px){.admin-table-wrapper--cards{background:transparent;border:none;border-radius:0;overflow:visible}.admin-table--cards,.admin-table--cards thead,.admin-table--cards tbody,.admin-table--cards tr,.admin-table--cards td{display:block;width:100%}.admin-table--cards thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.admin-table--cards tbody tr{background:var(--surface);border:1px solid var(--border);border-radius:1rem;box-shadow:var(--shadow-sm);margin-bottom:var(--space-3);padding:var(--space-2) var(--space-4)}.admin-table--cards tbody tr:hover td{background:transparent}.admin-table--cards tbody td{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-2) 0;border:none;border-bottom:1px dashed var(--border);min-width:0;overflow-wrap:anywhere;text-align:right}.admin-table--cards tbody td:last-child{border-bottom:none}.admin-table--cards tbody td:before{content:attr(data-label);flex:0 0 auto;text-align:left;font-size:var(--text-xs);font-weight:900;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.admin-table--cards tbody td.admin-table-checkbox-col{justify-content:flex-start}.admin-table--cards tbody td a{min-height:0!important}.admin-table--cards tbody td[data-label=""]:before,.admin-table--cards tbody td:not([data-label]):before{content:none}}.status-badge{display:inline-block;padding:.1rem .5rem;border-radius:4px;font-size:var(--text-xs);font-weight:800;text-transform:uppercase;letter-spacing:.04em}.status-badge-enabled{background:#e6f6ef;color:#0f7a4c}.status-badge-disabled{background:#fde8e8;color:#c53030}.status-badge-active{background:#e6f6ef;color:#0f7a4c}.status-badge-inactive{background:#fde8e8;color:#c53030}.status-badge-verified{background:#e6f6ef;color:#0f7a4c}.status-badge-unverified{background:#fef3cd;color:#856404}.status-badge-password{background:#efe0fb;color:#4c0677}.status-badge-social{background:#fef3e2;color:#92610a}.status-badge-subscribed{background:#e6f6ef;color:#0f7a4c}.status-badge-unsubscribed{background:#fef3cd;color:#856404}.admin-search{display:flex;gap:var(--space-3);margin-bottom:var(--space-4)}.admin-search input{flex:1;padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:999px;font-size:var(--text-sm);font-family:inherit;color:var(--text)}.admin-search input:focus{outline:none;border-color:var(--primary)}.admin-pagination{display:flex;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-4);font-size:var(--text-sm);color:var(--muted)}.admin-pagination button{padding:var(--space-2) var(--space-4);border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--body);font-size:var(--text-xs);font-weight:700;font-family:inherit;cursor:pointer}.admin-pagination button:disabled{opacity:.4;cursor:not-allowed}.admin-bulk-toolbar{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-5);background:var(--primary-soft);border:1px solid rgba(130,10,209,.3);border-radius:1.25rem;margin-bottom:var(--space-3);gap:var(--space-3);flex-wrap:wrap}.admin-bulk-toolbar-info{display:flex;align-items:center;gap:var(--space-3);font-size:var(--text-sm);color:var(--text);flex-wrap:wrap}.admin-bulk-toolbar-count{font-weight:900;color:var(--primary-dark)}.admin-bulk-toolbar-clear{background:none;border:none;font:inherit;font-weight:700;font-size:var(--text-sm);color:var(--primary);cursor:pointer;text-decoration:underline;padding:0;min-height:unset}.admin-bulk-toolbar-action{padding:var(--space-2) var(--space-5);background:linear-gradient(135deg,var(--primary),#a53ce2);color:#fff;border:none;border-radius:999px;font:inherit;font-weight:800;font-size:var(--text-sm);cursor:pointer;min-height:2.6rem}.admin-bulk-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#22112e80;display:grid;place-items:center;z-index:100;padding:var(--space-4)}.admin-bulk-modal-dialog{width:min(560px,100%);padding:var(--space-8);border-radius:2rem;background:#fff;border:1px solid var(--border);box-shadow:var(--shadow-sm);display:grid;gap:var(--space-4)}.admin-bulk-modal-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4)}.admin-bulk-modal-header-text{display:grid;gap:var(--space-2)}.admin-bulk-modal-eyebrow{font-size:var(--text-xs);font-weight:900;letter-spacing:.28em;text-transform:uppercase;color:var(--primary);margin:0}.admin-bulk-modal-heading{font-size:var(--text-xl);font-weight:900;color:var(--text);margin:0}.admin-bulk-modal-close{background:none;border:none;color:var(--muted);font-size:1.4rem;cursor:pointer;padding:0;min-height:2rem;min-width:2rem}.admin-bulk-modal-field{display:grid;gap:var(--space-2)}.admin-bulk-modal-field-label{font-size:var(--text-sm);font-weight:800;color:var(--text)}.admin-bulk-modal-select{padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:1rem;background:#fff;color:var(--text);font:inherit;font-size:var(--text-sm);-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.admin-bulk-modal-template-hint{font-size:var(--text-xs);font-weight:700;color:var(--muted);margin:0}.admin-bulk-modal-recipients{background:var(--highlight);padding:var(--space-3) var(--space-4);border-radius:1rem;font-size:var(--text-sm);color:var(--text)}.admin-bulk-modal-warning{font-size:var(--text-sm);color:#856404;background:#fef3cd;padding:var(--space-3) var(--space-4);border-radius:1rem;margin:0}.admin-bulk-modal-warning--error{background:#fde8e8;color:#c53030}.admin-bulk-modal-actions{display:flex;gap:var(--space-3);justify-content:flex-end;margin-top:var(--space-3);flex-wrap:wrap}.admin-bulk-modal-cancel{padding:0 var(--space-5);min-height:3.2rem;background:#fff;color:var(--text);border:1px solid var(--border);border-radius:999px;font:inherit;font-weight:800;cursor:pointer}.admin-bulk-modal-send{padding:0 var(--space-5);min-height:3.2rem;background:linear-gradient(135deg,var(--primary),#a53ce2);color:#fff;border:none;border-radius:999px;font:inherit;font-weight:800;cursor:pointer}.admin-bulk-modal-send:disabled{opacity:.6;cursor:not-allowed}.admin-bulk-result-panel{padding:var(--space-6) var(--space-8);border-radius:2rem;background:var(--surface);border:1px solid var(--border);display:grid;gap:var(--space-4);margin-bottom:var(--space-4)}.admin-bulk-result-summary{display:flex;gap:var(--space-6);align-items:center;flex-wrap:wrap}.admin-bulk-result-count{display:flex;align-items:baseline;gap:var(--space-2)}.admin-bulk-result-count-num{font-size:var(--text-2xl);font-weight:900;color:var(--text)}.admin-bulk-result-count-label{font-size:var(--text-sm);font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.admin-bulk-result-count-num--sent{color:#0f7a4c}.admin-bulk-result-count-num--skipped{color:#856404}.admin-bulk-result-count-num--failed{color:#c53030}.admin-bulk-result-breakdown{display:flex;gap:var(--space-2);flex-wrap:wrap;align-items:center;font-size:var(--text-xs);color:var(--muted);font-weight:700}.admin-bulk-result-details summary{cursor:pointer;font-size:var(--text-sm);font-weight:800;color:var(--primary);padding:var(--space-2) 0}.admin-bulk-result-details-list{list-style:none;margin:var(--space-2) 0 0;padding:0;display:grid;gap:var(--space-2)}.admin-bulk-result-details-list li{padding:var(--space-2) var(--space-3);background:var(--highlight);border-radius:.6rem;font-size:var(--text-sm);display:flex;justify-content:space-between;gap:var(--space-3)}.reason-pill{display:inline-flex;align-items:center;padding:.18rem .65rem;border-radius:999px;font-size:var(--text-xs);font-weight:800;background:var(--surface-alt);color:var(--muted)}.reason-pill--opted-out{background:#fef3cd;color:#856404}.reason-pill--no-content{background:var(--surface-alt);color:var(--muted)}.reason-pill--already-sent{background:var(--primary-soft);color:var(--primary)}.admin-bulk-result-dismiss{align-self:flex-end;padding:var(--space-2) var(--space-5);background:none;color:var(--primary);border:1px solid rgba(130,10,209,.3);border-radius:999px;font:inherit;font-weight:800;font-size:var(--text-sm);cursor:pointer}.admin-table th.admin-table-checkbox-col,.admin-table td.admin-table-checkbox-col{width:2.5rem;padding-right:0}.admin-table input[type=checkbox]{width:1.1rem;height:1.1rem;accent-color:var(--primary);cursor:pointer}.admin-detail-section{background:var(--surface);border:1px solid var(--border);border-radius:2rem;padding:var(--space-6);margin-bottom:var(--space-4)}.admin-detail-section h2{font-size:var(--text-lg);font-weight:900;color:var(--text);margin:0 0 var(--space-4)}.admin-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4)}.admin-detail-field label{display:block;font-size:var(--text-xs);font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:var(--space-1)}.admin-detail-field span{font-size:var(--text-base);color:var(--text);font-weight:700}.admin-identity-row{display:flex;align-items:center;gap:var(--space-5);margin-bottom:var(--space-6);padding-bottom:var(--space-6);border-bottom:1px solid var(--border)}.admin-avatar{width:72px;height:72px;border-radius:999px;flex:0 0 auto;object-fit:cover;border:2px solid var(--border-strong)}.admin-avatar--initials{display:flex;align-items:center;justify-content:center;background:var(--surface-alt);color:var(--primary-dark);font-weight:900;font-size:var(--text-2xl)}.admin-identity-meta .admin-identity-name{font-size:var(--text-lg);font-weight:900;color:var(--text)}.admin-identity-meta .admin-identity-email{font-size:var(--text-sm);color:var(--muted);font-weight:700}.admin-identity-chips{display:flex;gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap}.admin-detail-muted{color:var(--muted);font-weight:700}.admin-breadcrumb{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--muted);margin-bottom:var(--space-4)}.admin-breadcrumb a{color:var(--primary);text-decoration:none;font-weight:700}.admin-breadcrumb a:hover{text-decoration:underline}.admin-dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#22112e80;display:flex;align-items:center;justify-content:center;z-index:200}.admin-dialog{width:min(440px,calc(100% - 2rem));background:var(--surface);border:1px solid var(--border);border-radius:2rem;padding:var(--space-8);box-shadow:var(--shadow-lg)}.admin-dialog h2{font-size:var(--text-lg);font-weight:900;color:var(--text);margin:0 0 var(--space-2)}.admin-dialog p{color:var(--body);margin:0 0 var(--space-6)}.admin-dialog-actions{display:flex;gap:var(--space-3);justify-content:flex-end}.admin-lesson-lines{list-style:none;padding:0;margin:0}.admin-lesson-lines li{padding:var(--space-3) 0;border-bottom:1px solid var(--border)}.admin-lesson-lines li:last-child{border-bottom:none}.admin-lesson-line-target{font-weight:700;color:var(--text)}.admin-lesson-line-native{color:var(--muted);font-size:var(--text-sm)}.admin-lesson-vocab{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--space-3);margin-top:var(--space-3)}.admin-lesson-vocab-card{background:var(--surface-alt);border:1px solid var(--border);border-radius:1rem;padding:var(--space-3)}.admin-lesson-vocab-term{font-weight:800;color:var(--text)}.admin-lesson-vocab-translation{color:var(--primary);font-size:var(--text-sm)}.admin-lesson-vocab-example{color:var(--muted);font-size:var(--text-xs);font-style:italic;margin-top:var(--space-1)}.admin-lesson-audio-featured{background:var(--surface-alt);border:1px solid var(--border);border-radius:1rem;padding:var(--space-3) var(--space-4);margin-bottom:var(--space-3);display:flex;flex-direction:column;gap:var(--space-1)}.admin-lesson-audio-featured-label{font-size:var(--text-xs);font-weight:800;color:var(--primary);text-transform:uppercase;letter-spacing:.06em}.admin-lesson-audio-featured audio{width:100%}.admin-lesson-audio-detail{border-top:1px solid var(--border);margin-top:var(--space-4);padding-top:var(--space-3)}.admin-lesson-audio-detail>summary{cursor:pointer;font-size:var(--text-sm);font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;padding:var(--space-2) 0;list-style:none}.admin-lesson-audio-detail>summary:before{content:"▸ ";font-size:var(--text-xs)}.admin-lesson-audio-detail[open]>summary:before{content:"▾ "}.admin-lesson-audio-row{display:grid;grid-template-columns:160px 1fr;align-items:center;gap:var(--space-4);padding:var(--space-2) 0;border-bottom:1px solid var(--border)}.admin-lesson-audio-row:last-child{border-bottom:none}.admin-lesson-audio-label{font-weight:700;color:var(--text);font-size:var(--text-sm)}.admin-lesson-audio-row audio{width:100%;max-width:460px}.curation-eyebrow{font-size:var(--text-xs);font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--primary);margin:0 0 var(--space-1)}.curation-lead{font-size:var(--text-base);color:var(--muted);margin:0 0 var(--space-6)}.cq-tabs{display:flex;gap:var(--space-2);margin-bottom:var(--space-5);flex-wrap:wrap}.cq-tab{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-5);border-radius:999px;font-size:var(--text-sm);font-weight:800;font-family:inherit;border:1px solid var(--border);background:#fff;color:var(--text);cursor:pointer;transition:all .15s ease}.cq-tab:hover{border-color:var(--border-strong)}.cq-tab--active{background:var(--primary);color:#fff;border-color:var(--primary)}.cq-tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:1.5em;padding:0 .4em;border-radius:999px;font-size:var(--text-xs);font-weight:900;background:var(--primary-soft);color:var(--primary)}.cq-tab--active .cq-tab-count{background:#ffffff47;color:#fff}.cq-toolbar{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center;margin-bottom:var(--space-4)}.cq-search{flex:1 1 280px;min-width:220px;display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:999px;background:#fff}.cq-search input{flex:1;border:none;outline:none;background:transparent;font:inherit;font-size:var(--text-sm);font-weight:700;color:var(--text)}.cq-search svg{flex:0 0 18px;color:var(--muted)}.cq-select{min-height:44px;padding:0 2.4rem 0 var(--space-4);border:1px solid var(--border);border-radius:999px;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%23725f81'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;color:var(--text);font:inherit;font-weight:800;font-size:var(--text-sm);-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;outline:none}.cq-select:focus{border-color:var(--primary)}.cq-count{margin-left:auto;font-size:var(--text-sm);font-weight:800;color:var(--muted)}.cq-table-wrapper{background:var(--surface);border:1px solid var(--border);border-radius:1.5rem;overflow-x:auto}.cq-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.cq-table thead th{text-align:left;padding:var(--space-3) var(--space-4);font-weight:800;color:var(--text);white-space:nowrap;background:var(--surface-alt);border-bottom:1px solid var(--border)}.cq-table tbody td{padding:var(--space-3) var(--space-4);color:var(--body);border-bottom:1px solid var(--border);vertical-align:middle}.cq-table tbody tr.cq-data-row:hover td,.cq-table tr.cq-open td{background:var(--highlight)}.cq-col-actions{text-align:right;white-space:nowrap}@media(min-width:861px){.cq-table td.cq-cell-lesson{min-width:14rem}.cq-table td[data-label=Tags]{max-width:17rem}.cq-table td[data-label=Tags] .cq-pill{white-space:normal}}.cq-lesson{display:flex;flex-direction:column;gap:.1rem;min-width:0}.cq-lesson-title{font-size:var(--text-base);font-weight:900;color:var(--text);line-height:1.25}.cq-lesson-native{font-size:var(--text-sm);font-weight:700;color:var(--muted);line-height:1.3}.cq-langpair{display:inline-flex;align-items:center;gap:var(--space-2);font-weight:800;color:var(--text);font-size:var(--text-xs);white-space:nowrap}.cq-langpair-arrow{color:var(--muted)}.cq-level{display:inline-flex;align-items:center;justify-content:center;min-width:2.2rem;padding:.1rem .5rem;border-radius:6px;background:var(--surface-alt);color:var(--text);font-size:var(--text-xs);font-weight:900}.cq-pill{display:inline-block;padding:.15rem .55rem;border-radius:4px;font-size:var(--text-xs);font-weight:700;background:var(--surface-alt);color:var(--body);white-space:nowrap}.cq-pill--theme{background:#e6f0ff;color:#1a5abf}.cq-pill--category{background:#f0e6ff;color:#7a2dbf}.cq-badge{display:inline-block;padding:.1rem .5rem;border-radius:4px;font-size:var(--text-xs);font-weight:800;text-transform:uppercase;letter-spacing:.04em}.cq-badge--passed{background:#e6f6ef;color:#0f7a4c}.cq-badge--error{background:#fef3cd;color:#856404}.cq-badge--failed{background:#fde8e8;color:#c53030}.cq-tier{display:inline-flex;align-items:center;gap:.3rem;padding:.15rem .6rem;border-radius:999px;font-size:var(--text-xs);font-weight:900}.cq-tier:before{content:"";width:.5rem;height:.5rem;border-radius:50%;background:currentColor}.cq-tier--free{background:#e6f6ef;color:var(--tier-free)}.cq-tier--learner{background:var(--primary-soft);color:var(--tier-learner)}.cq-tier--master{background:var(--tier-master);color:#fff}.cq-tier--reviewed{background:var(--surface-alt);color:var(--muted)}.cq-tier--none{background:transparent;color:var(--muted);border:1px dashed var(--border-strong)}.cq-tier--none:before{display:none}.tier-fill--free{background:var(--tier-free)}.tier-fill--learner{background:var(--tier-learner)}.tier-fill--master{background:var(--tier-master)}.tier-fill--reviewed{background:var(--tier-reviewed)}.admin-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.cov-sub{font-size:var(--text-xs);color:var(--muted);font-weight:700;margin:0 0 var(--space-4)}.cov-summary{display:grid;grid-template-columns:auto 1fr;gap:var(--space-6);align-items:center}.cov-total{display:grid;gap:.15rem}.cov-total-num{font-size:var(--text-2xl);font-weight:900;color:var(--text);line-height:1}.cov-total-lbl{font-size:var(--text-xs);font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.cov-bar{display:flex;height:16px;border-radius:999px;overflow:hidden;border:1px solid var(--border);background:var(--surface-alt)}.cov-bar--lg{height:18px}.cov-bar>span{height:100%;box-shadow:inset -1px 0 #ffffff80}.cov-bar>span:last-child{box-shadow:none}.cov-legend{display:flex;flex-wrap:wrap;gap:var(--space-4);margin-top:var(--space-4)}.cov-legend-item{display:inline-flex;align-items:center;gap:.45rem;font-size:var(--text-sm);font-weight:800;color:var(--text)}.cov-dot{width:.7rem;height:.7rem;border-radius:50%;flex-shrink:0}.cov-legend-item small{color:var(--muted);font-weight:700}.cov-note{margin:var(--space-4) 0 0;font-size:var(--text-xs);color:var(--muted);font-weight:700;line-height:1.5}.cov-note b{color:var(--text)}.cov-empty-inline{color:var(--muted);font-weight:700;margin:0}.cov-pair-name{font-weight:900;color:var(--text);font-size:var(--text-base)}.cov-pair-arrow{color:var(--muted);margin:0 .25rem}.cov-pair-codes{font-size:var(--text-xs);font-weight:700;color:var(--muted);margin-top:.1rem}.cov-breakdown{list-style:none;margin:.55rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.15rem var(--space-4);font-size:var(--text-xs);font-weight:800;color:var(--muted)}.cov-breakdown li{display:inline-flex;align-items:center;gap:.4rem}.cov-breakdown b{color:var(--text)}.cov-total-cell{text-align:right;font-weight:900;color:var(--text);font-size:var(--text-md);white-space:nowrap}.cov-th-num{text-align:right}.cov-col-dist{width:52%}.cov-empty{background:var(--surface);border:1px solid var(--border);border-radius:1.5rem;padding:var(--space-12);text-align:center}.cov-empty p{color:var(--muted);font-weight:700;margin:0}.cov-footer{font-size:var(--text-xs);color:var(--muted);font-weight:700;margin:var(--space-3) 0 0}@media(max-width:640px){.cov-summary{grid-template-columns:1fr}.admin-table--cards td[data-label="Distribution by tier"]{flex-direction:column;align-items:stretch;text-align:left}.admin-table--cards td[data-label="Distribution by tier"]:before{margin-bottom:var(--space-1)}}.cq-tier-pick{display:inline-flex;gap:var(--space-2);flex-wrap:wrap}.cq-tier-chip{padding:.3rem .7rem;border-radius:999px;font-size:var(--text-xs);font-weight:800;font-family:inherit;border:1.5px solid var(--border);background:#fff;color:var(--text);cursor:pointer;transition:all .12s ease}.cq-tier-chip:hover{border-color:var(--border-strong)}.cq-tier-chip--selected{border-color:var(--primary);background:var(--highlight);color:var(--primary)}.cq-quick{display:inline-flex;gap:.3rem;flex-wrap:nowrap;white-space:nowrap}.cq-quick .cq-tier-chip{padding:.2rem .55rem;font-size:.7rem;white-space:nowrap}.cq-quick .cq-tier-chip:disabled{opacity:.5;cursor:progress}.cq-btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:2.6rem;padding:0 var(--space-4);border-radius:999px;font:inherit;font-weight:800;font-size:var(--text-sm);cursor:pointer;border:1px solid transparent;transition:all .15s ease}.cq-btn--primary{background:linear-gradient(135deg,var(--primary),#a53ce2);color:#fff}.cq-btn--primary:disabled{opacity:.45;cursor:not-allowed}.cq-btn--ghost{background:#fff;border-color:var(--border);color:var(--primary)}.cq-btn--ghost:hover{background:var(--highlight);border-color:var(--primary)}.cq-btn--danger{background:#fff;border-color:var(--border);color:var(--destructive, #b42318)}.cq-btn--danger:hover{background:var(--destructive-soft, #fef2f0);border-color:var(--destructive, #b42318)}.cq-btn--sm{min-height:2.2rem;padding:0 var(--space-3);font-size:var(--text-xs)}.cq-inspect svg{transition:transform .2s ease}.cq-inspect[aria-expanded=true] svg{transform:rotate(180deg)}.cq-drawer-row>td{padding:0;background:var(--surface-alt)}.cq-inline{padding:var(--space-6);border-top:2px solid var(--primary-soft);display:grid;gap:var(--space-5)}.cq-inline-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(240px,1fr);gap:var(--space-6);align-items:start}.cq-inline-side{display:grid;gap:var(--space-4);align-content:start}.cq-inline-loading{color:var(--muted);font-weight:700;padding:var(--space-2) 0}@media(max-width:900px){.cq-inline-grid{grid-template-columns:1fr}}.cq-section-label{font-size:var(--text-xs);font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0 0 var(--space-2)}.cq-lines{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-2)}.cq-line{display:grid;gap:.15rem;padding:var(--space-3) var(--space-4);border-radius:1rem;background:#fff;border:1px solid var(--border)}.cq-line-target{font-size:var(--text-base);font-weight:800;color:var(--text);line-height:1.45}.cq-line-native{font-size:var(--text-sm);color:var(--muted);line-height:1.4}.cq-vocab{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-2)}.cq-vocab-card{padding:var(--space-3);border-radius:.9rem;background:#fff;border:1px solid var(--border)}.cq-vocab-term{font-weight:900;color:var(--text)}.cq-vocab-trans{font-size:var(--text-sm);color:var(--primary);font-weight:700}.cq-audio-block{display:grid;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--highlight);border:1px solid var(--border);border-radius:1.25rem}.cq-audio-block audio{width:100%}.cq-audio-label{font-size:var(--text-xs);font-weight:900;letter-spacing:.04em;text-transform:uppercase;color:var(--primary)}.cq-audio-none{font-size:var(--text-sm);color:var(--muted);font-weight:700}.cq-tier-action{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-4);border-radius:1.25rem;background:var(--surface-alt);border:1px solid var(--border)}.cq-tier-action--side{flex-direction:column;align-items:stretch}.cq-tier-action-label{font-size:var(--text-sm);font-weight:900;color:var(--text)}.cq-tier-action-spacer{flex:1}.cq-hint{margin:0;font-size:var(--text-xs);color:var(--muted);font-weight:700}.cq-feedback{margin:var(--space-2) 0 0;font-size:var(--text-sm);font-weight:800}.cq-feedback--success{color:#0f7a4c}.cq-feedback--error{color:var(--destructive, #b42318)}@media(max-width:860px){.cq-toolbar .cq-search{flex:1 1 100%}.cq-toolbar .cq-select{flex:1 1 calc(50% - var(--space-2))}.cq-count{display:none}.cq-table-wrapper{border:none;background:transparent;border-radius:0;overflow:visible}.cq-table,.cq-table tbody,.cq-table tr,.cq-table td{display:block;width:100%}.cq-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.cq-table tr.cq-data-row{background:var(--surface);border:1px solid var(--border);border-radius:1.25rem;box-shadow:var(--shadow-sm);margin-bottom:var(--space-3);padding:var(--space-2) var(--space-4)}.cq-table tr.cq-data-row:hover td{background:transparent}.cq-table tr.cq-data-row td{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-2) 0;border-bottom:1px dashed var(--border);text-align:right}.cq-table tr.cq-data-row td:last-child{border-bottom:none}.cq-table tr.cq-data-row td:before{content:attr(data-label);flex:0 0 auto;text-align:left;font-size:var(--text-xs);font-weight:900;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.cq-table td.cq-cell-lesson{flex-direction:column;align-items:flex-start;text-align:left;padding-top:var(--space-3)}.cq-table td.cq-cell-lesson:before{display:none}.cq-table td.cq-cell-block{flex-direction:column;align-items:stretch;text-align:left}.cq-table tr.cq-data-row td[data-label=Tags]{flex-direction:column;align-items:flex-start;text-align:left;gap:.35rem}.cq-table tr.cq-data-row td[data-label=Tags] .cq-pill{white-space:normal;overflow-wrap:anywhere}.cq-table tr.cq-data-row td{min-width:0}.cq-langpair{flex-wrap:wrap;justify-content:flex-end}.cq-table tr.cq-drawer-row{margin:0 0 var(--space-3)}.cq-table tr.cq-drawer-row>td{display:block;padding:0;border:none;text-align:left}.cq-table tr.cq-data-row.cq-open{margin-bottom:0;border-bottom-left-radius:0;border-bottom-right-radius:0}.cq-inline{padding:var(--space-4);border:1px solid var(--border);border-radius:0 0 1.25rem 1.25rem}}.section-divider{border:none;border-top:1px solid var(--border);margin:var(--space-6) 0}.plan-chips{display:flex;gap:var(--space-2);margin-bottom:var(--space-4)}.plan-chip{flex:1;max-width:160px;padding:var(--space-3);border-radius:.75rem;font-size:var(--text-sm);font-weight:800;font-family:inherit;text-align:center;border:2px solid var(--border);cursor:pointer;background:#fff;transition:all .15s ease}.plan-chip:hover{border-color:var(--primary);background:var(--highlight)}.plan-chip--selected{border-color:var(--primary);background:var(--highlight);color:var(--primary)}.plan-chip-label{display:block;font-size:var(--text-xs);color:var(--muted);font-weight:700;margin-top:2px}.plan-chip--selected .plan-chip-label{color:var(--primary)}.plan-override-row{display:flex;align-items:flex-end;gap:var(--space-4);margin-bottom:var(--space-4)}.plan-override-field{display:flex;flex-direction:column;gap:var(--space-1)}.plan-override-field label{font-size:var(--text-xs);font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.plan-override-field input,.plan-override-field textarea{padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:.75rem;font-size:var(--text-base);font-family:inherit;color:var(--text)}.plan-override-field input:focus,.plan-override-field textarea:focus{outline:none;border-color:var(--primary)}.sticky-toggle{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-4)}.sticky-toggle input[type=checkbox]{width:18px;height:18px;accent-color:var(--primary);cursor:pointer}.sticky-toggle label{font-size:var(--text-sm);font-weight:700;color:var(--text);cursor:pointer}.sticky-toggle .hint{font-size:var(--text-xs);color:var(--muted);font-weight:400}.plan-override-actions{display:flex;justify-content:flex-end;align-items:center;gap:var(--space-3)}.plan-section-heading{font-size:var(--text-sm);font-weight:900;color:var(--text);margin:0 0 var(--space-3)}@media(max-width:640px){.admin-table{font-size:var(--text-xs)}.form-group input,.admin-search input,.la-search input,.la-filter select,.admin-bulk-modal-select,.plan-override-field input,.plan-override-field textarea,input[type=text],input[type=email],input[type=number],input[type=search],input[type=url],input[type=date],input[type=datetime-local],select,textarea{font-size:16px}}@media(max-width:600px){.admin-detail-grid{grid-template-columns:1fr}}.plan-override-row{flex-wrap:wrap}@media(max-width:600px){.plan-override-row{flex-direction:column;align-items:stretch}.plan-override-field input,.plan-override-field textarea{width:100%}}@media(max-width:480px){.la-search{flex:1 1 100%;min-width:0}}.admin-dialog-overlay,.admin-bulk-modal-overlay,.lpath-modal-overlay{padding:max(var(--space-4),env(safe-area-inset-top)) max(var(--space-4),env(safe-area-inset-right)) max(var(--space-4),env(safe-area-inset-bottom)) max(var(--space-4),env(safe-area-inset-left))}.lpath-modal-card{max-height:88dvh}@media(max-width:1119px){.lpath-bulk-bar{top:calc(64px + var(--space-3))}}@media(max-width:640px){.lpath-bulk-bar{position:static}}.admin-nav-toggle{display:none;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;font-family:inherit}.admin-sheet-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#22112e73;opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:300}.admin-sheet-scrim.open{opacity:1;pointer-events:auto}.admin-sheet{position:fixed;left:0;right:0;bottom:0;max-height:88dvh;background:#fff;border-radius:24px 24px 0 0;box-shadow:0 -16px 40px #22112e2e;transform:translateY(100%);transition:transform .26s cubic-bezier(.2,.8,.2,1);display:none;flex-direction:column;z-index:310;padding-bottom:env(safe-area-inset-bottom);overflow:hidden}.admin-sheet.open{transform:translateY(0)}.admin-sheet-handle-wrap{display:flex;justify-content:center;padding:var(--space-3) 0 var(--space-2);cursor:pointer}.admin-sheet-handle{width:44px;height:5px;border-radius:999px;background:var(--border)}.admin-sheet-identity{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5) var(--space-4);border-bottom:1px solid var(--border)}.admin-sheet-avatar{width:40px;height:40px;border-radius:50%;background:var(--primary);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:900;font-size:var(--text-sm);flex-shrink:0}.admin-sheet-id-text{display:flex;flex-direction:column;flex:1;min-width:0}.admin-sheet-id-name{font-weight:900;color:var(--text);font-size:var(--text-base);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-sheet-id-role{color:var(--muted);font-size:var(--text-xs);font-weight:700}.admin-sheet-signout{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 var(--space-4);border-radius:999px;background:var(--primary-soft);border:1px solid rgba(130,10,209,.3);color:var(--primary);font-weight:800;font-size:var(--text-sm);font-family:inherit;cursor:pointer;white-space:nowrap}.admin-sheet-nav{overflow-y:auto;padding:var(--space-3) var(--space-3) var(--space-4);display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}.admin-sheet-group-label{grid-column:1 / -1;font-size:var(--text-xs);font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding:var(--space-3) var(--space-2) var(--space-1)}.admin-sheet-link{display:flex;align-items:center;justify-content:flex-start;min-height:52px;padding:0 var(--space-4);border-radius:14px;background:var(--surface-alt);color:var(--text);font-size:var(--text-base);font-weight:800;text-decoration:none;border:1px solid transparent}.admin-sheet-link:hover{background:var(--highlight)}.admin-sheet-link.active{background:var(--primary-soft);color:var(--primary);border-color:#820ad14d}@media(max-width:1119px){.admin-nav-groups,.admin-id-cluster{display:none}.admin-nav-toggle{display:inline-flex}.admin-sheet{display:flex}.admin-header{padding-block:var(--space-4)}.admin-header .brand-mark{min-width:0;flex-shrink:1;overflow:hidden}}@media(max-width:380px){.admin-header .admin-badge{display:none}}@media(max-width:380px){.admin-sheet-nav{grid-template-columns:1fr}}.status-badge-audience{background:#efe0fb;color:#4c0677}.status-badge-client{background:#fef3e2;color:#92610a}.status-badge-global{background:#e1f0ff;color:#155199}.status-badge-peroccur{background:#f3e8ff;color:#6b21a8}.status-badge-locked{background:#fde8e8;color:#c53030}.banners-page .banners-definition-header{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);flex-wrap:wrap}.banners-page .banners-definition-key{font-size:var(--text-lg);font-weight:800;color:var(--text);margin:0;margin-right:var(--space-2)}.banners-page .admin-table-wrapper{overflow-x:auto}.banners-page .instance-id{font-family:JetBrains Mono,SF Mono,monospace;font-size:.85em;color:var(--muted)}.banners-page .admin-empty-state{font-size:var(--text-sm);color:var(--muted);font-style:italic}.admin-loading{color:var(--muted);padding:var(--space-4)}.admin-error{color:#c53030;padding:var(--space-4)}.admin-funnel{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4);margin-bottom:var(--space-8)}@media(max-width:860px){.admin-funnel{grid-template-columns:repeat(2,1fr)}}.admin-funnel-card{background:var(--surface, #fff);border:1px solid var(--border, #e5e7eb);border-radius:var(--radius-banner, 1rem);padding:var(--space-5, 1.25rem);box-shadow:var(--shadow-sm, 0 1px 2px rgba(0,0,0,.05))}.admin-funnel-label{font-size:var(--text-xs);color:var(--muted);font-weight:900;letter-spacing:.12em;text-transform:uppercase;margin-bottom:var(--space-2)}.admin-funnel-num{font-size:var(--text-2xl);font-weight:900;color:var(--text);line-height:1;margin-bottom:var(--space-2)}.admin-funnel-delta{font-size:var(--text-xs);color:var(--success, #16a34a);font-weight:800}.admin-funnel-delta.warn{color:var(--destructive, #b42318)}.admin-filter-pills{display:flex;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap}.admin-filter-pill{padding:.45rem .95rem;font-size:var(--text-sm);font-weight:800;border-radius:999px;border:1px solid var(--border);background:#fff;color:var(--text);cursor:pointer;font-family:inherit}.admin-filter-pill:hover{background:var(--surface-alt, #f9fafb)}.admin-filter-pill.active{background:var(--primary-soft, #f3e8ff);color:var(--primary, #7c3aed);border-color:var(--border-strong, #d4d4d8)}.admin-filter-pill-badge{display:inline-block;background:var(--destructive, #b42318);color:#fff;border-radius:999px;padding:1px .45rem;font-size:.65rem;margin-left:.35rem;font-weight:900}.admin-segment-row{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;margin-bottom:var(--space-4)}.admin-segment-row .la-filter{max-width:100%}.admin-segment-hint{font-size:var(--text-xs);font-weight:700;color:var(--primary)}.admin-status-pill{display:inline-flex;align-items:center;gap:.25rem;padding:.18rem .65rem;border-radius:999px;font-size:var(--text-xs);font-weight:800}.admin-status-pill.granted{background:#16a34a1f;color:var(--success, #16a34a)}.admin-status-pill.pending{background:var(--surface-alt, #f3f4f6);color:var(--muted)}.admin-status-pill.stuck{background:#b423181a;color:var(--destructive, #b42318)}.admin-status-pill.cap{background:var(--primary-soft, #f3e8ff);color:var(--primary, #7c3aed)}.admin-status-pill.resolved{background:#f1f5f9;color:#475569}.la-toolbar{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center;margin-bottom:var(--space-4)}.la-search{flex:1 1 280px;min-width:240px;display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:999px;background:#fff}.la-search input{flex:1;border:none;outline:none;background:transparent;font-family:inherit;font-size:var(--text-sm);font-weight:700;color:var(--text)}.la-search svg{flex:0 0 18px;color:var(--muted)}.la-filter{display:inline-flex;align-items:center;gap:var(--space-2);padding:0 var(--space-4);min-height:44px;border:1px solid var(--border);border-radius:999px;background:#fff;color:var(--text);font-family:inherit;font-weight:700;font-size:var(--text-sm)}.la-filter select{border:none;background:transparent;font:inherit;color:inherit;outline:none;font-weight:800}.la-filter-label{color:var(--muted);font-weight:700}.la-lang-select{padding:var(--space-2) var(--space-5);padding-right:2.5rem;min-height:44px;border:1px solid var(--border);border-radius:999px;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%23725f81'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;color:var(--text);font-weight:800;font-size:var(--text-sm);font-family:inherit;-moz-appearance:none;appearance:none;-webkit-appearance:none;cursor:pointer;outline:none}.la-lang-select:focus{border-color:var(--primary)}.la-checkbox{width:18px;height:18px;accent-color:var(--primary);cursor:pointer}.admin-table tr.la-row-selected td,.admin-table tr.la-row-selected:hover td{background:var(--primary-soft)}.kind-badge{display:inline-block;padding:.1rem .5rem;border-radius:4px;font-size:var(--text-xs);font-weight:800;text-transform:uppercase;letter-spacing:.04em}.kind-badge--private{background:var(--surface-alt);color:var(--text)}.kind-badge--shared{background:var(--primary-soft);color:var(--primary)}.status-badge-ready{background:var(--success-soft);color:#0f7a4c}.status-badge-failed{background:var(--destructive-soft);color:var(--destructive)}.status-badge-generating{background:#fef3cd;color:#856404}.status-badge-pending{background:var(--surface-alt);color:var(--muted)}.la-langpair{display:inline-flex;align-items:center;gap:var(--space-2);font-weight:800;color:var(--text);font-size:var(--text-xs);white-space:nowrap}.la-langpair-arrow{color:var(--muted);font-weight:700}.la-row-actions{display:flex;gap:var(--space-2);justify-content:flex-end}.la-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;min-height:36px;border:1px solid var(--border);border-radius:999px;background:#fff;color:var(--muted)}.la-icon-btn:hover{color:var(--text);border-color:var(--border-strong)}.la-icon-btn--danger:hover{color:var(--destructive);border-color:var(--destructive-border);background:var(--destructive-soft)}.la-sort-button{background:none;border:none;font:inherit;color:inherit;cursor:pointer;padding:0;font-weight:800;display:inline-flex;align-items:center;gap:.25rem}.la-bulk-bar{position:fixed;left:50%;bottom:var(--space-6);transform:translate(-50%) translateY(150%);width:min(720px,calc(100% - 2rem));background:var(--surface);border:1px solid var(--border);border-radius:999px;box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);padding:var(--space-3) var(--space-3) var(--space-3) var(--space-6);display:flex;align-items:center;gap:var(--space-4);transition:transform .22s ease;z-index:80}.la-bulk-bar.is-visible{transform:translate(-50%) translateY(0)}.la-bulk-count{font-weight:900;color:var(--text);font-size:var(--text-md)}.la-bulk-count em{color:var(--primary);font-style:normal}.la-bulk-spacer{flex:1}.la-warn-card{background:var(--destructive-soft);border:1px solid var(--destructive-border);border-radius:var(--radius-banner);padding:var(--space-4);margin:0 0 var(--space-4);color:var(--destructive);font-weight:800;font-size:var(--text-sm)}.la-confirm-input{width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:1rem;font-family:inherit;font-size:var(--text-base);color:var(--text);background:#fff;outline:none;font-weight:800;letter-spacing:.08em}.la-confirm-input:focus{border-color:var(--primary)}.la-summary{margin:var(--space-4) 0;padding:var(--space-3) var(--space-4);background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-banner);font-size:var(--text-sm);font-weight:700;color:var(--body)}.la-summary--error{background:var(--destructive-soft);border-color:var(--destructive-border);color:var(--destructive)}.country-rows{display:flex;flex-direction:column;gap:var(--space-2)}.country-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:.75rem;background:#fff;border:1px solid var(--border)}.country-row .country-chip{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-width:3rem;padding:.25rem .7rem;border-radius:999px;background:var(--surface-soft);color:var(--text);font-weight:700;font-size:var(--text-sm);border:1px solid var(--border-strong)}.country-row-methods{flex:1 1 auto;display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.method-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.15rem .5rem .15rem .6rem;border-radius:999px;background:#fff;color:var(--primary-dark);font-family:SF Mono,Consolas,monospace;font-size:.78rem;border:1px solid var(--primary-soft)}.method-chip-x{background:transparent;border:none;cursor:pointer;color:var(--muted);font-weight:700;line-height:1;padding:0;font-size:.95rem}.method-chip-x:hover{color:var(--primary-dark)}.add-method-btn{display:inline-flex;align-items:center;padding:.15rem .6rem;border-radius:999px;background:transparent;color:var(--primary);font-size:.78rem;border:1px dashed var(--primary-soft);cursor:pointer;font-weight:700}.add-method-btn:hover{background:var(--highlight);border-color:var(--primary)}.add-method-btn:disabled{opacity:.4;cursor:not-allowed}.method-picker{padding:.15rem .4rem;border-radius:999px;border:1px solid var(--primary);font-size:.78rem;font-family:SF Mono,Consolas,monospace;background:#fff;color:var(--primary-dark);cursor:pointer}.remove-country-btn{flex:0 0 auto;background:transparent;border:none;color:var(--muted);font-size:1.1rem;cursor:pointer;padding:0 .3rem;line-height:1}.remove-country-btn:hover{color:var(--primary-dark)}.add-country-row{display:flex;gap:var(--space-2);align-items:center;margin-top:var(--space-3)}.lpath-state-badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:.15rem .65rem;border-radius:999px;font-size:var(--text-xs);font-weight:800;border:1px solid}.lpath-state-badge--awaiting{background:#fef3cd;color:#856404;border-color:#92610a40}.lpath-state-badge--partial{background:var(--primary-soft);color:var(--primary);border-color:#820ad140}.lpath-state-badge--curated{background:#e6f6ef;color:#0f7a4c;border-color:#0f7a4c40}.lpath-review-btn{display:inline-flex;align-items:center;padding:.25rem .85rem;border-radius:999px;background:var(--primary-soft);color:var(--primary);border:1px solid rgba(130,10,209,.3);font-weight:800;font-size:var(--text-xs);cursor:pointer;font-family:inherit;text-decoration:none;white-space:nowrap}.lpath-review-btn:hover{background:var(--primary);color:#fff;text-decoration:none}.admin-table tr.lpath-row{cursor:pointer}.admin-table tr.lpath-row:hover td{background:var(--highlight)}.lpath-cell-title{font-weight:800;color:var(--text)}.lpath-cell-sub{color:var(--muted);font-size:var(--text-xs);font-weight:700;margin-top:2px}.lpath-back-link{display:inline-flex;align-items:center;gap:var(--space-2);background:transparent;color:var(--muted);border:none;cursor:pointer;padding:var(--space-2) 0;font-size:var(--text-sm);font-weight:800;font-family:inherit;margin-bottom:var(--space-3);text-decoration:none}.lpath-back-link:hover{color:var(--primary)}.lpath-hero{background:#fff;border:1px solid var(--border);border-radius:1.5rem;padding:var(--space-6);margin-bottom:var(--space-5);display:flex;gap:var(--space-5);flex-wrap:wrap;align-items:flex-start}.lpath-hero-icon{width:56px;height:56px;border-radius:1rem;background:var(--primary-soft);display:flex;align-items:center;justify-content:center;font-size:1.6rem;flex-shrink:0}.lpath-hero-body{flex:1;min-width:240px}.lpath-hero-title{font-size:var(--text-xl);font-weight:900;color:var(--text);margin-bottom:var(--space-2);line-height:1.2}.lpath-hero-meta{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-bottom:var(--space-3)}.lpath-hero-status-row{display:flex;gap:var(--space-3);align-items:center;flex-wrap:wrap;font-size:var(--text-sm);font-weight:700;color:var(--body)}.lpath-hero-status-row strong{color:var(--text)}.curate-switch-card{flex-shrink:0;background:var(--surface-alt);border:1px solid var(--border);border-radius:1.25rem;padding:var(--space-4) var(--space-5);min-width:260px;display:grid;gap:var(--space-2)}.curate-switch-card--on{background:var(--highlight);border-color:var(--border-strong)}.curate-switch-eyebrow{font-size:var(--text-xs);font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);display:inline-flex;align-items:center;gap:var(--space-2)}.super-admin-lock{font-size:.6rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase;background:var(--primary-soft);color:var(--primary);border-radius:4px;padding:.1rem .4rem}.curate-switch-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.curate-switch-name{font-size:var(--text-md);font-weight:900;color:var(--text)}.switch{position:relative;flex-shrink:0;width:52px;height:30px;min-height:30px;border-radius:999px;border:none;cursor:pointer;padding:0;background:var(--border-strong);transition:background .18s ease}.switch:after{content:"";position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 2px 6px #4c067740;transition:transform .18s ease}.switch[aria-checked=true]{background:linear-gradient(135deg,var(--primary),#a53ce2)}.switch[aria-checked=true]:after{transform:translate(22px)}.switch:disabled{opacity:.6;cursor:progress}.switch:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.curate-status{display:flex;align-items:flex-start;gap:var(--space-2);font-size:var(--text-sm);font-weight:700;line-height:1.45}.curate-status-dot{width:9px;height:9px;border-radius:50%;margin-top:.4rem;flex-shrink:0}.curate-status--off .curate-status-dot{background:var(--muted)}.curate-status--on .curate-status-dot{background:var(--success, #16a34a)}.curate-status--off{color:var(--body)}.curate-status--on,.curate-status b{color:var(--text)}@media(max-width:720px){.curate-switch-card{min-width:0;width:100%}}.lpath-bulk-bar{background:var(--text);color:#fff;border-radius:1.25rem;padding:var(--space-4) var(--space-5);margin-bottom:var(--space-5);display:flex;gap:var(--space-4);align-items:center;justify-content:space-between;flex-wrap:wrap;position:sticky;top:calc(72px + var(--space-3));z-index:50;box-shadow:var(--shadow-lg)}.lpath-bulk-bar-info{font-size:var(--text-sm);font-weight:700;line-height:1.45}.lpath-bulk-bar-info strong{font-weight:900}.lpath-bulk-bar-actions{display:flex;gap:var(--space-3);flex-wrap:wrap}.lpath-bulk-bar .btn-primary{background:linear-gradient(135deg,var(--primary),#a53ce2);min-height:2.6rem;padding:0 var(--space-5);font-size:var(--text-sm);width:auto}.lpath-bulk-bar .btn-outline{background:transparent;color:#fff;border-color:#ffffff59;min-height:2.6rem;padding:0 var(--space-5);font-size:var(--text-sm)}.lpath-bulk-bar .btn-outline:hover{background:#ffffff1a;border-color:#fff9}.lpath-bulk-bar--locked{background:var(--surface-alt);color:var(--muted);border:1px solid var(--border)}.lpath-bulk-bar--locked strong{color:var(--text)}.lpath-bulk-bar--locked .btn-outline{background:#fff;color:var(--text);border-color:var(--border)}.lpath-bulk-bar--locked .btn-outline:hover{background:var(--highlight);border-color:var(--primary);color:var(--primary)}.lpath-level{background:#fff;border:1px solid var(--border);border-radius:1.5rem;margin-bottom:var(--space-4);overflow:hidden}.lpath-level-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);background:var(--surface-alt);border-bottom:1px solid var(--border)}.lpath-level-pill{background:var(--primary);color:#fff;font-size:var(--text-xs);font-weight:900;padding:var(--space-1) var(--space-3);border-radius:999px;letter-spacing:.05em;flex-shrink:0}.lpath-level-name{font-size:var(--text-base);font-weight:900;color:var(--text);flex:1}.lpath-level-progress{font-size:var(--text-xs);font-weight:800;color:var(--muted)}.lpath-subtopic-label{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);background:#fff;border-bottom:1px solid var(--border);font-size:var(--text-xs);font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.lpath-seed-row{display:grid;gap:var(--space-3);align-items:center;grid-template-columns:1fr;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border)}@media(min-width:768px){.lpath-seed-row{grid-template-columns:1fr 360px;gap:var(--space-5)}}.lpath-seed-row:last-child{border-bottom:none}.lpath-seed-info{min-width:0}.lpath-seed-title{font-size:var(--text-sm);font-weight:900;color:var(--text);margin-bottom:2px}.lpath-seed-native-title{font-size:var(--text-xs);font-weight:800;color:var(--body);margin-bottom:2px}.lpath-seed-lesson-link{display:inline-flex;align-items:center;gap:4px;margin-top:var(--space-2);font-size:var(--text-xs);font-weight:800;color:var(--primary);text-decoration:none}.lpath-seed-lesson-link:hover{text-decoration:underline}.rating-note-link{color:var(--primary);font-weight:700;text-decoration:none}.rating-note-link:hover{text-decoration:underline}.rating-note-native{display:block;font-size:var(--text-xs);font-weight:800;color:var(--body);margin-top:2px}.status-badge-sent{background:#e6f6ef;color:#0f7a4c}.status-badge-skipped{background:#fef3cd;color:#856404}.status-badge-marketing{background:#efe0fb;color:#4c0677}.status-badge-transactional{background:var(--surface-alt);color:var(--muted)}.eh-template{font-weight:800;color:var(--text);white-space:nowrap}.eh-subject{color:var(--muted);font-size:var(--text-xs);margin-top:2px}.eh-subject--missing{font-style:italic}.eh-reason{color:var(--muted);font-size:var(--text-xs);margin-left:var(--space-2)}.eh-date{white-space:nowrap}.lpath-seed-scenario{font-size:var(--text-xs);color:var(--muted);font-weight:700;line-height:1.45}.lpath-tier-radio-group{display:flex;gap:var(--space-2);flex-wrap:wrap}.lpath-tier-radio{display:inline-flex;align-items:center;gap:var(--space-2);background:#fff;border:1.5px solid var(--border);border-radius:999px;padding:var(--space-1) var(--space-3);font-size:var(--text-xs);font-weight:800;color:var(--text);cursor:pointer;min-height:2.4rem;transition:border-color .15s,background .15s,color .15s}.lpath-tier-radio:hover{border-color:var(--border-strong)}.lpath-tier-radio input{accent-color:var(--primary);width:14px;height:14px}.lpath-tier-radio--free.active{background:#e6f6ef;color:#0f7a4c;border-color:#0f7a4c66}.lpath-tier-radio--learner.active{background:#f0f9ff;color:#075985;border-color:#93c5fd}.lpath-tier-radio--master.active{background:var(--primary-soft);color:var(--primary);border-color:var(--primary)}.lpath-tier-radio--none.active{background:var(--surface-alt);color:var(--muted);border-color:var(--border-strong)}.lpath-tier-radio--option.active{background:var(--primary-soft);color:var(--primary);border-color:var(--primary)}.lpath-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#22112e8c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:500;padding:var(--space-4)}.lpath-modal-card{background:#fff;border-radius:1.5rem;max-width:540px;width:100%;box-shadow:var(--shadow-lg);padding:var(--space-6);max-height:90vh;overflow-y:auto}.lpath-modal-eyebrow{font-size:var(--text-xs);font-weight:900;letter-spacing:.18em;text-transform:uppercase;color:var(--primary);margin-bottom:var(--space-2)}.lpath-modal-title{font-size:var(--text-lg);font-weight:900;color:var(--text);margin-bottom:var(--space-3)}.lpath-modal-text{font-size:var(--text-sm);color:var(--body);font-weight:700;line-height:1.55;margin-bottom:var(--space-4)}.lpath-modal-text strong{color:var(--text)}.lpath-modal-tier-row{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-5)}.lpath-modal-tier-option{display:flex;gap:var(--space-3);align-items:center;padding:var(--space-4) var(--space-5);background:#fff;border:1.5px solid var(--border);border-radius:1rem;cursor:pointer;transition:border-color .15s,background .15s}.lpath-modal-tier-option:hover{border-color:var(--border-strong)}.lpath-modal-tier-option input{accent-color:var(--primary);width:18px;height:18px;flex-shrink:0}.lpath-modal-tier-option.selected{border-color:var(--primary);background:var(--highlight)}.lpath-modal-tier-name{font-weight:900;font-size:var(--text-sm);color:var(--text)}.lpath-modal-tier-hint{font-size:var(--text-xs);color:var(--muted);font-weight:700;margin-top:2px;line-height:1.4}.lpath-modal-actions{display:flex;gap:var(--space-3);flex-wrap:wrap;justify-content:flex-end}.lpath-modal-actions .btn-primary,.lpath-modal-actions .btn-outline{min-height:2.8rem;padding:0 var(--space-5);font-size:var(--text-sm);width:auto}.verify-empty{color:var(--muted);margin:0}.verify-actions{display:flex;gap:var(--space-3);flex-wrap:wrap}.verify-success{margin-top:var(--space-3)}.verify-hint{color:var(--muted);font-size:var(--text-sm);margin-top:var(--space-3);margin-bottom:0}.verify-notes-field{margin-top:var(--space-3)}.verify-notes-field label{display:block;font-size:var(--text-sm);color:var(--text);margin-bottom:var(--space-1)}.verify-notes-field textarea{width:100%;max-width:100%;resize:vertical;font-family:inherit;font-size:var(--text-sm)}.verify-link-result{margin-top:var(--space-4);padding:var(--space-3);background:var(--surface-alt);border:1px solid var(--border);border-radius:.75rem}.verify-link-row{display:flex;gap:var(--space-2);align-items:stretch}.verify-link-input{flex:1 1 auto;min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--text-xs);padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:.5rem;background:var(--surface)}.verify-link-copy{flex:0 0 auto;min-width:5.5rem}.verify-link-caption{color:var(--muted);font-size:var(--text-xs);margin:var(--space-2) 0 0}.verify-link-warning{color:#856404;background:#fef3cd;padding:var(--space-2) var(--space-3);border-radius:.5rem;font-size:var(--text-xs);margin:var(--space-2) 0 0}.ub-funnel-steps{display:flex;flex-direction:column;gap:var(--space-3)}.ub-funnel-step{display:grid;grid-template-columns:2rem 1fr auto;gap:var(--space-3);align-items:center;padding:var(--space-4);background:var(--surface);border:1px solid var(--border);border-radius:1.25rem}.ub-funnel-step-num{width:2rem;height:2rem;border-radius:50%;background:var(--primary-soft);color:var(--primary);font-weight:900;font-size:var(--text-sm);display:flex;align-items:center;justify-content:center}.ub-funnel-step-label{font-weight:800;color:var(--text);font-size:var(--text-sm)}.ub-funnel-step-sub{font-size:var(--text-xs);color:var(--muted);font-weight:700;margin-top:.15rem}.ub-funnel-step-count{text-align:right}.ub-funnel-step-count strong{font-size:var(--text-xl);font-weight:900;color:var(--text);display:block;line-height:1}.ub-funnel-step-count span{font-size:var(--text-xs);color:var(--muted);font-weight:700}.ub-funnel-arrow{text-align:center;color:var(--muted);font-size:var(--text-xs);font-weight:800;padding:var(--space-1) 0;letter-spacing:.04em}.ub-data-chip{display:inline-block;font-size:var(--text-xs);font-weight:800;color:var(--primary);background:var(--primary-soft);padding:.15rem .75rem;border-radius:999px;margin-bottom:var(--space-4)}.device-chip{display:inline-flex;align-items:center;gap:.25rem;padding:.12rem .55rem;border-radius:999px;border:1px solid var(--border);font-size:var(--text-xs);font-weight:700;color:var(--muted);background:var(--surface-alt)}.timeline-kind-cell{display:inline-flex;align-items:center;gap:.4rem}.ub-seg-row{display:grid;grid-template-columns:11rem 1fr 5rem;gap:var(--space-3);align-items:center;margin-bottom:var(--space-2)}.ub-seg-label{font-size:var(--text-sm);font-weight:700;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ub-seg-track{background:var(--border);border-radius:999px;height:10px;overflow:hidden}.ub-seg-fill{height:100%;border-radius:999px;background:var(--primary);transition:width .4s ease}.ub-seg-fill--good{background:var(--reliability-good)}.ub-seg-fill--warn{background:var(--reliability-warn)}.ub-seg-fill--bad{background:var(--reliability-bad)}.ub-seg-count{font-size:var(--text-sm);font-weight:800;color:var(--text);text-align:right}.ub-pair-row{display:grid;grid-template-columns:11rem 1fr 4rem 4rem;gap:var(--space-3);align-items:center;margin-bottom:var(--space-2)}.ub-pair-head{font-size:var(--text-xs);font-weight:900;color:var(--muted);text-align:right;text-transform:uppercase;letter-spacing:.08em}.ub-seg-count--muted{color:var(--muted);font-weight:700}.ss-pair-row{display:grid;grid-template-columns:11rem 1fr 4rem 4rem 4.5rem;gap:var(--space-3);align-items:center;margin-bottom:var(--space-2)}.ss-rate--warn{color:var(--reliability-warn)}.ss-rate--bad{color:var(--reliability-bad)}.ss-grain{display:inline-block;font-size:var(--text-xs);font-weight:800;color:var(--primary);background:var(--primary-soft);padding:.15rem .75rem;border-radius:999px;margin-left:var(--space-2);vertical-align:middle}.ub-seg-coverage{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border)}.ub-seg-coverage-row{display:flex;justify-content:space-between;font-size:var(--text-xs);font-weight:700;color:var(--muted)}.ub-seg-coverage-row+.ub-seg-coverage-row{margin-top:var(--space-1)}.ret-table{width:100%;border-collapse:collapse;font-size:var(--text-xs)}.ret-table th,.ret-table td{padding:.4rem .55rem;border:1px solid var(--border);text-align:center;white-space:nowrap}.ret-table th{background:var(--surface-alt);font-weight:800;color:var(--text)}.ret-table td.ret-label{text-align:left;font-weight:800;color:var(--text);background:var(--surface-alt)}.ret-table td.ret-size{font-weight:700;color:var(--muted)}.ret-cell-masked{background:repeating-linear-gradient(45deg,var(--surface-alt),var(--surface-alt) 4px,var(--border) 4px,var(--border) 6px)!important;color:var(--muted);font-weight:700}.ub-tab-rail{display:flex;gap:0;overflow-x:auto;scrollbar-width:none;border-bottom:2px solid var(--border);margin-bottom:var(--space-6)}.ub-tab-rail::-webkit-scrollbar{display:none}.ub-tab-pill{flex:0 0 auto;padding:.6rem 1.2rem;font-size:var(--text-sm);font-weight:800;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;background:transparent;color:var(--muted);cursor:pointer;font-family:inherit;white-space:nowrap;transition:color .15s ease,border-color .15s ease}.ub-tab-pill:hover{color:var(--text)}.ub-tab-pill.active{color:var(--primary);border-bottom-color:var(--primary)}.status-badge-pastdue{background:#fde8e8;color:#c53030}.status-badge-cancelscheduled{background:#fef3e2;color:#92610a}.status-badge-dormant{background:var(--surface-alt);color:var(--muted)}.admin-linkish{background:none;border:none;padding:0;font:inherit;font-weight:700;color:var(--primary);cursor:pointer;text-decoration:underline}.admin-linkish:hover{color:var(--primary-dark)}.status-badge-open{background:#fef3cd;color:#856404}.status-badge-waitinguser{background:#e1f0ff;color:#155199}.status-badge-resolved{background:#e6f6ef;color:#0f7a4c}.status-badge-closed{background:var(--surface-alt);color:var(--muted)}.cat-badge-security{display:inline-block;padding:.1rem .5rem;border-radius:4px;font-size:var(--text-xs);font-weight:800;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;background:#fde8e8;color:#c53030;border:1px solid rgba(197,48,48,.35)}.cell-user-name{color:var(--text);font-weight:700}.cell-user-email{color:var(--muted);font-size:var(--text-xs);margin-top:2px}.cell-time{white-space:nowrap}.ticket-title-row{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2);flex-wrap:wrap}.ticket-title-row h1{margin:0}.ticket-opened{font-size:var(--text-sm);color:var(--muted);font-weight:700;margin:0 0 var(--space-6)}.ticket-thread{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-3)}.ticket-msg{background:#fff;border:1px solid var(--border);border-radius:1rem;padding:var(--space-4);display:grid;gap:var(--space-2)}.ticket-msg--admin{background:var(--highlight);border-left:4px solid var(--primary)}.ticket-msg-head{display:flex;align-items:baseline;gap:var(--space-2);flex-wrap:wrap}.ticket-msg-author{font-weight:900;color:var(--text);font-size:var(--text-sm)}.ticket-actor-chip{font-size:.65rem;font-weight:800;padding:.15rem .5rem;border-radius:4px;text-transform:uppercase;letter-spacing:.06em}.ticket-actor-chip--admin{background:var(--primary-soft);color:var(--primary)}.ticket-actor-chip--user{background:var(--surface-alt);color:var(--muted)}.ticket-msg-time{margin-left:auto;font-size:var(--text-xs);color:var(--muted);font-weight:700}.ticket-msg-body{margin:0;color:var(--body);line-height:1.6;font-size:var(--text-sm);white-space:pre-wrap}.ticket-marker{display:flex;align-items:center;justify-content:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--muted);font-weight:700;padding:var(--space-1) 0}.ticket-marker:before,.ticket-marker:after{content:"";flex:1;border-top:1px dashed var(--border-strong)}.ticket-attach-row{display:flex;gap:var(--space-3);flex-wrap:wrap;margin-top:var(--space-1)}.ticket-attach{display:grid;gap:var(--space-1);width:96px}.ticket-attach-thumb{width:96px;height:72px;border-radius:.75rem;border:1px solid var(--border-strong);background:linear-gradient(135deg,var(--surface-soft),var(--primary-soft));display:flex;align-items:center;justify-content:center;color:var(--primary-dark);font-size:var(--text-xs);font-weight:800;overflow:hidden}.ticket-attach-thumb img{width:100%;height:100%;object-fit:cover}.ticket-attach-name{font-size:.65rem;color:var(--muted);font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ticket-reply textarea{width:100%;min-height:110px;resize:vertical;padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:1rem;font-family:inherit;font-size:var(--text-base);color:var(--text);background:#fff}.ticket-reply textarea:focus{outline:none;border-color:var(--primary)}.ticket-reply-actions{display:flex;gap:var(--space-3);margin-top:var(--space-3);flex-wrap:wrap}.ticket-status-actions{display:flex;gap:var(--space-3);align-items:center;flex-wrap:wrap;border-top:1px solid var(--border);margin-top:var(--space-5);padding-top:var(--space-5)}.ticket-status-actions-label{font-size:var(--text-sm);font-weight:900;color:var(--text);margin-right:var(--space-2)}@media(max-width:600px){.ticket-msg-time{margin-left:0;flex-basis:100%}}
