:root{--color-accent: #5B3A8E;--color-accent-strong: #4B2E6F;--color-accent-bg: rgba(91,58,142,.08);--color-border-accent: rgba(91,58,142,.28);--color-focus-ring: rgba(91,58,142,.45);--color-button-primary-bg: #F1EDF6;--color-button-primary-hover: #E7E1EF;--color-success: #237804;--color-success-bg: #f0f9eb;--color-success-border: #b7eb8f;--color-warning-text: #614700;--color-warning-bg: #fffbe6;--color-warning-border: #ffe58f;--color-error-text: #a8071a;--color-error-bg: #fff1f0;--color-error-border: #ffccc7;--color-text-primary: #000000;--color-text-secondary: #5A5466;--color-text-muted: #8A8299;--color-text-disabled: var(--color-border-input);--color-text-oninverse: #ffffff;--color-bg-page: #FFFFFF;--color-bg-surface: #ffffff;--color-bg-subtle: #F5F2F8;--color-bg-inverse: #101820;--color-border-card: rgba(75,46,111,.12);--color-border-soft: rgba(75,46,111,.08);--color-border-input: rgba(75,46,111,.22);--color-bg-sidebar: var(--color-bg-inverse);--color-text-sidebar: var(--color-text-oninverse);--color-text-sidebar-muted: #c8d2dc;--color-border-sidebar: #344553;--color-delete-bg: #172331;--color-delete-border: #405567;--color-tag-entry: var(--color-focus-ring);--color-tag-hard: #ffa940;--color-bubble-user-border: var(--color-focus-ring);--color-bubble-assistant-border: var(--color-success-border);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-14: 56px;--text-xs: 12px;--text-sm: 13px;--text-md: 14px;--text-lg: 15px;--text-xl: 16px;--text-2xl: 18px;--text-3xl: 20px;--text-4xl: 24px;--text-5xl: 28px;--text-6xl: 30px;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--leading-body: 1.7;--leading-title: 1.35;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-pill: 999px;--control-h: 44px;--control-h-sm: 36px;--control-h-xs: 32px;--control-h-lg: 52px;--shadow-menu: 0 2px 8px rgba(0, 0, 0, .08);--shadow-pop: 0 4px 16px rgba(0, 0, 0, .12);--motion-fast: .15s;--motion-base: .2s;--space-xs: var(--space-1);--space-sm: var(--space-2);--space-md: var(--space-3);--space-lg: var(--space-4);--space-xl: var(--space-5);--space-2xl: var(--space-6);--space-3xl: var(--space-8);--space-4xl: var(--space-14);color:var(--color-text-primary);background:var(--color-bg-page);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,textarea{font:inherit}button{border:1px solid var(--color-border-input);border-radius:var(--radius-sm);background:var(--color-bg-surface);color:var(--color-text-primary);cursor:pointer;min-height:var(--control-h-sm);padding:var(--space-2) var(--space-3)}input{border:1px solid var(--color-border-input);border-radius:var(--radius-sm);min-height:var(--control-h);padding:var(--space-2) var(--space-3);width:100%}textarea{border:1px solid var(--color-border-input);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);resize:vertical;width:100%}.app-shell{min-height:100vh}.home-page{margin:0 auto;max-width:880px;padding:32px 24px 24px;min-height:100vh}.auth-page{margin:0 auto;max-width:960px;padding:24px}.top-bar{align-items:center;display:flex;justify-content:space-between;margin-bottom:80px}.auth-form{display:grid;gap:14px;max-width:560px}.verification-code-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.75rem}.verification-code-row button{white-space:nowrap}.auth-hint{margin:0;color:var(--color-text-secondary, #475569);font-size:var(--text-sm)}.popular-topics{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;max-width:560px;margin:0 auto}.panorama-panel{background:var(--color-bg-subtle);border:1px solid transparent;border-left:3px solid transparent;border-radius:var(--radius-md);display:grid;gap:12px;padding:16px}.panorama-panel h2{color:var(--color-text-primary);font-size:var(--text-2xl);font-weight:var(--weight-semibold);margin:0}.panorama-panel p{color:var(--color-text-secondary);line-height:1.6;margin:0}.clarification-box{background:var(--color-bg-surface);border:1px solid var(--color-border-card);border-radius:var(--radius-md);display:grid;gap:14px;margin:24px auto 0;max-width:560px;padding:18px}.auth-page h1,.workspace h1{font-size:var(--text-5xl);line-height:1.2;margin:0 0 8px}.workspace:has(>.conversation-title){display:flex;flex-direction:column;overflow:hidden;padding:0}.workspace h1.conversation-title{background:var(--color-bg-surface);border-bottom:1px solid var(--color-border-card);flex-shrink:0;font-size:var(--text-xl);margin:0;padding:14px 76px;text-align:center;z-index:5}.workspace:has(>.conversation-title)>.conversation-page{flex:1 1 0;min-height:0;overflow-y:auto;padding:24px 76px 76px}.home-brand{color:var(--color-text-primary);font-size:var(--text-3xl);font-weight:var(--weight-semibold);letter-spacing:-.01em}.brand-icon{width:24px;height:24px;border-radius:50%;vertical-align:middle;margin-right:6px}.topic-hero{margin-bottom:0}.topic-hero h1{font-size:var(--text-5xl);line-height:1.2;margin:0 0 6px;color:var(--color-text-primary)}.topic-hero-subtitle{color:var(--color-text-secondary);font-size:var(--text-xl);line-height:1.6;margin:0 0 24px}.hero-accent{color:var(--color-focus-ring)}.home-mission{color:var(--color-text-muted);font-size:var(--text-sm);line-height:1.7;text-align:center;margin:48px auto 0;max-width:420px}.home-footer{text-align:center;margin:16px auto 0;padding-bottom:24px}.home-footer a{color:var(--color-text-muted);font-size:var(--text-xs);text-decoration:none}.home-footer a:hover{text-decoration:underline}.topic-hero-card{background:var(--color-bg-surface);border:1px solid var(--color-border-card);border-radius:var(--radius-lg);display:grid;gap:14px;padding:24px}.topic-hero-card label{color:var(--color-text-primary);font-weight:var(--weight-medium);font-size:var(--text-sm)}.topic-hero-card input{border:1px solid var(--color-border-input);border-radius:var(--radius-md);font-size:var(--text-2xl);min-height:var(--control-h-lg);padding:12px 16px;width:100%;transition:border-color var(--motion-fast) ease}.topic-hero-hint{color:var(--color-text-muted);font-size:var(--text-sm);line-height:1.6;margin:16px 0 0;text-align:center}.topic-hero-card input:focus{border-color:var(--color-focus-ring);outline:none}.topic-hero-submit{background:var(--color-button-primary-bg);border:1px solid var(--color-button-primary-bg);border-radius:var(--radius-md);color:var(--color-text-primary);cursor:pointer;font-size:var(--text-xl);font-weight:var(--weight-medium);min-height:var(--control-h);padding:12px 24px;width:100%}.topic-hero-submit:disabled{cursor:not-allowed;opacity:.6}.topic-hero-submit:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.topic-hero-error{background:var(--color-error-bg);border:1px solid var(--color-error-border);border-radius:var(--radius-sm);color:var(--color-error-text);font-size:var(--text-sm);line-height:1.5;margin:12px 0 0;padding:10px 14px}.error-message{background:var(--color-error-bg);border:1px solid var(--color-error-border);border-radius:var(--radius-sm);color:var(--color-error-text);margin:0;padding:10px 12px}.popular-topics-heading{color:var(--color-text-secondary);font-size:var(--text-sm);margin:48px 0 12px;text-align:center}.popular-topic-chip{background:var(--color-bg-surface);border:1px solid var(--color-border-card);border-radius:var(--radius-pill);color:var(--color-text-primary);cursor:pointer;font-size:var(--text-sm);min-height:var(--control-h-sm);padding:6px 16px;transition:border-color var(--motion-fast) ease,background var(--motion-fast) ease}.popular-topic-chip:hover{background:var(--color-accent-bg);border-color:var(--color-focus-ring)}.popular-topic-chip:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.home-top-bar{margin-bottom:40px}.studio-top-bar{margin-bottom:16px}.top-bar-link{background:none;border:0;color:var(--color-text-secondary);cursor:pointer;font-size:var(--text-md);min-height:0;padding:6px 10px}.top-bar-link:hover{color:var(--color-text-primary)}.home-tabs{align-items:center;display:flex;gap:4px}.home-tab{background:none;border:0;border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;font-size:var(--text-md);min-height:0;padding:6px 14px;transition:background var(--motion-fast) ease,color var(--motion-fast) ease}.home-tab:hover{background:var(--color-bg-page);color:var(--color-text-primary)}.home-tab[aria-current=page]{background:var(--color-bg-inverse);color:var(--color-text-oninverse)}.home-hero{margin:16px 0 28px;text-align:center}.home-hero h1{color:var(--color-text-primary);font-size:var(--text-6xl);font-weight:var(--weight-bold);letter-spacing:-.01em;line-height:1.25;margin:0 0 8px}.home-hero-subtitle{color:var(--color-text-secondary);font-size:var(--text-xl);line-height:1.6;margin:0}.home-entries{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:stretch}.home-entry-card{background:var(--color-bg-surface);border:1px solid var(--color-border-card);border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:8px;padding:22px}.home-entry-head{align-items:center;column-gap:10px;display:flex;row-gap:0}.home-entry-course{align-items:center;background:var(--color-bg-subtle);border:1px solid var(--color-border-card);border-radius:var(--radius-lg);cursor:pointer;display:flex;flex-direction:column;gap:4px;padding:12px 14px;text-align:left;transition:border-color var(--motion-fast) ease,background var(--motion-fast) ease}.home-entry-course:hover{background:var(--color-accent-bg);border-color:var(--color-focus-ring)}.home-entry-course-title{color:var(--color-text-primary);font-size:var(--text-md);font-weight:var(--weight-semibold)}.home-entry-course-action{color:var(--color-accent);font-size:var(--text-sm)}.home-entry-card--explore{gap:10px}.home-entry-icon{font-size:var(--text-5xl);line-height:1}.home-entry-title{color:var(--color-text-primary);font-size:var(--text-2xl);font-weight:var(--weight-semibold)}.home-entry-desc{color:var(--color-text-secondary);font-size:var(--text-sm);line-height:1.5}.home-entry-action{align-self:flex-start;background:var(--color-button-primary-bg);border:1px solid var(--color-border-card);border-radius:var(--radius-md);color:var(--color-text-primary);cursor:pointer;font-size:var(--text-md);font-weight:var(--weight-medium);margin-top:auto;min-height:var(--control-h-sm);padding:8px 18px;transition:border-color var(--motion-fast) ease,background var(--motion-fast) ease}.home-entry-action:hover{background:var(--color-bg-page);border-color:var(--color-border-input)}.home-entry-action:disabled{cursor:not-allowed;opacity:.6}.home-entry-input{border:1px solid var(--color-border-input);border-radius:var(--radius-md);font-size:var(--text-lg);min-height:var(--control-h);padding:10px 14px;width:100%;transition:border-color var(--motion-fast) ease}.home-entry-input:focus{border-color:var(--color-focus-ring);outline:none}.home-lists{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:40px}.home-list-section{display:flex;flex-direction:column;gap:12px}.home-list-heading{color:var(--color-text-primary);font-size:var(--text-lg);font-weight:var(--weight-semibold);margin:0}.home-list-empty{color:var(--color-text-muted);font-size:var(--text-sm);margin:0}.home-course-list{display:flex;flex-direction:column;gap:10px}.home-course-card{align-items:flex-start;background:var(--color-bg-surface);border:1px solid var(--color-border-card);border-radius:var(--radius-lg);cursor:pointer;display:flex;flex-direction:column;gap:4px;padding:16px 18px;text-align:left;transition:border-color var(--motion-fast) ease,background var(--motion-fast) ease}.home-course-card:hover{background:var(--color-bg-subtle);border-color:var(--color-focus-ring)}.home-course-title{color:var(--color-text-primary);font-size:var(--text-lg);font-weight:var(--weight-semibold)}.home-course-action{color:var(--color-accent);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.home-topic-chips{display:flex;flex-wrap:wrap;gap:8px}.course-shell{display:flex;flex-direction:column;height:100vh;min-height:100vh;overflow:hidden}.course-shell-content{flex:1;min-height:0;overflow-y:auto;padding:32px 24px 64px}.course-shell-inner{margin:0 auto;max-width:880px}.course-page-title{color:var(--color-text-primary);font-size:var(--text-4xl);font-weight:var(--weight-bold);margin:0 0 20px}.course-list-grid{display:flex;flex-direction:column;gap:10px}.course-back-link{background:none;border:0;color:var(--color-accent);cursor:pointer;font-size:var(--text-sm);justify-self:start;margin-bottom:16px;min-height:0;padding:0}.course-back-link:hover{text-decoration:underline}.course-detail-title{color:var(--color-text-primary);font-size:var(--text-4xl);font-weight:var(--weight-bold);margin:0 0 6px}.course-tree,.course-tree-modules,.course-tree-points{list-style:none;margin:0;padding:0}.course-tree-chapter{border-bottom:1px solid var(--color-border-soft);padding:14px 0}.course-tree-chapter:last-child{border-bottom:0}.course-tree-chapter-title{color:var(--color-text-primary);display:block;font-size:var(--text-lg);font-weight:var(--weight-semibold)}.course-tree-modules{margin-top:8px;padding-left:14px}.course-tree-module-title{color:var(--color-accent);display:block;font-size:var(--text-md);font-weight:var(--weight-medium)}.course-tree-points{display:flex;flex-direction:column;gap:4px;margin-top:6px;padding-left:14px}.course-tree-point{color:var(--color-text-secondary);font-size:var(--text-sm);line-height:1.6}.course-tree-point:before{color:var(--color-text-disabled);content:"· "}.profile-page{max-width:880px}.profile-title{color:var(--color-text-primary);font-size:var(--text-4xl);font-weight:var(--weight-bold);margin:0 0 20px}.profile-card{align-items:flex-start;background:var(--color-bg-surface);border:1px solid var(--color-border-card);border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:4px;padding:18px 20px}.profile-username{color:var(--color-text-primary);font-size:var(--text-2xl);font-weight:var(--weight-semibold)}.profile-account{color:var(--color-text-secondary);font-size:var(--text-sm)}.profile-badge{background:var(--color-accent-bg);border:1px solid var(--color-focus-ring);border-radius:var(--radius-lg);color:var(--color-accent);font-size:var(--text-xs);margin-top:6px;padding:2px 10px}.profile-links{display:flex;flex-direction:column;gap:8px;margin-top:20px}.profile-link{background:var(--color-bg-surface);border:1px solid var(--color-border-card);border-radius:var(--radius-lg);color:var(--color-text-primary);cursor:pointer;font-size:var(--text-md);justify-content:flex-start;min-height:var(--control-h);padding:10px 16px;text-align:left;transition:border-color var(--motion-fast) ease,background var(--motion-fast) ease}.profile-link:hover{background:var(--color-bg-subtle);border-color:var(--color-focus-ring)}.profile-section{margin-top:28px}.profile-section-heading{color:var(--color-text-primary);font-size:var(--text-lg);font-weight:var(--weight-semibold);margin:0 0 12px}.profile-history{display:flex;flex-direction:column;gap:8px;list-style:none;margin:0;padding:0}.profile-history-item{margin:0}.profile-history-button{background:var(--color-bg-surface);border:1px solid var(--color-border-card);border-radius:var(--radius-lg);color:var(--color-text-primary);cursor:pointer;font-size:var(--text-md);justify-content:flex-start;min-height:var(--control-h);padding:10px 16px;text-align:left;transition:border-color var(--motion-fast) ease,background var(--motion-fast) ease;width:100%}.profile-history-button:hover{background:var(--color-bg-subtle);border-color:var(--color-focus-ring)}.profile-logout{background:none;border:1px solid var(--color-error-border);border-radius:var(--radius-lg);color:var(--color-error-text);cursor:pointer;font-size:var(--text-md);margin-top:32px;min-height:var(--control-h);padding:10px 16px;transition:background var(--motion-fast) ease}.profile-logout:hover{background:var(--color-error-bg)}.clarification-box strong{color:var(--color-text-primary);font-size:var(--text-xl);line-height:1.6}.clarification-box input{border:1px solid var(--color-border-input);border-radius:var(--radius-sm);min-height:var(--control-h);padding:10px 12px;width:100%}.clarification-box button{justify-self:start}.auth-page{display:grid;gap:18px}.auth-form{background:var(--color-bg-surface);border:1px solid var(--color-border-card);border-radius:var(--radius-md);padding:20px}.auth-mode{display:flex;gap:8px}.auth-mode button[aria-pressed=true]{background:var(--color-button-primary-bg);border-color:var(--color-button-primary-bg);color:var(--color-text-primary)}.auth-error{background:var(--color-error-bg);border:1px solid var(--color-error-border);border-radius:var(--radius-sm);color:var(--color-error-text);margin:0;padding:10px 12px}.link-button{justify-self:start}.learning-shell{background:var(--color-bg-surface);display:grid;grid-template-columns:360px 1fr;grid-template-rows:auto 1fr;height:100vh;min-height:100vh;overflow:hidden}.learning-top-bar{align-items:center;border-bottom:1px solid var(--color-border-card);display:flex;gap:16px;grid-column:1 / -1;height:64px;justify-content:space-between;padding:0 20px}.learning-top-bar .home-tabs{margin-left:auto}.mobile-menu-button,.side-nav-backdrop{display:none}.side-nav{background:var(--color-bg-surface);border-right:1px solid var(--color-border-card);color:var(--color-text-primary);display:flex;flex-direction:column;font-size:var(--text-md);gap:14px;height:100%;min-height:0;overflow:hidden;padding:20px}.primary-nav,.account-slot{flex-shrink:0}.primary-nav{display:grid;gap:6px;margin-top:17px}.side-nav .primary-nav button{align-items:center;column-gap:8px;display:flex;padding-left:0}.nav-icon{flex:none}.side-nav button{background:transparent;border:1px solid transparent;color:var(--color-text-primary);font-size:var(--text-md);line-height:24px;min-height:var(--control-h-xs);padding:2px 12px;text-align:left;transition:background var(--motion-fast) ease}.side-nav button:hover:not(:disabled){background:var(--color-bg-page)}.side-nav button[aria-current=page]{background:var(--color-accent-bg);color:var(--color-accent-strong);font-weight:var(--weight-semibold)}.side-nav button:disabled{color:var(--color-text-disabled);opacity:1}.account-slot{border-top:1px solid var(--color-border-card);color:var(--color-text-secondary);display:grid;font-size:var(--text-sm);gap:8px;margin-top:12px;padding-top:16px;position:relative;word-break:break-word}.account-slot button{color:var(--color-text-secondary);font-size:var(--text-sm);text-align:left}.account-name-button{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-menu{background:var(--color-bg-surface);border:1px solid var(--color-border-card);border-radius:var(--radius-md);bottom:100%;box-shadow:0 2px 8px #00000014;display:grid;gap:4px;left:0;margin-bottom:-16px;padding:6px;position:absolute;right:0;z-index:10}.ai-settings-page{margin:0 auto;max-width:720px}#ai-settings-title{font-size:var(--text-3xl)}.ai-settings-page .ai-settings-page{margin-top:24px}.ai-settings-form{display:grid;gap:16px;justify-items:stretch;margin-top:24px;text-align:left}.ai-settings-form label{display:grid;font-size:var(--text-xl);gap:8px;text-align:left;width:100%}.ai-settings-form label:has(input[type=radio]){align-items:center;align-self:start;display:flex;gap:4px;justify-content:flex-start;justify-self:start;width:auto}.ai-settings-form input[type=radio]{flex:0 0 auto;height:16px;margin:0 -8px 0 0;min-height:0;padding:0;transform:scale(.5);transform-origin:left center;width:16px}.ai-settings-form input:not([type=radio]),.ai-settings-form select{border:1px solid var(--color-border-input);border-radius:var(--radius-md);font:inherit;padding:10px 12px}.settings-status{margin:0}.settings-link-row{margin-top:16px}.ai-settings-page .settings-link-row{display:flex;gap:24px}.admin-page{display:grid;gap:18px}.admin-grid{display:grid;gap:18px;grid-template-columns:minmax(220px,320px) minmax(0,1fr)}.admin-panel{border:1px solid var(--color-border-card);border-radius:var(--radius-md);display:grid;gap:10px;min-width:0;padding:16px}.admin-panel h2,.admin-panel h3{margin:0}.admin-panel h2{font-size:var(--text-2xl)}.admin-panel h3{font-size:var(--text-lg);margin-top:10px}.admin-user-list{align-content:start}.admin-user-row{display:grid;gap:4px;min-height:64px;text-align:left}.admin-user-row[aria-current=true]{background:var(--color-accent-bg);border-color:var(--color-focus-ring)}.admin-user-row-name{font-weight:var(--weight-semibold)}.admin-user-row-account{color:var(--color-text-secondary)}.admin-user-row span,.admin-list-item strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-user-row small,.admin-list-item small,.admin-list-item span{color:var(--color-text-secondary)}.admin-detail{align-content:start}.admin-permission-row{align-items:center;border-bottom:1px solid var(--color-border-card);display:flex;gap:12px;justify-content:space-between;padding-bottom:14px}.admin-list-item{border:1px solid var(--color-border-card);border-radius:var(--radius-md);display:grid;gap:6px;padding:12px}.admin-list-item p{line-height:1.5;margin:0;max-height:4.5em;overflow:hidden}.admin-user-detail{gap:16px}.admin-detail-header{display:grid;gap:8px;justify-items:start}.admin-detail-header h1{margin:0;text-align:left}.admin-back-button{background:var(--color-bg-subtle);border:1px solid var(--color-border-card);border-radius:var(--radius-sm);padding:6px 12px}.admin-user-summary p{margin:0}.admin-user-summary strong{font-weight:var(--weight-semibold)}.admin-field-group{border:1px solid var(--color-border-card);border-radius:var(--radius-md);display:grid;gap:10px;padding:16px}.admin-field-group-title{align-items:baseline;border-bottom:1px solid var(--color-border-soft);display:flex;gap:12px;flex-wrap:wrap;padding-bottom:8px}.admin-field-group-title strong{font-size:var(--text-xl)}.history-list{border-top:1px solid var(--color-border-card);display:flex;flex-direction:column;font-size:var(--text-sm);flex:1 1 0;gap:8px;margin-top:0;min-height:0;overflow:hidden;padding-top:14px}.history-list strong{background:var(--color-bg-surface);flex-shrink:0;font-size:var(--text-md);padding-bottom:4px;z-index:1}.history-items{align-content:start;display:grid;flex:1 1 0;gap:6px;min-height:0;overflow-y:auto}.history-list p{color:var(--color-text-secondary);line-height:1.5;margin:0}.history-more-button{background:transparent;border:1px solid var(--color-border-card);border-radius:var(--radius-sm);color:var(--color-accent);cursor:pointer;font-size:var(--text-sm);min-height:var(--control-h-xs);padding:4px 12px;text-align:center}.history-more-button:hover{background:var(--color-bg-page)}.delete-context-menu{background:var(--color-bg-surface);border:1px solid var(--color-border-card);border-radius:var(--radius-md);box-shadow:0 4px 16px #0000001f;min-width:112px;padding:4px;position:absolute;right:0;top:100%;z-index:20}.delete-context-menu button{background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--color-text-primary);cursor:pointer;font-size:var(--text-sm);min-height:var(--control-h-xs);padding:4px 12px;text-align:center;width:100%}.delete-context-menu button:hover{background:var(--color-bg-page)}.delete-context-menu button:last-child{color:var(--color-error-text)}.delete-context-menu button:last-child:hover{background:var(--color-error-bg)}.history-item{display:grid;gap:6px;position:relative}.history-item-row{align-items:center;display:grid}.side-nav .history-item-button{align-items:center;column-gap:8px;display:flex;min-width:0;padding-left:0;padding-right:24px;position:relative;width:100%}.history-item-label{flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-pin-icon{align-items:center;color:inherit;display:flex;flex:0 0 auto;justify-content:center}.side-nav .history-item-menu-button{align-items:center;border-radius:var(--radius-sm);cursor:pointer;display:flex;height:20px;justify-content:center;position:absolute;right:0;top:50%;transform:translateY(-50%);width:20px;opacity:0;pointer-events:none;transition:opacity var(--motion-fast) ease}.history-item:hover .history-item-menu-button,.history-item-menu-button:focus-visible,.history-item-menu-button[aria-expanded=true]{opacity:1;pointer-events:auto}.history-item-menu-button span{display:inline-block;font-size:var(--text-md);letter-spacing:-1px;transform:scale(.72)}.delete-confirmation{background:var(--color-error-bg);border:1px solid var(--color-error-border);border-radius:var(--radius-md);box-shadow:0 4px 16px #0000001f;color:var(--color-error-text);display:grid;font-size:var(--text-sm);gap:8px;min-width:160px;padding:10px;position:absolute;right:0;top:100%;z-index:20}.delete-confirmation button{background:var(--color-bg-surface);border:1px solid var(--color-border-input);border-radius:var(--radius-sm);color:var(--color-text-primary);cursor:pointer;font-size:var(--text-sm);min-height:var(--control-h-xs);padding:4px 12px;text-align:center}.delete-confirmation button:hover{background:var(--color-bg-page)}.workspace{background:var(--color-bg-surface);min-width:0;overflow-y:auto;padding:76px}.workspace p{color:var(--color-text-secondary);line-height:1.7;margin:0}.workspace h2{font-size:var(--text-2xl);margin:0}.workspace-actions{display:flex;flex-wrap:wrap;gap:10px}.workspace-actions-stacked{flex-direction:column}.conversation-page{display:grid;font-size:var(--text-md);gap:24px}.scroll-to-bottom-button{align-items:center;background:var(--color-bg-surface);border:1px solid var(--color-border-card);border-radius:var(--radius-pill);bottom:32px;box-shadow:0 4px 12px #14283c1f;color:var(--color-text-secondary);cursor:pointer;display:inline-flex;height:44px;justify-content:center;opacity:0;padding:0;pointer-events:none;position:fixed;right:32px;transform:translateY(8px);transition:opacity var(--motion-fast) ease,transform var(--motion-fast) ease,visibility .18s,box-shadow var(--motion-fast) ease,color var(--motion-fast) ease;visibility:hidden;width:44px;z-index:50}.scroll-to-bottom-button.is-visible{opacity:1;pointer-events:auto;transform:translateY(0);visibility:visible}.scroll-to-bottom-button.is-visible:hover{box-shadow:0 6px 16px #14283c2e;color:var(--color-text-primary)}.hint-text{color:var(--color-text-secondary);font-size:var(--text-sm);line-height:1.6}.pending-exercise{background:var(--color-warning-bg);border:1px solid var(--color-warning-border);border-radius:var(--radius-md);display:flex;align-items:center;gap:12px;padding:12px 16px}.pending-exercise p{color:var(--color-text-primary);flex:1;font-size:var(--text-sm);font-weight:var(--weight-medium);margin:0}.pending-exercise button{background:var(--color-bg-surface);border:1px solid var(--color-border-input);border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;font-size:var(--text-xs);min-height:var(--control-h-xs);padding:4px 12px;white-space:nowrap}.message-list{display:grid;gap:20px}.message-bubble{background:var(--color-bg-surface);border:1px solid transparent;border-radius:var(--radius-md);display:grid;gap:8px;padding:14px 16px}.message-user{justify-self:end;max-width:760px}.message-system{background:var(--color-warning-bg);color:var(--color-text-secondary);font-size:var(--text-sm);justify-self:center;max-width:760px;text-align:center}.message-type-label{align-items:center;color:var(--color-text-secondary);display:flex;font-size:var(--text-xs);font-weight:var(--weight-semibold);gap:6px;letter-spacing:.04em;text-transform:uppercase}.message-knowledge-title{align-items:center;color:var(--color-text-primary);display:flex;font-size:var(--text-lg);font-weight:var(--weight-bold);gap:6px;letter-spacing:.02em}.message-knowledge-title:before{background:var(--color-accent);border-radius:var(--radius-sm);content:"";display:block;height:15px;width:3px}.message-type-label:before{background:var(--color-border-card);border-radius:var(--radius-sm);content:"";display:block;height:10px;width:3px}.message-card-panorama,.message-card-knowledge{border-left:3px solid transparent}.message-card-exercise{background:var(--color-bg-subtle);border:1px solid transparent;border-left:3px solid transparent}.message-card-review-feedback,.message-card-book{border-left:3px solid transparent}.message-form{background:var(--color-bg-surface);border:1px solid var(--color-border-card);border-radius:var(--radius-lg);display:grid;gap:16px;padding:20px}.message-form label{color:var(--color-text-primary);font-size:var(--text-xs);font-weight:var(--weight-semibold)}.message-form textarea{border:1px solid var(--color-border-input);border-radius:var(--radius-md);font-size:var(--text-md);line-height:1.7;padding:10px 14px;resize:vertical;transition:border-color var(--motion-fast) ease;width:100%}.message-form textarea:focus{border-color:var(--color-focus-ring);outline:none}.message-form-actions{align-items:center;display:flex;gap:12px;justify-content:space-between}.message-form-quick-actions{display:flex;flex-wrap:wrap;gap:8px}.message-form-quick-button{background:transparent;border:1px solid var(--color-border-card);border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;font-size:var(--text-xs);min-height:var(--control-h-sm);padding:6px 14px;transition:border-color var(--motion-fast) ease,color var(--motion-fast) ease,background var(--motion-fast) ease}.message-form-quick-button:hover:not(:disabled){background:var(--color-accent-bg);border-color:var(--color-focus-ring);color:var(--color-text-primary)}.message-form-quick-button:disabled{color:var(--color-text-disabled);cursor:not-allowed}.message-form button[type=submit]{background:var(--color-button-primary-bg);border:1px solid var(--color-button-primary-bg);border-radius:var(--radius-md);color:var(--color-text-primary);cursor:pointer;font-size:var(--text-sm);font-weight:var(--weight-medium);min-height:var(--control-h-sm);min-width:100px;padding:8px 20px}.message-form button[type=submit]:disabled{opacity:.5;cursor:not-allowed}.message-form button[type=submit]:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.message-form-exercise label{color:var(--color-text-primary)}.message-row{align-items:flex-start;display:flex;flex-direction:column;gap:4px}.message-row-user{align-items:flex-end}.message-row>.message-bubble{flex:0 1 auto;min-width:0}.message-actions{align-items:center;display:flex;gap:4px;margin-left:4px}.knowledge-next-actions{align-items:flex-start;display:flex;flex-direction:column;gap:2px;margin:4px 0 10px;max-width:640px}.knowledge-next-actions-intro{color:var(--color-text-secondary);font-size:var(--text-sm);margin:0 0 4px}.knowledge-next-action-link{background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--color-text-primary);cursor:pointer;font-size:var(--text-md);line-height:24px;min-height:var(--control-h-xs);padding:2px 12px;text-align:left;transition:background var(--motion-fast) ease}.knowledge-next-action-link:hover{background:var(--color-bg-page)}.knowledge-next-recommendation{border-top:1px solid rgba(82,97,107,.2);display:flex;flex-direction:column;gap:2px;margin-top:6px;padding-top:6px;width:100%}.knowledge-next-recommendation p{color:var(--color-text-secondary);font-size:var(--text-sm);margin:0 0 4px}.message-action-button{background:transparent;border:none;color:var(--color-text-muted);cursor:pointer;display:inline-flex;flex:0 0 auto;line-height:0;padding:2px 4px;position:relative;transition:color var(--motion-fast) ease}.message-action-button:before{background:transparent;border-radius:var(--radius-sm);color:var(--color-text-primary);content:attr(data-tooltip);font-size:var(--text-xs);line-height:1.4;opacity:0;padding:4px 8px;pointer-events:none;position:absolute;top:calc(100% + 1px);left:50%;transform:translate(-50%);transition:opacity var(--motion-fast) ease;white-space:nowrap;z-index:10}.message-action-button:hover:before{opacity:1}.message-action-button:hover{color:var(--color-text-primary)}.message-action-button.is-copied{color:var(--color-success)}.share-sheet-overlay{align-items:center;background:#17202680;display:flex;justify-content:center;inset:0;padding:20px;position:fixed;z-index:1000}.share-sheet{background:var(--color-bg-surface);border-radius:var(--radius-lg);box-shadow:0 12px 32px #17202633;display:grid;gap:16px;max-height:80vh;max-width:520px;overflow-y:auto;padding:24px;width:100%}.share-sheet h2{font-size:var(--text-2xl);margin:0}.share-sheet-preview{background:var(--color-bg-subtle);border:1px solid var(--color-border-card);border-radius:var(--radius-md);color:var(--color-text-primary);font-family:inherit;font-size:var(--text-sm);line-height:1.7;margin:0;max-height:220px;overflow-y:auto;padding:12px 14px;white-space:pre-wrap;word-break:break-word}.share-sheet-actions{display:flex;flex-wrap:wrap;gap:10px}.share-sheet-actions button{background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;font-size:var(--text-xs);min-height:var(--control-h-sm);padding:6px 14px;transition:border-color var(--motion-fast) ease,color var(--motion-fast) ease,background var(--motion-fast) ease}.share-sheet-actions button:hover{background:var(--color-accent-bg);border-color:var(--color-focus-ring);color:var(--color-text-primary)}.share-sheet-hint{color:var(--color-text-primary);font-size:var(--text-sm);margin:0}.structured-content{display:grid;gap:10px}.structured-content h2,.structured-content h3,.structured-content h4{color:var(--color-text-primary);line-height:1.35;margin:4px 0 0}.structured-content h2{font-size:var(--text-2xl)}.structured-content h3{font-size:var(--text-xl)}.structured-content h4{font-size:var(--text-md)}.structured-content p{margin:0}.structured-content ul,.structured-content ol{display:grid;gap:8px;margin:0;padding-left:20px}.structured-content li{color:var(--color-text-secondary);line-height:1.7}.structured-content strong{color:var(--color-text-primary)}.structured-content code{background:var(--color-bg-page);border:1px solid var(--color-border-card);border-radius:var(--radius-sm);color:var(--color-text-primary);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:var(--text-sm);padding:1px 4px}.structured-content pre{background:var(--color-bg-inverse);border-radius:var(--radius-md);color:var(--color-text-oninverse);line-height:1.6;margin:0;overflow-x:auto;padding:12px}.structured-content pre code{background:transparent;border:0;color:inherit;display:block;font-size:var(--text-xs);padding:0;white-space:pre}.structured-content blockquote{border-left:3px solid var(--color-focus-ring);color:var(--color-text-secondary);line-height:1.7;margin:0;padding:4px 0 4px 12px}.structured-table-wrap{overflow-x:auto}.structured-content table{border-collapse:collapse;font-size:var(--text-sm);min-width:100%}.structured-content th,.structured-content td{border:1px solid var(--color-border-card);line-height:1.6;padding:8px 10px;text-align:left;vertical-align:top}.structured-content th{background:var(--color-bg-page);color:var(--color-text-primary);font-weight:var(--weight-semibold)}.structured-content td{color:var(--color-text-secondary)}.message-user{background:var(--color-accent-bg);border-color:transparent}.message-assistant{background:var(--color-bg-subtle);border-color:transparent}.knowledge-map-page{display:grid;font-size:var(--text-xs);gap:22px}.knowledge-map-page h1{font-size:var(--text-4xl)}.knowledge-map-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.knowledge-map-header-title{display:grid;gap:6px}.knowledge-map-header h1{margin:0}.knowledge-map-header p{color:var(--color-text-secondary);font-size:var(--text-lg);margin:0}.knowledge-map-regenerate-button{background:var(--color-bg-surface);border:1px solid var(--color-border-input);border-radius:var(--radius-sm);color:var(--color-text-primary);cursor:pointer;font-size:var(--text-xs);min-height:var(--control-h-xs);padding:4px 12px;text-align:center;white-space:nowrap}.knowledge-map-regenerate-button:hover:not(:disabled){background:var(--color-bg-page)}.knowledge-map-regenerate-button:disabled{cursor:not-allowed;opacity:.6}.knowledge-map-tabs{display:flex;flex-wrap:wrap;gap:8px;max-width:900px}.knowledge-map-tab{background:var(--color-bg-surface);border:1px solid var(--color-border-input);border-radius:var(--radius-sm);color:var(--color-text-primary);cursor:pointer;font-size:var(--text-sm);min-height:var(--control-h-xs);padding:4px 16px}.knowledge-map-tab:hover:not(:disabled){background:var(--color-bg-page)}.knowledge-map-tab-active{background:var(--color-button-primary-bg);border-color:var(--color-button-primary-bg);color:var(--color-text-primary)}.knowledge-map-tab-active:hover:not(:disabled){background:var(--color-button-primary-hover)}.knowledge-map-tab-disabled{color:var(--color-text-muted);cursor:not-allowed;opacity:.6}.regenerate-confirmation{background:var(--color-warning-bg);border:1px solid var(--color-warning-border);border-radius:var(--radius-md);color:var(--color-warning-text);display:grid;font-size:var(--text-sm);gap:8px;padding:12px}.regenerate-confirmation__wait{color:var(--color-warning-text);font-size:var(--text-md);font-weight:var(--weight-bold);line-height:1.6}.knowledge-map-tree{display:grid;gap:30px;max-width:1180px}.book-recommendations-page{display:grid;font-size:var(--text-xs);gap:22px}.book-recommendations-page h1{font-size:var(--text-4xl)}.book-list{display:grid;gap:16px;max-width:1180px}.book-card{background:var(--color-bg-surface);border:1px solid var(--color-border-card);border-radius:var(--radius-lg);display:grid;gap:10px;padding:18px 20px}.book-card-header{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.book-card-title{font-size:var(--text-xl);font-weight:var(--weight-bold);margin:0}.book-card-author{color:var(--color-text-secondary);font-size:var(--text-sm)}.book-card-difficulty{background:#eef3ff;border:1px solid #8c8fb2;border-radius:var(--radius-pill);color:#2d3a8c;font-size:var(--text-xs);padding:2px 10px}.book-card-reason{color:var(--color-text-primary);font-size:var(--text-md);line-height:1.7;margin:0}.book-card-explain-button{background:var(--color-button-primary-bg);border:1px solid var(--color-button-primary-bg);border-radius:var(--radius-sm);color:var(--color-text-primary);cursor:pointer;font-size:var(--text-sm);justify-self:start;min-height:var(--control-h-xs);padding:0 16px}.book-card-explain-button:hover{background:var(--color-button-primary-hover);border-color:var(--color-button-primary-hover)}.term-explanations-page{display:grid;font-size:var(--text-xs);gap:22px}.term-explanations-page h1{font-size:var(--text-4xl)}.term-list{display:grid;gap:16px;max-width:1180px}.term-card{background:var(--color-bg-surface);border:1px solid var(--color-border-card);border-radius:var(--radius-lg);display:grid;gap:10px;padding:18px 20px}.term-card-header{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.term-card-title{font-size:var(--text-xl);font-weight:var(--weight-bold);margin:0}.term-card-knowledge-point{background:transparent;border:1px solid transparent;color:var(--color-text-primary);cursor:pointer;font-size:var(--text-sm);line-height:24px;min-height:var(--control-h-xs);padding:2px 12px;text-align:left;transition:background var(--motion-fast) ease}.term-card-knowledge-point:hover{background:var(--color-bg-page)}.term-card-explain-button{background:var(--color-button-primary-bg);border:1px solid var(--color-button-primary-bg);border-radius:var(--radius-sm);color:var(--color-text-primary);cursor:pointer;font-size:var(--text-sm);justify-self:start;min-height:var(--control-h-xs);padding:0 16px}.term-card-explain-button:hover{background:var(--color-button-primary-hover);border-color:var(--color-button-primary-hover)}.message-card-term{border-left:3px solid transparent}.map-board{display:grid;gap:20px}.map-board-title{align-items:center;background:#eef3ff;border:1px solid #8c8fb2;border-radius:var(--radius-md);color:#38336d;cursor:pointer;display:flex;font-size:var(--text-xl);font-weight:var(--weight-bold);justify-content:center;min-height:var(--control-h);padding:8px 16px;position:relative;text-align:center;width:100%}.map-board-title span:last-child{position:absolute;right:16px}.map-board:nth-child(5n+2) .map-board-title{background:#e7f6f1;border-color:#6ea394;color:#105f52}.map-board:nth-child(5n+3) .map-board-title{background:#fff4df;border-color:#b68b4a;color:#714a10}.map-board:nth-child(5n+4) .map-board-title{background:#fff0ed;border-color:#b98273;color:#7f321f}.map-board:nth-child(5n) .map-board-title{background:#eff7e8;border-color:#7ca46b;color:#2f661f}.map-modules{display:flex;flex-wrap:wrap;gap:22px;justify-content:center}.map-module{background:#f3f8ff;border:1px solid #7fa8c3;border-radius:var(--radius-lg);display:grid;flex:1 1 0;gap:0;min-width:0;padding:18px 16px}.map-modules:has(.map-module:nth-child(5)) .map-module{flex:0 1 calc((100% - 66px)/4)}.map-board:nth-child(5n+2) .map-module{background:#e9f7f2;border-color:#6ea394}.map-board:nth-child(5n+3) .map-module{background:#fff4df;border-color:#b68b4a}.map-board:nth-child(5n+4) .map-module{background:#fff0ed;border-color:#b98273}.map-board:nth-child(5n) .map-module{background:#eff7e8;border-color:#7ca46b}.map-module-header{align-items:start;display:flex;gap:8px;justify-content:space-between}.map-module-title{background:transparent;border:0;color:var(--color-accent-strong);cursor:pointer;flex:1 1 0;font-size:var(--text-md);font-weight:var(--weight-bold);line-height:1.1;min-width:0;padding:0;text-align:left}.map-module-title:hover{text-decoration:underline}.map-module-toggle{background:transparent;border:0;color:var(--color-text-secondary);cursor:pointer;flex:0 0 auto;font-size:var(--text-xs);line-height:1;padding:2px 7px}.map-module-toggle:hover{color:var(--color-text-primary)}.map-board:nth-child(5n+2) .map-module-title{color:#105f52}.map-board:nth-child(5n+3) .map-module-title{color:#714a10}.map-board:nth-child(5n+4) .map-module-title{color:#7f321f}.map-board:nth-child(5n) .map-module-title{color:#2f661f}.map-points{display:grid;gap:8px}.map-point{align-items:start;background:#ffffff80;border:1px solid transparent;border-radius:var(--radius-md);color:var(--color-text-primary);cursor:pointer;display:grid;gap:5px;justify-items:start;min-height:var(--control-h-lg);padding:8px 10px;text-align:left;width:100%}.map-point:hover{background:#ffffffd9;border-color:currentColor}.map-point-title{font-size:var(--text-xs);font-weight:var(--weight-semibold);line-height:1.35}.map-point-meta{align-items:center;color:var(--color-text-secondary);display:flex;flex-wrap:wrap;font-size:var(--text-xs);gap:6px;line-height:1.35}.map-point-tags,.map-point-status,.map-point-learning-type{color:inherit;font-size:inherit}.map-point-status{background:#ffffffa6;border:1px solid currentColor;border-radius:var(--radius-pill);padding:1px 7px}.map-point-learning-type{background:#0000000f;border:1px solid currentColor;border-radius:var(--radius-pill);padding:1px 7px;opacity:.85}@media(max-width:760px){.learning-shell{display:block;height:100dvh;min-height:100dvh;overflow:hidden;padding-top:calc(64px + env(safe-area-inset-top))}.learning-top-bar{background:#fffffff5;border-bottom:1px solid var(--color-border-card);height:calc(56px + env(safe-area-inset-top));left:0;padding:env(safe-area-inset-top) 16px 0;position:fixed;right:0;top:0;z-index:30}.mobile-menu-button{align-items:center;background:transparent;border:0;display:flex;font-size:var(--text-4xl);justify-content:center;min-height:var(--control-h);min-width:44px;padding:0}.side-nav-backdrop{background:#1018206b;border:0;border-radius:0;display:block;inset:0;min-height:0;opacity:0;padding:0;pointer-events:none;position:fixed;transition:opacity var(--motion-base) ease;z-index:39}.mobile-menu-open .side-nav-backdrop{opacity:1;pointer-events:auto}.side-nav{box-shadow:12px 0 32px #10182029;height:100dvh;left:0;max-width:min(84vw,320px);padding:calc(18px + env(safe-area-inset-top)) 16px calc(18px + env(safe-area-inset-bottom));position:fixed;top:0;transform:translate(-105%);transition:transform var(--motion-base) ease;width:100%;z-index:40}.mobile-menu-open .side-nav{transform:translate(0)}.primary-nav{margin-top:8px}.side-nav button{min-height:var(--control-h)}.workspace{height:100%;overscroll-behavior:contain;overflow-x:hidden;overflow-y:auto;padding:24px 16px calc(32px + env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch}.workspace:has(>.conversation-title)>.conversation-page{padding:18px 16px calc(32px + env(safe-area-inset-bottom))}.workspace h1.conversation-title{padding:12px 16px}.conversation-page{gap:18px}.knowledge-map-header{flex-direction:column;align-items:stretch}.knowledge-map-regenerate-button{align-self:flex-end}.knowledge-map-tabs{flex-direction:column;align-items:flex-start}.knowledge-map-tab{width:100%;text-align:left}.message-list{gap:14px}.message-bubble{max-width:100%;overflow-wrap:anywhere;padding:12px 14px}.message-user{max-width:92%}.message-form{gap:12px;padding:14px}.message-form textarea{font-size:var(--text-xl);min-height:60px}.message-form button[type=submit]{justify-self:stretch}.message-form-quick-actions{gap:6px}.message-form-quick-button{min-height:var(--control-h-sm);padding:8px 10px}.pending-exercise{align-items:stretch;flex-direction:column}.share-sheet{padding:18px}.share-sheet-actions button{flex:1;min-height:var(--control-h)}.workspace-actions{display:grid;grid-template-columns:1fr}.workspace-actions button{min-height:var(--control-h);width:100%}.map-board-title{font-size:var(--text-md);min-height:var(--control-h)}.map-modules{display:grid;grid-template-columns:1fr}.map-module,.map-modules:has(.map-module:nth-child(5)) .map-module{flex-basis:auto}.map-module-title{font-size:var(--text-md)}.map-point{min-height:var(--control-h-lg)}.ai-settings-form input:not([type=radio]),.ai-settings-form select{font-size:var(--text-xl);min-height:var(--control-h);width:100%}}@media(max-width:760px){.home-page{max-width:100%;padding:24px 20px 20px;min-height:auto}.course-shell{height:100dvh;min-height:100dvh}.course-shell-content{padding:20px 16px 48px}.home-tab{padding:6px 10px}.home-entries,.home-lists{grid-template-columns:1fr}.home-hero h1{font-size:var(--text-4xl)}.top-bar{margin-bottom:40px}.topic-hero-card{padding:18px}.topic-hero-card input{font-size:var(--text-xl);min-height:var(--control-h)}.topic-hero h1{font-size:var(--text-4xl)}.home-mission{margin-top:36px}.popular-topics-heading{margin-top:32px}.auth-page{padding:20px 16px}.auth-form{padding:16px}.verification-code-row{grid-template-columns:1fr}.verification-code-row button,.clarification-box button{width:100%}}@media(prefers-reduced-motion:reduce){.side-nav,.side-nav-backdrop{transition:none}}.voice-player-bar{position:sticky;bottom:0;z-index:100;display:flex;align-items:center;gap:12px;padding:10px 16px;background:var(--color-bg-surface);border-top:1px solid var(--color-border-soft);box-shadow:0 -2px 8px #0000000f}.voice-player-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.voice-player-title{font-size:var(--text-md);font-weight:var(--weight-semibold);color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.voice-player-status-text{font-size:var(--text-xs);color:var(--color-text-muted)}.voice-player-error{font-size:var(--text-xs);color:var(--color-error-text)}.voice-player-controls{display:flex;align-items:center;gap:4px;flex-shrink:0}.voice-player-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;border-radius:50%;background:var(--color-button-primary-bg);color:var(--color-text-primary);cursor:pointer;transition:background .15s;line-height:0}.voice-player-btn:hover{background:var(--color-button-primary-hover)}.voice-player-btn:disabled{opacity:.5;cursor:not-allowed}.voice-player-progress{position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--color-border-soft)}.voice-player-progress-bar{height:100%;background:var(--color-bg-inverse);transition:width var(--motion-base) ease}.message-action-button.is-playing{color:var(--color-text-primary)}@media(max-width:768px){.voice-player-bar{padding:8px 12px;gap:8px}.voice-player-title{font-size:var(--text-sm)}}.studio-node-panel{gap:4px;padding:8px}.studio-eval-space{border-top:1px solid var(--color-border-soft);display:grid;gap:10px;margin-top:12px;padding-top:12px}.studio-eval-space-header{align-items:center;display:flex;gap:10px}.studio-eval-loading{color:var(--color-accent);font-size:var(--text-sm)}.studio-eval-empty{color:var(--color-text-muted);font-size:var(--text-sm);margin:0}.studio-eval-result{display:grid;gap:8px}.studio-eval-header{align-items:center;display:flex;gap:10px}.studio-eval-score{color:var(--color-text-secondary);font-size:var(--text-sm)}.studio-eval-pass{background:var(--color-success-bg);border:1px solid var(--color-success-border);border-radius:var(--radius-sm);color:var(--color-success);font-size:var(--text-xs);padding:1px 8px}.studio-eval-fail{background:var(--color-error-bg);border:1px solid var(--color-error-border);border-radius:var(--radius-sm);color:var(--color-error-text);font-size:var(--text-xs);padding:1px 8px}.studio-eval-item{color:var(--color-text-secondary);font-size:var(--text-sm);line-height:1.6}.studio-eval-list{margin:4px 0 0;padding-left:20px}.studio-eval-reason{color:var(--color-text-muted);font-size:var(--text-xs);margin-top:2px}.studio-node-tree,.studio-node-item{display:grid;gap:4px}.studio-node-row{display:flex;align-items:center;gap:4px;padding:4px 8px;border-radius:var(--radius-sm)}.studio-node-row:hover{background:var(--color-bg-page)}.studio-node-row.selected{background:var(--color-accent-bg)}.studio-node-toggle{border:none;background:none;cursor:pointer;font-size:var(--text-xs);color:var(--color-text-secondary);padding:0;width:16px;text-align:center}.studio-node-label{border:none;background:none;cursor:pointer;text-align:left;flex:1;padding:2px 4px;font-size:var(--text-md);color:var(--color-text-primary)}.studio-node-type{color:var(--color-text-disabled);font-size:var(--text-xs)}.studio-node-action{border:1px solid var(--color-border-card);background:var(--color-bg-surface);cursor:pointer;border-radius:var(--radius-sm);padding:0 6px;font-size:var(--text-sm);color:var(--color-text-secondary)}.studio-node-action:hover{background:var(--color-bg-page)}.studio-node-children{margin-left:20px;border-left:2px solid var(--color-border-soft);padding-left:8px}.studio-form-hint{font-size:var(--text-xs);color:var(--color-text-disabled);font-weight:var(--weight-regular);margin-left:6px}.studio-draft-box{margin-top:12px;padding:12px 16px;border:1px solid var(--color-border-card);border-radius:var(--radius-md);background:var(--color-bg-subtle)}.studio-draft-box h4{margin:0 0 8px;font-size:var(--text-sm);color:var(--color-text-secondary)}.studio-draft-box ol{margin:0 0 8px;padding-left:20px}.studio-draft-box p{margin:4px 0;font-size:var(--text-md);color:var(--color-text-primary)}.studio-panel-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.studio-cognitive-path{display:grid;gap:6px;margin:8px 0;padding:10px 12px;border:1px solid var(--color-border-card);border-radius:var(--radius-md);background:var(--color-bg-subtle)}.studio-cognitive-path-option{display:flex;align-items:center;gap:6px;font-size:var(--text-md);color:var(--color-text-primary);cursor:pointer}.interaction-workspace{display:grid;grid-template-columns:minmax(200px,250px) minmax(0,1fr);gap:18px;margin-top:18px;align-items:start}.interaction-workspace-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;align-items:start}.interaction-segment{display:grid;gap:6px;padding:10px 12px;border:1px solid var(--color-border-soft);border-radius:var(--radius-md);background:var(--color-bg-subtle)}.interaction-segment.selected{border-color:var(--color-border-accent);box-shadow:0 0 0 1px var(--color-border-accent)}.interaction-split-hint{margin:0;font-size:var(--text-xs);color:var(--color-warning-text)}.interaction-segment-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.interaction-segment-header button{font-size:var(--text-xs);padding:2px 8px}.interaction-segment-break{display:flex;align-items:center;justify-content:center;margin:2px 0}.interaction-segment-break button{font-size:var(--text-xs);color:var(--color-text-muted);border-style:dashed;border-color:var(--color-border-card);background:transparent;cursor:pointer}.interaction-content-panel,.interaction-component-panel{height:calc(100vh - 230px);min-height:320px;overflow-y:auto;align-self:start}.interaction-component-list{display:grid;gap:8px}.interaction-component-group-label{font-size:var(--text-xs);font-weight:var(--weight-bold);color:var(--color-text-secondary);letter-spacing:.5px;margin-top:10px;padding-bottom:3px;border-bottom:1px solid var(--color-border-soft)}.interaction-component-group-label:first-child{margin-top:0}.interaction-component-card{display:grid;gap:4px;text-align:left;padding:10px 12px;border:1px solid var(--color-border-soft);border-radius:var(--radius-md);background:var(--color-bg-subtle);cursor:pointer}.interaction-component-preview{margin-top:4px;border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);padding:8px 10px;background:var(--color-bg-surface);pointer-events:none;-webkit-user-select:none;user-select:none}.interaction-component-card.selected{border-color:var(--color-border-accent);box-shadow:0 0 0 1px var(--color-border-accent)}.interaction-component-card span{font-size:var(--text-xs);color:var(--color-text-secondary)}.interaction-props-summary{color:var(--color-text-muted)}.interaction-generated{display:grid;gap:12px;margin-top:12px}.interaction-param{display:grid;gap:4px;margin-bottom:8px}.interaction-param-key{font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--color-text-secondary)}.interaction-preview{border:1px solid var(--color-border-soft);border-radius:var(--radius-md);padding:10px 12px;background:var(--color-bg-surface)}.interaction-segment-preview{max-height:120px;overflow-y:auto;white-space:pre-wrap;font-size:var(--text-sm);line-height:1.6;color:var(--color-text-secondary);border:1px dashed var(--color-border-card);border-radius:var(--radius-md);padding:8px 10px;background:var(--color-bg-subtle)}.interaction-assembly-list{display:grid;gap:10px;margin-top:10px}.interaction-assembly-block{display:grid;gap:6px;border:1px solid var(--color-border-soft);border-radius:var(--radius-md);padding:8px 10px;background:var(--color-bg-subtle)}.interaction-assembly-controls{display:flex;align-items:center;justify-content:space-between;gap:6px;font-size:var(--text-xs);color:var(--color-text-secondary)}.interaction-assembly-controls span{flex:1}@media(max-width:1080px){.interaction-workspace,.interaction-workspace-main{grid-template-columns:1fr}}@media(max-width:860px){.admin-grid{grid-template-columns:1fr}}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.node-dot{width:6px;height:6px;border-radius:50%;background:var(--color-accent);display:inline-block;flex:none}.hero-kicker{align-items:center;color:var(--color-text-secondary);display:flex;font-size:12px;gap:10px;letter-spacing:.42em;text-transform:uppercase}.hero-en{color:var(--color-text-muted);font-family:SF Mono,JetBrains Mono,Menlo,Consolas,monospace;font-size:12px;letter-spacing:.08em}.arr{font-family:SF Mono,JetBrains Mono,Menlo,Consolas,monospace}.btn{align-items:center;border:1px solid transparent;border-radius:999px;cursor:pointer;display:inline-flex;font-size:14px;gap:8px;height:44px;justify-content:center;padding:0 24px;transition:background-color .2s ease,border-color .2s ease,color .2s ease;white-space:nowrap}.btn .arr{transition:transform .2s ease}.btn:hover .arr{transform:translate(3px)}.btn-primary{background:var(--color-accent);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-accent-strong)}.btn-ghost{background:#fff;border-color:var(--color-border-card);color:var(--color-accent)}.btn-ghost:hover{background:var(--color-accent-bg);border-color:var(--color-focus-ring)}.top-bar-link{border:1px solid var(--color-border-accent);border-radius:999px;color:var(--color-accent);padding:8px 22px}.top-bar-link:hover{background:var(--color-accent);color:#fff}.home-page{max-width:1200px;padding:28px 48px}.home-hero-grid{display:grid;column-gap:64px;row-gap:44px;grid-template-columns:minmax(0,7fr) minmax(0,5fr);grid-template-areas:"copy map" "course map" "hot hot" "fields fields";padding:32px 0 72px}.home-hero-copy{grid-area:copy}.hero-course{grid-area:course;margin-top:0}.home-hero-map{grid-area:map}.home-index-hot-courses{grid-area:hot;margin-bottom:0}.home-index-hot-fields{grid-area:fields;margin-bottom:0}.home-hero-copy h1{font-size:clamp(40px,5.4vw,68px);font-weight:600;letter-spacing:.045em;line-height:1.2;margin:20px 0 16px}.home-hero-subtitle{font-size:19px;letter-spacing:.06em}.hero-course{border-top:1px solid var(--color-border-card);margin-top:44px;padding-top:26px}.hero-course h2{font-size:15px;font-weight:600;letter-spacing:.1em}.hero-course>div p{color:var(--color-text-secondary);font-size:14px;margin:6px 0 0}.hero-course-quick{align-items:flex-start;background:var(--color-accent-bg);border:0;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;gap:4px;margin:14px 0;padding:12px 16px;text-align:left;transition:background var(--motion-fast) ease;width:100%}.hero-course-quick:hover{background:#5b3a8e24}.hero-course-quick-title{color:var(--color-text-primary);font-size:14px;font-weight:600}.hero-course-quick-action{color:var(--color-accent);font-size:13px}.map-panel{border:1px solid var(--color-border-card);border-radius:8px;display:flex;flex-direction:column;overflow:hidden}.map-head{align-items:center;border-bottom:1px solid var(--color-border-soft);color:var(--color-text-muted);display:flex;font-family:SF Mono,JetBrains Mono,Menlo,Consolas,monospace;font-size:11px;justify-content:space-between;letter-spacing:.22em;padding:13px 18px}.map-contours{padding:10px 12px 0}.map-contours svg{display:block;height:auto;width:100%}.map-form{padding:20px 22px 24px}.map-form h2{font-size:15px;font-weight:600;letter-spacing:.1em}.map-form>p{color:var(--color-text-secondary);font-size:13px;margin:6px 0 16px}.map-form form{align-items:flex-end;display:flex;gap:12px}.map-form input{background:none;border:0;border-bottom:1px solid var(--color-border-card);flex:1;font-size:15px;min-width:0;padding:10px 2px}.map-form input::placeholder{color:var(--color-text-muted)}.map-form input:focus{border-bottom-color:var(--color-accent);box-shadow:0 1px 0 var(--color-accent);outline:none}.home-index-section{margin-bottom:72px}.sec-head{align-items:baseline;display:flex;gap:14px;margin-bottom:10px}.sec-label{color:var(--color-text-primary);font-size:14px;font-weight:500;letter-spacing:.3em}.sec-rule{background:var(--color-border-card);flex:1;height:1px;transform:translateY(-4px)}.sec-meta{color:var(--color-text-muted);font-family:SF Mono,JetBrains Mono,Menlo,Consolas,monospace;font-size:12px;letter-spacing:.06em}.index-list{list-style:none;margin:0;padding:0}.index-row{align-items:center;background:none;border:0;border-bottom:1px solid var(--color-border-card);cursor:pointer;display:grid;gap:20px;grid-template-columns:64px minmax(0,1fr) auto;padding:22px 4px;text-align:left;transition:background-color .2s ease;width:100%}.index-list li:first-child .index-row{border-top:1px solid var(--color-border-card)}.index-row:hover{background:#5b3a8e08}.idx-no{color:var(--color-text-muted);font-family:SF Mono,JetBrains Mono,Menlo,Consolas,monospace;font-size:13px;transition:color .2s ease}.index-row:hover .idx-no{color:var(--color-accent)}.idx-main{display:block;min-width:0}.idx-title{display:block;font-size:17px;font-weight:500;line-height:1.6}.idx-act{color:var(--color-text-secondary);font-size:14px;transition:color .2s ease}.idx-act .arr{display:inline-block;transition:transform .2s ease}.index-row:hover .idx-act{color:var(--color-accent)}.index-row:hover .idx-act .arr{transform:translate(4px)}.home-topic-chips{display:flex;flex-wrap:wrap;gap:12px;padding-top:14px}.popular-topic-chip{align-items:center;background:#fff;border:1px solid var(--color-border-card);border-radius:999px;color:var(--color-text-secondary);cursor:pointer;display:inline-flex;font-size:14px;gap:9px;padding:10px 20px;transition:border-color .2s ease,color .2s ease,background-color .2s ease}.popular-topic-chip:before{border:1px solid #8b5fd6;border-radius:50%;content:"";flex:none;height:5px;width:5px}.popular-topic-chip:hover{background:var(--color-accent-bg);border-color:var(--color-focus-ring);color:var(--color-accent)}.home-mission{padding:48px 0 96px;text-align:center}.mission-kicker{color:var(--color-text-muted);font-family:SF Mono,JetBrains Mono,Menlo,Consolas,monospace;font-size:11px;letter-spacing:.4em;margin-bottom:28px}.mission-kicker:before,.mission-kicker:after{background:var(--color-focus-ring);content:"";display:inline-block;height:1px;margin:0 14px 3px;width:36px}.mission-quote{font-size:clamp(21px,2.6vw,28px);font-weight:400;letter-spacing:.05em;line-height:1.95;margin:0 auto;max-width:22em}.mission-en{color:var(--color-text-muted);font-family:SF Mono,JetBrains Mono,Menlo,Consolas,monospace;font-size:12px;letter-spacing:.1em;margin-top:26px}.home-footer{border-top:1px solid var(--color-border-card);font-size:12px;padding:22px 0 36px;text-align:center}.home-footer a{color:var(--color-text-muted)}.course-shell-inner{max-width:1200px;padding:0 48px}.course-shell-content{padding:36px 48px 64px}.course-list-head{border-bottom:1px solid var(--color-border-card);margin-bottom:20px;padding:16px 0 36px}.course-page-title{font-size:40px;font-weight:500;letter-spacing:.04em;margin:14px 0 12px}.course-list-meta{color:var(--color-text-muted);font-family:SF Mono,JetBrains Mono,Menlo,Consolas,monospace;font-size:13px;letter-spacing:.06em}.side-nav{padding:20px 16px}.side-nav button[aria-current=page]{border-radius:8px}.history-list>strong{color:var(--color-text-muted);display:block;font-family:SF Mono,JetBrains Mono,Menlo,Consolas,monospace;font-size:11px;font-weight:400;letter-spacing:.3em}.workspace h1.conversation-title{font-size:30px;font-weight:600;letter-spacing:.04em}@media(max-width:768px){.home-page{padding:20px 16px 96px}.home-hero-grid{display:flex;flex-direction:column;gap:0;padding:24px 0 48px}.home-hero-copy{order:1}.hero-course{order:2;margin-top:28px}.home-index-hot-courses{order:3}.home-hero-map{order:4}.home-index-hot-fields{order:5}.home-hero-copy h1{font-size:clamp(34px,11vw,46px);letter-spacing:.06em}.home-hero-subtitle{font-size:16px}.map-panel{max-width:480px}.home-index-section{margin-bottom:56px}.sec-head{flex-wrap:wrap;gap:10px 12px}.sec-rule{display:none}.sec-head:after{background:var(--color-border-card);content:"";flex-basis:100%;height:1px;margin-top:2px}.index-row{gap:8px 12px;grid-template-columns:40px minmax(0,1fr);padding:20px 2px}.idx-act{grid-column:2;margin-top:8px}.popular-topic-chip{min-height:44px;padding:11px 18px}.home-mission{padding:40px 0 72px}.course-shell-content{padding:24px 16px 96px}.course-list-head{padding:12px 0 28px}.course-page-title{font-size:32px}.map-form form{align-items:stretch;flex-direction:column;gap:14px}.map-form .btn{width:100%}.home-tabs{background:#fffffff5;border-top:1px solid var(--color-border-card);bottom:0;display:grid;grid-template-columns:repeat(4,1fr);left:0;padding-bottom:env(safe-area-inset-bottom);position:fixed;right:0;z-index:70}.home-tab{border-radius:0;display:flex;flex-direction:column;font-size:12px;gap:3px;height:60px;justify-content:flex-start;letter-spacing:.08em;padding-top:10px}.home-tab:before{border:1px solid var(--color-text-muted);border-radius:50%;content:"";height:5px;transition:background-color .2s ease,border-color .2s ease;width:5px}.home-tab[aria-current=page]{background:none;color:var(--color-accent);font-weight:600}.home-tab[aria-current=page]:before{background:var(--color-accent);border-color:var(--color-accent)}.home-tab:hover{background:none}.workspace{padding-bottom:72px}.learning-shell .mobile-menu-button{display:flex}.workspace h1.conversation-title{font-size:24px}header.course-top-bar{backdrop-filter:none;-webkit-backdrop-filter:none}body.keyboard-open .home-tabs{display:none}.hero-course,.home-index-hot-courses,.home-hero-map{margin-bottom:36px}.scroll-to-bottom-button{bottom:calc(76px + env(safe-area-inset-bottom))}.workspace:has(>.conversation-title)>.conversation-page{padding-bottom:calc(88px + env(safe-area-inset-bottom))}.message-form textarea{height:44px;min-height:44px;overflow-y:auto;resize:none}.message-form{background:var(--color-bg-surface);border-left:0;border-radius:0;border-right:0;border-top:1px solid var(--color-border-card);bottom:calc(61px + env(safe-area-inset-bottom));left:0;padding:10px 16px calc(10px + env(safe-area-inset-bottom));position:fixed;right:0;z-index:60}.workspace:has(>.conversation-title)>.conversation-page{padding-bottom:calc(190px + env(safe-area-inset-bottom))}}.selection-note-menu{background:var(--color-bg-surface);border:1px solid var(--color-border-card);border-radius:var(--radius-md);box-shadow:var(--shadow-pop, 0 8px 24px rgba(0, 0, 0, .14));display:flex;flex-direction:column;min-width:120px;padding:6px;position:fixed;z-index:1000}.selection-note-item{background:none;border:0;border-radius:var(--radius-sm);color:var(--color-text-primary);cursor:pointer;font-size:var(--text-md);min-height:0;padding:8px 14px;text-align:left}.selection-note-item:hover{background:var(--color-accent-bg);color:var(--color-accent-strong)}.notes-page{margin:0 auto;max-width:1080px;padding:32px 24px 24px;min-height:100vh}.notes-top-bar{margin-bottom:32px}.notes-page>h1{font-size:var(--text-3xl);font-weight:var(--weight-semibold);margin:0 0 24px}.notes-cols{align-items:flex-start;display:grid;gap:24px;grid-template-columns:1fr 1fr}@media(max-width:900px){.notes-cols{grid-template-columns:1fr}}.notes-col{min-width:0}.notes-col>h2{border-bottom:1px solid var(--color-border-soft);font-size:var(--text-2xl);font-weight:var(--weight-semibold);margin:0 0 16px;padding-bottom:12px}.note-group{border:1px solid var(--color-border-card);border-radius:var(--radius-lg);margin-bottom:16px;padding:16px 20px}.note-group-title{font-size:var(--text-lg);font-weight:var(--weight-semibold);margin:0 0 12px}.note-group-sub{margin:8px 0 8px 16px}.note-group-sub-title{color:var(--color-text-secondary);font-size:var(--text-md);font-weight:var(--weight-semibold);margin:12px 0 6px}.note-group-point{margin:10px 0 10px 16px}.note-group-point-title{color:var(--color-accent-strong);font-size:var(--text-md);font-weight:var(--weight-semibold);margin:10px 0 6px}.note-item{background:var(--color-bg-subtle);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);margin:8px 0;padding:10px 14px}.note-item-head{align-items:center;display:flex;gap:10px;margin-bottom:6px}.note-type-badge{border-radius:var(--radius-sm);font-size:12px;font-weight:var(--weight-semibold);padding:1px 8px}.note-type-badge--highlight{background:#fdf6e3;border:1px solid #e8d9a0;color:#7a5c00}.note-type-badge--thought{background:var(--color-accent-bg);border:1px solid var(--color-border-accent);color:var(--color-accent-strong)}.note-item-time{color:var(--color-text-muted);font-size:12px}.note-item-delete{background:none;border:0;color:var(--color-text-muted);cursor:pointer;font-size:12px;margin-left:auto;min-height:0;padding:2px 6px}.note-item-delete:hover{color:var(--color-error-text)}.note-item-excerpt{color:var(--color-text-primary);font-size:var(--text-sm);line-height:1.6;margin:0;word-break:break-word}.note-item-annotation{background:var(--color-bg-surface);border-left:3px solid var(--color-border-accent);color:var(--color-text-secondary);font-size:var(--text-sm);line-height:1.6;margin:8px 0 0;padding:6px 10px;word-break:break-word}.selection-note-thought{display:flex;flex-direction:column;gap:8px;min-width:260px;padding:4px}.selection-note-thought-label{color:var(--color-text-secondary);font-size:13px;margin:0}.selection-note-thought-input{border:1px solid var(--color-border-input);border-radius:var(--radius-sm);font-size:var(--text-md);padding:8px 10px;resize:vertical;width:100%}.selection-note-thought-actions{display:flex;gap:4px;justify-content:flex-end}.home-page{padding-top:0}.top-bar{height:64px}.top-bar .home-tabs{margin-left:auto;order:1}.course-top-bar:has(.home-tabs){padding-left:max(48px,calc((100vw - 1200px)/2 + 48px));padding-right:max(48px,calc((100vw - 1200px)/2 + 48px))}.course-top-bar:has(.home-tabs) .home-tabs{margin-left:auto}html{overflow-y:scroll}.index-row.is-locked{cursor:not-allowed;opacity:.55}.index-row.is-locked:hover{background:none}.idx-lock{border:1px solid var(--color-border-card);border-radius:999px;color:var(--color-text-muted);font-size:12px;letter-spacing:.06em;padding:4px 12px;white-space:nowrap}.admin-course-access{border-top:1px solid var(--color-border-soft);display:grid;gap:12px;margin-top:16px;padding-top:16px}.admin-course-access h3{font-size:var(--text-md);font-weight:var(--weight-semibold);margin:0}.admin-access-modes{display:flex;flex-wrap:wrap;gap:8px}.admin-access-mode{background:transparent;border:1px solid var(--color-border-card);border-radius:999px;color:var(--color-text-secondary);cursor:pointer;font-size:var(--text-sm);padding:6px 14px}.admin-access-mode.is-active{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.admin-course-select{display:grid;gap:8px;max-height:260px;overflow-y:auto}.admin-course-option{align-items:center;display:flex;font-size:var(--text-sm);gap:8px;line-height:1.5}.admin-access-save{background:var(--color-accent);border:0;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:var(--text-sm);justify-self:start;padding:8px 18px}.admin-access-save:disabled{cursor:not-allowed;opacity:.5}.t-teaching-root{--t-color-action: #5B3A8E;--t-color-action-hover: #4B2E6F;--t-color-action-bg: rgba(91, 58, 142, .07);--t-color-action-border: rgba(91, 58, 142, .28);--t-color-action-bg-strong: rgba(91, 58, 142, .14);--t-color-success: #16a34a;--t-color-success-bg: rgba(22, 163, 74, .07);--t-color-success-border: rgba(22, 163, 74, .25);--t-color-warning: #d97706;--t-color-warning-bg: rgba(217, 119, 6, .08);--t-color-danger: #dc2626;--t-color-danger-bg: rgba(220, 38, 38, .05);--t-color-danger-border: rgba(220, 38, 38, .2);--t-color-series-a: #8B5FD6;--t-color-series-b: #0891b2;--t-color-series-c: #64748b;--t-color-text: #000000;--t-color-text-sub: #5A5466;--t-color-text-onaction: #ffffff;--t-color-bg-page: #FFFFFF;--t-color-surface: #ffffff;--t-color-surface-muted: #FFFFFF;--t-color-fill: rgba(75, 46, 111, .06);--t-color-border: rgba(75, 46, 111, .12);--t-color-border-soft: rgba(75, 46, 111, .08);--t-color-border-strong: rgba(75, 46, 111, .22);--t-space-1: 8px;--t-space-2: 8px;--t-space-3: 16px;--t-space-4: 16px;--t-space-5: 24px;--t-space-6: 24px;--t-space-8: 32px;--t-space-10: 40px;--t-space-14: 56px;--t-text-xs: 13px;--t-text-sm: 14px;--t-text-md: 16px;--t-text-body: 16px;--t-text-lg: 18px;--t-text-xl: 24px;--t-text-2xl: 32px;--t-text-3xl: 40px;--t-icon-sm: 20px;--t-icon-md: 24px;--t-icon-lg: 32px;--t-icon-xl: 48px;--t-weight-regular: 400;--t-weight-medium: 600;--t-weight-bold: 700;--t-weight-black: 800;--t-leading-body: 1.75;--t-leading-title: 1.35;--t-leading-label: 1.4;--t-font-sans: -apple-system, BlinkMacSystemFont, "PingFang SC", "Segoe UI", Roboto, sans-serif;--t-font-mono: "SF Mono", "Fira Code", Menlo, monospace;--t-font-num: "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace;--t-radius-sm: 8px;--t-radius-md: 12px;--t-radius-lg: 16px;--t-radius-pill: 999px;--t-control-h: 44px;--t-control-h-sm: 36px;--t-control-h-lg: 52px;--t-shadow-card: 0 1px 3px rgba(0, 0, 0, .04);--t-shadow-pop: 0 8px 30px rgba(0, 0, 0, .1);--t-shadow-cta: 0 6px 20px rgba(91, 58, 142, .3);--t-motion-instant: .1s;--t-motion-fast: .15s;--t-motion-base: .25s;--t-motion-slow: .4s;--t-motion-reveal: .8s;--t-ease-out: cubic-bezier(.25, 1, .5, 1);--t-z-sticky: 10;--t-z-fab: 50;--t-z-nav: 100;--t-z-modal: 200;--t-content-w: 800px;--t-content-w-wide: 1080px;--t-color-primary: var(--t-color-action);--t-color-primary-bg: var(--t-color-action-bg);--t-color-primary-bg-strong: var(--t-color-action-bg);--t-color-primary-border: var(--t-color-action-border);--t-color-accent: var(--t-color-action);--t-color-accent-hover: var(--t-color-action-hover);--t-color-tag-bg: var(--t-color-fill);--t-color-code-bg: var(--t-color-fill);--t-color-border-dashed: var(--t-color-action);--t-color-portal-bg: var(--t-color-action-bg);--t-color-portal-text: var(--t-color-action);--t-color-card-shadow-hover: var(--t-shadow-pop);--t-color-text-muted: var(--t-color-text-sub);--t-color-text-strong: var(--t-color-text);--t-space-xs: var(--t-space-1);--t-space-sm: var(--t-space-2);--t-space-md: var(--t-space-3);--t-space-lg: var(--t-space-4);--t-space-xl: var(--t-space-5);--t-space-2xl: var(--t-space-8);--t-text-body-leading: var(--t-leading-body);--t-text-small: var(--t-text-xs);--t-text-h1: var(--t-text-3xl);--t-text-h2: var(--t-text-2xl);--t-text-h3: var(--t-text-xl);font-family:var(--t-font-sans);color:var(--t-color-text);line-height:var(--t-leading-body)}.t-teaching-root button:focus-visible,.t-teaching-root a:focus-visible,.t-teaching-root [role=button]:focus-visible,.t-teaching-root input:focus-visible{outline:2px solid var(--t-color-action);outline-offset:2px}@media(prefers-reduced-motion:reduce){.t-teaching-root *,.t-teaching-root *:before,.t-teaching-root *:after{animation:none!important;transition:none!important}}.t-step-section{margin-top:var(--t-space-2xl)}.t-step-section-title{font-size:var(--t-text-body);font-weight:600;color:var(--t-color-primary);margin:0 0 var(--t-space-md) 0}.t-step-section-body{font-size:var(--t-text-body)}.t-step-section-body p{margin:0 0 var(--t-space-md) 0}.t-step-section-body p:last-child{margin-bottom:0}.t-demo-box{background:var(--t-color-surface-muted);border:1px solid var(--t-color-border);border-radius:var(--t-radius-md);padding:var(--t-space-xl);margin:var(--t-space-2xl) 0}.t-demo-box-title{font-size:var(--t-text-body);font-weight:600;margin:0 0 var(--t-space-md) 0}.t-demo-box-body{font-size:var(--t-text-body)}.t-demo-box-body p{margin:0 0 var(--t-space-md) 0}.t-demo-box-body p:last-child{margin-bottom:0}.t-qa-item{margin-top:var(--t-space-xl)}.t-qa-item-title{font-size:var(--t-text-body);font-weight:600;margin:0 0 var(--t-space-sm) 0}.t-qa-item-body{font-size:var(--t-text-body)}.t-qa-item-body p{margin:0 0 var(--t-space-md) 0}.t-qa-item-body p:last-child{margin-bottom:0}.t-summary-box{background:var(--t-color-primary-bg);border:1px solid var(--t-color-border);padding:var(--t-space-lg) var(--t-space-xl);margin-top:var(--t-space-2xl);border-radius:var(--t-radius-md)}.t-summary-box-title{font-size:var(--t-text-body);font-weight:600;margin:0 0 var(--t-space-md) 0}.t-summary-box-list{margin:0;padding-left:var(--t-space-xl)}.t-summary-box-list li{margin-bottom:var(--t-space-sm)}.t-summary-box-list li:last-child{margin-bottom:0}.t-demo-button{background:var(--t-color-action-bg);color:var(--t-color-action);border:1px solid var(--t-color-action-border);height:var(--t-control-h);padding:0 var(--t-space-5);border-radius:var(--t-radius-pill);cursor:pointer;font-size:var(--t-text-body);font-weight:var(--t-weight-medium);font-family:inherit;transition:background var(--t-motion-fast),border-color var(--t-motion-fast),transform var(--t-motion-fast)}.t-demo-button:hover{background:var(--t-color-action-bg-strong);border-color:var(--t-color-action)}.t-interaction-box{background:var(--t-color-surface);padding:var(--t-space-md);border-radius:var(--t-space-sm);box-shadow:var(--t-shadow-card);margin-bottom:var(--t-space-sm)}.t-thought-experiment{background:var(--t-color-surface);border:1px solid var(--t-color-border);padding:var(--t-space-xl);margin:var(--t-space-2xl) 0;border-radius:var(--t-radius-sm);box-shadow:var(--t-shadow-card)}.t-thought-experiment p{margin:0 0 var(--t-space-md) 0}.t-thought-experiment p:last-child{margin-bottom:0}.t-thought-experiment-emoji{font-size:var(--t-icon-lg);line-height:1;margin:0 0 var(--t-space-md) 0}.t-compare-table{width:100%;border-collapse:collapse;margin:var(--t-space-2xl) 0;font-size:var(--t-text-body)}.t-compare-table th,.t-compare-table td{border:1px solid var(--t-color-border);padding:var(--t-space-2) var(--t-space-4);text-align:left}.t-compare-table th{background:var(--t-color-surface-muted);font-weight:600}.t-callout{border-left:1px solid var(--t-color-border);margin:var(--t-space-sm) 0;padding:var(--t-space-sm) var(--t-space-xl);background:var(--t-color-surface-muted);color:var(--t-color-text-muted)}.t-callout p{margin:0}.t-formula-box{background:var(--t-color-primary-bg-strong);padding:var(--t-space-xl);margin:var(--t-space-2xl) 0;border-radius:var(--t-radius-md);border:1px dashed var(--t-color-border-dashed)}.t-formula-step{margin-bottom:var(--t-space-lg)}.t-formula-step:last-child{margin-bottom:0}.t-formula-step-tag{background:var(--t-color-primary-bg);border-radius:999px;color:var(--t-color-primary);display:inline-block;font-size:13px;margin:0 0 var(--t-space-xs) 0;padding:2px 10px}.t-formula-step-title{margin:0 0 var(--t-space-xs) 0;font-size:var(--t-text-body);font-weight:600}.t-formula-step-desc{margin:0 0 var(--t-space-xs) 0;font-size:var(--t-text-body);color:var(--t-color-text-sub)}.t-formula-step-example{border-left:1px solid var(--t-color-border);margin:var(--t-space-sm) 0;padding:var(--t-space-sm) var(--t-space-xl);background:var(--t-color-surface-muted);color:var(--t-color-text-muted);font-size:var(--t-text-body)}.t-formula-step-example p{margin:0}.t-arrow{text-align:center;font-size:var(--t-text-body);color:var(--t-color-text-muted);margin:var(--t-space-sm) 0}.t-highlight-box{background:var(--t-color-surface-muted);border:1px solid var(--t-color-border);padding:var(--t-space-lg);margin:var(--t-space-2xl) 0;border-radius:var(--t-radius-md)}.t-highlight-box p{margin:0}.t-card-grid{display:flex;flex-wrap:wrap;gap:var(--t-space-lg);justify-content:center;margin:var(--t-space-2xl) 0}.t-card-grid-item{width:150px;min-height:100px;border:1px solid var(--t-color-border);border-radius:var(--t-radius-md);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;cursor:pointer;transition:transform var(--t-motion-fast),box-shadow var(--t-motion-fast);text-decoration:none;color:var(--t-color-text);background:var(--t-color-surface);padding:var(--t-space-md)}.t-card-grid-item:hover{transform:translateY(-5px);box-shadow:var(--t-shadow-pop)}.t-card-grid-emoji{font-size:var(--t-icon-lg);margin-bottom:var(--t-space-sm)}.t-card-grid-body{display:flex;flex-direction:column;gap:4px}.t-card-grid-title{font-weight:var(--t-weight-medium)}.t-card-grid-desc{font-size:var(--t-text-sm);color:var(--t-color-text-sub);line-height:1.5}.t-statistics{border:1px solid var(--t-color-border);border-radius:var(--t-radius-md);background:var(--t-color-surface);padding:var(--t-space-lg);margin:var(--t-space-2xl) 0}.t-statistics-title{font-weight:var(--t-weight-bold);margin-bottom:var(--t-space-md)}.t-statistics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--t-space-md)}.t-statistics-item{text-align:center;padding:var(--t-space-md);border:1px solid var(--t-color-border-soft);border-radius:var(--t-radius-md);background:var(--t-color-surface)}.t-statistics-value{font-weight:var(--t-weight-black);color:var(--t-color-action);margin-bottom:var(--t-space-sm)}.t-statistics-label{color:var(--t-color-text-sub)}.t-quiz{border:1px solid var(--t-color-border);border-radius:var(--t-radius-md);background:var(--t-color-surface);padding:var(--t-space-lg);margin:var(--t-space-2xl) 0}.t-quiz-title{font-weight:var(--t-weight-bold);margin-bottom:var(--t-space-md)}.t-quiz-item{padding:var(--t-space-md) 0}.t-quiz-item+.t-quiz-item{border-top:1px solid var(--t-color-border-soft)}.t-quiz-question{font-weight:var(--t-weight-medium);margin-bottom:var(--t-space-md)}.t-quiz-options{display:flex;flex-wrap:wrap;gap:var(--t-space-md)}.t-quiz-option{border:1px solid var(--t-color-border);background:var(--t-color-surface);color:var(--t-color-text);border-radius:var(--t-radius-pill);padding:8px var(--t-space-lg);cursor:pointer;font-size:var(--t-text-body);font-family:inherit;transition:background var(--t-motion-fast),border-color var(--t-motion-fast)}.t-quiz-option:hover:not(:disabled){background:var(--t-color-action-bg);border-color:var(--t-color-action)}.t-quiz-option.is-correct{background:var(--t-color-success-bg);border-color:var(--t-color-success)}.t-quiz-option.is-wrong{background:var(--t-color-danger-bg);border-color:var(--t-color-danger)}.t-quiz-option.is-dim{opacity:.55}.t-quiz-feedback{margin-top:var(--t-space-md);padding:var(--t-space-md);border-radius:var(--t-radius-sm);border:1px solid var(--t-color-border-soft);background:var(--t-color-surface-muted);line-height:1.6}.t-quiz-feedback.is-correct{border-color:#228b5466}.t-quiz-feedback.is-wrong{border-color:#c2393466}.t-time-compare{display:flex;justify-content:space-around;text-align:center;margin:var(--t-space-2xl) 0;gap:var(--t-space-lg)}.t-time-compare-block{padding:var(--t-space-md) var(--t-space-lg);flex:1;border:1px solid var(--t-color-border);border-radius:var(--t-radius-md);background:var(--t-color-surface)}.t-time-compare-label{display:block;margin-bottom:var(--t-space-xs)}.t-time-compare-value{font-size:var(--t-text-body);font-weight:var(--t-weight-medium);color:var(--t-color-text-muted)}.t-warning-card{border:1px solid var(--t-color-danger-border);background:var(--t-color-danger-bg);padding:var(--t-space-lg);border-radius:var(--t-radius-md);margin-bottom:var(--t-space-2xl)}.t-warning-card-title{margin:0 0 var(--t-space-sm) 0;font-size:var(--t-text-body);font-weight:600}.t-warning-card-body{margin:0;font-size:var(--t-text-body)}.t-portal-links{margin:var(--t-space-2xl) 0}.t-portal-links-intro{margin:0 0 var(--t-space-sm) 0}.t-portal-links-list{display:flex;flex-wrap:wrap;gap:var(--t-space-md)}.t-portal-link{display:inline-block;padding:var(--t-space-sm) var(--t-space-md);background:var(--t-color-portal-bg);color:var(--t-color-portal-text);text-decoration:none;border-radius:var(--t-radius-pill);cursor:pointer;font-size:var(--t-text-body)}.t-portal-link:hover{filter:brightness(.96)}.t-info-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--t-space-lg);margin-top:var(--t-space-xl)}.t-info-card{background:var(--t-color-surface);border:1px solid var(--t-color-border);padding:var(--t-space-lg);border-radius:var(--t-radius-md)}.t-info-card-title{margin:0 0 var(--t-space-sm) 0;font-size:var(--t-text-body);font-weight:600}.t-info-card-body{margin:0;font-size:var(--t-text-body)}.t-scale-explorer{background:var(--t-color-surface-muted);border:1px solid var(--t-color-border);padding:var(--t-space-xl);border-radius:var(--t-radius-md);margin:var(--t-space-2xl) 0;text-align:center}.t-scale-explorer-buttons{display:flex;justify-content:center;flex-wrap:wrap;gap:var(--t-space-md);margin-bottom:var(--t-space-sm)}.t-scale-explorer-button{padding:var(--t-space-xs) var(--t-space-md);margin:0 var(--t-space-xs);cursor:pointer;background:var(--t-color-surface);border:1px solid var(--t-color-border);border-radius:var(--t-radius-pill);font-family:inherit;font-size:var(--t-text-body);color:var(--t-color-text)}.t-scale-explorer-button:hover,.t-scale-explorer-button.active{background:var(--t-color-action-bg-strong);color:var(--t-color-action);border-color:var(--t-color-action-border)}.t-scale-explorer-hint{margin:0 0 var(--t-space-md) 0;font-size:var(--t-text-body);color:var(--t-color-text-muted)}.t-scale-explorer-cards{display:flex;justify-content:space-around;flex-wrap:wrap;gap:var(--t-space-md);margin-top:var(--t-space-md)}.t-scale-explorer-card{text-align:center;font-size:var(--t-text-body);min-width:120px;flex:1}.t-scale-explorer-card-emoji{font-size:var(--t-icon-lg);margin-bottom:var(--t-space-xs)}.t-scale-explorer-card-label{margin-bottom:var(--t-space-xs)}.t-scale-explorer-card-text{margin:0;font-size:var(--t-text-body);color:var(--t-color-text-muted)}.t-side-by-side{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--t-space-lg);margin:var(--t-space-2xl) 0}.t-side-by-side-panel{background:var(--t-color-surface);border:1px solid var(--t-color-border);border-radius:var(--t-radius-md);padding:var(--t-space-lg);text-align:center}.t-side-by-side-title{margin:0 0 var(--t-space-xs) 0;font-size:var(--t-text-body);font-weight:600}.t-side-by-side-subtitle{margin:0;font-size:var(--t-text-body);color:var(--t-color-text-muted)}.t-side-by-side-conclusion{margin-top:var(--t-space-md);text-align:center;font-size:var(--t-text-body)}@media(max-width:600px){.t-side-by-side{grid-template-columns:1fr}}.t-step-flow{background:var(--t-color-surface);border:1px solid var(--t-color-border);border-radius:var(--t-radius-md);padding:var(--t-space-xl);margin:var(--t-space-2xl) 0;text-align:center;box-shadow:var(--t-shadow-card)}.t-step-flow-rail{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;margin-bottom:var(--t-space-lg)}.t-step-flow-rail-node{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--t-text-body);font-weight:600;font-family:inherit;border:1px solid var(--t-color-border);background:var(--t-color-surface);color:var(--t-color-text-muted);cursor:pointer;padding:0;transition:border-color .15s ease,background .15s ease,color .15s ease,transform .15s ease}.t-step-flow-rail-node:hover{border-color:var(--t-color-accent);color:var(--t-color-accent)}.t-step-flow-rail-node.done{background:var(--t-color-primary-bg);border-color:var(--t-color-primary-border);color:var(--t-color-primary)}.t-step-flow-rail-node.active{background:var(--t-color-action-bg);border-color:var(--t-color-action);color:var(--t-color-action);transform:scale(1.12)}.t-step-flow-rail-link{width:34px;height:2px;background:var(--t-color-border);flex:none}.t-step-flow-rail-link.done{background:var(--t-color-primary-border)}.t-step-flow-body{min-height:96px;display:flex;flex-direction:column;align-items:center;justify-content:center}.t-step-flow-visual{font-size:var(--t-icon-xl);line-height:1.2;margin-bottom:var(--t-space-sm)}.t-step-flow-label{font-weight:600;font-size:var(--t-text-body);color:var(--t-color-primary);margin-bottom:var(--t-space-sm)}.t-step-flow-desc{margin:0 auto var(--t-space-md) auto;max-width:520px;font-size:var(--t-text-body);color:var(--t-color-text)}.t-step-flow-controls{display:flex;justify-content:center;align-items:center;gap:var(--t-space-md);margin-top:var(--t-space-lg)}.t-step-flow-progress{font-size:var(--t-text-body);color:var(--t-color-text-muted);min-width:88px}.t-step-flow-btn-ghost{background:var(--t-color-surface);color:var(--t-color-text);border:1px solid var(--t-color-border);padding:var(--t-space-sm) var(--t-space-lg);border-radius:var(--t-radius-pill);cursor:pointer;font-size:var(--t-text-body);font-family:inherit}.t-step-flow-btn-ghost:hover:not(:disabled){border-color:var(--t-color-accent);color:var(--t-color-accent)}.t-step-flow-btn-ghost:disabled,.t-demo-button:disabled{opacity:.45;cursor:default}.t-card-search{background:var(--t-color-surface-muted);border:1px solid var(--t-color-border);border-radius:var(--t-radius-md);padding:var(--t-space-xl);margin:var(--t-space-2xl) 0}.t-card-search-query{margin:0 0 var(--t-space-md) 0;text-align:center;font-weight:600}.t-card-search-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--t-space-md)}.t-card-search-card{background:var(--t-color-surface);border:1px solid var(--t-color-border);border-radius:var(--t-radius-sm);padding:var(--t-space-md);font-size:var(--t-text-body);text-align:center;transition:background var(--t-motion-fast),border-color var(--t-motion-fast)}.t-card-search-card.match{background:var(--t-color-warning-bg);border-color:var(--t-color-warning)}.t-card-search-card-title{font-weight:600;margin-bottom:var(--t-space-xs)}.t-card-search-card-frag{margin:0;color:var(--t-color-text-muted);font-size:var(--t-text-body)}.t-card-search-legend{margin-top:var(--t-space-md);text-align:center;font-size:var(--t-text-body);color:var(--t-color-text-muted)}.t-tldr-box{background:var(--t-color-primary-bg);border-radius:var(--t-radius-md);padding:var(--t-space-md) var(--t-space-lg);margin:var(--t-space-lg) 0}.t-tldr-tag{display:inline-block;font-size:var(--t-text-body);color:var(--t-color-primary);margin-right:var(--t-space-sm)}.t-tldr-box p{display:inline;margin:0;line-height:var(--t-text-body-leading)}.t-vs-area{display:flex;align-items:stretch;gap:var(--t-space-md);margin:var(--t-space-2xl) 0;flex-wrap:wrap}.t-vs-box{flex:1;min-width:200px;border:1px solid var(--t-color-border);border-radius:var(--t-radius-md);padding:var(--t-space-lg);background:var(--t-color-surface-muted)}.t-vs-label{font-weight:600;font-size:var(--t-text-body);margin-bottom:var(--t-space-sm);color:var(--t-color-primary)}.t-vs-content{font-size:var(--t-text-body);line-height:var(--t-text-body-leading);color:var(--t-color-text)}.t-vs-arrow{display:flex;align-items:center;font-size:var(--t-icon-lg);font-weight:700;color:var(--t-color-accent);flex-shrink:0}.t-cap-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--t-space-md);margin:var(--t-space-2xl) 0}.t-cap-card{border:1px solid var(--t-color-border);border-radius:var(--t-radius-md);padding:var(--t-space-lg);text-align:center;cursor:pointer;transition:border-color var(--t-motion-fast),box-shadow var(--t-motion-fast);background:var(--t-color-surface)}.t-cap-card:hover{border-color:var(--t-color-primary-border)}.t-cap-card-active{border-color:var(--t-color-accent);box-shadow:var(--t-shadow-pop)}.t-cap-icon{font-size:var(--t-icon-lg);display:block;margin-bottom:var(--t-space-sm)}.t-cap-name{font-weight:600;font-size:var(--t-text-body);margin-bottom:var(--t-space-xs)}.t-cap-desc{font-size:var(--t-text-body);color:var(--t-color-text-muted);line-height:1.5}.t-demo-r-badge{font-size:var(--t-text-body);color:var(--t-color-text-muted);background:var(--t-color-tag-bg);padding:2px var(--t-space-sm);border-radius:var(--t-radius-pill)}.t-demo-step-dot{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--t-text-body);background:var(--t-color-action-bg);flex-shrink:0}.t-demo-step-phase{font-size:var(--t-text-body);letter-spacing:.05em;margin-bottom:2px;color:var(--t-color-accent)}.t-demo-step-connector{width:2px;height:var(--t-space-lg);margin-left:17px;background:var(--t-color-border)}.t-demo-final-box{margin-top:var(--t-space-2xl);padding:var(--t-space-md) var(--t-space-lg);background:var(--t-color-primary-bg);border-radius:var(--t-radius-md);border:1px solid var(--t-color-border)}.t-demo-ctrl-hint{font-size:var(--t-text-body);color:var(--t-color-text-muted)}.t-problem-box{border:1px solid var(--t-color-border);border-radius:var(--t-radius-md);padding:var(--t-space-xl);margin:var(--t-space-2xl) 0;background:var(--t-color-surface-muted)}.t-problem-label{font-size:var(--t-text-body);font-weight:600;color:var(--t-color-primary);margin-bottom:var(--t-space-lg)}.t-problem-icon{font-size:var(--t-icon-md);flex-shrink:0;line-height:1.4}.t-solution-chain{margin:var(--t-space-2xl) 0;padding:var(--t-space-lg) var(--t-space-xl);background:var(--t-color-surface-muted);border-radius:var(--t-radius-md);border:1px solid var(--t-color-border)}.t-chain-num{width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;background:var(--t-color-primary);color:var(--t-color-text-onaction);flex-shrink:0}.t-chain-arrow{margin-left:14px;padding:var(--t-space-xs) 0 var(--t-space-xs) var(--t-space-xs);font-size:var(--t-text-body);color:var(--t-color-text-muted);border-left:1px solid var(--t-color-border)}.t-skill-list{display:flex;flex-direction:column;gap:var(--t-space-sm);margin:var(--t-space-2xl) 0}.t-skill-btn{display:flex;align-items:flex-start;gap:var(--t-space-md);padding:var(--t-space-md) var(--t-space-lg);border:1px solid var(--t-color-border);border-radius:var(--t-radius-pill);background:var(--t-color-surface);cursor:pointer;text-align:left;transition:border-color var(--t-motion-fast),box-shadow var(--t-motion-fast);font:inherit;color:inherit}.t-skill-btn-active{border-color:var(--t-color-accent);box-shadow:var(--t-shadow-pop)}.t-skill-num{font-size:var(--t-text-body);color:var(--t-color-text-muted);flex-shrink:0;min-width:var(--t-space-10)}.t-skill-text p{margin:0;font-size:var(--t-text-body);color:var(--t-color-text-muted)}.t-cmp-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--t-space-lg);margin:var(--t-space-2xl) 0}.t-cmp-box{border-radius:var(--t-radius-md);overflow:hidden;border:1px solid var(--t-color-border)}.t-cmp-prompt{padding:var(--t-space-md);font-family:var(--t-font-mono);font-size:var(--t-text-body);line-height:1.6;background:var(--t-color-code-bg);white-space:pre-wrap;word-break:break-word;border-bottom:1px solid var(--t-color-border-soft)}.t-loop-circle{width:64px;height:64px;border-radius:var(--t-radius-md);display:flex;flex-wrap:wrap;align-items:center;justify-content:center;padding:0 var(--t-space-1);font-size:var(--t-text-body);color:var(--t-color-text-onaction);margin-bottom:var(--t-space-sm);box-shadow:var(--t-shadow-card);background:var(--t-color-primary);text-align:center}.t-loop-label{font-size:var(--t-text-body);color:var(--t-color-text-muted);text-align:center}.t-loop-arrow{font-size:var(--t-icon-sm);color:var(--t-color-accent);font-weight:700;padding-top:var(--t-space-lg);opacity:.5}@media(max-width:600px){.t-loop-step{min-width:70px;padding:var(--t-space-sm) var(--t-space-xs)}.t-loop-circle{width:56px;height:56px;font-size:var(--t-text-body)}}.t-method-grid{display:flex;flex-direction:column;gap:var(--t-space-lg);margin:var(--t-space-2xl) 0}.t-method-card{position:relative;overflow:hidden;background:var(--t-color-surface);border:1px solid var(--t-color-border);border-radius:var(--t-radius-md);padding:var(--t-space-xl) var(--t-space-2xl);transition:border-color var(--t-motion-fast),box-shadow var(--t-motion-fast)}.t-method-num{position:absolute;top:12px;right:18px;font-size:42px;font-weight:900;color:var(--t-color-action-bg);line-height:1;pointer-events:none}.t-method-example{background:var(--t-color-surface-muted);border-radius:var(--t-radius-sm);padding:var(--t-space-md) var(--t-space-lg);margin-top:var(--t-space-md);font-size:var(--t-text-body);line-height:1.7;color:var(--t-color-text-muted)}.t-concept-card{background:var(--t-color-surface);border:1px solid var(--t-color-border);border-radius:var(--t-radius-md);padding:var(--t-space-xl) var(--t-space-2xl);margin:var(--t-space-2xl) 0;box-shadow:var(--t-shadow-card)}.t-concept-card-title{font-size:var(--t-text-body);font-weight:var(--t-weight-bold);color:var(--t-color-primary);margin:0}.t-concept-card-essence{color:var(--t-color-text-muted);font-size:var(--t-text-body);margin:0 0 var(--t-space-md);padding-bottom:var(--t-space-md);border-bottom:1px solid var(--t-color-border-soft)}.t-boundary-concept{font-size:var(--t-text-body);font-weight:var(--t-weight-bold);color:var(--t-color-text);margin-bottom:var(--t-space-md)}.t-boundary-col{border-radius:var(--t-radius-md);padding:var(--t-space-md) var(--t-space-lg);border:1px solid}.t-boundary-list li{font-size:var(--t-text-body);line-height:1.7;margin-bottom:var(--t-space-xs);color:var(--t-color-text)}.t-timeline-title{font-size:var(--t-text-body);font-weight:var(--t-weight-bold);color:var(--t-color-text);margin-bottom:var(--t-space-lg)}.t-timeline-track:before{content:"";position:absolute;left:10px;top:6px;bottom:6px;width:2px;background:var(--t-color-primary-border)}.t-timeline-time{font-size:var(--t-text-body);color:var(--t-color-accent);margin-bottom:2px}.t-timeline-desc{color:var(--t-color-text-muted);font-size:var(--t-text-body);line-height:1.7}.t-causal-intro{color:var(--t-color-text-muted);font-size:var(--t-text-body);margin:0 0 var(--t-space-md)}.t-causal-node{background:var(--t-color-primary-bg);border:1px solid var(--t-color-primary-border);border-radius:var(--t-radius-md);padding:var(--t-space-sm) var(--t-space-lg);color:var(--t-color-primary);text-align:center;max-width:80%}.t-causal-arrow{color:var(--t-color-accent);font-size:var(--t-text-body);font-weight:700;margin:var(--t-space-xs) 0}.t-block-render-error{color:var(--t-color-warning);font-size:var(--t-text-body);border:1px dashed var(--t-color-warning);border-radius:var(--t-radius-sm);padding:var(--t-space-2) var(--t-space-3);background:var(--t-color-warning-bg)}.t-diagram{background:var(--t-color-surface-muted);border:1px solid var(--t-color-border);border-radius:var(--t-radius-md);padding:var(--t-space-xl);margin:var(--t-space-2xl) 0}.t-diagram-title{font-weight:700;font-size:var(--t-text-body);margin-bottom:var(--t-space-md)}.t-diagram-body{display:flex;flex-direction:column;align-items:stretch}.t-diagram-node{border:1px solid var(--t-color-border);border-radius:var(--t-radius-md);background:var(--t-color-surface);cursor:grab}.t-diagram-node.drag-over{border-color:var(--t-color-accent);box-shadow:0 0 0 1px var(--t-color-accent)}.t-diagram-node-row{display:flex;align-items:center;gap:var(--t-space-sm);padding:var(--t-space-sm) var(--t-space-md)}.t-diagram-node-drag{color:var(--t-color-text-muted);font-size:var(--t-text-body);-webkit-user-select:none;user-select:none;cursor:grab}.t-diagram-node-label{flex:1;text-align:left;background:none;border:none;cursor:pointer;font:inherit;padding:0;color:var(--t-color-text)}.t-diagram-node-toggle{background:none;border:0;color:var(--t-color-accent);cursor:pointer;font-size:var(--t-text-body);padding:var(--t-space-1) var(--t-space-2);white-space:nowrap}.t-diagram-node-toggle:hover{color:var(--t-color-action-hover)}.t-diagram-node-detail{border-top:1px solid var(--t-color-border-soft);padding:var(--t-space-md) var(--t-space-lg);font-size:var(--t-text-body);color:var(--t-color-text);background:var(--t-color-primary-bg);border-radius:0 0 var(--t-radius-md) var(--t-radius-md)}.t-diagram-node-detail p{margin:0 0 var(--t-space-sm) 0}.t-diagram-node-detail p:last-child{margin-bottom:0}.t-diagram-node-vars{margin:var(--t-space-sm) 0 0 0;padding-left:var(--t-space-xl)}.t-diagram-node-vars li{margin-bottom:var(--t-space-xs)}.t-diagram-arrow{text-align:center;color:var(--t-color-accent);font-weight:700;font-size:var(--t-text-body);padding:var(--t-space-xs) 0;line-height:1}.t-process-animation{border:1px solid var(--t-color-border);border-radius:var(--t-radius-md);overflow:hidden;margin:var(--t-space-2xl) 0;background:var(--t-color-surface)}.t-process-step{text-align:center;min-height:88px;display:flex;flex-direction:column;align-items:center;justify-content:center}.t-process-step-emoji{font-size:var(--t-icon-xl);line-height:1.2;margin-bottom:var(--t-space-sm)}.t-process-step-label{font-size:var(--t-text-body);color:var(--t-color-primary);margin-bottom:var(--t-space-sm)}.t-process-step-text{margin:0 auto;max-width:520px;font-size:var(--t-text-body);color:var(--t-color-text)}.t-process-progress{display:flex;gap:var(--t-space-md);margin-top:var(--t-space-lg)}.t-process-progress-hit{flex:1;padding:8px 0;background:none;border:none;cursor:pointer}.t-process-progress-hit:hover .t-process-progress-seg{background:var(--t-color-primary-border)}.t-process-progress-seg{display:block;height:6px;border-radius:999px;background:var(--t-color-border);transition:background .3s}.t-process-progress-hit[aria-current=step] .t-process-progress-seg,.t-process-progress-hit[aria-current=step]:hover .t-process-progress-seg{background:var(--t-color-accent)}.t-process-progress-seg.done{background:var(--t-color-primary);opacity:.6}@keyframes t-process-pulse{0%,to{opacity:1}50%{opacity:.45}}.t-process-animation.is-running .t-process-progress-hit[aria-current=step] .t-process-progress-seg{animation:t-process-pulse 1.4s ease-in-out infinite}.t-param-sim{background:var(--t-color-surface-muted);border:1px solid var(--t-color-border);border-radius:var(--t-radius-md);padding:var(--t-space-xl);margin:var(--t-space-2xl) 0}.t-param-sim-title{font-weight:700;font-size:var(--t-text-body);margin-bottom:var(--t-space-md)}.t-param-sim-sliders{display:grid;gap:var(--t-space-md)}.t-param-sim-row-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:var(--t-space-xs)}.t-param-sim-value{color:var(--t-color-accent);font-weight:var(--t-weight-medium)}.t-param-sim-row input[type=range]{width:100%;accent-color:var(--t-color-text)}.t-param-sim-result{margin-top:var(--t-space-lg);padding:var(--t-space-md) var(--t-space-lg);background:var(--t-color-primary-bg);border-left:1px solid var(--t-color-border);border-radius:var(--t-radius-sm);display:flex;justify-content:space-between;align-items:baseline;gap:var(--t-space-md)}.t-param-sim-result-label{font-weight:600;color:var(--t-color-primary)}.t-param-sim-result-value{font-size:var(--t-icon-sm);font-weight:700;color:var(--t-color-text-strong);text-align:right}.t-param-sim-result-invalid{color:var(--t-color-text-muted);font-size:var(--t-text-body)}.t-derivation{background:var(--t-color-surface-muted);border:1px solid var(--t-color-border);border-radius:var(--t-radius-md);padding:var(--t-space-xl);margin:var(--t-space-2xl) 0}.t-derivation-title{font-weight:700;font-size:var(--t-text-body);margin-bottom:var(--t-space-sm)}.t-derivation-progress{font-size:var(--t-text-body);color:var(--t-color-text-muted);margin-bottom:var(--t-space-md)}.t-derivation-chain{display:flex;flex-direction:column}.t-derivation-step{display:flex;gap:var(--t-space-md);background:var(--t-color-surface);border:1px solid var(--t-color-border);border-radius:var(--t-radius-md);padding:var(--t-space-md) var(--t-space-lg)}.t-derivation-step-no{align-items:center;background:var(--t-color-primary);border-radius:8px;color:var(--t-color-text-onaction);display:flex;flex-shrink:0;font-size:13px;font-weight:700;height:24px;justify-content:center;min-width:24px;padding:0 8px}.t-derivation-step-body{flex:1}.t-derivation-step-title{font-weight:600;margin-bottom:var(--t-space-xs)}.t-derivation-step-body p{margin:0;color:var(--t-color-text)}.t-derivation-restart{margin-top:var(--t-space-md);background:transparent;color:var(--t-color-accent);border:1px solid var(--t-color-accent)}.t-guided{background:var(--t-color-surface-muted);border:1px solid var(--t-color-border);border-radius:var(--t-radius-md);padding:var(--t-space-xl);margin:var(--t-space-2xl) 0}.t-guided-title{font-weight:700;font-size:var(--t-text-body);margin-bottom:var(--t-space-md)}.t-guided-q{font-weight:600}.t-guided-history{display:grid;gap:var(--t-space-md);margin:var(--t-space-md) 0}.t-guided-round{display:grid;gap:var(--t-space-xs)}.t-guided-answer{font-size:var(--t-text-body);color:var(--t-color-text);padding:var(--t-space-sm) var(--t-space-md);background:var(--t-color-surface);border:1px solid var(--t-color-border);border-radius:var(--t-radius-pill)}.t-guided-hint{font-size:var(--t-text-body);color:var(--t-color-primary);background:var(--t-color-primary-bg);border-radius:var(--t-radius-sm);padding:var(--t-space-sm) var(--t-space-md)}.t-guided-input{display:grid;gap:var(--t-space-sm)}.t-guided-input textarea{font:inherit;padding:var(--t-space-sm);border:1px solid var(--t-color-border);border-radius:var(--t-radius-sm)}.t-guided-input textarea:focus{border-color:var(--t-color-action);outline:none;box-shadow:0 0 0 3px var(--t-color-action-bg)}.t-guided-done{display:grid;gap:var(--t-space-md);margin-top:var(--t-space-md)}.t-hypothesis{background:var(--t-color-surface-muted);border:1px solid var(--t-color-border);border-radius:var(--t-radius-md);padding:var(--t-space-xl);margin:var(--t-space-2xl) 0}.t-hypothesis-title{font-weight:700;font-size:var(--t-text-body);margin-bottom:var(--t-space-md)}.t-hypothesis-progress{display:flex;gap:var(--t-space-md);margin-bottom:var(--t-space-md);flex-wrap:wrap}.t-hypothesis-progress-seg{flex:1;min-width:90px;text-align:center;font-size:var(--t-text-body);padding:var(--t-space-xs) var(--t-space-sm);border-radius:var(--t-radius-sm);background:var(--t-color-tag-bg);color:var(--t-color-text-muted)}.t-hypothesis-progress-seg.active{background:var(--t-color-accent);color:var(--t-color-text-onaction)}.t-hypothesis-progress-seg.done{background:var(--t-color-primary);color:var(--t-color-text-onaction);opacity:.75}.t-hypothesis-stage-label{font-size:var(--t-text-body);font-weight:700;letter-spacing:.05em;color:var(--t-color-accent);margin-bottom:var(--t-space-sm)}.t-hypothesis-evidence{display:grid;gap:var(--t-space-sm);margin-bottom:var(--t-space-md)}.t-hypothesis-evidence-item{text-align:left;background:var(--t-color-surface);border:1px solid var(--t-color-border);border-radius:var(--t-radius-pill);padding:var(--t-space-sm) var(--t-space-md);cursor:pointer;font:inherit;color:var(--t-color-text)}.t-hypothesis-evidence-item.selected{border-color:var(--t-color-accent);background:var(--t-color-primary-bg);box-shadow:0 0 0 1px var(--t-color-accent)}.t-hypothesis-evidence-label{font-weight:600}.t-hypothesis-evidence-text{font-size:var(--t-text-body);color:var(--t-color-text-muted)}.t-scenario{border:1px solid var(--t-color-border);border-radius:var(--t-radius-md);overflow:hidden;margin:var(--t-space-2xl) 0;background:var(--t-color-surface)}.t-scenario-title{font-weight:700;font-size:var(--t-text-body);padding:var(--t-space-md) var(--t-space-lg);background:var(--t-color-surface-muted);border-bottom:1px solid var(--t-color-border)}.t-scenario-situation{font-size:var(--t-text-body);line-height:var(--t-text-body-leading)}.t-scenario-newinfo{margin-top:var(--t-space-md);padding:var(--t-space-sm) var(--t-space-md);background:var(--t-color-warning-bg);border-left:1px solid var(--t-color-warning);border-radius:var(--t-radius-sm);font-size:var(--t-text-body)}.t-scenario-choices{display:flex;flex-direction:column;gap:var(--t-space-md);margin-top:var(--t-space-lg)}.t-scenario-choices .t-demo-button{text-align:left}.t-scenario-result{margin-top:var(--t-space-lg)}.t-decision-tree{background:var(--t-color-surface-muted);border:1px solid var(--t-color-border);border-radius:var(--t-radius-md);padding:var(--t-space-xl);margin:var(--t-space-2xl) 0}.t-decision-tree-title{font-weight:700;font-size:var(--t-text-body);margin-bottom:var(--t-space-md)}.t-decision-tree-path{font-size:var(--t-text-body);color:var(--t-color-text-muted);margin-bottom:var(--t-space-md);word-break:break-all}.t-decision-tree-path-seg{color:var(--t-color-text-muted)}.t-decision-tree-current{font-weight:600;margin-bottom:var(--t-space-md)}.t-decision-tree-branches{display:grid;gap:var(--t-space-md)}.t-decision-tree-branch{text-align:left;background:var(--t-color-surface);border:1px solid var(--t-color-border);border-radius:var(--t-radius-pill);padding:var(--t-space-sm) var(--t-space-md);cursor:pointer;font:inherit;color:var(--t-color-text);transition:background var(--t-motion-fast),border-color var(--t-motion-fast)}.t-decision-tree-branch:hover{border-color:var(--t-color-accent);background:var(--t-color-primary-bg)}.t-decision-tree-action{padding:var(--t-space-md) var(--t-space-lg);background:var(--t-color-primary-bg);border-radius:var(--t-radius-sm);border-left:1px solid var(--t-color-border);margin-bottom:var(--t-space-md)}.t-decision-tree-back{margin-top:var(--t-space-md);background:none;border:none;color:var(--t-color-text-muted);cursor:pointer;font:inherit;font-size:var(--t-text-body);padding:0}.t-custom-component{background:var(--t-color-primary-bg);border:1px solid var(--t-color-primary-border);border-radius:var(--t-radius-md);padding:var(--t-space-lg);margin:var(--t-space-2xl) 0}.t-custom-component .t-custom-title{margin:0 0 var(--t-space-sm);font-size:var(--t-text-body);color:var(--t-color-primary)}.t-custom-component p{margin:0 0 var(--t-space-sm)}.t-custom-component p:last-child{margin-bottom:0}.t-summary-box,.t-highlight-box,.t-demo-box,.t-info-card,.t-problem-box,.t-formula-box,.t-warning-card,.t-compare-table,.t-scenario,.t-boundary-grid,.t-side-by-side,.t-statistics,.t-quiz{box-shadow:var(--t-shadow-card)}.t-demo-button:active:not(:disabled),.t-step-flow-btn-ghost:active,.t-quiz-option:active:not(:disabled),.t-scale-explorer-button:active:not(.active),.t-cap-card:active,.t-card-grid-item:active,.t-diagram-node-toggle:active,.t-diagram-node-label:active,.t-process-progress-hit:active,.t-hypothesis-evidence-item:active,.t-decision-tree-branch:active,.t-decision-tree-back:active,.t-portal-link:active,.t-skill-btn:active,.t-guided-answer:active{transform:scale(.98)}.t-statistics-value,.t-param-sim-value,.t-param-sim-result-value,.t-process-progress-seg,.t-step-flow-progress,.t-derivation-progress,.t-method-num,.t-chain-num,.t-derivation-step-no,.t-formula-step-tag{font-variant-numeric:tabular-nums}.t-decision-tree-title,.t-demo-box-title,.t-derivation-title,.t-diagram-title,.t-guided-title,.t-hypothesis-title,.t-method-head,.t-param-sim-title,.t-qa-item-title,.t-quiz-title,.t-scenario-title,.t-statistics-title,.t-step-section-title,.t-summary-box-title,.t-timeline-title,.t-warning-card-title,.t-concept-card-title{font-size:var(--t-text-lg);font-weight:var(--t-weight-bold)}.t-card-grid-title,.t-card-search-card-title,.t-info-card-title,.t-side-by-side-title,.t-derivation-step-title,.t-formula-step-title,.t-timeline-event-title{font-size:var(--t-text-md);font-weight:600}.t-boundary-col-label,.t-cmp-label,.t-demo-final-label,.t-demo-r-title,.t-hypothesis-evidence-label,.t-hypothesis-stage-label,.t-loop-label,.t-param-sim-label,.t-param-sim-result-label,.t-process-step-label,.t-scale-explorer-card-label,.t-statistics-label,.t-step-flow-label,.t-time-compare-label,.t-vs-label,.t-problem-label,.t-side-by-side-subtitle{font-size:var(--t-text-sm)}.t-statistics-value{font-size:var(--t-text-xl);font-family:var(--t-font-num)}.t-param-sim-result-value{font-size:var(--t-text-lg);font-weight:700;font-family:var(--t-font-num)}.t-param-sim-value,.t-step-flow-progress,.t-derivation-progress{font-family:var(--t-font-num)}.t-statistics,.t-quiz{padding:var(--t-space-xl)}.t-card-grid-emoji,.t-scale-explorer-card-emoji,.t-concept-card-icon{font-size:20px;line-height:1}.t-step-flow-visual{font-size:24px;line-height:1.2}.t-thought-experiment-emoji{font-size:28px;line-height:1}.t-agent-demo{border:1.5px solid var(--t-color-border);border-radius:var(--t-radius-md);overflow:hidden;margin:var(--t-space-xl) 0;background:var(--t-color-surface)}.t-demo-r-bar{display:flex;justify-content:space-between;align-items:center;padding:var(--t-space-md) var(--t-space-lg);background:var(--t-color-surface-muted);border-bottom:1px solid var(--t-color-border)}.t-demo-r-title{font-weight:600;font-size:var(--t-text-body)}.t-demo-r-badge{font-size:var(--t-text-small);color:var(--t-color-text-muted);background:var(--t-color-tag-bg);padding:2px var(--t-space-sm);border-radius:var(--t-radius-sm)}.t-demo-area{padding:var(--t-space-lg)}.t-demo-step{display:flex;align-items:flex-start;gap:var(--t-space-md)}.t-demo-step-dot{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--t-icon-sm);background:var(--t-color-action-bg);flex-shrink:0}.t-demo-step-body{flex:1;padding-top:2px}.t-demo-step-phase{font-size:var(--t-text-small);letter-spacing:.05em;margin-bottom:2px;color:var(--t-color-accent)}.t-demo-step-text{font-size:var(--t-text-body);line-height:var(--t-text-body-leading)}.t-demo-step-connector{width:1.5px;height:var(--t-space-lg);margin-left:17px;background:var(--t-color-border)}.t-demo-final-box{margin-top:var(--t-space-lg);padding:var(--t-space-md) var(--t-space-lg);background:var(--t-color-primary-bg);border-radius:var(--t-radius-md);border:1.5px solid var(--t-color-border)}.t-demo-final-label{font-weight:600;color:var(--t-color-primary);margin-bottom:var(--t-space-xs)}.t-demo-final-text{font-size:var(--t-text-body);line-height:var(--t-text-body-leading)}.t-demo-ctrl{display:flex;justify-content:center;padding:var(--t-space-sm) var(--t-space-lg);border-top:1px solid var(--t-color-border-soft);background:var(--t-color-surface-muted)}.t-demo-ctrl-hint{font-size:var(--t-text-small);color:var(--t-color-text-muted)}.t-problem-box{border:1.5px solid var(--t-color-border);border-radius:var(--t-radius-md);padding:var(--t-space-xl);margin:var(--t-space-xl) 0;background:var(--t-color-surface-muted)}.t-problem-label{font-size:var(--t-text-h3);font-weight:600;color:var(--t-color-primary);margin-bottom:var(--t-space-lg)}.t-problem-item{display:flex;align-items:flex-start;gap:var(--t-space-md);padding:var(--t-space-md) 0;border-bottom:1px solid var(--t-color-border-soft)}.t-problem-item:last-child{border-bottom:none}.t-problem-icon{font-size:var(--t-icon-md);flex-shrink:0;line-height:var(--t-leading-label)}.t-problem-text h4{font-size:var(--t-text-body);font-weight:600;margin:0 0 var(--t-space-xs) 0}.t-problem-text p{margin:0;font-size:var(--t-text-body);line-height:var(--t-text-body-leading);color:var(--t-color-text)}.t-solution-chain{margin:var(--t-space-xl) 0;padding:var(--t-space-lg) var(--t-space-xl);background:var(--t-color-surface-muted);border-radius:var(--t-radius-md);border:1.5px solid var(--t-color-border)}.t-chain-step{display:flex;align-items:flex-start;gap:var(--t-space-md);padding:var(--t-space-sm) 0}.t-chain-num{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--t-text-sm);background:var(--t-color-tag-bg);color:var(--t-color-text);flex-shrink:0}.t-chain-step-final .t-chain-num{background:var(--t-color-success);color:var(--t-color-text-onaction)}.t-chain-text{font-size:var(--t-text-body);line-height:1.6;padding-top:2px}.t-chain-arrow{margin-left:14px;padding:var(--t-space-xs) 0 var(--t-space-xs) var(--t-space-xs);font-size:var(--t-text-small);color:var(--t-color-text-muted);border-left:1.5px solid var(--t-color-border)}.t-skill-list{display:flex;flex-direction:column;gap:var(--t-space-sm);margin:var(--t-space-xl) 0}.t-skill-btn{display:flex;align-items:flex-start;gap:var(--t-space-md);padding:var(--t-space-md) var(--t-space-lg);border:1.5px solid var(--t-color-border);border-radius:var(--t-radius-md);background:var(--t-color-surface);cursor:pointer;text-align:left;transition:border-color .2s,box-shadow .2s;font:inherit;color:inherit}.t-skill-btn:hover{border-color:var(--t-color-primary-border)}.t-skill-btn-active{border-color:var(--t-color-accent);box-shadow:var(--t-color-card-shadow-hover)}.t-skill-num{font-size:var(--t-text-xl);color:var(--t-color-text-muted);flex-shrink:0;min-width:var(--t-space-10)}.t-skill-btn-active .t-skill-num{color:var(--t-color-accent)}.t-skill-text h4{font-size:var(--t-text-body);font-weight:600;margin:0 0 2px}.t-skill-text p{margin:0;font-size:var(--t-text-small);color:var(--t-color-text-muted)}.t-cmp-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--t-space-lg);margin:var(--t-space-xl) 0}@media(max-width:640px){.t-cmp-grid{grid-template-columns:1fr}}.t-cmp-box{border-radius:var(--t-radius-md);overflow:hidden;border:1.5px solid var(--t-color-border)}.t-cmp-bad{border-color:var(--t-color-danger-border)}.t-cmp-good{border-color:var(--t-color-success)}.t-cmp-label{padding:var(--t-space-sm) var(--t-space-md);font-weight:600;font-size:var(--t-text-body)}.t-cmp-bad .t-cmp-label{background:var(--t-color-danger-bg);color:var(--t-color-danger)}.t-cmp-good .t-cmp-label{background:var(--t-color-success-bg);color:var(--t-color-success)}.t-cmp-prompt{padding:var(--t-space-md);font-family:var(--t-font-mono);font-size:var(--t-text-sm);line-height:1.6;background:var(--t-color-code-bg);white-space:pre-wrap;word-break:break-word;border-bottom:1px solid var(--t-color-border-soft)}.t-cmp-result{padding:var(--t-space-md);font-size:var(--t-text-body);line-height:var(--t-text-body-leading);background:var(--t-color-surface)}.t-loop-visual{display:flex;align-items:flex-start;justify-content:center;gap:0;margin:var(--t-space-2xl) 0;flex-wrap:wrap}.t-loop-step{display:flex;flex-direction:column;align-items:center;padding:var(--t-space-md) var(--t-space-sm);min-width:90px}.t-loop-circle{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--t-text-sm);color:var(--t-color-text-onaction);margin-bottom:var(--t-space-sm);box-shadow:var(--t-shadow-card);background:var(--t-color-primary);text-align:center}.t-loop-label{font-size:var(--t-text-small);color:var(--t-color-text-muted);text-align:center}.t-loop-arrow{font-size:var(--t-icon-sm);color:var(--t-color-accent);font-weight:var(--t-weight-bold);padding-top:var(--t-space-lg);opacity:.5}@media(max-width:600px){.t-loop-step{min-width:70px;padding:var(--t-space-sm) var(--t-space-xs)}.t-loop-circle{width:48px;height:48px;font-size:var(--t-text-xs)}}.t-method-grid{display:flex;flex-direction:column;gap:var(--t-space-lg);margin:var(--t-space-xl) 0}.t-method-card{position:relative;overflow:hidden;background:var(--t-color-surface);border:1.5px solid var(--t-color-border);border-radius:var(--t-radius-md);padding:var(--t-space-xl) var(--t-space-2xl);transition:border-color .2s,box-shadow .2s}.t-method-card:hover{border-color:var(--t-color-accent);box-shadow:var(--t-shadow-pop)}.t-method-num{position:absolute;top:12px;right:18px;font-size:42px;font-weight:var(--t-weight-black);color:var(--t-color-action-bg);line-height:1;pointer-events:none}.t-method-head{display:flex;align-items:center;gap:var(--t-space-md);margin-bottom:var(--t-space-md)}.t-method-icon{width:36px;height:36px;border-radius:var(--t-radius-sm);display:flex;align-items:center;justify-content:center;font-size:var(--t-icon-sm);flex-shrink:0;background:var(--t-color-primary-bg)}.t-method-head h4{font-size:var(--t-text-body);font-weight:600;margin:0}.t-method-card p{font-size:var(--t-text-body);line-height:var(--t-text-body-leading);color:var(--t-color-text);margin:0 0 var(--t-space-md) 0}.t-method-card p:last-of-type{margin-bottom:0}.t-method-example{background:var(--t-color-surface-muted);border-radius:var(--t-radius-sm);padding:var(--t-space-md) var(--t-space-lg);margin-top:var(--t-space-md);font-size:var(--t-text-sm);line-height:1.7;color:var(--t-color-text-muted)}.t-method-example-label{color:var(--t-color-accent);margin-bottom:var(--t-space-xs)}.t-method-example-body{color:var(--t-color-text)}@media(max-width:600px){.t-method-card{padding:var(--t-space-lg) var(--t-space-lg)}.t-method-num{font-size:32px}}.t-concept-card{background:var(--t-color-surface);border:1.5px solid var(--t-color-border);border-radius:var(--t-radius-md);padding:var(--t-space-xl) var(--t-space-2xl);margin:var(--t-space-2xl) 0;box-shadow:var(--t-shadow-card)}.t-concept-card-head{display:flex;align-items:center;gap:var(--t-space-sm);margin-bottom:var(--t-space-sm)}.t-concept-card-icon{font-size:var(--t-icon-md);line-height:1}.t-concept-card-title{font-size:var(--t-text-h3);font-weight:var(--t-weight-bold);color:var(--t-color-primary);margin:0}.t-concept-card-essence{color:var(--t-color-text-muted);font-size:var(--t-text-md);margin:0 0 var(--t-space-md);padding-bottom:var(--t-space-md);border-bottom:1px solid var(--t-color-border-soft)}.t-concept-card-body{margin:0 0 var(--t-space-md);line-height:var(--t-text-body-leading)}.t-concept-card-body:last-of-type{margin-bottom:0}@media(max-width:600px){.t-concept-card{padding:var(--t-space-lg)}}.t-concept-boundary{margin:var(--t-space-2xl) 0}.t-boundary-concept{font-size:var(--t-text-h3);font-weight:var(--t-weight-bold);color:var(--t-color-text);margin-bottom:var(--t-space-md)}.t-boundary-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--t-space-md)}.t-boundary-col{border-radius:var(--t-radius-md);padding:var(--t-space-md) var(--t-space-lg);border:1.5px solid}.t-boundary-is{background:var(--t-color-success-bg);border-color:var(--t-color-success-border)}.t-boundary-not{background:var(--t-color-danger-bg);border-color:var(--t-color-danger-border)}.t-boundary-col-label{font-weight:var(--t-weight-bold);margin-bottom:var(--t-space-sm)}.t-boundary-is .t-boundary-col-label{color:var(--t-color-success)}.t-boundary-not .t-boundary-col-label{color:var(--t-color-danger)}.t-boundary-list{margin:0;padding-left:var(--t-space-lg)}.t-boundary-list li{font-size:var(--t-text-sm);line-height:1.7;margin-bottom:var(--t-space-xs);color:var(--t-color-text)}.t-boundary-is .t-boundary-list li{color:var(--t-color-success)}.t-boundary-not .t-boundary-list li{color:var(--t-color-danger)}@media(max-width:600px){.t-boundary-grid{grid-template-columns:1fr}}.t-timeline{margin:var(--t-space-2xl) 0}.t-timeline-title{font-size:var(--t-text-h3);font-weight:var(--t-weight-bold);color:var(--t-color-text);margin-bottom:var(--t-space-lg)}.t-timeline-track{position:relative;padding-left:28px}.t-timeline-track:before{content:"";position:absolute;left:10px;top:6px;bottom:6px;width:1.5px;background:var(--t-color-primary-border)}.t-timeline-item{position:relative;padding-bottom:var(--t-space-xl)}.t-timeline-item:last-child{padding-bottom:0}.t-timeline-dot{position:absolute;left:-22px;top:4px;width:14px;height:14px;border-radius:50%;background:var(--t-color-accent);box-shadow:0 0 0 3px var(--t-color-primary-bg)}.t-timeline-time{font-size:var(--t-text-small);color:var(--t-color-accent);margin-bottom:2px}.t-timeline-event-title{font-weight:700;color:var(--t-color-text);margin-bottom:var(--t-space-xs)}.t-timeline-desc{color:var(--t-color-text-muted);font-size:var(--t-text-sm);line-height:1.7}.t-causal-chain{margin:var(--t-space-2xl) 0}.t-causal-intro{color:var(--t-color-text-muted);font-size:var(--t-text-md);margin:0 0 var(--t-space-md)}.t-causal-list{display:flex;flex-direction:column;align-items:center}.t-causal-node{background:var(--t-color-primary-bg);border:1.5px solid var(--t-color-primary-border);border-radius:var(--t-radius-md);padding:var(--t-space-sm) var(--t-space-lg);color:var(--t-color-primary);text-align:center;max-width:80%}.t-causal-arrow{color:var(--t-color-accent);font-size:var(--t-text-small);font-weight:700;margin:var(--t-space-xs) 0}.t-block-render-error{color:var(--t-color-warning);font-size:var(--t-text-sm);border:1.5px dashed var(--t-color-warning);border-radius:var(--t-radius-sm);padding:var(--t-space-2) var(--t-space-3);background:var(--t-color-warning-bg)}.course-top-bar{align-items:center;background:#ffffffeb;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid var(--color-border-card);display:flex;flex-shrink:0;gap:16px;height:64px;justify-content:flex-start;padding:0 24px;position:sticky;top:0;z-index:40}.course-learn-topbar-progress{align-items:center;display:flex;gap:8px;margin-left:auto}.course-learn-topbar-progress-bar{background:var(--color-bg-subtle);border-radius:999px;height:6px;overflow:hidden;width:140px}.course-learn-topbar-progress-bar>i{background:var(--color-accent);border-radius:999px;display:block;height:100%;transition:width .3s}.course-learn-topbar-progress-num{color:var(--color-text-secondary);font-family:var(--font-num);font-size:13px;font-variant-numeric:tabular-nums;white-space:nowrap}.course-top-bar .home-brand{flex-shrink:0}.course-top-bar .home-tabs{margin-left:auto}.course-learn-shell{display:flex;flex-direction:column;height:100vh;min-height:100vh;overflow:hidden;background:#fff}.course-learn-topbar-title{color:var(--color-text-primary);font-size:var(--text-lg);font-weight:var(--weight-semibold);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.course-learn-topbar-actions{align-items:center;display:flex;flex:none;gap:8px;margin-left:8px}.course-learn-exit{background:var(--color-bg-page);border:1px solid var(--color-border-card);border-radius:999px;color:var(--color-text-secondary);cursor:pointer;font-size:var(--text-sm);min-height:var(--control-h-xs);padding:8px 16px}.course-learn-exit:hover{background:var(--color-border-soft)}.course-learn-body{display:grid;flex:1;grid-template-columns:360px 1fr;grid-template-rows:minmax(0,1fr);min-height:0;overflow:hidden}.course-learn-drawer{min-height:0;min-width:0}.course-learn-menu-btn,.course-learn-drawer-mask{display:none}.course-learn-map{background:var(--color-bg-surface);border-right:1px solid var(--color-border-card);height:100%;overflow-y:auto;padding:20px 20px 48px}.course-learn-map-title{color:var(--color-text-muted);font-size:12px;font-weight:var(--weight-bold);letter-spacing:2px;margin:0 0 16px}.course-learn-sidebar-empty{color:var(--color-text-muted);font-size:var(--text-sm)}.course-learn-leg+.course-learn-leg{margin-top:20px}.course-learn-leg-head{align-items:center;background:none;border:0;border-radius:var(--radius-sm);cursor:pointer;display:flex;gap:10px;padding:8px;width:100%;min-height:44px;text-align:left}.course-learn-leg-head:hover{background:var(--color-bg-subtle)}.course-learn-leg.is-current .course-learn-leg-badge{background:var(--color-accent);color:#fff}.course-learn-leg-badge{background:var(--color-bg-subtle);border-radius:999px;color:var(--color-accent-strong);flex:none;font-size:12px;font-weight:var(--weight-bold);line-height:1;padding:5px 10px;white-space:nowrap}.course-learn-leg-name{color:var(--color-text-primary);flex:1;font-size:var(--text-sm);font-weight:var(--weight-bold);line-height:1.4;min-width:0}.course-learn-leg-count{color:var(--color-text-muted);flex:none;font-family:var(--font-num);font-size:12px;font-variant-numeric:tabular-nums}.course-learn-module{padding:0 0 4px 8px}.course-learn-module+.course-learn-module{margin-top:8px}.course-learn-module-title{color:var(--color-text-secondary);font-size:13px;font-weight:var(--weight-semibold);line-height:1.5;margin:8px 0 4px}.course-learn-track{border-left:2px solid var(--color-border-card);margin-left:16px;padding:4px 0 8px 24px;position:relative}.course-learn-leg.is-current .course-learn-track{border-left-color:var(--color-accent)}.course-learn-stop{align-items:center;background:none;border:0;border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;display:flex;font-size:13px;gap:10px;line-height:1.5;margin-top:2px;min-height:44px;padding:7px 8px 7px 0;position:relative;text-align:left;width:100%}.course-learn-stop:before{background:var(--color-bg-surface);border:2px solid var(--color-border-input);border-radius:50%;box-sizing:border-box;content:"";height:12px;left:-31px;position:absolute;top:50%;transform:translateY(-50%);width:12px}.course-learn-stop:hover:not(:disabled){background:var(--color-bg-subtle);color:var(--color-text-primary)}.course-learn-stop-id{color:var(--color-text-muted);flex:none;font-family:var(--font-num);font-size:12px;font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums;width:40px}.course-learn-stop:hover:not(:disabled) .course-learn-stop-id,.course-learn-stop.is-current .course-learn-stop-id{color:var(--color-accent)}.course-learn-stop.is-current{background:var(--color-accent-bg);color:var(--color-accent-strong);font-weight:var(--weight-semibold)}.course-learn-stop.is-current:before{animation:course-learn-pulse 2s ease-out infinite;background:#fff;border:3px solid var(--color-accent);height:14px;width:14px}.course-learn-stop.is-locked{color:var(--color-text-disabled);cursor:not-allowed}.course-learn-stop.is-locked .course-learn-stop-id{color:var(--color-text-disabled)}.course-learn-stop-title{min-width:0;overflow:hidden;text-overflow:ellipsis}.course-learn-main{overflow-y:auto;padding:40px 24px 64px}.course-learn-main-inner{margin:0 auto;max-width:880px}.course-learn-pagehead{background:var(--color-bg-surface);border:1px solid var(--color-border-card);border-radius:var(--radius-lg);margin-bottom:24px;padding:28px 32px}.course-learn-position{color:var(--color-accent);font-size:12px;font-weight:var(--weight-bold);letter-spacing:1.5px;margin:0}.course-learn-objective{border-top:1px dashed var(--color-border-card);color:var(--color-text-secondary);font-size:var(--text-sm);line-height:1.7;margin:12px 0 0;padding-top:12px}.course-learn-title{color:var(--color-text-primary);font-size:28px;font-weight:var(--weight-black);line-height:1.4;margin:8px 0 0}.course-learn-empty{color:var(--color-text-muted);margin:48px auto;max-width:480px;text-align:center}.course-learn-empty h2{color:var(--color-text-secondary);font-size:var(--text-2xl);margin:0 0 8px}.course-learn-nextstop{align-items:center;background:var(--color-bg-surface);border:1px solid var(--color-border-card);border-radius:var(--radius-lg);display:flex;gap:16px;margin-top:40px;padding:20px 24px;transition:border-color .15s,box-shadow .15s}.course-learn-nextstop:hover{border-color:var(--color-border-accent);box-shadow:var(--shadow-pop)}.course-learn-nextstop-prev{background:var(--color-bg-surface);border:1px solid var(--color-border-card);border-radius:999px;color:var(--color-text-secondary);cursor:pointer;flex:none;font-size:var(--text-sm);min-height:var(--control-h);padding:8px 20px;transition:background .15s}.course-learn-nextstop-prev:hover:not(:disabled){background:var(--color-bg-subtle)}.course-learn-nextstop-prev:disabled{color:var(--color-text-disabled);cursor:not-allowed}.course-learn-nextstop-dot{border:2px solid var(--color-border-input);border-radius:50%;box-sizing:border-box;flex:none;height:14px;width:14px}.course-learn-nextstop-info{flex:1;min-width:0}.course-learn-nextstop-dir{color:var(--color-text-muted);font-size:12px;font-weight:var(--weight-bold);letter-spacing:1.5px;margin:0}.course-learn-nextstop-title{color:var(--color-accent);font-size:var(--text-md);font-weight:var(--weight-bold);margin:2px 0 0;overflow:hidden;text-overflow:ellipsis}.course-learn-nextstop-go{background:var(--color-accent);border:0;border-radius:999px;color:#fff;cursor:pointer;flex:none;font-size:var(--text-sm);font-weight:var(--weight-semibold);min-height:var(--control-h);padding:8px 24px}.course-learn-nextstop-go:hover:not(:disabled){background:var(--color-accent-strong);border-color:var(--color-accent-strong)}.course-learn-nextstop-go:active{transform:scale(.98)}.course-home-shell{background:var(--color-bg-page);min-height:100vh}.course-home-topbar{align-items:center;background:var(--color-bg-surface);border-bottom:1px solid var(--color-border-card);display:flex;gap:16px;height:64px;justify-content:space-between;padding:0 max(48px,calc((100vw - 1200px)/2 + 48px))}.course-home-topbar .home-brand{flex:none}.course-home-exit{background:var(--color-bg-surface);border:1px solid var(--color-border-card);border-radius:999px;color:var(--color-text-secondary);cursor:pointer;font-size:var(--text-sm);margin-left:auto;min-height:var(--control-h-sm);padding:8px 16px}.course-home-exit:hover{background:var(--color-bg-subtle)}.course-home-hero{background:radial-gradient(640px 280px at 12% -8%,rgba(91,58,142,.1),transparent 65%),radial-gradient(520px 240px at 92% 0%,rgba(91,58,142,.07),transparent 60%),var(--color-bg-surface);border-bottom:1px solid var(--color-border-card)}.course-home-hero-inner{align-items:flex-start;display:flex;gap:40px;margin:0 auto;max-width:1160px;padding:56px 40px 48px}.course-home-hero-main{flex:1;min-width:0}.course-home-kicker{background:var(--color-bg-subtle);border:1px solid var(--color-border-accent);border-radius:999px;color:var(--color-accent);display:inline-block;font-size:13px;font-weight:var(--weight-semibold);margin-bottom:20px;padding:4px 14px}.course-home-hero h1{font-size:36px;font-weight:var(--weight-black);letter-spacing:-.5px;line-height:1.3;margin:0}.course-home-lede{color:var(--color-text-secondary);margin:14px 0 0;max-width:58ch}.course-home-meta{color:var(--color-text-secondary);font-size:var(--text-sm);margin:22px 0 0}.course-home-meta b{color:var(--color-text-primary);font-weight:var(--weight-bold)}.course-home-hero-side{flex:none;text-align:right}.course-home-cta{background:var(--color-accent);border:0;border-radius:999px;box-shadow:0 6px 20px #5b3a8e47;color:#fff;cursor:pointer;font-size:var(--text-md);font-weight:var(--weight-semibold);min-height:48px;padding:12px 32px}.course-home-cta:hover:not(:disabled){background:var(--color-accent-strong);border-color:var(--color-accent-strong)}.course-home-cta:active{transform:scale(.98)}.course-home-cta.is-disabled{background:var(--color-bg-subtle);box-shadow:none;color:var(--color-text-muted);cursor:default}.course-home-cta-note{color:var(--color-text-muted);font-family:var(--font-num);font-size:13px;font-variant-numeric:tabular-nums;margin:10px 0 0}.course-home-route-wrap{margin:0 auto;max-width:1160px;padding:48px 40px 0}.course-home-route-label{align-items:center;color:var(--color-accent);display:flex;font-size:13px;font-weight:var(--weight-bold);gap:10px;margin-bottom:20px}.course-home-route-label:after{background:var(--color-border-accent);content:"";flex:1;height:1px}.course-home-route-count{color:var(--color-text-muted);font-weight:var(--weight-semibold)}.course-home-route{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.course-home-route-empty{color:var(--color-text-muted);grid-column:1 / -1;margin:0}.course-home-leg{background:var(--color-bg-surface);border:1px solid var(--color-border-card);border-radius:var(--radius-md);padding:16px;transition:border-color .15s,box-shadow .15s}.course-home-leg:hover{border-color:var(--color-border-accent);box-shadow:var(--shadow-pop)}.course-home-leg.is-current .course-home-leg-badge{background:var(--color-accent);color:#fff}.course-home-leg-head{align-items:center;display:flex;gap:10px;margin-bottom:8px}.course-home-leg-badge{background:var(--color-bg-subtle);border-radius:999px;color:var(--color-accent-strong);flex:none;font-size:12px;font-weight:var(--weight-bold);line-height:1;padding:5px 10px;white-space:nowrap}.course-home-leg-title{font-size:var(--text-sm);font-weight:var(--weight-bold);line-height:1.4}.course-home-leg-meta{color:var(--color-text-muted);font-family:var(--font-num);font-size:12px;font-variant-numeric:tabular-nums;margin-top:2px}.course-home-leg-track{background:var(--color-bg-subtle);border-radius:999px;height:6px;margin:12px 0 16px;overflow:hidden}.course-home-leg-track>i{background:var(--color-accent);border-radius:999px;display:block;height:100%}.course-home-module{border-top:1px dashed var(--color-border-card);margin-top:12px;padding-top:10px}.course-home-module:first-of-type{border-top:0;margin-top:8px;padding-top:0}.course-home-module-title{color:var(--color-text-primary);font-size:13px;font-weight:var(--weight-bold);line-height:1.5;margin:0 0 6px}.course-home-module-points{display:flex;flex-wrap:wrap;gap:6px}.course-home-point{background:var(--color-bg-subtle);border:none;border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;font-size:12px;line-height:1.5;max-width:100%;min-height:0;overflow:hidden;padding:3px 10px;transition:background .15s,color .15s}.course-home-point:hover:not(:disabled){background:var(--color-accent-bg);color:var(--color-accent-strong)}.course-home-point.is-current{background:var(--color-accent-bg);border:1px solid var(--color-border-accent);box-sizing:border-box;color:var(--color-accent-strong);font-weight:var(--weight-semibold)}.course-home-point.is-locked{background:var(--color-bg-subtle);color:var(--color-text-disabled);cursor:not-allowed;opacity:.7}.course-home-point.is-empty{background:none;color:var(--color-text-muted);cursor:default}.course-home-route-legend{align-items:center;color:var(--color-text-muted);display:flex;font-size:12px;gap:16px;margin-top:20px}.course-home-legend-here{margin-left:auto}.course-home-cols{display:grid;gap:32px;grid-template-columns:1.4fr 1fr;margin:0 auto;max-width:1160px;padding:32px 40px 72px}.course-home-panel{background:var(--color-bg-surface);border:1px solid var(--color-border-card);border-radius:var(--radius-lg);padding:28px}.course-home-panel h2{font-size:var(--text-2xl);font-weight:var(--weight-bold);margin:0 0 4px}.course-home-panel-sub{color:var(--color-text-muted);font-size:13px;margin:0 0 20px}.course-home-goal{align-items:flex-start;border-top:1px dashed var(--color-border-card);display:flex;font-size:15px;gap:12px;line-height:1.6;padding:10px 0}.course-home-goal:first-of-type{border-top:0}.course-home-goal p{margin:0}.course-home-goal-no{color:var(--color-accent);flex:none;font-family:var(--font-num);font-size:13px;font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;width:24px}.course-home-goal-placeholder{align-items:center;background:var(--color-bg-subtle);border:1px dashed var(--color-border-card);border-radius:var(--radius-md);color:var(--color-text-muted);display:flex;font-size:var(--text-sm);justify-content:center;min-height:160px;padding:24px;text-align:center}.course-home-goal-placeholder p{margin:0}.course-home-gauge{align-items:center;display:flex;gap:24px}.course-home-ring{background:conic-gradient(var(--color-accent) calc(var(--p) * 1%),var(--color-bg-subtle) 0);border-radius:50%;display:grid;flex:none;height:104px;place-items:center;width:104px}.course-home-ring:before{background:var(--color-bg-surface);border-radius:50%;content:"";grid-area:1 / 1;height:80px;width:80px}.course-home-ring-num{font-family:var(--font-num);font-size:20px;font-weight:var(--weight-black);font-variant-numeric:tabular-nums;grid-area:1 / 1;z-index:1}.course-home-ring-num small{color:var(--color-text-muted);display:block;font-size:10px;font-weight:var(--weight-semibold);text-align:center}.course-home-gauge-stats{display:grid;flex:1;gap:10px}.course-home-gs{border-bottom:1px dashed var(--color-border-card);color:var(--color-text-secondary);display:flex;font-size:var(--text-sm);justify-content:space-between;gap:24px;padding-bottom:8px}.course-home-gs.is-last{border-bottom:0;padding-bottom:0}.course-home-gs b{color:var(--color-text-primary);font-family:var(--font-num);font-variant-numeric:tabular-nums;font-weight:var(--weight-bold)}.export-overlay{position:fixed;inset:0;background:#0f172073;display:flex;align-items:center;justify-content:center;z-index:1000}.export-panel{background:var(--color-bg-surface);border-radius:var(--radius-lg);padding:24px;width:min(560px,92vw);max-height:82vh;display:flex;flex-direction:column;box-shadow:0 12px 40px #0003}.export-actions{display:flex;gap:8px;margin:8px 0 24px}.export-list{overflow-y:auto;display:flex;flex-direction:column;gap:8px;padding-right:8px}.export-item{display:flex;align-items:center;gap:8px;font-size:var(--text-md);padding:8px;border-radius:var(--radius-sm);cursor:pointer}.export-item:hover{background:var(--color-bg-subtle)}.course-learn-stop.is-done .course-learn-stop-check{color:var(--color-success);flex:none;font-size:12px;font-weight:var(--weight-bold);width:16px}.course-learn-title-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.course-learn-done-badge{background:var(--color-success-bg);border:1px solid var(--color-success-border);border-radius:var(--radius-sm);color:var(--color-success);font-size:12px;font-weight:var(--weight-semibold);padding:2px 10px}.note-toast{background:var(--color-bg-inverse);border-radius:var(--radius-md);color:var(--color-text-oninverse);font-size:var(--text-sm);padding:10px 18px;position:fixed;right:24px;top:20px;z-index:1001}@media(prefers-reduced-motion:reduce){.course-learn-stop.is-current:before{animation:none}}@media(max-width:768px){.course-home-topbar{padding:12px 16px}.course-home-hero-inner{flex-direction:column;gap:24px;padding:40px 16px 32px}.course-home-hero h1{font-size:28px}.course-home-hero-side{text-align:left;width:100%}.course-home-cta{display:inline-flex;justify-content:center;width:100%}.course-home-route-wrap{padding:32px 16px 0}.course-home-route{grid-template-columns:1fr}.course-home-cols{grid-template-columns:1fr;gap:24px;padding:24px 16px 48px}.course-home-panel{padding:20px}.course-home-gauge{gap:16px}.course-home-route-legend{flex-wrap:wrap;gap:8px 16px}.course-learn-shell{height:100dvh;min-height:100dvh}.course-top-bar{gap:8px;padding:0 12px}.course-learn-topbar-title{font-size:14px;min-width:0}.course-learn-topbar-progress-bar{display:none}.course-learn-topbar-progress-num{font-size:12px}.course-learn-exit{font-size:12px;min-height:32px;padding:6px 10px}.course-learn-topbar-actions{gap:6px;margin-left:4px}.course-learn-body{grid-template-columns:1fr}.course-learn-menu-btn{display:inline-flex;align-items:center;background:var(--color-accent);border:0;border-radius:999px;color:#fff;font-size:12px;font-weight:var(--weight-semibold);min-height:32px;padding:6px 14px}.course-learn-drawer{background:var(--color-bg-surface);bottom:0;box-shadow:none;left:0;position:fixed;top:0;transform:translate(-100%);transition:transform .2s ease;width:min(320px,85vw);z-index:200}.course-learn-drawer.is-open{box-shadow:var(--shadow-pop);transform:translate(0)}.course-learn-drawer-mask{background:#14101a59;display:block;inset:0;position:fixed;z-index:190}.course-learn-map{border-right:0;height:100%;padding:16px}.course-learn-map-title{margin-bottom:8px}.course-learn-main{padding:20px 16px 48px}.course-learn-pagehead{padding:20px}.course-learn-title{font-size:24px}.course-learn-nextstop{flex-wrap:wrap;gap:12px;padding:16px}.course-learn-nextstop-info{flex-basis:calc(100% - 60px)}.course-learn-nextstop-go{width:100%}}@media(max-width:768px){.course-top-bar{padding:0 12px}.course-top-bar .home-brand{display:none}}
