:root{--bg:#f4f7fb;--bg-soft:#edf3f9;--surface:#ffffff;--surface-soft:#f8fbff;--surface-muted:#f1f5fa;--ink:#1f2937;--muted:#66758b;--line:#dbe4ef;--line-strong:#c9d6e4;--blue:#2563eb;--blue-soft:#e8f0ff;--green:#1f8f5f;--green-soft:#eaf7ef;--amber:#b7791f;--amber-soft:#fff6e5;--shadow:0 1px 2px rgba(15,23,42,.04),0 16px 32px rgba(15,23,42,.06);--radius-xl:24px;--radius-lg:20px;--radius-md:16px;--header-h:64px;--rail-w:84px;--panel-w:336px;--left-panel-w:288px;--mobile-mode-nav-h:72px;--font:"Be Vietnam Pro",sans-serif}*{box-sizing:border-box}html,body{margin:0;min-height:100%;overflow-x:hidden}[hidden],.hidden{display:none!important}.opacity-0{opacity:0!important}.tap-player-skip-link{position:fixed;top:8px;left:12px;z-index:80;min-height:44px;padding:0 16px;border-radius:14px;background:#fff;color:#174ea6;border:2px solid #2563eb;box-shadow:0 12px 28px #0f172a2e;display:inline-flex;align-items:center;font-size:13px;font-weight:800;transform:translateY(calc(-100% - 16px));transition:transform .16s ease}.tap-player-skip-link:focus{transform:translateY(0);outline:none}.tap-ui-icon{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;line-height:0;flex:0 0 auto;width:1em;height:1em}.tap-ui-icon svg{display:block;width:100%;height:100%}body[data-shell-ready="0"] .topbar-inner,body[data-shell-ready="0"] .main,body[data-shell-ready="0"] .utility-panel,body[data-shell-ready="0"] .utility-mask,body[data-shell-ready="0"] .left-context-panel,body[data-shell-ready="0"] .left-context-mask,body[data-shell-ready="0"] .curriculum-mobile-tools,body[data-shell-ready="0"] .curriculum-mobile-sheet,body[data-shell-ready="0"] .mobile-mode-sheet,body[data-shell-ready="0"] .live-mobile-bottom-bar{transition:none!important;animation:none!important}body{font-family:var(--font);color:var(--ink);background:radial-gradient(circle at 0 0,rgba(37,99,235,.055),transparent 28%),radial-gradient(circle at 100% 0,rgba(31,143,95,.04),transparent 22%),linear-gradient(180deg,var(--bg),var(--bg-soft))}body.theme-dark{--surface:#1a2638;--surface-soft:#223149;--surface-muted:#182638;--ink:#e6edf7;--muted:#a7b4c6;--line:#405269;--line-strong:#556981;--blue-soft:rgba(96,165,250,.18);--green-soft:rgba(52,211,153,.16);--amber-soft:rgba(251,191,36,.16);--shadow:0 22px 48px rgba(15,23,42,.24);color-scheme:dark;color:#e6edf7;background:radial-gradient(circle at 0 0,rgba(96,165,250,.22),transparent 30%),radial-gradient(circle at 100% 0,rgba(52,211,153,.14),transparent 26%),linear-gradient(180deg,#122033,#16263b 54%,#1a2b42 100%)}body.theme-dark .topbar{background:linear-gradient(180deg,rgba(16,28,43,.8) 0%,rgba(16,28,43,.44) 72%,rgba(16,28,43,0) 100%)}body.theme-dark .topbar-inner,body.theme-dark .utility-panel,body.theme-dark .utility-head,body.theme-dark .utility-mobile-nav,body.theme-dark .left-context-panel,body.theme-dark .left-context-head,body.theme-dark .mobile-mode-sheet{background:linear-gradient(180deg,rgba(25,35,52,.96),rgba(20,30,46,.94));border-color:#94a3b838;color:#e6edf7;box-shadow:0 18px 42px #0f172a2e;backdrop-filter:blur(18px) saturate(130%);-webkit-backdrop-filter:blur(18px) saturate(130%)}body.theme-dark .brand-copy strong,body.theme-dark .utility-head strong,body.theme-dark .utility-appearance-copy strong{color:#e6edf7}body.theme-dark .brand-copy small,body.theme-dark .utility-appearance-copy small{color:#96a4b8}body.theme-dark .mobile-top-btn,body.theme-dark .utility-mobile-btn,body.theme-dark .icon-btn,body.theme-dark .menu-toggle,body.theme-dark .utility-theme-toggle,body.theme-dark .utility-language-toggle,body.theme-dark .utility-theme-option{background:rgba(255,255,255,.08);border-color:#94a3b83d;color:#dbe7f5}body.theme-dark .topbar-drawer-toggle[aria-expanded=true],body.theme-dark .utility-mobile-btn.active,body.theme-dark .utility-theme-option.active{background:rgba(59,130,246,.18);border-color:#3b82f6;color:#dbeafe}body.theme-dark .utility-theme-menu{background:linear-gradient(180deg,rgba(36,50,74,.74),rgba(22,34,53,.66));border-color:#94a3b83d;box-shadow:0 18px 42px #0f172a2e;backdrop-filter:blur(24px) saturate(160%);-webkit-backdrop-filter:blur(24px) saturate(160%)}body.theme-dark .utility-theme-toggle-caret{color:#a7b4c6}body.theme-dark .utility-appearance-bar{background:transparent;border-color:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.left-context-shell{position:fixed;top:0;left:0;bottom:0;width:var(--left-panel-w);z-index:29;pointer-events:none}.left-context-mask{position:fixed;inset:0;z-index:0;border:0;padding:0;background:rgba(17,24,39,.12);display:none;opacity:0;pointer-events:none;transition:opacity .22s ease;-moz-appearance:none;appearance:none;-webkit-appearance:none;color:transparent;font-size:0;line-height:0;outline:none;box-shadow:none;overflow:hidden}.app[data-left-drawer-open=true] .left-context-mask{opacity:0;pointer-events:none}.left-context-panel{position:relative;z-index:1;height:100%;border:1px solid rgba(201,214,228,.94);border-left:0;border-radius:0 24px 24px 0;background:linear-gradient(180deg,#ffffff,#fbfdff);box-shadow:18px 0 36px #0f172a14;display:grid;grid-template-rows:60px minmax(0,1fr);transform:translate(calc(-100% - 24px)) scale(.985);opacity:0;transition:transform .28s cubic-bezier(.2,.8,.2,1),opacity .18s ease;pointer-events:auto;transform-origin:left center}.app[data-left-drawer-open=true] .left-context-panel{transform:translate(0) scale(1);opacity:1}.left-context-panel>.tap-shell-surface{grid-row:1 / -1;min-height:0;height:100%}.left-context-head{position:sticky;top:0;z-index:2;min-height:60px;padding:0 18px;border-bottom:1px solid var(--line);background:#fff;display:flex;align-items:center;justify-content:space-between;gap:12px}.left-context-head strong{font-size:16px;font-weight:800}.left-context-body{padding:14px;overflow:auto;display:grid;gap:12px;align-content:start}.left-context-view{display:none}.left-context-view.active{display:grid}@media (min-width:861px){.app[data-mode=live]{--panel-w:424px;--left-panel-w:360px}.app[data-mode] .left-context-shell{top:calc(var(--header-h) + 14px);left:20px;bottom:auto;width:288px;height:auto}.app[data-mode] .left-context-panel{height:calc(100dvh - var(--header-h) - 34px);max-height:calc(100dvh - var(--header-h) - 34px);border:1px solid rgba(210,217,229,.88);border-radius:28px;box-shadow:0 18px 42px #3c404329;grid-template-rows:60px minmax(0,1fr);transform:translate(calc(-100% - 28px)) scale(.985);opacity:0;pointer-events:none;overflow:hidden}.app[data-mode][data-left-drawer-open=true] .left-context-panel{transform:translate(0) scale(1);opacity:1;pointer-events:auto}.app[data-mode] .left-context-head{border-bottom:1px solid var(--line);border-radius:28px 28px 0 0}.app[data-mode] .left-context-body{max-height:none}}body.theme-dark .mobile-mode-sheet-btn-badge{background:rgba(59,130,246,.18);border-color:#60a5fa4d;color:#bfdbfe}body.theme-dark .mobile-mode-sheet-btn-state{background:rgba(52,211,153,.16);border-color:#4ade803d;color:#bbf7d0}body.theme-dark .mode-nav{background:rgba(7,16,29,.8)}body.theme-dark .card,body.theme-dark .queue-card,body.theme-dark .workspace-card,body.theme-dark .support-card,body.theme-dark .split-card,body.theme-dark .metric-card:not(.primary),body.theme-dark .mini-card,body.theme-dark .queue-item,body.theme-dark .utility-item,body.theme-dark .context-summary-card,body.theme-dark .context-stat,body.theme-dark .status-line,body.theme-dark .live-mobile-card,body.theme-dark .live-mobile-meta-card,body.theme-dark .live-mobile-item,body.theme-dark .curriculum-video-tools,body.theme-dark .curriculum-loop-slot,body.theme-dark .curriculum-video-note-editor,body.theme-dark .curriculum-video-note-item,body.theme-dark .curriculum-context-note-item,body.theme-dark .curriculum-stage-preview,body.theme-dark .curriculum-doc-stack,body.theme-dark .curriculum-image-shell,body.theme-dark .curriculum-embed-shell,body.theme-dark .curriculum-course-card,body.theme-dark .live-task-shell,body.theme-dark .live-task-card,body.theme-dark .live-task-empty,body.theme-dark .live-stage-list-card,body.theme-dark .live-stage-side,body.theme-dark .live-stage-note,body.theme-dark .live-follow-up-row,body.theme-dark .live-context-module,body.theme-dark .live-assignment-block,body.theme-dark .live-assignment-card,body.theme-dark .live-utility-shell,body.theme-dark .live-utility-status,body.theme-dark .td-q-card,body.theme-dark .td-option,body.theme-dark .ul-vocab-card,body.theme-dark .ul-vocab-metric,body.theme-dark .comment,body.theme-dark .composer,body.theme-dark .placeholder,body.theme-dark .viewer-preview,body.theme-dark .mobile-mode-sheet-btn{background:linear-gradient(180deg,rgba(36,50,74,.74),rgba(22,34,53,.64));border-color:var(--line);box-shadow:0 18px 42px #0f172a24;backdrop-filter:blur(18px) saturate(150%);-webkit-backdrop-filter:blur(18px) saturate(150%)}body.theme-dark .utility-body,body.theme-dark .left-context-body,body.theme-dark .assignment-modal-body,body.theme-dark .assignment-roster-list{background:linear-gradient(180deg,rgba(30,43,63,.32),rgba(20,31,49,.22))}body.theme-dark .viewer-stage,body.theme-dark .curriculum-stage-surface,body.theme-dark .live-stage-surface{background:radial-gradient(circle at top right,rgba(96,165,250,.2),transparent 38%),radial-gradient(circle at left bottom,rgba(52,211,153,.1),transparent 28%),linear-gradient(180deg,rgba(43,58,83,.82),rgba(25,38,57,.72));border-color:#94a3b838;box-shadow:0 20px 46px #0f172a29;backdrop-filter:blur(20px) saturate(150%);-webkit-backdrop-filter:blur(20px) saturate(150%)}body.theme-dark .curriculum-embed-frame,body.theme-dark .assignment-upload-dropzone,body.theme-dark .ul-vocab-hero{background:radial-gradient(circle at top right,rgba(59,130,246,.18),transparent 36%),linear-gradient(180deg,#142136,#0f1a2c);border-color:#31455d}body.theme-dark .curriculum-image-preview,body.theme-dark .curriculum-doc-frame-shell,body.theme-dark .curriculum-embed-canvas{background:linear-gradient(180deg,#142136,#0f1a2c);border-color:#31455d;box-shadow:0 18px 42px #0f172a24;backdrop-filter:blur(18px) saturate(150%);-webkit-backdrop-filter:blur(18px) saturate(150%)}body.theme-dark .curriculum-stage-iframe,body.theme-dark .curriculum-stage-document-frame,body.theme-dark .curriculum-stage-image{background:#0b1424}body.theme-dark .curriculum-fragment-host{background:linear-gradient(180deg,#122033,#0d192a);border-color:#2a3a50}body.theme-dark .curriculum-fragment-host[data-state=loading]{background:linear-gradient(90deg,#0f1a2d,#16243a,#0f1a2d);background-size:220% 100%}body.theme-dark .curriculum-fragment-host[data-state=error]{background:linear-gradient(180deg,rgba(180,83,9,.22),rgba(64,30,4,.5));border-color:#f59e0b57}body.theme-dark .curriculum-fragment-host[data-state=loaded]{background:linear-gradient(180deg,rgba(37,99,235,.2),rgba(14,30,52,.96));border-color:#60a5fa61}body.theme-dark .curriculum-locked-shell{background:linear-gradient(180deg,#101a2b,#0b1424);border-color:#223147}body.theme-dark .curriculum-doc-sheet{background:#101a2a;border-color:#2a3a50}body.theme-dark .curriculum-doc-line{background:#3a4b62}body.theme-dark .viewer-preview:before,body.theme-dark .curriculum-stage-preview:before{border-color:#3b4b61;background:linear-gradient(180deg,rgba(59,130,246,.08),rgba(59,130,246,.02)),repeating-linear-gradient(180deg,transparent 0 20px,rgba(148,163,184,.08) 20px 21px)}body.theme-dark .curriculum-embed-dots span{background:#50627c}body.theme-dark .curriculum-lesson-item,body.theme-dark .curriculum-module,body.theme-dark .curriculum-mobile-sheet-card{background:linear-gradient(180deg,#121d30,#0e1828);border-color:#26374d;box-shadow:none}body.theme-dark .curriculum-lesson-item:hover,body.theme-dark .curriculum-module-head:hover,body.theme-dark .live-follow-up-row:hover,body.theme-dark .live-assignment-card:hover{background:linear-gradient(180deg,#182946,#13233b);border-color:#5b88d6;box-shadow:0 16px 28px #2563eb2e}body.theme-dark .utility-item.active,body.theme-dark .queue-item.active,body.theme-dark .live-mobile-item.active,body.theme-dark .curriculum-lesson-item.active,body.theme-dark .live-context-module.is-active{background:rgba(59,130,246,.18);border-color:#60a5fa80;color:#bfdbfe;box-shadow:0 14px 30px #2563eb29}body.theme-dark .curriculum-module.is-active{border-color:#60a5fa85;box-shadow:0 0 0 1px #60a5fa2e,0 18px 32px #0f172a42}body.theme-dark .brand-mark,body.theme-dark .td-q-no,body.theme-dark .td-opt-key{background:rgba(59,130,246,.2);color:#bfdbfe;border-color:#60a5fa3d}body.theme-dark .hero-secondary,body.theme-dark .ghost-btn,body.theme-dark .small-btn,body.theme-dark .curriculum-filter,body.theme-dark .curriculum-meta-pill,body.theme-dark .curriculum-course-tab,body.theme-dark .viewer-meta span,body.theme-dark .live-state-chip,body.theme-dark .live-context-module-meta span,body.theme-dark .assignment-upload-mode button,body.theme-dark .assignment-upload-inline-btn,body.theme-dark .assignment-feedback-action,body.theme-dark .td-q-pill,body.theme-dark .td-q-flag-btn,body.theme-dark .td-q-nav-btn{background:rgba(15,23,42,.78);border-color:var(--line-strong);color:#dbe7f5}body.theme-dark .hero-secondary:hover,body.theme-dark .ghost-btn:hover,body.theme-dark .small-btn:hover,body.theme-dark .curriculum-filter:hover,body.theme-dark .curriculum-course-tab:hover,body.theme-dark .assignment-upload-mode button:hover,body.theme-dark .assignment-upload-inline-btn:hover,body.theme-dark .assignment-feedback-action:hover,body.theme-dark .td-q-flag-btn:hover,body.theme-dark .td-q-nav-btn:hover{background:#162235;border-color:#42546d}body.theme-dark .curriculum-filter.active,body.theme-dark .small-btn[aria-pressed=true],body.theme-dark .curriculum-course-tab.active,body.theme-dark .td-q-pill.is-active{background:rgba(59,130,246,.2);border-color:#60a5fa8a;color:#bfdbfe}body.theme-dark .chip{background:rgba(59,130,246,.16);border-color:#60a5fa61;color:#bfdbfe}body.theme-dark .chip.success{background:rgba(16,185,129,.16);border-color:#34d39952;color:#86efac}body.theme-dark .chip.warning{background:rgba(245,158,11,.16);border-color:#fbbf2452;color:#fde68a}body.theme-dark .queue-chip,body.theme-dark .live-status-pill{background:#132033;color:#c7d4e4;border:1px solid #2d3b4f}body.theme-dark .queue-chip.active{background:rgba(59,130,246,.18);color:#bfdbfe;border-color:#60a5fa80}body.theme-dark .live-status-pill.is-success{background:rgba(16,185,129,.16);border-color:#34d3994d;color:#86efac}body.theme-dark .live-status-pill.is-warning{background:rgba(245,158,11,.16);border-color:#fbbf244d;color:#fde68a}body.theme-dark .live-state-chip.is-present,body.theme-dark .live-mobile-badge.is-ready,body.theme-dark .live-mobile-badge.is-present,body.theme-dark .live-mobile-badge.is-graded,body.theme-dark .assignment-upload-badge.is-uploaded,body.theme-dark .ul-vocab-pill-ok{background:rgba(16,185,129,.16);border-color:#34d3994d;color:#86efac}body.theme-dark .live-state-chip.is-pending_excuse,body.theme-dark .live-mobile-badge.is-replay,body.theme-dark .live-mobile-badge.is-submitted,body.theme-dark .live-mobile-badge.is-answered,body.theme-dark .assignment-upload-badge.is-queued,body.theme-dark .ul-vocab-pill-new{background:rgba(59,130,246,.18);border-color:#60a5fa52;color:#bfdbfe}body.theme-dark .live-state-chip.is-excused,body.theme-dark .live-mobile-badge.is-upcoming,body.theme-dark .live-mobile-badge.is-attention,body.theme-dark .live-mobile-badge.is-pending_excuse,body.theme-dark .assignment-upload-badge.is-uploading,body.theme-dark .ul-vocab-pill-due{background:rgba(245,158,11,.16);border-color:#fbbf244d;color:#fde68a}body.theme-dark .live-state-chip.is-absent,body.theme-dark .live-state-chip.is-missed,body.theme-dark .assignment-upload-badge.is-error{background:rgba(239,68,68,.14);border-color:#f8717147;color:#fda4af}body.theme-dark .live-mobile-badge.is-quiet,body.theme-dark .ul-vocab-pill-muted{background:rgba(148,163,184,.14);border-color:#94a3b833;color:#cbd5e1}body.theme-dark .curriculum-module-copy small,body.theme-dark .curriculum-module-count,body.theme-dark .curriculum-context-note-top span,body.theme-dark .curriculum-video-note-item-badge{background:#132032;border-color:#334155;color:#b7c7d9}body.theme-dark .curriculum-menu-search,body.theme-dark .note-box,body.theme-dark .composer textarea,body.theme-dark .assignment-written-field textarea,body.theme-dark .assignment-feedback-form textarea,body.theme-dark .curriculum-video-note-field input,body.theme-dark .curriculum-video-note-field textarea{background:#0d1728;border-color:#334155;color:#e6edf7;box-shadow:none}body.theme-dark .curriculum-menu-search{backdrop-filter:blur(18px) saturate(150%);-webkit-backdrop-filter:blur(18px) saturate(150%)}body.theme-dark .note-box::-moz-placeholder,body.theme-dark .composer textarea::-moz-placeholder,body.theme-dark .assignment-written-field textarea::-moz-placeholder,body.theme-dark .assignment-feedback-form textarea::-moz-placeholder,body.theme-dark .curriculum-video-note-field input::-moz-placeholder,body.theme-dark .curriculum-video-note-field textarea::-moz-placeholder{color:#7f90a6}body.theme-dark .curriculum-menu-search .material-symbols-outlined,body.theme-dark .curriculum-menu-search .tap-ui-icon,body.theme-dark .note-box::placeholder,body.theme-dark .composer textarea::placeholder,body.theme-dark .assignment-written-field textarea::placeholder,body.theme-dark .assignment-feedback-form textarea::placeholder,body.theme-dark .curriculum-video-note-field input::placeholder,body.theme-dark .curriculum-video-note-field textarea::placeholder{color:#7f90a6}body.theme-dark .curriculum-video-note-list-shell{border-color:#334155}body.theme-dark .curriculum-video-note-list-head strong,body.theme-dark .curriculum-video-note-item-top strong{color:#e6edf7}body.theme-dark .curriculum-video-note-list-head small,body.theme-dark .curriculum-video-note-item p,body.theme-dark .curriculum-video-note-item small{color:#a9b8cb}body.theme-dark .curriculum-menu-search input{color:#e6edf7}body.theme-dark .curriculum-mobile-sheet{background:linear-gradient(180deg,rgba(42,58,83,.8),rgba(23,35,54,.72));border-color:#94a3b83d;color:#e6edf7;box-shadow:0 24px 54px #0f172a33;backdrop-filter:blur(30px) saturate(170%);-webkit-backdrop-filter:blur(30px) saturate(170%)}body.theme-dark .curriculum-mobile-sheet-head{background:linear-gradient(180deg,rgba(43,59,84,.72),rgba(26,39,58,.6));border-bottom-color:#94a3b833}body.theme-dark .curriculum-mobile-sheet-title strong,body.theme-dark .curriculum-course-card strong{color:#e6edf7}body.theme-dark .curriculum-empty-shell p{color:#c7d4e4}body.theme-dark .curriculum-summary-prose blockquote{background:rgba(59,130,246,.1);border-left-color:#93c5fd85;color:#d7e3f3}body.theme-dark .curriculum-summary-prose th,body.theme-dark .curriculum-summary-prose td{border-bottom-color:#94a3b82e;border-right-color:#94a3b82e}body.theme-dark .curriculum-mobile-sheet .icon-btn{background:rgba(255,255,255,.1);border-color:#94a3b838;color:#dbe7f5}body.theme-dark .curriculum-mobile-sheet .icon-btn:hover{background:rgba(255,255,255,.16);border-color:#94a3b84d;color:#eff6ff}body.theme-dark .curriculum-loop-readout{background:#0d1728;border-color:#334155;color:#dbe7f5}body.theme-dark .curriculum-lesson-title,body.theme-dark .curriculum-module-copy strong,body.theme-dark .curriculum-embed-frame strong,body.theme-dark .live-stage-copy h4,body.theme-dark .live-assignment-head strong,body.theme-dark .td-q-text,body.theme-dark .comment-author strong{color:#e6edf7}body.theme-dark .context-copy,body.theme-dark .curriculum-stage-prose p,body.theme-dark .curriculum-stage-prose li,body.theme-dark .curriculum-context-note-item p,body.theme-dark .curriculum-embed-frame p,body.theme-dark .live-task-shell-copy small,body.theme-dark .live-task-shell-copy p,body.theme-dark .live-task-card p,body.theme-dark .live-task-empty p,body.theme-dark .live-stage-note,body.theme-dark .live-stage-list-card li,body.theme-dark .comment p{color:#c7d4e4}body.theme-dark .comment-author small,body.theme-dark .curriculum-context-note-item small{color:#96a4b8}body.theme-dark .td-option,body.theme-dark .td-option span:last-child{color:#e6edf7}body.theme-dark .td-option:hover{border-color:#60a5fa4d;background:rgba(19,32,51,.94);box-shadow:0 12px 28px -24px #02061794}body.theme-dark .td-option input{accent-color:#8ab4f8}body.theme-dark .td-option:has(input:focus-visible){border-color:#60a5fa94;box-shadow:0 0 0 3px #60a5fa2e,0 16px 30px -24px #020617a3}body.theme-dark .td-option:has(input:checked){background:linear-gradient(135deg,rgba(37,99,235,.28),rgba(14,165,233,.2));border-color:#93c5fdb3;color:#eff6ff;box-shadow:0 0 0 3px #60a5fa24,0 18px 34px -24px #020617b8;transform:translateY(-1px)}body.theme-dark .td-option:has(input:checked) .td-opt-key{background:#dbeafe;color:#0f172a;box-shadow:0 10px 18px -14px #60a5fa80}body.theme-dark .td-option:has(input:checked) span:last-child{color:#eff6ff}body.theme-dark .td-option.is-active,body.theme-dark .td-option.active{background:rgba(59,130,246,.18);border-color:#60a5fa80;color:#eff6ff;box-shadow:0 14px 30px #2563eb29}body.theme-dark .td-option.is-active span:last-child,body.theme-dark .td-option.active span:last-child{color:#eff6ff}body.theme-dark .td-q-legend{color:#96a4b8}body.theme-dark .curriculum-lesson-type-icon{background:#162235;color:#bfd0e4}body.theme-dark .curriculum-lesson-status-icon{background:#0d1728;border-color:#475569;color:#9ca3af}body.theme-dark .curriculum-lesson-meta{color:#9fb0c4}body.theme-dark .curriculum-lesson-status-icon.is-in_progress{background:rgba(59,130,246,.18);border-color:#60a5fa7a;color:#bfdbfe}body.theme-dark .curriculum-lesson-status-icon.is-completed{background:rgba(16,185,129,.16);border-color:#34d3994d;color:#86efac}body.theme-dark .curriculum-lesson-status-icon.is-open{background:#0d1728;border-color:#475569;color:#cbd5e1}body.theme-dark .curriculum-lesson-status-icon.is-locked{background:rgba(239,68,68,.12);border-color:#f8717147;color:#fca5a5}body.theme-dark .curriculum-lesson-item.is-locked{background:linear-gradient(180deg,#16181f,#111827);border-color:#313949}body.theme-dark .left-context-mask{background:rgba(2,8,23,.5)}body.theme-dark .assignment-upload-progress,body.theme-dark .td-q-progress,body.theme-dark .ul-vocab-progress{background:rgba(148,163,184,.14)}body.theme-dark .live-mobile-empty,body.theme-dark .curriculum-module-empty{background:#101a2b;border-color:#334155;color:#96a4b8}h1,h2,h3,h4,p{margin:0}a{text-decoration:none;color:inherit}button,input,textarea{font:inherit}button{cursor:pointer}.material-symbols-outlined{font-variation-settings:"FILL" 0,"wght" 500,"GRAD" 0,"opsz" 24;font-size:22px;line-height:1}.app{min-height:100vh;position:relative}.topbar{position:fixed!important;top:0!important;left:0!important;right:0!important;z-index:24;background:transparent;display:block!important;visibility:visible!important;opacity:1!important;pointer-events:none}.topbar[data-player-v2-theme-menu-open=true]{z-index:40!important}.topbar-inner{position:relative!important;z-index:21;transition:padding-right .22s cubic-bezier(.2,.8,.2,1);display:grid!important;visibility:visible!important;opacity:1!important;pointer-events:auto}.topbar[data-player-v2-theme-menu-open=true] .topbar-inner{z-index:41!important}.main{transition:padding .28s cubic-bezier(.2,.8,.2,1),left .28s cubic-bezier(.2,.8,.2,1),right .22s cubic-bezier(.2,.8,.2,1),bottom .22s cubic-bezier(.2,.8,.2,1)}.topbar-inner{min-height:var(--header-h);padding:10px 20px;padding-right:calc(var(--rail-w) + 20px);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;border-bottom:1px solid rgba(201,214,228,.82);background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(255,255,255,.94));box-shadow:0 1px #0f172a08;backdrop-filter:blur(12px)}.main{padding:20px;padding-top:calc(var(--header-h) + 16px);padding-right:calc(var(--rail-w) + 20px);padding-bottom:124px}.app[data-drawer-open=true] .topbar-inner,.app[data-drawer-open=true] .main{padding-right:calc(var(--rail-w) + var(--panel-w) + 20px)}.app[data-left-drawer-open=true] .main{padding-left:calc(var(--left-panel-w) + 40px)}.brand,.top-mode-nav,.top-mode-btn{position:relative;z-index:4;pointer-events:auto}.top-actions{position:relative;z-index:4;pointer-events:auto;display:flex;align-items:center;gap:8px}.brand,.hero-actions,.metric-row,.mode-nav-row,.utility-head,.composer-actions{display:flex;align-items:center;gap:10px}.brand{min-width:0;gap:10px}@media (min-width:861px){body[data-shell-variant=tap_player] .brand>.menu-toggle{display:none}}.brand-logo{display:inline-flex;align-items:center;min-width:0;flex:0 0 auto}.brand-logo-img{display:block;width:215px;height:40px;max-width:100%;-o-object-fit:contain;object-fit:contain;-o-object-position:left center;object-position:left center}.brand-mark{width:42px;height:42px;border-radius:14px;border:1px solid #cfe0ff;background:linear-gradient(180deg,#eff5ff,#e6efff);color:var(--blue);display:grid;place-items:center;font-weight:800;font-size:18px;box-shadow:0 6px 14px #2563eb14,inset 0 1px #ffffffd1}.brand-mark span{display:block;line-height:1}.brand-copy{display:grid;gap:2px;min-width:0}.brand-copy small{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:800}.brand-copy strong,.summary-main strong{font-size:16px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.icon-btn,.menu-toggle,.hero-primary,.hero-secondary,.mode-btn,.chip,.queue-chip,.utility-btn,.ghost-btn,.small-btn,.action-btn,.compose-btn{transition:.18s ease}.icon-btn,.menu-toggle{width:38px;height:38px;border:1px solid var(--line);border-radius:999px;background:#fff;color:#607089;display:grid;place-items:center;box-shadow:0 1px 2px #0f172a08}.icon-btn svg,.menu-toggle svg{width:18px;height:18px;display:block}.icon-btn .material-symbols-outlined,.icon-btn .tap-ui-icon,.menu-toggle .material-symbols-outlined,.menu-toggle .tap-ui-icon{font-size:22px;line-height:1}.icon-btn:hover,.menu-toggle:hover{background:var(--surface-soft);border-color:var(--line-strong);color:var(--ink);box-shadow:0 8px 18px #0f172a0f}.topbar-today{position:relative;display:flex;align-items:center;justify-content:center}.topbar-today-btn{position:relative}.topbar-today-badge{position:absolute;top:-4px;right:-2px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:linear-gradient(135deg,#2563eb,#0ea5e9);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:10px;font-weight:800;line-height:1;box-shadow:0 10px 22px #2563eb3d;border:2px solid #fff}.topbar-today-popover{position:absolute;top:calc(100% + 10px);right:-8px;z-index:32;min-width:220px;max-width:280px;padding:12px 14px;border:1px solid rgba(148,163,184,.28);border-radius:18px;background:rgba(255,255,255,.97);backdrop-filter:blur(16px);box-shadow:0 18px 36px #0f172a24;display:grid;gap:8px;pointer-events:none;opacity:0;transform:translateY(-6px) scale(.98);transition:opacity .2s ease,transform .2s ease}.topbar-today-popover:before{content:"";position:absolute;top:-6px;right:18px;width:12px;height:12px;background:rgba(255,255,255,.97);border-top:1px solid rgba(148,163,184,.28);border-left:1px solid rgba(148,163,184,.28);transform:rotate(45deg)}.topbar-today-popover.is-visible{opacity:1;transform:translateY(0) scale(1)}.topbar-today-popover-head{font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:800;color:#607089}.topbar-today-popover-list{display:grid;gap:6px}.topbar-today-popover-message{margin:0;padding:8px 10px;border-radius:12px;background:#f8fafc;color:#0f172a;font-size:12px;font-weight:700;line-height:1.45;border:1px solid rgba(226,232,240,.9)}.topbar-today-popover-message[data-tone=accent]{background:linear-gradient(135deg,rgba(37,99,235,.1),rgba(14,165,233,.06));border-color:#60a5fa42;color:#1d4ed8}.topbar-today-popover-message[data-tone=success]{background:linear-gradient(135deg,rgba(16,185,129,.14),rgba(34,197,94,.08));border-color:#34d39947;color:#047857}.topbar-today-popover-message[data-tone=warning]{background:linear-gradient(135deg,rgba(249,115,22,.1),rgba(245,158,11,.08));border-color:#fbbf244d;color:#c2410c}@keyframes topbarBellRing{0%,to{transform:rotate(0)}12%{transform:rotate(-16deg)}24%{transform:rotate(14deg)}36%{transform:rotate(-12deg)}48%{transform:rotate(10deg)}60%{transform:rotate(-8deg)}72%{transform:rotate(6deg)}}.topbar-today.is-ringing .topbar-today-btn,.topbar-today-btn.is-ringing{animation:topbarBellRing .72s ease-in-out 3;transform-origin:50% 12%;border-color:#bfdbfe;box-shadow:0 0 0 6px #2563eb1a,0 14px 26px #2563eb24}.topbar-today[data-player-v2-today-bell-active="1"] .topbar-today-btn{border-color:#dbeafe;background:linear-gradient(180deg,#ffffff,#f4f8ff);color:#2563eb}.mobile-top-actions{display:none;align-items:center}.mobile-top-btn{min-height:40px;padding:0 14px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:12px;font-weight:800;box-shadow:0 1px 2px #0f172a08}.mobile-top-btn.is-icon{padding:0 12px}.mobile-top-btn .material-symbols-outlined,.mobile-top-btn .tap-ui-icon{font-size:20px}.mobile-mode-sheet-mask{position:fixed;inset:0;z-index:34;background:rgba(17,24,39,.22);backdrop-filter:blur(6px);display:none}.mobile-mode-sheet{position:fixed;left:14px;right:14px;top:calc(var(--header-h) + 14px);z-index:35;padding:14px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:var(--shadow);display:none;gap:10px}.app[data-mobile-mode-sheet-open=true] .mobile-mode-sheet-mask,.app[data-mobile-mode-sheet-open=true] .mobile-mode-sheet{display:grid}.mobile-mode-sheet-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.mobile-mode-sheet-copy{display:grid;gap:0}.mobile-mode-sheet-copy small,.eyebrow{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:800}.mobile-mode-sheet-head strong{font-size:16px;font-weight:800}.mobile-mode-sheet-copy p{margin:0;font-size:12px;line-height:1.55;color:var(--muted)}.mobile-mode-sheet-grid{display:grid;gap:10px}.mobile-mode-sheet-btn{position:relative;width:100%;padding:14px 16px 14px 18px;border:1px solid var(--line);border-radius:18px;background:#fff;color:#3c4043;display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:6px;text-align:left;overflow:hidden;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease}.mobile-mode-sheet-btn:before{content:"";position:absolute;left:0;top:12px;bottom:12px;width:4px;border-radius:999px;background:transparent;opacity:0;transition:opacity .18s ease,background .18s ease}.mobile-mode-sheet-btn.active,.utility-theme-option.active,.utility-mobile-btn.active,.mode-btn.active,.top-mode-btn.active{background:linear-gradient(135deg,rgba(27,89,248,.12),rgba(15,118,110,.08));border-color:#c6d8ff;color:var(--blue);box-shadow:0 14px 28px #2563eb1f;transform:translateY(-1px)}.mobile-mode-sheet-btn.active:before{opacity:1;background:linear-gradient(180deg,#2563eb 0%,#0ea5e9 100%)}.mobile-mode-sheet-btn:hover{border-color:#d7e4f5;background:#fcfeff}.mobile-mode-sheet-btn-meta{display:none}.mobile-mode-sheet-btn-badge,.mobile-mode-sheet-btn-state{min-height:28px;padding:0 10px;border-radius:999px;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;font-size:10px;letter-spacing:.08em;text-transform:uppercase;font-weight:800;line-height:1}.mobile-mode-sheet-btn-badge{background:#eef4ff;color:var(--blue);border-color:#d8e4ff}.mobile-mode-sheet-btn-state{background:#eef8f1;color:var(--green);border-color:#d4ead9}.mobile-mode-sheet-btn-copy{display:grid;gap:4px;justify-items:start;align-content:start;min-width:0}.mobile-mode-sheet-btn-copy strong{font-size:14px;font-weight:800;line-height:1.3}.mobile-mode-sheet-btn-copy small{font-size:11px;color:var(--muted);font-weight:700}.utility-mobile-nav{display:none;padding:10px 14px 0;gap:8px;border-bottom:1px solid var(--line);background:#fff}.utility-mobile-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.utility-mobile-grid-preferences,.utility-appearance-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:start}.utility-theme-picker{position:relative;min-width:0}.utility-theme-toggle,.utility-language-toggle,.utility-exit-link,.utility-theme-option{border:1px solid var(--line);color:var(--ink);display:flex;align-items:center;gap:10px;font-size:12px;font-weight:800;transition:.18s ease}.utility-theme-toggle,.utility-theme-option{justify-content:space-between}.utility-theme-toggle,.utility-language-toggle,.utility-exit-link{min-height:44px;border-radius:16px;background:#fff}.utility-theme-toggle{padding:0 14px}.utility-theme-toggle:hover,.utility-language-toggle:hover,.utility-exit-link:hover,.utility-theme-option:hover{background:var(--surface-soft)}.utility-theme-toggle-main,.utility-theme-option-main{display:flex;align-items:center;gap:10px;min-width:0}.utility-theme-toggle-main svg,.utility-language-toggle svg,.utility-exit-link svg,.utility-theme-option svg{width:18px;height:18px;display:block;flex:0 0 auto}.utility-theme-toggle-main .material-symbols-outlined,.utility-theme-toggle-main .tap-ui-icon,.utility-language-toggle .material-symbols-outlined,.utility-language-toggle .tap-ui-icon,.utility-exit-link .material-symbols-outlined,.utility-exit-link .tap-ui-icon,.utility-theme-option .material-symbols-outlined,.utility-theme-option .tap-ui-icon{font-size:18px}.utility-theme-toggle-label,.utility-language-toggle-label,.utility-theme-option-label{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}body.theme-dark .topbar-today-badge{border-color:#0f172a}body.theme-dark .topbar-today-popover{background:rgba(15,23,42,.96);border-color:#4755698c;box-shadow:0 24px 44px #0206176b}body.theme-dark .topbar-today-popover:before{background:rgba(15,23,42,.96);border-top-color:#4755698c;border-left-color:#4755698c}body.theme-dark .topbar-today-popover-head{color:#94a3b8}body.theme-dark .topbar-today-popover-message{background:#172132;border-color:#273449;color:#e2e8f0}body.theme-dark .topbar-today-popover-message[data-tone=accent]{background:linear-gradient(135deg,rgba(37,99,235,.18),rgba(14,165,233,.12));border-color:#60a5fa52;color:#bfdbfe}body.theme-dark .topbar-today-popover-message[data-tone=success]{background:linear-gradient(135deg,rgba(16,185,129,.2),rgba(34,197,94,.12));border-color:#34d3994d;color:#86efac}body.theme-dark .topbar-today-popover-message[data-tone=warning]{background:linear-gradient(135deg,rgba(249,115,22,.18),rgba(245,158,11,.13));border-color:#fbbf244d;color:#fdba74}.utility-theme-toggle-caret{font-size:18px;color:var(--muted)}.utility-theme-menu{position:absolute;left:0;top:calc(100% + 8px);z-index:5;min-width:100%;padding:6px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:var(--shadow);display:grid;gap:4px}.utility-theme-option{width:100%;min-height:40px;padding:0 12px;border-radius:14px;background:transparent}.utility-theme-option-check{font-size:18px;color:inherit}.utility-language-toggle{padding:0 12px;justify-content:center;min-width:74px}.utility-mobile-grid-preferences .utility-theme-toggle,.utility-mobile-grid-preferences .utility-language-toggle{min-height:52px}.utility-mobile-grid-preferences .utility-theme-menu{right:0;left:0}.utility-appearance-bar{position:static;z-index:auto;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;display:block}.utility-appearance-copy{display:none}.utility-appearance-actions .utility-theme-toggle,.utility-appearance-actions .utility-language-toggle{min-height:38px;padding:0 12px;border-radius:14px;font-size:11px}.utility-appearance-actions .utility-theme-toggle-main .material-symbols-outlined,.utility-appearance-actions .utility-theme-toggle-main .tap-ui-icon,.utility-appearance-actions .utility-language-toggle .material-symbols-outlined,.utility-appearance-actions .utility-language-toggle .tap-ui-icon,.utility-appearance-actions .utility-theme-toggle-caret{font-size:16px}.topbar-preferences{display:flex;align-items:center;gap:6px}.topbar-preferences .utility-theme-picker{min-width:0}.topbar-preferences .utility-theme-toggle,.topbar-preferences .utility-language-toggle,.topbar-preferences .utility-exit-link{min-height:38px;border-radius:999px;background:#fff;box-shadow:0 1px 2px #0f172a08}.topbar-preferences .utility-theme-toggle{width:38px;min-width:38px;padding:0;gap:0;justify-content:center}.topbar-preferences .utility-theme-toggle-main{gap:0;justify-content:center}.topbar-preferences .utility-theme-toggle-label,.topbar-preferences .utility-theme-toggle-caret{display:none}.topbar-preferences .utility-language-toggle{min-width:42px;padding:0 8px}.topbar-preferences .utility-exit-link{min-width:auto;padding:0 12px;justify-content:center}.topbar-preferences .utility-theme-menu{left:auto;right:0;min-width:180px}.topbar-preferences .utility-theme-option{min-height:38px}.topbar-drawer-toggle[aria-expanded=true]{background:var(--blue-soft);border-color:#d6e2ff;color:var(--blue);box-shadow:0 10px 20px #2563eb14}@media (min-width:861px){.utility-appearance-bar{display:none!important}}.utility-mobile-btn{min-height:58px;padding:8px 6px;border:1px solid var(--line);border-radius:16px;background:#fff;color:var(--muted);display:grid;justify-items:center;align-content:center;gap:4px;text-align:center;font-size:10px;font-weight:800}.utility-mobile-btn .material-symbols-outlined,.utility-mobile-btn .tap-ui-icon{font-size:20px}.hero-primary,.hero-secondary,.ghost-btn,.small-btn,.action-btn,.compose-btn{min-height:40px;border-radius:999px;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:13px;font-weight:800}.hero-primary,.compose-btn,.action-btn{border:0;background:var(--blue);color:#fff;box-shadow:0 10px 22px #2563eb29}.hero-primary:hover,.compose-btn:hover,.action-btn:hover{background:#1d4ed8}.hero-secondary,.ghost-btn,.small-btn{border:1px solid var(--line-strong);background:#fff;color:var(--ink)}.hero-secondary:hover,.ghost-btn:hover,.small-btn:hover{background:var(--surface-soft)}.ghost-btn.is-disabled,.action-btn.is-disabled{opacity:.52;pointer-events:none;cursor:default;box-shadow:none}.chip,.queue-chip{min-height:30px;padding:0 12px;border-radius:999px;font-size:11px;font-weight:800;display:inline-flex;align-items:center;gap:6px}.chip{background:var(--blue-soft);color:var(--blue);border:1px solid #d6e2ff}.chip.success{background:var(--green-soft);color:var(--green);border-color:#d1ebdd}.chip.warning{background:var(--amber-soft);color:var(--amber);border-color:#f3dfb4}.queue-chip{background:var(--surface-muted);color:var(--ink);border:1px solid transparent}.queue-chip.active{background:var(--blue-soft);color:var(--blue);border-color:#d6e2ff}.card{border:1px solid var(--line);border-radius:var(--radius-xl);background:var(--surface);box-shadow:var(--shadow)}.workspace,.detail-stack,.queue-list,.toolbar-copy,.card-head-copy,.queue-head,.composer,.utility-list,.metric-card,.mini-card,.placeholder-copy{display:grid;gap:16px}.shell{display:grid;gap:12px}.mode-pane{display:none;gap:16px}.mode-pane.active{display:grid}.hero{padding:18px;display:none!important;grid-template-columns:minmax(0,1fr) minmax(260px,.88fr);gap:14px;background:radial-gradient(circle at top right,rgba(26,115,232,.09),transparent 34%),radial-gradient(circle at left bottom,rgba(15,157,88,.08),transparent 30%),linear-gradient(180deg,#ffffff,#f7faff)}.hero-copy{display:grid;gap:10px;align-content:center;min-width:0}.hero-copy h1{font-size:clamp(28px,3.8vw,42px);line-height:.98;letter-spacing:-.05em;max-width:none}.hero-copy p{max-width:66ch;color:var(--muted);font-size:14px;line-height:1.7}.hero-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-content:start}.metric-card{padding:14px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface)}.metric-card.primary{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;border-color:transparent}.metric-card span,.mini-card span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:800}.metric-card.primary span{color:#ffffffd1}.metric-card strong{font-size:28px;font-weight:800;line-height:1}.metric-card small{font-size:12px;color:var(--muted);line-height:1.5}.metric-card.primary small{color:#ffffffd1}.mode-nav{position:relative;top:auto;z-index:4;padding:12px;background:rgba(255,255,255,.82)}.mode-nav-row{flex-wrap:wrap}.mode-btn{flex:1 1 0;min-width:112px;padding:12px 14px;border:1px solid var(--line);border-radius:20px;background:#fff;display:grid;gap:4px;text-align:left;color:#3c4043}.mode-btn strong{font-size:15px;font-weight:800}.mode-btn span{font-size:12px;line-height:1.45;color:var(--muted)}.mode-btn[disabled]{opacity:.62;cursor:not-allowed}.toolbar-copy h2{font-size:24px;letter-spacing:-.04em}.toolbar-copy p{max-width:64ch;color:var(--muted);font-size:14px;line-height:1.65}.pane-grid{display:grid;grid-template-columns:1fr;gap:16px;align-items:start}.queue-card{display:none!important;gap:16px;padding:16px}.queue-head h3,.workspace-card h3,.support-card h3{font-size:18px;font-weight:800}.queue-head p,.workspace-card p,.support-card p{font-size:13px;line-height:1.6;color:var(--muted)}.queue-item{padding:14px;border:1px solid var(--line);border-radius:18px;background:var(--surface-muted);display:grid;gap:6px}.queue-item.active{background:var(--blue-soft);border-color:#d6e2ff}.queue-item strong{font-size:14px;font-weight:800;line-height:1.35}.queue-item span,.queue-item small{font-size:12px;line-height:1.5;color:var(--muted)}.workspace-card,.support-card{padding:18px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);display:grid;gap:16px}.card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;flex-wrap:wrap}.card-head-copy h3{font-size:18px;font-weight:800}.card-head-copy p{font-size:13px;line-height:1.6;color:var(--muted);max-width:64ch}.viewer-stage{min-height:360px;border:1px solid var(--line);border-radius:24px;background:radial-gradient(circle at top right,rgba(26,115,232,.09),transparent 30%),linear-gradient(180deg,#fafcff,#eff4fd);padding:22px;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(220px,.7fr);gap:18px;align-items:flex-end}.viewer-copy{display:grid;gap:12px;align-content:end}.viewer-copy h3{font-size:38px;line-height:1.02;letter-spacing:-.05em;max-width:14ch}.viewer-copy p{font-size:14px;line-height:1.7;color:var(--muted);max-width:56ch}.viewer-meta{display:flex;flex-wrap:wrap;gap:10px}.viewer-meta span{min-height:32px;padding:0 12px;border-radius:999px;background:#fff;border:1px solid var(--line);display:inline-flex;align-items:center;font-size:12px;font-weight:800;color:#3c4043}.viewer-preview{min-height:250px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(180deg,#ffffff,#f2f6fc);position:relative;overflow:hidden}.viewer-preview:before{content:"";position:absolute;inset:22px;border-radius:18px;border:1px dashed #c9d5e8;background:linear-gradient(180deg,rgba(26,115,232,.03),rgba(26,115,232,.01)),repeating-linear-gradient(180deg,transparent 0 20px,rgba(95,99,104,.05) 20px 21px)}.tools-row{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-top:2px}.tools-group{display:flex;gap:10px;flex-wrap:wrap}.grid-2,.grid-3{display:grid;gap:16px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.mini-card{padding:16px;border:1px solid var(--line);border-radius:18px;background:var(--surface-soft);align-content:start}.mini-card strong{font-size:15px;font-weight:800}.mini-card p,.mini-card small{font-size:12px;line-height:1.55;color:var(--muted)}.split-card{padding:18px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);display:grid;gap:14px;grid-template-columns:minmax(0,1fr) minmax(280px,.92fr)}.status-line{padding:12px 14px;border:1px solid var(--line);border-radius:16px;background:var(--surface-soft);display:flex;justify-content:space-between;gap:10px;font-size:13px;color:#3c4043}.comment{padding:16px;border:1px solid var(--line);border-radius:18px;background:var(--surface-soft);display:grid;gap:10px}.comment-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.comment-author{display:grid;gap:3px}.comment-author strong{font-size:14px;font-weight:800}.comment-author small{font-size:12px;color:var(--muted)}.comment p{font-size:13px;line-height:1.7;color:#3c4043}.composer{padding:16px;border:1px solid var(--line);border-radius:20px;background:#fff}.composer textarea{width:100%;min-height:132px;resize:vertical;border:1px solid var(--line);border-radius:18px;background:var(--surface-soft);padding:14px;color:var(--ink);outline:none;line-height:1.6}.composer textarea:focus{border-color:#a8c7fa;box-shadow:0 0 0 3px #1a73e81f}.composer-actions{justify-content:space-between;flex-wrap:wrap}.placeholder{min-height:340px;display:grid;place-items:center;text-align:center;padding:28px;background:linear-gradient(180deg,#ffffff,#f6f9fe)}.placeholder-copy{max-width:520px}.placeholder-copy h3{font-size:30px;letter-spacing:-.04em}.placeholder-copy p{font-size:14px;line-height:1.7;color:var(--muted)}.utility-shell{position:fixed;top:0;right:0;bottom:0;width:calc(var(--rail-w) + var(--panel-w));z-index:34;pointer-events:none}.utility-mask{position:fixed;inset:0;z-index:0;border:0;padding:0;background:rgba(17,24,39,.12);opacity:0;pointer-events:none;transition:opacity .22s ease}.utility-panel{position:absolute;top:0;right:var(--rail-w);bottom:0;z-index:1;width:var(--panel-w);border-left:1px solid rgba(201,214,228,.94);background:linear-gradient(180deg,#ffffff,#fbfdff);display:grid;grid-template-rows:60px minmax(0,1fr);overflow:hidden;pointer-events:auto;transition:.22s ease;box-shadow:-18px 0 36px #0f172a14}.app[data-drawer-open=false] .utility-panel,body[data-shell-right-drawer-open="0"] .utility-panel{transform:translate(100%);opacity:0;pointer-events:none}.utility-head{position:sticky;top:0;z-index:2;min-height:60px;padding:0 16px;border-bottom:1px solid var(--line);background:#fff;justify-content:space-between}.utility-head strong{font-size:16px;font-weight:800}.utility-body{padding:14px 14px 18px;overflow:auto;display:grid;gap:12px;align-content:start;background:linear-gradient(180deg,#ffffff,#fbfdff)}.utility-view{display:none;gap:16px}.utility-view.active{display:grid}.utility-panel--tap-surface{grid-template-rows:minmax(0,1fr)}.utility-panel--tap-surface>.tap-shell-surface{min-height:0;height:100%}.utility-item{padding:14px;border:1px solid var(--line);border-radius:18px;background:#fff;display:grid;gap:6px}.utility-item.active{background:var(--blue-soft);border-color:#d6e2ff}.utility-item strong{font-size:14px;font-weight:800}.utility-item span,.utility-item small,.utility-item p{font-size:12px;line-height:1.55;color:var(--muted)}.note-box{width:100%;min-height:180px;border:1px solid var(--line);border-radius:18px;background:#fff;resize:vertical;outline:none;padding:14px;line-height:1.7;color:#3c4043}.timeline{display:grid;gap:8px}.timeline-row{display:flex;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px dashed var(--line);font-size:12px;color:#3c4043}.timeline-row:last-child{border-bottom:0;padding-bottom:0}.utility-rail{position:absolute;top:0;right:0;bottom:0;z-index:1;width:var(--rail-w);border-left:1px solid rgba(201,214,228,.94);background:linear-gradient(180deg,#fbfdff,#f5f9ff);display:grid;align-content:start;justify-items:center;gap:10px;padding-top:12px;pointer-events:auto;box-shadow:-8px 0 20px #0f172a0d}.utility-rail.utility-rail--hidden{display:none!important;width:0;padding:0;border:0;box-shadow:none;pointer-events:none;visibility:hidden}.utility-toggle{width:52px;height:42px;border:1px solid var(--line);border-radius:16px;background:#fff;color:var(--muted)}.utility-toggle-icon,.utility-btn-icon{display:grid;place-items:center}.utility-toggle-icon svg,.utility-btn-icon svg{width:20px;height:20px;display:block}.utility-toggle-icon .material-symbols-outlined,.utility-toggle-icon .tap-ui-icon,.utility-btn-icon .material-symbols-outlined,.utility-btn-icon .tap-ui-icon{font-size:20px;line-height:1}.utility-btn{width:68px;min-height:68px;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.8);color:#5f6f84;display:grid;justify-items:center;align-content:center;gap:7px;padding:8px 6px;text-align:center;font-size:11px;font-weight:800}.utility-btn-label{display:block;max-width:54px;line-height:1.12;white-space:normal;overflow-wrap:normal;word-break:normal;hyphens:none}.utility-btn:hover,.utility-toggle:hover{background:#fff;border-color:var(--line-strong);color:var(--ink)}.utility-btn.active{background:var(--blue-soft);color:var(--blue);border-color:#d6e2ff;box-shadow:0 10px 20px #2563eb14}body[data-shell-variant=tap_player][data-active-mode=curriculum] .topbar-inner,body[data-shell-variant=tap_player][data-active-mode=curriculum] .utility-panel,body[data-shell-variant=tap_player][data-active-mode=curriculum] .left-context-panel{backdrop-filter:none;-webkit-backdrop-filter:none}body[data-shell-variant=tap_player][data-active-mode=curriculum] .utility-panel,body[data-shell-variant=tap_player][data-active-mode=curriculum] .left-context-panel{box-shadow:0 10px 24px #0f172a0f}body[data-shell-variant=tap_player][data-active-mode=curriculum] .utility-mask,body[data-shell-variant=tap_player][data-active-mode=curriculum] .left-context-mask{backdrop-filter:none;-webkit-backdrop-filter:none;background:rgba(17,24,39,.16)}.mobile-mode-nav{position:fixed;left:0;right:0;bottom:0;z-index:36;padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line);background:rgba(255,255,255,.96);backdrop-filter:blur(18px);display:none}.mobile-mode-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.mobile-mode-btn{min-height:56px;padding:8px 4px;border:1px solid transparent;border-radius:18px;background:transparent;color:var(--muted);display:grid;justify-items:center;align-content:center;gap:4px;text-align:center;font-size:10px;font-weight:800}.mobile-mode-btn .material-symbols-outlined,.mobile-mode-btn .tap-ui-icon{font-size:22px}.mobile-mode-btn.active{background:var(--blue-soft);color:var(--blue)}.mobile-mode-btn[disabled]{opacity:.52;cursor:not-allowed}.live-mobile-shell{display:none;gap:12px;padding:16px 18px}.live-mobile-pane{display:none;gap:12px}.live-mobile-pane.active{display:grid}.live-mobile-pane-head{display:grid;gap:6px}.live-mobile-pane-head p{font-size:12px;line-height:1.6;color:var(--muted)}.live-mobile-pane-body{display:grid;gap:12px;min-width:0}.live-mobile-card{padding:16px;border:1px solid var(--line);border-radius:20px;background:var(--surface-soft);display:grid;gap:12px}.live-mobile-pane-body>small,.live-mobile-card small,.live-mobile-meta-card span{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:800}.live-mobile-pane-body>strong,.live-mobile-card strong{font-size:18px;font-weight:800;line-height:1.3}.live-mobile-pane-body>p,.live-mobile-card p{font-size:13px;line-height:1.65;color:var(--muted)}.live-mobile-overview-grid,.live-mobile-filter-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.live-mobile-meta-card{padding:14px;border:1px solid var(--line);border-radius:18px;background:#fff;display:grid;gap:4px}.live-mobile-meta-card strong{font-size:18px;font-weight:800}.live-mobile-list{display:grid;gap:10px}.live-mobile-quick-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.live-mobile-quick-actions>*{width:100%;min-height:40px;justify-content:center}.live-mobile-item{width:100%;padding:14px;border:1px solid var(--line);border-radius:18px;background:#fff;display:grid;gap:8px;text-align:left}.live-mobile-item.active{background:var(--blue-soft);border-color:#d6e2ff}.live-mobile-item-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.live-mobile-item-head strong{font-size:15px;font-weight:800;line-height:1.35}.live-mobile-item p,.live-mobile-item small{font-size:12px;line-height:1.55;color:var(--muted)}.live-mobile-badge{min-height:26px;padding:0 10px;border-radius:999px;background:#f1f3f4;color:#3c4043;display:inline-flex;align-items:center;font-size:11px;font-weight:800;border:1px solid transparent;flex:0 0 auto}.live-mobile-badge.is-ready,.live-mobile-badge.is-present,.live-mobile-badge.is-graded{background:var(--green-soft);color:var(--green);border-color:#cde8d1}.live-mobile-badge.is-upcoming,.live-mobile-badge.is-attention,.live-mobile-badge.is-pending_excuse{background:var(--amber-soft);color:var(--amber);border-color:#f2deb1}.live-mobile-badge.is-replay,.live-mobile-badge.is-submitted,.live-mobile-badge.is-answered{background:var(--blue-soft);color:var(--blue);border-color:#d6e2ff}.live-mobile-badge.is-quiet{background:#f3f4f6;color:#5f6368}.live-mobile-empty{padding:14px;border:1px dashed var(--line-strong);border-radius:18px;background:#fff;font-size:13px;line-height:1.6;color:var(--muted)}.live-task-shell--mobile{padding:16px;border:1px solid var(--line);border-radius:20px;background:var(--surface-soft);box-shadow:none}.live-task-shell--mobile .live-task-host{min-height:180px}.live-mobile-bottom-bar{display:none}.mode-mobile-tab-label{display:block;min-width:0;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;line-height:1.05}@media (max-width:1180px){.split-card{grid-template-columns:1fr}}@media (max-width:980px){.grid-2,.grid-3{grid-template-columns:1fr}.mode-btn{min-width:calc(50% - 8px)}}@media (max-width:860px){.topbar{position:fixed;top:0;left:0;right:0;z-index:24;background:linear-gradient(180deg,rgba(245,248,253,.97) 0%,rgba(245,248,253,.88) 72%,rgba(245,248,253,0) 100%)}.summary-strip-wrap{display:none}.utility-shell{left:0;width:auto}.app[data-drawer-open=true] .utility-mask,body[data-shell-right-drawer-open="1"] .utility-mask{opacity:1;pointer-events:auto}.app[data-mode=curriculum][data-panel=queue] .utility-mask{top:0}.utility-mobile-nav{display:grid;position:sticky;top:0;z-index:2;backdrop-filter:blur(14px)}.utility-rail{display:none}.utility-appearance-bar{padding:10px}.main{padding-bottom:calc(var(--mobile-mode-nav-h) + env(safe-area-inset-bottom,0px) + 20px)}.toolbar,.hero{padding:18px}.toolbar-copy h2{font-size:26px}.viewer-stage{min-height:unset;padding:20px}.curriculum-menu-toolbar-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.topbar-inner,.main{padding-left:14px}.topbar-inner,.hero-metrics{grid-template-columns:1fr}.mode-btn{min-width:100%}.viewer-copy h3{font-size:28px}.hero-copy h1{font-size:34px}.utility-appearance-actions{grid-template-columns:minmax(0,1fr) auto}.utility-appearance-actions .utility-language-toggle{width:auto}}@media (max-width:1180px){.hero,.viewer-stage{grid-template-columns:1fr}.live-assignment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:860px){.hero-copy p,.metric-card small{display:none}.live-assignment-grid{grid-template-columns:1fr}}.top-mode-nav{display:flex;justify-content:center;gap:6px;flex-wrap:wrap}.top-mode-btn{min-height:38px;padding:0 14px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;transition:.18s ease;box-shadow:0 1px 2px #0f172a08}.top-mode-btn:hover{background:var(--surface-soft);border-color:var(--line-strong)}.top-mode-btn[disabled]{opacity:.56;cursor:not-allowed}body[data-shell-variant=tap_player] .top-mode-nav{align-items:stretch;gap:10px;flex-wrap:nowrap}body[data-shell-variant=tap_player] .top-mode-btn{position:relative;min-height:46px;padding:8px 14px 8px 16px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;justify-content:flex-start;gap:10px;min-width:124px;overflow:hidden}body[data-shell-variant=tap_player] .top-mode-btn-copy{display:grid;gap:2px;justify-items:start;align-content:center;min-width:0}body[data-shell-variant=tap_player] .top-mode-btn-label{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body[data-shell-variant=tap_player] .top-mode-btn-note{display:inline-flex;align-items:center;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;letter-spacing:.08em;text-transform:uppercase;font-weight:800;color:#71839b}body[data-shell-variant=tap_player] .top-mode-btn-note[hidden],body[data-shell-variant=tap_player] .top-mode-btn-badge[hidden]{display:none!important}body[data-shell-variant=tap_player] .top-mode-btn-badge{min-width:22px;height:22px;padding:0 6px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#eef4ff;border:1px solid #d8e4ff;color:var(--blue);font-size:10px;font-weight:800;line-height:1;box-shadow:inset 0 1px #ffffffe6}body[data-shell-variant=tap_player] .top-mode-btn.has-note{align-items:center}body[data-shell-variant=tap_player] .top-mode-btn.is-home{min-width:176px;background:linear-gradient(135deg,rgba(37,99,235,.08),rgba(14,165,233,.04));border-color:#c6d8ff;box-shadow:0 12px 28px #2563eb17}body[data-shell-variant=tap_player] .top-mode-btn.is-home:before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:4px;border-radius:999px;background:linear-gradient(180deg,#2563eb 0%,#0ea5e9 100%)}body[data-shell-variant=tap_player] .top-mode-btn.is-home .top-mode-btn-note{color:#1d4ed8}body[data-shell-variant=tap_player] .top-mode-btn[data-player-v2-mode-tone=primary] .top-mode-btn-badge{background:linear-gradient(135deg,rgba(37,99,235,.12),rgba(14,165,233,.08));border-color:#bfdbfe;color:#1d4ed8}body[data-shell-variant=tap_player] .top-mode-btn[data-player-v2-mode-tone=success] .top-mode-btn-note{color:#0f766e}body[data-shell-variant=tap_player] .top-mode-btn[data-player-v2-mode-tone=success] .top-mode-btn-badge{background:linear-gradient(135deg,rgba(16,185,129,.16),rgba(34,197,94,.1));border-color:#34d39957;color:#047857}body[data-shell-variant=tap_player] .top-mode-btn[data-player-v2-mode-tone=warning] .top-mode-btn-note{color:#b45309}body[data-shell-variant=tap_player] .top-mode-btn[data-player-v2-mode-tone=warning] .top-mode-btn-badge{background:linear-gradient(135deg,rgba(249,115,22,.14),rgba(245,158,11,.1));border-color:#fbbf2457;color:#b45309}body[data-shell-variant=tap_player] .top-mode-btn.active .top-mode-btn-note{color:inherit}.summary-strip-wrap{padding:0 0 10px;background:transparent}.summary-strip{min-height:48px;padding:8px 12px;border:1px solid var(--line);border-radius:18px;background:#fff;display:grid;grid-template-columns:minmax(0,1.2fr) auto repeat(4,minmax(64px,auto));gap:8px;align-items:center;box-shadow:0 10px 24px #0f172a0d}.summary-main{display:grid;gap:2px;min-width:0}.summary-main small{font-size:10px;color:var(--muted);font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.summary-pill{min-height:24px;padding:0 8px;border-radius:999px;background:var(--green-soft);color:var(--green);border:1px solid #d1ebdd;display:inline-flex;align-items:center;font-size:10px;font-weight:800}.summary-stat{min-width:64px;padding:6px 8px;border-radius:14px;background:var(--surface-soft);border:1px solid var(--line);display:grid;gap:2px}.summary-stat strong{font-size:16px;font-weight:800;line-height:1}.summary-stat span{font-size:10px;color:var(--muted);font-weight:700}.mode-nav{display:none!important}:root{--tap-player-dock-rail-w: 52px;--tap-player-dock-pane-w: clamp(312px, 20vw, 328px)}.tap-dock{--tap-dock-rail-w: var(--tap-player-dock-rail-w);--tap-dock-pane-w: var(--tap-player-dock-pane-w);--tap-dock-head-h: 52px;--tap-dock-row-h: 56px;--tap-dock-gap: 16px;--tap-dock-mobile-nav-h: 60px;--tap-dock-z: 35;--tap-dock-duration: var(--tap-player-shell-motion, .22s);--tap-dock-ease: cubic-bezier(.2, .8, .2, 1);--tap-dock-surface: var(--ul2-surface-strong, #fff);--tap-dock-surface-soft: var(--ul2-surface-soft, #f8fbff);--tap-dock-surface-muted: var(--ul2-surface-muted, #f1f5fa);--tap-dock-text: var(--ul2-text, #1f2937);--tap-dock-text-muted: var(--ul2-text-muted, #66758b);--tap-dock-border: var(--ul2-border, #dbe4ef);--tap-dock-border-strong: var(--ul2-border-strong, #c9d6e4);--tap-dock-accent: var(--ul2-accent, #2563eb);--tap-dock-accent-soft: var(--ul2-accent-soft, #e8f0ff);--tap-dock-success: var(--ul2-success, #1f8f5f);--tap-dock-success-soft: var(--ul2-success-soft, #eaf7ef);--tap-dock-warning: var(--ul2-warning, #b7791f);--tap-dock-warning-soft: var(--ul2-warning-soft, #fff6e5);--tap-dock-danger: #b42318;--tap-dock-danger-soft: #fff1f0;--tap-dock-submitted: #6d4aff;--tap-dock-submitted-soft: #f2efff;--tap-dock-neutral: #66758b;--tap-dock-neutral-soft: #eef2f7;--tap-dock-focus-ring: rgba(37, 99, 235, .34);--tap-dock-scrim: rgba(15, 23, 42, .28);--tap-dock-shadow: -1px 0 0 var(--tap-dock-border);--tap-dock-rail-surface: #f5f8fc;--tap-dock-icon: #53657d;--tap-dock-icon-soft: #edf2f8;--tap-dock-icon-border: #d8e2ee;--tap-dock-icon-active-surface: #2563eb;--tap-dock-icon-active: #fff;--tap-dock-icon-shadow: 0 5px 13px rgba(37, 99, 235, .22);position:fixed;inset-block:var(--header-h, var(--ul2-header-h, 64px)) 0;inset-inline-end:0;z-index:var(--tap-dock-z);width:calc(var(--tap-dock-pane-w) + var(--tap-dock-rail-w));min-width:0;display:grid;grid-template-columns:minmax(0,var(--tap-dock-pane-w)) var(--tap-dock-rail-w);grid-template-areas:"pane rail";color:var(--tap-dock-text);pointer-events:none;isolation:isolate}.tap-dock[data-player-v2-theme-menu-open=true]{z-index:45}html.dark .tap-dock,body.theme-dark .tap-dock{--tap-dock-surface: #162235;--tap-dock-surface-soft: #1b2a40;--tap-dock-surface-muted: #203149;--tap-dock-text: #e8eef7;--tap-dock-text-muted: #aebbd0;--tap-dock-border: rgba(166, 184, 207, .2);--tap-dock-border-strong: rgba(184, 201, 222, .3);--tap-dock-accent: #8bb9ff;--tap-dock-accent-soft: rgba(76, 137, 238, .2);--tap-dock-success: var(--ul2-success, #81c995);--tap-dock-success-soft: var(--ul2-success-soft, rgba(129, 201, 149, .16));--tap-dock-warning: var(--ul2-warning, #f9ab00);--tap-dock-warning-soft: var(--ul2-warning-soft, rgba(249, 171, 0, .18));--tap-dock-danger: #f28b82;--tap-dock-danger-soft: rgba(242, 139, 130, .16);--tap-dock-submitted: #c4b5fd;--tap-dock-submitted-soft: rgba(167, 139, 250, .17);--tap-dock-neutral: #a7b4c6;--tap-dock-neutral-soft: rgba(148, 163, 184, .13);--tap-dock-focus-ring: rgba(139, 185, 255, .46);--tap-dock-scrim: rgba(2, 6, 23, .58);--tap-dock-shadow: -1px 0 0 var(--tap-dock-border);--tap-dock-rail-surface: #101a29;--tap-dock-icon: #c3cede;--tap-dock-icon-soft: rgba(148, 163, 184, .12);--tap-dock-icon-border: rgba(184, 201, 222, .16);--tap-dock-icon-active-surface: #8bb9ff;--tap-dock-icon-active: #08162a;--tap-dock-icon-shadow: 0 6px 15px rgba(4, 12, 24, .38)}.tap-dock__backdrop{position:fixed;inset:var(--header-h, var(--ul2-header-h, 64px)) 0 0;z-index:0;margin:0;padding:0;border:0;background:var(--tap-dock-scrim);opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--tap-dock-duration) ease,visibility 0s linear var(--tap-dock-duration)}.tap-dock__rail{grid-area:rail;position:relative;z-index:2;width:var(--tap-dock-rail-w);min-width:0;height:100%;padding:8px 6px;border-inline-start:1px solid var(--tap-dock-border);background:var(--tap-dock-surface);display:flex;flex-direction:column;align-items:center;gap:6px;pointer-events:auto;box-shadow:-6px 0 18px #0f172a0a}html.dark .tap-dock__rail{box-shadow:-8px 0 22px #0000002e}.tap-dock__rail-group{width:100%;display:grid;justify-items:center;gap:6px}.tap-dock__rail-group--secondary{margin-block-start:auto;padding-block-start:10px;border-block-start:1px solid var(--tap-dock-border)}.tap-dock__rail-group--quick{padding-block-start:6px;border-block-start:1px solid color-mix(in srgb,var(--tap-dock-border) 72%,transparent)}.tap-dock__rail-utilities{width:100%;display:grid;justify-items:center;gap:6px}.tap-dock__rail-utility{position:relative;width:44px;min-width:44px}.tap-dock .tap-dock__rail-utility-button{width:44px!important;min-width:44px!important;height:44px!important;min-height:44px!important;padding:0!important;border-color:var(--tap-dock-icon-border)!important;border-radius:14px!important;background:var(--tap-dock-icon-soft)!important;color:var(--tap-dock-icon)!important;box-shadow:none!important;gap:0!important}.tap-dock .tap-dock__rail-utility-button:hover,.tap-dock .tap-dock__rail-utility-button[aria-expanded=true]{border-color:var(--tap-dock-border)!important;background:var(--tap-dock-surface-soft)!important;color:var(--tap-dock-text)!important}.tap-dock__rail-utility-button .utility-theme-toggle-label,.tap-dock__rail-utility-button .utility-theme-toggle-caret,.tap-dock__rail-utility-button>.utility-language-toggle-label{display:none!important}.tap-dock__rail-utility-button :where(.utility-theme-toggle-main,.tap-ui-icon,svg){flex:0 0 auto}.tap-dock__rail-utility-button>.tap-ui-icon,.tap-dock__rail-utility-button .utility-theme-toggle-main>.tap-ui-icon{width:20px;height:20px}.tap-dock__rail-locale{position:absolute;inset-inline-end:1px;inset-block-end:1px;min-width:17px;height:17px;padding-inline:3px;border:2px solid var(--tap-dock-surface);border-radius:999px;background:var(--tap-dock-accent-soft);color:var(--tap-dock-accent);display:inline-flex;align-items:center;justify-content:center;font-size:8px;font-weight:800;line-height:1}.tap-dock__rail .utility-theme-menu{position:absolute!important;inset:auto calc(100% + 10px) 0 auto!important;z-index:8;width:184px;min-width:184px;padding:6px;border:1px solid var(--tap-dock-border);border-radius:14px;background:var(--tap-dock-surface);color:var(--tap-dock-text);box-shadow:0 16px 36px #0f172a29}.tap-dock__rail .utility-theme-option{min-height:38px;border-color:transparent;background:transparent;color:var(--tap-dock-text)}.tap-dock__rail .utility-theme-option:hover,.tap-dock__rail .utility-theme-option[aria-checked=true]{background:var(--tap-dock-surface-soft)}.tap-dock__rail-button{position:relative;width:44px;min-width:44px;height:44px;min-height:44px;margin:0;padding:0;border:1px solid transparent;border-radius:14px;background:transparent;color:var(--tap-dock-icon);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color var(--tap-dock-duration) ease,border-color var(--tap-dock-duration) ease,color var(--tap-dock-duration) ease,transform var(--tap-dock-duration) var(--tap-dock-ease)}.tap-dock__rail-button:before{content:"";position:absolute;inset-block:9px;inset-inline-start:-7px;width:3px;border-radius:999px;background:transparent;transition:background-color var(--tap-dock-duration) ease}.tap-dock__rail-button:hover{border-color:var(--tap-dock-border);background:var(--tap-dock-surface-soft);color:var(--tap-dock-text);transform:translateY(-1px)}.tap-dock__rail-button:focus-visible,.tap-dock__icon-button:focus-visible,.tap-dock__filter-button:focus-visible,.tap-dock__module-trigger:focus-visible,.tap-dock__item:focus-visible,.tap-dock__person:focus-visible{outline:3px solid var(--tap-dock-focus-ring);outline-offset:2px}.tap-dock__rail-button[aria-selected=true],.tap-dock__rail-button[aria-pressed=true],.tap-dock__rail-button.is-active{border-color:color-mix(in srgb,var(--tap-dock-accent) 24%,transparent);background:color-mix(in srgb,var(--tap-dock-accent-soft) 74%,transparent);color:var(--tap-dock-accent)}.tap-dock__rail-button[aria-selected=true]:before,.tap-dock__rail-button[aria-pressed=true]:before,.tap-dock__rail-button.is-active:before{background:var(--tap-dock-accent)}.tap-dock__rail-icon{width:30px;height:30px;border:1px solid var(--tap-dock-icon-border);border-radius:10px;background:var(--tap-dock-icon-soft);color:var(--tap-dock-icon);display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;transition:border-color var(--tap-dock-duration) ease,background-color var(--tap-dock-duration) ease,color var(--tap-dock-duration) ease,box-shadow var(--tap-dock-duration) ease,transform var(--tap-dock-duration) var(--tap-dock-ease)}.tap-dock__rail-icon :where(svg,.tap-ui-icon){display:block;width:19px;height:19px}.tap-dock__rail-button:hover .tap-dock__rail-icon{border-color:color-mix(in srgb,var(--tap-dock-accent) 28%,var(--tap-dock-icon-border));background:var(--tap-dock-surface-muted);color:var(--tap-dock-text);transform:scale(1.03)}.tap-dock__rail-button[aria-selected=true] .tap-dock__rail-icon,.tap-dock__rail-button[aria-pressed=true] .tap-dock__rail-icon,.tap-dock__rail-button.is-active .tap-dock__rail-icon{border-color:var(--tap-dock-icon-active-surface);background:var(--tap-dock-icon-active-surface);color:var(--tap-dock-icon-active);box-shadow:var(--tap-dock-icon-shadow)}:is(.tap-dock__rail-group--quick,.tap-dock__rail-group--secondary) .tap-dock__rail-icon{width:21px;height:21px;border:0;border-radius:0;background:transparent;color:currentColor;box-shadow:none}:is(.tap-dock__rail-group--quick,.tap-dock__rail-group--secondary) .tap-dock__rail-icon :where(svg,.tap-ui-icon){width:20px;height:20px}.tap-dock .topbar-today--dock{width:44px;min-width:44px}.tap-dock .topbar-today--dock[data-player-v2-today-bell-active="1"] .topbar-today-btn{border-color:color-mix(in srgb,var(--tap-dock-accent) 36%,var(--tap-dock-border))!important;background:var(--tap-dock-accent-soft)!important;color:var(--tap-dock-accent)!important}.tap-dock .topbar-today--dock .topbar-today-popover{inset-block-start:0;inset-inline-end:calc(100% + 10px);min-width:240px}.tap-dock .topbar-today--dock .topbar-today-popover:before{inset-block-start:16px;inset-inline-end:-6px;transform:rotate(135deg)}.tap-dock__rail-label{position:absolute;inset-inline-end:calc(100% + 8px);top:50%;z-index:5;max-width:180px;padding:7px 9px;border:1px solid var(--tap-dock-border);border-radius:10px;background:var(--tap-dock-surface);color:var(--tap-dock-text);box-shadow:0 10px 24px #0f172a1f;font-size:11px;font-weight:700;line-height:1.25;white-space:nowrap;opacity:0;visibility:hidden;transform:translate(4px,-50%);pointer-events:none;transition:opacity .12s ease,transform .12s var(--tap-dock-ease),visibility 0s linear .12s}.tap-dock__rail-button:hover .tap-dock__rail-label,.tap-dock__rail-button:focus-visible .tap-dock__rail-label{opacity:1;visibility:visible;transform:translateY(-50%);transition-delay:0s}.tap-dock__rail-badge{position:absolute;inset-block-start:-3px;inset-inline-end:-3px;min-width:18px;height:18px;padding-inline:5px;border:2px solid var(--tap-dock-surface);border-radius:999px;background:var(--tap-dock-danger);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:9px;font-weight:800;line-height:1;font-variant-numeric:tabular-nums}html.dark .tap-dock__rail-badge{color:#101418}.tap-dock__pane{grid-area:pane;position:relative;z-index:1;width:var(--tap-dock-pane-w);min-width:0;height:100%;min-height:0;border-inline-start:1px solid var(--tap-dock-border);background:var(--tap-dock-surface);display:grid;grid-template-rows:var(--tap-dock-head-h) minmax(0,1fr);overflow:hidden;opacity:0;visibility:hidden;transform:translate(12px);pointer-events:none;box-shadow:var(--tap-dock-shadow);container-name:tap-dock-pane;container-type:inline-size;transition:opacity var(--tap-dock-duration) ease,transform var(--tap-dock-duration) var(--tap-dock-ease),visibility 0s linear var(--tap-dock-duration)}.tap-dock[data-dock-state=expanded] .tap-dock__pane,.tap-dock.is-expanded .tap-dock__pane{opacity:1;visibility:visible;transform:translate(0);pointer-events:auto;transition-delay:0s}.tap-dock__header{position:relative;z-index:4;min-width:0;min-height:var(--tap-dock-head-h);padding-inline:14px 10px;border-block-end:1px solid var(--tap-dock-border);background:var(--tap-dock-surface);display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px}.tap-dock__heading{min-width:0;display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:2px}.tap-dock__mobile-nav,.tap-dock__mobile-more-backdrop,.tap-dock__mobile-more-sheet{display:none}.tap-dock__title{min-width:0;margin:0;overflow:hidden;color:var(--tap-dock-text);font-size:14px;font-weight:800;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.tap-dock__course-title{min-width:0;margin:0;overflow:hidden;color:var(--tap-dock-text-muted);font-size:11px;font-weight:600;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.tap-dock:not([data-dock-mode="assignment"][data-dock-tool="context"]) .tap-dock__course-title{display:none}.tap-dock__count{flex:0 0 auto;color:var(--tap-dock-text-muted);font-size:11px;font-weight:700;line-height:1;font-variant-numeric:tabular-nums}.tap-dock__header-actions{display:flex;align-items:center;gap:4px}.tap-dock__icon-button,.tap-dock__filter-button{min-width:36px;min-height:36px;margin:0;padding:0 9px;border:1px solid transparent;border-radius:11px;background:transparent;color:var(--tap-dock-text-muted);display:inline-flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;font-size:11px;font-weight:700;transition:background-color var(--tap-dock-duration) ease,border-color var(--tap-dock-duration) ease,color var(--tap-dock-duration) ease}.tap-dock__icon-button:hover,.tap-dock__filter-button:hover,.tap-dock__filter-button[aria-expanded=true]{border-color:var(--tap-dock-border);background:var(--tap-dock-surface-soft);color:var(--tap-dock-text)}.tap-dock__icon-button :where(svg,.tap-ui-icon),.tap-dock__filter-button :where(svg,.tap-ui-icon){width:17px;height:17px}.tap-dock__filter-popover{position:absolute;inset-block-start:calc(100% + 8px);inset-inline-end:10px;z-index:8;width:min(260px,calc(100cqw - 20px));max-height:min(420px,calc(100dvh - 150px));padding:8px;border:1px solid var(--tap-dock-border-strong);border-radius:14px;background:var(--tap-dock-surface);box-shadow:0 16px 34px #0f172a29;display:grid;gap:4px;overflow-y:auto;opacity:0;visibility:hidden;transform:translateY(-6px);pointer-events:none;transition:opacity .14s ease,transform .14s var(--tap-dock-ease),visibility 0s linear .14s}.tap-dock__filter-popover[data-open=true],.tap-dock__filter-popover.is-open{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto;transition-delay:0s}.tap-dock__filter-option{width:100%;min-height:38px;padding:7px 9px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--tap-dock-text);display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;text-align:start;cursor:pointer;font-size:12px;font-weight:700}.tap-dock__filter-option:hover{background:var(--tap-dock-surface-soft)}.tap-dock__filter-option[aria-checked=true],.tap-dock__filter-option.is-active{border-color:color-mix(in srgb,var(--tap-dock-accent) 24%,transparent);background:var(--tap-dock-accent-soft);color:var(--tap-dock-accent)}.tap-dock__filter-option-count{min-width:24px;color:currentColor;text-align:end;font-size:10px;font-variant-numeric:tabular-nums}.tap-dock__view-stack{position:relative;min-width:0;min-height:0;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);overflow:hidden}.tap-dock__view{grid-area:1 / 1;width:100%;min-width:0;min-height:0;padding:0;display:block;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:var(--tap-dock-border-strong) transparent;opacity:0;visibility:hidden;transform:translate(8px);pointer-events:none;transition:opacity var(--tap-dock-duration) ease,transform var(--tap-dock-duration) var(--tap-dock-ease),visibility 0s linear var(--tap-dock-duration)}.tap-dock__view::-webkit-scrollbar{width:8px}.tap-dock__view::-webkit-scrollbar-track{background:transparent}.tap-dock__view::-webkit-scrollbar-thumb{border:2px solid var(--tap-dock-surface);border-radius:999px;background:var(--tap-dock-border-strong)}.tap-dock[data-dock-direction=back] .tap-dock__view{transform:translate(-8px)}.tap-dock__view[aria-hidden=false],.tap-dock__view.is-active{z-index:2;opacity:1;visibility:visible;transform:translate(0);pointer-events:auto;transition-delay:0s}.tap-dock__view-inner{min-width:0;padding-block-end:max(16px,env(safe-area-inset-bottom,0px))}.tap-dock[data-dock-mode=assignment] .assignment-view-toggle,.tap-dock[data-dock-mode=live] .live-view-toggle{position:absolute;inset-block-start:calc(100% + 12px);inset-inline-start:0;z-index:8;border-color:color-mix(in srgb,var(--tap-dock-accent) 28%,var(--tap-dock-border));border-inline-start:0;border-radius:0 14px 14px 0;background:color-mix(in srgb,var(--tap-dock-surface) 92%,var(--tap-dock-accent-soft));color:var(--tap-dock-accent);box-shadow:5px 0 16px #0f172a1f}.tap-dock[data-dock-mode=assignment] .assignment-view-toggle[hidden],.tap-dock[data-dock-mode=assignment] .assignment-view-toggle__icon[hidden],.tap-dock[data-dock-mode=assignment] .assignment-view-toggle__count[hidden],.tap-dock[data-dock-mode=live] .live-view-toggle[hidden],.tap-dock[data-dock-mode=live] .live-view-toggle__icon[hidden],.tap-dock[data-dock-mode=live] .live-view-toggle__count[hidden]{display:none}.tap-dock[data-dock-mode=assignment] .assignment-view-toggle:before,.tap-dock[data-dock-mode=live] .live-view-toggle:before{display:none}.tap-dock[data-dock-mode=assignment] .assignment-view-toggle:hover,.tap-dock[data-dock-mode=assignment] .assignment-view-toggle:focus-visible,.tap-dock[data-dock-mode=live] .live-view-toggle:hover,.tap-dock[data-dock-mode=live] .live-view-toggle:focus-visible{border-color:color-mix(in srgb,var(--tap-dock-accent) 46%,var(--tap-dock-border));background:var(--tap-dock-accent-soft);box-shadow:7px 0 20px #2563eb2e;transform:translate(0)}.tap-dock[data-dock-mode=assignment] .assignment-view-toggle:focus-visible,.tap-dock[data-dock-mode=live] .live-view-toggle:focus-visible{outline:3px solid var(--tap-dock-focus-ring);outline-offset:2px}.tap-dock[data-dock-mode=assignment] .assignment-view-toggle__label,.tap-dock[data-dock-mode=live] .live-view-toggle__label{inset-inline-start:calc(100% + 7px);inset-inline-end:auto;transform:translate(-4px,-50%)}.tap-dock[data-dock-mode=assignment] .assignment-view-toggle__count,.tap-dock[data-dock-mode=live] .live-view-toggle__count{background:var(--tap-dock-accent);color:#fff}.tap-dock[data-dock-mode=assignment] .assignment-roster-dock .assignment-context-roster-shell{gap:8px;padding:10px}.tap-dock[data-dock-mode=assignment] .assignment-roster-dock .assignment-context-task{min-height:72px;padding:10px 11px 10px 52px;border-color:color-mix(in srgb,var(--tap-dock-accent) 18%,var(--tap-dock-border));border-radius:14px;background:linear-gradient(135deg,color-mix(in srgb,var(--tap-dock-accent-soft) 62%,transparent),transparent 72%),var(--tap-dock-surface-soft);grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto auto;align-items:center;gap:2px 8px;box-shadow:0 8px 22px #0f172a0f}.tap-dock[data-dock-mode=assignment] .assignment-roster-dock .assignment-context-task-label{grid-column:1;grid-row:1;color:var(--tap-dock-accent);font-size:9px;font-weight:850;letter-spacing:.07em}.tap-dock[data-dock-mode=assignment] .assignment-roster-dock .assignment-context-task-title{grid-column:1;grid-row:2;font-size:13px;font-weight:850;line-height:1.3}.tap-dock[data-dock-mode=assignment] .assignment-roster-dock .assignment-context-task-meta{grid-column:1;grid-row:3;min-width:0;display:flex;align-items:center;gap:6px;overflow:hidden;color:var(--tap-dock-text-muted);font-size:9.5px;font-weight:700;line-height:1.25}.tap-dock[data-dock-mode=assignment] .assignment-roster-dock .assignment-context-task-status{flex:0 0 auto;color:var(--tap-dock-warning)}.tap-dock[data-dock-mode=assignment] .assignment-roster-dock .assignment-context-task-status:is(.is-overdue,.is-rework){color:var(--tap-dock-danger)}.tap-dock[data-dock-mode=assignment] .assignment-roster-dock .assignment-context-task-status:is(.is-submitted,.is-graded,.is-completed){color:var(--tap-dock-success)}.tap-dock[data-dock-mode=assignment] .assignment-roster-dock .assignment-context-task-due{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tap-dock[data-dock-mode=assignment] .assignment-roster-dock .assignment-context-task-due:before{content:"\b7";margin-inline-end:6px;color:var(--tap-dock-border-strong)}.tap-dock[data-dock-mode=assignment] .assignment-roster-dock .assignment-context-task-link{grid-column:2;grid-row:1 / -1;align-self:center}.tap-dock[data-dock-mode=assignment] .assignment-roster-dock .assignment-context-roster-meta{min-height:30px;padding:6px 9px;border:1px solid var(--tap-dock-border);border-radius:10px;background:color-mix(in srgb,var(--tap-dock-surface-soft) 78%,transparent);color:var(--tap-dock-text-muted);display:flex;align-items:center;font-size:10px;font-weight:750}.tap-dock[data-dock-mode=assignment] .assignment-roster-dock .assignment-context-roster-list.assignment-roster-list{gap:5px}.tap-dock[data-dock-mode=assignment] .assignment-roster-dock .assignment-roster-item{min-height:43px;padding:7px 8px;border-color:var(--tap-dock-border);border-radius:11px;background:var(--tap-dock-surface);box-shadow:none;transition:background-color .14s ease,border-color .14s ease,box-shadow .16s ease,transform .16s var(--tap-dock-ease)}.tap-dock[data-dock-mode=assignment] .assignment-roster-dock .assignment-roster-item[data-view-url]:hover,.tap-dock[data-dock-mode=assignment] .assignment-roster-dock .assignment-roster-item[data-view-url]:focus-visible{border-color:color-mix(in srgb,var(--tap-dock-accent) 34%,var(--tap-dock-border));background:var(--tap-dock-accent-soft);box-shadow:0 8px 18px #0f172a14;transform:translateY(-1px)}.tap-dock[data-dock-mode=assignment] .assignment-roster-dock .assignment-roster-headline,.tap-dock[data-dock-mode=assignment] .assignment-roster-dock .ul-assignment-roster-headline{grid-template-columns:minmax(0,1fr) auto;gap:8px}.tap-dock[data-dock-mode=assignment] .assignment-roster-dock .ul-assignment-roster-user{color:var(--tap-dock-text);font-size:11px;font-weight:720}.tap-dock[data-dock-mode=assignment] .assignment-roster-dock .assignment-roster-code{color:var(--tap-dock-text-muted)}.tap-dock[data-dock-mode=assignment] .assignment-roster-dock .ul-assignment-roster-badge{width:auto;min-width:24px;max-width:98px;height:24px;min-height:24px;padding-inline:6px;border-radius:8px;gap:4px;overflow:hidden}.tap-dock[data-dock-mode=assignment] .assignment-roster-dock .assignment-roster-badge-label{min-width:0;overflow:hidden;font-size:8.5px;font-weight:850;line-height:1;text-overflow:ellipsis;white-space:nowrap}.tap-dock__community-intro{min-height:0;margin:14px;padding:16px;border:1px solid var(--tap-dock-border);border-radius:18px;background:var(--tap-dock-surface-soft);display:grid;grid-template-columns:40px minmax(0,1fr);align-content:start;align-items:center;justify-items:start;gap:4px 12px;color:var(--tap-dock-text-muted);text-align:start}.tap-dock__community-intro>.tap-ui-icon{grid-row:1 / span 2;width:40px;height:40px;padding:9px;border-radius:13px;background:var(--tap-dock-accent-soft);color:var(--tap-dock-accent)}.tap-dock__community-intro strong{color:var(--tap-dock-text);font-size:16px}.tap-dock__community-intro p{max-width:none;margin:0;font-size:12px;line-height:1.55}.tap-dock__community-intro .tap-dock__primary-action{grid-column:1 / -1;width:100%;margin-block-start:10px}.tap-dock__bee{min-height:100%;padding:14px;display:flex;flex-direction:column;gap:12px;color:var(--tap-dock-text)}.tap-dock__bee-identity{display:flex;align-items:center;gap:11px}.tap-dock__bee-avatar{width:48px;height:48px;flex:0 0 48px;overflow:hidden;border:1px solid color-mix(in srgb,var(--tap-dock-accent) 38%,transparent);border-radius:16px;background:color-mix(in srgb,var(--tap-dock-accent-soft) 72%,white)}.tap-dock__bee-avatar img{width:100%;height:100%;display:block;-o-object-fit:contain;object-fit:contain}.tap-dock__bee-identity>span:last-child{min-width:0;display:grid;gap:2px}.tap-dock__bee-identity small{color:var(--tap-dock-accent);font-size:9px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.tap-dock__bee-identity strong{font-size:16px;line-height:1.2}.tap-dock__bee-conversation{min-height:160px;max-height:min(48vh,430px);padding:2px 3px 8px;overflow-y:auto;display:flex;flex:1 1 auto;flex-direction:column;gap:10px;scrollbar-width:thin}.tap-dock__bee-bubble{max-width:92%;padding:11px 12px;border:1px solid var(--tap-dock-border);border-radius:15px 15px 15px 5px;align-self:flex-start;background:var(--tap-dock-surface-soft)}.tap-dock__bee-bubble--user{border-color:color-mix(in srgb,var(--tap-dock-accent) 32%,transparent);border-radius:15px 15px 5px;align-self:flex-end;background:color-mix(in srgb,var(--tap-dock-accent-soft) 72%,var(--tap-dock-surface))}.tap-dock__bee-bubble p{margin:0;font-size:13px;line-height:1.55;white-space:pre-wrap}.tap-dock__bee-context-label{margin-block-start:8px;padding-block-start:8px;border-block-start:1px solid var(--tap-dock-border);display:block;color:var(--tap-dock-accent);font-size:10px;font-weight:800}.tap-dock__bee-bubble .tap-dock__bee-limit{margin-block-start:10px;padding-block-start:10px;border-block-start:1px solid var(--tap-dock-border);color:var(--tap-dock-text-muted);font-size:11px}.tap-dock__bee-bubble[data-player-v2-tap-bee-pending="1"]{color:var(--tap-dock-text-muted);animation:tap-dock-bee-pulse 1.2s ease-in-out infinite}.tap-dock__bee-feedback{max-width:92%;padding-inline:3px;display:flex;flex-wrap:wrap;align-items:center;gap:6px;color:var(--tap-dock-text-muted);font-size:10px;line-height:1.35}.tap-dock__bee-feedback button{min-height:30px;padding:4px 9px;border:1px solid var(--tap-dock-border);border-radius:999px;background:var(--tap-dock-surface-soft);color:var(--tap-dock-text);cursor:pointer;font:inherit;font-weight:800}.tap-dock__bee-feedback button:disabled{cursor:not-allowed;opacity:.56}.tap-dock__bee-feedback-thanks{color:var(--tap-dock-success);font-weight:800}.tap-dock__bee-compose{margin-block-start:auto;display:grid;gap:9px}.tap-dock__bee-prompts{max-height:132px;display:grid;grid-template-columns:minmax(0,1fr);gap:6px;overflow-x:visible;overflow-y:auto;scrollbar-width:none}.tap-dock__bee-prompts::-webkit-scrollbar{display:none}.tap-dock__bee-prompts button{width:100%;min-height:36px;padding:6px 10px;border:1px solid color-mix(in srgb,var(--tap-dock-accent) 32%,var(--tap-dock-border));border-radius:11px;background:transparent;color:var(--tap-dock-accent);cursor:pointer;font:inherit;font-size:10px;font-weight:800;line-height:1.3;text-align:start;white-space:normal}.tap-dock__bee-label{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.tap-dock__bee-form{padding:5px;border:1px solid var(--tap-dock-border);border-radius:15px;display:grid;grid-template-columns:minmax(0,1fr) 40px;gap:6px;align-items:end;background:var(--tap-dock-surface-soft)}.tap-dock__bee-form:focus-within{border-color:color-mix(in srgb,var(--tap-dock-accent) 58%,transparent);box-shadow:0 0 0 3px var(--tap-dock-focus-ring)}.tap-dock__bee-form textarea{min-height:40px;max-height:110px;padding:8px 7px;border:0;resize:vertical;outline:0;background:transparent;color:var(--tap-dock-text);font:inherit;font-size:12px;line-height:1.45}.tap-dock__bee-form button{width:40px;height:40px;border:0;border-radius:12px;display:grid;place-items:center;background:var(--tap-dock-accent);color:#fff;cursor:pointer}.tap-dock__bee-form button:disabled,.tap-dock__bee-form textarea:disabled{cursor:not-allowed;opacity:.56}.tap-dock__bee-status{margin:0;color:var(--tap-dock-text-muted);font-size:10px;line-height:1.45}@keyframes tap-dock-bee-pulse{50%{opacity:.58}}.tap-bee-inline,.tap-bee-overlay{--tap-dock-surface: var(--ul2-surface-strong, #fff);--tap-dock-surface-soft: var(--ul2-surface-soft, #f8fbff);--tap-dock-surface-muted: var(--ul2-surface-muted, #f1f5fa);--tap-dock-text: var(--ul2-text, #1f2937);--tap-dock-text-muted: var(--ul2-text-muted, #66758b);--tap-dock-border: var(--ul2-border, #dbe4ef);--tap-dock-accent: var(--ul2-accent, #2563eb);--tap-dock-accent-soft: var(--ul2-accent-soft, #e8f0ff);--tap-dock-success: var(--ul2-success, #1f8f5f);--tap-dock-focus-ring: rgba(37, 99, 235, .34);--tap-bee-gold: #d98b12;--tap-bee-gold-soft: #fff7df}html.dark .tap-bee-inline,html.dark .tap-bee-overlay,body.theme-dark .tap-bee-inline,body.theme-dark .tap-bee-overlay{--tap-dock-surface: #162235;--tap-dock-surface-soft: #1b2a40;--tap-dock-surface-muted: #203149;--tap-dock-text: #e8eef7;--tap-dock-text-muted: #aebbd0;--tap-dock-border: rgba(166, 184, 207, .2);--tap-dock-accent: #8bb9ff;--tap-dock-accent-soft: rgba(76, 137, 238, .2);--tap-dock-success: #81c995;--tap-dock-focus-ring: rgba(139, 185, 255, .46);--tap-bee-gold: #f9b633;--tap-bee-gold-soft: rgba(249, 182, 51, .12)}.tap-bee-inline{width:100%;min-width:0;margin-block-end:14px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--tap-bee-gold) 42%,var(--tap-dock-border));border-radius:16px;display:grid;grid-template-columns:minmax(210px,.9fr) minmax(260px,1.4fr) auto;align-items:center;gap:10px;background:radial-gradient(circle at 92% 14%,color-mix(in srgb,var(--tap-bee-gold) 13%,transparent) 0 2px,transparent 2.5px) 0 0 / 18px 18px,linear-gradient(105deg,var(--tap-bee-gold-soft),color-mix(in srgb,var(--tap-dock-surface) 94%,var(--tap-dock-accent-soft)));color:var(--tap-dock-text)}.tap-bee-inline--compact{grid-template-columns:minmax(0,1fr) auto;padding-block:8px}.tap-bee-inline--compact .tap-bee-inline__prompts{display:none}.tap-bee-inline button{font:inherit}.tap-bee-inline__identity{min-width:0;padding:0;border:0;display:flex;align-items:center;gap:10px;background:transparent;color:inherit;text-align:start;cursor:pointer}.tap-bee-inline__avatar,.tap-bee-overlay__avatar{width:44px;height:44px;flex:0 0 44px;overflow:hidden;border:1px solid color-mix(in srgb,var(--tap-bee-gold) 48%,transparent);border-radius:14px;background:color-mix(in srgb,var(--tap-bee-gold-soft) 82%,white);box-shadow:0 6px 16px color-mix(in srgb,var(--tap-bee-gold) 15%,transparent)}.tap-bee-inline__avatar img,.tap-bee-overlay__avatar img{width:100%;height:100%;display:block;-o-object-fit:contain;object-fit:contain}.tap-bee-inline__copy{min-width:0;display:grid;gap:2px}.tap-bee-inline__copy strong{color:var(--tap-dock-text);font-size:13px;line-height:1.25}.tap-bee-inline__copy small{overflow:hidden;color:var(--tap-dock-text-muted);font-size:10px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.tap-bee-inline__prompts{min-width:0;display:flex;flex-wrap:wrap;align-items:center;gap:6px}.tap-bee-inline__prompts button,.tap-bee-inline__ask{min-height:36px;padding:7px 11px;border:1px solid color-mix(in srgb,var(--tap-bee-gold) 38%,var(--tap-dock-border));border-radius:999px;background:color-mix(in srgb,var(--tap-dock-surface) 86%,transparent);color:var(--tap-dock-text);cursor:pointer;font-size:10px;font-weight:800;line-height:1.25;text-align:start}.tap-bee-inline__prompts button:hover{border-color:var(--tap-bee-gold);background:var(--tap-bee-gold-soft)}.tap-bee-inline__ask{min-width:-moz-max-content;min-width:max-content;border-color:var(--tap-bee-gold);display:inline-flex;align-items:center;justify-content:center;gap:5px;background:var(--tap-bee-gold);color:#161b26}.tap-bee-inline__ask .tap-ui-icon{width:15px;height:15px}.tap-bee-inline button:focus-visible,.tap-bee-context-trigger:focus-visible,.tap-bee-overlay button:focus-visible,.tap-bee-overlay textarea:focus-visible{outline:3px solid var(--tap-dock-focus-ring);outline-offset:2px}.tap-bee-context-trigger{width:-moz-max-content;width:max-content;max-width:100%;min-height:38px;margin:10px 0 4px auto;padding:5px 12px 5px 6px;border:1px solid color-mix(in srgb,var(--tap-bee-gold, #d98b12) 46%,var(--tap-dock-border, #dbe4ef));border-radius:999px;display:flex;align-items:center;gap:7px;background:color-mix(in srgb,var(--tap-bee-gold-soft, #fff7df) 82%,var(--tap-dock-surface, #fff));color:var(--tap-dock-text, #1f2937);box-shadow:0 7px 18px color-mix(in srgb,var(--tap-bee-gold, #d98b12) 12%,transparent);cursor:pointer;font:inherit;font-size:11px;font-weight:850;line-height:1.2}.tap-bee-context-trigger:hover{border-color:var(--tap-bee-gold, #d98b12);transform:translateY(-1px)}.tap-bee-context-trigger__avatar{width:28px;height:28px;flex:0 0 28px;overflow:hidden;border-radius:50%;display:grid;place-items:center;background:var(--tap-dock-surface, #fff);color:var(--tap-bee-gold, #d98b12)}.tap-bee-context-trigger__avatar img{width:100%;height:100%;display:block;-o-object-fit:contain;object-fit:contain}.td-q-title>.tap-bee-context-trigger{align-self:center;margin:0}.vocab-tap-bee-anchor .tap-bee-context-trigger{margin:0 0 0 auto}[data-assignment-type=shadowing] .tap-bee-context-trigger{margin-block-start:8px}@media (max-width: 720px){.tap-bee-context-trigger{min-height:42px;margin-inline-start:0;font-size:12px}.td-q-title>.tap-bee-context-trigger{grid-column:2;width:42px;min-height:42px;margin:0;padding:6px}.td-q-title>.tap-bee-context-trigger>span:last-child{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}}.tap-bee-overlay[hidden]{display:none!important}.tap-bee-overlay{position:fixed;inset:0;z-index:72;padding:max(20px,calc(var(--header-h, 64px) + 14px)) 20px 20px;display:grid;place-items:center;color:var(--tap-dock-text);isolation:isolate}.tap-bee-overlay__backdrop{position:absolute;inset:0;z-index:0;margin:0;padding:0;border:0;background:rgba(6,14,28,.56);opacity:0;cursor:default;transition:opacity .18s ease;backdrop-filter:blur(2px)}.tap-bee-overlay__dialog{position:relative;z-index:1;width:min(460px,calc(100vw - 40px));max-height:min(720px,calc(100dvh - var(--header-h, 64px) - 34px));overflow:hidden;border:1px solid color-mix(in srgb,var(--tap-bee-gold) 42%,var(--tap-dock-border));border-radius:22px;display:grid;grid-template-rows:auto minmax(0,1fr);background:var(--tap-dock-surface);box-shadow:0 28px 74px #040c1c61;opacity:0;transform:translateY(14px) scale(.985);transition:opacity .18s ease,transform .18s cubic-bezier(.2,.8,.2,1)}.tap-bee-overlay.is-open .tap-bee-overlay__backdrop,.tap-bee-overlay.is-open .tap-bee-overlay__dialog{opacity:1}.tap-bee-overlay.is-open .tap-bee-overlay__dialog{transform:translateY(0) scale(1)}.tap-bee-overlay__head{min-height:66px;padding:10px 12px;border-block-end:1px solid var(--tap-dock-border);display:grid;grid-template-columns:42px minmax(0,1fr) 40px;align-items:center;gap:10px;background:linear-gradient(110deg,var(--tap-bee-gold-soft),var(--tap-dock-surface))}.tap-bee-overlay__head>span:nth-child(2){min-width:0;display:grid;gap:2px}.tap-bee-overlay__head small{color:var(--tap-bee-gold);font-size:9px;font-weight:900;letter-spacing:.1em}.tap-bee-overlay__head strong{font-size:17px;line-height:1.2}.tap-bee-overlay__close{width:40px;height:40px;padding:9px;border:0;border-radius:12px;display:grid;place-items:center;background:var(--tap-dock-surface-muted);color:var(--tap-dock-text-muted);cursor:pointer}.tap-bee-overlay__body{min-height:0;overflow:hidden}.tap-bee-overlay .tap-dock__bee{min-height:0;height:100%;max-height:calc(100dvh - var(--header-h, 64px) - 102px)}.tap-bee-overlay .tap-dock__bee-conversation{min-height:180px;max-height:none}@media (max-width: 980px){.tap-bee-inline{grid-template-columns:minmax(0,1fr) auto}.tap-bee-inline__prompts{grid-column:1 / -1;grid-row:2}}@media (max-width: 720px){.tap-bee-inline{padding:9px;grid-template-columns:minmax(0,1fr)}.tap-bee-inline__copy small{white-space:normal}.tap-bee-inline__prompts{flex-wrap:wrap;overflow:visible}.tap-bee-inline__prompts button,.tap-bee-inline__ask{min-height:44px}.tap-bee-inline__prompts button{flex:1 1 132px;max-width:none}.tap-bee-inline__ask{display:none}.tap-bee-overlay{padding:56px 0 0;place-items:end center}.tap-bee-overlay__dialog{width:100%;max-height:min(86dvh,720px);border-inline:0;border-block-end:0;border-radius:22px 22px 0 0;transform:translateY(24px)}.tap-bee-overlay .tap-dock__bee{max-height:calc(86dvh - 66px);padding:12px}.tap-bee-overlay .tap-dock__bee-conversation{min-height:140px}}@media (prefers-reduced-motion: reduce){.tap-bee-overlay__backdrop,.tap-bee-overlay__dialog{transition:none}}.tap-dock__primary-action{min-height:40px;margin-block-start:4px;padding:0 16px;border:1px solid color-mix(in srgb,var(--tap-dock-accent) 28%,transparent);border-radius:12px;background:var(--tap-dock-accent);color:#fff;cursor:pointer;font:inherit;font-size:12px;font-weight:800}.tap-dock__primary-action:focus-visible{outline:3px solid var(--tap-dock-focus-ring);outline-offset:2px}.tap-dock__module-list,.tap-dock__item-list,.tap-dock__person-list{min-width:0;margin:0;padding:0;display:grid;align-content:start;list-style:none}.tap-dock__module{min-width:0;border-block-end:1px solid var(--tap-dock-border);background:var(--tap-dock-surface)}.tap-dock__module-trigger{width:100%;min-width:0;min-height:50px;margin:0;padding:7px 10px 7px 13px;border:0;background:transparent;color:var(--tap-dock-text);display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;text-align:start;cursor:pointer;transition:background-color var(--tap-dock-duration) ease}.tap-dock__module-trigger:hover,.tap-dock__module.is-active>.tap-dock__module-trigger{background:var(--tap-dock-surface-soft)}.tap-dock__module-copy{min-width:0;display:grid;gap:2px}.tap-dock__module-title{min-width:0;overflow:hidden;color:var(--tap-dock-text);font-size:12px;font-weight:800;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.tap-dock__module-meta{min-width:0;display:flex;align-items:center;gap:5px;overflow:hidden;color:var(--tap-dock-text-muted);font-size:10px;font-weight:700;line-height:1.3;white-space:nowrap;font-variant-numeric:tabular-nums}.tap-dock__module-meta>*{min-width:0;overflow:hidden;text-overflow:ellipsis}.tap-dock__module-meta>*+*:before{content:"\b7";margin-inline-end:5px;color:var(--tap-dock-border-strong)}.tap-dock__module-pending{color:var(--tap-dock-warning)}.tap-dock__module-toggle{width:28px;height:28px;border-radius:9px;color:var(--tap-dock-text-muted);display:inline-flex;align-items:center;justify-content:center;transition:background-color var(--tap-dock-duration) ease,color var(--tap-dock-duration) ease,transform var(--tap-dock-duration) var(--tap-dock-ease)}.tap-dock__module-trigger:hover .tap-dock__module-toggle{background:var(--tap-dock-surface-muted);color:var(--tap-dock-text)}.tap-dock__module-trigger[aria-expanded=true] .tap-dock__module-toggle{transform:rotate(90deg)}.tap-dock__module-items{min-width:0;display:grid}.tap-dock__item,.tap-dock__person{position:relative;width:100%;min-width:0;min-height:var(--tap-dock-row-h);margin:0;padding:8px 11px 8px 13px;border:0;border-block-start:1px solid var(--tap-dock-border);background:transparent;color:var(--tap-dock-text);display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:9px;text-align:start;text-decoration:none;cursor:pointer;transition:background-color var(--tap-dock-duration) ease,color var(--tap-dock-duration) ease}.tap-dock__item:before,.tap-dock__person:before{content:"";position:absolute;inset-block:8px;inset-inline-start:0;width:3px;border-radius:999px;background:transparent;transition:background-color var(--tap-dock-duration) ease}.tap-dock__item:hover,.tap-dock__person:hover{background:var(--tap-dock-surface-soft)}.tap-dock__item[aria-current=page],.tap-dock__item.is-active,.tap-dock__person[aria-selected=true],.tap-dock__person.is-active{background:var(--tap-dock-accent-soft)}.tap-dock__item[aria-current=page]:before,.tap-dock__item.is-active:before,.tap-dock__person[aria-selected=true]:before,.tap-dock__person.is-active:before{background:var(--tap-dock-accent)}.tap-dock__item-icon,.tap-dock__person-avatar{width:28px;height:28px;border:1px solid var(--tap-dock-border);border-radius:9px;background:var(--tap-dock-neutral-soft);color:var(--tap-dock-neutral);display:inline-flex;align-items:center;justify-content:center;overflow:hidden}.tap-dock__item-icon :where(svg,.tap-ui-icon){width:15px;height:15px}.tap-dock__item-copy,.tap-dock__person-copy{min-width:0;display:grid;gap:2px}.tap-dock__item-title,.tap-dock__person-name{min-width:0;overflow:hidden;color:var(--tap-dock-text);font-size:12px;font-weight:750;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.tap-dock__item-meta,.tap-dock__person-meta{min-width:0;overflow:hidden;color:var(--tap-dock-text-muted);font-size:10px;font-weight:650;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.tap-dock__item-trailing,.tap-dock__person-trailing{max-width:112px;overflow:hidden;color:var(--tap-dock-text-muted);font-size:9px;font-weight:750;line-height:1.25;text-align:end;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums}.tap-dock__item[data-status-tone=success] .tap-dock__item-icon,.tap-dock__person[data-status-tone=success] .tap-dock__person-avatar{border-color:color-mix(in srgb,var(--tap-dock-success) 28%,transparent);background:var(--tap-dock-success-soft);color:var(--tap-dock-success)}.tap-dock__item[data-status-tone=warning] .tap-dock__item-icon,.tap-dock__person[data-status-tone=warning] .tap-dock__person-avatar{border-color:color-mix(in srgb,var(--tap-dock-warning) 30%,transparent);background:var(--tap-dock-warning-soft);color:var(--tap-dock-warning)}.tap-dock__item[data-status-tone=danger] .tap-dock__item-icon,.tap-dock__person[data-status-tone=danger] .tap-dock__person-avatar{border-color:color-mix(in srgb,var(--tap-dock-danger) 28%,transparent);background:var(--tap-dock-danger-soft);color:var(--tap-dock-danger)}.tap-dock__item[data-status-tone=submitted] .tap-dock__item-icon,.tap-dock__person[data-status-tone=submitted] .tap-dock__person-avatar{border-color:color-mix(in srgb,var(--tap-dock-submitted) 28%,transparent);background:var(--tap-dock-submitted-soft);color:var(--tap-dock-submitted)}.tap-dock__empty{min-height:180px;padding:24px 18px;color:var(--tap-dock-text-muted);display:grid;align-content:center;justify-items:center;gap:7px;text-align:center}.tap-dock__empty strong{color:var(--tap-dock-text);font-size:13px;font-weight:800}.tap-dock__empty p{max-width:34ch;margin:0;font-size:11px;line-height:1.55}.tap-dock__sheet-handle{display:none}@container tap-dock-pane (max-width: 335px){.tap-dock__header{padding-inline-start:12px}.tap-dock__filter-button>span:not(.tap-ui-icon){display:none}.tap-dock__filter-button{padding-inline:0}.tap-dock__item-trailing,.tap-dock__person-trailing{max-width:82px}}@media (min-width: 1024px){body[data-shell-variant=tap_player]:has(.tap-dock){--tap-player-shell-motion: .22s;--tap-player-shell-ease: cubic-bezier(.2, .8, .2, 1);--tap-player-topbar-inset: var(--tap-player-dock-rail-w);--tap-player-chrome-h: 65px;--tap-player-chrome-surface: #fff;--tap-player-chrome-border: #dbe4ef;--tap-dock-header-surface: var(--tap-player-chrome-surface)}body.theme-dark[data-shell-variant=tap_player]:has(.tap-dock){--tap-player-chrome-surface: #162235;--tap-player-chrome-border: rgba(166, 184, 207, .2)}body[data-shell-variant=tap_player]:has(.tap-dock[data-dock-state="expanded"]),body[data-shell-variant=tap_player]:has(.tap-dock.is-expanded){--tap-player-topbar-inset: calc( var(--tap-player-dock-pane-w) + var(--tap-player-dock-rail-w) )}.tap-dock{inset-block:0}.tap-dock__backdrop{display:none}.tap-dock__pane{border-radius:0;grid-template-rows:var(--tap-player-chrome-h) minmax(0,1fr)}.tap-dock__header{height:var(--tap-player-chrome-h);min-height:var(--tap-player-chrome-h);padding-inline:16px 12px}.tap-dock__rail{background:var(--tap-dock-rail-surface)!important;position:relative;padding-block-start:max(8px,calc((var(--tap-player-chrome-h) - 44px) / 2))}.tap-dock__rail:before{content:"";position:absolute;inset-inline:0;inset-block-start:var(--tap-player-chrome-h);border-block-start:1px solid var(--tap-dock-border);pointer-events:none}.tap-dock__header{background:var(--tap-dock-header-surface, var(--tap-dock-surface))}.tap-dock__pane{box-shadow:var(--tap-dock-shadow)!important}.tap-dock__rail{border-inline-start-color:color-mix(in srgb,var(--tap-dock-border) 72%,transparent);box-shadow:none!important}.tap-dock__rail:before{border-block-start-color:color-mix(in srgb,var(--tap-dock-border) 72%,transparent)}.tap-dock__view::-webkit-scrollbar{width:6px}.tap-dock .drawer-filter-shell,.tap-dock .assignment-drawer-filter-shell,.tap-dock .live-drawer-filter-shell{margin:0!important;padding:7px 10px!important;border:0!important;border-block-end:1px solid var(--tap-dock-border)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}.tap-dock .curriculum-rail-filters,.tap-dock .assignment-drawer-filters,.tap-dock .live-rail-filters{gap:2px!important}.tap-dock .curriculum-rail-filters .curriculum-filter,.tap-dock .assignment-drawer-filters .curriculum-filter,.tap-dock .live-rail-filters .curriculum-filter{min-height:34px!important;padding-inline:8px!important;border:1px solid transparent!important;border-radius:9px!important;background:transparent!important;box-shadow:none!important}.tap-dock .curriculum-rail-filters .curriculum-filter:hover,.tap-dock .assignment-drawer-filters .curriculum-filter:hover,.tap-dock .live-rail-filters .curriculum-filter:hover{border-color:transparent!important;background:var(--tap-dock-surface-soft)!important}.tap-dock .curriculum-rail-filters .curriculum-filter.active,.tap-dock .assignment-drawer-filters .curriculum-filter.active,.tap-dock .live-rail-filters .curriculum-filter.active{border-color:color-mix(in srgb,var(--tap-dock-accent) 22%,transparent)!important;background:var(--tap-dock-accent-soft)!important;color:var(--tap-dock-accent)!important;box-shadow:none!important}.tap-dock[data-dock-mode=live] .ul2-live-shell-drawer-body .curriculum-menu-shell,.tap-dock[data-dock-mode=live] .ul2-live-shell-drawer-body .curriculum-module-list{gap:0!important}.tap-dock[data-dock-mode=live] .ul2-live-shell-drawer-body .curriculum-menu-toolbar{min-height:36px!important;padding:0 10px!important;border-block-end:1px solid var(--tap-dock-border)!important}.tap-dock .utility-list[data-queue-mode=live] .curriculum-module,.tap-dock .ul2-live-shell-drawer-body .curriculum-module{margin:0!important;padding:0!important;border:0!important;border-block-end:1px solid var(--tap-dock-border)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}.tap-dock .utility-list[data-queue-mode=live] .curriculum-module.is-active,.tap-dock .ul2-live-shell-drawer-body .curriculum-module.is-active,.tap-dock .ul2-live-shell-drawer-body .curriculum-module.is-source-course{border-color:var(--tap-dock-border)!important;background:transparent!important;box-shadow:inset 2px 0 0 var(--tap-dock-accent)!important}.tap-dock .utility-list[data-queue-mode=live] .curriculum-module-head,.tap-dock .ul2-live-shell-drawer-body .curriculum-module-head{min-height:54px!important;padding:7px 10px 7px 12px!important;border-radius:0!important;background:color-mix(in srgb,var(--tap-dock-surface-soft) 78%,var(--tap-dock-surface))!important;box-shadow:none!important}.tap-dock .utility-list[data-queue-mode=live] .curriculum-module-head:hover,.tap-dock .ul2-live-shell-drawer-body .curriculum-module-head:hover{background:var(--tap-dock-surface-soft)!important}.tap-dock .utility-list[data-queue-mode=live] .live-module-title-row,.tap-dock .ul2-live-shell-drawer-body .live-module-title-row{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:2px!important;min-width:0!important;white-space:normal!important}.tap-dock .utility-list[data-queue-mode=live] .live-module-title-row strong,.tap-dock .ul2-live-shell-drawer-body .live-module-title-row strong{display:block!important;max-width:none!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;color:var(--tap-dock-text)!important;font-size:13px!important;line-height:1.3!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;box-shadow:none!important}.tap-dock .utility-list[data-queue-mode=live] .live-module-title-separator,.tap-dock .ul2-live-shell-drawer-body .live-module-title-separator{display:none!important}.tap-dock .utility-list[data-queue-mode=live] .live-module-summary,.tap-dock .ul2-live-shell-drawer-body .live-module-summary{position:static!important;display:block!important;min-width:0!important;max-width:none!important;padding:0!important;overflow:hidden!important;background:transparent!important;color:var(--tap-dock-text-muted)!important;font-size:10px!important;font-weight:700!important;line-height:1.35!important;text-align:start!important;text-overflow:ellipsis!important;white-space:nowrap!important}.tap-dock .utility-list[data-queue-mode=live] .curriculum-module-lessons,.tap-dock .ul2-live-shell-drawer-body .curriculum-module-lessons{position:relative!important;margin-block-start:0!important;padding:0 8px 4px 18px!important;border-block-start:1px solid var(--tap-dock-border)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}.tap-dock .utility-list[data-queue-mode=live] .curriculum-module-lessons:before,.tap-dock .ul2-live-shell-drawer-body .curriculum-module-lessons:before{content:"";position:absolute;inset-block:8px;inset-inline-start:10px;width:1px;border-radius:999px;background:color-mix(in srgb,var(--tap-dock-border) 82%,transparent);pointer-events:none}.tap-dock .utility-list[data-queue-mode=live] .curriculum-lesson-item,.tap-dock .ul2-live-shell-drawer-body .curriculum-lesson-item{min-height:60px!important;padding:8px 8px 8px 10px!important;border:0!important;border-block-end:1px solid color-mix(in srgb,var(--tap-dock-border) 72%,transparent)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;transform:none!important}.tap-dock .utility-list[data-queue-mode=live] .curriculum-lesson-main,.tap-dock .ul2-live-shell-drawer-body .curriculum-lesson-main{grid-template-columns:24px minmax(0,1fr)!important;align-items:center!important;gap:9px!important}.tap-dock .utility-list[data-queue-mode=live] .live-lesson-title-row,.tap-dock .ul2-live-shell-drawer-body .live-lesson-title-row{position:static!important;display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:2px!important;min-width:0!important;padding:0!important}.tap-dock .utility-list[data-queue-mode=live] .live-lesson-title-row .curriculum-lesson-title,.tap-dock .ul2-live-shell-drawer-body .live-lesson-title-row .curriculum-lesson-title{display:block!important;overflow:hidden!important;font-size:13px!important;line-height:1.3!important;text-overflow:ellipsis!important;white-space:nowrap!important}.tap-dock .utility-list[data-queue-mode=live] .live-lesson-inline-time,.tap-dock .ul2-live-shell-drawer-body .live-lesson-inline-time{position:static!important;display:block!important;max-width:none!important;padding:0!important;overflow:visible!important;background:transparent!important;color:var(--tap-dock-text-muted)!important;font-size:10px!important;font-weight:700!important;line-height:1.35!important;text-align:start!important;text-overflow:clip!important;white-space:nowrap!important}.tap-dock .utility-list[data-queue-mode=live] .curriculum-lesson-item:hover,.tap-dock .utility-list[data-queue-mode=live] .curriculum-lesson-item:focus-visible,.tap-dock .ul2-live-shell-drawer-body .curriculum-lesson-item:hover,.tap-dock .ul2-live-shell-drawer-body .curriculum-lesson-item:focus-visible{border-block-end-color:color-mix(in srgb,var(--tap-dock-border) 72%,transparent)!important;background:var(--tap-dock-surface-soft)!important;box-shadow:none!important;transform:none!important}.tap-dock .ul2-live-shell-drawer-body .curriculum-lesson-item[data-live-item-status-tone=live],.tap-dock .ul2-live-shell-drawer-body .curriculum-lesson-item[data-live-item-status-tone=upcoming],.tap-dock .ul2-live-shell-drawer-body .curriculum-lesson-item[data-live-item-status-tone=expired]{border-color:transparent!important;background:transparent!important;box-shadow:none!important}.tap-dock .ul2-live-shell-drawer-body .curriculum-lesson-item[data-live-item-status-tone=live]:before,.tap-dock .ul2-live-shell-drawer-body .curriculum-lesson-item[data-live-item-status-tone=upcoming]:before,.tap-dock .ul2-live-shell-drawer-body .curriculum-lesson-item[data-live-item-status-tone=expired]:before{width:3px!important;inset-block:10px!important;border-radius:999px!important}.tap-dock .ul2-live-shell-drawer-body .curriculum-lesson-item[data-live-item-status-tone=live]:before{background:#22c55e!important}.tap-dock .ul2-live-shell-drawer-body .curriculum-lesson-item[data-live-item-status-tone=upcoming]:before{background:#f59e0b!important}.tap-dock .ul2-live-shell-drawer-body .curriculum-lesson-item[data-live-item-status-tone=expired]:before{background:#64748b!important}.tap-dock .ul2-live-shell-drawer-body .curriculum-lesson-item[data-live-item-status-tone] .curriculum-lesson-title,.tap-dock .ul2-live-shell-drawer-body .curriculum-lesson-item[data-live-item-status-tone] .live-lesson-inline-time{color:var(--tap-dock-text)!important}.tap-dock .ul2-live-shell-drawer-body .curriculum-lesson-item[data-live-item-status-tone] .live-lesson-inline-time{background:transparent!important;color:var(--tap-dock-text-muted)!important}.tap-dock .ul2-live-shell-drawer-body .curriculum-lesson-item.active{border-block-end-color:color-mix(in srgb,var(--tap-dock-accent) 26%,var(--tap-dock-border))!important;background:var(--tap-dock-accent-soft)!important;box-shadow:inset 2px 0 0 var(--tap-dock-accent)!important}.tap-dock .utility-list[data-queue-mode=assignment] .assignment-module-list .curriculum-module-lessons{position:relative!important;margin:0!important;padding:0 8px 5px 18px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}.tap-dock .utility-list[data-queue-mode=assignment] .assignment-module-list .curriculum-module-lessons:before{content:"";position:absolute;inset-block:8px;inset-inline-start:10px;width:1px;border-radius:999px;background:color-mix(in srgb,var(--tap-dock-border) 82%,transparent);pointer-events:none}.tap-dock .utility-list[data-queue-mode=assignment] .assignment-lesson-item{grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto auto!important;gap:3px!important;min-height:64px!important;padding:8px 8px 8px 10px!important;border:0!important;border-block-end:1px solid color-mix(in srgb,var(--tap-dock-border) 70%,transparent)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;transform:none!important}.tap-dock .utility-list[data-queue-mode=assignment] .assignment-lesson-item .curriculum-lesson-main{grid-template-columns:28px minmax(0,1fr)!important;align-items:center!important;gap:9px!important;width:100%!important;min-width:0!important}.tap-dock .utility-list[data-queue-mode=assignment] .assignment-lesson-item .curriculum-lesson-title{display:block!important;overflow:visible!important;font-size:13px!important;line-height:1.35!important;text-overflow:clip!important;white-space:normal!important;-webkit-line-clamp:unset!important}.tap-dock .utility-list[data-queue-mode=assignment] .assignment-lesson-item .curriculum-lesson-duration{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:6px!important;grid-row:2!important;justify-self:stretch!important;width:auto!important;min-width:0!important;max-width:none!important;margin-inline-start:37px!important;padding:0!important;overflow:visible!important;color:var(--tap-dock-text-muted)!important;font-size:10px!important;font-weight:700!important;line-height:1.35!important;text-align:start!important;text-overflow:clip!important;white-space:normal!important}.tap-dock .utility-list[data-queue-mode=assignment] .assignment-lesson-item .assignment-lesson-type-label{display:inline-flex!important;align-items:center!important;flex:0 0 auto;min-height:18px;padding:0 6px;border:1px solid color-mix(in srgb,var(--tap-dock-accent) 24%,transparent);border-radius:999px;background:var(--tap-dock-accent-soft);color:var(--tap-dock-accent);font-size:9px;font-weight:800;line-height:1;letter-spacing:.01em;white-space:nowrap!important}.tap-dock .utility-list[data-queue-mode=assignment] .assignment-lesson-item .assignment-lesson-due{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tap-dock .utility-list[data-queue-mode=assignment] .assignment-lesson-item:hover,.tap-dock .utility-list[data-queue-mode=assignment] .assignment-lesson-item:focus-visible{border-block-end-color:color-mix(in srgb,var(--tap-dock-border) 70%,transparent)!important;background:var(--tap-dock-surface-soft)!important;box-shadow:none!important;transform:none!important}.tap-dock .utility-list[data-queue-mode=curriculum] .curriculum-module{border:0!important;border-block-end:1px solid var(--tap-dock-border)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}.tap-dock .utility-list[data-queue-mode=curriculum] .curriculum-module-head{min-height:58px!important;padding:8px 10px 8px 12px!important;border-radius:0!important;background:color-mix(in srgb,var(--tap-dock-surface-soft) 78%,var(--tap-dock-surface))!important;box-shadow:none!important}.tap-dock .utility-list[data-queue-mode=curriculum] .curriculum-module-head:hover{background:var(--tap-dock-surface-soft)!important}.tap-dock .utility-list[data-queue-mode=curriculum] .curriculum-queue-module-title-row{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:2px!important;min-width:0!important;white-space:normal!important}.tap-dock .utility-list[data-queue-mode=curriculum] .curriculum-queue-module-title-row strong{display:block!important;max-width:none!important;overflow:hidden!important;color:var(--tap-dock-text)!important;font-size:13px!important;line-height:1.3!important;text-overflow:ellipsis!important;white-space:nowrap!important}.tap-dock .utility-list[data-queue-mode=curriculum] .curriculum-queue-module-title-separator{display:none!important}.tap-dock .utility-list[data-queue-mode=curriculum] .curriculum-queue-module-summary{display:block!important;min-width:0!important;overflow:hidden!important;color:var(--tap-dock-text-muted)!important;font-size:10px!important;font-weight:700!important;line-height:1.35!important;text-overflow:ellipsis!important;white-space:nowrap!important}.tap-dock .utility-list[data-queue-mode=curriculum] .curriculum-module-lessons{position:relative!important;margin:0!important;padding:0 8px 3px 18px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}.tap-dock .utility-list[data-queue-mode=curriculum] .curriculum-module-lessons:before{content:"";position:absolute;inset-block:8px;inset-inline-start:10px;width:1px;border-radius:999px;background:color-mix(in srgb,var(--tap-dock-border) 82%,transparent);pointer-events:none}.tap-dock .utility-list[data-queue-mode=curriculum] .curriculum-lesson-item{grid-template-columns:minmax(0,1fr) max-content!important;gap:8px!important;min-height:58px!important;padding:8px 8px 8px 10px!important;border:0!important;border-block-end:1px solid color-mix(in srgb,var(--tap-dock-border) 70%,transparent)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;transform:none!important}.tap-dock .utility-list[data-queue-mode=curriculum] .curriculum-lesson-title{display:-webkit-box!important;overflow:hidden!important;font-size:13px!important;line-height:1.3!important;text-overflow:clip!important;white-space:normal!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important}.tap-dock .utility-list[data-queue-mode=curriculum] .curriculum-lesson-item:hover,.tap-dock .utility-list[data-queue-mode=curriculum] .curriculum-lesson-item:focus-visible{background:var(--tap-dock-surface-soft)!important}.tap-dock .utility-list[data-queue-mode=curriculum] .curriculum-lesson-item.active{border-block-end-color:color-mix(in srgb,var(--tap-dock-accent) 24%,var(--tap-dock-border))!important;background:var(--tap-dock-accent-soft)!important;box-shadow:inset 2px 0 0 var(--tap-dock-accent)!important}.tap-dock .utility-list[data-queue-mode=curriculum] .curriculum-lesson-duration{width:-moz-max-content!important;width:max-content!important;min-width:66px!important;max-width:none!important;padding-inline-start:4px!important;overflow:visible!important;font-variant-numeric:tabular-nums!important;text-align:end!important;text-overflow:clip!important;white-space:nowrap!important}.tap-dock .utility-list[data-queue-mode=assignment] .assignment-module-list .curriculum-module.is-active,.tap-dock .utility-list[data-queue-mode=curriculum] .curriculum-module.is-active{background:transparent!important;box-shadow:inset 2px 0 0 var(--tap-dock-accent)!important}body[data-shell-variant=tap_player]:has(.tap-dock)>.tap-curriculum-page>.topbar .topbar-inner,body[data-shell-variant=tap_player]:has(.tap-dock) .tap-curriculum-page>.topbar .topbar-inner{width:100%!important;max-width:none!important;height:var(--tap-player-chrome-h)!important;min-height:var(--tap-player-chrome-h)!important;margin:0!important;box-sizing:border-box!important;background:var(--tap-player-chrome-surface)!important;border-block-end:1px solid var(--tap-player-chrome-border)!important;box-shadow:none!important}body[data-shell-variant=tap_player]:has(.tap-dock)>.tap-curriculum-page>.topbar,body[data-shell-variant=tap_player]:has(.tap-dock) .tap-curriculum-page>.topbar{height:var(--tap-player-chrome-h)!important;background:var(--tap-player-chrome-surface)!important;border-block-end:0!important;border-inline-end:0!important;box-sizing:border-box!important}body[data-shell-variant=tap_player][data-player-v2-right-dock-variant=unified]:has(.tap-dock) .app[data-player-v2-right-dock-variant=unified] .main{padding-inline-end:calc(var(--tap-player-dock-rail-w) + 20px);transition-duration:var(--tap-player-shell-motion, .22s)!important;transition-timing-function:var(--tap-player-shell-ease, cubic-bezier(.2, .8, .2, 1))!important}body[data-shell-variant=tap_player][data-player-v2-right-dock-variant=unified]:has(.tap-dock[data-dock-state="expanded"]) .app[data-player-v2-right-dock-variant=unified] .main,body[data-shell-variant=tap_player][data-player-v2-right-dock-variant=unified]:has(.tap-dock.is-expanded) .app[data-player-v2-right-dock-variant=unified] .main{padding-inline-end:calc(var(--tap-player-dock-pane-w) + var(--tap-player-dock-rail-w) + 20px)}body[data-shell-variant=tap_player][data-player-v2-right-dock-variant=unified]:has(.tap-dock) .app[data-player-v2-right-dock-variant=unified] .topbar-inner{padding-inline-end:12px}}@media (min-width: 861px) and (max-width: 1023px){body[data-shell-variant=tap_player]:has(.tap-dock[data-dock-state="expanded"]) .topbar,body[data-shell-variant=tap_player]:has(.tap-dock.is-expanded) .topbar{opacity:0!important;visibility:hidden!important;pointer-events:none!important}.tap-dock{inset:0;width:100vw;height:100dvh;display:block}.tap-dock[data-dock-state=expanded],.tap-dock.is-expanded{z-index:48}.tap-dock__backdrop{inset:0}.tap-dock__rail{position:absolute;inset-block:0;inset-inline-end:0;padding-block-start:max(8px,env(safe-area-inset-top,0px));transition:opacity var(--tap-dock-duration) ease,visibility 0s linear 0s}.tap-dock[data-dock-state=expanded] .tap-dock__rail,.tap-dock.is-expanded .tap-dock__rail{opacity:0;visibility:hidden;pointer-events:none}.tap-dock__pane{position:absolute;inset:0 0 0 auto;width:min(82vw,372px);height:100%;border-block:0;border-inline-end:0;border-radius:0;grid-template-rows:calc(var(--tap-dock-head-h) + env(safe-area-inset-top,0px)) minmax(0,1fr);transform:translate(24px)}.tap-dock[data-dock-state=expanded] .tap-dock__pane,.tap-dock.is-expanded .tap-dock__pane{transform:translate(0)}.tap-dock__header{padding-block-start:env(safe-area-inset-top,0px)}.tap-dock[data-dock-state=expanded] .tap-dock__backdrop,.tap-dock.is-expanded .tap-dock__backdrop{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}}@media (max-width: 860px){body[data-shell-variant=tap_player]:has(.tap-dock[data-dock-state="expanded"]) .topbar,body[data-shell-variant=tap_player]:has(.tap-dock.is-expanded) .topbar,body[data-shell-variant=tap_player]:has(.tap-dock[data-dock-state="expanded"]) .tap-mobile-bottom-bar,body[data-shell-variant=tap_player]:has(.tap-dock.is-expanded) .tap-mobile-bottom-bar{opacity:0!important;visibility:hidden!important;pointer-events:none!important}body[data-shell-variant=tap_player][data-player-v2-right-dock-variant=unified] .app[data-player-v2-right-dock-variant=unified] .main{padding-block-end:calc(var(--tap-dock-mobile-nav-h, 62px) + env(safe-area-inset-bottom,0px) + 18px)}.tap-dock{inset:0;width:100vw;height:100dvh;display:block}.tap-dock[data-dock-state=expanded],.tap-dock.is-expanded{z-index:48}.tap-dock__backdrop{inset:0}.tap-dock__rail{display:none}.tap-dock__pane{position:absolute;inset:0 0 0 auto;width:min(90vw,380px);height:100%;max-height:none;min-height:0;border-block:0;border-inline-end:0;border-radius:0;grid-template-rows:calc(var(--tap-dock-head-h) + env(safe-area-inset-top,0px)) minmax(0,1fr);transform:translate(24px);box-shadow:-18px 0 42px #0f172a33}.tap-dock[data-dock-state=expanded] .tap-dock__pane,.tap-dock.is-expanded .tap-dock__pane{transform:translate(0)}.tap-dock[data-dock-state=expanded] .tap-dock__backdrop,.tap-dock.is-expanded .tap-dock__backdrop{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}.tap-dock__header{grid-template-columns:minmax(0,1fr) auto;padding-block-start:env(safe-area-inset-top,0px);padding-inline:max(14px,env(safe-area-inset-left,0px)) max(10px,env(safe-area-inset-right,0px))}.tap-dock[data-dock-mode=assignment] .assignment-view-toggle,.tap-dock[data-dock-mode=live] .live-view-toggle{display:none!important}.tap-dock__mobile-nav{position:fixed;inset:auto 0 0;z-index:8;min-height:calc(var(--tap-dock-mobile-nav-h) + env(safe-area-inset-bottom,0px));padding:5px max(8px,env(safe-area-inset-right,0px)) max(4px,env(safe-area-inset-bottom,0px)) max(8px,env(safe-area-inset-left,0px));border-block-start:1px solid var(--tap-dock-border);background:color-mix(in srgb,var(--tap-dock-surface) 96%,transparent);display:grid;grid-template-columns:repeat(auto-fit,minmax(68px,1fr));align-items:stretch;gap:3px;box-shadow:0 -6px 18px #0f172a14;backdrop-filter:blur(22px) saturate(135%);-webkit-backdrop-filter:blur(22px) saturate(135%);pointer-events:auto;box-sizing:border-box;transition:transform var(--tap-dock-duration) var(--tap-dock-ease),opacity .16s ease,visibility 0s linear 0s}.tap-dock__mobile-nav-button{position:relative;min-width:0;min-height:52px;margin:0;padding:5px 3px 3px;border:0;border-radius:12px;background:transparent;color:var(--tap-dock-icon);display:grid;grid-template-rows:28px auto;justify-items:center;align-content:center;gap:2px;cursor:pointer;box-sizing:border-box;transition:background-color .15s ease,color .15s ease,transform .15s var(--tap-dock-ease)}.tap-dock__mobile-nav-button:before{content:"";position:absolute;inset-block-start:3px;inset-inline-start:50%;width:18px;height:2px;border-radius:999px;background:currentColor;opacity:0;transform:translate(-50%) scaleX(.45);transition:opacity .15s ease,transform .18s var(--tap-dock-ease)}.tap-dock__mobile-nav-button:focus-visible{background:var(--tap-dock-surface-soft);color:var(--tap-dock-text)}@media (hover: hover) and (pointer: fine){.tap-dock__mobile-nav-button:hover{background:var(--tap-dock-surface-soft);color:var(--tap-dock-text)}}.tap-dock__mobile-nav-button[aria-pressed=true],.tap-dock__mobile-nav-button.is-active,.tap-dock__mobile-nav-button[aria-expanded=true]{background:color-mix(in srgb,var(--tap-dock-accent-soft) 76%,transparent);color:var(--tap-dock-accent)}.tap-dock__mobile-nav-button[aria-pressed=true]:before,.tap-dock__mobile-nav-button.is-active:before,.tap-dock__mobile-nav-button[aria-expanded=true]:before{opacity:1;transform:translate(-50%) scaleX(1)}.tap-dock__mobile-nav-button:focus-visible{outline:3px solid var(--tap-dock-focus-ring);outline-offset:-2px}.tap-dock__mobile-nav-icon{position:relative;width:28px;height:28px;border:1px solid var(--tap-dock-icon-border);border-radius:9px;background:var(--tap-dock-icon-soft);color:var(--tap-dock-icon);display:grid;place-items:center;transition:border-color .15s ease,background-color .15s ease,color .15s ease,box-shadow .15s ease}.tap-dock__mobile-nav-icon :where(svg,.tap-ui-icon){width:18px;height:18px}.tap-dock__mobile-nav-button[aria-pressed=true] .tap-dock__mobile-nav-icon,.tap-dock__mobile-nav-button.is-active .tap-dock__mobile-nav-icon,.tap-dock__mobile-nav-button[aria-expanded=true] .tap-dock__mobile-nav-icon{border-color:var(--tap-dock-icon-active-surface);background:var(--tap-dock-icon-active-surface);color:var(--tap-dock-icon-active);box-shadow:var(--tap-dock-icon-shadow)}.tap-dock__mobile-nav-label{width:100%;overflow:hidden;font-size:10px;font-weight:750;line-height:1.15;text-align:center;text-overflow:ellipsis;white-space:nowrap}.tap-dock__mobile-nav-badge{position:absolute;inset-block-start:-5px;inset-inline-end:-9px;min-width:17px;height:17px;padding-inline:4px;border:2px solid var(--tap-dock-surface);border-radius:999px;background:var(--tap-dock-danger);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:8px;font-weight:800;line-height:1;font-variant-numeric:tabular-nums}.tap-dock__mobile-more-backdrop{position:fixed;inset:0 0 calc(var(--tap-dock-mobile-nav-h) + env(safe-area-inset-bottom,0px));z-index:5;width:auto;height:auto;margin:0;padding:0;border:0;background:var(--tap-dock-scrim);pointer-events:auto}.tap-dock__mobile-more-backdrop:not([hidden]){display:block}.tap-dock__mobile-more-sheet{position:fixed;inset:auto 10px calc(var(--tap-dock-mobile-nav-h) + env(safe-area-inset-bottom,0px) + 8px);z-index:7;padding:10px;border:1px solid var(--tap-dock-border);border-radius:18px;background:var(--tap-dock-surface);color:var(--tap-dock-text);box-shadow:0 20px 48px #0f172a38;pointer-events:auto}.tap-dock__mobile-more-sheet:not([hidden]){display:grid;gap:8px}.tap-dock__mobile-more-head{min-height:34px;display:flex;align-items:center;justify-content:space-between;gap:10px}.tap-dock__mobile-more-head strong{font-size:13px;line-height:1.2}.tap-dock__mobile-more-close{width:32px;min-width:32px;height:32px;margin:0;padding:7px;border:1px solid var(--tap-dock-border);border-radius:10px;background:var(--tap-dock-surface-soft);color:var(--tap-dock-text-muted);display:grid;place-items:center}.tap-dock__mobile-more-body,.tap-dock__mobile-more-utilities{display:grid;gap:7px}.tap-dock .tap-dock__mobile-more-action{width:100%!important;min-width:0!important;min-height:44px!important;margin:0!important;padding:0 12px!important;border:1px solid var(--tap-dock-border)!important;border-radius:12px!important;background:var(--tap-dock-surface-soft)!important;color:var(--tap-dock-text)!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:9px!important;box-shadow:none!important;transition:none!important}.tap-dock .tap-dock__mobile-more-action:hover,.tap-dock .tap-dock__mobile-more-action[aria-expanded=true]{border-color:color-mix(in srgb,var(--tap-dock-accent) 26%,transparent)!important;background:var(--tap-dock-accent-soft)!important;color:var(--tap-dock-accent)!important}.tap-dock__mobile-more-action :where(svg,.tap-ui-icon){width:19px;height:19px;flex:0 0 auto}.tap-dock__mobile-more-action .utility-theme-toggle-main{min-width:0;flex:1 1 auto;justify-content:flex-start}.tap-dock__mobile-more-action-label,.tap-dock__mobile-more-action>span:not(.tap-ui-icon){min-width:0;font-size:12px;font-weight:700}.tap-dock__mobile-more-action .utility-theme-toggle-label{margin-inline-start:auto;color:var(--tap-dock-text-muted);font-size:10px;font-weight:800}.tap-dock__mobile-more-action .utility-theme-toggle-caret{margin-inline-start:auto}.tap-dock__mobile-more-value{margin-inline-start:auto;color:var(--tap-dock-text-muted);font-size:10px;font-weight:800}.tap-dock__mobile-more-utility{position:relative;min-width:0}.tap-dock__mobile-more-utility .utility-theme-menu{position:absolute!important;inset:auto 0 calc(100% + 8px) 0!important;z-index:9;width:auto;min-width:0;border-color:var(--tap-dock-border);background:var(--tap-dock-surface);color:var(--tap-dock-text);box-shadow:0 16px 36px #0f172a2e}.tap-dock__mobile-more-utility .utility-theme-option{color:var(--tap-dock-text)}.tap-dock__view-inner{padding-block-end:max(18px,env(safe-area-inset-bottom,0px))}.tap-dock[data-dock-mode=assignment] .tap-dock__view-inner{padding-block-end:calc(var(--tap-dock-mobile-nav-h, 62px) + env(safe-area-inset-bottom,0px) + 12px)}.tap-dock__rail-label{display:none}.tap-dock__bee{height:100%;min-height:0;padding:12px;gap:10px;overflow:hidden}.tap-dock__bee-conversation{min-height:0;max-height:none;flex:1 1 auto}.tap-dock__bee-compose{min-height:0;margin-block-start:0}.tap-dock__bee-prompts{max-height:144px;display:grid;grid-template-columns:minmax(0,1fr);overflow-x:visible;overflow-y:auto}.tap-dock__bee-prompts button{width:100%;min-height:44px;padding:7px 12px;border-radius:13px;white-space:normal}.tap-dock__bee-form{grid-template-columns:minmax(0,1fr) 44px}.tap-dock__bee-form textarea{min-height:44px;font-size:16px}.tap-dock__bee-form button{width:44px;height:44px}.tap-dock__bee-feedback button{min-height:44px}}@media (max-width: 860px){body[data-assignment-runner]{--assignment-runner-nav-offset:calc(62px + env(safe-area-inset-bottom, 0px))}body[data-assignment-runner][data-player-v2-right-dock-variant=unified] .tap-mobile-bottom-bar,body[data-assignment-runner] .player-mobile-summary-strip,body[data-assignment-runner] .summary-strip-wrap{display:none!important}body[data-assignment-runner] .app[data-player-v2-right-dock-variant=unified] .main{padding-bottom:calc(146px + env(safe-area-inset-bottom,0px))!important;padding-block-end:calc(146px + env(safe-area-inset-bottom,0px))!important}body[data-assignment-runner][data-shell-keyboard-open="1"]{--assignment-runner-nav-offset: 0px}body[data-assignment-runner][data-shell-keyboard-open="1"] .tap-dock__mobile-nav,body[data-assignment-runner][data-shell-keyboard-open="1"] .tap-mobile-bottom-bar{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(110%)}body[data-assignment-runner][data-shell-keyboard-open="1"] .app[data-player-v2-right-dock-variant=unified] .main{padding-bottom:82px!important;padding-block-end:82px!important}}@media (prefers-reduced-motion: reduce){body[data-shell-variant=tap_player]:has(.tap-dock){--tap-player-shell-motion: .01ms}.tap-dock__backdrop,.tap-dock__pane,.tap-dock__rail-button,.tap-dock__rail-button:before,.tap-dock__rail-label,.tap-dock__icon-button,.tap-dock__filter-button,.tap-dock__filter-popover,.tap-dock__view,.tap-dock__module-trigger,.tap-dock__module-toggle,.tap-dock__item,.tap-dock__item:before,.tap-dock__person,.tap-dock__person:before{transition-duration:.01ms;transition-delay:0s}.tap-dock__view{scroll-behavior:auto}}@media (forced-colors: active){.tap-dock__rail-button[aria-selected=true]:before,.tap-dock__rail-button[aria-pressed=true]:before,.tap-dock__rail-button.is-active:before,.tap-dock__item[aria-current=page]:before,.tap-dock__item.is-active:before,.tap-dock__person[aria-selected=true]:before,.tap-dock__person.is-active:before{background:Highlight}}.tap-dock .utility-list[data-queue-mode=live] .curriculum-lesson-item,.tap-dock .ul2-live-shell-drawer-body .curriculum-lesson-item{min-height:72px!important;padding-block:8px!important}.tap-dock .utility-list[data-queue-mode=live] .curriculum-lesson-status-icon,.tap-dock .ul2-live-shell-drawer-body .curriculum-lesson-status-icon{width:26px!important;height:26px!important;opacity:1!important}.tap-dock .utility-list[data-queue-mode=live] .live-lesson-title-row .curriculum-lesson-title,.tap-dock .ul2-live-shell-drawer-body .live-lesson-title-row .curriculum-lesson-title{font-size:13.5px!important;font-weight:800!important}.tap-dock .utility-list[data-queue-mode=live] .live-lesson-inline-time,.tap-dock .ul2-live-shell-drawer-body .live-lesson-inline-time{font-size:10.5px!important}.tap-dock .utility-list[data-queue-mode=live] .live-lesson-meta-row,.tap-dock .ul2-live-shell-drawer-body .live-lesson-meta-row{display:flex!important;align-items:center!important;gap:5px!important;min-width:0!important;margin-top:3px!important}.tap-dock .utility-list[data-queue-mode=live] .live-lesson-status-line,.tap-dock .ul2-live-shell-drawer-body .live-lesson-status-line{display:inline-flex!important;align-items:center!important;gap:4px!important;width:-moz-fit-content!important;width:fit-content!important;max-width:100%!important;color:var(--tap-dock-text-muted)!important;font-size:9.5px!important;font-weight:800!important;line-height:1.2!important}.tap-dock .utility-list[data-queue-mode=live] .live-lesson-status-mark,.tap-dock .ul2-live-shell-drawer-body .live-lesson-status-mark{display:inline-grid!important;flex:0 0 13px!important;place-items:center!important;width:13px!important;height:13px!important;opacity:.95!important}.tap-dock .utility-list[data-queue-mode=live] .live-lesson-status-mark .tap-ui-icon,.tap-dock .ul2-live-shell-drawer-body .live-lesson-status-mark .tap-ui-icon{width:12px!important;height:12px!important}.tap-dock .utility-list[data-queue-mode=live] .live-lesson-status-label,.tap-dock .ul2-live-shell-drawer-body .live-lesson-status-label{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.tap-dock .utility-list[data-queue-mode=live] .live-lesson-meta-separator,.tap-dock .ul2-live-shell-drawer-body .live-lesson-meta-separator{flex:0 0 auto!important;color:var(--tap-dock-text-muted)!important;font-size:10px!important;line-height:1!important}.tap-dock .utility-list[data-queue-mode=live] .live-lesson-meta-row .live-lesson-relative-time,.tap-dock .ul2-live-shell-drawer-body .live-lesson-meta-row .live-lesson-relative-time{display:block!important;min-width:0!important;max-width:100%!important;margin:0!important;overflow:hidden!important;color:var(--tap-dock-text-muted)!important;font-size:9.5px!important;font-weight:700!important;line-height:1.2!important;text-overflow:ellipsis!important;white-space:nowrap!important}.tap-dock .utility-list[data-queue-mode=live] .live-lesson-attendance-state,.tap-dock .ul2-live-shell-drawer-body .live-lesson-attendance-state{min-width:0!important;max-width:92px!important;overflow:hidden!important;color:var(--tap-dock-text-muted)!important;font-size:9.5px!important;font-weight:800!important;line-height:1.2!important;text-overflow:ellipsis!important;white-space:nowrap!important}.tap-dock .utility-list[data-queue-mode=live] .live-lesson-attendance-state.is-attendance-present,.tap-dock .ul2-live-shell-drawer-body .live-lesson-attendance-state.is-attendance-present{color:#4ade80!important}.tap-dock .utility-list[data-queue-mode=live] .live-lesson-attendance-state.is-attendance-missed,.tap-dock .ul2-live-shell-drawer-body .live-lesson-attendance-state.is-attendance-missed{color:#fca5a5!important}.tap-dock .utility-list[data-queue-mode=live] .live-lesson-attendance-state.is-attendance-excused,.tap-dock .ul2-live-shell-drawer-body .live-lesson-attendance-state.is-attendance-excused{color:#fde68a!important}.tap-dock .utility-list[data-queue-mode=live] .live-lesson-attendance-state.is-attendance-pending_excuse,.tap-dock .ul2-live-shell-drawer-body .live-lesson-attendance-state.is-attendance-pending_excuse{color:#fdba74!important}.tap-dock .utility-list[data-queue-mode=live] .live-lesson-status-line.is-live,.tap-dock .ul2-live-shell-drawer-body .live-lesson-status-line.is-live,.tap-dock .utility-list[data-queue-mode=live] .live-lesson-status-line.is-live .live-lesson-status-mark,.tap-dock .ul2-live-shell-drawer-body .live-lesson-status-line.is-live .live-lesson-status-mark{color:#4ade80!important}.tap-dock .utility-list[data-queue-mode=live] .live-lesson-status-line.is-upcoming,.tap-dock .ul2-live-shell-drawer-body .live-lesson-status-line.is-upcoming,.tap-dock .utility-list[data-queue-mode=live] .live-lesson-status-line.is-upcoming .live-lesson-status-mark,.tap-dock .ul2-live-shell-drawer-body .live-lesson-status-line.is-upcoming .live-lesson-status-mark{color:#fbbf24!important}.tap-dock .utility-list[data-queue-mode=live] .live-lesson-status-line.is-expired,.tap-dock .ul2-live-shell-drawer-body .live-lesson-status-line.is-expired,.tap-dock .utility-list[data-queue-mode=live] .live-lesson-status-line.is-expired .live-lesson-status-mark,.tap-dock .ul2-live-shell-drawer-body .live-lesson-status-line.is-expired .live-lesson-status-mark{color:#94a3b8!important}.tap-dock .utility-list[data-queue-mode=live] .curriculum-lesson-status-icon.is-attendance-present,.tap-dock .ul2-live-shell-drawer-body .curriculum-lesson-status-icon.is-attendance-present{color:#4ade80!important;background:rgba(22,101,52,.28)!important;border-color:#4ade8085!important}.tap-dock .utility-list[data-queue-mode=live] .curriculum-lesson-status-icon.is-attendance-missed,.tap-dock .ul2-live-shell-drawer-body .curriculum-lesson-status-icon.is-attendance-missed{color:#fca5a5!important;background:rgba(127,29,29,.3)!important;border-color:#f871718a!important}.tap-dock .utility-list[data-queue-mode=live] .curriculum-lesson-status-icon.is-attendance-excused,.tap-dock .ul2-live-shell-drawer-body .curriculum-lesson-status-icon.is-attendance-excused{color:#fde68a!important;background:rgba(113,63,18,.3)!important;border-color:#fbbf248a!important}.tap-dock .utility-list[data-queue-mode=live] .curriculum-lesson-status-icon.is-attendance-pending_excuse,.tap-dock .ul2-live-shell-drawer-body .curriculum-lesson-status-icon.is-attendance-pending_excuse{color:#fdba74!important;background:rgba(154,52,18,.28)!important;border-color:#fb923c8a!important}.tap-dock .utility-list[data-queue-mode=live] .curriculum-lesson-status-icon.is-attendance-unknown,.tap-dock .ul2-live-shell-drawer-body .curriculum-lesson-status-icon.is-attendance-unknown{color:#cbd5e1!important;background:rgba(15,23,42,.72)!important;border-color:#94a3b87a!important}@media (max-width: 720px){.tap-dock .ul2-live-shell-drawer-body .curriculum-lesson-item{min-height:70px!important}}.curriculum-module-lessons[hidden]{display:none!important}.curriculum-module-empty{padding:14px;border:1px dashed var(--line);border-radius:16px;background:var(--surface-soft);font-size:12px;line-height:1.6;color:var(--muted)}.curriculum-menu-shell,.curriculum-module-list,.curriculum-module,.curriculum-module-lessons,.curriculum-lesson-item{width:100%;max-width:none;min-width:0;box-sizing:border-box}.curriculum-menu-shell{display:grid;gap:12px;padding-bottom:4px}.curriculum-rail-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:8px;padding-bottom:2px;scrollbar-width:none}.curriculum-rail-filters::-webkit-scrollbar{display:none}.curriculum-menu-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:nowrap}.curriculum-menu-shell .curriculum-menu-toolbar{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;width:100%}.curriculum-menu-toolbar strong{font-size:12px;font-weight:800;color:var(--muted)}.curriculum-menu-toolbar-meta{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;min-width:0;flex:1 1 auto}.curriculum-menu-shell .curriculum-menu-toolbar-meta{width:100%}.curriculum-menu-toolbar-copy{display:flex;align-items:center;justify-content:flex-start;gap:8px;min-width:0}.curriculum-menu-toolbar-meta strong{display:inline-flex;align-items:center;min-height:40px;white-space:nowrap;min-width:0}.curriculum-menu-toolbar-actions{display:flex;align-items:center;justify-self:end;gap:8px;flex-wrap:nowrap;flex:0 0 auto}.curriculum-menu-toolbar-actions:empty{display:none}.curriculum-menu-toolbar-actions .small-btn{white-space:nowrap}.curriculum-toggle-all-btn{grid-column:3;width:36px;min-width:36px;min-height:36px;padding:0;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;justify-self:end}.curriculum-toggle-all-icon{width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;line-height:1}.curriculum-toggle-all-icon svg{width:18px;height:18px}.curriculum-module-list{display:grid;gap:12px}.curriculum-module{border:1px solid var(--line);border-radius:20px;background:#fff;overflow:hidden;display:grid;box-shadow:0 6px 18px #0f172a0a}.curriculum-module.is-active{border-color:#cfe0ff;box-shadow:0 12px 24px #2563eb14}.curriculum-module-head{width:100%;padding:14px 14px 10px;border:0;background:transparent;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;text-align:left;cursor:pointer;font:inherit;color:inherit;-moz-appearance:none;appearance:none;-webkit-appearance:none}.curriculum-module-head:hover{background:var(--surface-soft)}.curriculum-module-head[aria-expanded=true]{padding-bottom:8px}.curriculum-module-copy{display:grid;gap:4px;min-width:0}.curriculum-module-copy small{display:none}.curriculum-module-copy strong{display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;font-weight:800;line-height:1.18;color:var(--ink);letter-spacing:-.01em}.curriculum-module-copy span{font-size:11px;line-height:1.5;color:var(--muted);white-space:nowrap;font-weight:700}.curriculum-module-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}.curriculum-module-count{grid-column:2;min-height:28px;padding:0 10px;border-radius:999px;border:1px solid var(--line);background:var(--surface-soft);display:inline-flex;align-items:center;font-size:11px;font-weight:800;line-height:1;color:var(--muted);font-variant-numeric:tabular-nums;justify-self:start}.curriculum-module-toggle-icon{width:34px;height:34px;border-radius:12px;border:1px solid #d5deea;background:#f6f8fb;color:#617187;display:inline-flex;align-items:center;justify-content:center;transition:transform .18s ease,background .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease}.curriculum-module-toggle-icon svg{width:16px;height:16px}.curriculum-module-head:hover .curriculum-module-toggle-icon,.curriculum-module-head:focus-visible .curriculum-module-toggle-icon,.curriculum-module-head[aria-expanded=true] .curriculum-module-toggle-icon{background:#eef5ff;border-color:#c9dafd;color:var(--blue);box-shadow:0 8px 18px #2563eb1f}.curriculum-module-lessons{display:grid;gap:8px;padding:4px 10px 10px;background:transparent}.curriculum-module-head[aria-expanded=true]+.curriculum-module-lessons{padding-top:2px}.curriculum-lesson-item{position:relative;min-height:58px;padding:12px 12px 12px 18px;border:1px solid #dde7f3;border-radius:18px;background:#fff;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:flex-start;gap:10px;transition:border-color .18s ease,background .18s ease,transform .18s ease,box-shadow .18s ease}.curriculum-lesson-item:before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:4px;border-radius:999px;background:transparent;transition:background .18s ease}.curriculum-lesson-item:hover,.curriculum-lesson-item:focus-visible{border-color:#bfd6ff;background:linear-gradient(180deg,#f8fbff,#eef5ff);transform:translateY(-2px);box-shadow:0 16px 28px #2563eb1f;outline:none}.curriculum-lesson-item:active{border-color:#a9c7ff;background:#eef5ff;transform:translateY(-1px);box-shadow:0 10px 18px #2563eb1a}.curriculum-lesson-item.active{border-color:#cfe0ff;background:#f3f7ff;box-shadow:0 12px 24px #2563eb14}.curriculum-lesson-item.active:before{background:var(--blue)}.curriculum-lesson-item.is-locked{border-color:#ecdcb6;background:#fffaf1}.curriculum-lesson-main{min-width:0;display:grid;grid-template-columns:26px minmax(0,1fr);align-items:center;gap:12px}.curriculum-lesson-copy{min-width:0;display:grid;gap:2px}.curriculum-lesson-title{min-width:0;display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:15px;font-weight:800;line-height:1.22;color:var(--ink);letter-spacing:-.01em}.curriculum-lesson-meta{min-width:0;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:1.45;color:var(--muted);font-weight:700}.curriculum-lesson-duration{min-width:auto;padding-left:10px;text-align:right;font-size:11px;font-weight:800;line-height:1.45;color:#7a8797;white-space:nowrap;justify-self:end;align-self:center;font-variant-numeric:tabular-nums}.curriculum-lesson-status-icon{width:26px;height:26px;border-radius:999px;border:1.5px solid currentColor;background:#fff;display:flex;align-items:center;justify-content:center;line-height:1;transition:transform .18s ease,background .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease}.curriculum-lesson-type-icon{width:34px;height:34px;border-radius:999px;background:#edf2f8;color:#617187;display:flex;align-items:center;justify-content:center;line-height:1;transition:transform .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease}.curriculum-lesson-status-icon .material-symbols-outlined,.curriculum-lesson-status-icon .tap-ui-icon{display:block;line-height:1;font-size:18px;font-variation-settings:"FILL" 0,"wght" 500,"GRAD" 0,"opsz" 20}.curriculum-lesson-status-icon .tap-ui-icon svg{width:18px;height:18px}.curriculum-lesson-type-icon .material-symbols-outlined,.curriculum-lesson-type-icon .tap-ui-icon{font-size:22px}.curriculum-lesson-type-icon .tap-ui-icon svg{width:20px;height:20px}.curriculum-lesson-status-icon.is-in_progress{color:var(--blue);background:var(--blue-soft);border-color:#c6d8ff}.curriculum-lesson-status-icon.is-completed{color:var(--green);background:var(--green-soft);border-color:#cfe8db}.curriculum-lesson-status-icon.is-open{color:#718197;background:#fff;border-color:#d3dbe6}.curriculum-lesson-status-icon.is-locked{color:var(--amber);background:var(--amber-soft);border-color:#f0d7a2}.curriculum-lesson-item:hover .curriculum-lesson-status-icon,.curriculum-lesson-item:focus-visible .curriculum-lesson-status-icon{transform:scale(1.08);box-shadow:0 6px 14px #2563eb1f}.curriculum-lesson-item:hover .curriculum-lesson-type-icon,.curriculum-lesson-item:focus-visible .curriculum-lesson-type-icon{background:#dbeafe;color:var(--blue);transform:scale(1.08);box-shadow:0 8px 16px #2563eb24}.curriculum-lesson-item.active .curriculum-lesson-title{color:var(--blue)}.curriculum-lesson-item.is-locked .curriculum-lesson-title,.curriculum-lesson-item.is-locked .curriculum-lesson-meta,.curriculum-lesson-item.is-locked .curriculum-lesson-duration{color:#8d7a52}.curriculum-filters{display:flex;gap:8px;flex-wrap:wrap}.curriculum-filter{min-height:34px;padding:0 12px;border:1px solid var(--line);border-radius:999px;background:#fff;color:#3c4043;display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:800;transition:.18s ease}.curriculum-filter strong{font-size:11px;color:var(--muted)}.curriculum-filter:hover{background:#f8f9fa}.curriculum-filter.active,.small-btn[aria-pressed=true]{background:var(--blue-soft);border-color:#d6e2ff;color:var(--blue)}@media (max-width:860px){body[data-shell-ready="0"] .utility-panel,body[data-shell-ready="0"] .utility-mask{transform:translate(100%)!important;opacity:0!important;pointer-events:none!important}.topbar-inner{grid-template-columns:minmax(0,1fr) auto}.brand-copy small,.top-actions{display:none}.mobile-top-actions{display:flex;justify-self:end}.top-mode-nav{display:none}.arena-shell{gap:12px}.arena-hero-card,.arena-stage-card,.arena-room-card,.arena-roadmap-card,.arena-ranking-card{padding:16px;border-radius:20px}.arena-hero-title{font-size:clamp(22px,8vw,28px)}.arena-card-head h4{font-size:18px}.arena-action-row{display:grid;grid-template-columns:1fr}.arena-action{width:100%}.td-quiz-wrapper{padding:12px;gap:12px;border-radius:18px}.td-q-map{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.td-q-pill{width:100%}.td-q-legend{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.td-q-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.td-q-controls.has-inline-submit{grid-template-columns:repeat(3,minmax(0,1fr))}.td-q-nav-btn{width:100%;justify-content:center}.td-q-submit-row{display:grid;grid-template-columns:1fr;gap:12px}.td-q-submit-btn{width:min(100%,288px);justify-self:center}.ul-vocab-card{padding:14px;gap:12px;border-radius:18px}.ul-vocab-pills{gap:10px}.ul-vocab-progress{height:12px}.ul-vocab-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.ul-vocab-actions{display:grid;grid-template-columns:1fr;gap:10px}.ul-vocab-actions .action-btn,.ul-vocab-actions .hero-secondary{width:100%}.tap-mobile-bottom-grid{display:grid;gap:3px}.tap-mobile-bottom-btn{position:relative;border:0;background:transparent;color:var(--muted);display:grid;justify-items:center;align-content:center;gap:2px;text-align:center;white-space:normal;line-height:1.05;transition:background-color .18s ease,color .18s ease,transform .18s ease}.tap-mobile-bottom-btn:before{content:"";position:absolute;top:3px;left:50%;width:18px;height:2px;border-radius:999px;background:currentColor;opacity:0;transform:translate(-50%) scaleX(.45);transition:opacity .18s ease,transform .22s cubic-bezier(.2,.8,.2,1)}.tap-mobile-bottom-btn.active{background:color-mix(in srgb,var(--blue,#2563eb) 10%,transparent);color:#174ea6;transform:none}.tap-mobile-bottom-btn.active:before{opacity:1;transform:translate(-50%) scaleX(1)}@media (hover:hover) and (pointer:fine){.tap-mobile-bottom-btn:not(.active):hover{background:color-mix(in srgb,var(--blue,#2563eb) 6%,transparent);color:var(--text,#1f2937)}}.tap-mobile-bottom-btn:focus-visible{outline:2px solid color-mix(in srgb,var(--blue,#2563eb) 42%,transparent);outline-offset:-2px}.tap-mobile-bottom-copy{display:block;min-width:0;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;line-height:1.05}.tap-mobile-bottom-btn .material-symbols-outlined,.tap-mobile-bottom-btn .tap-ui-icon{font-size:18px;line-height:1}.app[data-drawer-open=true]:not([data-player-v2-right-dock-variant="unified"][data-mode="curriculum"]) .tap-mobile-bottom-bar,.app[data-left-drawer-open=true] .tap-mobile-bottom-bar,.app[data-mobile-mode-sheet-open=true] .tap-mobile-bottom-bar{transform:translateY(110%);opacity:0;pointer-events:none}:root{--header-h:64px;--mobile-edge:12px;--mobile-safe-edge-left:max(var(--mobile-edge),calc(env(safe-area-inset-left,0px) + 10px));--mobile-safe-edge-right:max(var(--mobile-edge),calc(env(safe-area-inset-right,0px) + 10px));--mobile-mode-nav-h:60px;--tap-mobile-topbar-progress:0;--tap-mobile-sheet-progress:0;--tap-mobile-shell-transition-shift:0px;--tap-mobile-shell-transition-scale:1;--tap-mobile-topbar-ease:cubic-bezier(.22,.92,.28,1);--tap-mobile-border:rgba(210,217,229,.96);--tap-mobile-chrome-surface:rgba(255,255,255,.98);--tap-mobile-sheet-surface:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,250,252,.96));--tap-mobile-sheet-body:linear-gradient(180deg,#fff,#f8fbff);--tap-mobile-mask-bg:rgba(15,23,42,.18);--tap-mobile-shadow:0 -6px 18px rgba(15,23,42,.08);--tap-mobile-sheet-shadow:0 24px 56px rgba(15,23,42,.16);--tap-mobile-glass-blur:10px;--tap-mobile-mask-blur:2px;--tap-mobile-mode-sheet-duration:.32s;--tap-mobile-mode-sheet-ease:cubic-bezier(.16,1,.3,1);--tap-mobile-curriculum-sheet-duration:.36s;--tap-mobile-curriculum-sheet-ease:cubic-bezier(.18,1,.32,1)}body.theme-dark{--tap-mobile-border:rgba(148,163,184,.18);--tap-mobile-chrome-surface:linear-gradient(180deg,rgba(21,32,47,.96),rgba(14,24,38,.94));--tap-mobile-sheet-surface: radial-gradient(circle at top right,rgba(59,130,246,.14),transparent 34%), linear-gradient(180deg,rgba(21,32,47,.98),rgba(14,24,38,.95));--tap-mobile-sheet-body: radial-gradient(circle at top right,rgba(59,130,246,.1),transparent 36%), linear-gradient(180deg,rgba(17,27,41,.96),rgba(12,21,34,.94));--tap-mobile-mask-bg:rgba(2,8,23,.46);--tap-mobile-shadow:0 -8px 22px rgba(2,8,23,.24);--tap-mobile-sheet-shadow:0 22px 52px rgba(2,8,23,.42);--tap-mobile-card-border:rgba(148,163,184,.22);--tap-mobile-card-surface: radial-gradient(circle at top right,rgba(59,130,246,.12),transparent 34%), linear-gradient(180deg,rgba(24,37,56,.96),rgba(16,27,42,.94));--tap-mobile-card-surface-strong: radial-gradient(circle at top right,rgba(59,130,246,.18),transparent 34%), linear-gradient(180deg,rgba(27,41,62,.98),rgba(18,30,46,.95));--tap-mobile-card-surface-active: linear-gradient(180deg,rgba(37,99,235,.28),rgba(18,32,52,.96));--tap-mobile-card-surface-success: radial-gradient(circle at top right,rgba(74,222,128,.18),transparent 34%), linear-gradient(180deg,rgba(18,62,43,.98),rgba(14,24,38,.94));--tap-mobile-text-strong:#f3f7fd;--tap-mobile-text:#dbe7f5;--tap-mobile-text-muted:#a9b8cb;--tap-mobile-text-soft:#90a3bc}body[data-shell-mobile-perf=lite]{--tap-mobile-chrome-surface:rgba(255,255,255,.992);--tap-mobile-sheet-surface:rgba(255,255,255,.996);--tap-mobile-sheet-body:#fff;--tap-mobile-mask-bg:rgba(15,23,42,.14);--tap-mobile-shadow:0 -3px 10px rgba(15,23,42,.06);--tap-mobile-sheet-shadow:0 14px 26px rgba(15,23,42,.12);--tap-mobile-glass-blur:0px;--tap-mobile-mask-blur:0px}body.theme-dark[data-shell-mobile-perf=lite]{--tap-mobile-chrome-surface:rgba(17,24,39,.98);--tap-mobile-sheet-surface:rgba(17,24,39,.992);--tap-mobile-sheet-body:rgba(17,24,39,.996);--tap-mobile-mask-bg:rgba(2,8,23,.34)}body{background:radial-gradient(circle at 0 0,rgba(26,115,232,.08),transparent 34%),radial-gradient(circle at 100% 0,rgba(52,168,83,.05),transparent 26%),linear-gradient(180deg,#f5f8fd 0%,#edf3fb 52%,#f7faff 100%)}.topbar{padding:0}.topbar-inner,.app[data-drawer-open=true] .topbar-inner{box-sizing:border-box;min-height:calc(env(safe-area-inset-top,0px) + var(--header-h) - (var(--tap-mobile-topbar-progress,0) * 10px));padding:calc(env(safe-area-inset-top,0px) + 8px - (var(--tap-mobile-topbar-progress,0) * 3px)) var(--mobile-safe-edge-right) calc(8px - (var(--tap-mobile-topbar-progress,0) * 2px));padding-left:var(--mobile-safe-edge-left);gap:8px;border-radius:0;border-top:0;border-left:0;border-right:0;border-color:#d2d9e5eb;box-shadow:0 4px 12px #3c40430f}.brand{min-width:0;gap:8px;overflow:hidden}.brand-logo{min-width:0;flex:0 1 150px;max-width:150px;overflow:hidden}.brand-logo-img{width:100%;height:28px;max-width:100%}.brand-mark{width:32px;height:32px;border-radius:12px;font-size:16px}.brand-copy strong{font-size:13px}.menu-toggle,.icon-btn{width:40px;height:40px}.mobile-top-actions{min-width:0;gap:6px}.mobile-top-btn{min-width:0;min-height:40px;padding:0 10px;gap:6px;font-size:11px}.mobile-top-btn.is-icon{width:auto;min-width:0;min-height:40px;padding:0 12px;border-radius:999px}.mobile-top-btn:not(.is-icon){max-width:112px}.mobile-top-btn .material-symbols-outlined,.mobile-top-btn .tap-ui-icon{font-size:18px}.mobile-top-btn.is-icon .material-symbols-outlined,.mobile-top-btn.is-icon .tap-ui-icon{font-size:20px}[data-player-v2-current-mode],[data-mobile-mode-label]{display:block;max-width:68px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.main,.app[data-drawer-open=true] .main,.app[data-left-drawer-open=true] .main{padding:calc(env(safe-area-inset-top,0px) + var(--header-h) + 8px) var(--mobile-safe-edge-right) 150px;padding-left:var(--mobile-safe-edge-left)}.card{border-radius:26px;background:rgba(255,255,255,.92);box-shadow:0 12px 30px #3c404314}.topbar{position:fixed;inset:0 0 auto 0;z-index:24;pointer-events:none;background:linear-gradient(180deg,rgba(245,248,253,.94) 0%,rgba(245,248,253,.84) 72%,rgba(245,248,253,0) 100%);opacity:calc(1 - (var(--tap-mobile-sheet-progress,0) * .05));transition:background .28s var(--tap-mobile-topbar-ease),opacity .24s ease}.topbar-inner{border:1px solid var(--tap-mobile-border);border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,255,255,.86));box-shadow:0 10px 24px #0f172a0f;backdrop-filter:blur(calc(var(--tap-mobile-glass-blur) + 2px)) saturate(135%);-webkit-backdrop-filter:blur(calc(var(--tap-mobile-glass-blur) + 2px)) saturate(135%);overflow:hidden;pointer-events:auto;transform-origin:center top;transform:translateY(calc((var(--tap-mobile-topbar-progress,0) * -3px) + (var(--tap-mobile-sheet-progress,0) * -2px) + var(--tap-mobile-shell-transition-shift,0px))) scale(calc((1 - (var(--tap-mobile-topbar-progress,0) * .018) - (var(--tap-mobile-sheet-progress,0) * .012)) * var(--tap-mobile-shell-transition-scale,1)));transition:min-height .3s var(--tap-mobile-topbar-ease),padding .3s var(--tap-mobile-topbar-ease),border-radius .3s var(--tap-mobile-topbar-ease),box-shadow .28s ease,background .28s ease,transform .3s var(--tap-mobile-topbar-ease)}.brand,.brand-logo,.brand-logo-img,.mobile-top-actions,.menu-toggle,.icon-btn,.mobile-top-btn{transition:transform .26s cubic-bezier(.22,1,.36,1),gap .26s ease,max-width .26s ease,flex-basis .26s ease,height .26s ease}.brand-logo{flex-basis:calc(150px - (var(--tap-mobile-topbar-progress,0) * 22px));max-width:calc(150px - (var(--tap-mobile-topbar-progress,0) * 22px))}.brand-logo-img{height:calc(28px - (var(--tap-mobile-topbar-progress,0) * 3px))}.menu-toggle,.icon-btn,.mobile-top-btn{transform:scale(calc((1 - (var(--tap-mobile-topbar-progress,0) * .035) - (var(--tap-mobile-sheet-progress,0) * .015)) * var(--tap-mobile-shell-transition-scale,1)));transform-origin:center}body[data-shell-mobile-topbar-condensed="1"] .topbar{background:linear-gradient(180deg,rgba(245,248,253,.82) 0%,rgba(245,248,253,.58) 66%,rgba(245,248,253,0) 100%)}body[data-shell-mobile-topbar-condensed="1"] .topbar-inner{background:linear-gradient(180deg,rgba(255,255,255,.97),rgba(250,252,255,.93));box-shadow:0 12px 30px #0f172a1a}.tap-mobile-bottom-bar{left:0;right:0;bottom:0;padding:5px 8px calc(env(safe-area-inset-bottom,0px) + 4px);border-radius:0;border:0;border-top:1px solid var(--tap-mobile-border);box-shadow:var(--tap-mobile-shadow);background:var(--tap-mobile-chrome-surface);backdrop-filter:blur(var(--tap-mobile-glass-blur)) saturate(130%);-webkit-backdrop-filter:blur(var(--tap-mobile-glass-blur)) saturate(130%);transform:translate3d(0,calc(var(--tap-mobile-shell-transition-shift,0px) * -.55),0);opacity:calc(1 - (var(--tap-mobile-sheet-progress,0) * .06));transition:transform .22s ease,opacity .18s ease,background .22s ease}body[data-shell-keyboard-open="1"] .tap-mobile-bottom-bar{opacity:0;pointer-events:none;transform:translate3d(0,calc(100% + env(safe-area-inset-bottom,0px) + 18px),0)}.tap-mobile-bottom-btn{min-height:48px;padding:5px 4px 4px;border-radius:12px;font-size:9.5px}.tap-mobile-bottom-btn,.mobile-top-btn,.menu-toggle,.icon-btn{touch-action:manipulation;-webkit-tap-highlight-color:transparent}.mobile-mode-sheet.tap-mobile-sheet{left:var(--mobile-safe-edge-left);right:var(--mobile-safe-edge-right);top:auto;bottom:calc(env(safe-area-inset-bottom,0px) + 92px);max-height:min(calc(100dvh - env(safe-area-inset-top,0px) - var(--header-h) - 124px),640px);overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;border-radius:28px;padding:16px;gap:12px;background:var(--tap-mobile-sheet-surface);box-shadow:var(--tap-mobile-sheet-shadow);display:grid;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(22px) scale(.985);transform-origin:center bottom;transition:transform var(--tap-mobile-mode-sheet-duration) var(--tap-mobile-mode-sheet-ease),opacity .22s ease,visibility 0s linear var(--tap-mobile-mode-sheet-duration);will-change:transform,opacity}.tap-mobile-sheet-mask{display:block;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease,visibility 0s linear .18s}.app[data-mobile-mode-sheet-open=true] .tap-mobile-sheet-mask,.app[data-mobile-mode-sheet-open=true] .mobile-mode-sheet.tap-mobile-sheet{opacity:1;visibility:visible;transition-delay:0s}.app[data-mobile-mode-sheet-open=true] .tap-mobile-sheet-mask{pointer-events:auto}.app[data-mobile-mode-sheet-open=true] .mobile-mode-sheet.tap-mobile-sheet{pointer-events:auto;transform:translateY(0) scale(1)}.tap-mobile-sheet-handle{width:44px;height:5px;margin:2px auto;border-radius:999px;background:rgba(148,163,184,.42);cursor:grab;transform-origin:center;transition:width .22s cubic-bezier(.22,1,.36,1),background .18s ease,transform .22s cubic-bezier(.22,1,.36,1),opacity .18s ease}.tap-mobile-sheet-head{align-items:flex-start;gap:12px}.tap-mobile-sheet[data-tap-mobile-sheet-dragging=true]{transition:none!important}.tap-mobile-sheet[data-tap-mobile-sheet-dragging=true] .tap-mobile-sheet-handle{width:52px;background:rgba(148,163,184,.56);transform:translateY(1px) scaleX(calc(.98 + ((1 - var(--tap-mobile-sheet-progress,1)) * .14)))}body[data-player-v2-mobile-sheet-dragging=true] .topbar,body[data-player-v2-mobile-sheet-dragging=true] .topbar-inner,body[data-player-v2-mobile-sheet-dragging=true] .tap-mobile-bottom-bar{transition:none!important}body[data-player-v2-shell-transitioning="1"] [data-player-v2-mode-panel=curriculum],body[data-player-v2-shell-transitioning="1"] [data-player-v2-shell-transition-ghost="1"]{pointer-events:none;will-change:transform,opacity;backface-visibility:hidden;-webkit-backface-visibility:hidden}body[data-player-v2-shell-transitioning="1"] .topbar-inner{box-shadow:0 16px 34px #0f172a1f}.tap-mobile-sheet-copy{display:grid;gap:4px;min-width:0}.tap-mobile-sheet-copy strong{font-size:18px;font-weight:800;line-height:1.2}.tap-mobile-sheet-grid{gap:10px}.utility-mask,.left-context-mask{display:block;background:var(--tap-mobile-mask-bg);backdrop-filter:blur(var(--tap-mobile-mask-blur));-webkit-backdrop-filter:blur(var(--tap-mobile-mask-blur))}.utility-shell{inset:0;width:100vw;max-width:100vw;z-index:48;overflow:hidden}.utility-mask,.app[data-drawer-open=true] .utility-mask,body[data-shell-right-drawer-open="1"] .utility-mask{inset:0}.utility-panel{--utility-mobile-left-gutter:clamp(44px,14vw,72px);position:fixed;top:0;right:0;left:auto;bottom:0;width:min(calc(100vw - var(--utility-mobile-left-gutter)),var(--panel-w));max-width:calc(100vw - var(--utility-mobile-left-gutter));min-width:0;height:auto;border-top:0;border-right:0;border-bottom:0;border-left:1px solid rgba(201,214,228,.96);border-radius:0;grid-template-rows:64px auto minmax(0,1fr);transform:translate(24px);box-shadow:-18px 0 32px #0f172a1f;overflow:hidden}.app[data-drawer-open=false] .utility-panel,body[data-shell-right-drawer-open="0"] .utility-panel{transform:translate(24px);opacity:0;visibility:hidden;pointer-events:none}.app[data-drawer-open=true] .utility-panel,body[data-shell-right-drawer-open="1"] .utility-panel{transform:translate(0);visibility:visible;pointer-events:auto}.app[data-mobile-mode-sheet-open=true] .utility-mask,.app[data-mobile-mode-sheet-open=true] .utility-panel,.app[data-today-open=true] .utility-mask,.app[data-today-open=true] .utility-panel,body[data-shell-mode-sheet-open="1"] .utility-mask,body[data-shell-mode-sheet-open="1"] .utility-panel,body[data-shell-today-open="1"] .utility-mask,body[data-shell-today-open="1"] .utility-panel,body.ul2-has-community-help-popup .utility-mask,body.ul2-has-community-help-popup .utility-panel{pointer-events:none!important}.utility-head{background:var(--tap-mobile-chrome-surface)}.utility-mobile-nav{background:var(--tap-mobile-chrome-surface);backdrop-filter:blur(var(--tap-mobile-glass-blur)) saturate(128%);-webkit-backdrop-filter:blur(var(--tap-mobile-glass-blur)) saturate(128%)}.utility-list[data-queue-mode=curriculum],.curriculum-module-list{gap:8px}.curriculum-module{border-radius:16px;box-shadow:none}.curriculum-module.is-active{box-shadow:0 8px 18px #2563eb14}.curriculum-module-head{padding:10px 12px 8px;gap:10px}.curriculum-module-head[aria-expanded=true]{padding-bottom:6px}.curriculum-module-copy{gap:2px}.curriculum-module-copy strong{font-size:14px;line-height:1.16}.curriculum-module-copy span{font-size:10px;line-height:1.35}.curriculum-module-actions{gap:6px}.curriculum-module-count{min-height:24px;padding:0 8px;font-size:10px}.curriculum-module-toggle-icon{font-size:16px}.curriculum-module-lessons{gap:6px;padding:2px 8px 8px}.curriculum-lesson-item{padding:10px 10px 10px 14px;border-radius:14px;gap:10px}.curriculum-lesson-item:before{top:8px;bottom:8px;width:3px}.utility-list[data-queue-mode=curriculum] .curriculum-lesson-main{grid-template-columns:24px 32px minmax(0,1fr);gap:8px}.curriculum-lesson-title{font-size:13px;line-height:1.22;-webkit-line-clamp:1}.curriculum-lesson-duration{font-size:11px}.curriculum-lesson-meta{font-size:10px}.curriculum-lesson-status-icon{width:24px;height:24px}.curriculum-lesson-type-icon{width:32px;height:32px;border-radius:999px}.curriculum-lesson-status-icon .tap-ui-icon svg{width:17px;height:17px}.curriculum-lesson-status-icon .material-symbols-outlined,.curriculum-lesson-status-icon .tap-ui-icon{font-size:17px}.curriculum-lesson-type-icon .tap-ui-icon svg{width:18px;height:18px}.curriculum-lesson-type-icon .material-symbols-outlined,.curriculum-lesson-type-icon .tap-ui-icon{font-size:20px}.left-context-shell{top:0;left:0;right:0;bottom:0;width:auto;z-index:38;padding:calc(env(safe-area-inset-top,0px) + 10px) 10px calc(env(safe-area-inset-bottom,0px) + 10px)}.left-context-panel{height:100%;border-radius:28px;grid-template-rows:64px minmax(0,1fr);transform:translateY(24px) scale(.98);transform-origin:center bottom;box-shadow:0 18px 42px #0f172a29;pointer-events:none}.app[data-left-drawer-open=true] .left-context-panel,body[data-shell-left-drawer-open="1"] .left-context-panel{transform:translateY(0) scale(1);pointer-events:auto}.utility-list[data-queue-mode=curriculum] .curriculum-menu-search{display:none}.hero-primary,.hero-secondary,.ghost-btn,.small-btn,.action-btn,.compose-btn{min-height:38px;padding:0 14px;font-size:12px}.chip,.queue-chip,.curriculum-meta-pill{font-size:11px}.utility-mobile-btn .material-symbols-outlined,.utility-mobile-btn .tap-ui-icon{font-size:18px}.curriculum-nav-row{grid-template-columns:minmax(0,1fr) minmax(108px,.78fr) minmax(0,1fr);gap:8px;align-items:start}.curriculum-nav-row>*{width:100%;min-width:0}.curriculum-nav-row .ghost-btn,.curriculum-nav-row .action-btn{min-height:40px;min-width:0;padding:0 10px;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.curriculum-nav-action-stack{min-width:0}.curriculum-nav-feedback{display:none}@keyframes liveMobileNowGlow{0%,to{box-shadow:inset 0 1px #ffffffeb,0 0 0 2px #22c55e2e,0 0 0 6px #dcfce7a8,0 0 18px #4ade8033,0 16px 28px -22px #16a34a2e}50%{box-shadow:inset 0 1px #fffffff0,0 0 0 2px #22c55e4d,0 0 0 10px #bbf7d0d1,0 0 28px #4ade8057,0 18px 32px -22px #15803d3d}}.td-q-counter{font-size:11px}.td-q-pill,.td-q-no{font-size:12px}.question p{font-size:13px;line-height:1.58}.td-option{line-height:1.4}.td-q-nav-btn,.td-q-submit-btn{min-height:40px;font-size:12px}.ul-vocab-kicker{font-size:10px}.ul-vocab-sub{font-size:12px;line-height:1.58}.ul-vocab-pill{font-size:11px;padding:4px 8px}.ul-vocab-metrics{gap:8px}.ul-vocab-metric{padding:10px 12px;border-radius:16px}.ul-vocab-metric strong{font-size:18px}.ul-vocab-metric span{font-size:11px}.ul-vocab-actions .action-btn,.ul-vocab-actions .hero-secondary{min-height:40px}.comment{padding:14px;border-radius:16px;gap:8px}.comment-author strong{font-size:13px}.comment p{font-size:12px;line-height:1.6}.utility-head,.left-context-head{min-height:58px;padding:0 14px}.utility-head strong,.left-context-head strong{font-size:16px;line-height:1.2;letter-spacing:-.02em}.utility-mobile-nav{padding:10px 10px 2px;gap:8px}.utility-mobile-grid{gap:5px}.utility-mobile-btn{min-height:46px;padding:6px 2px;border-radius:13px;font-size:9px;line-height:1.18}.utility-mobile-btn span:last-child{line-height:1.18}.utility-body,.left-context-body{padding:10px 10px calc(env(safe-area-inset-bottom,0px) + 16px);gap:10px}.drawer-filter-shell{gap:8px;padding:10px 10px 12px;border-radius:18px;box-shadow:none}.drawer-filter-shell-copy{gap:0}.drawer-filter-shell-copy small{display:none}.drawer-filter-shell-copy strong{font-size:12px}.drawer-filter-shell-active{min-height:28px;padding:0 10px;font-size:10.5px}.curriculum-rail-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;overflow:visible;padding:0}.curriculum-rail-filters .curriculum-filter{width:100%;min-width:0;min-height:34px;padding:5px 6px;gap:4px;border-radius:14px;align-items:center;justify-content:space-between}.curriculum-rail-filters .curriculum-filter:last-child:nth-child(odd){grid-column:auto}.curriculum-rail-filters .curriculum-filter span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.05;display:block;font-size:9.5px;font-weight:700;letter-spacing:-.01em}.curriculum-rail-filters .curriculum-filter strong{min-width:12px;margin-left:4px;font-size:8.5px;line-height:1;font-weight:700}.utility-item,.context-summary-card{border-radius:16px}.utility-item{padding:12px 13px;gap:4px}.utility-item strong{font-size:12px;line-height:1.38}.utility-item span,.utility-item small,.utility-item p{font-size:10.5px;line-height:1.46}.curriculum-filter{min-height:31px;padding:0 10px;gap:6px;font-size:11px}.curriculum-filter strong{font-size:10px}.note-box{min-height:136px;padding:12px 13px;border-radius:16px;font-size:13px;line-height:1.58}.timeline{gap:4px}.timeline-row{display:grid;grid-template-columns:84px minmax(0,1fr);align-items:start;gap:10px;padding:10px 0;font-size:11px}.timeline-row span{font-size:10.5px;line-height:1.4;color:var(--muted)}.timeline-row strong{font-size:12px;line-height:1.44}.context-summary-card{padding:12px 13px;gap:10px}.context-summary-card small{font-size:10px;letter-spacing:.06em}.context-summary-card strong{font-size:16px;line-height:1.26}.context-summary-grid{gap:8px}.context-stat{padding:10px 11px;border-radius:14px;gap:3px}.context-stat span{font-size:9px;letter-spacing:.06em}.context-stat strong{font-size:16px}.context-copy{font-size:12px;line-height:1.58}.context-action-row{display:grid;justify-content:stretch}.context-action-row .small-btn{width:100%;justify-content:center}.curriculum-context-note-head strong{font-size:15px}.curriculum-context-note-list{gap:8px}.curriculum-context-note-item{padding:11px 12px;border-radius:14px;gap:8px}.curriculum-context-note-top strong{font-size:12px}.curriculum-context-note-top span{min-height:22px;padding:0 8px;font-size:10px}.curriculum-context-note-item p{font-size:12px;line-height:1.56}.curriculum-context-note-item small{font-size:10px;line-height:1.45}.curriculum-loop-side-actions{display:grid;grid-column:1 / -1;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;gap:8px;align-self:auto}.curriculum-loop-slot .small-btn,.curriculum-loop-side-actions .small-btn{width:100%;max-width:100%;min-width:0;min-height:36px;padding:0 10px;box-sizing:border-box;justify-content:center;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.curriculum-loop-side-actions .small-btn{min-height:36px;height:auto}.curriculum-loop-readout{width:100%;min-width:0;min-height:34px;padding:0 10px;border-radius:14px;font-size:12px}.td-q-head{gap:8px}.td-q-map{gap:6px}.td-q-pill{min-width:0;min-height:34px;padding:0 8px}.td-q-legend{gap:8px 10px;font-size:11px}.td-q-card{padding:12px;border-radius:16px;gap:12px}.td-q-title{grid-template-columns:auto 1fr;gap:10px}.td-q-no{width:30px;height:30px;border-radius:10px}.td-q-flag-btn{grid-column:2;justify-self:start;min-width:0;min-height:34px;padding:0 10px;font-size:11px}.td-q-text{font-size:clamp(16px,6vw,20px);line-height:1.28}.td-options{grid-template-columns:1fr;gap:8px}.td-option{padding:12px;border-radius:14px;font-size:13px}.td-opt-key{width:26px;height:26px;font-size:11px}body.theme-dark .utility-head,body.theme-dark .left-context-head,body.theme-dark .utility-mobile-nav{background:var(--tap-mobile-chrome-surface);border-color:var(--tap-mobile-border);color:#e6edf7;box-shadow:0 18px 42px #0f172a2e}body.theme-dark .topbar{background:linear-gradient(180deg,rgba(11,19,31,.88) 0%,rgba(11,19,31,.58) 68%,rgba(11,19,31,0) 100%)}body.theme-dark .topbar-inner{background:linear-gradient(180deg,rgba(21,32,47,.94),rgba(14,24,38,.9));border-color:#94a3b82e;box-shadow:0 12px 30px #02081742}body.theme-dark[data-shell-mobile-topbar-condensed="1"] .topbar{background:linear-gradient(180deg,rgba(11,19,31,.76) 0%,rgba(11,19,31,.44) 68%,rgba(11,19,31,0) 100%)}body.theme-dark[data-shell-mobile-topbar-condensed="1"] .topbar-inner{background:linear-gradient(180deg,rgba(21,32,47,.98),rgba(14,24,38,.94))}body.theme-dark .utility-body,body.theme-dark .left-context-body{background:radial-gradient(circle at top right,rgba(59,130,246,.1),transparent 36%),linear-gradient(180deg,rgba(18,28,43,.92),rgba(12,21,34,.9));color:#e6edf7}body.theme-dark .tap-mobile-sheet{background:var(--tap-mobile-sheet-surface);border-color:var(--tap-mobile-border);box-shadow:var(--tap-mobile-sheet-shadow)}body.theme-dark .tap-mobile-sheet-handle{background:rgba(148,163,184,.34)}body.theme-dark .tap-mobile-sheet-copy strong{color:#f3f7fd}body.theme-dark .tap-mobile-sheet-head{border-bottom-color:#94a3b82e;background:linear-gradient(180deg,rgba(30,44,65,.78),rgba(20,32,49,.48))}body.theme-dark .tap-mobile-sheet-close,body.theme-dark .tap-mobile-sheet .icon-btn{background:rgba(255,255,255,.08);border-color:#94a3b838;color:var(--tap-mobile-text)}body.theme-dark .tap-mobile-sheet-close:hover,body.theme-dark .tap-mobile-sheet .icon-btn:hover{background:rgba(255,255,255,.12);border-color:#94a3b852;color:#f8fbff}body.theme-dark .tap-mobile-sheet .mobile-mode-sheet-copy small,body.theme-dark .tap-mobile-sheet .mobile-mode-sheet-btn-copy small{color:#9fb0c8}body.theme-dark .mobile-mode-sheet-btn,body.theme-dark .tap-mobile-sheet-item{background:var(--tap-mobile-card-surface);border-color:var(--tap-mobile-card-border);color:var(--tap-mobile-text);box-shadow:0 16px 32px #02081738}body.theme-dark .mobile-mode-sheet-btn strong,body.theme-dark .tap-mobile-sheet-item-copy strong{color:var(--tap-mobile-text-strong)}body.theme-dark .mobile-mode-sheet-btn small,body.theme-dark .tap-mobile-sheet-item-copy small{color:var(--tap-mobile-text-muted)}body.theme-dark .mobile-mode-sheet-btn:hover,body.theme-dark .tap-mobile-sheet-item:hover{background:var(--tap-mobile-card-surface-strong);border-color:#60a5fa47}body.theme-dark .mobile-mode-sheet-btn.active,body.theme-dark .tap-mobile-sheet-item.active{background:var(--tap-mobile-card-surface-active);border-color:#60a5fa70;color:#eff6ff;box-shadow:0 18px 34px #02081742,0 0 0 1px #60a5fa29}body.theme-dark .mobile-mode-sheet-btn.active strong,body.theme-dark .tap-mobile-sheet-item.active .tap-mobile-sheet-item-copy strong{color:#eff6ff}body.theme-dark .mobile-mode-sheet-btn.active small,body.theme-dark .tap-mobile-sheet-item.active .tap-mobile-sheet-item-copy small{color:#cfe0ff}body.theme-dark .mobile-mode-sheet-btn.active:before,body.theme-dark .tap-mobile-sheet-item.active:before{background:linear-gradient(180deg,#60a5fa 0%,#22d3ee 100%)}body.theme-dark .curriculum-context-note-item{background:var(--tap-mobile-card-surface);border-color:var(--tap-mobile-card-border);color:var(--tap-mobile-text);box-shadow:0 16px 32px #0208172e}body.theme-dark .curriculum-context-note-top strong{color:var(--tap-mobile-text-strong)}body.theme-dark .curriculum-context-note-item p,body.theme-dark .curriculum-context-note-item small{color:var(--tap-mobile-text-muted)}body.theme-dark .curriculum-context-note-top span{background:rgba(15,23,42,.74);border-color:#94a3b83d;color:#c7d4e4}body.theme-dark .tap-mobile-bottom-btn{color:#c7d4e4}body.theme-dark .tap-mobile-bottom-btn.active{background:rgba(59,130,246,.16);color:#eff6ff}body.theme-dark .tap-mobile-bottom-bar{background:var(--tap-mobile-chrome-surface)!important;border-top-color:var(--tap-mobile-border)!important;color:var(--tap-mobile-text)!important;box-shadow:var(--tap-mobile-shadow)!important}body[data-shell-mobile-perf=lite] .topbar-inner,body[data-shell-mobile-perf=lite] .tap-mobile-bottom-bar,body[data-shell-mobile-perf=lite] .utility-mobile-nav,body[data-shell-mobile-perf=lite] .utility-mask,body[data-shell-mobile-perf=lite] .left-context-mask,body[data-shell-mobile-perf=lite] .mobile-mode-sheet-mask{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}body[data-shell-mobile-perf=lite] .mobile-mode-sheet.tap-mobile-sheet{transition:opacity .14s ease,visibility 0s linear .14s;transform:none!important;will-change:auto}@media (prefers-reduced-motion: reduce){.topbar,.topbar-inner,.tap-mobile-sheet-mask,.mobile-mode-sheet.tap-mobile-sheet{transition-duration:.01ms!important;animation:none!important}.topbar-inner,.mobile-mode-sheet.tap-mobile-sheet{transform:none!important}}}@media (max-width:360px){.timeline-row{grid-template-columns:72px minmax(0,1fr)}}@media (max-width:640px){.brand-logo{flex-basis:140px;max-width:140px}.brand-logo-img{width:100%;height:28px}.summary-strip{grid-template-columns:1fr 1fr}.summary-stat{min-width:0}}@media (max-width:420px){.mobile-top-btn.is-icon{width:44px;min-width:44px;min-height:44px;padding:0}.mobile-top-btn.is-icon span:last-child{display:none}.mobile-top-btn:not(.is-icon){max-width:96px;padding:0 9px}[data-player-v2-current-mode],[data-mobile-mode-label]{max-width:54px}}body.theme-dark .top-actions .icon-btn,body.theme-dark .topbar-preferences .utility-theme-toggle,body.theme-dark .topbar-preferences .utility-language-toggle,body.theme-dark .topbar-preferences .utility-exit-link{background:rgba(255,255,255,.1)!important;border-color:#94a3b847!important;color:#dbe7f5!important;box-shadow:0 10px 22px #0f172a2e!important}body.theme-dark .top-actions .icon-btn:hover,body.theme-dark .topbar-preferences .utility-theme-toggle:hover,body.theme-dark .topbar-preferences .utility-language-toggle:hover,body.theme-dark .topbar-preferences .utility-exit-link:hover{background:rgba(255,255,255,.16)!important;border-color:#94a3b85c!important;color:#f8fbff!important}body.theme-dark .utility-rail{background:linear-gradient(180deg,rgba(23,35,54,.94),rgba(13,23,38,.92))!important;border-left-color:#94a3b838!important;box-shadow:-10px 0 26px #02081747!important;backdrop-filter:blur(24px) saturate(155%)!important;-webkit-backdrop-filter:blur(24px) saturate(155%)!important}body.theme-dark .utility-toggle{background:rgba(255,255,255,.08)!important;border-color:#94a3b83d!important;color:#dbe7f5!important}body.theme-dark .utility-btn{background:rgba(255,255,255,.03)!important;color:#9fb0c5!important;border-color:transparent!important;box-shadow:none!important}body.theme-dark .utility-btn:hover,body.theme-dark .utility-toggle:hover{background:rgba(255,255,255,.1)!important;border-color:#94a3b847!important;color:#f8fbff!important}body.theme-dark .utility-btn.active{background:linear-gradient(180deg,rgba(59,130,246,.22),rgba(37,99,235,.14))!important;color:#dbeafe!important;border-color:#60a5fa85!important;box-shadow:inset 0 0 0 1px #93c5fd1f,0 8px 20px #2563eb2e!important}body.theme-dark .top-mode-btn{background:rgba(255,255,255,.08)!important;border-color:#94a3b83d!important;color:#dbe7f5!important;box-shadow:0 10px 22px #0f172a24!important}body.theme-dark .top-mode-btn:hover{background:rgba(255,255,255,.14)!important;border-color:#94a3b857!important;color:#f8fbff!important}body.theme-dark .top-mode-btn.active{background:linear-gradient(180deg,rgba(59,130,246,.24),rgba(37,99,235,.16))!important;border-color:#60a5fa8f!important;color:#eff6ff!important;box-shadow:inset 0 0 0 1px #93c5fd1f,0 10px 24px #2563eb2e!important}body.theme-dark .top-mode-btn[disabled]{background:rgba(255,255,255,.05)!important;border-color:#94a3b82e!important;color:#90a0b7!important}body.theme-dark[data-shell-variant=tap_player] .top-mode-btn-note{color:#95a6bc!important}body.theme-dark[data-shell-variant=tap_player] .top-mode-btn-badge{background:rgba(59,130,246,.16)!important;border-color:#60a5fa57!important;color:#dbeafe!important}body.theme-dark[data-shell-variant=tap_player] .top-mode-btn.is-home{background:linear-gradient(180deg,rgba(59,130,246,.18),rgba(14,165,233,.1))!important;border-color:#60a5fa7a!important;box-shadow:0 16px 30px #0f172a38!important}body.theme-dark[data-shell-variant=tap_player] .top-mode-btn.is-home .top-mode-btn-note{color:#bfdbfe!important}body.theme-dark[data-shell-variant=tap_player] .top-mode-btn[data-player-v2-mode-tone=success] .top-mode-btn-note{color:#86efac!important}body.theme-dark[data-shell-variant=tap_player] .top-mode-btn[data-player-v2-mode-tone=success] .top-mode-btn-badge{background:rgba(16,185,129,.18)!important;border-color:#34d39961!important;color:#bbf7d0!important}body.theme-dark[data-shell-variant=tap_player] .top-mode-btn[data-player-v2-mode-tone=warning] .top-mode-btn-note{color:#fcd34d!important}body.theme-dark[data-shell-variant=tap_player] .top-mode-btn[data-player-v2-mode-tone=warning] .top-mode-btn-badge{background:rgba(245,158,11,.18)!important;border-color:#fbbf2466!important;color:#fde68a!important}body.theme-dark .summary-strip{background:linear-gradient(180deg,rgba(37,52,77,.74),rgba(22,35,54,.66))!important;border-color:#94a3b83d!important;box-shadow:0 18px 40px #0f172a29!important;backdrop-filter:blur(24px) saturate(160%)!important;-webkit-backdrop-filter:blur(24px) saturate(160%)!important}body.theme-dark .summary-main small{color:#8fa1b8!important}body.theme-dark .summary-main strong{color:#f3f7fd!important}body.theme-dark .summary-pill{background:rgba(16,185,129,.16)!important;border:1px solid rgba(52,211,153,.22)!important;color:#86efac!important;box-shadow:none!important}body.theme-dark .summary-stat{background:linear-gradient(180deg,rgba(20,32,49,.88),rgba(12,23,38,.84))!important;border-color:#94a3b82e!important;color:#eff6ff!important;box-shadow:inset 0 1px #ffffff08!important}body.theme-dark .summary-stat strong{color:#f8fbff!important}body.theme-dark .summary-stat span{color:#a5b4c7!important}.tap-shell-surface{min-height:100%;display:grid;grid-template-rows:auto minmax(0,1fr)}.tap-shell-surface-head{min-height:var(--header-h);padding:0 14px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px;background:rgba(255,255,255,.96)}.tap-shell-surface-head-copy{min-width:0;display:grid;gap:4px}.tap-shell-surface-kicker{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:800}.tap-shell-surface-title{font-size:16px;line-height:1.25;font-weight:800;color:#202124}.tap-shell-surface-copy{font-size:12px;line-height:1.6;color:var(--muted)}.tap-shell-surface[data-player-v2-shell-surface-mode=live] .tap-shell-surface-head{min-height:72px;padding:0 20px;background:rgba(255,255,255,.98)}.tap-shell-surface[data-player-v2-shell-surface-mode=live] .tap-shell-surface-head-copy{gap:0}.tap-shell-surface[data-player-v2-shell-surface-mode=live] .tap-shell-surface-kicker,.tap-shell-surface[data-player-v2-shell-surface-mode=live] .tap-shell-surface-copy{display:none}.tap-shell-surface[data-player-v2-shell-surface-mode=live] .tap-shell-surface-title{font-size:17px}.tap-shell-surface-close{width:44px;height:44px;border-radius:999px;border:1px solid var(--line-strong);background:#fff;color:#3c4043;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:.18s ease;box-shadow:0 8px 18px #0f172a14}.tap-shell-surface-close:hover{background:#f8f9fa}.tap-shell-surface-body,.panel-stack-body{padding:16px;display:grid;gap:16px;align-content:start;min-width:0}.drawer-filter-shell{display:grid;gap:10px;padding:12px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,#fff 0%,#f6f9ff 100%);box-shadow:0 10px 24px #0f172a0f}.drawer-filter-shell-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.drawer-filter-shell-copy{min-width:0;display:grid;gap:2px}.drawer-filter-shell-copy small{margin:0;font-size:10px;line-height:1.2;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:800}.drawer-filter-shell-copy strong{font-size:13px;line-height:1.3;font-weight:800;color:var(--ink)}.drawer-filter-shell-active{flex:0 0 auto;min-height:30px;padding:0 12px;border-radius:999px;border:1px solid rgba(59,130,246,.14);background:#eef4ff;color:var(--blue);display:inline-flex;align-items:center;font-size:11px;line-height:1;font-weight:800;white-space:nowrap}.tap-shell-tab-strip{display:grid;gap:12px}.tap-shell-surface[data-player-v2-shell-surface-mode=live] .tap-shell-surface-body{padding:14px 16px 18px;gap:14px}.tap-shell-surface[data-player-v2-shell-surface-mode=live] .tap-shell-tab-strip{gap:10px}.ul2-shell-tab-row{display:flex;gap:10px;flex-wrap:wrap}.ul2-shell-tab{min-height:38px;padding:0 14px;border-radius:999px;border:1px solid var(--line-strong);background:#fff;color:#5f6368;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:13px;font-weight:800;cursor:pointer;transition:.18s ease}.ul2-shell-tab:hover{background:#f8f9fa}.ul2-shell-tab.is-active,.ul2-shell-tab.active{background:linear-gradient(180deg,rgba(240,247,255,.96),rgba(226,241,255,.96));border-color:#1a73e847;color:#1967d2;box-shadow:0 10px 24px #1a73e81a}.panel-section,.ul2-shell-drawer-section{display:grid;gap:12px}.panel-section+.panel-section,.ul2-shell-drawer-section+.ul2-shell-drawer-section{padding-top:16px;border-top:1px solid var(--line)}.panel-title,.ul2-shell-drawer-section-title{font-size:18px;line-height:1.25;font-weight:800;color:#202124}.panel-copy,.ul2-shell-drawer-copy{font-size:13px;line-height:1.7;color:var(--muted)}.panel-pill-row,.ul2-shell-pill-row{display:flex;flex-wrap:wrap;gap:8px}.panel-pill,.ul2-shell-pill{min-height:36px;padding:0 12px;border-radius:999px;border:1px solid var(--line);background:#fff;color:#5f6368;display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700}.panel-actions{display:flex;flex-wrap:wrap;gap:10px}.panel-action{min-height:40px;border-radius:999px;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:13px;font-weight:800;border:0;background:var(--blue);color:#fff;box-shadow:0 10px 24px #1a73e82e;transition:.18s ease}.panel-action:hover{background:#1765cc}.panel-action.is-secondary{border:1px solid var(--line-strong);background:#fff;color:#3c4043;box-shadow:none}.panel-action.is-secondary:hover{background:#f8f9fa}body.theme-dark .tap-shell-surface-head{background:rgba(21,32,47,.94);border-color:#94a3b82e}body.theme-dark .tap-shell-surface-title,body.theme-dark .panel-title,body.theme-dark .ul2-shell-drawer-section-title{color:#f3f7fd}body.theme-dark .tap-shell-surface-copy,body.theme-dark .panel-copy,body.theme-dark .ul2-shell-drawer-copy,body.theme-dark .tap-shell-surface-kicker{color:#96a4b8}body.theme-dark .tap-shell-surface-close,body.theme-dark .panel-pill,body.theme-dark .ul2-shell-tab,body.theme-dark .ul2-shell-pill,body.theme-dark .panel-action.is-secondary{background:rgba(15,23,36,.88);border-color:#94a3b82e;color:#e6edf7}body.theme-dark .tap-shell-surface-close:hover,body.theme-dark .ul2-shell-tab:hover,body.theme-dark .panel-action.is-secondary:hover{background:rgba(30,41,59,.9)}body.theme-dark .ul2-shell-tab.is-active,body.theme-dark .ul2-shell-tab.active{background:linear-gradient(180deg,rgba(26,115,232,.32),rgba(37,99,235,.24));border-color:#60a5fa6b;color:#dbeafe}body.theme-dark .panel-section+.panel-section,body.theme-dark .ul2-shell-drawer-section+.ul2-shell-drawer-section{border-color:#94a3b829}@media (max-width:767px){.tap-shell-surface-body,.panel-stack-body{padding:14px}.ul2-shell-tab-row,.panel-pill-row,.ul2-shell-pill-row,.panel-actions{gap:8px}}body.theme-dark .drawer-filter-shell{background:linear-gradient(180deg,rgba(36,50,74,.78),rgba(22,34,53,.68));border-color:#94a3b83d;box-shadow:0 18px 42px #0f172a2e;backdrop-filter:blur(20px) saturate(155%);-webkit-backdrop-filter:blur(20px) saturate(155%)}body.theme-dark .drawer-filter-shell-copy strong{color:#f3f7fd}body.theme-dark .drawer-filter-shell-active{background:rgba(59,130,246,.18);border-color:#60a5fa57;color:#bfdbfe}@media (min-width:861px){.topbar{position:relative!important;inset:auto!important;top:auto!important;left:auto!important;right:auto!important;bottom:auto!important;padding:0!important;z-index:4!important}.topbar-inner{position:relative!important;transform:none!important}}:root{--tap-type-body-family: "Be Vietnam Pro", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--tap-type-display-family: "Be Vietnam Pro", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--tap-type-weight-label: 500;--tap-type-weight-action: 600;--tap-type-weight-title: 600;--tap-type-weight-display: 600;--tap-type-track-label: .02em;--tap-type-track-label-soft: .01em;--tap-type-track-title: -.01em;--tap-type-track-display: -.018em;--tap-type-line-copy: 1.6;--tap-type-line-heading: 1.18;--tap-type-line-display: 1.08}html[data-td-font-stack=system_ui]{--tap-type-body-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--tap-type-display-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--tap-type-weight-label: 500;--tap-type-weight-action: 600;--tap-type-weight-title: 600;--tap-type-weight-display: 600;--tap-type-track-label: .01em;--tap-type-track-label-soft: 0;--tap-type-track-title: -.008em;--tap-type-track-display: -.012em;--tap-type-line-copy: 1.56}body[data-shell-variant=tap_player]{font-family:var(--tap-type-body-family);--font: var(--tap-type-body-family);--ul2-font-body: var(--tap-type-body-family);--ul2-font-display: var(--tap-type-display-family);font-kerning:normal;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body[data-shell-variant=tap_player] .brand-copy small,body[data-shell-variant=tap_player] .metric-card span,body[data-shell-variant=tap_player] .mini-card span,body[data-shell-variant=tap_player] .summary-main small,body[data-shell-variant=tap_player] .summary-pill,body[data-shell-variant=tap_player] .tap-shell-surface-kicker,body[data-shell-variant=tap_player] .utility-group-label,body[data-shell-variant=tap_player] .context-summary-card small,body[data-shell-variant=tap_player] .context-stat span,body[data-shell-variant=tap_player] .curriculum-menu-toolbar strong,body[data-shell-variant=tap_player] .ul2-eyebrow,body[data-shell-variant=tap_player] .ul2-panel-kicker,body[data-shell-variant=tap_player] .ul2-section-label,body[data-shell-variant=tap_player] .ul2-mode-pill-state,body[data-shell-variant=tap_player] .ul2-stat-label{font-weight:var(--tap-type-weight-label);letter-spacing:var(--tap-type-track-label-soft);line-height:1.34;text-transform:none}body[data-shell-variant=tap_player] .top-mode-btn,body[data-shell-variant=tap_player] .chip,body[data-shell-variant=tap_player] .hero-primary,body[data-shell-variant=tap_player] .hero-secondary,body[data-shell-variant=tap_player] .ghost-btn,body[data-shell-variant=tap_player] .small-btn,body[data-shell-variant=tap_player] .action-btn,body[data-shell-variant=tap_player] .compose-btn,body[data-shell-variant=tap_player] .queue-chip,body[data-shell-variant=tap_player] .utility-btn,body[data-shell-variant=tap_player] .viewer-meta span,body[data-shell-variant=tap_player] .curriculum-filter,body[data-shell-variant=tap_player] .curriculum-meta-pill,body[data-shell-variant=tap_player] .curriculum-module-count,body[data-shell-variant=tap_player] .mode-btn strong,body[data-shell-variant=tap_player] .ul2-shell-tab,body[data-shell-variant=tap_player] .mobile-mode-btn{font-weight:var(--tap-type-weight-action);letter-spacing:0}body[data-shell-variant=tap_player] .hero-copy h1,body[data-shell-variant=tap_player] .viewer-copy h3,body[data-shell-variant=tap_player] .toolbar-copy h2,body[data-shell-variant=tap_player] .ul2-page-title,body[data-shell-variant=tap_player] .ul2-panel-title{font-family:var(--tap-type-display-family);font-weight:var(--tap-type-weight-display);letter-spacing:var(--tap-type-track-display)}body[data-shell-variant=tap_player] .hero-copy h1{font-size:clamp(28px,3vw,36px);max-width:15ch}body[data-shell-variant=tap_player] .viewer-copy h3{font-size:clamp(24px,2.5vw,30px);max-width:15ch}body[data-shell-variant=tap_player] .toolbar-copy h2{font-size:clamp(19px,1.8vw,23px)}body[data-shell-variant=tap_player] .ul2-page-title,body[data-shell-variant=tap_player] .ul2-panel-title{font-size:clamp(17px,1.45vw,20px)}body[data-shell-variant=tap_player] .brand-copy strong,body[data-shell-variant=tap_player] .summary-main strong,body[data-shell-variant=tap_player] .summary-stat strong,body[data-shell-variant=tap_player] .metric-card strong,body[data-shell-variant=tap_player] .tap-shell-surface-title,body[data-shell-variant=tap_player] .panel-title,body[data-shell-variant=tap_player] .ul2-shell-drawer-section-title,body[data-shell-variant=tap_player] .queue-head h3,body[data-shell-variant=tap_player] .workspace-card h3,body[data-shell-variant=tap_player] .support-card h3,body[data-shell-variant=tap_player] .card-head-copy h3,body[data-shell-variant=tap_player] .queue-item strong,body[data-shell-variant=tap_player] .utility-item strong,body[data-shell-variant=tap_player] .ul2-mode-pill-label,body[data-shell-variant=tap_player] .ul2-reminder-trigger-copy strong,body[data-shell-variant=tap_player] .ul2-stat-value{font-weight:var(--tap-type-weight-title);letter-spacing:-.012em}body[data-shell-variant=tap_player] .brand-copy strong,body[data-shell-variant=tap_player] .summary-main strong,body[data-shell-variant=tap_player] .queue-head h3,body[data-shell-variant=tap_player] .workspace-card h3,body[data-shell-variant=tap_player] .support-card h3,body[data-shell-variant=tap_player] .utility-head strong,body[data-shell-variant=tap_player] .left-context-head strong,body[data-shell-variant=tap_player] .card-head-copy h3,body[data-shell-variant=tap_player] .summary-stat strong{font-size:15px}body[data-shell-variant=tap_player] .metric-card strong{font-size:22px}body[data-shell-variant=tap_player] .ul2-stat-value{font-size:18px}body[data-shell-variant=tap_player] .hero-copy p,body[data-shell-variant=tap_player] .viewer-copy p,body[data-shell-variant=tap_player] .panel-copy,body[data-shell-variant=tap_player] .tap-shell-surface-copy,body[data-shell-variant=tap_player] .queue-head p,body[data-shell-variant=tap_player] .workspace-card p,body[data-shell-variant=tap_player] .support-card p,body[data-shell-variant=tap_player] .utility-item span,body[data-shell-variant=tap_player] .utility-item small,body[data-shell-variant=tap_player] .utility-item p,body[data-shell-variant=tap_player] .queue-item span,body[data-shell-variant=tap_player] .queue-item small{line-height:var(--tap-type-line-copy);letter-spacing:0}body[data-shell-variant=tap_player] .queue-head h3,body[data-shell-variant=tap_player] .workspace-card h3,body[data-shell-variant=tap_player] .support-card h3,body[data-shell-variant=tap_player] .utility-head strong,body[data-shell-variant=tap_player] .left-context-head strong,body[data-shell-variant=tap_player] .card-head-copy h3{line-height:var(--tap-type-line-heading)}body[data-shell-variant=tap_player] .mode-btn strong,body[data-shell-variant=tap_player] .queue-item strong,body[data-shell-variant=tap_player] .utility-item strong,body[data-shell-variant=tap_player] .curriculum-module-copy strong,body[data-shell-variant=tap_player] .curriculum-lesson-title,body[data-shell-variant=tap_player] .comment-author strong{font-size:13px;line-height:1.34}body[data-shell-variant=tap_player] .summary-main strong,body[data-shell-variant=tap_player] .summary-stat strong,body[data-shell-variant=tap_player] .metric-card strong,body[data-shell-variant=tap_player] .ul2-stat-value{letter-spacing:-.018em;line-height:1.08}body[data-shell-variant=tap_player] .mode-btn span,body[data-shell-variant=tap_player] .queue-item span,body[data-shell-variant=tap_player] .queue-item small,body[data-shell-variant=tap_player] .utility-item span,body[data-shell-variant=tap_player] .utility-item small,body[data-shell-variant=tap_player] .curriculum-module-copy span,body[data-shell-variant=tap_player] .curriculum-lesson-meta,body[data-shell-variant=tap_player] .curriculum-lesson-duration,body[data-shell-variant=tap_player] .timeline-row span{font-size:11.5px;font-weight:500;letter-spacing:0}body[data-shell-variant=tap_player] .hero-copy p,body[data-shell-variant=tap_player] .viewer-copy p,body[data-shell-variant=tap_player] .toolbar-copy p,body[data-shell-variant=tap_player] .queue-head p,body[data-shell-variant=tap_player] .workspace-card p,body[data-shell-variant=tap_player] .support-card p,body[data-shell-variant=tap_player] .comment p{font-size:13px}body[data-shell-variant=tap_player] .brand-copy small,body[data-shell-variant=tap_player] .summary-main small,body[data-shell-variant=tap_player] .summary-pill,body[data-shell-variant=tap_player] .utility-group-label,body[data-shell-variant=tap_player] .context-summary-card small,body[data-shell-variant=tap_player] .context-stat span,body[data-shell-variant=tap_player] .curriculum-menu-toolbar strong{font-size:10px}body[data-shell-variant=tap_player] .top-mode-btn,body[data-shell-variant=tap_player] .hero-primary,body[data-shell-variant=tap_player] .hero-secondary,body[data-shell-variant=tap_player] .ghost-btn,body[data-shell-variant=tap_player] .small-btn,body[data-shell-variant=tap_player] .action-btn,body[data-shell-variant=tap_player] .compose-btn,body[data-shell-variant=tap_player] .queue-chip,body[data-shell-variant=tap_player] .utility-btn,body[data-shell-variant=tap_player] .viewer-meta span,body[data-shell-variant=tap_player] .curriculum-filter,body[data-shell-variant=tap_player] .curriculum-meta-pill,body[data-shell-variant=tap_player] .curriculum-module-count{font-size:11.5px}body[data-shell-variant=tap_player] .mode-btn strong{font-size:14px}body[data-shell-variant=tap_player] .mode-btn span{font-size:11.5px;line-height:1.42}body[data-shell-variant=tap_player] .hero-copy h1,body[data-shell-variant=tap_player] .viewer-copy h3{line-height:var(--tap-type-line-display);letter-spacing:-.024em}body[data-shell-variant=tap_player] .toolbar-copy h2{line-height:1.16;letter-spacing:var(--tap-type-track-title)}body[data-shell-variant=tap_player][data-td-font-stack=system_ui] .top-mode-btn,body[data-shell-variant=tap_player][data-td-font-stack=system_ui] .queue-item strong,body[data-shell-variant=tap_player][data-td-font-stack=system_ui] .workspace-card h3,body[data-shell-variant=tap_player][data-td-font-stack=system_ui] .support-card h3,body[data-shell-variant=tap_player][data-td-font-stack=system_ui] .summary-main strong,body[data-shell-variant=tap_player][data-td-font-stack=system_ui] .summary-stat strong{font-weight:600}body[data-shell-variant=tap_player][data-td-font-stack=system_ui] .hero-copy h1,body[data-shell-variant=tap_player][data-td-font-stack=system_ui] .viewer-copy h3,body[data-shell-variant=tap_player][data-td-font-stack=system_ui] .toolbar-copy h2{letter-spacing:-.022em}body[data-shell-variant=tap_player][data-td-font-stack=system_ui] .hero-copy p,body[data-shell-variant=tap_player][data-td-font-stack=system_ui] .viewer-copy p,body[data-shell-variant=tap_player][data-td-font-stack=system_ui] .panel-copy,body[data-shell-variant=tap_player][data-td-font-stack=system_ui] .tap-shell-surface-copy,body[data-shell-variant=tap_player][data-td-font-stack=system_ui] .queue-item span,body[data-shell-variant=tap_player][data-td-font-stack=system_ui] .queue-item small,body[data-shell-variant=tap_player][data-td-font-stack=system_ui] .workspace-card p,body[data-shell-variant=tap_player][data-td-font-stack=system_ui] .support-card p{line-height:1.58}@media (min-width: 861px){body[data-shell-variant=tap_player]{--tap-type-desktop-meta: 12px;--tap-type-desktop-body: 15px;--tap-type-desktop-ui: 15px;--tap-type-desktop-title: 16px;--tap-type-desktop-section: 20px;--tap-type-desktop-display: clamp(24px, 2vw, 28px);--tap-type-desktop-display-secondary: clamp(22px, 1.8vw, 24px)}body[data-shell-variant=tap_player] .top-mode-btn{min-height:46px;padding:0 18px;font-size:16px;line-height:1.16;font-weight:600;letter-spacing:-.008em}body[data-shell-variant=tap_player] .utility-theme-toggle,body[data-shell-variant=tap_player] .utility-language-toggle,body[data-shell-variant=tap_player] .utility-exit-link,body[data-shell-variant=tap_player] .utility-theme-option,body[data-shell-variant=tap_player] .hero-primary,body[data-shell-variant=tap_player] .hero-secondary,body[data-shell-variant=tap_player] .ghost-btn,body[data-shell-variant=tap_player] .small-btn,body[data-shell-variant=tap_player] .action-btn,body[data-shell-variant=tap_player] .compose-btn{font-size:var(--tap-type-desktop-ui);line-height:1.2;font-weight:500;letter-spacing:-.006em}body[data-shell-variant=tap_player] .hero-copy h1{font-size:var(--tap-type-desktop-display);line-height:1.08;letter-spacing:-.018em;font-weight:600}body[data-shell-variant=tap_player] .viewer-copy h3{font-size:var(--tap-type-desktop-display-secondary);line-height:1.12;letter-spacing:-.014em;font-weight:600}body[data-shell-variant=tap_player] .toolbar-copy h2,body[data-shell-variant=tap_player] .ul2-page-title,body[data-shell-variant=tap_player] .ul2-panel-title,body[data-shell-variant=tap_player] .queue-head h3,body[data-shell-variant=tap_player] .workspace-card h3,body[data-shell-variant=tap_player] .support-card h3,body[data-shell-variant=tap_player] .utility-head strong,body[data-shell-variant=tap_player] .left-context-head strong,body[data-shell-variant=tap_player] .card-head-copy h3{font-size:var(--tap-type-desktop-section);line-height:1.2;letter-spacing:-.014em;font-weight:600}body[data-shell-variant=tap_player] .brand-copy strong,body[data-shell-variant=tap_player] .tap-shell-surface-title,body[data-shell-variant=tap_player] .queue-item strong,body[data-shell-variant=tap_player] .utility-item strong,body[data-shell-variant=tap_player] .curriculum-module-copy strong,body[data-shell-variant=tap_player] .curriculum-lesson-title,body[data-shell-variant=tap_player] .comment-author strong{font-size:var(--tap-type-desktop-title);line-height:1.34;letter-spacing:-.01em;font-weight:600}body[data-shell-variant=tap_player] .summary-main strong,body[data-shell-variant=tap_player] .summary-stat strong,body[data-shell-variant=tap_player] .metric-card strong,body[data-shell-variant=tap_player] .ul2-stat-value{font-size:16px;line-height:1.16;letter-spacing:-.01em;font-weight:600;font-variant-numeric:tabular-nums}body[data-shell-variant=tap_player] .hero-copy p,body[data-shell-variant=tap_player] .viewer-copy p,body[data-shell-variant=tap_player] .toolbar-copy p,body[data-shell-variant=tap_player] .panel-copy,body[data-shell-variant=tap_player] .tap-shell-surface-copy,body[data-shell-variant=tap_player] .queue-head p,body[data-shell-variant=tap_player] .workspace-card p,body[data-shell-variant=tap_player] .support-card p,body[data-shell-variant=tap_player] .utility-item span,body[data-shell-variant=tap_player] .utility-item small,body[data-shell-variant=tap_player] .utility-item p,body[data-shell-variant=tap_player] .queue-item span,body[data-shell-variant=tap_player] .queue-item small,body[data-shell-variant=tap_player] .curriculum-module-copy span,body[data-shell-variant=tap_player] .curriculum-lesson-meta,body[data-shell-variant=tap_player] .curriculum-lesson-duration{font-size:var(--tap-type-desktop-body);line-height:1.62;letter-spacing:0;font-weight:500}body[data-shell-variant=tap_player] .eyebrow,body[data-shell-variant=tap_player] .ul2-eyebrow,body[data-shell-variant=tap_player] .ul2-panel-kicker,body[data-shell-variant=tap_player] .ul2-section-label,body[data-shell-variant=tap_player] .brand-copy small,body[data-shell-variant=tap_player] .summary-main small,body[data-shell-variant=tap_player] .summary-pill,body[data-shell-variant=tap_player] .utility-group-label,body[data-shell-variant=tap_player] .context-summary-card small,body[data-shell-variant=tap_player] .context-stat span,body[data-shell-variant=tap_player] .curriculum-menu-toolbar strong,body[data-shell-variant=tap_player] .curriculum-module-count,body[data-shell-variant=tap_player] .curriculum-meta-pill,body[data-shell-variant=tap_player] .curriculum-filter,body[data-shell-variant=tap_player] .queue-chip,body[data-shell-variant=tap_player] .chip{font-size:var(--tap-type-desktop-meta);line-height:1.34;font-weight:500;letter-spacing:.01em;text-transform:none}}@media (max-width: 860px){body[data-shell-variant=tap_player] .hero-copy h1{font-size:clamp(26px,8.2vw,31px);line-height:1.08;letter-spacing:-.016em}body[data-shell-variant=tap_player] .viewer-copy h3{font-size:clamp(22px,6.2vw,26px);line-height:1.12;letter-spacing:-.014em}body[data-shell-variant=tap_player] .toolbar-copy h2{font-size:17px;line-height:1.18;letter-spacing:-.012em}body[data-shell-variant=tap_player] .queue-item span,body[data-shell-variant=tap_player] .queue-item small,body[data-shell-variant=tap_player] .utility-item span,body[data-shell-variant=tap_player] .utility-item small,body[data-shell-variant=tap_player] .utility-item p{font-size:10.5px;line-height:1.5}body[data-shell-variant=tap_player] .brand-copy small,body[data-shell-variant=tap_player] .summary-pill,body[data-shell-variant=tap_player] .utility-group-label,body[data-shell-variant=tap_player] .context-summary-card small,body[data-shell-variant=tap_player] .context-stat span{font-size:9.5px;line-height:1.34;letter-spacing:.01em}body[data-shell-variant=tap_player] .curriculum-filter{font-size:11px}body[data-shell-variant=tap_player] .curriculum-filter strong{font-size:9.5px}body[data-shell-variant=tap_player] .curriculum-rail-filters .curriculum-filter span{font-size:9.5px;line-height:1.14;letter-spacing:0}body[data-shell-variant=tap_player] .curriculum-rail-filters .curriculum-filter strong{font-size:9px}body[data-shell-variant=tap_player] .utility-mobile-btn{font-size:9.5px;line-height:1.18;letter-spacing:0}body[data-shell-variant=tap_player] .summary-main strong{font-size:14.5px;line-height:1.24;font-weight:600;letter-spacing:-.01em}body[data-shell-variant=tap_player] .summary-stat strong{font-size:13.5px;line-height:1.16;font-weight:600;letter-spacing:-.008em;font-variant-numeric:tabular-nums}body[data-shell-variant=tap_player] .queue-item strong,body[data-shell-variant=tap_player] .utility-item strong,body[data-shell-variant=tap_player] .curriculum-module-copy strong,body[data-shell-variant=tap_player] .curriculum-lesson-title{font-size:12.75px;line-height:1.38;font-weight:600;letter-spacing:-.008em}body[data-shell-variant=tap_player] .curriculum-lesson-meta,body[data-shell-variant=tap_player] .curriculum-lesson-duration,body[data-shell-variant=tap_player] .timeline-row,body[data-shell-variant=tap_player] .timeline-row span{font-size:11.25px;line-height:1.56;font-weight:500;letter-spacing:0}body[data-shell-variant=tap_player] .summary-main small,body[data-shell-variant=tap_player] .summary-stat span,body[data-shell-variant=tap_player] .curriculum-module-count,body[data-shell-variant=tap_player] .tap-mobile-bottom-copy,body[data-shell-variant=tap_player] .utility-mobile-btn span:last-child{font-size:10.25px;line-height:1.28;font-weight:500;letter-spacing:.01em;text-transform:none}body[data-shell-variant=tap_player] .tap-mobile-bottom-copy,body[data-shell-variant=tap_player] .utility-mobile-btn span:last-child{line-height:1.2}body[data-shell-variant=tap_player] .utility-mobile-btn{font-size:10px;letter-spacing:0}body[data-shell-variant=tap_player] .summary-pill,body[data-shell-variant=tap_player] .curriculum-meta-pill{font-size:10px;font-weight:600;letter-spacing:0}}
