:root,html[data-theme=teal-mint]{--canvas:#f6efe4;--canvas-deep:#ece3d3;--surface:#fff;--surface-raised:#fff;--ink:#1c1c1e;--ink-soft:#55555a;--ink-faint:#6b6b70;--forest:#2b2d42;--forest-bright:#3d4066;--forest-rgb:43, 45, 66;--mint:#e4e3ec;--mint-strong:#2b2d42;--mint-rgb:43, 45, 66;--coral:#b42318;--coral-soft:#f97066;--pink:#f72585;--peach:#fdeaf3;--line:#e5e5ea;--line-strong:#d1d1d6;--shadow-soft:0 12px 34px #1c1c1e12;--shadow-card:0 8px 24px #1c1c1e14;--radius-md:20px;--radius-lg:24px;--workspace-card-radius:20px;--workspace-card-shadow:0 1px 2px #1c1c1e0d;--font-display:var(--font-playfair), "Playfair Display", var(--font-noto-serif-tc), "Noto Serif TC", "Songti TC", serif;--font-body:var(--font-dm-sans), "DM Sans", var(--font-noto-sans-tc), "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", sans-serif;--bs-rule:var(--line);--bs-hairline:var(--line);--bs-muted:var(--ink-soft);--bs-radius:12px}html[lang=zh-TW]{--font-display:var(--font-playfair), "Playfair Display", var(--font-noto-serif-tc), "Noto Serif TC", "Songti TC", serif;--font-body:var(--font-dm-sans), "DM Sans", var(--font-noto-sans-tc), "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", sans-serif}body{background:var(--canvas);font-variant-numeric:normal}.desktop-sidebar{border-right:1px solid var(--line);color:var(--ink);background:#fff}.desktop-sidebar .sidebar-inner{scrollbar-color:var(--line-strong) transparent}.desktop-sidebar :is(.sidebar-label,.sidebar-quote){color:var(--ink-faint)}.nav-link{color:var(--ink-soft);border-radius:14px}.nav-link:hover{background:var(--canvas);color:var(--ink)}.nav-link[data-active=true]{background:color-mix(in srgb, var(--mint-strong) 12%, #fff);color:var(--forest);box-shadow:none;font-weight:700}.nav-link[data-active=true] svg{color:var(--mint-strong)}.desktop-sidebar :is(.brand,.brand span,.brand strong){color:var(--ink)}.desktop-sidebar .brand small{color:var(--ink-faint)}.mobile-nav{padding:8px 4px calc(8px + env(safe-area-inset-bottom));border:0;border-top:1px solid var(--line);box-shadow:none;background:#fffffff0;border-radius:0;gap:0;bottom:0;left:0;right:0;overflow:visible}.mobile-nav-link{min-width:0;min-height:56px;color:var(--ink-faint);border-radius:12px;flex:1 1 0;gap:4px;font-size:.75rem;font-weight:600}.mobile-nav-link svg{width:24px;height:24px}.mobile-nav-link[data-active=true]{color:var(--mint-strong);background:0 0}.mobile-nav-link[data-active=true] svg{color:var(--mint-strong)}.mobile-nav-link{cursor:pointer;font:inherit;border:0;font-size:.75rem;font-weight:600;position:relative}button.mobile-nav-link{background:0 0}.mobile-nav-link span{font-size:.75rem}.main-content{padding-bottom:6.5rem}.mobile-more-backdrop{z-index:38;cursor:default;background:#1c1c1e52;border:0;position:fixed;inset:0}.mobile-more-sheet{right:.75rem;bottom:calc(76px + env(safe-area-inset-bottom));z-index:39;min-width:min(260px,100vw - 1.5rem);color:var(--ink);background:#fff;border:0;border-radius:20px;padding:6px;display:grid;position:fixed;box-shadow:0 -10px 30px #00000024}.mobile-more-sheet a{min-height:48px;color:var(--ink);border-radius:14px;align-items:center;gap:.75rem;padding:0 .85rem;font-size:1rem;display:flex}.mobile-more-sheet a:hover{background:var(--canvas)}.mobile-more-sheet a[data-active=true]{background:color-mix(in srgb, var(--mint-strong) 12%, #fff);color:var(--forest);box-shadow:none;font-weight:700}.mobile-more-sheet b{background:var(--pink);color:#fff;border-radius:999px;place-items:center;min-width:22px;height:22px;margin-left:auto;padding:0 6px;font-size:.75rem;display:inline-grid}@media (min-width:1024px){.mobile-more-backdrop,.mobile-more-sheet{display:none}}.main-content :is(.dashboard-section,.dashboard-calendar,.dashboard-recent-videos,.video-source-card,.video-player-panel,.library-toolbar,.library-item-card,.review-card,.review-summary,.progress-stat-section,.progress-heatmap,.progress-recap,.progress-speaking,.progress-mastery,.progress-milestones,.speaking-picker,.speaking-mode-panel,.speaking-recent,.student-class-panel,.class-roster,.class-create-panel,.compact-message-widget,.teacher-assignment-board,.upgrade-notice,.plan-card,.promo-panel,.beta-access-panel){background:#fff;border:0;border-radius:20px;box-shadow:0 1px 2px #1c1c1e0d}.main-content :is(.dashboard-section,.dashboard-calendar,.dashboard-recent-videos){padding:1.1rem}.main-content :is(.dashboard-section,.dashboard-calendar,.dashboard-recent-videos) h2{font-family:var(--font-body);letter-spacing:0;font-size:1.15rem;font-weight:700}.button-primary,.main-content .button-primary{border-color:var(--forest);background:var(--forest);color:#fff}.button-primary:hover{background:var(--forest-bright)}.dsn-home-top{gap:1rem;margin-bottom:1rem;display:grid}.dsn-greet{justify-content:space-between;align-items:center;gap:1rem;display:flex}.dsn-date{color:var(--ink-faint);margin:0;font-size:.875rem}.dsn-greet h1{font-family:var(--font-display);margin:.1rem 0 0;font-size:clamp(1.75rem,5vw,2.25rem);font-weight:700;line-height:1.15}.dsn-avatar{width:44px;height:44px;color:var(--forest);background:#fff;border-radius:50%;flex:none;place-items:center;font-weight:700;display:grid;box-shadow:0 1px 2px #1c1c1e14}.dsn-hero{color:#fff;background:radial-gradient(circle at 100% 0%, #f7258599 0, #f7258500 46%), linear-gradient(135deg, color-mix(in oklch, var(--forest) 22%, #06060f) 0%, color-mix(in oklch, var(--forest) 62%, #06060f) 55%, var(--forest) 100%);border-radius:24px;gap:1rem;padding:1.4rem;display:grid;position:relative;overflow:hidden}.dsn-hero-label{letter-spacing:.06em;opacity:.9;font-size:.8125rem;font-weight:600}.dsn-hero-number{align-items:baseline;gap:.5rem;display:flex}.dsn-hero-number strong{font-family:var(--font-display);font-size:3.5rem;font-weight:700;line-height:1}.dsn-hero-number span{opacity:.9;font-size:1.0625rem}.dsn-hero-bar{background:#fff3;border-radius:99px;height:8px;overflow:hidden}.dsn-hero-bar i{background:#fff;border-radius:99px;height:100%;display:block}.dsn-hero-stats{flex-wrap:wrap;gap:.4rem 1.1rem;margin:0;padding:0;font-size:.8125rem;list-style:none;display:flex}.dsn-hero-stats li{align-items:center;gap:.35rem;display:inline-flex}.dsn-hero-note{opacity:.85;margin:0;font-size:.8125rem}.dsn-hero-weekly{border-top:1px solid #ffffff2e;padding-top:.6rem}.dsn-hero-weekly .progress-overview,.dsn-hero-weekly .weekly-goal-card{min-height:0;box-shadow:none;color:#fff;background:0 0;border:0;align-items:center;gap:.5rem;margin:0;padding:0;display:flex}.dsn-hero-weekly .weekly-goal-copy{align-items:baseline;gap:.5rem;display:flex}.dsn-hero-weekly .weekly-goal-copy :is(h2,h2 strong,span,p){color:#fff;margin:0;font-size:.8125rem}.dsn-hero-weekly .weekly-goal-copy h2 strong{font-size:1.1rem}.dsn-hero-weekly .weekly-goal-copy .section-kicker,.dsn-hero-weekly .weekly-goal-copy>p,.dsn-hero-weekly .weekly-goal-tile-icon,.dsn-hero-weekly .weekly-goal-ring,.dsn-hero-weekly .weekly-goal-card fieldset{display:none}.dsn-hero-weekly .progress-overview-loading,.dsn-hero-weekly .progress-overview-error{color:#fff;background:0 0}.dsn-cta{color:#fff;background:#3f7a5a;border-radius:18px;justify-content:space-between;align-items:center;gap:1rem;padding:.95rem 1.15rem;text-decoration:none;display:flex}.dsn-cta:hover{background:#356a4d}.dsn-cta span{gap:2px;display:grid}.dsn-cta strong{font-size:1rem}.dsn-cta small{opacity:.92;font-size:.8125rem}.dashboard-command-bar{display:none}.dashboard-workbench .dashboard-recent-video-grid>a{border:0;border-top:5px solid var(--video-color,var(--forest));background:#fff;border-radius:18px;box-shadow:0 1px 2px #1c1c1e0f}.dashboard-message-notice{border-color:var(--pink);background:color-mix(in srgb, var(--pink) 8%, #fff)}.message-notice-bell{background:var(--pink)}.message-notice-copy small{color:#b0145d}.dashboard-workbench .dashboard-review-card{background:color-mix(in srgb, var(--mint-strong) 9%, #fff);border:0;border-radius:18px}.dashboard-workbench .dashboard-review-card[data-due=true]{background:color-mix(in srgb, var(--mint-strong) 18%, #fff)}.calendar-day[data-today=true]{border-color:var(--mint-strong);color:var(--forest)}.calendar-day[data-selected=true]{border-color:var(--forest);background:var(--forest);color:#fff}.calendar-journal-mark{background:var(--pink)}.tsb-card[data-active=true]{border-color:var(--mint-strong)}.tsb-ring{background:conic-gradient(var(--mint-strong) var(--tsb-progress), #e6eaf2 0)}.tsb-ring>span,.tsb-panel-avatar{background:color-mix(in srgb, var(--mint-strong) 12%, #fff);color:var(--forest)}.tsb-dots i[data-on=true]{background:var(--mint-strong)}.tsb-head p b{color:var(--forest)}.tsb-cheer{background:var(--forest)}.tsb-compose>div:last-child button:first-child{border-color:var(--forest);background:var(--forest)}.dsn-hero-weekly,.dsn-hero-weekly>*{height:auto;min-height:0}.dsn-hero-weekly .progress-overview{margin:0;padding:0}.main-content :is(.library-hero,.speaking-hero,.upgrade-hero,.personalization-hero){color:#fff;background:radial-gradient(circle at 100% 0%, #f725858c 0, #f7258500 46%), linear-gradient(135deg, color-mix(in oklch, var(--forest) 22%, #06060f) 0%, color-mix(in oklch, var(--forest) 62%, #06060f) 55%, var(--forest) 100%);box-shadow:none;border:0;border-radius:24px}.main-content :is(.library-hero,.speaking-hero,.upgrade-hero,.personalization-hero):before,.main-content :is(.library-hero,.speaking-hero,.upgrade-hero,.personalization-hero):after{content:none}.main-content :is(.library-hero,.speaking-hero,.upgrade-hero,.personalization-hero) :is(.section-kicker,h1,h2,p,small,span:not(.stage-pill)){color:#fff}.main-content :is(.library-hero,.speaking-hero,.upgrade-hero,.personalization-hero) p:not(.section-kicker){opacity:.92}.library-add-source,.main-content .library-add-source{color:#fff;box-shadow:none;background:#ffffff2e;border:0}.speaking-hero-mark,.main-content .speaking-hero-mark{color:#fff;box-shadow:none;background:#ffffff29}.main-content .stage-pill{color:#fff;background:#ffffff2e;border-color:#ffffff4d}.library-stats button{background:#fff;border:0;border-radius:18px;box-shadow:0 1px 2px #1c1c1e0d}.library-stats button[data-selected=true]{background:var(--forest);color:#fff}.desktop-sidebar .language-control-label{color:var(--ink-faint)}.desktop-sidebar .language-segment{border-color:var(--line);background:var(--canvas)}.desktop-sidebar .language-segment button{color:var(--ink-soft)}.desktop-sidebar .language-segment button:hover:not(:disabled){color:var(--ink)}.desktop-sidebar .language-segment button[data-active=true]{background:var(--forest);color:#fff;box-shadow:none}.desktop-sidebar .account-panel{border-color:var(--line);background:var(--canvas)}.desktop-sidebar .account-copy strong{color:var(--ink)}.desktop-sidebar .account-copy span{color:var(--ink-faint)}.desktop-sidebar .account-signout{border-color:var(--line);color:var(--ink-soft);background:0 0}.desktop-sidebar .account-signout:hover{color:var(--ink);background:#fff}:root,html[data-theme=teal-mint]{--rust:#5b3ae6}.section-kicker,.main-content .section-kicker{color:var(--forest)}.dsn-hero .section-kicker,.main-content :is(.library-hero,.speaking-hero,.upgrade-hero,.personalization-hero) .section-kicker{color:#fff}.live-caption-workspace{color:var(--ink);background:#fff;border-top:0;border-radius:0 0 20px 20px;box-shadow:0 1px 2px #1c1c1e0f}.live-caption-workspace>header>div>span{background:color-mix(in srgb, var(--mint-strong) 14%, #fff);color:var(--forest)}.live-caption-workspace>header :is(p,h3){color:var(--ink)}.live-caption-workspace>header small{border-color:var(--line);color:var(--ink-soft)}.live-caption-workspace>header small[data-playing=true]{border-color:var(--mint-strong);background:color-mix(in srgb, var(--mint-strong) 10%, #fff);color:var(--forest)}.live-caption-navigation button{border-color:var(--line);background:var(--canvas);color:var(--ink)}.live-caption-navigation>button>span{border-color:var(--line);color:var(--ink);background:#fff}.live-caption-navigation button:hover:not(:disabled){border-color:var(--mint-strong);background:color-mix(in srgb, var(--mint-strong) 10%, #fff);color:var(--forest)}.live-caption-navigation button[data-active=true],.live-caption-navigation .live-caption-playback{border-color:var(--forest);background:var(--forest);color:#fff}.live-caption-navigation .live-caption-playback:hover:not(:disabled){background:var(--forest-bright);color:#fff}.caption-language-toolbar>span,.caption-language-switch button{color:var(--ink-soft)}.caption-language-switch button[data-active=true]{background:var(--forest);color:#fff}.caption-settings-panel.caption-display-controls{border-color:var(--line);color:var(--ink);box-shadow:var(--shadow-card);background:#fff}.caption-settings-heading button{color:var(--ink)}.caption-settings-heading button:hover{background:var(--canvas)}.caption-settings-panel .caption-language-toolbar>span,.live-caption-help{color:var(--ink-soft)}.live-caption-stream{border-top:1px solid var(--line)}.live-caption-context-line{color:var(--ink-faint)}.live-caption-context-line:hover{background:var(--canvas);color:var(--ink)}.live-caption-context-line time,.live-caption-time,.live-caption-context-line>span>small{color:var(--ink-faint)}.live-caption-stream article{color:var(--ink-soft)}.live-caption-stream article[data-active=true]{background:color-mix(in srgb, var(--mint-strong) 10%, #fff);color:var(--ink);transform:none}.live-caption-stream article[data-active=true] .live-caption-time{color:var(--forest)}.live-caption-lines>p button{color:var(--forest);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, var(--mint-strong) 40%, transparent);text-decoration-color:color-mix(in srgb, var(--mint-strong) 40%, transparent);text-underline-offset:4px}.live-caption-lines>p button:hover,.live-caption-lines>p button[data-selected=true]{background:var(--forest);color:#fff}.live-caption-chinese{color:var(--ink-faint)}.caption-translation-retry{border-color:var(--forest)!important;color:var(--forest)!important}.caption-selection-dock{color:var(--ink);background:#fff;border:0;border-radius:24px 24px 0 0;box-shadow:0 -10px 30px #0000001f}.caption-selection-dock:after{background:#fff}.caption-selection-dock small{color:var(--ink-faint)}.caption-selection-dock strong{color:var(--ink);font-family:var(--font-display)}.caption-selection-success{color:var(--forest)}.caption-selection-success strong{color:var(--ink)}.caption-phrase-suggestions button{border-color:var(--line-strong);color:var(--forest)}.caption-selection-dock button{background:var(--canvas);color:var(--ink);border:0;border-radius:14px}.caption-selection-dock .caption-save-button{background:var(--forest);color:#fff}.main-content .library-item-card{padding-left:1.2rem;position:relative;overflow:hidden}.main-content .library-item-card:before{content:"";background:#ff9500;width:5px;position:absolute;inset:0 auto 0 0}.main-content .library-item-card[data-mastery=seen]:before,.main-content .library-item-card[data-mastery=learning]:before{background:#ff3b30}.main-content .library-item-card[data-mastery=practicing]:before{background:#ff9500}.main-content .library-item-card[data-mastery=strong]:before,.main-content .library-item-card[data-mastery=mastered]:before{background:#34c759}.main-content .library-item-card h2,.main-content .library-item-card h3{font-family:var(--font-display)}.library-stats{gap:.6rem}.new-learner-path{background:#fff;border:0;box-shadow:0 1px 2px #1c1c1e0f}.new-learner-path-heading p,.main-content :is(.learning-path-state,.learn-setup-link) .section-kicker{color:var(--forest)}.progress-week-hero{gap:1rem;margin-bottom:1rem;display:grid}.progress-week-card{color:#fff;background:radial-gradient(circle at 100% 0%, #f7258599 0, #f7258500 46%), linear-gradient(135deg, color-mix(in oklch, var(--forest) 22%, #06060f) 0%, color-mix(in oklch, var(--forest) 62%, #06060f) 55%, var(--forest) 100%);border-radius:24px;gap:.5rem;padding:1.4rem;display:grid}.progress-week-card>span{letter-spacing:.06em;opacity:.9;font-size:.8125rem;font-weight:600}.progress-week-card>div{align-items:baseline;gap:.35rem;display:flex}.progress-week-card strong{font-family:var(--font-display);font-size:3.5rem;font-weight:700;line-height:1}.progress-week-card em{opacity:.9;margin-right:.4rem;font-size:1.0625rem;font-style:normal}.progress-week-card p{opacity:.92;margin:0;font-size:.875rem}.progress-day-bars{background:#fff;border-radius:20px;padding:1.1rem 1.2rem;box-shadow:0 1px 2px #1c1c1e0d}.progress-day-bars h3{margin:0 0 .8rem;font-size:1.0625rem}.progress-day-bars>div{grid-template-columns:repeat(7,1fr);align-items:end;gap:.6rem;height:170px;display:grid}.progress-day-bars>div>div{flex-direction:column;justify-content:flex-end;align-items:center;gap:6px;height:100%;display:flex}.progress-day-bars small{color:var(--ink-faint);font-variant-numeric:tabular-nums;font-size:.6875rem}.progress-day-bars span{background:#c9c8d3;border-radius:8px;width:100%;max-width:44px}.progress-day-bars b{color:var(--ink-faint);font-size:.75rem;font-weight:600}.progress-day-bars>div>div[data-today=true] span{background:var(--forest)}.progress-day-bars>div>div[data-today=true] b{color:var(--forest)}@media (min-width:900px){.progress-week-hero{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:stretch}}.library-hero-tiles{grid-template-columns:repeat(3,1fr);gap:.6rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}.library-hero-tiles li{background:#ffffff24;border-radius:14px;gap:2px;padding:.6rem .8rem;display:grid}.library-hero-tiles strong{color:#fff;font-size:1.25rem;font-weight:700}.library-hero-tiles span{color:#fff;opacity:.9;font-size:.75rem}.dsn-greet-actions{align-items:center;gap:.6rem;display:flex}.notify-bell-button{width:44px;height:44px;color:var(--forest);cursor:pointer;background:#fff;border:0;border-radius:50%;place-items:center;display:grid;position:relative;box-shadow:0 1px 2px #1c1c1e14}.notify-bell-button b{border:2px solid var(--canvas);background:var(--pink);color:#fff;border-radius:999px;place-items:center;min-width:20px;height:20px;padding:0 5px;font-size:.68rem;font-weight:800;animation:.45s cubic-bezier(.34,1.56,.64,1) badge-pop;display:grid;position:absolute;top:-4px;right:-4px}.notify-panel{z-index:50;background:#fff;border-radius:20px;gap:.6rem;width:min(340px,100vw - 32px);padding:1rem;display:grid;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 14px 40px #1c1c1e2e}.notify-panel h2{font-size:1rem;font-family:var(--font-body);margin:0}.notify-empty{color:var(--ink-soft);margin:0;font-size:.875rem}.notify-panel ul{gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.notify-panel li a{background:var(--canvas);color:var(--ink);border-radius:14px;align-items:center;gap:.7rem;padding:.6rem;text-decoration:none;display:flex}.notify-panel li a>span{background:var(--forest);color:#fff;border-radius:50%;flex:none;place-items:center;width:32px;height:32px;display:grid}.notify-panel li a>div{gap:1px;min-width:0;display:grid}.notify-panel li strong{font-size:.875rem;line-height:1.3}.notify-panel li small{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.notify-push{border:1px dashed var(--line-strong);min-height:44px;color:var(--ink-soft);font:inherit;cursor:pointer;background:0 0;border-radius:14px;justify-content:center;align-items:center;gap:.4rem;font-size:.8125rem;display:inline-flex}.dsn-my-videos,.dsn-more-channels{color:#fff;border-radius:18px;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.2rem;text-decoration:none;display:flex}.dsn-my-videos{background:#bf4a34}.dsn-my-videos:hover{background:#ab412d}.dsn-more-channels{background:#3b7554}.dsn-my-videos>span,.dsn-more-channels>span:first-child{gap:2px;display:grid}.dsn-my-videos strong,.dsn-more-channels strong{font-size:1.0625rem}.dsn-my-videos small,.dsn-more-channels small{font-size:.8125rem}.dsn-more-arrow{font-size:1.6rem;line-height:1}.dsn-journal-card{background:#fff;border-radius:20px;padding:1.1rem;box-shadow:0 1px 2px #1c1c1e0d}.dsn-journal-date{color:var(--ink-faint);font-variant-numeric:tabular-nums;margin:0 0 .2rem;font-size:.8125rem}.dsn-journal-card .day-journal[data-part=journal]{background:0 0;border:0;margin:0;padding:0}.day-journal .journal-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;display:grid}.day-journal .journal-actions button{white-space:nowrap;gap:.3rem;padding:0 .4rem;font-size:.8125rem}.day-journal .journal-actions .journal-save{margin-left:0}.dsn-continue{gap:.7rem;margin-block:1.2rem;display:grid}.dsn-continue h2{font-family:var(--font-body);margin:0;font-size:1.1875rem;font-weight:700}.dsn-continue ul{background:#fff;border-radius:18px;margin:0;padding:.35rem .9rem;list-style:none;display:grid;box-shadow:0 1px 2px #1c1c1e0d}.dsn-continue li+li{border-top:1px solid var(--canvas)}.dsn-continue li a{color:var(--ink);grid-template-columns:104px minmax(0,1fr);align-items:center;gap:.8rem;padding:.65rem 0;text-decoration:none;display:grid}.dsn-continue-thumb{background:color-mix(in srgb, var(--video-color) 14%, #fff);border-radius:10px;height:60px;display:block;position:relative;overflow:hidden}.dsn-continue-thumb img{object-fit:cover;width:100%;height:100%;display:block}.dsn-continue-thumb i{background:var(--forest);height:3px;position:absolute;bottom:0;left:0}.dsn-continue-text{gap:4px;min-width:0;display:grid}.dsn-continue-text strong{font-size:.9375rem;line-height:1.3}.dsn-continue-text small{color:var(--ink-soft);align-items:center;gap:.4rem;font-size:.75rem;display:flex}.dsn-continue-text small b{background:var(--video-color);border-radius:50%;flex:none;width:8px;height:8px}.nav-unread-badge,.mobile-nav-unread,.conversation-meta b{background:var(--pink);color:#fff}.dsn-hero-weekly .weekly-goal-card{height:auto!important;min-height:0!important}.dsn-greet{position:relative}.notify-bell{position:static}.notify-panel{width:auto;top:calc(100% + 8px);left:0;right:0}@media (min-width:700px){.notify-panel{width:360px;left:auto}}.caption-settings-panel.caption-display-controls,.video-learning-page[data-prepared=true] .caption-settings-panel.caption-display-controls{width:min(300px,100vw - 24px);height:auto;max-height:min(420px,70dvh);color:var(--ink);background:#fff;border:0;border-radius:20px;gap:6px;padding:12px 14px;inset:auto;box-shadow:0 14px 40px #1c1c1e38}.caption-settings-heading{font-weight:700}.caption-settings-panel .caption-language-toolbar{grid-template-columns:64px minmax(0,1fr);align-items:center;gap:6px}.caption-settings-panel .caption-language-toolbar>span,.video-learning-page[data-prepared=true] .caption-settings-panel .caption-language-toolbar>span{color:var(--ink-soft)}.caption-settings-panel .caption-language-switch,.video-learning-page[data-prepared=true] .caption-settings-panel .caption-language-switch{background:var(--canvas);border-color:var(--line)}.caption-settings-panel .caption-language-switch button,.video-learning-page[data-prepared=true] .caption-settings-panel .caption-language-switch button{min-height:40px;color:var(--ink-soft)}.caption-settings-panel .caption-language-switch button[data-active=true],.video-learning-page[data-prepared=true] .caption-settings-panel .caption-language-switch button[data-active=true]{background:var(--forest);color:#fff}.caption-settings-panel .caption-settings-heading button{color:var(--ink);min-width:40px;min-height:40px}.caption-settings-panel.caption-display-controls,.video-learning-page[data-prepared=true] .caption-settings-panel.caption-display-controls{grid-auto-rows:min-content;align-content:start;min-height:0}.caption-settings-panel .caption-language-toolbar{min-height:0}.video-player-panel{scroll-margin-top:72px}.dsn-channels{gap:.9rem;display:grid}.dsn-channels .dsn-more-channels{cursor:default}.dsn-channels-note{color:var(--ink-soft);background:#fff;border-radius:14px;margin:0;padding:.8rem 1rem;font-size:.875rem}.dsn-channel{gap:.5rem;display:grid}.dsn-channel-head{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.dsn-channel-head h3{font-family:var(--font-body);margin:0;font-size:1.0625rem}.dsn-channel-head a{min-height:32px;color:var(--forest);align-items:center;gap:.3rem;font-size:.8125rem;font-weight:600;display:inline-flex}.dsn-channel ul{scroll-snap-type:x proximity;scrollbar-width:thin;overscroll-behavior-x:contain;gap:.75rem;margin:0;padding:.1rem .1rem .6rem;list-style:none;display:flex;overflow-x:auto}.dsn-channel li{scroll-snap-align:start;flex:0 0 min(230px,72vw)}.dsn-channel li a{color:var(--ink);gap:.4rem;text-decoration:none;display:grid}.dsn-channel-thumb{aspect-ratio:16/9;background:#d9d4c8;border-radius:14px;display:block;position:relative;overflow:hidden}.dsn-channel-thumb img{object-fit:cover;width:100%;height:100%;display:block}.dsn-channel-thumb b{color:#fff;font-variant-numeric:tabular-nums;background:#000000d1;border-radius:6px;padding:1px 6px;font-size:.75rem;font-weight:600;position:absolute;bottom:6px;right:6px}.dsn-channel li strong{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.9rem;line-height:1.3;display:-webkit-box;overflow:hidden}.dsn-channel li small{color:var(--ink-soft);font-size:.75rem}.dsn-tiles{z-index:5;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;display:grid;position:relative}.dsn-tile{color:#fff;text-align:center;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;border-radius:18px;place-content:center;justify-items:center;gap:.45rem;min-height:92px;padding:.8rem .4rem;text-decoration:none;display:grid;position:relative}.dsn-tile strong{font-size:.9375rem;line-height:1.2}.dsn-tile[data-tile=videos],.dsn-tile[data-tile=teach]{background:#bf4a34}.dsn-tile[data-tile=mine],.dsn-tile[data-tile=teacher-learning]{background:#34559a}.dsn-tile[data-tile=more]{background:#3b7554}.dsn-tile[data-tile=videos]:hover,.dsn-tile[data-tile=teach]:hover{background:#ab412d}.dsn-tile[data-tile=mine]:hover,.dsn-tile[data-tile=teacher-learning]:hover{background:#2c4885}.dsn-tile[data-tile=more]:hover{background:#326448}.dsn-tile-hint{z-index:30;color:#fff;text-align:center;opacity:0;pointer-events:none;background:#1c1c1e;border-radius:12px;width:max-content;max-width:min(240px,86vw);padding:.5rem .7rem;font-size:.8125rem;font-weight:500;line-height:1.4;transition:opacity .15s;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.dsn-tile:focus-visible .dsn-tile-hint,.dsn-tile[data-hint-open=true] .dsn-tile-hint{opacity:1}@media (hover:hover){.dsn-tile:hover .dsn-tile-hint{opacity:1}}.dsn-tile:first-child .dsn-tile-hint{left:0;transform:none}.dsn-tile:last-child .dsn-tile-hint{left:auto;right:0;transform:none}.dsn-hero-close{z-index:2;color:#fff;cursor:pointer;background:#ffffff29;border:0;border-radius:50%;place-items:center;width:36px;height:36px;display:grid;position:absolute;top:.7rem;right:.7rem}.dsn-hero-close:hover{background:#ffffff47}.dsn-pinned,.dsn-channels-page{gap:1.1rem;display:grid}.dsn-page-head h1{font-family:var(--font-display);margin:0;font-size:clamp(1.75rem,5vw,2.25rem)}.dsn-page-head p{color:var(--ink-soft);margin:.3rem 0 0;font-size:.9375rem}.dsn-channel-head h2{font-family:var(--font-body);margin:0;font-size:1.0625rem}.dsn-channel-head h2 small{color:var(--ink-soft);margin-left:.4rem;font-size:.8125rem;font-weight:500}.dsn-channel-head>div{flex-wrap:wrap;align-items:center;gap:.4rem .7rem;display:flex}.dsn-strip{scroll-snap-type:x proximity;scrollbar-width:thin;overscroll-behavior-x:contain;gap:.75rem;margin:0;padding:.1rem .1rem .6rem;list-style:none;display:flex;overflow-x:auto}.dsn-strip>li{scroll-snap-align:start;flex:0 0 min(230px,72vw);position:relative}.dsn-strip>li>a{color:var(--ink);gap:.4rem;text-decoration:none;display:grid}.dsn-strip strong{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.9rem;line-height:1.3;display:-webkit-box;overflow:hidden}.dsn-strip small{color:var(--ink-soft);font-size:.75rem}.dsn-strip-remove{color:#fff;cursor:pointer;background:#1c1c1ebf;border:0;border-radius:50%;place-items:center;width:30px;height:30px;display:grid;position:absolute;top:6px;right:6px}.dsn-pin,.dsn-icon-action{border:1px solid var(--line-strong);min-height:36px;color:var(--ink);font:inherit;cursor:pointer;background:#fff;border-radius:999px;align-items:center;gap:.3rem;padding:0 .7rem;font-size:.8125rem;font-weight:600;display:inline-flex}.dsn-pin[aria-pressed=true]{border-color:var(--forest);background:var(--forest);color:#fff}.dsn-icon-action{justify-content:center;width:36px;padding:0}.dsn-playlist-create{gap:.5rem;display:flex}.dsn-playlist-create input{border:1px solid var(--line-strong);min-width:0;min-height:44px;font:inherit;background:#fff;border-radius:14px;flex:1;padding:0 .9rem;font-size:1rem}.dsn-playlist-create button{background:var(--forest);color:#fff;min-height:44px;font:inherit;cursor:pointer;border:0;border-radius:14px;align-items:center;gap:.4rem;padding:0 1rem;font-weight:700;display:inline-flex}.dsn-playlist-create button:disabled{opacity:.5;cursor:default}.dsn-add-channel{position:relative}.dsn-add-channel-button{border:1px solid var(--forest);background:var(--forest);color:#fff;min-height:40px;font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:.4rem;padding:0 .9rem;font-size:.875rem;font-weight:700;display:inline-flex}.dsn-add-channel-note{color:var(--ink-soft);margin:.3rem 0 0;font-size:.8125rem}.dsn-add-channel-menu{z-index:40;background:#fff;border-radius:16px;gap:.5rem;width:min(300px,86vw);padding:.7rem;display:grid;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 14px 40px #1c1c1e33}.dsn-add-channel-menu p{color:var(--ink-soft);margin:0;font-size:.8125rem}.dsn-add-channel-menu ul{gap:.25rem;max-height:220px;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.dsn-add-channel-menu li button{background:var(--canvas);width:100%;min-height:40px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;border:0;border-radius:10px;align-items:center;gap:.5rem;padding:0 .6rem;font-size:.875rem;display:flex}.dsn-add-channel-menu li button span{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.dsn-add-channel-menu li button small{color:var(--ink-soft)}.dsn-add-channel-menu li button:disabled{opacity:.6;cursor:default}.dsn-add-channel-menu form{gap:.4rem;display:flex}.dsn-add-channel-menu input{border:1px solid var(--line-strong);min-width:0;min-height:40px;font:inherit;border-radius:10px;flex:1;padding:0 .7rem;font-size:1rem}.dsn-add-channel-menu form button{background:var(--forest);color:#fff;min-height:40px;font:inherit;cursor:pointer;border:0;border-radius:10px;padding:0 .8rem;font-size:.8125rem;font-weight:700}.dsn-add-channel-menu form button:disabled{opacity:.5;cursor:default}.home-goal-setting label{cursor:pointer;align-items:flex-start;gap:.8rem;display:flex}.home-goal-setting input{width:22px;height:22px;accent-color:var(--forest);margin-top:2px}.home-goal-setting span{gap:2px;display:grid}.home-goal-setting small{color:var(--ink-soft);font-size:.8125rem}.dsn-channels-layout{grid-template-columns:minmax(0,1fr);gap:1.1rem;display:grid}.dsn-channels-main{align-content:start;gap:1.4rem;min-width:0;display:grid}.dsn-channels-side{order:-1;align-content:start;gap:.6rem;min-width:0;display:grid}.dsn-channels-side h2{color:var(--ink-soft);font-family:var(--font-body);letter-spacing:.06em;margin:0;font-size:.8125rem;font-weight:700}.dsn-chip-group{scrollbar-width:thin;gap:8px;min-width:0;padding-bottom:4px;display:flex;overflow-x:auto}.dsn-chip-group button{border:1px solid var(--line);min-height:44px;color:var(--ink);font:inherit;white-space:nowrap;cursor:pointer;background:#fff;border-radius:999px;flex:none;align-items:center;gap:6px;padding:0 14px;font-size:.9rem;font-weight:600;display:inline-flex}.dsn-chip-group button small{color:var(--ink-soft);font-size:.75rem;font-weight:500}.dsn-chip-group button[data-on=true]{border-color:var(--forest);background:var(--forest);color:#fff}.dsn-chip-group button[data-on=true] small{color:#fffc}.dsn-chip-group button:disabled{opacity:.45;cursor:not-allowed}.dsn-channels-pages{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;padding-top:.4rem;display:flex}.dsn-channels-pages button{border:1px solid var(--line);min-width:44px;min-height:44px;color:var(--ink);font:inherit;cursor:pointer;background:#fff;border-radius:12px;place-items:center;font-weight:700;display:inline-grid}.dsn-channels-pages button[data-on=true]{border-color:var(--forest);background:var(--forest);color:#fff}.dsn-channels-pages button:disabled{opacity:.4;cursor:not-allowed}@media (min-width:900px){.dsn-channels-layout{grid-template-columns:minmax(0,1fr) 220px;align-items:start}.dsn-channels-side{border:1px solid var(--line);background:#fff;border-radius:16px;order:0;padding:14px;position:sticky;top:88px}.dsn-channels-side .dsn-chip-group{flex-direction:column;overflow:visible}.dsn-channels-side .dsn-chip-group button{border-radius:12px;justify-content:space-between}}
@media (max-width:1023px){:root body :is(input,select,textarea):not([type=checkbox]):not([type=radio]):not([type=range]),.conversation-search input,.library-search input,.speaking-search input{font-size:1rem}.brand{min-height:44px}.language-segment button,.language-control[data-compact=true] .language-segment button{min-width:44px;min-height:44px}.main-content :is(.calendar-day,.calendar-empty){min-height:44px}.main-content .review-summary select{min-height:48px}.legal-page .legal-index a{align-items:center;min-height:44px;display:inline-flex}.legal-page .legal-index{gap:4px}.legal-page article>a,.main-content .payment-result-card>a,.main-content .review-state a{align-items:center;min-height:44px;display:inline-flex}}.main-content .video-learning-steps li[data-locked=true]{opacity:1}.main-content .video-learning-steps li[data-locked=true]>strong,.main-content .video-learning-steps li[data-locked=true]>small,.main-content .video-learning-steps li[data-locked=true]>span{color:var(--ink-soft)}.main-content .video-learning-steps li[data-locked=true]>span{border-color:var(--ink-soft)}.main-content :is(.conversation-search,.library-search):focus-within{border-color:var(--forest);box-shadow:0 0 0 2px var(--forest)}.legal-page .legal-note{border-left:3px solid var(--rust);background:var(--peach);color:var(--rust);margin-top:1.2rem;padding:.8rem 1rem;font-size:.9rem}:root :focus-visible{outline:3px solid var(--coral)!important;outline-offset:2px!important;box-shadow:0 0 0 2px var(--surface)!important}.video-finished-prompt{border:1px solid var(--bs-hairline);border-radius:var(--bs-radius);background:var(--canvas);color:var(--ink);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 20px;margin-top:12px;padding:14px 16px;display:flex}.video-finished-prompt p{max-width:56ch;color:var(--ink-soft);margin:4px 0 0;font-size:.9rem;line-height:1.55}.video-finished-actions{flex-wrap:wrap;align-items:flex-start;gap:10px;display:flex}.video-finished-prompt a{border-radius:var(--bs-radius);background:var(--forest);color:#fff;align-items:center;gap:8px;min-height:44px;padding:0 18px;font-weight:600;text-decoration:none;display:inline-flex}.dashboard-workbench .dashboard-recent-video-grid{scroll-snap-type:x proximity;scrollbar-width:thin;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;gap:.75rem;padding:.25rem .1rem .7rem;display:flex;overflow-x:auto}.dashboard-workbench .dashboard-recent-video-grid>a{scroll-snap-align:start;border-top:5px solid var(--video-color,var(--forest));flex:0 0 min(260px,78vw)}.recent-video-swatch{background:var(--video-color,var(--forest));width:10px;height:10px;box-shadow:0 0 0 3px color-mix(in srgb, var(--video-color,var(--forest)) 22%, transparent);border-radius:50%;position:absolute;top:.8rem;left:.8rem}.dashboard-workbench .dashboard-recent-video-grid>a>div:first-of-type{padding-left:1rem}.calendar-day[data-watched=true]{background:color-mix(in srgb, var(--canvas) 70%, #fff);border-color:var(--bs-hairline);color:var(--ink);font-weight:800}.calendar-day[data-selected=true][data-watched=true]{background:var(--forest);color:#fff}.calendar-watch-marks{justify-content:center;gap:2px;display:flex;position:absolute;bottom:5px;left:6px;right:6px}.calendar-watch-marks b{border-radius:3px;flex:1 1 0;max-width:12px;height:7px}.calendar-watched-list{gap:6px;margin:10px 0 12px;padding:0;list-style:none;display:grid}.calendar-watched-list a{border-left:5px solid var(--video-color);background:color-mix(in srgb, var(--video-color) 12%, transparent);min-height:36px;color:var(--ink);align-items:center;gap:8px;padding:6px 10px;font-size:.8rem;font-weight:650;line-height:1.3;text-decoration:none;display:flex}.calendar-watched-list a>span{background:var(--video-color);border-radius:50%;flex:none;width:9px;height:9px}.dashboard-workbench .dashboard-review-card{border:1px solid var(--bs-hairline);border-radius:var(--bs-radius);background:color-mix(in srgb, var(--mint-strong) 9%, var(--canvas));grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.85rem;padding:.7rem .9rem}.dashboard-workbench .dashboard-review-card[data-due=true]{border-color:var(--mint-strong);background:color-mix(in srgb, var(--mint-strong) 20%, var(--canvas))}.dashboard-workbench .dashboard-review-card>span:first-child{background:var(--forest);color:#fff;border-radius:50%;place-items:center;width:36px;height:36px;display:grid}.dashboard-workbench .dashboard-review-card .section-kicker{margin:0 0 .1rem;font-size:.62rem}.dashboard-workbench .dashboard-review-card h2{letter-spacing:0;font-size:1rem;line-height:1.3}.dashboard-workbench .dashboard-review-card p:not(.section-kicker){font-size:.8rem;line-height:1.45}.dashboard-workbench .dashboard-review-card>a{white-space:nowrap;min-height:38px;padding:0 1rem;font-size:.85rem}@media (max-width:560px){.dashboard-workbench .dashboard-review-card{grid-template-columns:auto minmax(0,1fr)}.dashboard-workbench .dashboard-review-card>a{grid-column:1/-1;justify-content:center}}.calendar-body{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:start;gap:1.5rem;display:grid}.calendar-body .calendar-detail{margin-top:0}@media (max-width:760px){.calendar-body{grid-template-columns:1fr;gap:.5rem}}.dashboard-command-bar{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.6rem;display:flex}.dashboard-command-bar .dashboard-heading{align-self:center;margin-right:auto}.dashboard-command-bar .dashboard-streak,.dashboard-command-bar .progress-overview[data-compact=true] .weekly-goal-card,.dashboard-command-bar .dashboard-primary-action{border:1px solid var(--bs-hairline);background:var(--canvas);width:92px;height:84px;min-height:0;color:var(--ink);text-align:center;white-space:normal;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:.2rem;padding:.5rem .4rem;display:flex;overflow:hidden}.dashboard-command-bar .progress-overview{flex:none}.dashboard-command-bar .weekly-goal-copy{flex-direction:column;align-items:center;gap:.1rem}.dashboard-command-bar .weekly-goal-tile-icon{color:var(--mint-strong)}.dashboard-command-bar .weekly-goal-copy .section-kicker{display:none}.dashboard-command-bar .weekly-goal-copy>span{white-space:normal;text-align:center;font-size:.62rem;line-height:1.2}.dashboard-command-bar .dashboard-streak>div:not(.streak-orbit):not(.streak-message):not(.streak-milestone){display:contents}.dashboard-command-bar .dashboard-streak h2{flex-direction:column;align-items:center;gap:0;font-size:.62rem;line-height:1.2;display:flex}.dashboard-command-bar .streak-orbit{color:#f76b15;background:#fee4d5}.dashboard-command-bar .dashboard-primary-action{gap:.35rem;font-size:.68rem;font-weight:650;line-height:1.2}.dashboard-command-bar .dashboard-primary-action svg{width:22px;height:22px;color:var(--forest)}.dashboard-command-bar .dashboard-primary-action:hover{border-color:var(--forest);background:var(--canvas);color:var(--forest)}@keyframes badge-pop{0%{transform:scale(.4)}55%{transform:scale(1.35)}to{transform:scale(1)}}@keyframes badge-ring{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--mint-strong) 55%, transparent)}70%,to{box-shadow:0 0 0 7px #0000}}@keyframes bell-ring{0%,to{transform:rotate(0)}15%{transform:rotate(14deg)}30%{transform:rotate(-12deg)}45%{transform:rotate(8deg)}60%{transform:rotate(-5deg)}}.nav-unread-badge,.mobile-nav-unread,.mobile-nav-link b{animation:.45s cubic-bezier(.34,1.56,.64,1) badge-pop,2.2s ease-out .45s infinite badge-ring}.dashboard-notification-stack{gap:.6rem;display:grid}.dashboard-message-notice{border-radius:var(--bs-radius);background:color-mix(in srgb, #e5484d 9%, var(--canvas));color:var(--ink);border:1px solid #e5484d;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.85rem;padding:.8rem .95rem;text-decoration:none;display:grid}.message-notice-bell{color:#fff;background:#e5484d;border-radius:50%;place-items:center;width:40px;height:40px;display:grid;position:relative}.message-notice-bell svg{transform-origin:50% 10%;animation:1.6s ease-in-out .3s 3 bell-ring}.message-notice-bell b{border:2px solid var(--canvas);background:var(--forest);color:#fff;border-radius:999px;place-items:center;min-width:22px;height:22px;padding:0 5px;font-size:.7rem;font-weight:900;animation:.45s cubic-bezier(.34,1.56,.64,1) badge-pop;display:grid;position:absolute;top:-6px;right:-6px}.message-notice-copy{gap:.1rem;min-width:0;display:grid}.message-notice-copy small{color:#c0272d;letter-spacing:.08em;font-size:.62rem;font-weight:800}.message-notice-copy strong{font-size:.95rem;line-height:1.3}.message-notice-copy em{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;font-style:normal;overflow:hidden}.dashboard-push-prompt{border:1px dashed var(--bs-hairline);border-radius:var(--bs-radius);color:var(--ink-soft);flex-wrap:wrap;align-items:center;gap:.6rem .8rem;padding:.55rem .9rem;font-size:.8rem;display:flex}.dashboard-push-prompt p{flex:200px;margin:0}.dashboard-push-prompt button{border-radius:var(--bs-radius);background:var(--forest);color:#fff;cursor:pointer;border:0;min-height:36px;padding:0 1rem;font-weight:650}@media (max-width:560px){.dashboard-command-bar{flex-wrap:wrap;justify-content:stretch}.dashboard-command-bar .dashboard-heading{flex:1 0 100%;margin-right:0}.dashboard-command-bar .dashboard-streak,.dashboard-command-bar .progress-overview,.dashboard-command-bar .progress-overview[data-compact=true] .weekly-goal-card,.dashboard-command-bar .dashboard-primary-action{flex:1 1 0;width:auto;min-width:0}.dashboard-command-bar .progress-overview{flex:1 1 0}.dashboard-command-bar .progress-overview[data-compact=true] .weekly-goal-card{width:100%}.dashboard-command-bar .weekly-goal-card .weekly-goal-copy{flex-direction:column;align-items:center;width:100%}.dashboard-command-bar .weekly-goal-card .weekly-goal-copy>span{text-overflow:clip;white-space:normal;text-align:center;overflow:visible}.dashboard-command-bar .weekly-goal-copy .section-kicker,.dashboard-command-bar .weekly-goal-copy>p{display:none!important}.dashboard-command-bar .weekly-goal-copy>*{text-align:center;margin:0}.dashboard-command-bar .weekly-goal-card .weekly-goal-copy{grid-template-columns:minmax(0,1fr);justify-items:center;row-gap:.1rem;display:grid!important}.dashboard-command-bar .weekly-goal-card .weekly-goal-copy>*{grid-column:1;max-width:100%;position:static!important}}.sentence-production-playback{gap:.35rem;margin-top:.75rem;display:grid}.sentence-production-playback>span{letter-spacing:.04em;opacity:.7;font-size:.75rem;font-weight:700}.sentence-production-playback audio{width:100%;min-height:44px}.calendar-journal-mark{background:#3e63dd;border-radius:2px;width:8px;height:8px;position:absolute;top:4px;right:6px;transform:rotate(45deg)}.day-journal{border-top:1px solid var(--bs-rule);gap:.75rem;margin-top:1.25rem;padding-top:1.1rem;display:grid}.day-journal h3{margin:.25rem 0 0;font-size:1.05rem}.day-journal h4{margin:0 0 .35rem;font-size:.85rem}.journal-muted{color:var(--ink-soft);margin:0;font-size:.82rem}.journal-error{color:#c0272d;margin:0;font-size:.85rem;font-weight:650}.journal-saved{color:#1e7b50;margin:0;font-size:.85rem;font-weight:650}.journal-timeline{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.journal-timeline li{align-items:flex-start;gap:.65rem;display:flex}.journal-timeline li>span{background:var(--forest);color:#fff;border-radius:50%;flex:none;place-items:center;width:28px;height:28px;display:grid}.journal-timeline li[data-type=speaking]>span{background:#d6409f}.journal-timeline li[data-type=review]>span{background:#30a46c}.journal-timeline li[data-type=quiz]>span{background:#f76b15}.journal-timeline li>div{gap:.1rem;min-width:0;display:grid}.journal-timeline strong{font-size:.85rem;line-height:1.35}.journal-timeline small{color:var(--ink-soft);font-size:.75rem}.journal-timeline a{color:var(--forest);font-size:.78rem;font-weight:650}.journal-learned ul{flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.journal-learned li{border:1px solid var(--bs-hairline);border-radius:999px;align-items:baseline;gap:.4rem;padding:.25rem .6rem;font-size:.8rem;display:inline-flex}.journal-learned li span{color:var(--ink-soft);font-size:.75rem}.journal-field{gap:.3rem;display:grid}.journal-field>span{font-size:.82rem;font-weight:650}.journal-field textarea{resize:vertical;border:1px solid var(--bs-hairline);border-radius:var(--bs-radius);width:100%;min-height:110px;color:var(--ink);font:inherit;background:#fff;padding:.7rem .8rem;font-size:.95rem;line-height:1.55}.journal-field small{color:var(--ink-soft);justify-self:end;font-size:.7rem}.journal-images{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.journal-images li{position:relative}.journal-images img{aspect-ratio:1;object-fit:cover;border:1px solid var(--bs-hairline);border-radius:8px;width:100%;display:block}.journal-images button{color:#fff;cursor:pointer;background:#101b36cc;border:0;border-radius:50%;place-items:center;width:28px;height:28px;display:grid;position:absolute;top:4px;right:4px}.journal-recordings,.journal-picker ul{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.journal-recordings li,.journal-picker li{border:1px solid var(--bs-hairline);border-radius:var(--bs-radius);flex-wrap:wrap;align-items:center;gap:.5rem .75rem;padding:.55rem .7rem;display:flex}.journal-recordings li>div,.journal-picker li>div{flex:160px;gap:.1rem;min-width:0;display:grid}.journal-recordings small,.journal-picker small{color:var(--ink-soft);font-size:.75rem}.journal-recordings li>button:last-child{width:36px;height:36px;color:var(--ink-soft);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;display:grid}.journal-audio{width:100%;min-height:44px}.journal-play,.journal-actions button,.journal-picker button{border:1px solid var(--bs-hairline);border-radius:var(--bs-radius);background:var(--canvas);min-height:44px;color:var(--ink);cursor:pointer;justify-content:center;align-items:center;gap:.4rem;padding:0 1rem;font-size:.85rem;font-weight:650;display:inline-flex}.journal-actions{flex-wrap:wrap;gap:.5rem;display:flex}.journal-actions .journal-save{border-color:var(--forest);background:var(--forest);color:#fff;margin-left:auto}.journal-actions button:disabled,.journal-play:disabled{opacity:.55;cursor:default}.tsb{gap:1.1rem;margin-block:1.25rem;display:grid}.tsb-head h2{margin:0;font-size:clamp(1.6rem,3.2vw,2.3rem);line-height:1.15}.tsb-head p{color:var(--ink-soft);margin:.3rem 0 0;font-size:.95rem}.tsb-head p b{color:#2f6fed}.tsb-legend{flex-wrap:wrap;align-items:center;gap:.4rem 1rem;margin:.8rem 0 0;padding:0;font-size:.8rem;list-style:none;display:flex}.tsb-legend li{align-items:center;gap:.35rem;display:inline-flex}.tsb-legend i{border-radius:50%;width:10px;height:10px}.tsb-legend-hint{color:var(--ink-soft)}.tsb-layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:1.1rem;display:grid}@media (min-width:1100px){.tsb-layout{grid-template-columns:minmax(0,1fr) 340px}.tsb-panel{position:sticky;top:1rem}}.tsb-grid{grid-template-columns:repeat(auto-fill,minmax(215px,1fr));gap:.85rem;display:grid}.tsb-card{color:var(--ink);text-align:left;cursor:pointer;background:#fff;border:2px solid #0000;border-radius:20px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.55rem .8rem;padding:1rem;transition:transform .16s,box-shadow .16s,border-color .16s;display:grid;box-shadow:0 2px 10px #101b3612}.tsb-card:hover{transform:translateY(-2px);box-shadow:0 8px 22px #101b361f}.tsb-card[data-active=true]{border-color:#2f6fed}.tsb-card:disabled{cursor:progress}.tsb-ring{background:conic-gradient(#2f6fed var(--tsb-progress), #e6eaf2 0);border-radius:50%;place-items:center;width:54px;height:54px;display:grid;position:relative}.tsb-card[data-complete=true] .tsb-ring{background:conic-gradient(#f5a524 var(--tsb-progress), #e6eaf2 0)}.tsb-ring>span{color:#1d4fc4;background:#eaf1ff;border-radius:50%;place-items:center;width:42px;height:42px;font-size:1.15rem;font-weight:800;display:grid}.tsb-card[data-complete=true] .tsb-ring>span{color:#946200;background:#fff1cc}.tsb-ring>i{background:#0e9f8a;border:2px solid #fff;border-radius:50%;width:14px;height:14px;position:absolute;bottom:-1px;right:-1px}.tsb-card-main{gap:.25rem;min-width:0;display:grid}.tsb-card-main strong{text-overflow:ellipsis;white-space:nowrap;font-size:1rem;overflow:hidden}.tsb-card-main em{border-radius:999px;align-items:center;gap:.25rem;width:fit-content;padding:.12rem .55rem;font-size:.72rem;font-style:normal;font-weight:700;display:inline-flex}.tsb-card-main em[data-tone=done]{color:#946200;background:#fff1cc}.tsb-card-main em[data-tone=streak]{color:#3447c8;background:#e8eeff}.tsb-card-main em[data-tone=going]{color:#0a7867;background:#e3f6f1}.tsb-card-main em[data-tone=idle]{color:#5b6575;background:#eef1f6}.tsb-goal{color:var(--ink-soft);grid-column:1/-1;justify-content:space-between;align-items:baseline;font-size:.78rem;display:flex}.tsb-goal b{color:var(--ink);font-size:1.15rem}.tsb-goal b span{color:var(--ink-soft);font-size:.8rem;font-weight:600}.tsb-dots{grid-column:1/-1;gap:6px;display:flex}.tsb-dots i{background:#e6eaf2;border-radius:50%;width:14px;height:14px}.tsb-dots i[data-on=true]{background:#2f6fed}.tsb-card[data-complete=true] .tsb-dots i[data-on=true]{background:#f5a524}.tsb-mini{flex-wrap:wrap;grid-column:1/-1;gap:.2rem .7rem;font-size:.72rem;display:flex}.tsb-panel{color:var(--ink);background:#fff;border-radius:22px;gap:.7rem;padding:1.1rem;display:grid;box-shadow:0 4px 20px #101b361a}.tsb-panel-empty{color:var(--ink-soft);font-size:.9rem}.tsb-panel>header{align-items:center;gap:.75rem;display:flex}.tsb-panel>header>div{flex:1;min-width:0}.tsb-panel h3{margin:0;font-size:1.2rem}.tsb-panel header p{color:var(--ink-soft);margin:.1rem 0 0;font-size:.8rem}.tsb-panel h4{letter-spacing:.04em;margin:.5rem 0 0;font-size:.78rem}.tsb-panel-avatar{color:#1d4fc4;background:#eaf1ff;border-radius:50%;place-items:center;width:48px;height:48px;font-size:1.3rem;font-weight:800;display:grid}.tsb-panel>header>button{width:40px;height:40px;color:var(--ink);cursor:pointer;background:#eef1f6;border:0;border-radius:50%;place-items:center;display:grid}.tsb-bars{background:#f4f6fb;border-radius:16px;align-items:flex-end;gap:6px;height:170px;padding:.7rem .6rem .5rem;display:flex}.tsb-bars>div{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:4px;min-width:0;height:100%;display:flex}.tsb-bars small{color:var(--ink-soft);font-size:.65rem}.tsb-bars b{color:var(--ink-soft);font-size:.72rem;font-weight:700}.tsb-bars>div[data-today=true] b{color:#2f6fed}.tsb-bars>div>span{background:#dde2ec;border-radius:8px;flex-direction:column-reverse;gap:2px;width:min(100%,26px);min-height:2px;display:flex;overflow:hidden}.tsb-bars>div>span:has(i){background:0 0}.tsb-bars>div>span i{border-radius:4px;min-height:4px;display:block}.tsb-activity{gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.tsb-activity li{background:#f4f6fb;border-radius:12px;align-items:center;gap:.6rem;padding:.55rem .7rem;display:flex}.tsb-activity li>span{color:#fff;border-radius:50%;flex:none;place-items:center;width:24px;height:24px;display:grid}.tsb-activity li>div{flex:1;min-width:0;display:grid}.tsb-activity strong{font-size:.85rem}.tsb-activity small{color:var(--ink-soft);font-size:.72rem}.tsb-activity em{font-size:.72rem;font-style:normal;font-weight:800}.tsb-activity .tsb-empty{color:var(--ink-soft);font-size:.85rem}.tsb-cheer{color:#fff;cursor:pointer;background:#2f6fed;border:0;border-radius:999px;justify-content:center;align-items:center;gap:.5rem;min-height:48px;font-size:.95rem;font-weight:700;display:inline-flex}.tsb-compose{gap:.5rem;display:grid}.tsb-presets{flex-wrap:wrap;gap:.4rem;display:flex}.tsb-presets button,.tsb-compose>div:last-child button{min-height:40px;color:var(--ink);cursor:pointer;background:#fff;border:1px solid #d5dbe8;border-radius:999px;padding:0 .85rem;font-size:.8rem;font-weight:650}.tsb-compose textarea{width:100%;font:inherit;border:1px solid #d5dbe8;border-radius:12px;padding:.6rem .75rem;font-size:.9rem}.tsb-compose>div:last-child{gap:.5rem;display:flex}.tsb-compose>div:last-child button:first-child{color:#fff;background:#2f6fed;border-color:#2f6fed;align-items:center;gap:.4rem;display:inline-flex}.tsb-compose button:disabled{opacity:.55;cursor:default}.tsb-sent{color:#0a7867;margin:0;font-size:.85rem;font-weight:650}.tsb-error{color:#b54708;margin:0;font-size:.85rem;font-weight:650}.main-content .teacher-progress-workspace .teacher-hero{background:0 0;border:0;min-height:0;padding:.4rem 0 .2rem}.main-content .teacher-progress-workspace .teacher-hero h1:not(.sr-only){letter-spacing:0;margin:.1rem 0 .3rem;font-size:clamp(1.05rem,1.6vw,1.3rem);font-weight:600;line-height:1.3}.main-content .teacher-progress-workspace .teacher-hero p:last-child{font-size:.8rem}@media (max-width:560px){.tsb-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.tsb-card{gap:.45rem .55rem;padding:.75rem}.tsb-ring{width:44px;height:44px}.tsb-ring>span{width:34px;height:34px;font-size:.95rem}.tsb-card-main strong{font-size:.9rem}.tsb-mini{font-size:.66rem}}.moments-panel{border:1px solid var(--bs-hairline);border-radius:var(--bs-radius);color:var(--ink);background:#fff;gap:12px;margin-top:12px;padding:16px;display:grid;position:relative}.moments-close{width:44px;height:44px;color:var(--ink-soft);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;display:grid;position:absolute;top:8px;right:8px}.moments-close:hover{background:var(--canvas);color:var(--ink)}.moments-panel:has(>.moments-close)>h3{padding-right:44px}.moments-panel:has(>.moments-close)>.moments-session-head{padding-right:44px}.pick-nav{justify-content:space-between;align-items:center;gap:12px;display:flex}.pick-back{border:1px solid var(--forest);min-height:44px;color:var(--forest);font:inherit;cursor:pointer;background:#fff;border-radius:999px;align-items:center;gap:6px;padding:0 16px 0 12px;font-weight:700;display:inline-flex}.moments-panel h3{align-items:center;gap:8px;margin:0;font-size:1.05rem;display:flex}.moments-panel h4{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);margin:4px 0 0;font-size:.8125rem}.moments-panel p{margin:0}.moments-status{color:var(--ink-soft);align-items:center;gap:8px;font-size:.9rem;display:flex}.moments-kicker{color:var(--ink-soft);font-size:.8125rem}.moments-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.moments-list li{border:1px solid var(--bs-hairline);border-radius:14px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.moments-list li[data-done=true]{background:var(--canvas)}.moments-list label{cursor:pointer;flex:1;align-items:flex-start;gap:10px;min-width:0;display:flex}.moments-list input{width:20px;height:20px;accent-color:var(--forest);margin-top:8px}.moments-card{gap:2px;min-width:0;font-size:.875rem;display:grid}.moments-card small{color:var(--ink-soft)}.moments-actions,.moments-controls{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.moments-actions button,.moments-actions a,.moments-controls button,.moments-items button,.moments-link{border:1px solid var(--bs-hairline);min-height:40px;color:var(--ink);font:inherit;cursor:pointer;background:#fff;border-radius:999px;align-items:center;gap:6px;padding:0 14px;font-size:.875rem;font-weight:600;text-decoration:none;display:inline-flex}.moments-actions button:disabled,.moments-items button:disabled{opacity:.55;cursor:default}.moments-controls button[aria-pressed=true],.moments-actions .moments-primary{border-color:var(--forest);background:var(--forest);color:#fff}.moments-steps{flex-wrap:wrap;gap:6px;margin:6px 0 0;padding:0;list-style:none;display:flex}.moments-steps li{background:var(--canvas);color:var(--ink-soft);border-radius:999px;padding:2px 10px;font-size:.75rem;font-weight:600}.moment-transcript{font-size:1rem;line-height:1.7}.moment-transcript mark{color:var(--ink);background:#fbe3a1;border-radius:4px;padding:0 3px}.moments-items{gap:6px;margin:0;padding:0;list-style:none;display:grid}.moments-items li{justify-content:space-between;align-items:center;gap:10px;display:flex}.moments-items small{color:var(--ink-soft);margin-left:6px}.pick-page{gap:14px;width:min(100% - 32px,820px);margin:0 auto;padding:24px 0 64px;display:grid}.pick-head{gap:6px;display:grid}.pick-head h1{font-family:var(--font-display);margin:0;font-size:clamp(1.75rem,5vw,2.4rem);line-height:1.15}.pick-head p{color:var(--ink-soft);margin:0}.pick-brand{color:var(--ink);font-family:var(--font-display);font-size:1.25rem;font-weight:700;text-decoration:none}.pick-player{margin-top:4px}.pick-byo a{color:var(--ink-soft);font-size:.875rem}.picks-admin{gap:14px;max-width:860px;display:grid}.picks-admin h1{font-family:var(--font-display);margin:0}.picks-row{flex-wrap:wrap;gap:8px;display:flex}.picks-admin input,.picks-admin select,.picks-admin textarea{border:1px solid var(--bs-hairline);min-height:40px;font:inherit;color:var(--ink);background:#fff;border-radius:10px;padding:6px 10px;font-size:1rem}.picks-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;display:grid}.picks-grid label{color:var(--ink-soft);gap:4px;font-size:.8125rem;display:grid}.picks-moment{gap:8px;width:100%;display:grid}.picks-include{align-items:center;gap:8px;display:flex}.picks-include input{width:20px;height:20px;min-height:0;accent-color:var(--forest)}.weekly-pick{color:var(--ink);background:#f0e6c8;border-radius:16px;align-items:center;gap:12px;margin:4px 0 12px;padding:12px 14px;text-decoration:none;display:flex}.weekly-pick-icon{background:var(--forest);color:#fff;border-radius:50%;flex:none;place-items:center;width:38px;height:38px;display:grid}.weekly-pick-copy{flex:1;gap:1px;min-width:0;display:grid}.weekly-pick-copy small{color:#5a4a22;font-size:.75rem}.weekly-pick-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:.9375rem;overflow:hidden}.weekly-pick-go{white-space:nowrap;align-items:center;gap:4px;font-size:.8125rem;font-weight:700;display:inline-flex}.calendar-day[data-pick-week=true]{box-shadow:inset 0 -3px #c08a2e}.learn-hub{gap:14px;margin:12px 0;display:grid}.learn-hub h2{margin:0 0 6px;font-size:1rem}.learn-hub ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.learn-hub a{border:1px solid var(--bs-hairline);color:var(--ink);background:#fff;border-radius:14px;align-items:center;gap:10px;padding:10px 12px;text-decoration:none;display:flex}.learn-hub a span{gap:1px;display:grid}.learn-hub small{color:var(--ink-soft)}.moments-session-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;display:flex}.moments-session-head h3{margin:2px 0 0}.moments-controls button span{display:inline}.moments-live-line{color:#fff;background:#1f2238;border-radius:14px;min-height:3.4em;margin:0;padding:12px 14px;font-size:clamp(1.05rem,2.4vw,1.4rem);line-height:1.45}.moments-live-idle{color:#ffffffb3;font-size:.9375rem}.moments-live-line mark,.moment-transcript mark{color:#14161f;border-radius:5px;padding:0 4px}mark[data-kind=chunk]{background:#ffc94d}mark[data-kind=word]{background:#8fc1ff}.moments-session-actions{z-index:3;background:linear-gradient(#fff0,#fff 30%);padding:6px 0;position:sticky;bottom:0}.moments-more summary{cursor:pointer;min-height:44px;color:var(--ink);align-items:center;font-size:.9375rem;font-weight:600;display:flex}.moments-more[open] summary{margin-bottom:4px}.moments-more>*+*{margin-top:10px}.moments-items li[data-kind=chunk]{border-left:4px solid #ffc94d;padding-left:8px}.moments-items li[data-kind=word]{border-left:4px solid #8fc1ff;padding-left:8px}.moments-floaters{z-index:60;left:12px;right:12px;bottom:calc(env(safe-area-inset-bottom,0px) + 88px);pointer-events:none;gap:8px;display:grid;position:fixed}.moments-floater{pointer-events:auto;border-radius:16px;justify-content:space-between;align-items:center;gap:10px;padding:10px 10px 10px 14px;animation:.22s ease-out moments-pop;display:flex;box-shadow:0 10px 30px #14161f4d}.moments-floater[data-kind=chunk]{color:#14161f;background:#ffc94d}.moments-floater[data-kind=word]{color:#0d1a33;background:#8fc1ff}.moments-floater span{gap:1px;min-width:0;display:grid}.moments-floater strong{font-size:1.0625rem;line-height:1.25}.moments-floater small{opacity:.85;font-size:.875rem}.moments-floater button{color:#fff;cursor:pointer;background:#14161fd9;border:0;border-radius:50%;flex:none;place-items:center;width:44px;height:44px;display:grid}.moments-floater button:disabled{opacity:.6}@keyframes moments-pop{0%{opacity:0;transform:translateY(10px)scale(.97)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.moments-floater{animation:none}}@media (min-width:900px){.moments-floaters{width:380px;bottom:24px;left:auto;right:24px}}@media (max-width:480px){.moments-controls{width:100%}.moments-controls button{flex:1;justify-content:center}}.video-player-frame{scroll-margin-top:68px}@media (min-width:600px) and (max-width:899px){.moments-floaters{width:min(440px,60vw);left:auto;right:16px}}.choice-card{gap:14px;display:grid}.choice-prompt{margin:0;font-size:1.0625rem;font-weight:600;line-height:1.4}.choice-word{font-family:var(--font-display);margin:0;font-size:clamp(1.75rem,6vw,2.5rem)}.choice-dialogue{gap:8px;margin:0;padding:0;list-style:none;display:grid}.choice-dialogue li{background:var(--canvas);border-radius:14px;align-items:flex-start;gap:10px;padding:10px 12px;font-size:1.0625rem;line-height:1.5;display:flex}.choice-dialogue li[data-speaker=B]{background:#e8eefc}.choice-dialogue b{background:var(--forest);color:#fff;border-radius:50%;flex:none;place-items:center;width:26px;height:26px;font-size:.8125rem;display:grid}.choice-dialogue mark{color:#14161f;background:#ffc94d;border-radius:6px;padding:0 6px;font-weight:700}.choice-options{gap:10px;display:grid}.choice-options button{border:2px solid var(--bs-hairline);min-height:52px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:#fff;border-radius:14px;justify-content:space-between;align-items:center;gap:10px;padding:10px 16px;font-size:1.0625rem;display:flex}.choice-options button[data-state=correct]{background:#e3f6ea;border-color:#2f9e62}.choice-options button[data-state=wrong]{background:#fde8e8;border-color:#d64545}.choice-options button[data-state=dim]{opacity:.55}.choice-feedback{background:#fdecec;border-radius:14px;gap:6px;padding:12px 14px;display:grid}.choice-feedback[data-correct=true]{background:#e3f6ea}.choice-feedback p{margin:0}.choice-sentence{color:var(--ink-soft);font-size:.9375rem}.choice-next{background:var(--forest);color:#fff;min-height:48px;font:inherit;cursor:pointer;border:0;border-radius:999px;justify-self:start;align-items:center;gap:8px;margin-top:4px;padding:0 20px;font-weight:700;display:inline-flex}.clip-player{gap:10px;display:grid}.clip-player-frame{aspect-ratio:16/9;background:#14161f;border-radius:14px;width:100%;position:relative;overflow:hidden}.clip-player-frame iframe{pointer-events:none;border:0;width:100%;height:100%;position:absolute;inset:0}.clip-player-button{background:var(--forest);color:#fff;min-height:48px;font:inherit;cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:8px;font-size:1rem;font-weight:700;display:inline-flex}.clip-player-button:disabled{opacity:.6;cursor:default}@media (min-width:700px){.choice-options{grid-template-columns:repeat(3,1fr)}.clip-player-frame{max-width:560px}}.clip-player-mask{pointer-events:none;background:#000;height:30%;position:absolute;bottom:0;left:0;right:0}.lib-overview{align-content:start;gap:.65rem;display:grid}.lib-overview-head{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.lib-overview-head .section-kicker{color:#fff;opacity:.9;margin:0}.lib-level{color:#fff;white-space:nowrap;background:#ffffff2e;border-radius:999px;padding:.35rem .8rem;font-size:.8125rem;font-weight:700}.lib-bar{background:#fff3;border-radius:999px;height:12px;display:flex;overflow:hidden}.lib-bar i{height:100%;display:block}.lib-bar i[data-tier=known]{background:#34c759}.lib-bar i[data-tier=middle]{background:#ff9500}.lib-bar i[data-tier=new]{background:#ff3b30}.lib-bar-scale{color:#fff;opacity:.7;justify-content:space-between;margin:-.25rem 0 0;padding:0;font-size:.6875rem;list-style:none;display:flex}.lib-legend{color:#fff;flex-wrap:wrap;gap:.4rem 1rem;margin:0;padding:0;font-size:.875rem;list-style:none;display:flex}.lib-legend li:before{content:"";background:#fff;border-radius:50%;width:9px;height:9px;margin-right:6px;display:inline-block}.lib-legend li[data-tier=known]:before{background:#34c759}.lib-legend li[data-tier=middle]:before{background:#ff9500}.lib-legend li[data-tier=new]:before{background:#ff3b30}.lib-overview-note{color:#fff;margin:0;font-size:.9375rem;font-weight:600}.lib-tabs{background:#e6dfd1;border-radius:14px;grid-template-columns:1fr 1fr;gap:4px;padding:4px;display:grid}.lib-tabs button{min-height:44px;color:var(--ink-soft);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:11px;font-weight:700}.lib-tabs button[data-selected=true]{color:var(--ink);background:#fff;box-shadow:0 1px 3px #1c1c1e1f}.lib-controls{gap:.6rem;display:grid}.lib-modes{flex-wrap:wrap;gap:.5rem;display:flex}.lib-modes button{border:1px solid var(--bs-hairline);min-height:44px;color:var(--ink);font:inherit;cursor:pointer;background:#fff;border-radius:999px;align-items:center;gap:6px;padding:0 14px;font-size:.875rem;font-weight:600;display:inline-flex}.lib-modes button[data-on=true]{border-color:var(--forest);background:var(--forest);color:#fff}.lib-modes button[data-danger=true][data-on=true]{background:#d64545;border-color:#d64545}.lib-filter-panel{background:#fff;border-radius:16px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.6rem;padding:.8rem;display:grid}.lib-mode-hint{color:#8a2020;background:#fdecec;border-radius:12px;margin:0;padding:.5rem .8rem;font-size:.875rem}.lib-section{gap:.75rem;display:grid}.lib-tiers{gap:.5rem;padding-bottom:2px;display:flex;overflow-x:auto}.lib-tiers button{border:1px solid var(--bs-hairline);min-height:44px;color:var(--ink);font:inherit;cursor:pointer;background:#fff;border-radius:999px;flex:none;align-items:center;gap:6px;padding:0 16px;font-size:.9375rem;font-weight:600;display:inline-flex}.lib-tiers small{color:var(--ink-soft);font-size:.75rem}.lib-tiers button[data-selected=true]{border-color:var(--forest);background:var(--forest);color:#fff}.lib-tiers button[data-selected=true] small{color:#fffc}.lib-tiers button[data-tier=new][data-selected=true]{background:#ff3b30;border-color:#ff3b30}.lib-tiers button[data-tier=middle][data-selected=true]{color:#1c1c1e;background:#ff9500;border-color:#ff9500}.lib-tiers button[data-tier=known][data-selected=true]{color:#0d2c18;background:#34c759;border-color:#34c759}.lib-empty-tier{color:var(--ink-soft);text-align:center;margin:0;padding:1rem}.lib-word-list,.lib-video-list{gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.lib-word{background:#fff;border-radius:16px;align-items:center;gap:.5rem;padding:.7rem .6rem .7rem 1.15rem;display:flex;position:relative;overflow:hidden;box-shadow:0 1px 2px #1c1c1e0f}.lib-word:before{content:"";background:#ff3b30;width:5px;position:absolute;inset:0 auto 0 0}.lib-word[data-tier=middle]:before{background:#ff9500}.lib-word[data-tier=known]:before{background:#34c759}.lib-word-main{min-width:0;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;gap:3px;padding:4px 0;display:grid}.lib-word-top{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.lib-word-top strong{font-family:var(--font-display);font-size:1.25rem;line-height:1.2}.lib-meaning{font-size:.9375rem}.lib-quote{color:var(--ink-soft);font-size:.8125rem;font-style:italic;line-height:1.4}.lib-source{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:6px;font-size:.75rem;display:flex;overflow:hidden}.lib-source i{background:var(--forest);border-radius:50%;flex:none;width:7px;height:7px}.lib-word[data-size=small] .lib-source,.lib-word[data-size=small] .lib-quote,.lib-word[data-size=medium] .lib-quote{display:none}.lib-word-side{flex:none;justify-items:end;gap:4px;display:grid}.lib-word-side em{font-size:.75rem;font-style:normal;font-weight:700}.lib-word-side em[data-tier=new]{color:#d6281f}.lib-word-side em[data-tier=middle]{color:#b35f00}.lib-word-side em[data-tier=known]{color:#1f8a43}.lib-meter{gap:3px;display:inline-flex}.lib-meter i{background:#e3dfd6;border-radius:3px;width:12px;height:5px}.lib-meter[data-tier=new] i[data-on=true]{background:#ff3b30}.lib-meter[data-tier=middle] i[data-on=true]{background:#ff9500}.lib-meter[data-tier=known] i[data-on=true]{background:#34c759}.lib-pos{color:#1f6b43;background:#e3f6ea;border-radius:999px;padding:2px 9px;font-size:.75rem;font-weight:700;display:inline-block}.lib-pos[data-type=phrase]{color:#2b4aa8;background:#e0e9ff}.lib-pos[data-type=pattern]{color:#7a4b00;background:#fbeccc}.lib-listen,.lib-delete,.lib-check{width:44px;height:44px;color:var(--ink-soft);cursor:pointer;background:0 0;border:0;border-radius:12px;flex:none;place-items:center;display:grid}.lib-listen:hover{background:var(--canvas)}.lib-delete{color:#c2271f;background:#fdecec}.lib-check{background:var(--canvas)}.lib-check input{width:22px;height:22px;accent-color:var(--forest)}.lib-check[data-selected=true]{background:#dfeee6}.lib-video-summary{color:var(--ink-soft);margin:0;font-size:.875rem}.lib-video{background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 1px 2px #1c1c1e0f}.lib-video-thumb{aspect-ratio:16/9;background:#14161f;position:relative}.lib-video-thumb img{object-fit:cover;width:100%;height:100%}.lib-channel{color:#fff;text-overflow:ellipsis;white-space:nowrap;background:#14161f;border-radius:999px;max-width:70%;padding:4px 12px;font-size:.75rem;font-weight:700;position:absolute;top:10px;left:10px;overflow:hidden}.lib-resume{color:#fff;background:#14161fe0;border-radius:999px;align-items:center;gap:6px;min-height:44px;padding:0 16px;font-size:.875rem;font-weight:700;text-decoration:none;display:inline-flex;position:absolute;bottom:10px;right:10px}.lib-video-delete{position:absolute;top:6px;right:6px}.lib-video-head{justify-content:space-between;align-items:baseline;gap:.75rem;padding:.85rem 1rem .4rem;display:flex}.lib-video-head h2{font-family:var(--font-display);margin:0;font-size:1.125rem;line-height:1.3}.lib-video-head span{color:var(--forest);flex:none;font-size:.8125rem;font-weight:700}.lib-video-table{border-collapse:collapse;width:100%}.lib-video-table th{color:var(--ink-soft);text-align:left;padding:.3rem .5rem;font-size:.6875rem;font-weight:600}.lib-video-table th:first-child,.lib-video-table td:first-child{padding-left:1rem}.lib-video-table th:last-child,.lib-video-table td:last-child{padding-right:1rem}.lib-video-table td{border-top:1px solid var(--bs-hairline);vertical-align:middle;padding:.5rem;font-size:.875rem}.lib-row-word{min-height:44px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:0;font-weight:700;display:inline-flex}.lib-row-word i{background:#ff3b30;border-radius:50%;flex:none;width:8px;height:8px}.lib-video-table tr[data-tier=middle] .lib-row-word i{background:#ff9500}.lib-video-table tr[data-tier=known] .lib-row-word i{background:#34c759}.lib-time{min-height:44px;color:var(--forest);font-variant-numeric:tabular-nums;align-items:center;font-weight:700;text-decoration:none;display:inline-flex}@media (max-width:480px){.lib-video-table td:nth-child(3){font-size:.8125rem}.lib-pos{padding:1px 7px;font-size:.6875rem}}@media (min-width:900px){.lib-video-list{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}.lib-video-delete{color:#fff;background:#d64545;box-shadow:0 2px 8px #00000059}@media (min-width:600px){.lib-video-list{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}@media (min-width:700px){.lib-overview{grid-template-columns:minmax(0,1fr) auto;column-gap:1.5rem}.lib-overview>*{grid-column:1}.lib-overview>.library-add-source{grid-area:1/2/span 4;align-self:center}}.lib-video .lib-video-delete{color:#fff;background:#d64545;border:2px solid #fff;top:8px;right:8px;box-shadow:0 2px 10px #0006}.lib-pos{white-space:nowrap}.lib-video .lib-video-delete{color:#fff!important;background:#d64545!important;border:2px solid #fff!important;box-shadow:0 2px 10px #0006!important}.lib-video .lib-video-delete:hover:not(:disabled){background:#b83636!important}.item-context-actions{flex-wrap:wrap;gap:.5rem;margin-top:.6rem;display:flex}.item-context-actions button{border:1px solid var(--bs-hairline);min-height:44px;color:var(--ink);font:inherit;cursor:pointer;background:#fff;border-radius:999px;align-items:center;gap:6px;padding:0 16px;font-size:.9375rem;font-weight:600;display:inline-flex}.item-context .clip-player,.item-context .library-video-frame{margin-top:.75rem}.item-next-step{color:#fff;background:#14161f;border-radius:18px;gap:.7rem;padding:1rem;display:grid}.item-next-step h3{color:#ffffffbf;letter-spacing:.06em;margin:0;font-size:.8125rem;font-weight:700}.item-next-reason{align-items:flex-start;gap:8px;margin:0;font-size:1.0625rem;font-weight:600;line-height:1.45;display:flex}.item-next-reason svg{color:#ffc94d;flex:none;margin-top:3px}.item-primary-cta{color:#14161f;background:#ffc94d;border-radius:14px;justify-content:center;align-items:center;gap:8px;min-height:56px;font-size:1.125rem;font-weight:800;text-decoration:none;display:flex}.item-other-practice{gap:.4rem;display:grid}.item-other-practice>span{color:#ffffffa6;font-size:.75rem;font-weight:600}.item-other-practice ul{flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.item-other-practice a,.item-other-practice button{color:#fff;min-height:44px;font:inherit;cursor:pointer;background:0 0;border:1px solid #ffffff47;border-radius:999px;align-items:center;gap:6px;padding:0 14px;font-size:.875rem;font-weight:600;text-decoration:none;display:inline-flex}.item-next-step[data-reason=maintain_mastery]{color:#14361f;background:#e3f6ea}.item-next-step[data-reason=maintain_mastery] h3,.item-next-step[data-reason=maintain_mastery] .item-other-practice>span{color:#2f6b45}.item-next-step[data-reason=maintain_mastery] .item-next-reason svg{color:#1f8a43}.item-next-step[data-reason=maintain_mastery] .item-other-practice a,.item-next-step[data-reason=maintain_mastery] .item-other-practice button{color:#14361f;border-color:#9cc9ad}.item-progress{border:1px solid var(--bs-hairline);background:#fff;border-radius:18px;gap:.6rem;padding:1rem;display:grid}.item-progress h3{margin:0;font-size:1rem}.item-progress-now{margin:0;font-size:.9375rem}.item-stages{grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;margin:0;padding:0;list-style:none;display:grid}.item-stages li{color:var(--ink-soft);text-align:center;justify-items:center;gap:6px;font-size:.75rem;display:grid}.item-stages i{background:#e3dfd6;border-radius:3px;width:100%;height:6px}.item-stages li[data-state=done] i{background:#34c759}.item-stages li[data-state=current] i{background:#ff9500}.item-stages li[data-state=current]{color:var(--ink);font-weight:700}.item-progress-next{background:var(--canvas);border-radius:12px;margin:0;padding:.6rem .8rem;font-size:.9375rem;line-height:1.45}.learning-evidence-panel{margin-top:-.25rem}.learning-evidence-panel h4{margin:.9rem 0 .4rem;font-size:.9375rem}.learning-evidence-grid{grid-template-columns:minmax(0,1fr)}.learning-evidence-grid dt{flex-wrap:wrap;align-items:baseline;gap:4px 10px;display:flex}.learning-evidence-grid dt em{color:#7a4b00;background:#fbeccc;border-radius:999px;padding:1px 8px;font-size:.6875rem;font-style:normal;font-weight:700}.learning-evidence-state{align-items:center;gap:6px;font-size:.8125rem;display:inline-flex}.learning-evidence-state small{font-size:.8125rem}.learning-evidence-how{color:var(--ink-soft);font-size:.8125rem;line-height:1.5}.learning-evidence-grid dd a{min-height:44px;color:var(--forest);justify-self:start;align-items:center;gap:6px;font-size:.9375rem;font-weight:700;text-decoration:none;display:inline-flex}.learning-evidence-requirements{gap:6px;margin:0;padding:0;list-style:none;display:grid}.learning-evidence-requirements li{align-items:flex-start;gap:8px;font-size:.875rem;line-height:1.4;display:flex}.learning-evidence-requirements li svg{color:var(--ink-soft);flex:none;margin-top:2px}.learning-evidence-requirements li[data-done=true] svg{color:#2f9e62}.learning-evidence-requirements li[data-done=true] span{color:var(--ink-soft);text-decoration:line-through}.learning-evidence-requirements small{color:var(--ink-soft);white-space:nowrap;margin-left:auto;padding-left:8px}.item-source{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.75rem;display:grid}.item-source-thumb{aspect-ratio:16/9;object-fit:cover;border-radius:10px;width:96px;height:auto}.item-source .library-source-actions{flex-wrap:wrap;grid-column:1/-1;gap:.5rem;display:flex}.library-more-info{border:1px solid var(--bs-hairline);background:#fff;border-radius:16px;padding:.5rem 1rem}.library-more-info>summary{cursor:pointer;align-items:center;min-height:44px;font-size:.9375rem;font-weight:600;display:flex}.library-more-status{gap:6px;margin:.4rem 0 .8rem;display:grid}.library-more-status span{font-size:.8125rem;font-weight:600}.library-more-status small{color:var(--ink-soft);font-size:.8125rem;line-height:1.5}.library-detail-panel h2,.library-detail-panel blockquote{overflow-wrap:anywhere}.library-quote-section.item-context{border:1px solid var(--bs-hairline);color:var(--ink);background:#fff}.library-quote-section.item-context>span{color:var(--ink-soft);font-size:.8125rem;font-weight:700}.library-quote-section.item-context blockquote{font-size:clamp(1.1rem,4.4vw,1.5rem)}.picks-moment>input,.picks-moment>textarea{width:100%}.picks-basis{background:var(--canvas);color:var(--ink-soft);border-radius:12px;margin:0;padding:.6rem .8rem;font-size:.8125rem;line-height:1.55}.picks-chunks{gap:6px;margin:0;padding:0;list-style:none;display:grid}.picks-chunks li{background:#fff;border-left:4px solid #ffc94d;border-radius:8px;justify-content:space-between;align-items:flex-start;gap:8px;padding:6px 6px 6px 10px;display:flex}.picks-chunks li[data-kind=word]{border-left-color:#8fc1ff}.picks-chunks li[data-kind=pattern]{border-left-color:#7bd1a0}.picks-chunks li>span{overflow-wrap:anywhere;gap:2px;min-width:0;font-size:.9375rem;display:grid}.picks-chunks small{color:var(--ink-soft)}.picks-chunks em{color:var(--ink-soft);font-size:.8125rem}.picks-chunks button{color:#c2271f;cursor:pointer;background:#fdecec;border:0;border-radius:10px;flex:none;width:44px;height:44px;font-size:1.25rem}.picks-admin,.picks-admin .moments-panel,.picks-admin .moments-list,.picks-admin .moments-list li,.picks-moment,.picks-chunks,.picks-chunks li{min-width:0;max-width:100%}.picks-admin .moments-list>li{flex-wrap:wrap}.picks-admin .picks-chunks li{flex-wrap:nowrap}.picks-admin small{overflow-wrap:anywhere}.picks-grid{grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr))}.picks-row input{flex:160px;min-width:0}.picks-admin{width:100%}.picks-admin .moments-panel,.picks-admin{grid-template-columns:minmax(0,1fr)}.picks-admin .moments-status{overflow-wrap:anywhere}.moments-offer{border:1px dashed var(--bs-hairline);border-radius:var(--bs-radius);background:#fff;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-top:12px;padding:12px 14px;display:flex}.moments-offer>div{flex:220px;min-width:0}.moments-offer strong{align-items:center;gap:6px;font-size:.9375rem;display:inline-flex}.moments-offer p{color:var(--ink-soft);margin:4px 0 0;font-size:.8125rem;line-height:1.5}.moments-offer button{border:1px solid var(--forest);background:var(--forest);color:#fff;min-height:44px;font:inherit;cursor:pointer;border-radius:999px;flex:none;padding:0 18px;font-size:.9375rem;font-weight:700}@media (max-width:480px){.moments-offer button{width:100%}}.journal-card-button{border:1.5px solid var(--forest);min-height:44px;color:var(--forest);font:inherit;cursor:pointer;background:#fff;border-radius:999px;justify-content:center;align-self:flex-start;align-items:center;gap:8px;padding:0 18px;font-weight:700;display:inline-flex}.journal-card-button[data-highlight=true]{background:var(--forest);color:#fff}.journal-share-backdrop{z-index:80;background:#1c1c1e8c;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.journal-share{background:var(--canvas);width:min(100%,520px);max-height:calc(100dvh - 32px);color:var(--ink);box-shadow:var(--shadow-card);border-radius:22px;grid-template-rows:auto auto auto minmax(0,1fr) auto;gap:12px;padding:16px;display:grid}.journal-share header{justify-content:space-between;align-items:center;display:flex}.journal-share h2{align-items:center;gap:8px;margin:0;font-size:1.1rem;display:flex}.journal-share header button{width:44px;height:44px;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;display:grid}.journal-share-styles{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.journal-share-styles[data-count="2"]{grid-template-columns:repeat(2,1fr)}.journal-share-styles button{border:1.5px solid var(--line-strong);min-height:44px;color:var(--ink);font:inherit;cursor:pointer;background:#fff;border-radius:999px;font-weight:700}.journal-share-styles button[aria-pressed=true]{border-color:var(--forest);background:var(--forest);color:#fff}.journal-share-formats{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.journal-share-formats button{border:1.5px solid var(--line-strong);min-height:52px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:#fff;border-radius:14px;align-content:center;gap:1px;padding:6px 8px;display:grid}.journal-share-formats button[aria-pressed=true]{border-color:var(--forest);background:var(--forest);color:#fff}.journal-share-formats strong{font-size:.84rem}.journal-share-formats small{opacity:.8;font-size:.7rem}.journal-share-stage{background:var(--canvas-deep);border-radius:14px;place-items:center;min-height:0;display:grid;overflow:hidden}.journal-share-stage img{width:auto;max-width:100%;height:auto;max-height:min(46dvh,620px);box-shadow:var(--shadow-card);border-radius:6px;display:block}.journal-share-stage p{color:var(--ink-soft);align-items:center;gap:8px;margin:0;padding:48px 16px;display:flex}.journal-share-actions{padding-bottom:env(safe-area-inset-bottom);grid-template-columns:1fr 1fr;gap:8px;display:grid}.journal-share-actions button{border:1.5px solid var(--forest);min-height:48px;color:var(--forest);font:inherit;cursor:pointer;background:#fff;border-radius:999px;justify-content:center;align-items:center;gap:8px;font-weight:700;display:inline-flex}.journal-share-actions .journal-share-primary{background:var(--forest);color:#fff}.journal-share-actions button:disabled{opacity:.5;cursor:not-allowed}.recent-videos-setting{gap:12px;display:grid}.recent-videos-setting>div:first-child{gap:2px;display:grid}.recent-videos-setting small{color:var(--ink-soft);font-size:.8125rem}.recent-videos-options{gap:8px;display:flex}.recent-videos-options button{border:1.5px solid var(--line-strong);min-width:72px;min-height:44px;color:var(--ink);font:inherit;cursor:pointer;background:#fff;border-radius:999px;padding:0 18px;font-weight:700}.recent-videos-options button[aria-pressed=true]{border-color:var(--forest);background:var(--forest);color:#fff}
:root{--ease-out:cubic-bezier(.2, .8, .2, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1)}@media (prefers-reduced-motion:no-preference){@keyframes dsn-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes dsn-fade{0%{opacity:0}to{opacity:1}}@keyframes dsn-hero-in{0%{opacity:0;transform:translateY(18px)scale(.98)}to{opacity:1;transform:none}}@keyframes dsn-grow-x{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes dsn-grow-y{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes dsn-nav-in{0%{transform:translateY(100%)}to{transform:none}}.main-content .content-container>*>:not(.dsn-home-top){animation:dsn-rise .45s var(--ease-out) backwards}.main-content .content-container>*>:nth-child(2){animation-delay:50ms}.main-content .content-container>*>:nth-child(3){animation-delay:.1s}.main-content .content-container>*>:nth-child(4){animation-delay:.15s}.main-content .content-container>*>:nth-child(5){animation-delay:.2s}.main-content .content-container>*>:nth-child(n+6){animation-delay:.25s}.dsn-home-top>*{animation:dsn-rise .5s var(--ease-out) backwards}.dsn-home-top>:first-child{animation-delay:20ms}.dsn-home-top>:nth-child(2){animation:dsn-hero-in .6s var(--ease-out) 80ms backwards}.dsn-home-top>:nth-child(3){animation-delay:.18s}.dsn-home-top>:nth-child(4){animation-delay:.24s}.dsn-hero-bar i{transform-origin:0;animation:dsn-grow-x .8s var(--ease-out) .35s backwards}.progress-day-bars>div>div>span{transform-origin:bottom;animation:dsn-grow-y .6s var(--ease-out) backwards}.progress-day-bars>div>div:nth-child(2)>span{animation-delay:50ms}.progress-day-bars>div>div:nth-child(3)>span{animation-delay:.1s}.progress-day-bars>div>div:nth-child(4)>span{animation-delay:.15s}.progress-day-bars>div>div:nth-child(5)>span{animation-delay:.2s}.progress-day-bars>div>div:nth-child(6)>span{animation-delay:.25s}.progress-day-bars>div>div:nth-child(7)>span{animation-delay:.3s}.tsb-bars>div>span{transform-origin:bottom;animation:dsn-grow-y .6s var(--ease-out) backwards}.dsn-continue li{animation:dsn-rise .4s var(--ease-out) backwards}.dsn-continue li:nth-child(2){animation-delay:60ms}.dsn-continue li:nth-child(3){animation-delay:.12s}.dsn-continue li:nth-child(n+4){animation-delay:.18s}.mobile-nav{animation:dsn-nav-in .5s var(--ease-out) .15s backwards}@keyframes dsn-pop-in{0%{opacity:0;transform:translateY(-6px)scale(.97)}to{opacity:1;transform:none}}.notify-panel{transform-origin:100% 0;animation:dsn-pop-in .22s var(--ease-out) backwards}.caption-settings-panel:popover-open{animation:dsn-pop-in .22s var(--ease-out) backwards}.mobile-more-sheet{animation:dsn-pop-in .22s var(--ease-out) backwards;transform-origin:100% 100%}.mobile-more-backdrop{animation:.2s ease-out backwards dsn-fade}:where(button,a.button,.mobile-nav-link,.nav-link,.calendar-day,.dsn-my-videos,.dsn-more-channels,.tsb-card,.library-stats button,.notify-bell-button,.dsn-continue li a,.library-item-card){transition:transform .16s var(--ease-out), box-shadow .2s ease, background-color .2s ease, color .2s ease, border-color .2s ease}@media (hover:hover){.dsn-my-videos:hover,.dsn-more-channels:hover,.library-item-card:hover,.library-stats button:hover,.dsn-continue li a:hover{transform:translateY(-2px);box-shadow:0 8px 22px #1c1c1e1f}.notify-bell-button:hover{transform:scale(1.08)}.button-primary:hover:not(:disabled),.journal-save:hover:not(:disabled){transform:translateY(-1px)}}:where(button,a.button,.mobile-nav-link,.nav-link,.calendar-day,.dsn-my-videos,.dsn-more-channels,.tsb-card,.library-stats button,.notify-bell-button,.dsn-continue li a):active:not(:disabled){transition-duration:80ms;transform:scale(.96)}@keyframes dsn-pop{0%{transform:scale(.9)}55%{transform:scale(1.07)}to{transform:scale(1)}}@keyframes dsn-icon-bounce{0%{transform:translateY(0)scale(1)}40%{transform:translateY(-4px)scale(1.15)}to{transform:translateY(0)scale(1)}}@keyframes dsn-check-in{0%{opacity:0;transform:translateY(6px)scale(.96)}to{opacity:1;transform:none}}.calendar-day[data-selected=true],.library-stats button[data-selected=true],.caption-language-switch button[data-active=true],.live-caption-navigation button[data-active=true],.tsb-card[data-active=true],.notify-bell-button[aria-expanded=true]{animation:dsn-pop .3s var(--ease-spring)}.mobile-nav-link[data-active=true] svg,.nav-link[data-active=true] svg{animation:dsn-icon-bounce .38s var(--ease-out)}.journal-saved,.tsb-sent,.caption-selection-success,.dashboard-push-prompt,.journal-picker,.tsb-compose,.journal-images li,.journal-recordings li{animation:dsn-check-in .28s var(--ease-out) backwards}}
@media (max-width:1023px){.sentence-production-focus>span,.sentence-production-focus>small,.sentence-production-privacy-note,.sentence-production-feedback>header p,.sentence-production-feedback>div>span,.upgrade-hero>div>p:last-child,.stage-pill,.upgrade-notice,.plan-price small,.plan-price span,.plan-card li,.plan-card button,.promo-panel button,.promo-panel strong,.promo-panel p,.promo-panel input,.beta-access-heading p:last-child,.beta-code-form input,.beta-status-grid dt,.beta-status-grid dd,.beta-access-notice,.review-summary>div span,.review-summary label span,.review-summary dt,.review-card>header span,.review-card>header small,.review-card>header em,.review-card-prompt p,.review-answer strong,.review-answer p,.review-card>footer,.review-complete dt,.dashboard-review-card p:last-child,.dashboard-review-card>a,.purchase-footer,.payment-result-card>p:not(.section-kicker),.payment-result-card dt,.payment-result-card dd,.payment-result-card>a,.legal-page article>a{font-size:.75rem}.legal-page{min-height:100dvh}.legal-page aside,.teacher-hero p:last-child,.class-create-panel strong,.join-class-box strong,.class-create-panel small,.join-class-box p,.class-create-panel input,.join-class-box input,.class-create-panel button,.join-class-box button,.class-retry,.class-notice,.class-loading,.teacher-empty,.class-empty,.teacher-class-tabs strong,.teacher-class-tabs span,.class-code code,.class-roster dt,.class-code-controls>button,.class-code-inactive,.student-class-actions span,.student-class-actions button,.student-remove-trigger,.roster-table th,.roster-table td,.student-detail header span,.student-detail-stats span,.student-week-bars small,.student-detail li,.student-class-list strong,.student-class-list small,.student-class-list code,.archived-class-list small,.student-record-heading>span,.student-attempt-list header span,.student-attempt-list footer time,.student-attempt-list footer>span,.student-library-meta,.assignment-summary small,.assignment-card-top time,.assignment-status,.student-assignment-card li>span,.student-assignment-card li small,.assignment-create-form label,.assignment-create-form legend,.assignment-requirement-choice small,.assignment-field-error,.assignment-notice,.assignment-group-title span,.teacher-assignment-list time,.teacher-assignment-list li,.teacher-assignment-list article>button,.assignment-group-empty,.archived-assignment-group summary,.assignment-no-deadline,.teacher-assignment-actions button,.assignment-progress-panel>header p:last-child,.assignment-progress-summary span,.assignment-progress-table th,.assignment-progress-table td,.assignment-progress-status,.assignment-requirement-progress>span,.assignment-progress-table td>small,.assignment-requirement-progress small,.library-stats button span,.library-filter-heading,.library-select-filter>span,.library-select-filter select,.library-select-filter input,.library-speaking-queue strong,.library-speaking-queue p,.library-speaking-queue li,.library-speaking-queue>a,.library-speaking-queue-disabled,.library-results>header strong,.library-results>header .library-clear-filters,.library-layout-switcher legend,.library-layout-switcher button,.library-item-card-top>span:nth-child(2),.library-item-card-top select,.library-item-card footer>span,.library-results[data-layout-size=small] .library-item-card>strong,.library-results[data-layout-size=small] .library-item-card blockquote,.library-item-card footer button,.library-state-card button,.library-empty-state a,.library-empty-state button,.library-inline-error{font-size:.75rem}.library-detail-backdrop{height:100dvh}.library-limit-note,.library-detail-header span,.library-detail-section>span,.library-quote-section>span,.library-detail-grid span,.library-source-section>div>span,.library-detail-actions label span,.library-detail-actions select,.library-detail-actions>button,.library-source-actions button,.library-source-actions a,.library-next-practice>span,.library-next-practice>a,.library-next-practice>div p,.library-quote-section small,.library-history-grid dt,.class-patterns-list li>div small,.class-patterns-list aside strong,.class-patterns-panel>footer,.teacher-interventions-list article>small,.teacher-interventions-list aside strong,.teacher-intervention-actions button,.teacher-intervention-decision,.teacher-interventions-error,.teacher-interventions-history-warning,.teacher-interventions-history li>span,.teacher-interventions-history li>small,.teacher-interventions-history time,.teacher-intervention-outcome button,.teacher-intervention-outcome p,.teacher-interventions-panel>footer,.personalization-stage-grid small,.personalization-goal-grid small,.personalization-count-grid small,.speaking-hero-mark span,.speaking-error,.speaking-picker>header>strong,.speaking-picker>p,.speaking-mode-panel>p:not(.section-kicker),.speaking-recent>header>p,.speaking-library-handoff strong,.speaking-library-handoff span,.speaking-library-handoff li,.speaking-library-handoff>a,.speaking-search input,.speaking-item-list small,.speaking-item-list em,.speaking-load,.speaking-mode-list strong,.speaking-mode-list b,.speaking-mode-list small,.speaking-mic-note,.speaking-timer span,.speaking-stage>strong,.speaking-live-meta span,.speaking-live-meta strong,.speaking-v3-voice-tools strong,.speaking-v3-voice-tools span,.speaking-live-grid h3,.speaking-live-grid aside span,.speaking-live-grid aside small,.speaking-transcript>header button,.speaking-turns>p,.speaking-turns span,.speaking-complete>p:not(.section-kicker),.speaking-complete-stats span,.speaking-complete-actions button,.speaking-complete-actions a,.speaking-feedback>header>span,.speaking-review-feedback>span,.speaking-feedback-strength strong,.speaking-feedback-level strong,.speaking-feedback-strength p,.speaking-feedback-level p,.speaking-feedback-items article>span,.speaking-review-feedback article>small,.speaking-feedback-items small,.speaking-feedback-items article>strong,.speaking-review-feedback article>strong,.speaking-feedback-items article>p,.speaking-review-feedback article>p,.speaking-complete-transcript summary,.speaking-complete-transcript span,.speaking-review-transcript span,.speaking-complete-transcript p,.speaking-review-transcript p,.speaking-recent-summary em,.speaking-review-feedback>p,.speaking-recent-empty{font-size:.75rem}body,.global-error-page,.app-frame{min-height:100dvh}.brand-copy span,.sidebar-label,.language-control-label,.language-segment button,.language-save-error,.account-avatar,.mobile-account-popover header small,.account-copy span,.preview-pill{font-size:.75rem}.main-content{min-height:100dvh}.mobile-nav-link{font-size:.75rem}.hero-panel{min-height:calc(100dvh - 7.8rem)}.eyebrow,.section-kicker,.foundation-note,.video-meta,.type-label,.cefr-label,.expression-context,.expression-actions span{font-size:.75rem}.feature-page{min-height:calc(100dvh - 9rem)}.feature-phase{font-size:.75rem}.skeleton-page{min-height:calc(100dvh - 9rem)}.auth-page,.role-page,.auth-loading,.auth-recovery,.onboarding-page{min-height:100dvh}.onboarding-layout{min-height:calc(100dvh - 6rem)}.onboarding-progress li,.onboarding-progress li>span,.onboarding-summary>span,.onboarding-summary p,.onboarding-step-count,.learning-duration-choice strong,.cefr-choice-copy small,.goal-choice small,.item-count-choice small,.placement-entry strong,.placement-entry small,.recommended-note{font-size:.75rem}.marketing-page{min-height:100dvh}.marketing-brand span,.marketing-nav-cta,.marketing-config-note,.marketing-chip,.marketing-proof-kind,.marketing-proof-card footer,.marketing-proof-tag{font-size:.75rem}.auth-page{min-height:100dvh}.auth-frame{min-height:calc(100dvh - clamp(1rem,3vw,2.5rem))}.auth-rail span,.auth-rail small,.auth-brand-row .language-segment button{font-size:.75rem}.auth-stage{min-height:calc(100dvh - 150px)}.auth-card-label,.auth-terms,.config-panel p,.config-panel code,.role-signout{font-size:.75rem}.role-stage{min-height:calc(100dvh - 6rem)}.role-card>span:not(.role-icon),.role-note{font-size:.75rem}.dashboard-loading{min-height:calc(100dvh - 8rem)}.dashboard-date,.dashboard-streak p,.streak-milestone>span,.streak-milestone>small,.dashboard-recent-videos>header>p,.dashboard-recent-video-grid small,.dashboard-recent-video-grid footer,.dashboard-recent-video-grid footer strong,.dashboard-honest-state,.dashboard-stat span,.calendar-weekdays span,.calendar-day,.calendar-empty,.calendar-footnote,.calendar-detail>p,.calendar-detail-heading span,.calendar-detail-heading small,.calendar-detail dt,.dashboard-focus dt,.dashboard-focus dd,.dashboard-focus>a,.dashboard-quick-grid strong,.dashboard-quick-grid small,.video-profile-plan>span,.video-profile-plan small,.video-learning-steps li>span,.video-learning-steps li>strong,.video-learning-steps li>small,.prepared-video-meta>div:first-child>span,.transcript-ready-state>span,.prepared-video-meta p,.prepared-video-actions a,.prepared-video-actions button,.transcript-ready-state>button,.live-caption-workspace>header small,.live-caption-navigation button,.caption-language-toolbar>span,.caption-language-switch button,.shadowing-panel>header small,.shadowing-mode-switch button,.shadowing-chunks button,.shadowing-chunks button>span,.shadowing-actions button,.shadowing-actions button small,.shadowing-feedback-summary span,.shadowing-feedback-summary p,.shadowing-word-feedback small,.shadowing-word-feedback b,.shadowing-transcript-details summary,.pronunciation-feedback summary,.shadowing-transcript-details>p,.shadowing-feedback>span,.shadowing-feedback>small,.shadowing-note,.pronunciation-feedback>summary,.pronunciation-feedback>summary small,.pronunciation-feedback>small,.pronunciation-focus>small,.pronunciation-score-grid small,.pronunciation-score-grid i,.pronunciation-focus i,.pronunciation-focus em,.pronunciation-focus>div>span,.shadowing-error,.live-caption-help,.live-caption-context-line time,.live-caption-time,.caption-translation-retry,.caption-selection-dock small,.caption-selection-dock>div:first-child>span,.caption-selection-dock button,.caption-selection-dock>p,.manual-transcript-form>p:not(.transcript-provider-status):not(.video-learning-error),.transcript-ready-state>p,.transcript-guide-heading strong,.transcript-guide-heading p,.transcript-manual-guide li>span,.transcript-manual-guide li p,.manual-transcript-form textarea,.transcript-form-footer>span,.transcript-preview strong,.transcript-preview p,.video-analysis-handoff>span,.video-analysis-handoff p,.analysis-studio-head>div>p:last-child,.analysis-controls legend,.analysis-difficulty-help,.difficulty-options small,.analysis-progress-copy,.analysis-progress-card>small,.analysis-warning,.analysis-error,.analysis-results>header>span,.analysis-type-tabs button,.analysis-type-tabs strong,.learning-card-head>div>span,.learning-card-head strong,.timestamp-chip,.learning-explanation,.learning-card blockquote span,.learning-card dt,.learning-card dd,.learning-card dd small,.learning-card-context-actions button,.learning-card-save-actions button,.learning-save-note,.learning-save-error,.activity-error,.activity-section-heading>p,.activity-stat span,.activity-day-detail>p,.activity-day-heading span,.activity-day-heading small,.activity-day-detail dt,.achievement-list small,.activity-event-list strong,.activity-event-list small,.activity-event-list time,.activity-review-link,.activity-empty,.weekly-goal-card legend,.progress-speaking dd small,.progress-heatmap-grid small,.progress-heatmap-legend,.message-list article time,.message-list article small,.conversation-filters button,.message-avatar,.message-avatar[data-small=true],.conversation-meta time,.message-thread-header>span small,.message-date-divider,.message-sender,.message-delivery,.message-card-bubble small,.message-card-bubble>div>span,.message-speaking-card header b,.message-assignment-card header b,.message-assignment-card>time,.message-waveform span,.message-attachment-panel button,.message-attachment-panel label,.message-new-conversation label,.message-typing,.compact-message-widget header a,.compact-message-widget>div>a small,.speaking-v1-config legend,.speaking-v1-select>span,.speaking-v1-choice-grid button,.speaking-v1-duration button,.speaking-v1-custom label,.speaking-v1-custom input,.speaking-v1-custom textarea,.speaking-v1-select select,.speaking-v15-source>strong,.speaking-v15-source label>span,.speaking-function-header>div span,.speaking-function-header>p small,.speaking-function-header>p b,.speaking-practice-source-grid>button>i,.speaking-v15-source b,.speaking-v15-source small,.speaking-v15-source select,.speaking-v15-source input,.speaking-v15-source textarea,.speaking-v2-mode-fields legend,.speaking-v2-scenario-builder>strong,.speaking-v2-scenario-builder>p,.speaking-v2-scenario-builder article span,.speaking-v2-scenario-builder article strong,.speaking-v2-insights strong,.speaking-v2-insights small,.speaking-v2-insights li,.speaking-v2-retell-feedback>strong,.speaking-v2-retell-feedback dt,.speaking-v2-retell-feedback dd,.analysis-result-actions>a,.speaking-practice-source-grid>button small,.speaking-filter-chips button,.speaking-item-tag,.speaking-interaction-details summary strong{font-size:.75rem}.app-frame:has(.personalization-page) .sidebar-quote{font-size:.75rem}.speaking-page>.speaking-live .speaking-stage>strong,.speaking-page>.speaking-live .speaking-live-meta>div:first-child span,.speaking-page>.speaking-live .speaking-live-meta>div:first-child strong,.speaking-page>.speaking-live .speaking-live-meta>button,.speaking-page>.speaking-live .speaking-v2-help>button,.speaking-page>.speaking-live .speaking-v2-help>button small,.transcript-translation-progress,.transcript-dialog-window>footer>span,.library-delete-notice,.dashboard-command-bar .dashboard-date,.dashboard-command-bar .dashboard-streak h2,.dashboard-command-bar .progress-overview-loading,.dashboard-command-bar .progress-overview-error,.dashboard-command-bar .weekly-goal-copy .section-kicker,.dashboard-command-bar .weekly-goal-card .weekly-goal-copy h2,.dashboard-command-bar .weekly-goal-copy>span,.dashboard-workbench .dashboard-recent-video-grid h3,.dashboard-workbench .dashboard-recent-video-grid footer,.dashboard-workbench .dashboard-stat span,.dashboard-workbench .calendar-day,.dashboard-workbench .calendar-empty,.dashboard-workbench .calendar-detail dt,.dashboard-workbench .calendar-detail dd,.speaking-setup-grid .speaking-library-handoff>button{font-size:.75rem}@media (min-width:1024px){.hero-panel,.feature-page,.skeleton-page{min-height:calc(100dvh - 2.7rem)}}@media (max-width:699px){.auth-frame{min-height:100dvh}}@media (max-width:760px){.dashboard-stat span{font-size:.75rem}}@media (max-width:520px){.video-learning-steps li>strong{font-size:.75rem}}@media (max-width:400px){.caption-language-switch button{font-size:.75rem}}@media (max-width:700px){.speaking-page>.speaking-live .speaking-live-meta>button,.speaking-page>.speaking-live .speaking-v2-help>button{font-size:.75rem}}@media (min-width:1121px){.library-hero .section-kicker,.library-hero>div>p:last-child,.library-stats button span,.library-select-filter>span,.library-speaking-queue p{font-size:.75rem}}@media (max-width:620px){.speaking-target-picker>header p:last-child{font-size:.75rem}}@media (min-width:1181px){.video-learning-page[data-prepared=true] .live-caption-workspace>header p,.video-learning-page[data-prepared=true] .live-caption-workspace>header h3,.video-learning-page[data-prepared=true] .live-caption-navigation button,.video-learning-page[data-prepared=true] .caption-language-toolbar>span,.video-learning-page[data-prepared=true] .caption-language-switch button{font-size:.75rem}}}
