:root{--color-brand-deep:#0b1f4d;--color-brand-dark:#132e5b;--color-primary:#2563eb;--color-primary-hover:#1d4ed8;--color-primary-light:#eff6ff;--color-primary-border:#93c5fd;--color-accent-cyan:#22d3ee;--color-accent-purple:#7c3aed;--color-accent-green:#14b8a6;--color-accent-orange:#f59e0b;--color-accent-rose:#f43f5e;--color-success:#10b981;--color-success-bg:#ecfdf5;--color-success-border:#a7f3d0;--color-warning:#f59e0b;--color-warning-bg:#fffbeb;--color-warning-border:#fde68a;--color-danger:#ef4444;--color-danger-bg:#fef2f2;--color-danger-border:#fecaca;--color-info:#3b82f6;--color-info-bg:#eff6ff;--color-info-border:#bfdbfe;--surface-page:#f0f4fa;--surface-section:#f7f9fc;--surface-card:#fff;--surface-elevated:#fff;--surface-hover:#f8fafc;--surface-overlay:#0b1f4d59;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--text-inverse:#fff;--border-default:#e2e8f0;--border-light:#f1f5f9;--border-active:#93c5fd;--border-focus:#2563eb;--shadow-xs:0 1px 2px #0000000a;--shadow-sm:0 1px 3px #0000000f, 0 1px 2px #0000000a;--shadow-card:0 4px 16px #0000000f;--shadow-card-hover:0 8px 24px #0000001a;--shadow-elevated:0 12px 40px #0000001f;--shadow-modal:0 20px 60px #0000002e;--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-2xl:20px;--radius-full:9999px;--space-xs:4px;--space-sm:8px;--space-md:12px;--space-lg:16px;--space-xl:24px;--space-2xl:32px;--space-3xl:48px;--motion-fast:.15s;--motion-normal:.22s;--motion-slow:.35s;--motion-easing:cubic-bezier(.4, 0, .2, 1);--font:-apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", sans-serif;--font-mono:"SF Mono", "Cascadia Code", "Consolas", "Menlo", monospace;--primary:#2563eb;--primary-hover:#1d4ed8;--primary-light:#eff6ff;--primary-border:#93c5fd;--bg:#f0f4fa;--white:#fff;--text:#0f172a;--border:#e2e8f0;--shadow:0 1px 3px #0000000f, 0 1px 2px #0000000a;--shadow-md:0 4px 6px #0000000d, 0 2px 4px #0000000a;--radius:8px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;width:100%;max-width:100%;font-size:16px}body{font-family:var(--font);color:var(--text-primary);background:var(--surface-page);width:100%;min-width:0;max-width:100%;min-height:100vh;line-height:1.6}#app{width:100%;min-width:0;max-width:100%}a{color:var(--color-primary);transition:color var(--motion-fast) var(--motion-easing);text-decoration:none}a:hover{color:var(--color-primary-hover)}ul,ol{list-style:none}img,video,canvas,svg{max-width:100%}button,input,select,textarea{font:inherit;max-width:100%}h1,h2,h3,h4,h5,h6{color:var(--text-primary);font-weight:600;line-height:1.3}h1{font-size:1.75rem}h2{font-size:1.5rem}h3{font-size:1.25rem}h4{font-size:1.1rem}h5{font-size:1rem}h6{font-size:.9rem}.btn{font-size:.9rem;font-family:var(--font);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--motion-fast) var(--motion-easing), border-color var(--motion-fast) var(--motion-easing), box-shadow var(--motion-fast) var(--motion-easing), transform var(--motion-fast) var(--motion-easing);white-space:nowrap;border:1px solid #0000;outline:none;justify-content:center;align-items:center;gap:6px;padding:10px 24px;font-weight:500;line-height:1.4;text-decoration:none;display:inline-flex}.btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none!important;transform:none!important}.btn-primary{background:var(--color-primary);color:#fff;border-color:var(--color-primary);box-shadow:0 2px 8px #2563eb40}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-hover);transform:translateY(-1px);box-shadow:0 4px 14px #2563eb59}.btn-primary:active:not(:disabled){transform:translateY(0);box-shadow:0 1px 4px #2563eb33}.btn-secondary{color:var(--color-primary);border-color:var(--border-default);background:#fff}.btn-secondary:hover:not(:disabled){background:var(--color-primary-light);border-color:var(--color-primary-border)}.btn-link{color:var(--color-primary);background:0 0;padding:10px 16px}.btn-link:hover{background:var(--color-primary-light)}.btn-danger{background:var(--color-danger);color:#fff;border-color:var(--color-danger)}.btn-danger:hover:not(:disabled){background:#dc2626;border-color:#dc2626}.btn-icon{border-radius:var(--radius-md);border:1px solid var(--border-default);width:38px;height:38px;color:var(--text-secondary);cursor:pointer;transition:all var(--motion-fast) var(--motion-easing);background:#fff;justify-content:center;align-items:center;padding:0;display:inline-flex}.btn-icon:hover{background:var(--surface-hover);color:var(--color-primary);border-color:var(--color-primary-border)}.btn-icon:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.form-group{flex-direction:column;gap:6px;display:flex}.form-group label{color:var(--text-primary);font-size:.875rem;font-weight:500}.form-group .required{color:var(--color-danger)}.form-group input,.form-group select,.form-group textarea{font-size:.9rem;font-family:var(--font);border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--surface-card);color:var(--text-primary);transition:border-color var(--motion-fast) var(--motion-easing), box-shadow var(--motion-fast) var(--motion-easing);outline:none;padding:10px 12px;line-height:1.5}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #2563eb1a}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-muted)}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{background:var(--surface-section);color:var(--text-muted);cursor:not-allowed}.form-error{background:var(--color-danger-bg);border:1px solid var(--color-danger-border);border-radius:var(--radius-sm);color:var(--color-danger);padding:10px 14px;font-size:.875rem}.form-success{background:var(--color-success-bg);border:1px solid var(--color-success-border);border-radius:var(--radius-sm);color:#16a34a;padding:10px 14px;font-size:.875rem}.card{background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);transition:box-shadow var(--motion-normal) var(--motion-easing), border-color var(--motion-normal) var(--motion-easing);padding:24px}.card-stat{background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);transition:transform var(--motion-normal) var(--motion-easing), box-shadow var(--motion-normal) var(--motion-easing);padding:22px 20px;position:relative;overflow:hidden}.card-stat:before{content:"";border-radius:3px 3px 0 0;height:3px;position:absolute;top:0;left:0;right:0}.card-stat:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-3px)}.card-stat.accent-blue:before{background:var(--color-primary)}.card-stat.accent-cyan:before{background:var(--color-accent-cyan)}.card-stat.accent-purple:before{background:var(--color-accent-purple)}.card-stat.accent-green:before{background:var(--color-accent-green)}.card-stat.accent-orange:before{background:var(--color-accent-orange)}.card-stat.accent-rose:before{background:var(--color-accent-rose)}.tag{border-radius:var(--radius-full);white-space:nowrap;align-items:center;gap:4px;padding:3px 10px;font-size:.75rem;font-weight:500;display:inline-flex}.tag-blue{background:var(--color-primary-light);color:var(--color-primary)}.tag-cyan{color:#0891b2;background:#ecfeff}.tag-purple{color:var(--color-accent-purple);background:#f5f3ff}.tag-green{background:var(--color-success-bg);color:#059669}.tag-orange{background:var(--color-warning-bg);color:#d97706}.tag-rose{background:var(--color-danger-bg);color:#e11d48}.status-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}.status-dot.success{background:var(--color-success)}.status-dot.warning{background:var(--color-warning)}.status-dot.danger{background:var(--color-danger)}.status-dot.info{background:var(--color-info)}.status-dot.muted{background:var(--text-muted)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}input:focus-visible,textarea:focus-visible,select:focus-visible{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #2563eb26}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUpFade{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes subtlePulse{0%,to{box-shadow:0 0 #2563eb4d}50%{box-shadow:0 0 0 6px #2563eb00}}@keyframes glowDrift{0%,to{transform:translate(0)scale(1)}33%{transform:translate(1%,-.5%)scale(1.02)}66%{transform:translate(-.5%,1%)scale(1.01)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:64px 24px;display:flex}.empty-state-icon{opacity:.5;margin-bottom:16px;font-size:3rem}.empty-state-title{color:var(--text-primary);margin-bottom:8px;font-size:1.1rem;font-weight:600}.empty-state-desc{color:var(--text-muted);max-width:360px;margin-bottom:20px;font-size:.9rem;line-height:1.6}.loading-spinner{border:3px solid var(--border-default);border-top-color:var(--color-primary);border-radius:50%;width:40px;height:40px;animation:.75s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.table-container{border-radius:var(--radius-lg);border:1px solid var(--border-default);background:var(--surface-card);width:100%;overflow-x:auto}.table-container table{border-collapse:collapse;width:100%;min-width:600px}.table-container thead{background:var(--surface-section);border-bottom:2px solid var(--border-default)}.table-container thead th{color:var(--text-secondary);text-align:left;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;-webkit-user-select:none;user-select:none;padding:12px 16px;font-size:.8rem;font-weight:700}.table-container tbody td{color:var(--text-primary);border-bottom:1px solid var(--border-light);vertical-align:middle;padding:12px 16px;font-size:.9rem;line-height:1.45}.table-container tbody tr:last-child td{border-bottom:none}.table-container tbody tr:hover{background:var(--surface-hover)}.table-container tbody tr.is-selected{background:var(--color-primary-light)}.table-actions{align-items:center;gap:var(--space-sm);display:inline-flex}.table-pagination{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:16px 0 4px;display:flex}.table-pagination-info{color:var(--text-muted);font-size:.85rem}.table-pagination-buttons{align-items:center;gap:6px;display:flex}.modal-overlay{z-index:100;background:var(--surface-overlay);animation:fadeIn var(--motion-fast) var(--motion-easing);justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal-panel{background:var(--surface-card);border-radius:var(--radius-xl);width:100%;max-width:560px;max-height:85vh;box-shadow:var(--shadow-modal);animation:slideUpFade var(--motion-normal) var(--motion-easing);flex-direction:column;display:flex;position:relative;overflow:hidden}.modal-panel.modal-sm{max-width:420px}.modal-panel.modal-lg{max-width:720px}.modal-panel.modal-xl{max-width:960px}.modal-header{border-bottom:1px solid var(--border-default);flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;display:flex}.modal-header h3{color:var(--text-primary);margin:0;font-size:1.1rem;font-weight:600}.modal-close{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--text-muted);cursor:pointer;transition:all var(--motion-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:1.2rem;display:inline-flex}.modal-close:hover{background:var(--surface-hover);color:var(--text-primary)}.modal-body{flex:1;padding:24px;overflow-y:auto}.modal-footer{border-top:1px solid var(--border-default);background:var(--surface-section);flex-shrink:0;justify-content:flex-end;align-items:center;gap:10px;padding:16px 24px;display:flex}.filter-bar{background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);flex-wrap:wrap;align-items:center;gap:10px;padding:14px 18px;display:flex}.filter-bar .filter-label{color:var(--text-secondary);white-space:nowrap;margin-right:4px;font-size:.82rem;font-weight:600}.filter-chip{border:1px solid var(--border-default);border-radius:var(--radius-full);background:var(--surface-card);color:var(--text-secondary);cursor:pointer;transition:all var(--motion-fast);white-space:nowrap;align-items:center;gap:4px;padding:5px 12px;font-size:.8rem;font-weight:500;display:inline-flex}.filter-chip:hover{background:var(--surface-hover);border-color:var(--border-active)}.filter-chip.active{background:var(--color-primary-light);color:var(--color-primary);border-color:var(--color-primary-border)}.filter-chip .chip-count{border-radius:var(--radius-full);background:#0000000f;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:.7rem;font-weight:700;display:inline-flex}.search-bar{align-items:center;gap:10px;min-width:200px;max-width:360px;display:flex}.search-bar input{border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--surface-card);min-width:0;height:38px;color:var(--text-primary);transition:border-color var(--motion-fast), box-shadow var(--motion-fast);outline:none;flex:1;padding:8px 14px;font-size:.88rem}.search-bar input:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px #2563eb1a}.search-bar input::placeholder{color:var(--text-muted)}.filter-section{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.skeleton{background:linear-gradient(90deg, var(--border-light) 25%, var(--surface-section) 50%, var(--border-light) 75%);border-radius:var(--radius-sm);background-size:200% 100%;animation:1.5s ease-in-out infinite shimmer}.skeleton-line{height:14px;margin-bottom:8px}.skeleton-line:last-child{width:60%}.skeleton-block{border-radius:var(--radius-md);height:80px}.skeleton-avatar{border-radius:50%;width:40px;height:40px}.skeleton-card{border-radius:var(--radius-lg);height:120px}.empty-state-compact{padding:32px 16px}.empty-state-compact .empty-state-icon{margin-bottom:10px;font-size:2.2rem}.empty-state-compact .empty-state-title{font-size:.95rem}.loading-state{flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:48px 24px;display:flex}.loading-state .loading-spinner{width:36px;height:36px}.error-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:48px 24px;display:flex}.error-state-icon{opacity:.6;font-size:2.5rem}.error-state-message{color:var(--text-secondary);max-width:400px;font-size:.95rem;line-height:1.6}.section-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.section-header-left h2{color:var(--text-primary);margin:0;font-size:1.35rem;font-weight:700;line-height:1.3}.section-header-left p{color:var(--text-muted);margin:4px 0 0;font-size:.85rem;line-height:1.5}.section-header-right{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.detail-grid{grid-template-columns:140px minmax(0,1fr);align-items:baseline;gap:16px 20px;display:grid}.detail-grid .detail-label{color:var(--text-secondary);text-align:right;padding-top:6px;font-size:.85rem;font-weight:600;line-height:1.5}.detail-grid .detail-value{color:var(--text-primary);word-break:break-word;padding-top:6px;font-size:.9rem;line-height:1.5}.form-grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px;display:grid}.card-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.card-header h3,.card-header .card-title{margin:0}.card-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}@media (width<=1180px){.card-grid-4,.card-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=720px){.section-header{flex-direction:column;align-items:stretch}.section-header-right{width:100%}.section-header-right .btn{flex:auto}.form-grid-2,.detail-grid{grid-template-columns:1fr}.detail-grid .detail-label{text-align:left}.card-grid-4,.card-grid-3{grid-template-columns:1fr}.filter-section{flex-direction:column;align-items:stretch}.search-bar{width:100%;max-width:none}.table-pagination{flex-direction:column;align-items:stretch;gap:10px}.modal-panel{max-width:calc(100vw - 32px);max-height:90vh;margin:0}}.card-grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.card-grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.card-grid-4{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--lp-primary:#2563eb;--lp-primary-light:#3b82f6;--lp-primary-dark:#1d4ed8;--lp-accent:#0ea5e9;--lp-accent-cyan:#06b6d4;--lp-surface:#fff;--lp-surface-alt:#f8fafc;--lp-text:#1e293b;--lp-text-secondary:#475569;--lp-text-muted:#94a3b8;--lp-border:#e2e8f0;--lp-border-light:#3b82f61f;--lp-shadow-sm:0 1px 2px #0000000a;--lp-shadow:0 4px 16px #0000000f;--lp-shadow-md:0 8px 32px #00000014;--lp-shadow-lg:0 16px 48px #0000001a;--lp-shadow-blue:0 8px 32px #2563eb26;--lp-radius-sm:12px;--lp-radius:20px;--lp-radius-lg:24px;--lp-transition:.3s cubic-bezier(.4, 0, .2, 1)}.landing-page{background:var(--lp-surface);width:100%;min-height:100vh;position:relative;overflow-x:hidden}.site-navbar{z-index:1000;-webkit-backdrop-filter:blur(18px);background:#ffffffb8;border-bottom:1px solid #e2e8f080;justify-content:space-between;align-items:center;width:100%;height:68px;padding:0 max(32px,4vw);transition:background .35s,box-shadow .35s,border-color .35s;display:flex;position:fixed;top:0;left:0}.site-navbar.nav-scrolled{background:#ffffffe0;border-bottom-color:#e2e8f0cc;box-shadow:0 1px 8px #0000000f}.site-brand{-webkit-user-select:none;user-select:none;flex-direction:row;align-items:center;gap:12px;line-height:1.2;display:flex}.site-logo{flex-shrink:0;width:auto;height:40px;display:block}.site-brand-text{flex-direction:column;align-items:flex-start;display:flex}.site-brand .brand-cn{color:#1e293b;letter-spacing:.04em;font-size:18px;font-weight:700}.site-brand .brand-en{letter-spacing:.14em;background:linear-gradient(90deg,#2563eb,#0ea5e9,#06b6d4);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:11px;font-weight:500}.site-nav{align-items:center;gap:8px;display:flex}.nav-link{color:#475569;cursor:pointer;font-size:14px;font-weight:500;font-family:var(--font);letter-spacing:.03em;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;background:0 0;border:none;outline:none;padding:8px 18px;transition:color .25s;position:relative}.nav-link:after{content:"";background:linear-gradient(90deg,#2563eb,#0ea5e9);border-radius:2px;width:60%;height:2px;transition:transform .3s cubic-bezier(.4,0,.2,1);position:absolute;bottom:4px;left:50%;transform:translate(-50%)scaleX(0)}.nav-link:hover{color:#2563eb}.nav-link:hover:after{transform:translate(-50%)scaleX(1)}.nav-link.active{color:#2563eb}.nav-link.active:after{transform:translate(-50%)scaleX(1)}.hero-section{box-sizing:border-box;justify-content:center;align-items:center;width:100%;min-height:100vh;padding:88px 24px 48px;display:flex;position:relative;overflow:hidden}.hero-section.has-auth-panel{align-items:flex-start}.hero-background{pointer-events:none;z-index:0;position:absolute;inset:0;overflow:hidden}.hero-project-visual{z-index:1;pointer-events:none;position:absolute;inset:68px 0 0;overflow:hidden}.knowledge-visual{aspect-ratio:1;isolation:isolate;filter:saturate(1.08);width:min(48vw,760px);position:absolute;top:50%;right:clamp(12px,3vw,80px);transform:translateY(-49%)}.knowledge-visual:before,.knowledge-visual:after{content:"";pointer-events:none;border-radius:50%;position:absolute;inset:11%}.knowledge-visual:before{filter:blur(26px);background:radial-gradient(circle,#38bdf857 0%,#60a5fa2e 25%,#6366f114 47%,#0000 68%);animation:5.6s ease-in-out infinite knowledgePulse}.knowledge-visual:after{border:1px solid #7dd3fc3d;inset:6%;box-shadow:0 0 80px #3b82f633,inset 0 0 38px #ffffff3d}.knowledge-aurora{background:conic-gradient(from 170deg, transparent 0 10%, #2dd4bf33 20%, transparent 31%, #818cf840 45%, transparent 59%, #38bdf833 76%, transparent 90%);filter:blur(20px);border-radius:45% 55% 55% 45%;animation:20s linear infinite reverse knowledgeSpin;position:absolute;inset:6%}.knowledge-grid-plane{z-index:-1;transform-origin:bottom;opacity:.55;background-image:linear-gradient(#7dd3fc61 1px,#0000 1px),linear-gradient(90deg,#7dd3fc61 1px,#0000 1px);background-size:30px 30px;height:28%;position:absolute;bottom:5%;left:8%;right:8%;transform:perspective(360px)rotateX(63deg);-webkit-mask-image:linear-gradient(#0000 8%,#000);mask-image:linear-gradient(#0000 8%,#000)}.knowledge-orbit{border:1px solid #7dd3fc57;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotateX(68deg);box-shadow:0 0 25px #3b82f61f}.knowledge-orbit:after{content:"";background:#fff;border-radius:50%;width:8px;height:8px;position:absolute;top:-4px;left:14%;box-shadow:0 0 0 4px #38bdf829,0 0 18px 5px #38bdf8cc}.knowledge-orbit--outer{width:88%;height:88%;animation:17s linear infinite knowledgeOrbit}.knowledge-orbit--middle{border-color:#a78bfa61;width:65%;height:65%;animation:12s linear infinite reverse knowledgeOrbit}.knowledge-orbit--inner{border-color:#2dd4bf6b;width:42%;height:42%;animation:9s linear infinite knowledgeOrbit}.knowledge-network{z-index:1;width:84%;height:84%;position:absolute;inset:8%;overflow:visible}.knowledge-network path{stroke:#81d3fc99;stroke-width:1.35px;stroke-dasharray:6 8;filter:drop-shadow(0 0 4px #60a5fab3);animation:11s linear infinite networkFlow}.knowledge-node{z-index:2;background:radial-gradient(circle at 30% 30%,#fff,#38bdf8 48%,#4f46e5 100%);border:2px solid #fffffff0;border-radius:50%;width:13px;height:13px;animation:3.4s ease-in-out infinite nodeTwinkle;position:absolute;box-shadow:0 0 0 5px #38bdf824,0 0 25px #3b82f6e0}.knowledge-node--1{animation-delay:-.5s;top:18%;left:16%}.knowledge-node--2{width:18px;height:18px;animation-delay:-2.1s;top:8%;left:43%}.knowledge-node--3{background:radial-gradient(circle at 30% 30%,#fff,#c4b5fd 48%,#7c3aed 100%);animation-delay:-1.2s;top:17%;right:15%}.knowledge-node--4{width:17px;height:17px;animation-delay:-3s;top:38%;right:4%}.knowledge-node--5{background:radial-gradient(circle at 30% 30%,#fff,#5eead4 48%,#0891b2 100%);animation-delay:-1.8s;bottom:18%;right:16%}.knowledge-node--6{width:18px;height:18px;animation-delay:-.8s;bottom:8%;left:43%}.knowledge-node--7{background:radial-gradient(circle at 30% 30%,#fff,#c4b5fd 48%,#6366f1 100%);animation-delay:-2.5s;bottom:19%;left:12%}.knowledge-node--8{animation-delay:-1.5s;top:42%;left:2%}.knowledge-core{z-index:4;color:#eff6ff;-webkit-backdrop-filter:blur(14px);background:linear-gradient(145deg,#ffffff75,#6366f12e);border:1px solid #ffffffad;border-radius:34px;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:164px;height:164px;animation:5.4s ease-in-out infinite coreFloat;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 22px 60px #2563eb47,inset 0 1px 1px #ffffffe6}.knowledge-core-glow{z-index:-1;border-radius:inherit;filter:blur(14px);background:radial-gradient(circle,#ffffffc7,#38bdf838 42%,#0000 72%);position:absolute;inset:-24px}.knowledge-core svg{fill:#dbeafe61;stroke:#fff;stroke-width:2.3px;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 12px #ffffffbf);width:58px;height:58px}.knowledge-core span{letter-spacing:.12em;text-shadow:0 2px 12px #2563eb;font-size:13px;font-weight:700}.knowledge-chip,.knowledge-panel{z-index:5;-webkit-backdrop-filter:blur(14px);background:linear-gradient(135deg,#ffffffad,#dbeafe3d);border:1px solid #ffffff94;position:absolute;box-shadow:0 12px 32px #2563eb21,inset 0 1px #ffffffc2}.knowledge-chip{color:#1e3a8a;letter-spacing:.03em;border-radius:999px;align-items:center;gap:7px;padding:8px 11px;font-size:12px;font-weight:700;animation:4.6s ease-in-out infinite chipFloat;display:inline-flex}.knowledge-chip i{background:#22d3ee;border-radius:50%;width:7px;height:7px;box-shadow:0 0 12px #0ea5e9}.knowledge-chip--ai{animation-delay:-1.5s;top:20%;right:5%}.knowledge-chip--trace{animation-delay:-3.1s;bottom:23%;left:3%}.knowledge-chip--trace i{background:#8b5cf6;box-shadow:0 0 12px #8b5cf6}.knowledge-chip--collab{animation-delay:-2.2s;bottom:10%;right:9%}.knowledge-chip--collab i{background:#14b8a6;box-shadow:0 0 12px #14b8a6}.knowledge-panel{color:#1e3a8a;border-radius:16px;min-width:128px;padding:12px 14px;animation:5.4s ease-in-out infinite panelFloat}.knowledge-panel--left{animation-delay:-.7s;top:33%;left:1%}.knowledge-panel--right{animation-delay:-2.6s;top:58%;right:0}.panel-kicker{color:#0369a1;letter-spacing:.12em;font-size:8px;font-weight:800;display:block}.knowledge-panel strong{letter-spacing:-.04em;margin-top:5px;font-size:24px;display:block}.knowledge-panel em{color:#475569;margin-top:3px;font-size:10px;font-style:normal;font-weight:600;display:block}.panel-bars{align-items:end;gap:3px;height:18px;margin-top:8px;display:flex}.panel-bars i{background:linear-gradient(#22d3ee,#2563eb);border-radius:4px 4px 1px 1px;width:8px;display:block;box-shadow:0 0 7px #2563eb40}.panel-bars i:first-child{height:7px}.panel-bars i:nth-child(2){height:13px}.panel-bars i:nth-child(3){height:10px}.panel-bars i:nth-child(4){height:18px}.panel-bars i:nth-child(5){height:15px}.agent-flow{align-items:center;gap:6px;margin:9px 0 7px;display:flex}.agent-flow i{background:linear-gradient(135deg,#38bdf8,#2563eb);border-radius:4px;width:12px;height:12px;box-shadow:0 0 8px #2563eb66}.agent-flow i:last-child{background:linear-gradient(135deg,#5eead4,#0891b2)}.agent-flow b{background:#7dd3fc;width:16px;height:1px;display:block}@keyframes knowledgePulse{0%,to{opacity:.55;transform:scale(.92)}50%{opacity:.9;transform:scale(1.08)}}@keyframes knowledgeSpin{to{transform:rotate(360deg)}}@keyframes knowledgeOrbit{to{transform:translate(-50%,-50%)rotateX(68deg)rotate(360deg)}}@keyframes networkFlow{to{stroke-dashoffset:-180px}}@keyframes nodeTwinkle{0%,to{opacity:.72;transform:scale(.78)}50%{opacity:1;transform:scale(1.18)}}@keyframes coreFloat{0%,to{transform:translate(-50%,-50%)translateY(0)}50%{transform:translate(-50%,-50%)translateY(-12px)}}@keyframes chipFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes panelFloat{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-10px)rotate(1deg)}}.hero-lines,.hero-depth-floor,.hero-light-beams,.hero-geo-shapes,.hero-particles{display:none}.hero-glow{filter:blur(120px);opacity:.28;border-radius:50%;animation:12s ease-in-out infinite floatGlow;position:absolute}.hero-glow--tl{background:radial-gradient(circle,#2563eb59 0%,#0000 70%);width:640px;height:640px;animation-delay:0s;top:-15%;left:-8%}.hero-glow--br{background:radial-gradient(circle,#06b6d447 0%,#0000 70%);width:560px;height:560px;animation-delay:-4s;bottom:-12%;right:-6%}.hero-glow--center{background:radial-gradient(circle,#3b82f62e 0%,#0000 70%);width:500px;height:500px;animation-delay:-8s;top:45%;left:50%;transform:translate(-50%,-50%)}@keyframes floatGlow{0%,to{opacity:.28;transform:translate(0)scale(1)}25%{opacity:.34;transform:translate(18px,-20px)scale(1.04)}50%{opacity:.24;transform:translate(-12px,-8px)scale(.96)}75%{opacity:.3;transform:translate(-20px,14px)scale(1.02)}}.hero-grid{opacity:.6;background-image:linear-gradient(#2563eb0a 1px,#0000 1px),linear-gradient(90deg,#2563eb0a 1px,#0000 1px);background-size:60px 60px;position:absolute;inset:0}.hero-lines{opacity:.35;width:100%;height:100%;position:absolute;inset:0}.flow-line{fill:none;stroke:#93c5fd;stroke-width:1.2px;stroke-dasharray:280;stroke-dashoffset:0;opacity:.5;animation:18s linear infinite flowLine}.flow-line:nth-child(2){stroke:#67e8f9;opacity:.35;animation-duration:22s;animation-delay:-6s}.flow-line:nth-child(3){stroke:#a5b4fc;opacity:.3;animation-duration:26s;animation-delay:-12s}@keyframes flowLine{0%{stroke-dashoffset:0}to{stroke-dashoffset:-560px}}.hero-particles{position:absolute;inset:0}.hero-particle{opacity:.25;background:#60a5fa;border-radius:50%;width:4px;height:4px;animation:7s ease-in-out infinite particleFloat;position:absolute}.hero-particle:first-child{width:5px;height:5px;animation-delay:0s;top:18%;left:12%}.hero-particle:nth-child(2){background:#38bdf8;width:3px;height:3px;animation-delay:-1.5s;top:25%;left:75%}.hero-particle:nth-child(3){background:#818cf8;width:4px;height:4px;animation-delay:-3s;top:60%;left:20%}.hero-particle:nth-child(4){width:6px;height:6px;animation-delay:-4.5s;top:70%;left:80%}.hero-particle:nth-child(5){background:#22d3ee;width:3px;height:3px;animation-delay:-5.5s;top:15%;left:50%}.hero-particle:nth-child(6){background:#c084fc;width:5px;height:5px;animation-delay:-2s;top:80%;left:45%}.hero-particle:nth-child(7){background:#38bdf8;width:4px;height:4px;animation-delay:-6s;top:35%;left:30%}.hero-particle:nth-child(8){width:3px;height:3px;animation-delay:-3.5s;top:50%;left:65%}.hero-particle:nth-child(9){background:#a5b4fc;width:5px;height:5px;animation-delay:-7s;top:10%;left:88%}.hero-particle:nth-child(10){background:#22d3ee;width:4px;height:4px;animation-delay:-1s;top:88%;left:10%}@keyframes particleFloat{0%,to{opacity:.25;transform:translateY(0)translate(0)}25%{opacity:.45;transform:translateY(-16px)translate(8px)}50%{opacity:.18;transform:translateY(-24px)translate(-6px)}75%{opacity:.38;transform:translateY(-8px)translate(-12px)}}.hero-particle:nth-child(11){background:#93c5fd;width:5px;height:5px;animation-delay:-2.5s;top:42%;left:55%}.hero-particle:nth-child(12){background:#67e8f9;width:3px;height:3px;animation-delay:-5.8s;top:75%;left:32%}.hero-glow--far{filter:blur(140px);background:radial-gradient(#0ea5e91a 0%,#2563eb0a 40%,#0000 70%);width:900px;height:400px;animation:16s ease-in-out infinite floatGlowFar;top:60%;left:50%;transform:translate(-50%,-50%)}@keyframes floatGlowFar{0%,to{opacity:.45;transform:translate(-50%,-50%)scale(1)}50%{opacity:.35;transform:translate(-50%,-52%)scale(1.08)}}.hero-glow--mid-left{filter:blur(80px);background:radial-gradient(#3b82f61a 0%,#0000 70%);border-radius:40% 60% 50% 50%;width:320px;height:420px;animation:14s ease-in-out -3s infinite floatMidLeft;top:30%;left:5%}.hero-glow--mid-right{filter:blur(70px);background:radial-gradient(#06b6d414 0%,#0000 70%);border-radius:55% 45% 60% 40%;width:280px;height:360px;animation:15s ease-in-out -7s infinite floatMidRight;top:40%;right:2%}@keyframes floatMidLeft{0%,to{opacity:.55;transform:translate(0)rotate(0)}33%{opacity:.4;transform:translate(20px,-15px)rotate(3deg)}66%{opacity:.5;transform:translate(-10px,10px)rotate(-2deg)}}@keyframes floatMidRight{0%,to{opacity:.5;transform:translate(0)rotate(0)}33%{opacity:.38;transform:translate(-18px,-12px)rotate(-3deg)}66%{opacity:.48;transform:translate(12px,8px)rotate(2deg)}}.hero-depth-floor{transform-origin:bottom;pointer-events:none;z-index:0;background:repeating-linear-gradient(0deg,#3b82f612 0 1px,#0000 1px 28px),repeating-linear-gradient(90deg,#3b82f60f 0 1px,#0000 1px 40px),linear-gradient(#0000 30%,#0ea5e908 70%,#3b82f60f 100%);width:140%;height:60%;position:absolute;bottom:0;left:50%;transform:translate(-50%)perspective(800px)rotateX(60deg);-webkit-mask-image:linear-gradient(#0000 0%,#00000014 50%,#00000059 100%);mask-image:linear-gradient(#0000 0%,#00000014 50%,#00000059 100%)}.hero-light-beams{pointer-events:none;z-index:0;position:absolute;inset:0;overflow:hidden}.light-beam{transform-origin:top;background:linear-gradient(#93c5fd40 0%,#3b82f61a 30%,#0000 70%);width:1px;height:130%;animation:12s ease-in-out infinite beamSway;position:absolute;top:-30%}.light-beam--1{opacity:.6;width:1.5px;animation-delay:0s;left:18%;transform:rotate(22deg)}.light-beam--2{opacity:.4;width:1px;animation-delay:-4s;left:55%;transform:rotate(18deg)}.light-beam--3{opacity:.5;width:1.2px;animation-delay:-8s;left:78%;transform:rotate(26deg)}@keyframes beamSway{0%,to{opacity:.6;transform:rotate(22deg)translate(0)}25%{opacity:.45;transform:rotate(23deg)translate(6px)}50%{opacity:.55;transform:rotate(21deg)translate(-4px)}75%{opacity:.5;transform:rotate(22.5deg)translate(3px)}}.light-beam--2{animation-name:beamSway2}.light-beam--3{animation-name:beamSway3}@keyframes beamSway2{0%,to{opacity:.4;transform:rotate(18deg)translate(0)}50%{opacity:.5;transform:rotate(17deg)translate(-5px)}}@keyframes beamSway3{0%,to{opacity:.5;transform:rotate(26deg)translate(0)}50%{opacity:.38;transform:rotate(27deg)translate(4px)}}.hero-geo-shapes{pointer-events:none;z-index:0;position:absolute;inset:0}.geo-shape{opacity:.12;animation:10s ease-in-out infinite geoFloat;position:absolute}.geo-ring{background:0 0;border:2px solid #3b82f680;border-radius:50%;width:64px;height:64px}.geo-ring--1{opacity:.15;width:56px;height:56px;animation-delay:0s;top:20%;left:8%}.geo-ring--2{opacity:.1;border-color:#06b6d466;width:80px;height:80px;animation-delay:-3.5s;top:65%;right:6%}.geo-square{background:#3b82f608;border:1.5px solid #3b82f659;border-radius:12px}.geo-square--1{width:48px;height:48px;animation-delay:-1.5s;top:28%;right:14%}.geo-square--2{border-color:#818cf859;border-radius:8px;width:36px;height:36px;animation-delay:-5s;top:72%;left:12%}.geo-diamond--1{background:#0ea5e905;border:1.5px solid #0ea5e966;border-radius:4px;width:32px;height:32px;animation-delay:-7s;top:48%;left:22%;transform:rotate(45deg)}.geo-hex--1{clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);opacity:.1;background:#93c5fd05;border:1.5px solid #93c5fd59;width:42px;height:48px;animation-delay:-2s;top:15%;right:28%}@keyframes geoFloat{0%,to{opacity:.12;transform:translateY(0)translate(0)rotate(0)}25%{opacity:.18;transform:translateY(-18px)translate(6px)rotate(5deg)}50%{opacity:.09;transform:translateY(-10px)translate(-4px)rotate(-3deg)}75%{opacity:.15;transform:translateY(-22px)translate(-8px)rotate(2deg)}}.hero-content{z-index:10;box-sizing:border-box;opacity:0;flex-direction:column;align-items:flex-start;width:min(1320px,100vw - 64px);max-width:100%;padding-right:clamp(420px,48vw,660px);transition:opacity .8s,transform .8s;display:flex;position:relative;transform:translateY(24px)}.hero-content.visible{opacity:1;transform:translateY(0)}.login-hero-area{z-index:20;text-align:left;flex-direction:column;flex-shrink:0;align-items:flex-start;width:100%;padding-top:0;display:flex;position:relative}.hero-eyebrow{color:#1d4ed8;letter-spacing:.08em;background:#eff6ffd1;border:1px solid #2563eb2e;border-radius:999px;align-items:center;min-height:34px;margin:0 0 8px;padding:0 15px;font-size:13px;font-weight:700;display:inline-flex;box-shadow:0 10px 30px #2563eb14}.main-title-fixed-box{justify-content:flex-start;align-items:center;width:100%;height:94px;display:flex;position:relative;overflow:visible}.login-main-title{z-index:30;white-space:nowrap;text-align:left;letter-spacing:.04em;justify-content:flex-start;align-items:center;width:100%;height:94px;margin:0;font-size:clamp(44px,5.2vw,72px);font-weight:900;line-height:1.1;display:flex;position:relative;opacity:1!important;visibility:visible!important;filter:none!important}.title-text-run{white-space:nowrap;justify-content:center;align-items:center;display:inline-flex;position:relative}.title-char{line-height:1.1;transition:color .3s;display:inline-block}.title-cursor{letter-spacing:0;font-size:clamp(38px,5vw,68px);font-weight:500;line-height:1;animation:.9s infinite titleCursorBlink;display:inline-block;position:absolute;top:50%;left:calc(100% + 10px);transform:translateY(-50%)}@keyframes titleCursorBlink{0%,45%{opacity:1}46%,to{opacity:0}}.login-subtitle{color:#4b5563;letter-spacing:1px;opacity:1;max-width:560px;margin-top:18px;font-size:17px;font-weight:500;line-height:1.8}.login-brand{letter-spacing:.28em;color:#9ca3af;opacity:1;margin-top:10px;font-size:14px;font-weight:400}.hero-proof-points{flex-wrap:wrap;gap:8px;margin-top:20px;display:flex}.hero-proof-points span{color:#475569;background:#ffffffc2;border:1px solid #94a3b833;border-radius:10px;padding:7px 12px;font-size:12px;font-weight:600;box-shadow:0 8px 24px #0f172a0d}.auth-entry-area{z-index:20;flex-shrink:0;justify-content:flex-start;align-items:center;gap:24px;width:100%;margin:48px auto 0;display:flex;position:relative}.auth-entry-btn{-webkit-backdrop-filter:blur(18px);min-width:150px;height:52px;font-size:18px;font-family:var(--font);cursor:pointer;color:#374151;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;z-index:30;background:#ffffffc7;border:1px solid #94a3b84d;border-radius:999px;outline:none;padding:0 32px;font-weight:700;transition:transform .25s,box-shadow .25s,border-color .25s,background .25s,color .25s;position:relative;box-shadow:0 18px 45px #0f172a14}.auth-entry-btn:hover{border-color:#3b82f6;transform:translateY(-3px);box-shadow:0 24px 56px #0f172a1f}.auth-entry-btn:active{transform:scale(.97)}.auth-entry-btn.login-entry-btn.active{color:#fff;background:#3b82f6;border-color:#3b82f6;box-shadow:0 16px 36px #3b82f647}.auth-entry-btn.register-entry-btn.active{color:#fff;background:#8b5cf6;border-color:#8b5cf6;box-shadow:0 16px 36px #8b5cf647}.auth-panel{z-index:20;box-sizing:border-box;-webkit-backdrop-filter:blur(20px);opacity:0;background:#ffffffd1;border:1px solid #94a3b833;border-radius:24px;flex-direction:column;flex-shrink:0;align-items:center;width:min(620px,100%);margin:32px 0 0;padding:22px;transition:opacity .32s,transform .32s;display:flex;position:relative;transform:translateY(18px);box-shadow:0 22px 55px #0f172a1a}.auth-panel.visible{opacity:1;transform:translateY(0)}.panel-toggle{text-align:center;color:#94a3b8;margin-top:20px;font-size:.85rem}.panel-toggle a{color:var(--theme-color,#3b82f6);cursor:pointer;font-weight:500;text-decoration:none;transition:color .2s}.panel-toggle a:hover{opacity:.8}.identity-selector{flex-shrink:0;justify-content:center;width:100%;display:flex}.identity-capsule{-webkit-backdrop-filter:blur(20px);background:#f8fafcb3;border:1px solid #e2e8f0e6;border-radius:50px;align-items:center;padding:5px;transition:opacity .3s;display:inline-flex;position:relative;box-shadow:0 4px 24px #0000000a,0 1px 3px #00000008,inset 0 1px #ffffffe6}.identity-capsule.locked{pointer-events:none;opacity:.55;cursor:not-allowed}.identity-capsule.locked .identity-option{cursor:not-allowed}.identity-highlight{background:var(--theme-color,#3b82f6);z-index:0;pointer-events:none;border-radius:50px;height:calc(100% - 10px);transition:left .45s cubic-bezier(.34,1.3,.64,1),width .45s cubic-bezier(.34,1.3,.64,1),background .4s;position:absolute;top:5px;box-shadow:0 2px 12px #0000001f}.identity-option{z-index:1;font-size:.93rem;font-family:var(--font);cursor:pointer;color:#6b7280;white-space:nowrap;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;background:0 0;border:none;border-radius:50px;outline:none;padding:10px 24px;font-weight:500;transition:color .35s;position:relative}.identity-option.active{color:#fff}.login-form-area{z-index:20;flex-direction:column;flex-shrink:0;align-items:center;gap:18px;width:100%;max-width:620px;margin-top:28px;display:flex;position:relative}.input-row{gap:24px;width:100%;display:flex}.input-row .input-underline{flex:1;min-width:0}.input-underline{position:relative}.input-underline input{-webkit-backdrop-filter:blur(8px);width:100%;font-size:.95rem;font-family:var(--font);color:#111827;letter-spacing:.5px;background:#fff9;border:none;border-bottom:2px solid #e5e7eb;outline:none;height:44px;padding:12px 4px;line-height:1.4;transition:border-color .35s}.input-underline input::placeholder{color:#9ca3af;letter-spacing:.5px;font-weight:400}.input-underline .input-glow{background:var(--theme-color,#3b82f6);pointer-events:none;width:0;height:2px;transition:width .35s,box-shadow .35s;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.input-underline input:focus{border-bottom-color:var(--theme-color,#3b82f6)}.input-underline input:focus~.input-glow{width:100%;box-shadow:0 2px 16px -2px var(--theme-color,#3b82f6)}.login-error-msg{color:#ef4444;text-align:center;background:#ef44440f;border:1px solid #ef44441f;border-radius:10px;width:100%;padding:8px 16px;font-size:.85rem}.login-btn{background:var(--theme-color,#3b82f6);color:#fff;width:260px;font-size:1rem;font-family:var(--font);cursor:pointer;letter-spacing:6px;box-shadow:0 4px 16px -4px var(--theme-color,#3b82f666);-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;border:none;border-radius:50px;outline:none;padding:13px 0;font-weight:600;transition:background .4s,transform .25s,box-shadow .35s}.login-btn:hover:not(:disabled){box-shadow:0 8px 28px -4px var(--theme-color,#3b82f680);transform:translateY(-2px)}.login-btn:active:not(:disabled){transform:scale(.97)}.login-btn:disabled{opacity:.65;cursor:not-allowed}.register-form-inline{flex-direction:column;gap:0;display:flex}.register-form-inline .form-row{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:12px;display:grid}.register-form-inline .form-group{flex-direction:column;gap:6px;display:flex}.register-form-inline .form-group label{color:#374151;font-size:.85rem;font-weight:500}.register-form-inline .form-group .required{color:#ef4444}.register-form-inline .form-group input,.register-form-inline .form-group select{font-size:.9rem;font-family:var(--font);color:#111827;background:#fff;border:1px solid #d1d5db;border-radius:8px;outline:none;padding:10px 12px;transition:border-color .2s,box-shadow .2s}.register-form-inline .form-group input:focus,.register-form-inline .form-group select:focus{border-color:var(--theme-color,#3b82f6);box-shadow:0 0 0 3px #3b82f61a}.register-form-inline .form-group input::placeholder{color:#9ca3af}.register-form-inline .form-error{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin-bottom:12px;padding:10px 14px;font-size:.875rem}.register-form-inline .form-success{color:#16a34a;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;margin-bottom:12px;padding:10px 14px;font-size:.875rem}.register-form-inline .form-actions{justify-content:center;gap:12px;margin-top:4px;display:flex}.register-form-inline .btn{min-width:160px;height:46px;font-size:1rem;font-family:var(--font);letter-spacing:6px;cursor:pointer;border:none;border-radius:50px;font-weight:600;transition:all .25s}.register-form-inline .btn-primary{background:var(--theme-color,#3b82f6);color:#fff;box-shadow:0 4px 16px -4px var(--theme-color,#3b82f666)}.register-form-inline .btn-primary:hover:not(:disabled){box-shadow:0 8px 28px -4px var(--theme-color,#3b82f680);transform:translateY(-2px)}.register-form-inline .btn-primary:active:not(:disabled){transform:scale(.97)}.register-form-inline .btn-primary:disabled{opacity:.65;cursor:not-allowed}.login-footer{text-align:center;color:#b0b8c0;font-size:.85rem}.login-footer a{color:var(--theme-color,#3b82f6);margin-left:6px;font-weight:500;text-decoration:none;transition:color .4s,opacity .2s}.login-footer a:hover{opacity:.8}.demo-section{text-align:center;opacity:.82;margin-top:14px;transition:opacity .4s}.demo-section:hover{opacity:1}.demo-hint{color:#64748b;margin-bottom:6px;font-size:.72rem}.demo-tags{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.demo-tag{font-size:.68rem;font-family:var(--font);color:#64748b;white-space:nowrap;cursor:pointer;background:#f8fafce6;border:1px solid #94a3b833;border-radius:16px;padding:3px 12px;transition:all .2s;display:inline-block}.demo-tag:hover{color:var(--theme-color,#3b82f6);background:#94a3b81a;border-color:#94a3b840}.scroll-hint{z-index:15;opacity:1;pointer-events:none;-webkit-user-select:none;user-select:none;flex-direction:column;align-items:center;gap:8px;transition:opacity .5s,transform .5s;display:flex;position:absolute;bottom:36px;left:50%;transform:translate(-50%)}.scroll-hint.is-hidden{opacity:0;transform:translate(-50%)translateY(8px)}.scroll-hint-text{color:#94a3b8;letter-spacing:.08em;font-size:13px;animation:2.8s ease-in-out infinite hintBreathe}.scroll-hint-arrow{border-bottom:2px solid #cbd5e1;border-right:2px solid #cbd5e1;width:20px;height:20px;animation:2s ease-in-out infinite hintBounce;transform:rotate(45deg)}@keyframes hintBreathe{0%,to{opacity:.5}50%{opacity:1}}@keyframes hintBounce{0%,to{transform:rotate(45deg)translateY(0)}50%{transform:rotate(45deg)translateY(6px)}}.section-block{box-sizing:border-box;max-width:1200px;margin:0 auto;padding:100px max(24px,5vw);position:relative}.section-header{text-align:center;margin-bottom:56px}.section-title{color:#1e293b;letter-spacing:.03em;margin-bottom:12px;font-size:clamp(28px,3.5vw,40px);font-weight:800}.section-subtitle{color:#64748b;letter-spacing:.04em;max-width:560px;margin:0 auto;font-size:16px;font-weight:400;line-height:1.6}.scenario-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.scenario-card{border-radius:var(--lp-radius);box-shadow:var(--lp-shadow-sm);cursor:default;background:#fff;border:1px solid #3b82f61a;padding:0;transition:transform .35s cubic-bezier(.4,0,.2,1),box-shadow .35s cubic-bezier(.4,0,.2,1),border-color .35s;overflow:hidden}.scenario-card:hover{box-shadow:var(--lp-shadow-lg);border-color:#3b82f647;transform:translateY(-6px)}.scenario-media{aspect-ratio:2;background:linear-gradient(135deg,#eff6ff 0%,#e0f2fe 50%,#ecfeff 100%);justify-content:center;align-items:center;width:100%;height:auto;display:flex;position:relative;overflow:hidden}.scenario-media-image{z-index:1;object-fit:cover;object-position:center;filter:saturate(.9)contrast(.98);width:100%;height:100%;transition:transform .55s cubic-bezier(.2,.8,.2,1),filter .35s;display:block;position:absolute;inset:0}.scenario-card:hover .scenario-media-image{filter:saturate()contrast();transform:scale(1.06)}.scenario-media:after{content:"";z-index:2;pointer-events:none;background:linear-gradient(135deg,#2563eb1a 0%,#06b6d408 58%,#0f172a14 100%);transition:opacity .35s;position:absolute;inset:0}.scenario-media-icon{opacity:.45;z-index:0;font-size:36px;position:relative}.scenario-content{padding:20px 24px 24px}.scenario-content h3{color:#1e293b;letter-spacing:.03em;margin-bottom:8px;font-size:17px;font-weight:700}.scenario-content p{color:#64748b;font-size:14px;line-height:1.6}.agents-section{max-width:1280px}.agents-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.agent-card{--agent-accent:#2563eb;--agent-accent-soft:#2563eb1a;background:linear-gradient(145deg,#fff 0%,#f8fbff 100%);border:1px solid #94a3b838;border-radius:20px;flex-direction:column;min-height:254px;padding:24px;transition:transform .3s,border-color .3s,box-shadow .3s;display:flex;position:relative;overflow:hidden;box-shadow:0 12px 32px #0f172a0e}.agent-card:after{content:"";background:var(--agent-accent-soft);pointer-events:none;border-radius:50%;width:150px;height:150px;position:absolute;bottom:-88px;right:-72px}.agent-card:hover{border-color:color-mix(in srgb, var(--agent-accent) 35%, white);box-shadow:0 18px 40px color-mix(in srgb, var(--agent-accent) 12%, transparent);transform:translateY(-5px)}.agent-card--cyan{--agent-accent:#0891b2;--agent-accent-soft:#0891b21a}.agent-card--violet{--agent-accent:#7c3aed;--agent-accent-soft:#7c3aed1a}.agent-card--amber{--agent-accent:#d97706;--agent-accent-soft:#d977061c}.agent-card-top{z-index:1;justify-content:space-between;align-items:center;gap:12px;margin-bottom:22px;display:flex;position:relative}.agent-card-icon{width:44px;height:44px;color:var(--agent-accent);background:var(--agent-accent-soft);border-radius:13px;justify-content:center;align-items:center;display:inline-flex}.agent-card-icon svg{width:24px;height:24px}.agent-card-content{z-index:1;position:relative}.agent-card-content h3{color:#1e293b;letter-spacing:.03em;margin-bottom:12px;font-size:22px;font-weight:700}.agent-card-content p{color:#64748b;font-size:15px;line-height:1.7}.agent-tag{color:var(--agent-accent);background:var(--agent-accent-soft);white-space:nowrap;border-radius:20px;margin:0;padding:4px 12px;font-size:12px;font-weight:500;display:inline-block}.agent-card-highlights{z-index:1;flex-wrap:wrap;gap:8px;margin:auto 0 0;padding:0;list-style:none;display:flex;position:relative}.agent-card-highlights li{border:1px solid color-mix(in srgb, var(--agent-accent) 18%, white);color:color-mix(in srgb, var(--agent-accent) 86%, #1e293b);background:#ffffffb8;border-radius:999px;padding:5px 9px;font-size:12px;line-height:1}.more-section{background:linear-gradient(#fff 0%,#f8fafc 100%);max-width:none;padding:100px max(24px,5vw) 80px}.more-section .section-header,.more-section .capability-grid,.more-section .cta-area{max-width:1200px;margin-left:auto;margin-right:auto}.capability-grid{grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:56px;display:grid}.capability-card{border-radius:var(--lp-radius);box-shadow:var(--lp-shadow-sm);background:#fff;border:1px solid #3b82f614;align-items:flex-start;gap:16px;padding:28px 32px;transition:transform .3s,box-shadow .3s,border-color .3s;display:flex}.capability-card:hover{box-shadow:var(--lp-shadow-md);border-color:#3b82f633;transform:translateY(-4px)}.capability-icon{background:linear-gradient(135deg,#eff6ff 0%,#e0f2fe 100%);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:20px;display:flex}.capability-text h3{color:#1e293b;margin-bottom:6px;font-size:16px;font-weight:700}.capability-text p{color:#64748b;font-size:14px;line-height:1.6}.cta-area{text-align:center;padding:48px 0 16px}.cta-btn{color:#fff;min-width:220px;height:54px;font-size:17px;font-family:var(--font);letter-spacing:.06em;cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;background:linear-gradient(135deg,#2563eb 0%,#3b82f6 50%,#0ea5e9 100%);border:none;border-radius:999px;outline:none;justify-content:center;align-items:center;padding:0 36px;font-weight:700;transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1);display:inline-flex;box-shadow:0 8px 28px #2563eb4d}.cta-btn:hover{transform:translateY(-3px);box-shadow:0 16px 40px #2563eb66}.cta-btn:active{transform:scale(.97)}.reveal{opacity:0;transition:opacity .7s cubic-bezier(.4,0,.2,1),transform .7s cubic-bezier(.4,0,.2,1);transform:translateY(36px)}.reveal.is-visible{opacity:1;transform:translateY(0)}.reveal:first-child{transition-delay:0s}.reveal:nth-child(2){transition-delay:80ms}.reveal:nth-child(3){transition-delay:.16s}.reveal:nth-child(4){transition-delay:.24s}.reveal:nth-child(5){transition-delay:.32s}.reveal:nth-child(6){transition-delay:.4s}.register-page{background:linear-gradient(135deg,#eff6ff 0%,#f8fafc 50%,#f1f5f9 100%);justify-content:center;align-items:flex-start;min-height:100vh;padding:32px 24px;display:flex}.register-container{background:var(--white);border-radius:12px;width:720px;max-width:100%;padding:40px;box-shadow:0 4px 24px #00000014}.register-header{text-align:center;margin-bottom:32px}.register-header h1{color:var(--text);margin-bottom:8px;font-size:1.5rem}.register-header p{color:var(--text-secondary);font-size:.9rem}.register-form{flex-direction:column;gap:16px;display:flex}.form-actions{justify-content:center;gap:12px;margin-top:8px;display:flex}.form-actions .btn-primary{min-width:160px}.landing-footer{text-align:center;color:#94a3b8;letter-spacing:.04em;border-top:1px solid #f1f5f9;padding:32px 24px 40px;font-size:13px}.nav-link:focus-visible,.auth-entry-btn:focus-visible,.identity-option:focus-visible,.login-btn:focus-visible,.register-form-inline .btn:focus-visible,.demo-tag:focus-visible,.cta-btn:focus-visible{outline-offset:3px;outline:3px solid #2563eb6b}@media (width<=1024px){.hero-content{padding-right:43vw}.scenario-grid{grid-template-columns:repeat(2,1fr)}.agents-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=840px){.site-navbar{height:60px;padding:0 20px}.site-logo{height:32px}.site-brand{gap:8px}.site-brand .brand-cn{font-size:15px}.site-brand .brand-en{letter-spacing:.1em;font-size:10px}.site-nav{gap:2px}.nav-link{padding:6px 10px;font-size:12px}.hero-section{padding:80px 16px 40px}.hero-project-visual{opacity:.5;height:45vh;inset:60px 0 auto}.knowledge-visual{width:min(88vw,500px);top:45%;right:50%;transform:translate(50%,-50%)scale(.76)}.knowledge-panel,.knowledge-chip--trace,.knowledge-chip--collab{display:none}.knowledge-core{width:148px;height:148px}.hero-content{align-items:center;width:min(100%,620px);padding-right:0}.login-hero-area{text-align:center;align-items:center}.hero-eyebrow{font-size:11px}.main-title-fixed-box{justify-content:center;height:80px}.login-main-title{letter-spacing:.03em;text-align:center;justify-content:center;height:80px;font-size:clamp(34px,10vw,48px)}.title-cursor{font-size:clamp(26px,8vw,38px)}.login-subtitle{padding:0 8px;font-size:13px}.login-brand{font-size:12px}.auth-entry-area{justify-content:center;gap:16px;margin-top:36px}.auth-entry-btn{min-width:120px;height:46px;padding:0 24px;font-size:16px}.auth-panel{width:88vw;margin-top:24px;margin-left:auto;margin-right:auto;padding:18px}.login-form-area{width:88vw;margin-top:24px}.input-row{flex-direction:column;gap:16px}.input-underline input{height:40px;padding:10px 4px;font-size:.92rem}.login-btn{letter-spacing:4px;width:220px;padding:12px 0;font-size:.95rem}.identity-capsule{padding:4px}.identity-option{padding:9px 16px;font-size:.85rem}.demo-tags{flex-direction:column;align-items:center}.register-form-inline .form-row{grid-template-columns:1fr;gap:12px}.scroll-hint{bottom:24px}.scroll-hint-text{font-size:11px}.section-block{padding:64px 20px}.section-header{margin-bottom:36px}.section-title{font-size:26px}.section-subtitle{font-size:14px}.scenario-grid{grid-template-columns:1fr;gap:16px}.scenario-media{height:auto}.scenario-content{padding:16px 20px 20px}.agents-list{grid-template-columns:1fr;gap:14px}.agent-card{min-height:0;padding:22px}.agent-card-content h3{font-size:19px}.capability-grid{grid-template-columns:1fr;gap:12px}.capability-card{padding:20px 24px}.more-section{padding:64px 20px 48px}.cta-btn{min-width:200px;height:48px;font-size:15px}.hero-glow--tl{width:400px;height:400px}.hero-glow--br{width:360px;height:360px}.hero-glow--center{width:320px;height:320px}.hero-glow--far{width:500px;height:260px}.hero-glow--mid-left,.hero-glow--mid-right{display:none}.hero-depth-floor{width:180%;height:40%}.light-beam{opacity:.25}.geo-ring--1,.geo-square--2,.geo-hex--1{display:none}.geo-ring--2{width:50px;height:50px}.geo-diamond--1{width:22px;height:22px}}@media (width<=380px){.hero-section{padding:72px 12px 32px}.main-title-fixed-box{height:64px}.login-main-title{letter-spacing:.02em;height:64px;font-size:clamp(26px,12vw,34px)}.title-cursor{font-size:clamp(20px,10vw,26px)}.identity-option{padding:7px 12px;font-size:.8rem}.auth-entry-area{gap:12px;margin-top:28px}.auth-entry-btn{min-width:110px;height:42px;padding:0 18px;font-size:15px}.login-form-area,.auth-panel{margin-top:20px}.login-btn{width:200px}.nav-link{padding:6px 8px;font-size:11px}.site-logo{height:28px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--stu-primary:#2563eb;--stu-primary-hover:#1d4ed8;--stu-dark:#0b1f4d;--stu-secondary:#3b82f6;--stu-accent:#22d3ee;--stu-accent-purple:#7c3aed;--stu-accent-green:#14b8a6;--stu-accent-orange:#f59e0b;--stu-page-bg:#f0f4fa;--stu-surface:#fff;--stu-surface-hover:#f8fafc;--stu-surface-soft:#f4f7fb;--stu-text:#0f172a;--stu-text-secondary:#475569;--stu-text-muted:#94a3b8;--stu-text-inverse:#fff;--stu-border:#e2e8f0;--stu-border-light:#f1f5f9;--stu-border-active:#93c5fd;--stu-shadow-xs:0 1px 2px #0000000a;--stu-shadow:0 4px 16px #0000000f;--stu-shadow-md:0 8px 24px #00000014;--stu-shadow-lg:0 16px 48px #0000001a;--stu-radius-sm:10px;--stu-radius:16px;--stu-radius-lg:20px;--stu-sidebar-expanded:250px;--stu-sidebar-collapsed:80px;--stu-mobile-nav-height:68px;--stu-mobile-nav-edge:12px;--stu-success:#10b981;--stu-success-bg:#ecfdf5;--stu-warning:#f59e0b;--stu-warning-bg:#fffbeb;--stu-error:#ef4444;--stu-error-bg:#fef2f2;--stu-info:#3b82f6;--stu-info-bg:#eff6ff;--stu-easing:cubic-bezier(.4, 0, .2, 1);--stu-duration-normal:.22s}.student-dashboard-wrapper{background:var(--stu-page-bg);min-width:0;max-width:100%;min-height:100vh;position:relative;overflow-x:hidden}.student-dashboard-wrapper:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(at 70% 30%,#2563eb0f 0%,#0000 60%),radial-gradient(at 30% 60%,#7c3aed0a 0%,#0000 50%);width:55%;height:70%;position:fixed;top:-15%;right:-8%}.student-sidebar{width:var(--stu-sidebar-expanded);z-index:400;-webkit-backdrop-filter:blur(28px)saturate(140%);-webkit-user-select:none;user-select:none;background:linear-gradient(#0b1f4db8,#132e5b8f);border:1px solid #ffffff24;border-radius:24px;flex-direction:column;transition:width .1s cubic-bezier(.4,0,.2,1),background .3s,box-shadow .3s;display:flex;position:fixed;top:20px;bottom:20px;left:20px;overflow:visible;box-shadow:0 20px 50px #0b1f4d33,inset 0 0 0 1px #ffffff0f,0 0 32px #2563eb14}.student-sidebar:after{content:"";filter:blur(16px);pointer-events:none;z-index:-1;opacity:.72;background:linear-gradient(#22d3ee1a,#2563eb0f),#ffffff08;border-radius:36px;transition:opacity .1s,box-shadow .1s;position:absolute;inset:-16px;box-shadow:0 0 38px #22d3ee1a,0 0 22px #2563eb14}.student-sidebar.collapsed{width:var(--stu-sidebar-collapsed);border-radius:24px}.student-sidebar.collapsed:after{opacity:.45;box-shadow:0 0 22px #22d3ee0f,0 0 14px #2563eb0a}.sidebar-brand{border-bottom:1px solid #ffffff1a;flex-shrink:0;align-items:center;gap:12px;padding:22px 20px 16px;display:flex;position:relative}.sidebar-brand-mark{background:linear-gradient(135deg,#2563eb59,#7c3aed40);border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;transition:all .1s;display:flex;box-shadow:0 0 16px #2563eb40}.sidebar-brand-mark img{object-fit:contain;border-radius:10px;width:36px;height:36px;display:block}.student-sidebar.collapsed .sidebar-brand-mark{width:40px;height:40px}.student-sidebar.collapsed .sidebar-brand-mark img{width:34px;height:34px}.student-sidebar.collapsed .sidebar-brand{justify-content:center;gap:0;padding-left:0;padding-right:0}.sidebar-brand-text{white-space:nowrap;opacity:1;flex-direction:column;align-items:flex-start;line-height:1.2;transition:opacity .2s,transform .2s;display:flex;overflow:hidden}.student-sidebar.collapsed .sidebar-brand-text{opacity:0;pointer-events:none;width:0;overflow:hidden;transform:translate(-8px)}.sidebar-brand-cn{color:#fff;letter-spacing:.04em;font-size:16px;font-weight:700}.sidebar-brand-en{letter-spacing:.14em;color:#22d3eecc;font-size:10px;font-weight:500}.sidebar-menu-wrap{flex-direction:column;flex:1;gap:2px;padding:12px 10px;display:flex;overflow:visible auto}.sidebar-menu-wrap::-webkit-scrollbar{width:3px}.sidebar-menu-wrap::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:3px}.sidebar-menu-item{border-radius:var(--stu-radius-sm);width:100%;color:inherit;cursor:pointer;font-family:var(--font);text-align:left;white-space:nowrap;background:0 0;border:0;align-items:center;gap:12px;padding:10px 14px;transition:background .2s,transform .2s,box-shadow .2s;display:flex;position:relative;overflow:visible}.sidebar-menu-item:hover{background:#ffffff14;transform:translate(2px)}.sidebar-menu-item.active{background:linear-gradient(90deg,#2563eb40,#2563eb1a);box-shadow:inset 0 0 0 1px #ffffff1a}.sidebar-menu-item.active:before{content:"";background:linear-gradient(180deg, var(--stu-accent), var(--stu-primary));border-radius:3px;width:3px;height:22px;position:absolute;top:50%;left:6px;transform:translateY(-50%);box-shadow:0 0 8px #22d3ee59}.sidebar-menu-icon{background:#ffffff0d;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:36px;min-width:36px;height:36px;transition:background .2s,transform .2s;display:flex}.sidebar-menu-icon svg{color:#ffffffd1;stroke:currentColor;width:20px;height:20px;display:block}.sidebar-menu-item.active .sidebar-menu-icon{background:#2563eb40;box-shadow:inset 0 0 0 1px #ffffff1a}.sidebar-menu-item.active .sidebar-menu-icon svg{color:#fff}.sidebar-menu-item:hover .sidebar-menu-icon{background:#ffffff1a;transform:scale(1.05)}.sidebar-menu-text{color:#ffffffd1;opacity:1;font-size:14px;font-weight:500;transition:opacity .2s,transform .2s}.sidebar-menu-item.active .sidebar-menu-text{color:#fff;font-weight:600}.student-sidebar.collapsed .sidebar-menu-text{opacity:0;pointer-events:none;width:0;overflow:hidden;transform:translate(-8px)}.student-sidebar.collapsed .sidebar-menu-item{justify-content:center;gap:0;padding:10px 0}.student-sidebar.collapsed .sidebar-menu-icon{border-radius:14px;width:40px;min-width:40px;height:40px}.student-sidebar.collapsed .sidebar-menu-icon svg{width:20px;height:20px}.sidebar-menu-item .menu-tooltip{color:#fff;white-space:nowrap;pointer-events:none;opacity:0;z-index:1100;background:#0b1f4df0;border-radius:8px;padding:6px 14px;font-size:13px;font-weight:500;transition:opacity .2s;position:absolute;top:50%;left:calc(100% + 14px);transform:translateY(-50%);box-shadow:0 6px 20px #0b1f4d4d}.sidebar-menu-item .menu-tooltip:before{content:"";border-top:6px solid #0000;border-bottom:6px solid #0000;border-right:6px solid #0b1f4df0;width:0;height:0;position:absolute;top:50%;left:-6px;transform:translateY(-50%)}.student-sidebar.collapsed .sidebar-menu-item:hover .menu-tooltip{opacity:1}.sidebar-menu-arrow{color:#ffffff80;flex-shrink:0;margin-left:auto;padding:0 6px;font-size:24px;font-weight:700;transition:transform .15s}.sidebar-menu-arrow.expanded{color:#fffc;transform:rotate(90deg)}.student-sidebar.collapsed .sidebar-menu-arrow{display:none}.sidebar-menu-arrow svg,.sub-nav-arrow svg{width:15px;height:15px;display:block}.sub-nav-item{justify-content:space-between;align-items:center;gap:12px;display:flex}.sub-nav-arrow{opacity:.5;display:inline-flex}.sub-nav-panel{left:calc(var(--stu-sidebar-collapsed) + 30px);-webkit-backdrop-filter:blur(22px)saturate(140%);z-index:410;background:#0b1f4deb;border:1px solid #ffffff1f;border-radius:14px;flex-direction:column;gap:2px;min-width:160px;max-width:200px;padding:6px;display:none;position:fixed;top:70px;box-shadow:0 12px 40px #0b1f4d52}.sub-nav-panel.visible{display:flex}.student-sidebar:not(.collapsed)~.sub-nav-panel{left:calc(var(--stu-sidebar-expanded) + 12px)}.sub-nav-item{cursor:pointer;color:#ffffffbf;white-space:nowrap;border-radius:10px;align-items:center;gap:10px;padding:8px 14px;font-size:13px;transition:background .15s,color .15s;display:flex}.sub-nav-item:hover{color:#fff;background:#2563eb2e}.sub-nav-item.active{color:#fff;background:#2563eb40;font-weight:600}.sidebar-footer{border-top:1px solid #ffffff1a;flex-direction:column;flex-shrink:0;gap:8px;padding:12px 16px 18px;display:flex}.sidebar-pin-btn{color:#ffffffa6;cursor:pointer;width:100%;height:42px;font-size:13px;font-family:var(--font);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;gap:8px;font-weight:500;transition:background .2s,border-color .2s,color .2s,width .1s cubic-bezier(.4,0,.2,1),height .1s cubic-bezier(.4,0,.2,1);display:flex}.sidebar-pin-btn:hover{color:#fff;background:#ffffff1f;border-color:#fff3}.sidebar-pin-btn.pinned{color:#fff;background:#2563eb4d;border-color:#2563eb80;box-shadow:0 0 18px #2563eb33,inset 0 0 0 1px #ffffff0f}.pin-icon-svg{flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;transition:width .2s,height .2s;display:flex}.pin-icon-svg svg{color:currentColor;stroke:currentColor;width:16px;height:16px;display:block}.pin-text{white-space:nowrap;opacity:1;transition:opacity .2s,transform .2s}.student-sidebar.collapsed .sidebar-pin-btn{border-radius:13px;gap:0;width:48px;height:38px;margin:0 auto;font-size:0}.student-sidebar.collapsed .pin-text{opacity:0;pointer-events:none;position:absolute;transform:translate(-8px)}.student-sidebar.collapsed .pin-icon-svg{width:22px;height:22px}.student-sidebar.collapsed .pin-icon-svg svg{width:16px;height:16px}.sidebar-user-info{opacity:1;cursor:pointer;border-radius:14px;align-items:center;gap:10px;margin:-6px;padding:6px;transition:opacity .2s,transform .2s,background .2s;display:flex}.sidebar-user-info:hover{background:#ffffff14}.student-sidebar.collapsed .sidebar-user-info{opacity:0;pointer-events:none;transform:translate(-8px)}.sidebar-user-avatar{color:#ffffffd9;background:#2563eb40;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:flex;overflow:hidden}.sidebar-user-avatar svg{width:20px;height:20px;display:block}.sidebar-user-avatar img{object-fit:cover;border-radius:inherit;width:100%;height:100%;display:block}.sidebar-user-detail{flex-direction:column;display:flex;overflow:hidden}.sidebar-user-name{color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.sidebar-user-role{color:#22d3eeb3;font-size:11px}.sidebar-logout-btn{width:100%;font-size:13px;font-family:var(--font);color:#ffffff7a;cursor:pointer;white-space:nowrap;background:#ffffff08;border:1px solid #ffffff14;border-radius:12px;justify-content:center;align-items:center;gap:6px;padding:10px 0;font-weight:500;transition:background .2s,color .2s,border-color .2s,width .1s cubic-bezier(.4,0,.2,1);display:flex}.logout-icon-svg{flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;display:flex}.logout-icon-svg svg{color:currentColor;stroke:currentColor;width:16px;height:16px;display:block}.logout-text{opacity:1;transition:opacity .2s,transform .2s}.sidebar-logout-btn:hover{color:#fca5a5;background:#ef444426;border-color:#ef444447}.student-sidebar.collapsed .sidebar-logout-btn{border-radius:12px;gap:0;width:48px;height:36px;margin:0 auto;padding:0;font-size:0}.student-sidebar.collapsed .logout-text{opacity:0;pointer-events:none;position:absolute;transform:translate(-8px)}.student-sidebar.collapsed:hover{width:var(--stu-sidebar-expanded)}.student-sidebar.collapsed:hover:after{opacity:.72;box-shadow:0 0 38px #22d3ee1a,0 0 22px #2563eb14}.student-sidebar.collapsed:hover .sidebar-brand{justify-content:flex-start;gap:12px;padding:22px 20px 16px}.student-sidebar.collapsed:hover .sidebar-brand-mark{width:42px;height:42px}.student-sidebar.collapsed:hover .sidebar-brand-mark img{width:36px;height:36px}.student-sidebar.collapsed:hover .sidebar-brand-text,.student-sidebar.collapsed:hover .sidebar-menu-text,.student-sidebar.collapsed:hover .pin-text,.student-sidebar.collapsed:hover .logout-text{opacity:1;pointer-events:auto;width:auto;position:static;overflow:visible;transform:none}.student-sidebar.collapsed:hover .sidebar-menu-item{justify-content:flex-start;gap:12px;padding:10px 14px}.student-sidebar.collapsed:hover .sidebar-menu-icon{border-radius:12px;width:36px;min-width:36px;height:36px}.student-sidebar.collapsed:hover .sidebar-menu-item:hover .menu-tooltip{opacity:0}.student-sidebar.collapsed:hover .sidebar-pin-btn{border-radius:12px;gap:8px;width:100%;height:42px;margin:0;font-size:13px}.student-sidebar.collapsed:hover .pin-icon-svg{width:20px;height:20px}.student-sidebar.collapsed:hover .sidebar-user-info{opacity:1;pointer-events:auto;transform:none}.student-sidebar.collapsed:hover .sidebar-logout-btn{border-radius:12px;gap:6px;width:100%;height:auto;margin:0;padding:10px 0;font-size:13px}.student-main{box-sizing:border-box;z-index:1;width:100%;min-width:0;max-width:100%;min-height:100vh;padding:28px 40px 40px 128px;transition:none;position:relative}.student-dashboard-wrapper.sidebar-expanded .student-main,.student-dashboard-wrapper.sidebar-collapsed .student-main{padding-left:128px}.dashboard-content{flex-direction:column;gap:24px;width:100%;min-width:0;display:flex}.discimind-global-overlays{pointer-events:none;width:0;height:0;position:static;overflow:visible}.discimind-global-overlays>*{pointer-events:auto}body:has(.lws-page.is-pdf-open) .ai-float-widget{border-radius:15px;width:52px;min-height:52px;padding:4px;right:18px!important}body:has(.lws-page.is-pdf-open) .ai-float-grip{display:none}@media (width<=560px){body:has(.lws-page.is-pdf-open) .ai-float-widget{right:12px!important}}.ai-float-widget{z-index:var(--z-global-assistant,96);-webkit-backdrop-filter:blur(18px)saturate(145%);cursor:grab;-webkit-user-select:none;user-select:none;background:linear-gradient(135deg,#fffffff0,#ecf8fedb),linear-gradient(135deg,#14b8a626,#2563eb1a);border:1px solid #ffffff73;border-radius:18px;justify-content:center;align-items:center;width:72px;min-height:64px;padding:8px;transition:transform .25s,box-shadow .22s,opacity .22s,top .18s,right .18s;display:flex;position:fixed;box-shadow:0 16px 38px #0b1f4d29,inset 0 0 0 1px #22d3ee1f}.ai-float-widget:hover{box-shadow:0 20px 48px #0b1f4d38,inset 0 0 0 1px #14b8a638}.ai-float-widget.is-dragging{cursor:grabbing;transition:none}.ai-float-widget.is-snapping{transition:top .18s,right .18s,transform .18s,opacity .18s}.ai-float-widget.is-learning-context{border-color:#14b8a680}.ai-float-drag-active,.ai-float-drag-active *{-webkit-user-select:none!important;user-select:none!important}.ai-float-main{cursor:grab;touch-action:none;background:0 0;border:0;flex:none;justify-content:center;align-items:center;width:48px;height:48px;padding:0;display:flex}.ai-float-main:focus-visible,.ai-float-hide:focus-visible,.ai-float-dock:focus-visible{outline-offset:3px;outline:2px solid #2563eb80}.ai-float-orb{color:#fff;background:linear-gradient(135deg,#2563eb,#14b8a6);border-radius:14px;flex:0 0 44px;justify-content:center;align-items:center;width:44px;height:44px;display:flex;box-shadow:0 10px 24px #2563eb47}.ai-float-orb svg{width:22px;height:22px}.ai-float-hide{color:#2563eb;cursor:pointer;background:#fffffff5;border:1px solid #2563eb40;border-radius:999px;width:24px;height:24px;font-size:18px;line-height:1;position:absolute;top:-9px;right:-8px;box-shadow:0 6px 16px #0b1f4d24}.ai-float-dock{color:#fff;cursor:pointer;background:linear-gradient(135deg,#2563eb,#14b8a6);border:0;border-radius:8px 0 0 8px;width:14px;font-size:13px;font-weight:800;display:none;position:absolute;top:6px;bottom:6px;left:0;box-shadow:0 8px 22px #2563eb42}.ai-float-dock:before{content:"‹";font-size:15px;line-height:1}.ai-float-widget.is-docked{opacity:.76;box-shadow:0 5px 14px #0b1f4d1f;right:0!important}body:has(.lws-page.is-pdf-open) .ai-float-widget.is-docked{right:0!important}.ai-float-widget[data-side=right].is-docked{transform:translate(calc(100% - 14px))}.ai-float-widget.is-docked .ai-float-main,.ai-float-widget.is-docked .ai-float-hide,.ai-float-widget.is-docked .ai-float-grip{opacity:0;pointer-events:none}.ai-float-widget.is-docked .ai-float-dock{pointer-events:auto;justify-content:center;align-items:center;display:flex!important}.ai-float-widget[data-side=right].is-docked .ai-float-dock{left:0}.ai-mini-panel{-webkit-backdrop-filter:blur(18px)saturate(145%);cursor:default;-webkit-user-select:text;user-select:text;background:#fffffff7;border:1px solid #2563eb26;border-radius:16px;flex-direction:column;width:min(390px,100vw - 32px);max-height:min(600px,100vh - 80px);display:flex;position:absolute;bottom:calc(100% + 12px);right:calc(100% + 12px);overflow:hidden;box-shadow:0 22px 56px #0b1f4d33}.ai-float-widget.panel-below .ai-mini-panel{top:calc(100% + 12px);bottom:auto}.ai-float-widget.is-docked .ai-mini-panel,.ai-mini-panel[hidden]{display:none}.ai-mini-head{background:linear-gradient(135deg,#2563eb0f,#14b8a60f);border-bottom:1px solid #2563eb14;justify-content:space-between;align-items:flex-start;gap:14px;padding:14px 16px 12px;display:flex}.ai-mini-head b{color:#0b1f4d;font-size:14px;line-height:1.25;display:block}.ai-mini-head span{color:#0b1f4d94;margin-top:3px;font-size:11px;display:block}.ai-mini-head-actions{align-items:center;gap:6px;display:flex}.ai-mini-maximize,.ai-mini-close{color:#2563eb;cursor:pointer;background:#fff;border:1px solid #2563eb1f;border-radius:10px;width:28px;height:28px;font-size:18px;line-height:1}.ai-mini-maximize{font-size:15px}.ai-mini-maximize:focus-visible,.ai-mini-close:focus-visible,.ai-mini-form textarea:focus,.ai-mini-form button:focus-visible,.ai-mini-suggestions button:focus-visible{outline-offset:2px;outline:2px solid #2563eb4d}.ai-mini-messages{flex-direction:column;flex:1;gap:10px;min-height:220px;max-height:380px;padding:14px 16px;display:flex;overflow-y:auto}.ai-mini-empty{color:#0b1f4d8c;text-align:center;background:#2563eb0a;border:1px dashed #2563eb1f;border-radius:12px;padding:22px 16px;font-size:13px;line-height:1.6}.ai-mini-message{color:#0f172a;white-space:normal;word-break:break-word;background:#2563eb0f;border-radius:14px;max-width:88%;padding:10px 12px;font-size:13px;line-height:1.55}.ai-mini-message .message-markdown{color:inherit;font-size:inherit;line-height:1.55}.ai-mini-message .message-markdown p,.ai-mini-message .message-markdown ul,.ai-mini-message .message-markdown ol,.ai-mini-message .message-markdown blockquote{margin-top:0}.ai-mini-message .message-markdown p:last-child,.ai-mini-message .message-markdown ul:last-child,.ai-mini-message .message-markdown ol:last-child{margin-bottom:0}.ai-mini-message .message-markdown .katex-display{overflow:auto hidden}.ai-mini-message.user{color:#fff;background:linear-gradient(135deg,#2563eb,#3b82f6);align-self:flex-end}.ai-mini-message.user .message-markdown,.ai-mini-message.user .message-markdown h1,.ai-mini-message.user .message-markdown h2,.ai-mini-message.user .message-markdown h3,.ai-mini-message.user .message-markdown h4,.ai-mini-message.user .message-markdown h5,.ai-mini-message.user .message-markdown h6,.ai-mini-message.user .message-markdown code,.ai-mini-message.user .message-markdown .katex{color:#fff}.ai-mini-message.assistant{align-self:flex-start}.ai-mini-actions{gap:8px;margin-top:10px;display:flex}.ai-mini-actions button{color:#fff;min-height:30px;font-family:var(--font);cursor:pointer;background:linear-gradient(135deg,#2563eb,#14b8a6);border:0;border-radius:999px;padding:0 12px;font-size:12px;font-weight:700}.ai-mini-thinking{color:#0b1f4d8c}.ai-mini-suggestions{gap:8px;padding:0 16px 12px;display:flex;overflow-x:auto}.ai-mini-suggestions button{color:#2563eb;min-height:30px;font-family:var(--font);cursor:pointer;background:#2563eb0a;border:1px solid #2563eb1f;border-radius:999px;flex:none;padding:0 10px;font-size:12px}.ai-mini-form{background:#f0f4fad9;border-top:1px solid #2563eb14;grid-template-columns:minmax(0,1fr) 58px;gap:8px;padding:12px;display:grid}.ai-mini-form textarea{resize:none;color:#0f172a;width:100%;min-height:42px;max-height:112px;font-family:var(--font);background:#fff;border:1px solid #2563eb24;border-radius:12px;padding:10px 11px;font-size:13px;line-height:1.45}.ai-mini-form button{color:#fff;height:42px;font-family:var(--font);cursor:pointer;background:linear-gradient(135deg,#2563eb,#14b8a6);border:0;border-radius:12px;align-self:end;font-size:13px;font-weight:700}.ai-mini-form button:disabled{cursor:not-allowed;opacity:.48}.ai-mini-attachments{grid-column:1/-1;align-items:center;gap:6px;min-width:0;display:flex}.ai-mini-attachments>label,.ai-mini-attachments>button{color:#2563eb;cursor:pointer;background:#fff;border:1px solid #2563eb29;border-radius:9px;flex:0 0 30px;place-items:center;width:30px;height:30px;display:grid}.ai-mini-attachments>button.is-recording{color:#fff;background:#dc2626;animation:1s infinite ai-voice-pulse}.ai-mini-attachments>div{gap:5px;min-width:0;display:flex;overflow-x:auto}.ai-mini-attachments span{color:#315f91;white-space:nowrap;background:#e8f0ff;border-radius:999px;flex:none;align-items:center;gap:4px;max-width:150px;padding:4px 7px;font-size:10px;display:flex}.ai-mini-attachments span>button{color:inherit;cursor:pointer;background:0 0;border:0;padding:0}.ai-mini-form button.is-stop{background:#dc2626}@keyframes ai-voice-pulse{50%{opacity:.65}}@media (width<=600px){.discimind-global-overlays:has(.ai-mini-panel:not([hidden])):before{content:"";pointer-events:auto;background:#0f172a42;position:fixed;inset:0}.ai-mini-panel{inset:max(12px, env(safe-area-inset-top)) 12px max(76px, calc(env(safe-area-inset-bottom) + 68px));border-radius:14px;width:auto;max-height:none;position:fixed}.ai-float-widget.panel-below .ai-mini-panel{top:max(12px, env(safe-area-inset-top));bottom:max(76px, calc(env(safe-area-inset-bottom) + 68px))}.ai-mini-messages{max-height:none}}.welcome-banner{border-radius:var(--stu-radius-lg);color:#fff;background:linear-gradient(135deg,#0b1f4d 0%,#132e5b 30%,#2563eb 70%,#3b82f6 100%);justify-content:space-between;align-items:center;padding:28px 32px;display:flex;position:relative;overflow:hidden;box-shadow:0 10px 32px #0b1f4d2e}.welcome-banner:before{content:"";opacity:.7;pointer-events:none;background:radial-gradient(circle at 82% 20%,#22d3ee2e 0%,#0000 45%),radial-gradient(circle at 15% 80%,#7c3aed1a 0%,#0000 40%),repeating-linear-gradient(135deg,#ffffff0a 0 1px,#0000 1px 22px);position:absolute;inset:0}.welcome-banner.teacher-banner{background:linear-gradient(135deg,#0f172a 0%,#1e293b 50%,#334155 100%)}.welcome-banner.admin-banner{background:linear-gradient(135deg,#2e1065 0%,#4c1d95 50%,#6d28d9 100%)}.welcome-text{z-index:1;position:relative}.welcome-text h2{color:#fff;margin-bottom:6px;font-size:1.35rem;font-weight:700}.welcome-text p{color:#ffffffd9;font-size:.9rem}.welcome-illustration{opacity:.9;z-index:1;font-size:3rem;position:relative}.stats-grid{grid-template-columns:repeat(auto-fill,minmax(175px,1fr));gap:16px;display:grid}.stat-card{border:1px solid var(--stu-border);border-radius:var(--stu-radius);box-shadow:var(--stu-shadow);-webkit-backdrop-filter:blur(10px);text-align:center;transition:transform .25s var(--stu-easing), box-shadow .25s var(--stu-easing), border-color .25s var(--stu-easing);background:#ffffffe0;padding:22px 20px}.stat-card:hover{box-shadow:var(--stu-shadow-md);border-color:var(--stu-border-active);transform:translateY(-3px)}.stat-value{color:var(--stu-primary);margin-bottom:6px;font-size:1.75rem;font-weight:700}.stat-label{color:var(--stu-text-secondary);font-size:.85rem;font-weight:500}.content-columns{grid-template-columns:1fr 1fr;gap:24px;display:grid}.content-columns-3{grid-template-columns:1fr 1fr 1fr;gap:24px;display:grid}.column-stack{flex-direction:column;gap:24px;display:flex}.card{border:1px solid var(--stu-border);border-radius:var(--stu-radius);box-shadow:var(--stu-shadow);-webkit-backdrop-filter:blur(10px);transition:box-shadow .25s var(--stu-easing), border-color .25s var(--stu-easing);background:#ffffffe0;padding:24px}.card:hover{box-shadow:var(--stu-shadow-md);border-color:var(--stu-border-active)}.card-title{color:var(--stu-dark);margin-bottom:18px;font-size:1.05rem;font-weight:700}.profile-list{flex-direction:column;gap:12px;display:flex}.profile-item{border-bottom:1px solid var(--stu-border);justify-content:space-between;align-items:center;padding:10px 0;display:flex}.profile-item:last-child{border-bottom:none}.profile-label{color:var(--stu-text-secondary);font-size:.9rem}.profile-value{color:var(--stu-text);font-size:.95rem;font-weight:600}.profile-value.high{color:var(--stu-primary)}.profile-value.muted{color:var(--stu-text-muted);font-weight:400}.learning-overview{flex-direction:column;gap:10px;display:flex}.overview-item{border-bottom:1px solid var(--stu-border);justify-content:space-between;align-items:center;padding:10px 0;display:flex}.overview-item:last-child{border-bottom:none}.overview-topic{color:var(--stu-text);font-size:.9rem}.overview-level{border-radius:12px;padding:3px 10px;font-size:.8rem;font-weight:500}.level-ok{color:#b45309;background:#fef3c7}.level-weak{color:#dc2626;background:#fee2e2}.course-list{flex-direction:column;gap:12px;display:flex}.course-item{background:var(--stu-surface-soft);border-radius:var(--stu-radius-sm);border-left:4px solid var(--stu-primary);padding:12px 16px}.course-name{color:var(--stu-text);margin-bottom:4px;font-size:.9rem;font-weight:600}.course-code{color:var(--stu-text-muted);margin-bottom:2px;font-size:.78rem}.course-desc{color:var(--stu-text-secondary);font-size:.8rem}.kp-list{flex-direction:column;gap:10px;display:flex}.kp-item{border-bottom:1px solid var(--stu-border);justify-content:space-between;align-items:center;padding:8px 0;display:flex}.kp-item:last-child{border-bottom:none}.kp-name{color:var(--stu-text);font-size:.9rem}.kp-score{color:#dc2626;background:#fee2e2;border-radius:12px;padding:2px 10px;font-size:.85rem;font-weight:600}.rec-list{flex-direction:column;gap:12px;display:flex}.rec-item{border-bottom:1px solid var(--stu-border);padding:10px 0}.rec-item:last-child{border-bottom:none}.rec-title{color:var(--stu-text);margin-bottom:4px;font-size:.9rem;font-weight:500}.rec-reason{color:var(--stu-text-muted);font-size:.8rem}.task-list{flex-direction:column;gap:10px;display:flex}.task-item{color:var(--stu-text);align-items:center;gap:10px;padding:8px 0;font-size:.9rem;display:flex}.task-dot{background:var(--stu-primary);border-radius:50%;flex-shrink:0;width:8px;height:8px}.task-dot.pending{background:var(--stu-accent-orange)}.task-deadline{color:var(--stu-text-muted);white-space:nowrap;flex-shrink:0;margin-left:auto;font-size:.78rem}.task-deadline.overdue{color:#dc2626;font-weight:500}.user-info-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;display:grid}.info-item{background:var(--stu-surface-soft);border-radius:var(--stu-radius-sm);flex-direction:column;gap:4px;padding:10px 14px;display:flex}.info-label{color:var(--stu-text-muted);font-size:.78rem}.info-value{color:var(--stu-text);font-size:.9rem;font-weight:500}.admin-links{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;display:grid}.admin-link-item{border:1px solid var(--stu-border);border-radius:var(--stu-radius-sm);cursor:pointer;background:#ffffffb3;align-items:center;gap:12px;padding:16px;transition:all .2s;display:flex}.admin-link-item:hover{border-color:var(--stu-border-active);background:var(--stu-surface-soft)}.admin-link-icon{font-size:1.5rem}.empty-hint{color:var(--stu-text-muted);text-align:center;padding:20px 0;font-size:.9rem}.error-state{text-align:center;border:1px solid var(--stu-border);border-radius:var(--stu-radius);box-shadow:var(--stu-shadow);background:#ffffffe0;padding:48px 24px}@media (width<=1024px){.student-sidebar{width:var(--stu-sidebar-collapsed);top:12px;bottom:12px;left:12px}.student-sidebar.expanded{width:var(--stu-sidebar-expanded)}.student-main{padding-left:110px;padding-right:20px}.student-dashboard-wrapper.sidebar-expanded .student-main,.student-dashboard-wrapper.sidebar-collapsed .student-main{padding-left:110px}.content-columns{grid-template-columns:1fr}}@media (width<=768px){.student-dashboard-wrapper{--stu-mobile-nav-height:68px;--stu-mobile-nav-edge:clamp(8px, 3vw, 14px)}.student-sidebar{left:var(--stu-mobile-nav-edge);right:var(--stu-mobile-nav-edge);top:auto;bottom:calc(10px + env(safe-area-inset-bottom));width:auto;max-width:calc(100vw - (var(--stu-mobile-nav-edge) * 2));height:var(--stu-mobile-nav-height);box-sizing:border-box;background:linear-gradient(#0b1f4db3,#132e5b85),#ffffff1a;border-radius:20px;flex-direction:row;align-items:center;padding:7px;overflow:hidden;box-shadow:0 12px 30px #0b1f4d38,inset 0 0 0 1px #ffffff14}.student-sidebar:after,.student-sidebar.collapsed:after,.student-sidebar.collapsed:hover:after{border-radius:inherit;filter:none;opacity:.14;box-shadow:none;inset:0}.student-sidebar .sidebar-brand,.student-sidebar .sidebar-footer,.student-sidebar .sidebar-pin-btn{display:none}.student-sidebar .sidebar-menu-wrap{grid-template-columns:repeat(var(--sidebar-menu-count), minmax(0, 1fr));flex:auto;justify-content:stretch;align-items:stretch;gap:4px;width:100%;min-width:0;height:100%;padding:0;display:grid;overflow:hidden}.student-sidebar .sidebar-menu-item{text-align:center;touch-action:manipulation;border-radius:15px;flex-direction:column;justify-content:center;align-items:center;gap:1px;width:100%;min-width:0;min-height:50px;padding:4px 2px;overflow:hidden;transform:none}.student-sidebar .sidebar-menu-item:hover{transform:none}.student-sidebar .sidebar-menu-item.active{background:#2563eb4d;box-shadow:inset 0 0 0 1px #ffffff1f}.student-sidebar .sidebar-menu-item.active:before{content:none}.student-sidebar .sidebar-menu-text,.student-sidebar.collapsed .sidebar-menu-text,.student-sidebar.expanded .sidebar-menu-text,.student-sidebar.collapsed:hover .sidebar-menu-text{text-overflow:ellipsis;white-space:nowrap;opacity:1;pointer-events:auto;flex:none;width:100%;min-width:0;max-width:100%;height:auto;min-height:1.15em;font-size:10px;line-height:1.15;display:block;position:static;overflow:hidden;transform:none}.student-sidebar .sidebar-menu-icon,.student-sidebar.collapsed .sidebar-menu-icon,.student-sidebar.expanded .sidebar-menu-icon,.student-sidebar.collapsed:hover .sidebar-menu-icon{background:#ffffff0f;border-radius:13px;flex:none;width:34px;min-width:0;height:30px}.student-sidebar .sidebar-menu-icon svg,.student-sidebar.collapsed .sidebar-menu-icon svg,.student-sidebar.expanded .sidebar-menu-icon svg,.student-sidebar.collapsed:hover .sidebar-menu-icon svg{width:20px;height:20px}.student-sidebar .sidebar-menu-item .menu-tooltip{display:none}.student-sidebar.collapsed,.student-sidebar.expanded,.student-sidebar.collapsed:hover{width:auto}.student-sidebar.collapsed:hover .sidebar-menu-item{justify-content:center;gap:1px;padding:4px 2px}.student-main{width:100%;min-width:0;max-width:100%;padding:16px 16px calc(var(--stu-mobile-nav-height) + 42px + env(safe-area-inset-bottom))}.student-dashboard-wrapper.sidebar-expanded .student-main,.student-dashboard-wrapper.sidebar-collapsed .student-main{padding:16px 16px calc(var(--stu-mobile-nav-height) + 42px + env(safe-area-inset-bottom))}.ai-float-widget{border-radius:16px;width:66px;min-height:58px}.ai-mini-panel{width:min(340px,100vw - 24px);max-height:min(500px,100vh - 120px)}.ai-mini-messages{max-height:260px}.ai-float-orb{border-radius:12px;flex-basis:38px;width:38px;height:38px}.ai-float-title{font-size:13px}.ai-float-subtitle{font-size:10px}.stats-grid{grid-template-columns:repeat(2,1fr);gap:10px}.stat-card{padding:16px 14px}.stat-value{font-size:1.35rem}.content-columns,.admin-links{grid-template-columns:1fr}.user-info-grid{grid-template-columns:1fr 1fr}.welcome-banner{text-align:center;flex-direction:column;gap:12px;padding:20px 24px}}@media (width<=380px){.student-dashboard-wrapper{--stu-mobile-nav-height:64px;--stu-mobile-nav-edge:8px}.student-sidebar{bottom:calc(8px + env(safe-area-inset-bottom));height:var(--stu-mobile-nav-height);border-radius:18px;padding:6px}.student-sidebar .sidebar-menu-item{border-radius:13px;min-height:48px;padding:3px 1px}.student-sidebar .sidebar-menu-text,.student-sidebar.collapsed .sidebar-menu-text,.student-sidebar.expanded .sidebar-menu-text,.student-sidebar.collapsed:hover .sidebar-menu-text{font-size:9px}.student-sidebar .sidebar-menu-icon,.student-sidebar.collapsed .sidebar-menu-icon,.student-sidebar.expanded .sidebar-menu-icon,.student-sidebar.collapsed:hover .sidebar-menu-icon{width:30px;height:28px}.student-sidebar .sidebar-menu-icon svg,.student-sidebar.collapsed .sidebar-menu-icon svg,.student-sidebar.expanded .sidebar-menu-icon svg,.student-sidebar.collapsed:hover .sidebar-menu-icon svg{width:18px;height:18px}.student-main,.student-dashboard-wrapper.sidebar-expanded .student-main,.student-dashboard-wrapper.sidebar-collapsed .student-main{padding:12px 12px calc(var(--stu-mobile-nav-height) + 34px + env(safe-area-inset-bottom))}}@media (prefers-reduced-motion:reduce){.student-sidebar,.student-main,.sidebar-menu-item,.sidebar-brand-text,.sidebar-menu-text,.sidebar-user-info,.stat-card,.card,.welcome-banner,.ai-float-widget{transition:none!important;animation:none!important}}:root{--page-bg:#f5f8fa;--card-bg:#fff;--text-main:#102a43;--text-sub:#627d98;--text-hint:#829ab1;--border-soft:#16425b1a;--border-medium:#16425b26;--shadow-card:0 4px 20px #16425b0f;--shadow-card-hover:0 12px 32px #16425b1a;--shadow-elevated:0 16px 48px #16425b1f;--radius-xl:24px;--radius-lg:18px;--radius-md:14px;--radius-sm:10px;--radius-xs:8px}.page-header{margin-bottom:28px}.page-header .page-title{color:var(--stu-dark);margin-bottom:6px;font-size:1.6rem;font-weight:700}.page-header .page-subtitle{color:var(--text-sub);font-size:.9rem;line-height:1.5}.page-header-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.btn-back{font-size:.85rem;font-family:var(--font);color:var(--stu-primary);cursor:pointer;background:#2f66900f;border:1px solid #2f669026;border-radius:999px;align-items:center;gap:6px;padding:8px 18px;font-weight:500;transition:all .25s;display:inline-flex}.btn-back:hover{background:#2f66901f;border-color:#2f66904d;transform:translate(-2px)}.loading-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:80px 24px;display:flex}.loading-spinner{border:3px solid #2f66901f;border-top-color:var(--stu-primary);border-radius:50%;width:44px;height:44px;margin-bottom:20px;animation:.8s linear infinite spin}.loading-text{color:var(--text-sub);font-size:.95rem}.empty-state{text-align:center;border-radius:var(--radius-xl);border:1px dashed var(--border-soft);background:#ffffff80;flex-direction:column;justify-content:center;align-items:center;padding:72px 24px;display:flex}.empty-icon{opacity:.8;margin-bottom:16px;font-size:3.5rem}.empty-title{color:var(--text-main);margin-bottom:8px;font-size:1.1rem;font-weight:600}.empty-desc{color:var(--text-hint);max-width:360px;font-size:.9rem;line-height:1.6}.error-state{text-align:center;border-radius:var(--radius-xl);border:1px solid var(--border-soft);background:#ffffffb3;flex-direction:column;justify-content:center;align-items:center;padding:64px 24px;display:flex}.error-icon{margin-bottom:14px;font-size:3rem}.error-message{color:var(--text-sub);margin-bottom:20px;font-size:1rem}.btn-retry{font-size:.9rem;font-family:var(--font);color:#fff;cursor:pointer;background:linear-gradient(135deg,#2f6690,#3a7ca5);border:none;border-radius:999px;padding:10px 28px;font-weight:600;transition:transform .25s,box-shadow .25s;box-shadow:0 6px 20px #2f669040}.btn-retry:hover{transform:translateY(-2px);box-shadow:0 10px 28px #2f669059}.dashboard-hero{border-radius:var(--radius-xl);color:#fff;background:linear-gradient(110deg,#16425bfa 0%,#2f6690f2 44%,#3a7ca5e0 72%,#4caf8457 100%),linear-gradient(26deg,#f0b85e38,#f0b85e00 38%);padding:36px 40px;position:relative;overflow:hidden;box-shadow:0 12px 40px #16425b2e}.dashboard-hero:before{content:"";opacity:.28;pointer-events:none;background:linear-gradient(90deg,#ffffff14,#fff0 28%),repeating-linear-gradient(135deg,#ffffff14 0 1px,#0000 1px 18px);position:absolute;inset:0}.dashboard-hero:after{content:"";pointer-events:none;background:linear-gradient(90deg,#fff0,#ffffff29);width:34%;position:absolute;top:0;bottom:0;right:0}.dashboard-hero .hero-content{z-index:1;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;display:flex;position:relative}.dashboard-hero .hero-text h2{color:#fff;margin-bottom:8px;font-size:1.7rem;font-weight:700}.dashboard-hero .hero-text p{color:#ffffffd9;max-width:680px;font-size:.95rem;line-height:1.6}.hero-student-meta{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.hero-student-meta span{color:#ffffffe0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff1f;border:1px solid #ffffff2e;border-radius:999px;align-items:center;gap:8px;padding:7px 12px;font-size:.78rem;display:inline-flex}.hero-student-meta b{color:#ffffff94;font-weight:600}.dashboard-hero .hero-stats{flex-wrap:wrap;gap:32px;display:flex}.dashboard-hero .hero-stat{text-align:center}.dashboard-hero .hero-stat-value{color:#fff;font-size:2rem;font-weight:700}.dashboard-hero .hero-stat-label{color:#ffffffbf;margin-top:4px;font-size:.8rem}.stat-cards-row{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px;display:grid}.stat-card-enhanced{border:1px solid var(--border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);background:linear-gradient(#fffffffa,#ffffffe0),linear-gradient(135deg,#81c3d72e,#4caf8414);padding:22px 20px;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.stat-card-enhanced:after{content:"";opacity:1;border-radius:3px 3px 0 0;height:3px;transition:opacity .3s;position:absolute;top:0;left:0;right:0}.stat-card-enhanced:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-4px)}.stat-card-enhanced:hover:after{opacity:1}.stat-card-enhanced:first-child:after{background:linear-gradient(90deg,#2f6690,#81c3d7)}.stat-card-enhanced:nth-child(2):after{background:linear-gradient(90deg,#4caf84,#81c3d7)}.stat-card-enhanced:nth-child(3):after{background:linear-gradient(90deg,#4caf84,#3d9b6f)}.stat-card-enhanced:nth-child(6):after{background:linear-gradient(90deg,#8b6bae,#81c3d7)}.stat-card-enhanced:nth-child(7):after{background:linear-gradient(90deg,#2f6690,#8b6bae)}.stat-card-enhanced.warning:after{opacity:1;background:linear-gradient(90deg,#f0b85e,#e8913a)}.stat-card-enhanced.danger:after{opacity:1;background:linear-gradient(90deg,#e0576e,#d9435a)}.stat-card-enhanced.success:after{opacity:1;background:linear-gradient(90deg,#4caf84,#3d9b6f)}.stat-card-enhanced .stat-icon{margin-bottom:10px;font-size:1.5rem}.stat-card-enhanced .stat-value{color:var(--stu-dark);font-size:1.8rem;font-weight:700;line-height:1.2}.stat-card-enhanced .stat-label{color:var(--text-sub);margin-top:4px;font-size:.82rem}.stat-card-enhanced .stat-sub{color:var(--text-hint);margin-top:2px;font-size:.75rem}.charts-grid{grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:24px;display:grid}.chart-card{border:1px solid var(--border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);background:#fff;padding:20px}.chart-card .chart-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.chart-card .chart-title{color:var(--stu-dark);font-size:.95rem;font-weight:600}.chart-card .chart-hint{color:var(--text-hint);font-size:.78rem}.chart-container{width:100%;height:320px;min-height:260px}.chart-container-sm{width:100%;height:260px;min-height:200px}.chart-container-lg{width:100%;height:380px;min-height:300px}.course-charts-row{grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px;display:grid}.course-chart-panel{border:1px solid var(--border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);background:#fff;flex-direction:column;padding:20px;display:flex}.course-chart-panel .chart-header{flex-shrink:0;justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.course-chart-panel .chart-title{color:var(--stu-dark);font-size:.95rem;font-weight:600}.course-chart-panel .chart-body{flex:1;width:100%;min-height:340px}@media (width<=860px){.course-charts-row{grid-template-columns:1fr;gap:20px}.course-chart-panel .chart-body{min-height:300px}}.course-card-mini{border:1px solid var(--border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);cursor:pointer;background:#fff;align-items:center;gap:20px;padding:20px 24px;transition:all .3s;display:flex}.course-card-mini:hover{box-shadow:var(--shadow-card-hover);border-color:#81c3d766;transform:translateY(-3px)}.course-card-mini .course-icon{border-radius:var(--radius-md);color:#fff;background:linear-gradient(135deg,#2f6690,#3a7ca5);flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;font-size:1.6rem;display:flex}.course-card-mini .course-info{flex:1;min-width:0}.course-card-mini .course-name{color:var(--text-main);margin-bottom:4px;font-size:1rem;font-weight:600}.course-card-mini .course-meta{color:var(--text-sub);font-size:.82rem}.course-card-mini .course-arrow{color:var(--text-hint);font-size:1.2rem;transition:transform .3s}.course-card-mini:hover .course-arrow{color:var(--stu-primary);transform:translate(4px)}.rec-tag{border-radius:999px;margin-right:6px;padding:4px 12px;font-size:.75rem;font-weight:500;display:inline-block}.rec-tag.knowledge_point{color:#2f6690;background:#2f66901a}.rec-tag.question{color:#4caf84;background:#4caf841a}.rec-tag.video{color:#e8913a;background:#e8913a1a}.rec-tag.learning_path{color:#8b6bae;background:#8b6bae1a}.rec-tag.review_plan{color:#e0576e;background:#e0576e1a}.quick-actions{flex-wrap:wrap;gap:12px;margin-top:8px;display:flex}.btn-quick-action{font-size:.85rem;font-family:var(--font);color:var(--stu-primary);cursor:pointer;background:#2f66900f;border:1px solid #2f669026;border-radius:999px;align-items:center;gap:6px;padding:8px 18px;font-weight:500;transition:all .25s;display:inline-flex}.btn-quick-action:hover{background:#2f66901f;border-color:#2f669059}.courses-overview-bar{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;margin-bottom:24px;display:grid}.courses-overview-item{background:var(--stu-surface,#fff);border:1px solid var(--stu-border-light-v2,#2f669012);border-left:3px solid var(--stu-primary,#2f6690);box-shadow:var(--stu-shadow-xs,0 1px 2px #16425b0a);transition:box-shadow .2s var(--stu-easing,ease), border-color .2s ease;border-radius:10px;align-items:center;gap:14px;padding:18px 20px;display:flex}.courses-overview-item:hover{box-shadow:var(--stu-shadow-sm,0 2px 8px #16425b0f);border-color:#2f66902e}.courses-overview-item .overview-icon{background:#2f669014;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.3rem;display:flex}.courses-overview-item .overview-icon.blue{background:#2f669017}.courses-overview-item .overview-icon.green{background:#4caf8414}.courses-overview-item .overview-icon.amber{background:#f0b85e1a}.courses-overview-item .overview-icon.purple{background:#7c3aed12}.courses-overview-item .overview-value{color:var(--stu-primary,#2f6690);font-size:1.4rem;font-weight:700;line-height:1.15}.courses-overview-item .overview-label{color:var(--stu-text-sub,#5a6b80);margin-top:2px;font-size:.78rem}.search-box{border:1px solid var(--stu-border-light-v2,#2f669012);box-shadow:var(--stu-shadow-xs,0 1px 2px #16425b0a);background:#fff;border-radius:10px;align-items:center;gap:8px;width:280px;padding:9px 16px;transition:all .25s;display:flex}.search-box:focus-within{border-color:#2f669066;box-shadow:0 0 0 3px #2f669014}.search-box input{font-size:.9rem;font-family:var(--font);color:var(--text-main);background:0 0;border:none;outline:none;flex:1}.search-box input::placeholder{color:var(--text-hint)}.search-box .search-icon{color:var(--text-hint);font-size:1rem}.courses-grid{flex-direction:column;gap:18px;display:flex}.course-card-h{background:var(--stu-surface,#fff);border:1px solid var(--stu-border-light-v2,#2f669012);box-shadow:var(--stu-shadow-xs,0 1px 2px #16425b0a);transition:transform var(--stu-duration-normal,.22s) var(--stu-easing,cubic-bezier(.4,0,.2,1)), box-shadow var(--stu-duration-normal,.22s) var(--stu-easing,cubic-bezier(.4,0,.2,1)), border-color var(--stu-duration-normal,.22s) var(--stu-easing,cubic-bezier(.4,0,.2,1));cursor:pointer;border-radius:14px;flex-direction:row;gap:0;min-height:240px;display:flex;overflow:hidden}.course-card-h:hover{box-shadow:var(--stu-shadow-md,0 4px 16px #16425b14);border-color:#2f669033;transform:translateY(-3px)}.course-card-main{flex-direction:column;flex:50%;gap:8px;min-width:0;padding:22px 24px;display:flex}.course-card-name{color:var(--stu-text-primary,#0f1a2e);margin:0;font-size:1.15rem;font-weight:700;line-height:1.3}.course-card-desc{color:var(--stu-text-sub,#5a6b80);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.85rem;line-height:1.55;display:-webkit-box;overflow:hidden}.course-card-meta-row{color:var(--stu-text-hint,#8899ae);flex-wrap:wrap;align-items:center;gap:4px 14px;margin-top:4px;font-size:.8rem;display:flex}.course-card-meta-row span{align-items:center;gap:4px;display:inline-flex}.course-card-last{color:var(--stu-text-hint,#8899ae);text-overflow:ellipsis;white-space:nowrap;margin-top:auto;padding-top:8px;font-size:.76rem;overflow:hidden}.course-card-progress{border-left:1px solid var(--stu-border-light-v2,#2f669012);background:#f7fafc80;flex-direction:column;flex:0 0 220px;justify-content:center;gap:10px;padding:22px 18px;display:flex}.progress-header-h{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.progress-header-h span{color:var(--stu-text-hint,#8899ae);font-size:.78rem;font-weight:500}.progress-header-h b{color:var(--stu-primary,#2f6690);font-size:1.05rem;font-weight:700}.progress-bar-h{background:#2f669014;border-radius:4px;height:7px;overflow:hidden}.progress-bar-h-fill{height:100%;transition:width .5s var(--stu-easing,cubic-bezier(.4,0,.2,1));background:linear-gradient(90deg,#2f6690,#3a7ca5);border-radius:4px}.kp-inline-stats{flex-wrap:wrap;gap:4px 10px;font-size:.76rem;display:flex}.kp-inline-stats .kp-stat{color:var(--stu-text-sub,#5a6b80);white-space:nowrap;background:#2f66900d;border-radius:6px;padding:3px 8px;font-weight:500}.kp-inline-stats .kp-stat.mastered{color:var(--stu-success,#2c7a63);background:var(--stu-success-bg,#4caf8414)}.kp-inline-stats .kp-stat.general{color:var(--stu-warning,#b85c1a);background:var(--stu-warning-bg,#f0b85e1a)}.kp-inline-stats .kp-stat.weak{color:var(--stu-error,#b64c3d);background:var(--stu-error-bg,#e0576e14)}.course-card-actions-h{flex-direction:column;gap:8px;margin-top:6px;display:flex}.course-card-title-row{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.btn-course-pin-h{color:#597187;cursor:pointer;background:#fff;border:1px solid #d7e4ec;border-radius:8px;flex:none;align-items:center;gap:4px;padding:5px 8px;font-size:12px;line-height:1;display:inline-flex}.btn-course-pin-h:hover,.btn-course-pin-h.is-pinned{color:#23648d;background:#edf7fb;border-color:#4e8bad}.btn-course-pin-h svg{flex:none}.course-syllabus-card{background:linear-gradient(118deg,#f7fcfd 0%,#fff 58%);border:1px solid #dcecf1;border-radius:16px;margin:18px 0 20px;padding:20px 22px;box-shadow:0 8px 22px #1c4f6e0d}.course-syllabus-head{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.course-syllabus-kicker{color:#37799d;letter-spacing:.1em;font-size:11px;font-weight:800}.course-syllabus-head h2{color:#153d59;margin:4px 0 6px;font-size:20px}.course-syllabus-head p{color:#6c8293;max-width:720px;margin:0}.course-syllabus-toggle{color:#2b6f94;cursor:pointer;background:#fff;border:1px solid #9dc6d8;border-radius:9px;flex:none;padding:8px 12px;font-weight:700}.course-syllabus-body{border-top:1px solid #e4eef2;grid-template-columns:minmax(200px,.9fr) minmax(260px,1.5fr);gap:22px;margin-top:16px;padding-top:16px;display:grid}.course-syllabus-body h3{color:#285976;margin:0 0 8px;font-size:14px}.course-syllabus-body p{color:#60798b;margin:0;line-height:1.65}.course-syllabus-objectives ul{color:#587083;margin:0;padding-left:18px;line-height:1.8}.course-syllabus-chapters article{border-bottom:1px dashed #d9e8ee;gap:10px;padding:10px 0;display:flex}.course-syllabus-chapters article:last-child{border-bottom:0}.course-syllabus-chapters article>b{color:#5796b6;padding-top:2px;font-size:12px}.course-syllabus-chapters h4{color:#244e68;margin:0 0 3px;font-size:14px}.course-syllabus-chapters p{font-size:12px}.course-syllabus-chapters span{color:#7491a2;margin-top:5px;font-size:12px;display:block}.kg-detail-actions{flex-wrap:wrap;gap:8px;margin:14px 0 2px;display:flex}.kg-detail-actions button{color:#2c7297;cursor:pointer;background:#fff;border:1px solid #a8cbd9;border-radius:8px;padding:7px 9px;font-weight:700}.kg-detail-actions button:first-child{color:#fff;background:#367b9f;border-color:#367b9f}.course-kp-search{color:#54758a;background:#fff;border:1px solid #d9e6ed;border-radius:8px;align-items:center;gap:4px;padding:0 8px;display:flex}.course-kp-search .search-box{border:0;outline:0}@media (width<=760px){.course-syllabus-head{flex-direction:column}.course-syllabus-body{grid-template-columns:1fr}}.btn-enter-course-h{width:100%;min-height:36px;font-size:.86rem;font-family:var(--font);color:#fff;background:var(--stu-btn-gradient,linear-gradient(135deg, #2f6690, #3a7ca5));cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-weight:600;transition:box-shadow .2s,transform .15s;display:inline-flex;box-shadow:0 2px 8px #2f669029}.btn-enter-course-h:hover{box-shadow:0 4px 16px #2f669047}.btn-course-wrong-book-h,.btn-course-knowledge-graph-h{width:100%;min-height:34px;font-size:.82rem;font-family:var(--font);color:var(--stu-primary,#2f6690);cursor:pointer;background:0 0;border:1px solid #2f669029;border-radius:8px;justify-content:center;align-items:center;padding:0 14px;font-weight:550;transition:background .2s,border-color .2s;display:inline-flex}.btn-course-wrong-book-h:hover,.btn-course-knowledge-graph-h:hover{background:#2f66900f;border-color:#2f669047}.btn-course-knowledge-graph-h{color:#2c7a63;background:#4caf840f;border-color:#2c7a633d}.course-card-cover-panel{background:linear-gradient(135deg,#e4eef6,#d3e3f1,#c5daec);flex:0 0 250px;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.course-card-cover-panel .cover-bg-pattern{pointer-events:none;background:radial-gradient(circle at 80% 30%,#81c3d72e 0%,#0000 50%),radial-gradient(circle at 20% 80%,#2f66901a 0%,#0000 45%);position:absolute;inset:0}.course-card-cover-panel img{z-index:1;object-fit:contain;filter:drop-shadow(0 6px 18px #16425b2e);width:78%;height:84%;transition:transform .28s var(--stu-easing,cubic-bezier(.4,0,.2,1));position:relative}.course-card-h:hover .course-card-cover-panel img{transform:scale(1.04)}.course-card-cover-panel:before{content:"";z-index:2;pointer-events:none;background:linear-gradient(90deg,#fffffff5 0%,#f8fbfead 30%,#dcebf824 75%,#d7e8f605 100%);width:70px;position:absolute;top:0;bottom:0;left:0}.course-card-cover-panel .cover-placeholder{color:#2f66901f;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;width:100%;height:100%;font-size:3rem;font-weight:800;display:flex}.course-card{display:none}.course-card .card-title-row{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px;display:flex}.course-card .card-course-name{color:var(--text-main);font-size:1.1rem;font-weight:700;line-height:1.4}.course-card .card-course-code{color:var(--text-hint);white-space:nowrap;background:#2f66900f;border-radius:6px;padding:3px 10px;font-size:.78rem}.course-card .card-desc{color:var(--text-sub);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:16px;font-size:.85rem;line-height:1.5;display:-webkit-box;overflow:hidden}.course-card .card-meta{flex-wrap:wrap;gap:12px;margin-bottom:16px;display:flex}.course-card .meta-item{color:var(--text-sub);align-items:center;gap:4px;font-size:.8rem;display:flex}.course-progress-bar-wrap{margin-bottom:16px}.course-progress-bar-wrap .progress-header{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.course-progress-bar-wrap .progress-label{color:var(--text-sub);font-size:.8rem;font-weight:500}.course-progress-bar-wrap .progress-value{color:var(--stu-primary);font-size:.85rem;font-weight:700}.course-progress-bar{background:#2f669014;border-radius:4px;height:8px;overflow:hidden}.course-progress-bar .progress-fill{background:linear-gradient(90deg,#2f6690,#3a7ca5,#81c3d7);border-radius:4px;height:100%;transition:width .6s cubic-bezier(.4,0,.2,1)}.course-last-position{color:var(--text-hint);text-overflow:ellipsis;white-space:nowrap;margin-top:7px;font-size:.76rem;overflow:hidden}.kp-stats-row{gap:16px;margin-bottom:16px;display:flex}.kp-stat-item{text-align:center;border-radius:var(--radius-sm);background:#d9dcd659;flex:1;padding:10px 8px}.kp-stat-item .kp-stat-value{color:var(--stu-dark);font-size:1.1rem;font-weight:700}.kp-stat-item .kp-stat-label{color:var(--text-hint);margin-top:2px;font-size:.73rem}.course-card-actions{grid-template-columns:minmax(0,1fr) 108px;gap:10px;display:grid}.btn-enter-course{width:100%;font-size:.9rem;font-family:var(--font);color:#fff;border-radius:var(--radius-sm);cursor:pointer;background:linear-gradient(135deg,#2f6690,#3a7ca5);border:none;justify-content:center;align-items:center;gap:8px;padding:11px 0;font-weight:600;transition:all .3s;display:flex;box-shadow:0 4px 14px #2f669033}.btn-enter-course:hover{transform:translateY(-1px);box-shadow:0 8px 24px #2f669059}.btn-course-wrong-book{border-radius:var(--radius-sm);min-width:0;color:var(--stu-primary);font-family:var(--font);cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #2f669029;justify-content:center;align-items:center;padding:0 12px;font-size:.86rem;font-weight:650;transition:all .25s;display:inline-flex;box-shadow:0 4px 14px #2f669014}.btn-course-wrong-book:hover{color:#fff;background:linear-gradient(135deg,#4caf84,#2f6690);border-color:#0000;transform:translateY(-1px)}.course-hero-card{border-radius:var(--radius-xl);color:#fff;background:linear-gradient(135deg,#16425b 0%,#2f6690 50%,#3a7ca5 100%);margin-bottom:24px;padding:36px 40px;position:relative;overflow:hidden;box-shadow:0 12px 40px #16425b2e}.course-hero-card:before{content:"";pointer-events:none;background:radial-gradient(circle,#81c3d740,#0000 60%);border-radius:50%;width:400px;height:400px;position:absolute;top:-30%;right:-10%}.course-hero-card .hero-inner{z-index:1;flex-wrap:wrap;gap:36px;display:flex;position:relative}.course-hero-card .hero-info{flex:1;min-width:280px}.course-hero-card .hero-course-name{margin-bottom:8px;font-size:1.6rem;font-weight:700}.course-hero-card .hero-course-code{color:#ffffffb3;margin-bottom:12px;font-size:.9rem}.course-hero-card .hero-desc{color:#ffffffd9;max-width:560px;margin-bottom:16px;font-size:.9rem;line-height:1.6}.course-hero-card .hero-meta-tags{flex-wrap:wrap;gap:8px;display:flex}.course-hero-card .hero-tag{color:#ffffffe6;background:#ffffff1f;border:1px solid #ffffff26;border-radius:999px;padding:5px 14px;font-size:.8rem}.course-hero-card .hero-chart-area{flex-shrink:0;width:180px;height:180px}.course-metrics-row{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:16px;margin-bottom:18px;display:grid}.course-metric-card{border:1px solid var(--border-soft);border-radius:var(--radius-lg);text-align:center;box-shadow:var(--shadow-card);background:#fff;padding:20px}.course-metric-card .metric-value{color:var(--stu-dark);font-size:1.6rem;font-weight:700}.course-metric-card .metric-label{color:var(--text-sub);margin-top:4px;font-size:.82rem}.course-action-strip{flex-wrap:wrap;justify-content:flex-end;gap:12px;margin-bottom:28px;display:flex}.course-action-btn{border-radius:var(--radius-sm);min-height:40px;color:var(--stu-primary);font-family:var(--font);cursor:pointer;box-shadow:var(--shadow-card);background:#fff;border:1px solid #2f669029;justify-content:center;align-items:center;padding:0 18px;font-size:.86rem;font-weight:650;transition:transform .2s,box-shadow .2s,border-color .2s;display:inline-flex}.course-action-btn.primary{color:#fff;background:linear-gradient(135deg,#2f6690,#3a7ca5);border-color:#0000}.course-action-btn:hover{box-shadow:var(--shadow-card-hover);border-color:#2f669057;transform:translateY(-1px)}.course-kg-section{border:1px solid var(--border-soft);background:linear-gradient(#fff 0%,#f8fbfd 100%);border-radius:20px;margin-bottom:28px;padding:24px;box-shadow:0 18px 45px #1f405717}.course-kg-header{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:16px;display:flex}.course-kg-header h3{color:var(--stu-dark);margin:0 0 4px;font-size:1rem;font-weight:700}.course-kg-header p,.course-video-keyword{color:var(--text-sub);font-size:.82rem}.course-kg-legend{color:var(--text-sub);flex-wrap:wrap;align-items:center;gap:12px;font-size:.78rem;display:flex}.course-kg-legend span{align-items:center;gap:5px;display:inline-flex}.legend-dot{border-radius:50%;width:9px;height:9px;display:inline-block}.legend-dot.status-mastered,.kg-node-kp-card.status-mastered .kg-status-dot,.kg-quick-kp[data-status=mastered]:before{background:#38a169}.legend-dot.status-learning,.kg-node-kp-card.status-learning .kg-status-dot,.kg-quick-kp[data-status=learning]:before{background:#3a7ca5}.legend-dot.status-unstarted,.kg-node-kp-card.status-unstarted .kg-status-dot,.kg-quick-kp[data-status=unstarted]:before{background:#9db2c4}.legend-dot.status-weak,.kg-node-kp-card.status-weak .kg-status-dot,.kg-quick-kp[data-status=weak]:before{background:#e89a5c}.course-kg-layout{grid-template-columns:minmax(0,3fr) minmax(390px,2fr);align-items:start;gap:20px;display:grid}.course-kg-map-wrap,.course-kg-video-wrap{min-width:0}.course-kg-node-detail{border:1px solid var(--border-soft);background:#fff;border-radius:16px;max-height:380px;padding:16px;overflow-y:auto;box-shadow:0 10px 24px #1f405712}.kg-detail-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.kg-detail-kicker{color:var(--text-sub);margin-bottom:4px;font-size:.72rem;font-weight:700}.course-kg-node-detail h4{color:var(--stu-dark);margin:0;font-size:1rem;line-height:1.3}.kg-detail-overview>p,.kg-detail-description,.kg-detail-block p{color:var(--text-sub);margin:8px 0 0;font-size:.79rem;line-height:1.55}.kg-detail-status{color:#fff;border-radius:999px;flex:none;padding:4px 9px;font-size:.72rem;font-weight:700}.kg-detail-status.status-mastered{background:#38a169}.kg-detail-status.status-learning{background:#3a7ca5}.kg-detail-status.status-weak{background:#d97745}.kg-detail-status.status-unstarted{background:#8a9cab}.kg-detail-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px;display:grid}.kg-detail-summary span{border:1px solid var(--border-soft);color:var(--text-sub);background:#f8fbfd;border-radius:8px;padding:9px 10px;font-size:.74rem}.kg-detail-summary b{color:var(--stu-dark);margin-right:3px;font-size:.94rem}.kg-detail-mastery{margin-top:14px}.kg-detail-mastery>div{color:var(--text-sub);justify-content:space-between;font-size:.76rem;display:flex}.kg-detail-mastery b{color:var(--stu-dark)}.kg-detail-mastery>i{background:#e6edf1;border-radius:999px;height:7px;margin-top:7px;display:block;overflow:hidden}.kg-detail-mastery em{border-radius:inherit;height:100%;display:block}.kg-detail-mastery em.status-mastered{background:#38a169}.kg-detail-mastery em.status-learning{background:#3a7ca5}.kg-detail-mastery em.status-weak{background:#d97745}.kg-detail-mastery em.status-unstarted{background:#8a9cab}.kg-detail-block{border-top:1px solid var(--border-soft);margin-top:12px;padding-top:12px}.kg-detail-block h5{color:var(--stu-dark);margin:0;font-size:.78rem}.kg-detail-resources,.kg-related-list{flex-wrap:wrap;gap:7px;margin-top:8px;display:flex}.kg-detail-resource{text-align:left;max-width:100%;color:var(--stu-primary);font-family:var(--font);cursor:pointer;background:#2f66900d;border:1px solid #2f669024;border-radius:8px;padding:7px 9px;text-decoration:none;display:grid}.kg-detail-resource span{color:var(--text-sub);font-size:.65rem}.kg-detail-resource b{text-overflow:ellipsis;white-space:nowrap;font-size:.73rem;font-weight:650;overflow:hidden}.kg-related-kp{color:var(--stu-primary);font-family:var(--font);cursor:pointer;background:#fff;border:1px solid #2f66902e;border-radius:999px;padding:5px 8px;font-size:.7rem}.kg-related-kp:hover{background:#2f669012}.kg-detail-empty{color:var(--text-sub);font-size:.72rem}.course-kg-map-wrap{border:1px solid var(--border-soft);background:radial-gradient(circle at 18% 12%,#58a4b01f,#0000 28%),radial-gradient(circle at 86% 84%,#2f669017,#0000 32%),linear-gradient(#f8fcfefa,#fff);border-radius:18px;overflow:hidden;box-shadow:inset 0 1px #ffffffeb}.course-kg-map-head{border-bottom:1px solid var(--border-soft);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffd1;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.kg-quick-strip{scrollbar-width:thin;gap:8px;min-width:0;padding-bottom:2px;display:flex;overflow-x:auto}.kg-quick-empty{color:var(--text-sub);font-size:.82rem}.kg-quick-kp{max-width:190px;color:var(--stu-primary);font-family:var(--font);white-space:nowrap;text-overflow:ellipsis;cursor:pointer;background:#2f66900f;border:1px solid #2f66901f;border-radius:999px;flex:none;align-items:center;gap:6px;padding:6px 11px;font-size:.78rem;display:inline-flex;overflow:hidden}.kg-quick-kp:before{content:"";border-radius:50%;flex:none;width:7px;height:7px}.kg-quick-kp:hover,.kg-quick-kp.active{background:#2f66901f;border-color:#2f66904d}.course-kg-controls{flex:none;align-items:center;gap:6px;display:flex}.kg-control-btn{width:32px;height:32px;color:var(--stu-primary);font-family:var(--font);cursor:pointer;background:#fff;border:1px solid #2f669029;border-radius:9px;justify-content:center;align-items:center;font-size:.82rem;font-weight:700;display:inline-flex;box-shadow:0 5px 14px #1f405714}.kg-control-btn:hover{color:#fff;background:linear-gradient(135deg,#2f6690,#3a7ca5);border-color:#0000}.course-kg-mind{background-color:#f8fbfd;background-image:radial-gradient(circle,#2f66901f 1px,#0000 1px),linear-gradient(90deg,#94a9b814 1px,#0000 1px),linear-gradient(0deg,#94a9b814 1px,#0000 1px);background-size:22px 22px,44px 44px,44px 44px;width:100%;height:clamp(620px,100vh - 210px,760px);min-height:620px;position:relative;overflow:hidden}.course-kg-mind .map-container{background:0 0!important}.course-kg-mind .map-container .map-canvas{transition:transform .22s}.course-kg-mind .map-container me-root me-tpc,.course-kg-mind .map-container me-main>me-wrapper>me-parent>me-tpc,.course-kg-mind .map-container me-parent me-tpc{box-shadow:none!important;background:0 0!important;border:none!important;padding:0!important}.course-kg-mind .map-container me-parent{padding-top:10px;padding-bottom:10px}.course-kg-mind .map-container me-epd{filter:hue-rotate(164deg)saturate(.7)}.course-kg-mind .map-container .lines path,.course-kg-mind .map-container .subLines path{stroke-linecap:round;stroke-linejoin:round;opacity:.72}.kg-node-card{min-height:48px;color:var(--text-main);background:#fffffff0;border:1px solid #2f669024;border-radius:14px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:2px 8px;padding:10px 13px;display:grid;box-shadow:0 12px 24px #1f40571c}.kg-node-main{-webkit-line-clamp:2;-webkit-box-orient:vertical;min-width:0;font-size:.9rem;font-weight:700;line-height:1.25;display:-webkit-box;overflow:hidden}.kg-node-sub{color:var(--text-sub);grid-column:2;font-size:.72rem;line-height:1.2}.kg-node-course-card{color:#fff;background:linear-gradient(135deg,#214e68,#2f6690 55%,#3a7ca5);border-color:#ffffff59;width:260px;min-height:76px;box-shadow:0 18px 38px #2f669040}.kg-node-course-card .kg-node-main{font-size:1rem}.kg-node-course-card .kg-node-sub{color:#ffffffd1}.kg-node-mark{background:#ffffff2e;border:1px solid #ffffff61;border-radius:8px;grid-row:1/span 2;width:22px;height:22px}.kg-node-mark-course:after{content:"";background:#ffffffe6;border-radius:50%;width:10px;height:10px;margin:5px;display:block}.kg-node-chapter-card{background:linear-gradient(#fffffff5,#eef8fcf5);border-color:#3a7ca547;width:230px}.kg-node-kp-card{border-color:#9db2c459;width:190px;min-height:50px}.kg-node-kp-card.status-mastered{background:#f1fcf6f5;border-color:#38a16961}.kg-node-kp-card.status-learning{background:#f1f8fcf5;border-color:#3a7ca561}.kg-node-kp-card.status-weak{background:#fff8f3f5;border-color:#d977456b}.kg-node-kp-card.status-unstarted{background:#f7f9faf5;border-color:#8a9cab66}.kg-node-kp-card .kg-node-main{font-size:.84rem}.kg-status-dot{border-radius:50%;grid-row:1/span 2;width:10px;height:10px;box-shadow:0 0 0 4px #2f669014}.course-kg-mind .kg-node-selected .kg-node-card{border-color:#2f6690;box-shadow:0 0 0 3px #2f669024,0 18px 34px #1f405729}.course-kg-mind .kg-node-dimmed{opacity:.34;transition:opacity .18s}.course-kg-video-wrap{flex-direction:column;align-self:start;gap:10px;min-width:0;height:auto;min-height:0;display:flex}.course-video-context{background:linear-gradient(135deg,#2f669014,#58a4b014);border:1px solid #2f669021;border-radius:16px;padding:14px 16px}.course-video-context-kicker{color:var(--text-sub);margin-bottom:4px;font-size:.72rem;font-weight:700}.course-video-context-title{color:var(--stu-dark);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.98rem;font-weight:750;line-height:1.25;display:-webkit-box;overflow:hidden}.course-video-context-meta{color:var(--text-sub);flex-wrap:wrap;gap:8px;margin-top:8px;font-size:.76rem;display:flex}.course-video-context-meta span{background:#ffffffc7;border:1px solid #2f66901a;border-radius:999px;padding:3px 8px}.course-video-search{grid-template-columns:minmax(0,1fr) 82px;gap:8px;display:grid}.course-video-search input{min-width:0;height:38px;color:var(--text-main);border:1px solid var(--border-soft);border-radius:var(--radius-sm);font-family:var(--font);outline:none;padding:0 12px}.course-video-search button,.course-kg-error button{color:#fff;border-radius:var(--radius-sm);height:38px;font-family:var(--font);cursor:pointer;background:linear-gradient(135deg,#2f6690,#3a7ca5);border:none;font-weight:650}.course-video-search button:disabled{opacity:.72;cursor:not-allowed}.kg-video-area{border:1px solid var(--border-soft);background:#ffffffe6;border-radius:18px;flex-direction:column;flex:none;gap:10px;min-height:0;padding:12px;display:flex;overflow:hidden;box-shadow:0 12px 26px #1f405714}.kg-video-player-shell{aspect-ratio:16/9;background:#07111f;border-radius:14px;flex:none;width:100%;position:relative;overflow:hidden}.kg-video-player{background:#07111f;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.kg-video-player iframe,.kg-video-player video{border:none;width:100%;height:100%;display:block}.kg-video-placeholder,.kg-video-skeleton,.kg-video-list-loading,.kg-video-empty,.kg-video-error{text-align:center;color:#ffffffad;flex-direction:column;justify-content:center;align-items:center;gap:8px;width:100%;min-height:96px;padding:20px;font-size:.86rem;display:flex}.kg-video-placeholder-icon{background:linear-gradient(135deg,#58a4b059,#2f669059);border:1px solid #ffffff2e;border-radius:14px;width:44px;height:44px}.kg-video-skeleton-line{background:linear-gradient(90deg,#ffffff14,#ffffff38,#ffffff14) 0 0/220% 100%;border-radius:999px;width:42%;height:12px;animation:1.1s linear infinite kgShimmer}.kg-video-skeleton-line.wide{width:66%}.kg-video-fullscreen-btn{z-index:2;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#07111fb3;border:1px solid #ffffff42;border-radius:10px;width:34px;height:34px;position:absolute;top:10px;right:10px}.kg-video-fullscreen-icon{border:2px solid;border-radius:3px;width:16px;height:16px;margin:8px auto;display:block;position:relative}.kg-video-fullscreen-btn.is-active .kg-video-fullscreen-icon{width:14px;height:14px}.kg-video-fullscreen-tip{z-index:3;color:#fff;background:#07111fc7;border-radius:999px;padding:7px 12px;font-size:.78rem;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.kg-video-player-shell:fullscreen{aspect-ratio:auto;background:#07111f;border-radius:0;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex}.kg-video-player-shell:fullscreen .kg-video-player{width:min(100vw,177.778vh);height:min(100vh,56.25vw);position:relative;inset:auto}.kg-video-title{border-bottom:1px solid var(--border-soft);padding:2px 2px 8px}.kg-video-title-main{color:var(--text-main);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.9rem;font-weight:700;line-height:1.28;display:-webkit-box;overflow:hidden}.kg-video-title-sub{color:var(--text-sub);margin-top:3px;font-size:.76rem}.kg-video-list-wrap{border-top:1px solid var(--border-soft);flex:none;min-height:0}.kg-video-list-head{min-height:38px;color:var(--text-sub);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;font-size:.78rem;font-weight:700;list-style:none;display:flex}.kg-video-list-head::-webkit-details-marker{display:none}.kg-video-list-count{color:var(--stu-primary);margin-left:auto}.kg-video-list-toggle{color:var(--stu-primary);align-items:center;gap:5px;display:inline-flex}.kg-video-list-toggle i{border-bottom:1.5px solid;border-right:1.5px solid;width:7px;height:7px;transition:transform .16s;transform:rotate(45deg)translateY(-2px)}.kg-video-list-toggle-close,.kg-video-list-wrap[open] .kg-video-list-toggle-open{display:none}.kg-video-list-wrap[open] .kg-video-list-toggle-close{display:inline}.kg-video-list-wrap[open] .kg-video-list-toggle i{transform:rotate(225deg)translate(-1px,-1px)}.kg-video-list{min-height:0;max-height:360px;padding:8px 4px 0 0;overflow-y:auto}.kg-video-item{text-align:left;border:1px solid var(--border-soft);width:100%;font-family:var(--font);cursor:pointer;background:#fff;border-radius:12px;grid-template-columns:86px minmax(0,1fr) auto;align-items:center;gap:10px;margin-bottom:8px;padding:8px;transition:border-color .15s,box-shadow .15s,background .15s;display:grid}.kg-video-item:hover,.kg-video-item.is-active{background:#f2f9fc;border-color:#2f669073;box-shadow:0 8px 18px #2f66901a}.kg-video-cover{aspect-ratio:16/9;object-fit:cover;background:linear-gradient(135deg,#dbeaf0,#eef7fa);border-radius:8px;width:86px}.kg-video-cover-fallback{display:block}.kg-video-item-body{min-width:0}.kg-video-item-title{color:var(--text-main);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.82rem;font-weight:650;line-height:1.32;display:-webkit-box;overflow:hidden}.kg-video-item-meta{color:var(--text-sub);flex-wrap:wrap;gap:7px;margin-top:5px;font-size:.72rem;display:flex}.kg-video-item-action,.kg-video-open-link,.kg-video-empty a{color:#fff;white-space:nowrap;background:linear-gradient(135deg,#2f6690,#3a7ca5);border-radius:999px;padding:5px 10px;font-size:.72rem;text-decoration:none}.kg-video-list-loading,.kg-video-empty,.kg-video-error{min-height:150px;color:var(--text-sub);border:1px dashed var(--border-soft);background:#f8fbfd;border-radius:12px}.kg-video-spinner{border:2px solid #2f66902e;border-top-color:#2f6690;border-radius:50%;width:22px;height:22px;animation:.8s linear infinite spin}@keyframes kgShimmer{to{background-position:-220% 0}}.course-kg-error{text-align:center;min-height:360px;color:var(--text-sub);padding:40px 24px}.course-kg-error b,.course-kg-error span{margin-bottom:10px;display:block}.chapter-timeline{flex-direction:column;gap:0;display:flex}.chapter-node{gap:20px;padding-bottom:24px;display:flex;position:relative}.chapter-node:before{content:"";background:linear-gradient(#2f669033,#81c3d71a);width:2px;position:absolute;top:48px;bottom:0;left:21px}.chapter-node:last-child:before{display:none}.chapter-node .chapter-dot{border:2px solid var(--stu-primary);width:44px;height:44px;color:var(--stu-primary);z-index:1;background:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.95rem;font-weight:700;display:flex;position:relative}.chapter-node .chapter-content{flex:1;padding-top:4px}.chapter-node .chapter-name{color:var(--text-main);margin-bottom:4px;font-size:1rem;font-weight:600}.chapter-node .chapter-desc{color:var(--text-sub);margin-bottom:12px;font-size:.82rem}.kp-pills{flex-wrap:wrap;gap:8px;display:flex}.kp-pill{cursor:pointer;border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:6px 14px;font-size:.82rem;font-weight:500;transition:all .25s;display:inline-flex}.kp-pill:hover{transform:translateY(-1px);box-shadow:0 4px 12px #16425b1a}.kp-pill.mastery-excellent{color:#3d9b6f;background:#4caf841a;border-color:#4caf8440}.kp-pill.mastery-good{color:#2f6690;background:#2f669014;border-color:#2f669033}.kp-pill.mastery-general{color:#c7852a;background:#f0b85e1a;border-color:#f0b85e40}.kp-pill.mastery-weak{color:#d9435a;background:#e0576e14;border-color:#e0576e33}.kp-pill.mastery-unknown{color:#829ab1;background:#829ab114;border-color:#829ab126}.kp-list-card{border:1px solid var(--border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);background:#fff;align-items:center;gap:16px;padding:20px 24px;transition:all .25s;display:flex}.kp-list-card:hover{box-shadow:var(--shadow-card-hover);border-color:#81c3d74d}.filter-bar{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.filter-chip{font-size:.82rem;font-family:var(--font);color:var(--text-sub);border:1px solid var(--border-soft);cursor:pointer;background:#fff;border-radius:999px;padding:7px 18px;font-weight:500;transition:all .25s}.filter-chip:hover{color:var(--stu-primary);border-color:#2f66904d}.filter-chip.active{background:var(--stu-primary);color:#fff;border-color:var(--stu-primary);box-shadow:0 4px 14px #2f66904d}.wrong-stats-row{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin-bottom:28px;display:grid}.wrong-stat-card{border:1px solid var(--border-soft);border-radius:var(--radius-lg);text-align:center;box-shadow:var(--shadow-card);background:#fff;padding:22px;transition:all .25s}.wrong-stat-card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-3px)}.wrong-stat-card .ws-value{color:var(--stu-dark);font-size:1.8rem;font-weight:700}.wrong-stat-card .ws-label{color:var(--text-sub);margin-top:4px;font-size:.82rem}.wrong-stat-card.unresolved .ws-value{color:#d9435a}.wrong-stat-card.mastered .ws-value{color:#4caf84}.wrong-question-card{border:1px solid var(--border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);background:#fff;margin-bottom:16px;transition:all .25s;overflow:hidden}.wrong-question-card:hover{box-shadow:var(--shadow-card-hover)}.wrong-question-card .wq-header{border-bottom:1px solid var(--border-soft);background:#d9dcd633;align-items:center;gap:12px;padding:16px 20px;display:flex}.wrong-question-card .wq-status-bar{border-radius:2px;flex-shrink:0;width:4px;height:36px}.wrong-question-card .wq-status-bar.unresolved{background:#e0576e}.wrong-question-card .wq-status-bar.mastered{background:#4caf84}.wrong-question-card .wq-status-bar.removed{background:#829ab1}.wrong-question-card .wq-body{padding:20px}.wrong-question-card .wq-content{color:var(--text-main);margin-bottom:14px;font-size:.95rem;line-height:1.6}.wrong-question-card .wq-meta{flex-wrap:wrap;gap:12px;margin-bottom:16px;display:flex}.wrong-question-card .wq-meta-tag{border-radius:6px;padding:4px 10px;font-size:.78rem;font-weight:500}.wrong-question-card .wq-meta-tag.course-tag{color:#2f6690;background:#2f669014}.wrong-question-card .wq-meta-tag.kp-tag{color:#16425b;background:#81c3d726}.wrong-question-card .wq-meta-tag.type-tag{color:#8b6bae;background:#8b6bae14}.wrong-question-card .wq-meta-tag.status-tag{font-size:.76rem}.wrong-question-card .wq-meta-tag.status-tag.unresolved{color:#d9435a;background:#e0576e1a}.wrong-question-card .wq-meta-tag.status-tag.mastered{color:#3d9b6f;background:#4caf841a}.wrong-question-card .wq-meta-tag.status-tag.removed{color:#829ab1;background:#829ab11a}.wrong-question-card .wq-actions{flex-wrap:wrap;gap:10px;display:flex}.btn-wq-action{font-size:.82rem;font-family:var(--font);border:1px solid var(--border-medium);color:var(--text-sub);cursor:pointer;background:#fff;border-radius:999px;padding:7px 18px;font-weight:500;transition:all .25s}.btn-wq-action:hover{color:var(--stu-primary);background:#2f66900f;border-color:#2f66904d}.btn-wq-action.mastered-btn:hover{color:#3d9b6f;background:#4caf8414;border-color:#4caf844d}.btn-wq-action.remove-btn:hover{color:#627d98;background:#829ab114;border-color:#829ab14d}.pagination{justify-content:center;align-items:center;gap:8px;margin-top:24px;display:flex}.pagination button{font-size:.85rem;font-family:var(--font);color:var(--stu-primary);border:1px solid var(--border-soft);border-radius:var(--radius-sm);cursor:pointer;background:#fff;padding:8px 18px;font-weight:500;transition:all .25s}.pagination button:hover:not(:disabled){background:#2f66900f;border-color:#2f669040}.pagination button:disabled{opacity:.4;cursor:not-allowed}.pagination .page-info{color:var(--text-sub);padding:0 8px;font-size:.85rem}.rec-hero{border-radius:var(--radius-xl);box-shadow:var(--shadow-card);background:linear-gradient(135deg,#eef6fb 0%,#e3f1f7 40%,#d9ecf5 100%);border:1px solid #81c3d733;padding:36px 40px;position:relative;overflow:hidden}.rec-hero .rec-hero-inner{z-index:1;position:relative}.rec-hero h2{color:var(--stu-dark);margin-bottom:8px;font-size:1.5rem;font-weight:700}.rec-hero p{color:var(--text-sub);max-width:600px;font-size:.95rem;line-height:1.6}.rec-section{margin-bottom:32px}.rec-section-title{color:var(--stu-dark);align-items:center;gap:10px;margin-bottom:16px;font-size:1.1rem;font-weight:700;display:flex}.rec-section-title .section-icon{font-size:1.3rem}.rec-section-title .section-count{color:var(--text-hint);background:#2f66900f;border-radius:999px;padding:3px 10px;font-size:.8rem;font-weight:500}.rec-card-kp{border:1px solid var(--border-soft);border-radius:0 var(--radius-lg) var(--radius-lg) 0;box-shadow:var(--shadow-card);background:#fff;border-left:4px solid #2f6690;margin-bottom:12px;padding:20px 24px;transition:all .25s}.rec-card-kp:hover{box-shadow:var(--shadow-card-hover);transform:translate(2px)}.rec-card-question{border:1px solid var(--border-soft);border-radius:0 var(--radius-lg) var(--radius-lg) 0;box-shadow:var(--shadow-card);background:#fff;border-left:4px solid #4caf84;margin-bottom:12px;padding:20px 24px;transition:all .25s}.rec-card-question:hover{box-shadow:var(--shadow-card-hover);transform:translate(2px)}.rec-card-video{border:1px solid var(--border-soft);border-radius:0 var(--radius-lg) var(--radius-lg) 0;box-shadow:var(--shadow-card);background:#fff;border-left:4px solid #e8913a;margin-bottom:12px;padding:20px 24px;transition:all .25s}.rec-card-video:hover{box-shadow:var(--shadow-card-hover);transform:translate(2px)}.rec-card-default{border:1px solid var(--border-soft);border-radius:0 var(--radius-lg) var(--radius-lg) 0;box-shadow:var(--shadow-card);background:#fff;border-left:4px solid #8b6bae;margin-bottom:12px;padding:20px 24px;transition:all .25s}.rec-card-default:hover{box-shadow:var(--shadow-card-hover);transform:translate(2px)}.rec-card-title{color:var(--text-main);margin-bottom:6px;font-size:1rem;font-weight:600}.rec-card-reason{color:var(--text-sub);margin-bottom:14px;font-size:.85rem;line-height:1.5}.rec-card-meta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.rec-card-priority{color:var(--text-hint);font-size:.78rem}.btn-rec-action{font-size:.82rem;font-family:var(--font);cursor:pointer;color:#fff;border:none;border-radius:999px;padding:7px 20px;font-weight:600;transition:all .25s}.btn-rec-action.btn-kp{background:linear-gradient(135deg,#2f6690,#3a7ca5);box-shadow:0 4px 12px #2f669040}.btn-rec-action.btn-question{background:linear-gradient(135deg,#4caf84,#3d9b6f);box-shadow:0 4px 12px #4caf8440}.btn-rec-action.btn-video{background:linear-gradient(135deg,#e8913a,#d97825);box-shadow:0 4px 12px #e8913a40}.btn-rec-action.btn-default{background:linear-gradient(135deg,#8b6bae,#7b5d9e);box-shadow:0 4px 12px #8b6bae40}.btn-rec-action:hover{transform:translateY(-2px);box-shadow:0 8px 20px #2f669059}.rec-overview-row{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin-bottom:28px;display:grid}.rec-overview-item{border:1px solid var(--border-soft);border-radius:var(--radius-lg);text-align:center;box-shadow:var(--shadow-card);cursor:pointer;background:#fff;padding:18px 20px;transition:all .25s}.rec-overview-item:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-3px)}.rec-overview-item.active{border-color:var(--stu-primary);box-shadow:0 0 0 3px #2f669014}.rec-overview-item .rov-icon{margin-bottom:8px;font-size:1.5rem}.rec-overview-item .rov-value{color:var(--stu-dark);font-size:1.4rem;font-weight:700}.rec-overview-item .rov-label{color:var(--text-sub);margin-top:2px;font-size:.78rem}@media (width<=1400px){.course-kg-layout{grid-template-columns:1fr}.course-kg-video-wrap{height:auto;min-height:0}.kg-video-area{flex:none}.kg-video-list{flex:0 auto;max-height:480px}}@media (width<=1024px){.charts-grid,.courses-grid{grid-template-columns:1fr}.course-hero-card .hero-inner{flex-direction:column}.course-kg-video-wrap{height:auto;min-height:0}.kg-video-list{max-height:440px}.search-box{width:100%}}@media (width<=768px){.dashboard-control-bar{flex-direction:column;align-items:flex-start}.dashboard-control-actions{flex-wrap:wrap;justify-content:space-between;width:100%}.dashboard-hero{padding:24px 20px}.dashboard-hero .hero-text h2{font-size:1.3rem}.dashboard-hero .hero-stats{gap:16px}.dashboard-hero .hero-stat-value{font-size:1.4rem}.stat-cards-row{grid-template-columns:repeat(2,1fr)}.charts-grid{grid-template-columns:1fr}.chart-container{height:260px}.courses-overview-bar{grid-template-columns:repeat(2,1fr)}.course-card-actions{grid-template-columns:1fr}.course-action-strip{justify-content:stretch}.course-action-btn{flex:100%}.course-kg-section{padding:16px}.course-kg-header{flex-direction:column}.course-kg-map-head{flex-direction:column;align-items:stretch}.course-kg-controls{justify-content:flex-start;overflow-x:auto}.course-kg-mind{height:62vh;min-height:520px}.course-video-search{grid-template-columns:1fr}.course-kg-video-wrap{min-height:0}.kg-video-item{grid-template-columns:74px minmax(0,1fr)}.kg-video-item-action{grid-column:2;justify-self:flex-start}.kg-video-cover{width:74px}.wrong-stats-row,.rec-overview-row{grid-template-columns:repeat(2,1fr)}.chapter-node{flex-direction:column;gap:10px}.chapter-node:before{left:21px}.page-header-row{flex-direction:column;align-items:flex-start}}.empty-panel{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:200px;padding:48px 24px;display:flex}.empty-panel-icon{opacity:.6;margin-bottom:16px}.empty-panel-title{color:var(--text-main);margin-bottom:8px;font-size:.95rem;font-weight:600}.empty-panel-desc{color:var(--text-hint);max-width:320px;font-size:.85rem;line-height:1.6}.insight-panel{border-radius:var(--radius-lg);background:linear-gradient(135deg,#2f669008,#81c3d70d);border:1px solid #81c3d726;flex-direction:column;justify-content:center;min-height:200px;padding:24px;display:flex}.insight-panel-title{color:var(--stu-dark);margin-bottom:14px;font-size:.95rem;font-weight:600}.insight-panel-list{flex-direction:column;gap:10px;padding:0;list-style:none;display:flex}.insight-panel-list li{color:var(--text-sub);padding-left:18px;font-size:.85rem;line-height:1.5;position:relative}.insight-panel-list li:before{content:"";background:var(--stu-primary);opacity:.5;border-radius:50%;width:6px;height:6px;position:absolute;top:8px;left:0}.skeleton{background:linear-gradient(90deg,#2f66900f 25%,#81c3d71f 50%,#2f66900f 75%) 0 0/200% 100%;border-radius:8px;animation:1.5s infinite skeleton-shimmer}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-card{border:1px solid var(--border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);background:#fff;padding:24px}.skeleton-line{border-radius:7px;height:14px;margin-bottom:12px}.skeleton-line.long{width:85%}.skeleton-line.medium{width:60%}.skeleton-line.short{width:35%}.skeleton-circle{border-radius:50%;width:80px;height:80px;margin:0 auto}.dashboard-control-bar{border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(14px)saturate(130%);background:#ffffffb8;border:1px solid #2f66901a;justify-content:space-between;align-items:center;gap:16px;padding:12px 16px;display:flex;box-shadow:0 10px 28px #16425b0f}.dashboard-control-actions{flex-shrink:0;align-items:center;gap:12px;display:flex}.course-selector{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.course-select-capsule{appearance:none;font-size:.82rem;font-family:var(--font);color:#fffc;cursor:pointer;white-space:nowrap;background:#ffffff1a;border:1px solid #fff3;border-radius:999px;padding:7px 18px;font-weight:500;transition:all .25s}.dashboard-control-bar .course-select-label{color:var(--text-sub)}.dashboard-control-bar .course-select-capsule{color:var(--stu-primary);background:#2f66900f;border-color:#2f669024}.dashboard-control-bar .course-select-capsule:hover{color:var(--stu-dark);background:#2f66901c;border-color:#2f669042}.dashboard-control-bar .course-select-capsule.active{color:#fff;background:linear-gradient(135deg,#2f6690,#3a7ca5);border-color:#2f669047;box-shadow:0 8px 20px #2f66902e}.dashboard-control-bar .btn-layout-settings{color:var(--stu-primary);background:#2f66900f;border-color:#2f669024}.dashboard-control-bar .btn-layout-settings:hover{color:#fff;background:linear-gradient(135deg,#2f6690,#3a7ca5)}.dashboard-control-bar .last-sync{color:var(--text-hint)}.course-select-capsule:hover{color:#fff;background:#ffffff2e}.course-select-capsule.active{color:#fff;background:#ffffff40;border-color:#fff6;font-weight:600;box-shadow:0 4px 14px #00000026}.course-select-label{color:#fff9;margin-right:4px;font-size:.78rem}.sort-select-wrap{align-items:center;gap:8px;display:flex}.sort-select-wrap label{color:var(--text-sub);white-space:nowrap;font-size:.82rem}.sort-select{font-size:.85rem;font-family:var(--font);color:var(--text-main);border:1px solid var(--border-soft);cursor:pointer;appearance:none;background:#fff url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23627D98' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") right 10px center no-repeat;border-radius:10px;padding:7px 32px 7px 14px;transition:border-color .25s}.sort-select:focus{border-color:#2f669066;outline:none;box-shadow:0 0 0 3px #2f66900f}.btn-layout-settings{font-size:.82rem;font-family:var(--font);color:#ffffffd9;cursor:pointer;background:#ffffff1f;border:1px solid #fff3;border-radius:999px;align-items:center;gap:6px;padding:7px 16px;font-weight:500;transition:all .25s;display:inline-flex}.btn-layout-settings:hover{color:#fff;background:#ffffff38}.btn-layout-settings svg{width:16px;height:16px}.dashboard-module{transition:opacity .2s,box-shadow .2s;position:relative}.dashboard-module.dragging{opacity:.5}.dashboard-module.drag-over{border-radius:var(--radius-lg);box-shadow:0 0 0 3px #2f669040}.dashboard-module .module-drag-handle{cursor:grab;width:28px;height:28px;color:var(--text-hint);opacity:0;z-index:10;border-radius:8px;justify-content:center;align-items:center;transition:opacity .2s,background .2s;display:flex;position:absolute;top:12px;right:12px}.dashboard-module:hover .module-drag-handle{opacity:1}.dashboard-module .module-drag-handle:hover{color:var(--stu-primary);background:#2f669014}.dashboard-module .module-drag-handle:active{cursor:grabbing}.dashboard-module .module-drag-handle svg{width:16px;height:16px}.module-pin-badge{color:var(--stu-primary);background:#2f669014;border-radius:999px;align-items:center;gap:4px;padding:2px 10px;font-size:.72rem;font-weight:500;display:inline-flex}.module-pin-badge svg{width:12px;height:12px}.section-label{color:var(--text-hint);text-transform:uppercase;letter-spacing:.06em;margin-bottom:12px;padding-left:4px;font-size:.8rem;font-weight:600}.layout-settings-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:5000;background:#16425b59;justify-content:center;align-items:center;animation:.25s fadeIn;display:flex;position:fixed;inset:0}.layout-settings-panel{border-radius:var(--radius-xl);box-shadow:var(--shadow-elevated);background:#fff;width:560px;max-width:92vw;max-height:80vh;animation:.3s cubic-bezier(.4,0,.2,1) slideUp;overflow-y:auto}@keyframes slideUp{0%{opacity:0;transform:translateY(24px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.layout-settings-header{border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:center;padding:24px 28px 16px;display:flex}.layout-settings-header h3{color:var(--stu-dark);font-size:1.1rem;font-weight:700}.btn-close-panel{cursor:pointer;width:36px;height:36px;color:var(--text-sub);background:#0000000a;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:1.2rem;transition:all .2s;display:flex}.btn-close-panel:hover{color:var(--text-main);background:#00000014}.layout-settings-body{padding:20px 28px}.layout-settings-section{margin-bottom:24px}.layout-settings-section h4{color:var(--text-sub);margin-bottom:12px;font-size:.88rem;font-weight:600}.layout-module-item{border-radius:var(--radius-sm);background:#d9dcd64d;align-items:center;gap:12px;margin-bottom:6px;padding:12px 14px;transition:all .25s;display:flex}.layout-module-item:hover{background:#2f66900a}.layout-module-item .module-order{width:28px;height:28px;color:var(--text-hint);background:#ffffffb3;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:.8rem;font-weight:600;display:flex}.layout-module-item .module-name{color:var(--text-main);flex:1;font-size:.88rem;font-weight:500}.layout-module-item .module-pinned-badge{color:var(--stu-primary);background:#2f669014;border-radius:999px;padding:2px 10px;font-size:.72rem;font-weight:500}.btn-module-toggle{border:1px solid var(--border-soft);cursor:pointer;background:#fff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:.85rem;transition:all .2s;display:flex}.btn-module-toggle:hover{background:#2f66900a;border-color:#2f66904d}.btn-module-toggle.hidden{opacity:.4}.btn-module-move{cursor:pointer;width:28px;height:28px;color:var(--text-hint);background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;font-size:.8rem;transition:all .2s;display:flex}.btn-module-move:hover{color:var(--stu-primary);background:#2f669014}.layout-settings-footer{border-top:1px solid var(--border-soft);gap:12px;padding:16px 28px 24px;display:flex}.btn-reset-layout{font-size:.85rem;font-family:var(--font);color:var(--text-sub);border:1px solid var(--border-soft);cursor:pointer;background:#fff;border-radius:999px;padding:10px 22px;font-weight:500;transition:all .25s}.btn-reset-layout:hover{color:#e0576e;border-color:#e0576e4d}.last-sync{color:var(--text-hint);align-items:center;gap:6px;margin-left:auto;font-size:.75rem;display:inline-flex}.last-sync svg{opacity:.5;width:14px;height:14px}.no-filter-results{text-align:center;color:var(--text-hint);padding:36px 24px;font-size:.9rem}.no-filter-results .btn-clear-filter{font-size:.82rem;font-family:var(--font);color:var(--stu-primary);cursor:pointer;background:#2f66900f;border:1px solid #2f669026;border-radius:999px;margin-top:10px;padding:6px 18px;font-weight:500;transition:all .25s;display:inline-block}.no-filter-results .btn-clear-filter:hover{background:#2f66901f}.portrait-placeholder{text-align:center;border:1px solid var(--border-soft);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);background:#fff;padding:60px 40px}.portrait-placeholder-icon{margin-bottom:20px}.portrait-placeholder-title{color:var(--stu-dark);margin-bottom:10px;font-size:1.25rem;font-weight:700}.portrait-placeholder-desc{color:var(--text-sub);margin-bottom:36px;font-size:.95rem;line-height:1.6}.portrait-feature-grid{text-align:left;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;display:grid}.portrait-feature-card{border:1px solid var(--border-soft);border-radius:var(--radius-lg);background:linear-gradient(135deg,#f7fafb,#eef4f6);padding:24px;transition:all .3s}.portrait-feature-card:hover{border-color:var(--stu-accent);box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.portrait-feature-card .portrait-feature-icon{margin-bottom:12px;font-size:1.8rem}.portrait-feature-card h4{color:var(--stu-dark);margin-bottom:8px;font-size:.95rem;font-weight:600}.portrait-feature-card p{color:var(--text-sub);margin:0;font-size:.85rem;line-height:1.6}.portrait-scores-grid{grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:20px;display:grid}.portrait-score-card{border:1px solid var(--border-soft);border-radius:var(--radius-lg);text-align:center;box-shadow:var(--shadow-card);background:#fff;padding:28px 24px}.portrait-score-label{color:var(--text-sub);margin-bottom:12px;font-size:.9rem}.portrait-score-value{color:var(--stu-dark);margin-bottom:16px;font-size:2.2rem;font-weight:700}.portrait-score-value.high{color:var(--stu-primary)}.portrait-score-bar{background:#16425b14;border-radius:3px;height:6px;overflow:hidden}.portrait-score-fill{background:linear-gradient(90deg, var(--stu-primary), var(--stu-accent));border-radius:3px;height:100%;transition:width .6s}.portrait-page-shell{flex-direction:column;gap:22px;display:flex}.portrait-hero{color:#fff;border-radius:var(--radius-xl);background:linear-gradient(120deg,#16425bfa,#2f6690eb 48%,#8b6bae9e 100%),linear-gradient(35deg,#4caf8447,#f0b85e29);justify-content:space-between;align-items:center;gap:24px;padding:34px 38px;display:flex;position:relative;overflow:hidden;box-shadow:0 18px 42px #16425b2e}.portrait-hero:before{content:"";opacity:.24;pointer-events:none;background:repeating-linear-gradient(135deg,#ffffff14 0 1px,#0000 1px 20px);position:absolute;inset:0}.portrait-hero>*{z-index:1;position:relative}.portrait-eyebrow{letter-spacing:.08em;color:#ffffff9e;text-transform:uppercase;margin-bottom:8px;font-size:.72rem;font-weight:700;display:inline-block}.portrait-hero h2{margin-bottom:8px;font-size:1.8rem;font-weight:800}.portrait-hero p{color:#ffffffd1;max-width:660px;font-size:.94rem;line-height:1.7}.portrait-hero-score{text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff21;border:1px solid #ffffff2e;border-radius:18px;min-width:132px;padding:18px 22px}.portrait-hero-score span{color:#ffffffa8;margin-bottom:4px;font-size:.78rem;display:block}.portrait-hero-score b{color:#fff;font-size:2rem;line-height:1;display:block}.portrait-score-card{text-align:left;position:relative;overflow:hidden}.portrait-score-card:before{content:"";background:linear-gradient(90deg,#2f6690,#81c3d7);height:4px;position:absolute;inset:0 0 auto}.portrait-score-card.research:before{background:linear-gradient(90deg,#8b6bae,#81c3d7)}.portrait-score-card.competition:before{background:linear-gradient(90deg,#e8913a,#f0b85e)}.portrait-score-card.learning{background:linear-gradient(#fff,#81c3d714)}.portrait-score-card.research{background:linear-gradient(#fff,#8b6bae14)}.portrait-score-card.competition{background:linear-gradient(#fff,#f0b85e1a)}.portrait-ability-stack{flex-direction:column;gap:14px;display:flex}.portrait-ability-panel{border:1px solid var(--border-soft);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);background:#ffffffeb;overflow:hidden}.portrait-ability-panel summary{cursor:pointer;grid-template-columns:48px 1fr auto;align-items:center;gap:16px;padding:18px 22px;list-style:none;display:grid}.portrait-ability-panel summary::-webkit-details-marker{display:none}.portrait-ability-panel summary:after{content:"展开";color:var(--text-sub);background:#2f66900f;border-radius:999px;justify-self:end;margin-left:12px;padding:4px 12px;font-size:.76rem}.portrait-ability-panel[open] summary:after{content:"收起"}.ability-icon{background:#2f669017;border-radius:15px;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.35rem;display:flex}.portrait-ability-panel.research .ability-icon{background:#8b6bae1a}.portrait-ability-panel.competition .ability-icon{background:#e8913a1f}.ability-summary-main{flex-direction:column;gap:4px;display:flex}.ability-title{color:var(--text-main);font-size:1rem;font-weight:700}.ability-desc{color:var(--text-sub);font-size:.82rem}.ability-score{color:var(--stu-dark);font-size:1.8rem;font-weight:800}.ability-panel-body{grid-template-columns:minmax(300px,.95fr) 1.05fr;gap:22px;padding:0 22px 22px;display:grid}.ability-radar{border-radius:var(--radius-lg);background:linear-gradient(135deg,#f7fafbf0,#eef4f6b8);border:1px solid #2f669014;height:330px;min-height:300px}.ability-dimension-list{flex-direction:column;justify-content:center;gap:12px;display:flex}.dimension-row-head{color:var(--text-main);justify-content:space-between;gap:16px;margin-bottom:6px;font-size:.86rem;display:flex}.dimension-row-head b{color:var(--stu-primary)}.dimension-track{background:#16425b12;border-radius:999px;height:8px;overflow:hidden}.dimension-track span{border-radius:inherit;background:linear-gradient(90deg,#2f6690,#81c3d7);height:100%;display:block}.portrait-ability-panel.research .dimension-track span{background:linear-gradient(90deg,#8b6bae,#81c3d7)}.portrait-ability-panel.competition .dimension-track span{background:linear-gradient(90deg,#e8913a,#f0b85e)}.ability-tags{flex-wrap:wrap;gap:8px;padding-top:4px;display:flex}.ability-tags span{color:var(--stu-primary);background:#2f669012;border-radius:999px;padding:4px 10px;font-size:.76rem}.ability-comment{color:var(--text-sub);border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:#f7fafbe6;margin:0;padding:12px 14px;font-size:.84rem;line-height:1.6}.portrait-knowledge-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.portrait-knowledge-card{border:1px solid var(--border-soft);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);background:#ffffffeb;padding:22px}.portrait-knowledge-card h3{color:var(--stu-dark);margin-bottom:14px;font-size:1rem;font-weight:700}.portrait-kp-row{color:var(--text-sub);border-bottom:1px solid #16425b12;justify-content:space-between;align-items:center;gap:14px;padding:10px 0;font-size:.86rem;display:flex}.portrait-kp-row:last-child{border-bottom:0}.portrait-kp-row b{color:var(--stu-primary)}.ai-chat-placeholder{text-align:center;border:1px solid var(--border-soft);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);background:#fff;padding:60px 40px}.ai-chat-placeholder-icon{margin-bottom:20px}.ai-chat-placeholder-title{color:var(--stu-dark);margin-bottom:10px;font-size:1.25rem;font-weight:700}.ai-chat-placeholder-desc{color:var(--text-sub);margin-bottom:36px;font-size:.95rem;line-height:1.6}.ai-chat-feature-grid{text-align:left;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px;display:grid}.ai-chat-feature-card{border:1px solid var(--border-soft);border-radius:var(--radius-lg);background:linear-gradient(135deg,#f7fafb,#eef4f6);padding:24px;transition:all .3s}.ai-chat-feature-card:hover{border-color:var(--stu-accent);box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.ai-chat-feature-card .ai-chat-feature-icon{margin-bottom:12px;font-size:1.8rem}.ai-chat-feature-card h4{color:var(--stu-dark);margin-bottom:8px;font-size:.95rem;font-weight:600}.ai-chat-feature-card p{color:var(--text-sub);margin:0;font-size:.85rem;line-height:1.6}.student-profile-shell{flex-direction:column;gap:22px;display:flex}.profile-hero-card{color:#fff;border-radius:var(--radius-xl);background:linear-gradient(118deg,#16425bfa,#2f6690eb 52%,#4caf847a 100%),linear-gradient(35deg,#f0b85e2e,#f0b85e00);grid-template-columns:128px 1fr;align-items:center;gap:26px;padding:34px 38px;display:grid;position:relative;overflow:hidden;box-shadow:0 18px 42px #16425b2e}.profile-hero-card:before{content:"";opacity:.22;pointer-events:none;background:linear-gradient(90deg,#ffffff14,#fff0 34%),repeating-linear-gradient(135deg,#ffffff14 0 1px,#0000 1px 20px);position:absolute;inset:0}.profile-hero-card>*{z-index:1;position:relative}.profile-avatar-upload{color:#fff;cursor:pointer;background:#ffffff1f;border:1px solid #ffffff47;border-radius:28px;width:116px;height:116px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff14}.profile-avatar-upload img,.profile-avatar-upload>span{object-fit:cover;color:#fff;justify-content:center;align-items:center;width:100%;height:100%;font-size:2rem;font-weight:800;display:flex}.profile-avatar-upload em{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#16425bb8;padding:8px 0;font-size:.8rem;font-style:normal;position:absolute;bottom:0;left:0;right:0}.avatar-crop-overlay{z-index:1200;-webkit-backdrop-filter:blur(8px);background:#081c2b75;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.avatar-crop-dialog{border:1px solid var(--border-soft);background:#fff;border-radius:20px;width:min(420px,100%);overflow:hidden;box-shadow:0 28px 80px #081c2b3d}.avatar-crop-head{border-bottom:1px solid var(--border-soft);background:linear-gradient(135deg,#2f669014,#4caf8414);justify-content:space-between;align-items:flex-start;gap:16px;padding:18px 20px 14px;display:flex}.avatar-crop-head b{color:var(--stu-dark);margin-bottom:4px;font-size:1rem;display:block}.avatar-crop-head span{color:var(--text-sub);font-size:.8rem}.avatar-crop-icon-btn{width:30px;height:30px;color:var(--stu-primary);cursor:pointer;background:#fff;border:1px solid #2f669024;border-radius:10px;font-size:18px;line-height:1}.avatar-crop-stage{cursor:grab;touch-action:none;background:#f7fafb;border-radius:18px;width:320px;height:320px;margin:22px auto 16px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #2f66901a}.avatar-crop-stage:active{cursor:grabbing}.avatar-crop-stage canvas{width:320px;height:320px;display:block}.avatar-crop-stage:before{content:"";pointer-events:none;background:linear-gradient(#081c2b75,#081c2b75) top/100% 50px no-repeat,linear-gradient(#081c2b75,#081c2b75) bottom/100% 50px no-repeat,linear-gradient(#081c2b75,#081c2b75) 0 50px/50px 220px no-repeat,linear-gradient(#081c2b75,#081c2b75) right 50px/50px 220px no-repeat;position:absolute;inset:0}.avatar-crop-frame{pointer-events:none;border:2px solid #fff;border-radius:18px;width:220px;height:220px;position:absolute;top:50px;left:50px;box-shadow:0 0 0 1px #2f669047,0 0 26px #0000002e}.avatar-crop-zoom{grid-template-columns:48px minmax(0,1fr);align-items:center;gap:12px;padding:0 24px 18px;display:grid}.avatar-crop-zoom span{color:var(--text-sub);font-size:.82rem;font-weight:650}.avatar-crop-zoom input{width:100%;accent-color:var(--stu-primary)}.avatar-crop-actions{border-top:1px solid var(--border-soft);background:#f7fafbb8;justify-content:flex-end;gap:10px;padding:16px 20px 20px;display:flex}.profile-eyebrow{color:#ffffff9e;letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px;font-size:.72rem;font-weight:700;display:inline-block}.profile-hero-main h1{color:#fff;margin-bottom:8px;font-size:1.85rem;font-weight:800}.profile-hero-main p{color:#ffffffd1;font-size:.94rem;line-height:1.6}.profile-hero-meta{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-top:18px;display:grid}.profile-info-pill{border-radius:var(--radius-sm);background:#ffffff1f;border:1px solid #ffffff29;flex-direction:column;gap:4px;min-width:0;padding:11px 13px;display:flex}.profile-info-pill span{color:#ffffff94;font-size:.75rem}.profile-info-pill b{color:#fff;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:650;overflow:hidden}.profile-grid{grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);align-items:start;gap:22px;display:grid}.profile-side-stack{flex-direction:column;gap:22px;display:flex}.profile-panel{border:1px solid var(--border-soft);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);background:#ffffffeb;padding:24px}.profile-panel-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.profile-panel-header h2{color:var(--stu-dark);margin-bottom:5px;font-size:1.05rem;font-weight:750}.profile-panel-header p{color:var(--text-sub);font-size:.84rem;line-height:1.5}.profile-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.profile-form.compact{grid-template-columns:1fr}.profile-form label{flex-direction:column;gap:7px;min-width:0;display:flex}.profile-form label span{color:var(--text-sub);font-size:.8rem;font-weight:600}.profile-form input,.profile-form select{width:100%;height:42px;color:var(--text-main);font-family:var(--font);border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:#fff;outline:none;padding:0 13px;font-size:.9rem;transition:border-color .2s,box-shadow .2s}.profile-form select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23627D98' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat}.profile-form input:focus,.profile-form select:focus{border-color:#2f66906b;box-shadow:0 0 0 3px #2f669014}.profile-form input:disabled{color:var(--text-hint);cursor:not-allowed;background:#d9dcd647}.profile-form-actions{grid-column:1/-1;justify-content:flex-end;padding-top:4px;display:flex}.btn-profile-primary,.btn-profile-secondary{min-width:112px;height:40px;font-family:var(--font);cursor:pointer;border:none;border-radius:999px;justify-content:center;align-items:center;padding:0 22px;font-size:.88rem;font-weight:650;transition:transform .22s,box-shadow .22s,background .22s;display:inline-flex}.btn-profile-primary{color:#fff;background:linear-gradient(135deg,#2f6690,#3a7ca5);box-shadow:0 8px 20px #2f669033}.btn-profile-primary:hover{transform:translateY(-1px);box-shadow:0 12px 28px #2f669047}.btn-profile-secondary{color:#e0576e;background:#e0576e14;border:1px solid #e0576e29}.btn-profile-secondary:hover{background:#e0576e21}.profile-account-list{grid-template-columns:1fr;gap:10px;display:grid}.profile-panel .profile-info-pill{border-color:var(--border-soft);background:#f7fafbe0}.profile-panel .profile-info-pill span{color:var(--text-hint)}.profile-panel .profile-info-pill b{color:var(--text-main)}@media (width<=768px){.portrait-scores-grid{grid-template-columns:1fr}.portrait-hero{flex-direction:column;align-items:flex-start;padding:26px 22px}.portrait-hero-score{text-align:left;width:100%}.ability-panel-body{grid-template-columns:1fr}.portrait-ability-panel summary{grid-template-columns:44px 1fr}.portrait-ability-panel summary:after{grid-column:2;justify-self:start;margin-left:0}.ability-score{grid-column:2;font-size:1.45rem}.portrait-knowledge-grid,.portrait-feature-grid,.ai-chat-feature-grid{grid-template-columns:1fr}.profile-hero-card{grid-template-columns:1fr;padding:26px 22px}.profile-grid,.profile-form{grid-template-columns:1fr}.profile-form-actions{justify-content:stretch}.btn-profile-primary,.btn-profile-secondary{width:100%}.avatar-crop-overlay{padding:12px}.avatar-crop-actions{flex-direction:column-reverse}.page-header{margin-bottom:20px}.page-header .page-title{word-break:break-word;font-size:clamp(1.25rem,5vw,1.45rem)}.page-header .page-subtitle{font-size:.86rem}.dashboard-content,.dashboard-hero,.dashboard-hero .hero-content,.dashboard-hero .hero-text,.course-hero-card,.course-hero-card .hero-inner,.course-hero-card .hero-info,.course-card,.course-card-mini,.chart-card,.course-kg-section,.course-kg-layout,.course-kg-map-wrap,.course-kg-video-wrap,.portrait-placeholder,.ai-chat-placeholder,.profile-hero-card,.profile-panel,.profile-form label{min-width:0;max-width:100%}.dashboard-hero,.course-hero-card,.rec-hero,.portrait-placeholder,.ai-chat-placeholder,.profile-hero-card{border-radius:18px;padding:22px 18px}.stat-cards-row,.courses-overview-bar,.wrong-stats-row,.rec-overview-row,.course-metrics-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.charts-grid,.courses-grid,.course-kg-layout,.portrait-feature-grid,.ai-chat-feature-grid,.profile-grid,.portrait-knowledge-grid,.ability-panel-body{grid-template-columns:1fr}.chart-card{padding:16px;overflow:hidden}.chart-card .chart-header{flex-direction:column;align-items:flex-start;gap:4px}.chart-container,.chart-container-sm,.chart-container-lg,.ability-radar{width:100%;min-width:0;height:clamp(220px,64vw,300px);min-height:220px}.courses-overview-item,.stat-card-enhanced,.course-card .card-body,.profile-panel,.portrait-knowledge-card,.ai-chat-feature-card{padding:16px}.search-box{width:100%;min-width:0}.filter-bar,.course-kg-controls,.kg-quick-strip{-webkit-overflow-scrolling:touch;scrollbar-width:thin;flex-wrap:nowrap;max-width:100%;overflow-x:auto}.filter-chip,.kg-control-btn,.kg-quick-kp{flex:none}.sort-select-wrap,.sort-select{width:100%}.course-card .card-title-row,.course-card .card-meta,.wrong-question-card .wq-header,.profile-panel-header,.portrait-ability-panel summary{min-width:0}.course-card .card-course-name,.course-card .card-desc,.course-card .card-course-code,.wrong-question-card .wq-content,.portrait-kp-row,.dimension-row-head,.profile-info-pill b{overflow-wrap:anywhere}.course-hero-card .hero-chart-area{width:min(180px,100%);height:180px}.course-kg-mind{height:min(62vh,560px);min-height:420px}.course-kg-video-wrap{min-height:0}.kg-video-list{max-height:none}.kg-video-item{grid-template-columns:64px minmax(0,1fr)}.kg-video-cover{width:64px}.pagination{flex-wrap:wrap;gap:8px}.pagination button,.btn-wq-action,.course-action-btn,.btn-quick-action{min-height:40px}.layout-settings-overlay,.avatar-crop-overlay,.exam-leave-overlay{padding:12px}.layout-settings-panel,.avatar-crop-dialog,.exam-leave-dialog{width:min(100%,100vw - 24px);max-width:calc(100vw - 24px);max-height:calc(100vh - 24px)}.layout-settings-header,.layout-settings-body,.layout-settings-footer,.exam-leave-header,.exam-leave-body,.exam-leave-footer{padding-left:18px;padding-right:18px}.layout-settings-footer,.exam-leave-stats{flex-direction:column}.avatar-crop-stage{--avatar-crop-size:min(320px, calc(100vw - 56px));--avatar-crop-frame:min(220px, calc(var(--avatar-crop-size) - 72px));--avatar-crop-edge:calc((100% - var(--avatar-crop-frame)) / 2);width:var(--avatar-crop-size);height:var(--avatar-crop-size)}.avatar-crop-stage canvas{width:var(--avatar-crop-size);height:var(--avatar-crop-size)}.avatar-crop-stage:before{background:linear-gradient(#081c2b75, #081c2b75) top / 100% var(--avatar-crop-edge) no-repeat, linear-gradient(#081c2b75, #081c2b75) bottom / 100% var(--avatar-crop-edge) no-repeat, linear-gradient(#081c2b75, #081c2b75) left var(--avatar-crop-edge) / var(--avatar-crop-edge) var(--avatar-crop-frame) no-repeat, linear-gradient(#081c2b75, #081c2b75) right var(--avatar-crop-edge) / var(--avatar-crop-edge) var(--avatar-crop-frame) no-repeat}.avatar-crop-frame{left:var(--avatar-crop-edge);top:var(--avatar-crop-edge);width:var(--avatar-crop-frame);height:var(--avatar-crop-frame)}}@media (width<=430px){.stat-cards-row,.courses-overview-bar,.wrong-stats-row,.rec-overview-row,.course-metrics-row,.profile-hero-meta{grid-template-columns:1fr}.course-card .card-title-row,.course-card-mini,.kp-list-card,.portrait-kp-row,.dimension-row-head{flex-direction:column;align-items:flex-start}.course-card .card-course-code{white-space:normal}}.exam-leave-overlay{z-index:10000;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.exam-leave-mask{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;position:absolute;inset:0}.exam-leave-dialog{background:#fff;border-radius:16px;width:440px;max-width:92vw;max-height:90vh;animation:.25s ease-out examLeaveDialogIn;position:relative;overflow-y:auto;box-shadow:0 24px 80px #00000040}@keyframes examLeaveDialogIn{0%{opacity:0;transform:scale(.92)translateY(16px)}to{opacity:1;transform:scale(1)translateY(0)}}.exam-leave-header{padding:24px 28px 0}.exam-leave-header h3{color:#1e293b;margin:0 0 4px;font-size:18px;font-weight:700}.exam-leave-subtitle{color:#64748b;margin:0;font-size:13px}.exam-leave-body{padding:16px 28px}.exam-leave-stats{gap:16px;margin-bottom:12px;display:flex}.exam-leave-stat{text-align:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;flex:1;padding:12px}.exam-leave-stat-label{color:#94a3b8;margin-bottom:4px;font-size:12px;display:block}.exam-leave-stat-value{color:#334155;font-size:16px;font-weight:700}.exam-leave-warning{color:#f59e0b;text-align:center;margin:8px 0;font-size:13px}.exam-leave-notice{color:#64748b;text-align:center;margin:8px 0 0;font-size:13px;line-height:1.5}.exam-leave-footer{flex-direction:column;gap:8px;padding:0 28px 24px;display:flex}.exam-leave-btn{cursor:pointer;border:none;border-radius:10px;width:100%;padding:12px 20px;font-size:14px;font-weight:600;transition:all .2s}.exam-leave-btn:disabled{cursor:not-allowed}.exam-leave-btn-continue{color:#2563eb;background:#eff6ff}.exam-leave-btn-continue:hover:not(:disabled){background:#dbeafe}.exam-leave-btn-submit{color:#fff;background:#2563eb}.exam-leave-btn-submit:hover:not(:disabled){background:#1d4ed8}.exam-leave-btn-save{color:#16a34a;background:#f0fdf4;border:1px solid #bbf7d0}.exam-leave-btn-save:hover:not(:disabled){background:#dcfce7}.exam-leave-btn-abandon{color:#94a3b8;background:#fff;border:1px solid #e2e8f0}.exam-leave-btn-abandon:hover:not(:disabled){color:#ef4444;background:#fef2f2;border-color:#fecaca}.student-home-shell{gap:14px}.student-home-top{grid-template-columns:minmax(0,1fr) 300px;align-items:stretch;gap:14px;display:grid}.student-home-primary,.home-student-card,.home-panel{border:1px solid var(--border-soft);background:#fffffff0;border-radius:8px;box-shadow:0 8px 22px #16425b0f}.student-home-primary{padding:18px}.student-home-title-row{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px;display:flex}.home-eyebrow{color:var(--stu-primary);margin-bottom:4px;font-size:.72rem;font-weight:750;display:block}.student-home-title-row h2{color:var(--stu-dark);margin:0 0 5px;font-size:1.35rem;line-height:1.25}.student-home-title-row p{color:var(--text-sub);margin:0;font-size:.86rem;line-height:1.5}.home-sync-time{color:var(--text-hint);background:#2f66900f;border:1px solid #2f66901a;border-radius:999px;flex:none;padding:5px 10px;font-size:.76rem}.home-metric-card{background:linear-gradient(#f7fafbeb,#fff);border:1px solid #2f66901a;border-radius:8px;min-width:0;padding:12px}.home-metric-card span,.home-metric-card em{color:var(--text-hint);text-overflow:ellipsis;white-space:nowrap;font-size:.74rem;font-style:normal;display:block;overflow:hidden}.home-metric-card b{color:var(--stu-dark);margin:4px 0 2px;font-size:1.32rem;line-height:1.15;display:block}.home-metric-card.green b{color:#2c7a63}.home-metric-card.amber b{color:#a4691d}.home-metric-card.red b{color:#b64c3d}.home-quick-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.home-quick-card{text-align:left;min-width:0;min-height:68px;color:var(--text-main);cursor:pointer;background:#f7fafbd1;border:1px solid #2f66901f;border-radius:8px;padding:12px;transition:border-color .2s,box-shadow .2s,transform .2s}.home-quick-card:hover,.home-course-card:hover,.home-rec-item:hover{border-color:#2f66904d;transform:translateY(-1px);box-shadow:0 8px 18px #2f669014}.home-quick-card.primary{color:#fff;background:linear-gradient(135deg,#2f6690,#3a7ca5);border-color:#0000}.home-quick-card span,.home-quick-card b{display:block}.home-quick-card span{color:currentColor;opacity:.72;margin-bottom:5px;font-size:.76rem}.home-quick-card b{text-overflow:ellipsis;white-space:nowrap;font-size:.94rem;overflow:hidden}.home-student-card{flex-direction:column;align-items:center;padding:18px 16px;display:flex}.home-student-avatar{color:#fff;background:linear-gradient(135deg,#2f6690,#4caf84);border-radius:8px;width:72px;height:72px;margin-bottom:10px;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff38}.home-student-avatar img,.home-student-avatar span{object-fit:cover;justify-content:center;align-items:center;width:100%;height:100%;font-size:1.6rem;font-weight:800;display:flex}.home-student-name{max-width:100%;color:var(--stu-dark);text-overflow:ellipsis;white-space:nowrap;font-size:1.05rem;font-weight:800;overflow:hidden}.home-student-role{color:var(--text-hint);margin-top:2px;font-size:.76rem}.home-student-info-list{gap:8px;width:100%;margin-top:14px;display:grid}.home-student-info-row{background:#f7fafbd1;border:1px solid #2f669014;border-radius:8px;grid-template-columns:74px minmax(0,1fr);align-items:center;gap:8px;padding:8px 10px;display:grid}.home-student-info-row span{color:var(--text-hint);font-size:.75rem}.home-student-info-row b{min-width:0;color:var(--text-main);text-align:right;text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;font-weight:700;overflow:hidden}.home-student-progress{border-top:1px solid var(--border-soft);width:100%;margin-top:14px;padding-top:12px}.home-student-progress>div:first-child{justify-content:space-between;align-items:center;gap:8px;margin-bottom:7px;display:flex}.home-student-progress span{color:var(--text-sub);font-size:.76rem}.home-student-progress b{color:#2c7a63;font-size:.9rem}.home-two-column{grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);gap:14px;display:grid}.home-two-column.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.home-panel{min-width:0;padding:16px}.home-panel-head{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:12px;display:flex}.home-panel-head h3{color:var(--stu-dark);margin:0 0 4px;font-size:1rem;line-height:1.25}.home-panel-head p{color:var(--text-hint);margin:0;font-size:.78rem;line-height:1.45}.home-panel-link{min-height:30px;color:var(--stu-primary);font-family:var(--font);cursor:pointer;background:#2f66900f;border:1px solid #2f66901f;border-radius:999px;flex:none;padding:0 12px;font-size:.78rem;font-weight:700}.home-rec-list,.home-task-list,.home-weak-list{gap:8px;display:grid}.home-rec-item,.home-course-card{text-align:left;cursor:pointer;background:#f7fafbbd;border:1px solid #2f66901a;border-radius:8px;width:100%;min-width:0;transition:border-color .2s,box-shadow .2s,transform .2s}.home-rec-item{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:6px 9px;padding:10px;display:grid}.home-rec-tag{min-height:24px;color:var(--stu-primary);background:#2f669014;border-radius:999px;align-items:center;padding:0 8px;font-size:.72rem;font-weight:700;display:inline-flex}.home-rec-item b{min-width:0;color:var(--text-main);text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;overflow:hidden}.home-rec-item em{color:var(--text-hint);text-overflow:ellipsis;white-space:nowrap;grid-column:1/-1;font-size:.74rem;font-style:normal;overflow:hidden}.home-task-item{background:#f7fafbbd;border:1px solid #2f66901a;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;display:grid}.home-task-item b,.home-task-item span{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.home-task-item b{color:var(--text-main);font-size:.86rem}.home-task-item span{color:var(--text-hint);margin-top:3px;font-size:.74rem}.home-task-item span.overdue{color:#b64c3d}.home-task-item button{color:#fff;min-height:32px;font-family:var(--font);cursor:pointer;background:linear-gradient(135deg,#2f6690,#3a7ca5);border:none;border-radius:8px;padding:0 12px;font-size:.78rem;font-weight:700}.home-course-card{padding:12px}.home-course-card.has-thumb{text-align:left;grid-template-columns:48px minmax(0,1fr);align-items:start;gap:10px;display:grid}.home-course-card .home-course-thumb{background:linear-gradient(135deg,#2f6690,#3a7ca5);border-radius:6px;flex-shrink:0;grid-row:1/-1;width:48px;height:64px;overflow:hidden;box-shadow:0 2px 8px #16425b1f}.home-course-card .home-course-thumb img{object-fit:cover;width:100%;height:100%;display:block}.home-course-card.has-thumb .home-course-title-row,.home-course-card.has-thumb .home-course-meta,.home-course-card.has-thumb .home-progress-bar,.home-course-card.has-thumb em{grid-column:2}.home-course-title-row,.home-course-meta,.home-weak-item,.home-portrait-score-grid div{justify-content:space-between;align-items:center;gap:10px;display:flex}.home-course-title-row b{min-width:0;color:var(--stu-dark);text-overflow:ellipsis;white-space:nowrap;font-size:.92rem;overflow:hidden}.home-course-title-row span{color:#2c7a63;font-size:.86rem;font-weight:800}.home-progress-bar{background:#2f669017;border-radius:999px;height:7px;overflow:hidden}.home-course-card .home-progress-bar{margin:9px 0}.home-progress-bar i{border-radius:inherit;background:linear-gradient(90deg,#4caf84,#3a7ca5);height:100%;display:block}.home-course-meta span,.home-course-card em{min-width:0;color:var(--text-hint);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;font-style:normal;overflow:hidden}.home-course-card em{margin-top:7px;display:block}.home-weak-item{background:#f7fafbbd;border:1px solid #2f66901a;border-radius:8px;padding:9px 10px}.home-weak-item span{min-width:0;color:var(--text-main);text-overflow:ellipsis;white-space:nowrap;font-size:.84rem;overflow:hidden}.home-weak-item b{color:#a4691d;font-size:.84rem}.home-portrait-score-grid{gap:8px;display:grid}.home-portrait-score-grid div{background:#f7fafbbd;border:1px solid #2f66901a;border-radius:8px;padding:10px}.home-portrait-score-grid span{color:var(--text-sub);font-size:.8rem}.home-portrait-score-grid b{color:var(--stu-dark);font-size:.9rem}.home-empty-inline{color:var(--text-hint);text-align:center;background:#f7fafb9e;border:1px dashed #2f669029;border-radius:8px;padding:18px 12px;font-size:.84rem}@media (width<=1180px){.student-home-top,.home-two-column,.home-two-column.compact{grid-template-columns:1fr}.home-student-card{align-items:stretch}.home-student-avatar,.home-student-name,.home-student-role{align-self:center}}@media (width<=768px){.student-home-primary,.home-student-card,.home-panel{padding:14px}.student-home-title-row,.home-panel-head{flex-direction:column;align-items:stretch}.home-sync-time,.home-panel-link{width:fit-content}.home-metric-grid,.home-quick-grid,.home-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=430px){.home-metric-grid,.home-quick-grid,.home-course-grid,.home-task-item,.home-student-info-row{grid-template-columns:1fr}.home-student-info-row b{text-align:left}}@media (width<=1024px){.course-card-cover-panel{flex:0 0 200px}}@media (width<=768px){.course-card-h{grid-template-columns:minmax(0,1fr) 148px;grid-template-areas:"main cover""progress progress";min-height:auto;display:grid}.course-card-main{grid-area:main;min-height:176px;padding:18px 18px 12px}.course-card-progress{border-left:none;border-top:1px solid var(--stu-border-light-v2,#2f669012);flex-flow:wrap;flex:none;grid-area:progress;align-items:center;gap:10px;padding:12px 18px}.course-card-progress .progress-bar-h{flex:100px;min-width:0}.course-card-actions-h{flex-direction:row;flex:none;margin-top:0;margin-left:auto}.btn-enter-course-h,.btn-course-wrong-book-h,.btn-course-knowledge-graph-h{width:auto;min-width:90px}.course-card-cover-panel{border-left:1px solid var(--stu-border-light-v2,#2f669012);background:linear-gradient(145deg,#f7fafc,#e8f1f7);grid-area:cover;min-width:0;min-height:176px;box-shadow:inset 10px 0 24px #2f669009}.course-card-cover-panel:before{display:none}.course-card-cover-panel img{filter:drop-shadow(0 7px 12px #16425b2e);border-radius:3px;width:auto;max-width:78%;height:142px;max-height:calc(100% - 24px)}}@media (width<=430px){.course-card-h{grid-template-columns:minmax(0,1fr) 108px}.course-card-main{min-height:154px;padding:14px 14px 10px}.course-card-progress{padding:10px 14px}.course-card-cover-panel{min-height:154px}.course-card-cover-panel img{width:auto;max-width:82%;height:112px;max-height:calc(100% - 20px)}.course-card-actions-h{width:100%;margin-left:0}.btn-enter-course-h,.btn-course-wrong-book-h,.btn-course-knowledge-graph-h{flex:1}}.course-card-h:focus-visible,.home-course-card:focus-visible,.stat-card:focus-visible,.btn-enter-course-h:focus-visible,.btn-course-wrong-book-h:focus-visible,.btn-enter-course:focus-visible,.btn-retry:focus-visible,.btn-course-wrong-book:focus-visible{outline:2px solid var(--stu-primary);outline-offset:2px}@media (prefers-reduced-motion:reduce){.course-card-h,.course-card-h:hover,.course-card-h:hover .course-card-cover-panel img,.course-card,.course-card:hover,.stat-card,.stat-card:hover,.home-course-card,.home-course-card:hover,.course-progress-bar .progress-fill,.progress-bar-h-fill,.loading-spinner,.skeleton{transition:none!important;animation:none!important;transform:none!important}}.diag-page-shell{max-width:960px;margin:0 auto;padding:24px 20px 60px}.diag-hero{justify-content:space-between;align-items:flex-start;margin-bottom:24px;display:flex}.diag-hero h2{color:var(--stu-dark,#1e293b);margin:4px 0 8px;font-size:1.5rem;font-weight:750}.diag-hero p{color:var(--text-sub,#64748b);max-width:560px;font-size:.9rem}.diag-eyebrow{text-transform:uppercase;letter-spacing:.06em;color:var(--stu-primary,#2563eb);background:#2563eb14;border-radius:6px;padding:3px 10px;font-size:.72rem;font-weight:700}.diag-mode-tabs{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.diag-mode-tab{border:1px solid var(--border-soft,#e2e8f0);color:var(--text-sub,#64748b);cursor:pointer;background:#fff;border-radius:20px;padding:8px 18px;font-size:.88rem;font-weight:600;transition:all .2s}.diag-mode-tab:hover{border-color:var(--stu-primary,#2563eb);color:var(--stu-primary,#2563eb)}.diag-mode-tab.active{background:var(--stu-primary,#2563eb);color:#fff;border-color:var(--stu-primary,#2563eb)}.diag-actions{margin-bottom:20px}.diag-run-btn{background:linear-gradient(135deg, var(--stu-primary,#2563eb), #4f46e5);color:#fff;cursor:pointer;border:none;border-radius:10px;padding:10px 28px;font-size:.95rem;font-weight:700;transition:opacity .2s}.diag-run-btn:disabled{opacity:.5;cursor:not-allowed}.diag-run-btn:hover:not(:disabled){opacity:.9}.diag-result-card{border:1px solid var(--border-soft,#e2e8f0);background:#fff;border-radius:16px;min-height:200px;padding:24px}.diag-loading{text-align:center;color:var(--text-sub,#64748b);padding:48px 20px;font-size:.95rem}.diag-empty{text-align:center;color:var(--text-sub,#94a3b8);padding:48px 20px}.diag-error{text-align:center;color:#ef4444;padding:32px 20px}.diag-retry-btn{color:#ef4444;cursor:pointer;background:#fff;border:1px solid #ef4444;border-radius:8px;margin-top:12px;padding:8px 20px;font-size:.88rem}.diag-result-header{border-bottom:1px solid var(--border-soft,#e2e8f0);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:20px;padding-bottom:12px;display:flex}.diag-mode-badge{color:var(--stu-primary,#2563eb);background:#2563eb14;border-radius:12px;padding:4px 12px;font-size:.78rem;font-weight:700}.diag-meta{color:var(--text-sub,#94a3b8);font-size:.75rem}.diag-mastery-bar{background:#f1f5f9;border-radius:14px;height:28px;margin-bottom:20px;position:relative;overflow:hidden}.diag-mastery-fill{border-radius:14px;height:100%;transition:width .6s}.diag-mastery-bar span{color:#fff;text-shadow:0 1px 2px #0003;font-size:.82rem;font-weight:700;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.diag-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;margin-bottom:20px;display:grid}.diag-item{background:var(--bg-soft,#f8fafc);border-radius:10px;padding:12px 14px}.diag-item-label{color:var(--text-sub,#94a3b8);text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px;font-size:.72rem;font-weight:600;display:block}.diag-item-value{color:var(--stu-dark,#1e293b);font-size:.95rem;font-weight:700}.diag-section{margin-bottom:20px}.diag-section h4{color:var(--stu-dark,#1e293b);border-bottom:1px solid var(--border-soft,#e2e8f0);margin-bottom:10px;padding-bottom:6px;font-size:.88rem;font-weight:700}.diag-list{margin:0;padding:0;list-style:none}.diag-list li{background:var(--bg-soft,#f8fafc);color:var(--text-main,#334155);border-radius:8px;margin-bottom:4px;padding:8px 12px;font-size:.88rem;line-height:1.5}.diag-intervention-card{border:1px solid var(--border-soft,#e2e8f0);background:#fff;border-radius:10px;margin-bottom:8px;padding:12px 14px}.diag-action{color:var(--stu-primary,#2563eb);margin-bottom:6px;font-size:.9rem;font-weight:700;display:block}.diag-params{color:var(--text-sub,#64748b);background:var(--bg-soft,#f8fafc);border-radius:6px;margin:0;padding:8px 10px;font-size:.8rem;overflow-x:auto}.diag-narrative{color:var(--text-main,#334155);font-size:.92rem;line-height:1.7}.diag-growth-item{background:var(--bg-soft,#f8fafc);border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:4px;padding:8px 12px;font-size:.88rem;display:flex}.diag-delta{font-size:.9rem;font-weight:700}.diag-pre{background:var(--bg-soft,#f8fafc);border-radius:8px;margin:0;padding:12px;font-size:.8rem;overflow-x:auto}.diag-section.diag-meta{color:var(--text-sub,#94a3b8);border-top:1px solid var(--border-soft,#e2e8f0);padding-top:12px;font-size:.78rem}.lw-root{--lw-primary:var(--stu-primary,#2f6690);--lw-accent:#6366f1;--lw-bg:var(--page-bg,#f5f8fa);--lw-card:var(--card-bg,#fff);--lw-text:var(--text-main,#102a43);--lw-sub:var(--text-sub,#627d98);--lw-border:var(--border-soft,#16425b1a);--lw-radius:var(--radius-md,14px)}.lw-icon{vertical-align:middle;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.lw-icon-svg{width:100%;height:100%}.lw-section{margin-bottom:20px}.page-header-left{flex:1}.page-header-actions{flex-shrink:0;align-items:center;gap:10px;display:flex}.lw-rec{background:var(--lw-card);border:1px solid var(--lw-border);border-radius:var(--lw-radius);align-items:center;gap:16px;padding:18px 22px;display:flex}.lw-rec-icon{color:#6366f1;background:#6366f114;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;display:flex}.lw-rec-body{flex:1;min-width:0}.lw-rec-title{color:var(--lw-text);margin-bottom:4px;font-size:15px;font-weight:600}.lw-rec-desc{color:var(--lw-sub);font-size:13px;line-height:1.5}.lw-rec-act{flex-shrink:0}.lw-tabs-section{border-bottom:1px solid var(--lw-border);padding-bottom:0}.lw-tabs{gap:4px;display:flex}.lw-tab{color:var(--lw-sub);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:6px;margin-bottom:-1px;padding:9px 16px;font-family:inherit;font-size:13px;transition:color .15s;display:flex}.lw-tab:hover{color:var(--lw-primary)}.lw-tab.active{color:var(--lw-primary);border-bottom-color:var(--lw-primary);font-weight:600}.lw-tab span{color:var(--lw-sub);background:#16425b0f;border-radius:10px;padding:1px 7px;font-size:11px}.lw-tab.active span{color:var(--lw-primary);background:#2f66901a}.lw-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;display:grid}.lw-card{background:var(--lw-card);border:1px solid var(--lw-border);border-radius:var(--lw-radius);cursor:pointer;transition:box-shadow .2s,transform .2s;overflow:hidden}.lw-card:hover{box-shadow:var(--shadow-card-hover,0 12px 32px #16425b1a);transform:translateY(-2px)}.lw-card-bar{height:3px}.lw-card-inner{padding:16px 18px 20px}.lw-card-head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.lw-card-tag{border-radius:4px;padding:2px 8px;font-size:11px;font-weight:500;display:inline-flex}.lw-tag-sys{color:var(--lw-primary);background:#2f669014}.lw-tag-tch{color:#c45c2c;background:#c45c2c14}.lw-tag-ai{color:#6366f1;background:#6366f114}.lw-tag-mine{color:#0d7c66;background:#0d7c6614}.lw-card-time{color:var(--lw-sub);align-items:center;gap:4px;font-size:12px;display:flex}.lw-card-title{color:var(--lw-text);margin:0 0 6px;font-size:15px;font-weight:600}.lw-card-desc{color:var(--lw-sub);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 12px;font-size:12px;display:-webkit-box;overflow:hidden}.lw-card-flow{flex-wrap:wrap;gap:5px;margin-bottom:12px;display:flex}.lw-flow-dot{border-radius:4px;padding:3px 8px;font-size:10px;font-weight:500}.lw-flow-more{background:var(--lw-border);color:var(--lw-sub)}.lw-card-meta{color:var(--lw-sub);align-items:center;gap:14px;margin-bottom:12px;font-size:12px;display:flex}.lw-card-acts{gap:8px;display:flex}.error-detail{opacity:.7;word-break:break-all;max-width:500px;margin-top:4px;font-family:monospace;font-size:12px!important}.empty-actions{justify-content:center;gap:8px;margin-top:4px;display:flex}.lw-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a59;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.lw-dlg{background:var(--lw-card,#fff);border-radius:16px;width:90vw;max-width:520px;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px #0000001f}.lw-dlg-head{justify-content:space-between;align-items:center;padding:18px 22px 10px;display:flex}.lw-dlg-head h2{color:var(--lw-text);margin:0;font-size:17px}.lw-dlg-close{cursor:pointer;color:var(--lw-sub);background:0 0;border:none;border-radius:6px;padding:4px}.lw-dlg-close:hover{background:#16425b0f}.lw-dlg-body{padding:0 22px 14px}.lw-dlg-desc{color:var(--lw-sub);margin:0 0 12px;font-size:13px;line-height:1.5}.lw-dlg-meta{color:var(--lw-sub);gap:16px;margin-bottom:14px;font-size:12px;display:flex}.lw-dlg-flow{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.lw-dlg-chip{border:1.5px solid;border-radius:6px;padding:4px 10px;font-size:11px;font-weight:500}.lw-dlg-arr{color:var(--lw-sub)}.lw-dlg-acts{border-top:1px solid var(--lw-border);gap:8px;padding:14px 22px 18px;display:flex}.lw-ai-box{padding:0}.lw-ai-head{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.lw-ai-head h3{align-items:center;gap:6px;margin:0;font-size:15px;display:flex}.lw-ai-tip{color:var(--lw-sub);margin:0 0 4px;font-size:13px}.lw-ai-ex{color:var(--lw-sub);background:#16425b08;border-radius:8px;margin:0 0 12px;padding:8px 12px;font-size:12px;font-style:italic;line-height:1.5}.lw-ai-input{border:1px solid var(--lw-border);resize:vertical;box-sizing:border-box;border-radius:10px;width:100%;min-height:80px;padding:12px;font-family:inherit;font-size:13px}.lw-ai-input:focus{border-color:var(--lw-primary);outline:none;box-shadow:0 0 0 3px #2f66901a}.lw-ai-opts{gap:20px;margin-top:10px;display:flex}.lw-ai-opts label{color:var(--lw-sub);align-items:center;gap:6px;font-size:13px;display:flex}.lw-ai-opts input{border:1px solid var(--lw-border);border-radius:6px;width:60px;padding:4px 8px;font-size:13px}.lw-ai-btns{justify-content:flex-end;gap:8px;margin-top:12px;display:flex}.lw-ai-status{color:#0d7c66;background:#0d7c660f;border:1px solid #0d7c6626;border-radius:8px;align-items:center;gap:8px;margin-top:10px;padding:10px 14px;font-size:13px;display:flex}.lw-ai-ok{color:var(--lw-primary);background:#2f66900f;border:1px solid #2f66901f;border-radius:8px;align-items:center;gap:12px;margin-top:10px;padding:10px 14px;font-size:13px;display:flex}.lw-ai-err{color:#c45c2c;background:#c45c2c0f;border:1px solid #c45c2c26;border-radius:8px;margin-top:10px;padding:10px 14px;font-size:13px}.lw-editor-shell{background:var(--page-bg,#f5f8fa);flex-direction:column;height:calc(100vh - 72px);display:flex;overflow:hidden}.lw-editor-tb{background:var(--card-bg,#fff);border-bottom:1px solid var(--border-soft,#16425b1a);flex-shrink:0;align-items:center;gap:10px;padding:8px 14px;display:flex}.lw-editor-tb-l{align-items:center;gap:8px;display:flex}.lw-editor-tb-c{flex:1;justify-content:center;align-items:center;gap:6px;display:flex}.lw-editor-tb-r{align-items:center;gap:6px;display:flex}.lw-editor-tb-title{width:180px;color:var(--text-main,#102a43);background:0 0;border:none;border-radius:4px;padding:4px 8px;font-family:inherit;font-size:13px;font-weight:600}.lw-editor-tb-title:focus{background:#16425b08;outline:none}.lw-editor-tb-divider{background:var(--border-soft);width:1px;height:20px}.lw-editor-save-status{align-items:center;gap:4px;font-size:11px;display:flex}.lw-editor-body{flex:1;display:flex;overflow:hidden}.lw-editor-palette{background:var(--card-bg,#fff);border-right:1px solid var(--border-soft);flex-direction:column;flex-shrink:0;width:210px;display:flex;overflow-y:auto}.lw-palette-hd{color:var(--text-main);padding:10px 12px;font-size:12px;font-weight:600}.lw-palette-search{margin:0 8px 8px}.lw-palette-search input{border:1px solid var(--border-soft);box-sizing:border-box;border-radius:8px;width:100%;padding:5px 10px;font-family:inherit;font-size:12px}.lw-palette-search input:focus{border-color:var(--stu-primary,#2f6690);outline:none}.lw-palette-cat{color:var(--text-hint,#829ab1);text-transform:uppercase;letter-spacing:.5px;padding:8px 12px 4px;font-size:10px;font-weight:600}.lw-palette-item{cursor:grab;border:1px solid #0000;border-radius:8px;align-items:center;gap:8px;margin:0 6px 2px;padding:7px 12px;transition:background .12s;display:flex}.lw-palette-item:hover{border-color:var(--border-soft);background:#2f66900a}.lw-palette-item-icon{border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;display:flex}.lw-palette-item-info{flex:1;min-width:0}.lw-palette-item-name{color:var(--text-main);font-size:12px;font-weight:600}.lw-palette-item-meta{color:var(--text-hint);font-size:10px}.lw-editor-canvas-wrap{background:var(--page-bg,#f5f8fa);background-image:radial-gradient(circle,#16425b14 1px,#0000 1px);background-size:20px 20px;flex:1;position:relative;overflow:hidden}.lw-editor-canvas-wrap.is-hand-mode{cursor:grab}.lw-editor-canvas-wrap.is-hand-mode:active{cursor:grabbing}.lw-editor-canvas-wrap.is-hand-mode .lw-canvas-node{cursor:grab}.lw-editor-svg{z-index:1;pointer-events:none;position:absolute;top:0;left:0}.lw-editor-svg path.lw-edge{pointer-events:stroke}.lw-editor-svg path.lw-edge-hit{pointer-events:stroke;stroke:#0000;stroke-width:18px}.lw-editor-canvas{transform-origin:0 0;z-index:2;position:absolute;top:0;left:0}.lw-canvas-empty{color:var(--text-hint,#829ab1);pointer-events:none;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.lw-canvas-empty-inner{text-align:center}.lw-canvas-empty-inner p{margin:10px 0;font-size:13px}.lw-canvas-qs{pointer-events:auto;gap:8px;display:flex}.lw-canvas-qs button{border:1px solid var(--border-soft);background:var(--card-bg,#fff);cursor:pointer;color:var(--text-main);border-radius:8px;padding:6px 14px;font-family:inherit;font-size:12px}.lw-canvas-qs button:hover{background:#2f66900a}.lw-canvas-node{background:var(--card-bg,#fff);border:1.5px solid var(--border-medium,#16425b26);cursor:move;-webkit-user-select:none;user-select:none;border-radius:12px;min-width:180px;transition:box-shadow .12s;position:absolute}.lw-canvas-node:hover{box-shadow:var(--shadow-card,0 4px 20px #16425b0f)}.lw-canvas-node.selected{border-color:var(--stu-primary,#2f6690);z-index:10;box-shadow:0 0 0 3px #2f66901f}.lw-canvas-node-body{padding:9px 12px}.lw-canvas-node-head{align-items:center;gap:6px;margin-bottom:4px;display:flex}.lw-canvas-node-icon{border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.lw-canvas-node-type{font-size:11px;font-weight:600}.lw-canvas-node-title{color:var(--text-main);margin-bottom:4px;font-size:12px;font-weight:500}.lw-canvas-node-meta{color:var(--text-hint);gap:8px;font-size:10px;display:flex}.lw-canvas-node-port{cursor:crosshair;z-index:5;border:2.5px solid #fff;border-radius:50%;width:14px;height:14px;transition:transform .12s,box-shadow .12s;position:absolute;box-shadow:0 0 0 1px #16425b26}.lw-canvas-node-port:hover{transform:scale(1.35);box-shadow:0 0 0 3px #2f669033}.lw-canvas-node-port.in-port{background:var(--stu-primary,#2f6690);margin-left:-7px;top:-7px;left:50%}.lw-canvas-node-port.out-port{background:#0d7c66;margin-left:-7px;bottom:-7px;left:50%}.lw-editor-panel{background:var(--card-bg,#fff);border-left:1px solid var(--border-soft);flex-direction:column;flex-shrink:0;width:270px;display:flex;overflow-y:auto}.lw-panel-section{border-bottom:1px solid var(--border-soft);padding:14px 16px}.lw-panel-section h4{color:var(--text-main);margin:0 0 10px;font-size:12px;font-weight:600}.lw-panel-tabs{border-bottom:1px solid var(--border-soft);display:flex}.lw-panel-tab{text-align:center;cursor:pointer;color:var(--text-sub);background:0 0;border-bottom:2px solid #0000;flex:1;padding:8px;font-family:inherit;font-size:12px}.lw-panel-tab.active{color:var(--stu-primary);border-bottom-color:var(--stu-primary);font-weight:600}.lw-panel-empty{color:var(--text-hint);text-align:center;flex:1;justify-content:center;align-items:center;padding:24px;font-size:12px;display:flex}.lw-form-group{margin-bottom:9px}.lw-form-group label{color:var(--text-sub);margin-bottom:3px;font-size:11px;font-weight:500;display:block}.lw-form-input,.lw-form-select{border:1px solid var(--border-soft);box-sizing:border-box;background:var(--card-bg,#fff);width:100%;color:var(--text-main);border-radius:8px;padding:6px 10px;font-family:inherit;font-size:12px}.lw-form-input:focus,.lw-form-select:focus{border-color:var(--stu-primary);outline:none;box-shadow:0 0 0 2px #2f66901a}.lw-form-select{cursor:pointer}.lw-form-row{gap:8px;display:flex}.lw-form-row .lw-form-group{flex:1}.lw-panel-danger{border-top:1px solid #c45c2c26;margin-top:10px;padding-top:10px}.lw-editor-minimap{background:var(--card-bg,#fff);border:1px solid var(--border-soft);box-shadow:var(--shadow-card);z-index:10;border-radius:10px;position:absolute;bottom:14px;right:14px;overflow:hidden}.lw-editor-minimap canvas{display:block}.lw-canvas-mode-tools,.lw-canvas-zoom-tools{z-index:20;border:1px solid var(--border-soft);background:#fffffff5;border-radius:10px;align-items:center;gap:2px;padding:4px;display:flex;position:absolute;box-shadow:0 6px 20px #16425b1a}.lw-canvas-mode-tools{top:14px;left:14px}.lw-canvas-zoom-tools{bottom:14px;left:50%;transform:translate(-50%)}.lw-canvas-mode-tools button,.lw-canvas-zoom-tools button{min-width:32px;height:30px;color:var(--text-sub,#627d98);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:0 8px;font-size:11px;font-weight:600}.lw-canvas-mode-tools button:hover,.lw-canvas-zoom-tools button:hover,.lw-canvas-mode-tools button.active{color:var(--stu-primary,#2f6690);background:#2f669017}.lw-canvas-zoom-tools #lwe-zoom-reset{font-variant-numeric:tabular-nums;min-width:52px}.lw-canvas-selection-box{z-index:15;pointer-events:none;border:1.5px solid var(--stu-primary,#2f6690);background:#2f66901a;border-radius:3px;position:absolute}.lw-mobile-only{display:none}.lw-validation-toast{z-index:500;max-width:360px;position:fixed;top:80px;right:20px}.lw-validation-item{cursor:pointer;border-radius:10px;align-items:center;gap:8px;margin-bottom:6px;padding:10px 14px;font-size:13px;animation:.2s lw-slide;display:flex}.lw-validation-item.error{color:#c45c2c;background:#c45c2c0f;border:1px solid #c45c2c26}.lw-validation-item.warn{color:#b45309;background:#c4982c0f;border:1px solid #c4982c26}.lw-validation-item.info{color:var(--stu-primary);background:#2f66900f;border:1px solid #2f66901f}@keyframes lw-slide{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}.lw-connecting-line{pointer-events:none;z-index:200;width:100%;height:100%;position:fixed;top:0;left:0}.lw-connecting-line svg{width:100%;height:100%}.lw-connecting-line path{stroke:var(--stu-primary);stroke-width:2px;stroke-dasharray:7 3;fill:none}.lw-task-card{background:var(--card-bg,#fff);border:1px solid var(--border-soft);border-radius:var(--radius-md,14px);padding:22px}.lw-task-header{border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:center;margin-bottom:14px;padding-bottom:10px;display:flex}.lw-task-header h3{color:var(--text-main);margin:0;font-size:16px}.lw-question-stem{color:var(--text-main);margin-bottom:16px;font-size:15px;font-weight:500;line-height:1.6}.lw-question-options{flex-direction:column;gap:10px;margin-bottom:16px;display:flex}.lw-option{border:1.5px solid var(--border-soft);cursor:pointer;border-radius:10px;align-items:center;gap:12px;padding:12px 14px;transition:all .12s;display:flex}.lw-option:hover{border-color:var(--stu-primary);background:#2f66900a}.lw-option-key{color:var(--stu-primary);min-width:22px;font-size:14px;font-weight:700}.lw-feedback{border-radius:10px;margin-top:12px;padding:14px;font-size:14px}.lw-feedback.correct{color:#0d7c66;background:#0d7c660f;border:1px solid #0d7c6626}.lw-feedback.incorrect{color:#c45c2c;background:#c45c2c0f;border:1px solid #c45c2c26}.lw-summary-page{max-width:780px;margin:0 auto;padding:28px 20px}.lw-summary-header{text-align:center;margin-bottom:28px}.lw-summary-header h1{color:var(--text-main);margin:0 0 6px;font-size:26px}.lw-summary-cards{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin-bottom:28px;display:grid}.lw-summary-card{background:var(--card-bg,#fff);border:1px solid var(--border-soft);border-radius:var(--radius-sm,10px);text-align:center;padding:18px}.lw-summary-card-value{color:var(--text-main);font-size:26px;font-weight:700}.lw-summary-card-label{color:var(--text-hint);margin-top:4px;font-size:11px}.lw-summary-detail{flex-direction:column;gap:18px;display:flex}.lw-summary-section h3{border-bottom:1px solid var(--border-soft);color:var(--text-main);margin:0 0 10px;padding-bottom:8px;font-size:14px}.lw-mastery-item{color:var(--text-main);align-items:center;gap:12px;margin-bottom:8px;font-size:13px;display:flex}.lw-mastery-bar{background:#16425b0f;border-radius:6px;flex:1;height:12px;overflow:hidden}.lw-mastery-bar div{border-radius:6px;height:100%;transition:width .4s}.lw-summary-node-item{border-radius:8px;align-items:center;gap:8px;padding:6px 10px;font-size:13px;display:flex}.lw-summary-node-item.completed{background:#0d7c660f}.lw-summary-node-item.skipped{background:#c4982c0f}.lw-summary-node-item.inserted{background:#6366f10f}.lw-summary-actions{border-top:1px solid var(--border-soft);justify-content:center;gap:12px;margin-top:28px;padding-top:20px;display:flex}@media (width<=1024px){.lw-editor-palette{width:180px}.lw-editor-panel{width:240px}}@media (width<=768px){.lw-grid{grid-template-columns:1fr}.lw-rec{text-align:center;flex-direction:column}.lw-editor-palette{z-index:50;width:240px;transition:transform .2s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.lw-editor-palette.open{transform:translate(0)}.lw-editor-panel{z-index:50;border-radius:16px 16px 0 0;width:auto;max-height:50vh;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 24px #0000001a}.lw-page-header-actions{flex-direction:column;width:100%}.lw-summary-cards{grid-template-columns:repeat(2,1fr)}.lw-mobile-only{display:inline-flex}.lw-editor-minimap{display:none}.lw-canvas-mode-tools{top:8px;left:8px}.lw-canvas-zoom-tools{bottom:12px}.lw-canvas-zoom-tools #lwe-zoom-fit{display:none}}.lf-page{max-width:1576px;color:var(--text-main,#102a43);box-sizing:border-box;margin:0 auto;padding:22px 28px 48px}.lf-icon{vertical-align:middle;flex:none;justify-content:center;align-items:center;display:inline-flex}.lf-icon svg{width:100%;height:100%;display:block}.lf-hero{color:#fff;background:linear-gradient(110deg,#16425b 0%,#2f6690 48%,#4d8ab5 100%);border-radius:16px;justify-content:space-between;align-items:center;gap:30px;min-height:150px;padding:28px 34px;display:flex;box-shadow:0 14px 34px #16425b29}.lf-eyebrow{letter-spacing:.13em;color:#ffffffad;margin:0 0 8px;font-size:11px;font-weight:700}.lf-hero h1{color:#fff;margin:0;font-size:28px;line-height:1.2}.lf-hero p:not(.lf-eyebrow){color:#ffffffd4;margin:9px 0 0;font-size:14px}.lf-hero-right{align-items:center;gap:20px;display:flex}.lf-stat{text-align:center;min-width:62px}.lf-stat b{font-size:23px;line-height:1.1;display:block}.lf-stat span{color:#ffffffbf;white-space:nowrap;margin-top:5px;font-size:11px;display:block}.lf-button{cursor:pointer;min-height:38px;color:var(--text-main,#102a43);background:#fff;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:6px;padding:0 15px;font-family:inherit;font-size:13px;font-weight:600;transition:transform .16s,box-shadow .16s,background .16s,border-color .16s;display:inline-flex}.lf-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 7px 16px #16425b1f}.lf-button:active:not(:disabled){transform:translateY(0)}.lf-button:disabled{opacity:.55;cursor:not-allowed}.lf-button.primary{color:#1c5680;background:#fff;border-color:#fff}.lf-page .lf-button.primary:not(.compact){box-shadow:0 5px 14px #08273e2e}.lf-page>.lf-hero .lf-button.primary:hover{background:#f0f7fc}.lf-button.secondary{color:var(--stu-primary,#2f6690);background:#fff;border-color:#2f669033}.lf-button.ghost{color:var(--stu-primary,#2f6690);background:#2f66900f;border-color:#2f66901a}.lf-button.compact{min-height:31px;padding:0 10px;font-size:12px}.lf-button.compact.primary{background:var(--stu-primary,#2f6690);border-color:var(--stu-primary,#2f6690);color:#fff}.lf-button.danger-button{color:#fff;background:#bf4d42;border-color:#bf4d42}.lf-recommendation{background:var(--card-bg,#fff);border:1px solid var(--border-soft,#16425b1a);border-radius:14px;align-items:center;gap:15px;margin-top:20px;padding:18px 21px;display:flex;box-shadow:0 4px 18px #16425b0a}.lf-recommendation-icon{color:#5669ca;background:#5b66d01a;border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.lf-recommendation-copy{flex:1;min-width:0}.lf-recommendation h2{margin:0 0 5px;font-size:15px}.lf-recommendation p{color:var(--text-sub,#627d98);margin:0;font-size:13px;line-height:1.55}.lf-recommendation-meta{color:var(--stu-primary,#2f6690);margin-top:6px;font-size:12px;font-weight:600}.lf-toolbar{border-bottom:1px solid var(--border-soft,#16425b1a);justify-content:space-between;align-items:center;gap:18px;margin-top:24px;display:flex}.lf-tabs{align-items:flex-end;gap:4px;display:flex}.lf-tab{color:var(--text-sub,#627d98);font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;align-items:center;gap:7px;padding:11px 13px 10px;font-size:14px;display:inline-flex}.lf-tab:hover{color:var(--stu-primary,#2f6690)}.lf-tab.active{color:var(--stu-primary,#2f6690);border-bottom-color:var(--stu-primary,#2f6690);font-weight:700}.lf-tab span{text-align:center;min-width:18px;color:inherit;background:#16425b12;border-radius:9px;padding:2px 6px;font-size:11px}.lf-toolbar-actions{align-items:center;gap:9px;padding-bottom:7px;display:flex}.lf-search{border:1px solid var(--border-soft,#16425b21);min-width:230px;height:36px;color:var(--text-hint,#829ab1);background:#fff;border-radius:9px;align-items:center;gap:7px;padding:0 10px;display:flex}.lf-search .lf-icon{width:16px;height:16px}.lf-search input{width:100%;font:inherit;color:var(--text-main,#102a43);background:0 0;border:0;outline:0;font-size:13px}.lf-search:focus-within{border-color:var(--stu-primary,#2f6690);box-shadow:0 0 0 3px #2f669017}.lf-batch-bar{color:var(--text-sub,#627d98);background:#2f66900d;border:1px solid #2f669026;border-radius:10px;justify-content:space-between;align-items:center;margin-top:14px;padding:10px 14px;font-size:13px}.lf-batch-bar:not([hidden]){display:flex}.lf-batch-bar b{color:var(--stu-primary,#2f6690)}.lf-batch-bar>div{gap:7px;display:flex}.lf-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:18px;display:grid}.lf-flow-card{background:var(--card-bg,#fff);border:1px solid var(--border-soft,#16425b1c);cursor:pointer;border-radius:14px;flex-direction:column;min-height:244px;padding:17px;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex;position:relative;box-shadow:0 3px 12px #16425b09}.lf-flow-card:hover{border-color:#2f66903d;transform:translateY(-3px);box-shadow:0 13px 27px #16425b1a}.lf-flow-card header{justify-content:space-between;align-items:center;gap:8px;display:flex}.lf-flow-card time{color:var(--text-hint,#829ab1);font-size:11px}.lf-source{border-radius:5px;width:max-content;padding:3px 7px;font-size:11px;font-weight:700;display:inline-flex}.lf-source.system{color:#26608a;background:#2f669017}.lf-source.teacher{color:#aa572c;background:#c65d2e1a}.lf-source.mine{color:#227157;background:#177a5a17}.lf-flow-card h3{color:var(--text-main,#102a43);margin:13px 0 6px;font-size:16px;line-height:1.3}.lf-description{min-height:39px;color:var(--text-sub,#627d98);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:12px;line-height:1.6;display:-webkit-box;overflow:hidden}.lf-node-tags{flex-wrap:wrap;align-items:center;gap:5px;min-height:25px;margin-top:13px;display:flex}.lf-node-tags span{border-radius:5px;padding:3px 7px;font-size:11px;font-weight:600}.lf-node-tags .more{color:var(--text-sub,#627d98);background:#16425b0f}.lf-card-meta{color:var(--text-sub,#627d98);flex-wrap:wrap;gap:12px;margin-top:12px;font-size:12px;display:flex}.lf-card-meta span{align-items:center;gap:4px;display:inline-flex}.lf-card-meta .lf-icon{width:14px;height:14px}.lf-card-foot{justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:14px;display:flex}.lf-card-foot small{color:var(--text-hint,#829ab1);font-size:11px}.lf-card-actions{align-items:center;gap:5px;display:flex}.lf-icon-button{width:31px;height:31px;color:var(--text-sub,#627d98);cursor:pointer;background:#fff;border:1px solid #16425b1f;border-radius:8px;justify-content:center;align-items:center;padding:0;display:inline-flex}.lf-icon-button .lf-icon{width:15px;height:15px}.lf-icon-button:hover{color:var(--stu-primary,#2f6690);background:#2f66900f;border-color:#2f66903d}.lf-icon-button.danger:hover{color:#bf4d42;background:#bf4d4212;border-color:#bf4d4238}.lf-check{z-index:2;width:21px;height:21px;position:absolute;top:12px;right:12px}.lf-check input{opacity:0;position:absolute}.lf-check span{background:#fff;border:1.5px solid #9bb0bd;border-radius:5px;width:17px;height:17px;display:block}.lf-check input:checked+span{border-color:var(--stu-primary,#2f6690);background:var(--stu-primary,#2f6690)}.lf-check input:checked+span:after{content:"✓";color:#fff;text-align:center;font-size:13px;line-height:17px;display:block}.lf-loading,.lf-empty{text-align:center;min-height:190px;color:var(--text-sub,#627d98);background:var(--card-bg,#fff);border:1px dashed #2f66902e;border-radius:14px;flex-direction:column;grid-column:1/-1;justify-content:center;align-items:center;font-size:13px;display:flex}.lf-empty h3{color:var(--text-main,#102a43);margin:0 0 8px;font-size:16px}.lf-empty p{margin:0 0 15px}.lf-loading i,.lf-wizard-state i{border:2px solid #2f669033;border-top-color:var(--stu-primary,#2f6690);border-radius:50%;width:18px;height:18px;margin-bottom:9px;animation:.7s linear infinite lf-spin}@keyframes lf-spin{to{transform:rotate(360deg)}}.lf-modal-overlay{z-index:2000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0c1f2d6b;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.lf-modal{background:#fff;border-radius:16px;flex-direction:column;width:min(660px,100%);max-height:min(760px,100vh - 40px);display:flex;overflow:hidden;box-shadow:0 24px 60px #0a1f2d47}.lf-modal-head{border-bottom:1px solid #16425b14;justify-content:space-between;gap:16px;padding:21px 23px 13px;display:flex}.lf-modal-head h2{color:var(--text-main,#102a43);margin:7px 0 0;font-size:18px}.lf-modal-head p{color:var(--text-sub,#627d98);margin:6px 0 0;font-size:12px}.lf-modal-body{padding:20px 23px;overflow:auto}.lf-modal-body>p{color:var(--text-sub,#627d98);font-size:13px;line-height:1.65}.lf-modal-foot{border-top:1px solid #16425b14;justify-content:flex-end;gap:8px;padding:14px 23px;display:flex}.lf-modal-foot .lf-button.primary{background:var(--stu-primary,#2f6690);border-color:var(--stu-primary,#2f6690);color:#fff}.lf-preview-path{counter-reset:flow;flex-direction:column;gap:9px;margin:0;padding:0;list-style:none;display:flex}.lf-preview-path li{color:var(--text-main,#102a43);counter-increment:flow;border:1px solid #16425b1a;border-radius:9px;padding:11px 14px 11px 39px;font-size:13px;position:relative}.lf-preview-path li:before{content:counter(flow);width:18px;height:18px;color:var(--stu-primary,#2f6690);text-align:center;background:#2f66901a;border-radius:50%;font-size:11px;font-weight:700;line-height:18px;position:absolute;top:11px;left:12px}.lf-preview-path span{color:var(--text-sub,#627d98);margin-top:3px;font-size:11px;display:block}.lf-confirm{text-align:center;padding:33px}.lf-confirm-icon{color:#bf4d42;background:#bf4d421a;border-radius:50%;justify-content:center;align-items:center;width:47px;height:47px;margin:0 auto 13px;display:flex}.lf-confirm-icon .lf-icon{width:23px;height:23px}.lf-confirm h2{margin:0;font-size:18px}.lf-confirm p{color:var(--text-sub,#627d98);margin:10px 0 20px;font-size:13px;line-height:1.65}.lf-confirm>div:last-child{justify-content:center;gap:8px;display:flex}.lf-wizard{min-height:420px}.lf-wizard-step{color:var(--stu-primary,#2f6690);font-size:11px;font-weight:700}.lf-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.lf-choice,.lf-method,.lf-point{font:inherit;text-align:left;cursor:pointer;color:var(--text-main,#102a43);background:#fff;border:1px solid #16425b1f;border-radius:10px;transition:border-color .16s,background .16s,box-shadow .16s}.lf-choice{min-height:86px;padding:14px}.lf-choice b,.lf-method b{font-size:14px;display:block}.lf-choice span,.lf-method span{color:var(--text-sub,#627d98);margin-top:6px;font-size:11px;line-height:1.5;display:block}.lf-choice:hover,.lf-method:hover,.lf-point:hover{border-color:#2f669059}.lf-choice.selected,.lf-method.selected,.lf-point.selected{border-color:var(--stu-primary,#2f6690);background:#2f66900d;box-shadow:0 0 0 2px #2f669014}.lf-wizard-search{height:38px;color:var(--text-hint,#829ab1);border:1px solid #16425b1f;border-radius:8px;align-items:center;gap:7px;margin-bottom:10px;padding:0 10px;display:flex}.lf-wizard-search .lf-icon{width:16px;height:16px}.lf-wizard-search input{font:inherit;background:0 0;border:0;outline:0;flex:1;font-size:13px}.lf-point-list{flex-direction:column;gap:7px;max-height:320px;display:flex;overflow:auto}.lf-point{justify-content:space-between;align-items:center;gap:12px;padding:11px 13px;display:flex}.lf-point b,.lf-point small{display:block}.lf-point b{font-size:13px}.lf-point small{color:var(--text-sub,#627d98);margin-top:4px;font-size:11px}.lf-point em{color:var(--stu-primary,#2f6690);white-space:nowrap;font-size:12px;font-style:normal;font-weight:700}.lf-wizard-state{min-height:170px;color:var(--text-sub,#627d98);flex-direction:column;justify-content:center;align-items:center;font-size:13px;display:flex}.lf-methods{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:17px;display:grid}.lf-method{min-height:93px;padding:14px}.lf-method b{align-items:center;gap:5px;display:flex}.lf-method b .lf-icon{width:15px;height:15px}.lf-field{color:var(--text-sub,#627d98);margin:12px 0 0;font-size:12px;font-weight:600;display:block}.lf-field input,.lf-field textarea,.lf-wizard-settings input{box-sizing:border-box;width:100%;color:var(--text-main,#102a43);font:inherit;background:#fff;border:1px solid #16425b24;border-radius:8px;outline:0;margin-top:6px;padding:9px 10px;font-size:13px}.lf-field textarea{resize:vertical;min-height:68px}.lf-field input:focus,.lf-field textarea:focus,.lf-wizard-settings input:focus{border-color:var(--stu-primary,#2f6690);box-shadow:0 0 0 3px #2f669014}.lf-wizard-settings{gap:14px;margin-top:12px;display:flex}.lf-wizard-settings label{color:var(--text-sub,#627d98);flex:1;font-size:12px}.lf-wizard-settings input{width:76px;margin:0 4px}.lf-ai-note{background:#2f66900f;border-radius:8px;padding:10px 12px;color:var(--text-sub,#627d98)!important;font-size:12px!important}.lf-chapter-filter{gap:6px;margin-bottom:4px;padding-bottom:10px;display:flex;overflow:auto}.lf-chapter-filter button{white-space:nowrap;color:var(--text-sub,#627d98);font:inherit;cursor:pointer;background:#fff;border:1px solid #16425b1f;border-radius:7px;padding:5px 9px;font-size:11px}.lf-chapter-filter button.selected{border-color:var(--stu-primary,#2f6690);color:var(--stu-primary,#2f6690);background:#2f669012;font-weight:700}.lw-editor-shell{background:var(--page-bg,#f5f8fa);height:100vh;min-height:620px;font-family:inherit}.lw-editor-toolbar{box-sizing:border-box;border-bottom:1px solid var(--border-soft,#16425b1a);z-index:5;background:#fff;grid-template-columns:minmax(250px,1fr) auto minmax(250px,1fr);align-items:center;gap:14px;height:62px;padding:10px 18px;display:grid;box-shadow:0 2px 10px #16425b0a}.lw-editor-toolbar-left,.lw-editor-toolbar-center,.lw-editor-toolbar-right{align-items:center;gap:7px;display:flex}.lw-editor-toolbar-center{justify-content:center}.lw-editor-toolbar-right{justify-content:flex-end}.lw-btn{min-height:34px;color:var(--text-main,#102a43);font:inherit;cursor:pointer;background:#fff;border:1px solid #16425b21;border-radius:8px;justify-content:center;align-items:center;gap:5px;padding:0 11px;font-size:12px;font-weight:600;transition:all .15s;display:inline-flex}.lw-btn:hover:not(:disabled){color:var(--stu-primary,#2f6690);background:#2f66900f;border-color:#2f66904d}.lw-btn:disabled{opacity:.45;cursor:not-allowed}.lw-btn .lw-icon{width:14px;height:14px}.lw-btn-accent{background:var(--stu-primary,#2f6690);border-color:var(--stu-primary,#2f6690);color:#fff}.lw-btn-accent:hover:not(:disabled){color:#fff;background:#24597f}.lw-btn-danger{color:#bf4d42;border-color:#bf4d4233}.lw-editor-title-input{box-sizing:border-box;width:220px;height:34px;color:var(--text-main,#102a43);font:inherit;background:0 0;border:1px solid #0000;border-radius:8px;padding:0 10px;font-size:14px;font-weight:700}.lw-editor-title-input:hover,.lw-editor-title-input:focus{background:#2f66900a;border-color:#2f669033;outline:0}.lw-editor-save-status{min-width:52px;color:var(--text-sub,#627d98);font-size:11px}.lw-editor-save-status.saving{color:#bd7c20}.lw-editor-save-status.saved{color:#177a5a}.lw-editor-save-status.error{color:#bf4d42}.lw-palette-header{color:var(--text-main,#102a43);padding:15px 14px 9px;font-size:13px;font-weight:700}.lw-canvas-quick-structs{pointer-events:auto;gap:8px;display:flex}.lw-canvas-quick-structs button{color:var(--stu-primary,#2f6690);font:inherit;cursor:pointer;background:#fff;border:1px solid #2f669026;border-radius:8px;padding:7px 12px;font-size:12px}.lw-canvas-quick-structs button:hover{background:#2f66900f}.lw-canvas-node{box-sizing:border-box;width:200px;min-width:200px;min-height:100px}.lw-canvas-node-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.lw-editor-svg{overflow:visible}.lw-editor-svg text{pointer-events:none}.lw-dialog{background:#fff;border-radius:14px;width:min(560px,90vw);max-height:80vh;overflow:auto;box-shadow:0 20px 55px #0a1f2d40}.lw-dialog-head{border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.lw-dialog-head h2{margin:0;font-size:17px}.lw-dialog-close{cursor:pointer;width:31px;height:31px;color:var(--text-sub);background:0 0;border:0;border-radius:7px}.lw-dialog-body{padding:16px 20px}.lw-editor-shell input,.lw-editor-shell select,.lw-editor-shell textarea{font-family:inherit}@media (width>=1850px){.lf-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=1180px){.lf-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lf-hero-right{gap:12px}.lf-editor-toolbar{grid-template-columns:1fr auto}.lw-editor-toolbar-center{display:none}.lw-editor-panel{width:250px}}@media (width<=760px){.lf-page{padding:15px}.lf-hero{flex-direction:column;align-items:flex-start;padding:23px}.lf-hero-right{justify-content:space-between;width:100%}.lf-toolbar{flex-direction:column;align-items:flex-start}.lf-toolbar-actions{width:100%;padding-bottom:0}.lf-search{flex:1;min-width:0}.lf-grid{grid-template-columns:1fr}.lf-recommendation{flex-wrap:wrap;align-items:flex-start}.lf-recommendation .lf-button{margin-left:59px}.lf-choice-grid,.lf-methods{grid-template-columns:1fr}.lf-modal-overlay{padding:10px}.lf-modal{max-height:calc(100vh - 20px)}.lf-batch-bar:not([hidden]){flex-direction:column;align-items:flex-start}.lw-editor-toolbar{grid-template-columns:1fr;height:auto;min-height:62px;padding:8px}.lw-editor-toolbar-left,.lw-editor-toolbar-right{justify-content:space-between}.lw-editor-title-input{width:150px}.lw-editor-palette{width:190px}.lw-editor-panel{width:220px}.lw-editor-shell{min-height:580px}}@media (prefers-reduced-motion:reduce){.lw-card,.lw-canvas-node,.lw-canvas-node-port,.lw-editor-tb-title{transition:none}}.lws-page{max-width:1100px;color:var(--text-main,#102a43);box-sizing:border-box;margin:0 auto;padding:0 20px 90px}.lws-sticky-shell.is-stuck{border-bottom:1px solid #16425b14;box-shadow:0 2px 14px #16425b14}.lws-topbar{border-bottom:1px solid var(--border-soft,#16425b1a);background:0 0;align-items:center;gap:14px;margin-bottom:0;padding:6px 0 12px;display:flex}.lws-back-btn{color:var(--text-sub,#627d98);font:inherit;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #16425b1f;border-radius:8px;align-items:center;gap:5px;padding:7px 12px;font-size:12px;transition:background .15s;display:inline-flex}.lws-back-btn:hover{color:var(--stu-primary,#2f6690);background:#2f66900f}.lws-back-btn svg{width:16px;height:16px}.lws-topbar-info{flex:1;min-width:0}.lws-flow-title{white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:16px;font-weight:700;line-height:1.3;overflow:hidden}.lws-topbar-meta{color:var(--text-sub,#627d98);flex-wrap:wrap;align-items:center;gap:6px;margin-top:3px;font-size:12px;display:flex}.lws-dot{color:var(--text-hint,#829ab1)}.lws-topbar-right{flex-shrink:0;align-items:center;gap:8px;display:flex}.lws-save-status{color:var(--text-sub,#627d98);border-radius:4px;padding:3px 8px;font-size:11px}.lws-save-status.saving{color:#bd7c20;background:#bd7c2012}.lws-save-status.saved{color:#177a5a;background:#177a5a0f}.lws-save-status.failed{color:#bf4d42;background:#bf4d420f}.lws-agent-badge{border-radius:5px;padding:3px 9px;font-size:11px;font-weight:600}.lws-agent-badge.working{color:#2f6690;background:#2f669014}.lws-agent-badge.streaming{color:#177a5a;background:#177a5a14;animation:1.5s ease-in-out infinite lws-pulse}.lws-agent-badge.completed{color:#177a5a;background:#177a5a12}.lws-agent-badge.failed{color:#bf4d42;background:#bf4d4212}.lws-agent-badge.paused{color:#bd7c20;background:#bd7c2012}@keyframes lws-pulse{0%,to{opacity:1}50%{opacity:.55}}.lws-btn{min-height:36px;color:var(--text-main,#102a43);font:inherit;cursor:pointer;background:#fff;border:1px solid #16425b24;border-radius:9px;justify-content:center;align-items:center;gap:5px;padding:0 16px;font-size:13px;font-weight:600;transition:transform .15s,box-shadow .15s,background .15s;display:inline-flex}.lws-btn:hover:not(:disabled){transform:translateY(-1px)}.lws-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.lws-btn-primary{background:var(--stu-primary,#2f6690);border-color:var(--stu-primary,#2f6690);color:#fff}.lws-btn-primary:hover:not(:disabled){background:#24597f;box-shadow:0 6px 16px #2f669033}.lws-btn-outline{color:var(--stu-primary,#2f6690);background:#fff;border-color:#2f669038}.lws-btn-outline:hover:not(:disabled){background:#2f66900d}.lws-btn-ghost{color:var(--text-sub,#627d98);background:0 0;border-color:#0000}.lws-btn-ghost:hover:not(:disabled){color:var(--stu-primary,#2f6690);background:#2f66900f}.lws-btn-sm{min-height:31px;padding:0 11px;font-size:12px}.lws-skeleton{padding:10px 0}.lws-skel-topbar{background:var(--card-bg,#fff);border-radius:10px;height:54px;margin-bottom:16px;animation:1.6s ease-in-out infinite lws-shimmer}.lws-skel-card{background:var(--card-bg,#fff);border:1px solid var(--border-soft);border-radius:12px;margin-bottom:12px;padding:22px}.lws-skel-line{background:#16425b12;border-radius:4px;height:12px;margin-bottom:10px;animation:1.6s ease-in-out infinite lws-shimmer}.lws-skel-line.w60{width:60%}.lws-skel-line.w80{width:80%}.lws-skel-line.w40{width:40%}.lws-skel-line.w50{width:50%}.lws-skel-line.w90{width:90%}.lws-skel-line.w30{width:30%}@keyframes lws-shimmer{0%{opacity:.5}50%{opacity:1}to{opacity:.5}}.lws-progress-nav{-webkit-overflow-scrolling:touch;margin-bottom:0;padding-top:4px;padding-bottom:8px;overflow-x:auto}.lws-progress-nav::-webkit-scrollbar{height:3px}.lws-progress-nav::-webkit-scrollbar-thumb{background:#16425b1f;border-radius:3px}.lws-progress-track{gap:6px;min-width:max-content;display:flex}.lws-progress-node{white-space:nowrap;background:#fff;border:1.5px solid #16425b1a;border-radius:9px;align-items:center;gap:7px;padding:8px 12px;font-size:12px;transition:border-color .2s,background .2s,box-shadow .2s;display:flex}.lws-progress-node.current{border-color:var(--stu-primary,#2f6690);background:#2f669012;font-weight:700;box-shadow:0 0 0 2px #2f66901a}.lws-progress-node.completed{color:#177a5a;background:#177a5a0a;border-color:#177a5a40}.lws-progress-node.skipped{color:#bd7c20;background:#bd7c200a;border-color:#bd7c2040}.lws-progress-node.failed{color:#bf4d42;background:#bf4d420a;border-color:#bf4d4240}.lws-progress-node.waiting{opacity:.55}.lws-progress-dot{width:20px;height:20px;color:var(--text-sub,#627d98);background:#16425b12;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:10px;font-weight:700;display:inline-flex}.lws-progress-node.current .lws-progress-dot{background:var(--stu-primary,#2f6690);color:#fff}.lws-progress-node.completed .lws-progress-dot{color:#177a5a;background:#177a5a26}.lws-progress-node.skipped .lws-progress-dot{color:#bd7c20;background:#bd7c2026}.lws-progress-node.failed .lws-progress-dot{color:#bf4d42;background:#bf4d4226}.lws-progress-label{text-overflow:ellipsis;max-width:120px;font-weight:600;overflow:hidden}.lws-progress-agent{color:var(--text-hint,#829ab1);font-size:10px}.lws-kp-card{background:var(--card-bg,#fff);border:1px solid var(--border-soft);border-radius:14px;margin-bottom:16px;padding:22px;box-shadow:0 2px 10px #16425b08}.lws-kp-header{align-items:center;gap:10px;margin-bottom:14px;display:flex}.lws-kp-tag{color:var(--stu-primary,#2f6690);text-transform:uppercase;letter-spacing:.04em;background:#2f669014;border-radius:4px;padding:3px 7px;font-size:10px;font-weight:700}.lws-kp-header h3{color:var(--text-main,#102a43);margin:0;font-size:17px}.lws-kp-meta{color:var(--text-sub,#627d98);flex-wrap:wrap;gap:16px;margin-bottom:14px;font-size:12px;display:flex}.lws-kp-meta b{color:var(--stu-primary,#2f6690)}.lws-kp-definition{border-left:3px solid var(--stu-primary,#2f6690);background:#2f669008;border-radius:8px;margin-bottom:14px;padding:12px 14px}.lws-kp-definition .lws-kp-label{color:var(--stu-primary,#2f6690);text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px;font-size:10px;font-weight:700;display:block}.lws-kp-definition p{color:var(--text-sub,#627d98);margin:0;font-size:13px;line-height:1.65}.lws-kp-current-task{border:1px dashed #2f66902e;border-radius:8px;padding:12px 14px}.lws-kp-current-task .lws-kp-label{color:var(--stu-primary,#2f6690);text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px;font-size:10px;font-weight:700;display:block}.lws-kp-task-info{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:6px;display:flex}.lws-kp-task-name{color:var(--text-main,#102a43);font-size:14px;font-weight:700}.lws-kp-task-type{color:var(--stu-primary,#2f6690);background:#2f669012;border-radius:4px;padding:2px 7px;font-size:11px;font-weight:600}.lws-kp-task-time{color:var(--text-hint,#829ab1);font-size:11px}.lws-kp-task-goal{color:var(--text-sub,#627d98);margin:0;font-size:12px;line-height:1.55}.lws-agent-status{margin-bottom:14px}.lws-agent-status-inner{background:#fff;border:1px solid #16425b14;border-radius:10px;flex-wrap:wrap;align-items:center;gap:10px;padding:11px 14px;font-size:12px;display:flex}.lws-agent-status-inner.preparing,.lws-agent-status-inner.connecting{background:#2f669008;border-color:#2f66901f}.lws-agent-status-inner.generating,.lws-agent-status-inner.streaming{background:#177a5a08;border-color:#177a5a1f}.lws-agent-status-inner.completed{background:#177a5a0a;border-color:#177a5a29}.lws-agent-status-inner.failed{background:#bf4d4208;border-color:#bf4d4224}.lws-agent-status-inner.paused{background:#bd7c2008;border-color:#bd7c201f}.lws-agent-name{color:var(--text-main,#102a43);font-weight:700}.lws-agent-state-label{font-weight:600}.lws-agent-status-inner.completed .lws-agent-state-label{color:#177a5a}.lws-agent-status-inner.failed .lws-agent-state-label{color:#bf4d42}.lws-agent-status-inner.paused .lws-agent-state-label{color:#bd7c20}.lws-agent-status-inner.streaming .lws-agent-state-label{color:#177a5a}.lws-agent-status-inner.connecting .lws-agent-state-label{color:var(--stu-primary,#2f6690)}.lws-agent-elapsed,.lws-agent-ttft{color:var(--text-hint,#829ab1);font-size:11px}.lws-agent-stream{border-radius:3px;padding:1px 6px;font-size:11px}.lws-agent-stream.connected{color:#177a5a;background:#177a5a12}.lws-agent-stream.disconnected{color:#bf4d42;background:#bf4d4212}.lws-agent-reqid{color:var(--text-hint,#829ab1);font-family:monospace;font-size:10px}.lws-content-area{margin-bottom:16px}.lws-task-card{background:var(--card-bg,#fff);border:1px solid var(--border-soft);border-radius:14px;min-height:200px;padding:22px;box-shadow:0 2px 10px #16425b08}.lws-task-header{border-bottom:1px solid var(--border-soft);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:18px;padding-bottom:14px;display:flex}.lws-task-type-tag{border-radius:5px;padding:3px 8px;font-size:11px;font-weight:700}.lws-task-type-tag.explain{color:#2f6690;background:#2f669014}.lws-task-type-tag.practice{color:#177a5a;background:#177a5a14}.lws-task-type-tag.repair{color:#c65d2e;background:#c65d2e14}.lws-task-type-tag.control{color:#7c4cc4;background:#7c4cc414}.lws-task-type-tag.summary{color:#4b5fc0;background:#4b5fc014}.lws-task-header h3{flex:1;min-width:0;margin:0;font-size:16px}.lws-task-agent{color:var(--text-hint,#829ab1);background:#16425b0a;border-radius:4px;padding:3px 7px;font-size:11px;font-weight:600}.lws-task-body{color:var(--text-main,#102a43);font-size:14px;line-height:1.75}.lws-task-loading{text-align:center;padding:20px 0}.lws-loading-steps{flex-direction:column;align-items:center;gap:10px;display:flex}.lws-loading-step{color:var(--text-hint,#829ab1);background:#16425b08;border-radius:8px;padding:8px 16px;font-size:13px;transition:all .3s}.lws-loading-step.active{color:var(--stu-primary,#2f6690);background:#2f669014;font-weight:600}.lws-stream-content{color:var(--text-main,#102a43);min-height:80px;padding:8px 0;font-size:14px;line-height:1.8}.lws-stream-content p{margin:0 0 12px}.lws-stream-content code{background:#16425b0f;border-radius:3px;padding:2px 5px;font-size:.9em}.lws-stream-content strong{color:var(--text-main,#102a43)}.lws-stream-cursor{color:var(--stu-primary,#2f6690);font-weight:400;animation:.9s step-end infinite lws-blink;display:inline}@keyframes lws-blink{0%,to{opacity:1}50%{opacity:0}}.lws-question{padding:8px 0}.lws-question-stem{color:var(--text-main,#102a43);margin-bottom:16px;font-size:14px;font-weight:600;line-height:1.7}.lws-question-options{flex-direction:column;gap:8px;margin-bottom:16px;display:flex}.lws-option-label{cursor:pointer;border:1.5px solid #16425b1f;border-radius:9px;align-items:flex-start;gap:10px;padding:11px 13px;font-size:13px;transition:border-color .15s,background .15s;display:flex}.lws-option-label:hover{background:#2f669008;border-color:#2f66904d}.lws-option-label input[type=radio]{accent-color:var(--stu-primary,#2f6690);margin-top:1px}.lws-option-label:has(input:checked){border-color:var(--stu-primary,#2f6690);background:#2f66900f}.lws-option-key{text-align:center;min-width:20px;color:var(--stu-primary,#2f6690);font-size:12px;font-weight:700}.lws-textarea{box-sizing:border-box;width:100%;min-height:80px;font:inherit;resize:vertical;border:1.5px solid #16425b24;border-radius:9px;margin-bottom:12px;padding:11px;font-size:13px}.lws-textarea:focus{border-color:var(--stu-primary,#2f6690);outline:0;box-shadow:0 0 0 3px #2f669014}.lws-feedback{border-radius:9px;align-items:flex-start;gap:10px;margin-top:14px;padding:13px;font-size:13px;display:flex}.lws-feedback.correct{background:#177a5a0f;border:1px solid #177a5a24}.lws-feedback.incorrect{background:#bf4d420f;border:1px solid #bf4d4224}.lws-feedback.complete{text-align:center;color:#177a5a;margin-top:8px;font-weight:700}.lws-feedback-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:14px;font-weight:700;display:flex}.lws-feedback.correct .lws-feedback-icon{color:#fff;background:#177a5a}.lws-feedback.incorrect .lws-feedback-icon{color:#fff;background:#bf4d42}.lws-feedback-title{margin-bottom:3px;font-weight:700}.lws-feedback.correct .lws-feedback-title{color:#177a5a}.lws-feedback.incorrect .lws-feedback-title{color:#bf4d42}.lws-feedback-detail{color:var(--text-sub,#627d98);line-height:1.6}.lws-error-card{background:var(--card-bg,#fff);border:1.5px solid #bf4d422e;border-radius:14px;flex-wrap:wrap;align-items:flex-start;gap:14px;padding:22px;display:flex}.lws-error-icon{color:#bf4d42;background:#bf4d421f;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;font-weight:700;display:flex}.lws-error-info{flex:1;min-width:200px}.lws-error-title{color:var(--text-main,#102a43);margin-bottom:4px;font-size:14px;font-weight:700}.lws-error-message{color:var(--text-sub,#627d98);font-size:13px;line-height:1.6}.lws-error-code{color:var(--text-hint,#829ab1);margin-top:4px;font-family:monospace;font-size:10px}.lws-error-actions{flex-wrap:wrap;gap:8px;width:100%;margin-top:12px;display:flex}.lws-paused-card{text-align:center;background:var(--card-bg,#fff);border:1px solid var(--border-soft);border-radius:14px;padding:48px 20px}.lws-paused-icon{margin-bottom:16px;font-size:48px}.lws-paused-card h3{color:var(--text-main,#102a43);margin:0 0 8px;font-size:20px}.lws-paused-card p{color:var(--text-sub,#627d98);margin:0 0 20px;font-size:13px}.lws-bottom-bar{background:var(--card-bg,#fff);border-top:1px solid var(--border-soft);bottom:0;left:var(--sidebar-width,220px);z-index:30;align-items:center;gap:8px;padding:14px 20px;display:flex;position:fixed;right:0;box-shadow:0 -2px 12px #16425b0f}.lws-bottom-spacer{flex:1}.lws-node-result h4{margin:0 0 12px;font-size:15px}.lws-node-result-content{white-space:pre-wrap;color:var(--text-sub,#627d98);background:#16425b08;border-radius:8px;padding:12px 14px;font-size:13px;line-height:1.7}.lf-start-confirm{text-align:center;padding:10px 0}.lf-start-icon{width:52px;height:52px;color:var(--stu-primary,#2f6690);background:#2f66901a;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 14px;display:flex}.lf-start-confirm h3{margin:0 0 18px;font-size:17px}.lf-start-info{text-align:left;max-width:360px;margin:0 auto}.lf-start-row{border-bottom:1px solid #16425b0f;justify-content:space-between;padding:9px 0;font-size:13px;display:flex}.lf-start-label{color:var(--text-sub,#627d98);font-weight:600}.lf-start-mastery{color:var(--stu-primary,#2f6690);font-weight:700}.lf-start-existing{color:var(--stu-primary,#2f6690);background:#2f66900f;border-radius:8px;align-items:center;gap:6px;margin-top:14px;padding:10px 13px;font-size:12px;font-weight:600;display:flex}.lws-guide-panel{background:#fff;border:1px solid #16425b14;border-radius:12px;margin:0 0 16px;overflow:hidden}.lws-guide-header{background:linear-gradient(135deg,#2f66900a,#6366f108);border-bottom:1px solid #16425b0d;align-items:center;gap:8px;padding:12px 16px;display:flex}.lws-guide-avatar{width:24px;height:24px;color:var(--stu-primary,#2f6690);flex-shrink:0;justify-content:center;align-items:center;display:flex}.lws-guide-name{color:var(--stu-primary,#2f6690);font-size:14px;font-weight:600}.lws-guide-status{color:#999;margin-left:auto;font-size:11px}.lws-guide-status.active{color:var(--stu-primary,#2f6690)}.lws-guide-status.completed{color:#177a5a}.lws-guide-status.error{color:#c65d2e}.lws-guide-blocks{max-height:280px;padding:12px 16px;overflow-y:auto}.lws-guide-block{opacity:0;margin-bottom:8px;transition:opacity .22s,transform .22s;transform:translateY(8px)}.lws-guide-block:last-child{margin-bottom:0}.lws-guide-block-visible{opacity:1;transform:translateY(0)}.lws-guide-bubble{max-width:90%;color:var(--text-main,#16425b);background:#2f66900f;border-radius:4px 12px 12px;padding:8px 14px;font-size:13px;line-height:1.7;display:inline-block}.lws-guide-bubble.fallback{color:#627d98;background:#16425b08;font-style:italic}.lws-fallback-text{color:#627d98;text-align:center;padding:8px 0;font-size:14px;line-height:1.7}.lws-agent-status-bar{margin:0 0 12px}.lws-card-deck{background:linear-gradient(145deg,#fff,#f7fafc);border:1px solid #2f669021;border-radius:12px;outline:0;gap:10px;margin:0 0 12px;padding:13px 14px;display:grid;position:relative;box-shadow:0 5px 18px #16425b0b}.lws-card-deck:focus-visible{box-shadow:0 0 0 3px #2f66901f}.lws-card-deck>header{justify-content:space-between;align-items:center;gap:16px;display:flex}.lws-card-deck>header>div:first-child{gap:3px;display:grid}.lws-card-deck>header span{color:#6d8290;font-size:11px}.lws-card-deck>header strong{color:#254252;font-size:13px}.lws-card-deck.is-generating>header strong{color:#526f80}.lws-card-progress{align-items:baseline;gap:3px;display:flex!important}.lws-card-progress b{color:var(--stu-primary,#2f6690);font-size:18px}.lws-card-progress span{font-size:11px}.lws-learning-card{background:#fff;border:1px solid #2f66901f;border-radius:11px;gap:9px;padding:14px;animation:.22s lws-card-enter;display:grid;box-shadow:0 4px 15px #16425b09}.lws-learning-card.scope-personalized{border-left:3px solid #4caf84}.lws-card-meta{flex-wrap:wrap;gap:5px;display:flex}.lws-card-meta span{color:#42677b;background:#edf4f8;border-radius:999px;padding:3px 6px;font-size:10px}.lws-card-meta span:last-child{color:#267458;background:#edf7f2}.lws-learning-card h4{color:#193749;margin:0;font-size:17px}.lws-card-summary{color:#506a79;margin:0;font-size:13px;line-height:1.65}.lws-card-sections{gap:8px;padding-top:4px;display:grid}.lws-card-sections[hidden]{display:none}.lws-card-sections section{background:#f7fafb;border-radius:8px;padding:9px 10px}.lws-card-sections h5{color:#31566b;margin:0 0 5px;font-size:12px}.lws-card-sections p{color:#425d6c;margin:0;font-size:12px;line-height:1.65}.lws-card-sections ul{color:#425d6c;margin:0;padding-left:18px;font-size:12px}.lws-card-sections aside{color:#497262;background:#f3faf6;border-left:3px solid #88bca6;padding:8px 10px;font-size:11px}.lws-card-sources summary{color:#607c8c;cursor:pointer;width:max-content;font-size:11px}.lws-card-sources>div{border:1px solid #e5ebef;border-radius:7px;gap:2px;margin-top:6px;padding:7px 9px;display:grid}.lws-card-sources b{font-size:11px}.lws-card-sources p{color:#6e818c;margin:0;font-size:10px}.lws-card-sources small{color:#8a9aa3;font-size:9px}.lws-learning-card>footer{flex-wrap:wrap;gap:5px;padding-top:3px;display:flex}.lws-learning-card>footer button,.lws-card-refresh{color:#526f7e;min-height:30px;font:inherit;cursor:pointer;background:#fff;border:1px solid #d8e3e9;border-radius:7px;align-items:center;gap:4px;padding:0 8px;font-size:10px;display:inline-flex}.lws-learning-card>footer button svg,.lws-card-refresh svg{width:14px;height:14px}.lws-learning-card>footer button.active{color:#257358;background:#edf8f3;border-color:#9dc8b6}.lws-learning-card>footer button:disabled{opacity:.4;cursor:default}.lws-card-refresh{justify-self:end}.lws-card-deck.is-generating .lws-card-refresh svg{animation:1.8s linear infinite lws-card-spin}.lws-card-deck.is-loading i{background:#dbe7ed;border-radius:4px;width:38px;height:4px;animation:1.2s ease-in-out infinite lws-card-pulse}.lws-card-skeleton{background:#f7fafb;border-radius:10px;gap:8px;padding:14px;display:grid}.lws-card-skeleton b,.lws-card-skeleton span{background:#e4ecef;border-radius:6px;height:10px;animation:1.2s ease-in-out infinite lws-card-pulse;display:block}.lws-card-skeleton b{width:36%}.lws-card-skeleton span:last-child{width:72%}@keyframes lws-card-enter{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}@keyframes lws-card-spin{to{transform:rotate(360deg)}}@keyframes lws-card-pulse{50%{opacity:.45}}.lws-agent-status-inner{color:var(--text-sub,#627d98);background:#16425b08;border-radius:8px;align-items:center;gap:8px;padding:8px 14px;font-size:12px;display:flex}.lws-agent-status-inner.completed{color:#177a5a;background:#177a5a0f}.lws-agent-status-inner.failed{color:#c65d2e;background:#c65d2e0f}.lws-agent-status-inner.streaming{color:var(--stu-primary,#2f6690);background:#2f66900f}.lws-agent-name{font-weight:600}.lws-agent-state-label{flex:1}.lws-agent-elapsed,.lws-agent-reqid{color:#999;font-family:monospace;font-size:11px}.lws-teaching-result{animation:.3s lws-fadeIn}.lws-teaching-header{margin-bottom:16px}.lws-teaching-meta{color:var(--text-sub,#627d98);flex-wrap:wrap;gap:8px;font-size:12px;display:flex}.lws-teaching-strategy,.lws-teaching-time,.lws-teaching-reason{background:#16425b0a;border-radius:6px;align-items:center;gap:4px;padding:4px 10px;display:inline-flex}.lws-teaching-reason{text-overflow:ellipsis;white-space:nowrap;cursor:help;max-width:300px;overflow:hidden}.lws-sections-container{flex-direction:column;gap:12px;display:flex}.lws-section-card{background:#fff;border:1px solid #16425b12;border-radius:10px;transition:box-shadow .2s;overflow:hidden}.lws-section-card:hover{box-shadow:0 2px 8px #16425b0f}.lws-section-card.lws-section-warning{background:#d4632a05;border-left:3px solid #d4632a}.lws-section-header{background:#16425b05;border-bottom:1px solid #16425b0a;align-items:center;gap:8px;padding:10px 16px;display:flex}.lws-section-icon{font-size:16px}.lws-section-title{color:var(--text-main,#16425b);flex:1;font-size:14px;font-weight:600}.lws-section-type-tag{border-radius:4px;padding:2px 8px;font-size:11px;font-weight:600}.lws-section-body{color:var(--text-main,#16425b);padding:14px 16px;font-size:14px;line-height:1.8}.lws-section-body p{margin:0 0 10px}.lws-section-body p:last-child{margin-bottom:0}.lws-section-body ul,.lws-section-body ol{margin:8px 0;padding-left:20px}.lws-section-body li{margin-bottom:4px}.lws-section-body code{background:#16425b0f;border-radius:3px;padding:2px 6px;font-size:13px}.lws-section-body pre{background:#f5f7fa;border-radius:8px;padding:12px 16px;font-size:13px;line-height:1.6;overflow-x:auto}.lws-section-body blockquote{border-left:3px solid var(--stu-primary,#2f6690);background:#2f669008;border-radius:0 6px 6px 0;margin:12px 0;padding:8px 14px}.lws-section-body .katex{font-size:1.1em}.lws-sources-details{background:#fff;border:1px solid #16425b12;border-radius:10px;margin-top:16px}.lws-sources-summary{color:var(--text-sub,#627d98);cursor:pointer;padding:10px 16px;font-size:13px;font-weight:600}.lws-sources-list{padding:0 16px 12px}.lws-source-item{border-bottom:1px solid #16425b0a;justify-content:space-between;align-items:center;padding:6px 0;font-size:12px;display:flex}.lws-source-item:last-child{border-bottom:none}.lws-source-name{color:var(--text-main,#16425b)}.lws-source-score{color:var(--stu-primary,#2f6690);font-family:monospace;font-weight:600}.lws-stream-loading{text-align:center;color:var(--text-sub,#627d98);padding:24px}.lws-loading-steps{flex-direction:column;align-items:flex-start;gap:8px;max-width:280px;margin:0 auto;display:flex}.lws-loading-step{color:#999;padding-left:20px;font-size:13px;position:relative}.lws-loading-step:before{content:"";border:2px solid #ddd;border-radius:50%;width:8px;height:8px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.lws-loading-step.active{color:var(--stu-primary,#2f6690);font-weight:600}.lws-loading-step.active:before{border-color:var(--stu-primary,#2f6690);background:var(--stu-primary,#2f6690)}.lws-info-text{text-align:center;color:var(--text-sub,#627d98);padding:20px;font-size:14px}.lws-modal-overlay{z-index:1000;background:#00000059;justify-content:center;align-items:center;animation:.15s lws-fadeIn;display:flex;position:fixed;inset:0}.lws-modal{background:#fff;border-radius:14px;width:90%;max-width:420px;overflow:hidden;box-shadow:0 8px 40px #0000001f}.lws-modal-header{padding:18px 20px 0}.lws-modal-title{color:var(--text-main,#16425b);margin:0;font-size:16px;font-weight:700}.lws-modal-body{color:var(--text-main,#16425b);padding:14px 20px;font-size:14px;line-height:1.7}.lws-modal-body p{margin:0 0 8px}.lws-modal-hint{color:#999;font-size:12px}.lws-modal-footer{justify-content:flex-end;gap:8px;padding:12px 20px 18px;display:flex}.lws-skip-options{flex-direction:column;gap:6px;margin-top:10px;display:flex}.lws-skip-option{color:var(--text-main,#16425b);cursor:pointer;border-radius:6px;align-items:center;gap:8px;padding:6px 10px;font-size:13px;transition:background .15s;display:flex}.lws-skip-option:hover{background:#16425b08}.lws-skip-option input[type=radio]{accent-color:var(--stu-primary,#2f6690)}.lws-dev-raw{margin-top:12px;font-size:11px}.lws-dev-raw summary{color:#999;cursor:pointer}.lws-dev-raw pre{background:#f5f7fa;border-radius:6px;max-height:200px;margin-top:6px;padding:10px;font-size:11px;line-height:1.5;overflow:auto}.lws-raw-json{white-space:pre-wrap;background:#f5f7fa;border-radius:6px;max-height:300px;padding:12px;font-size:12px;overflow:auto}.lws-timeline{flex-direction:column;gap:12px;padding:4px 0 20px;display:flex}.lws-node-history{flex-direction:column;gap:10px;margin:0 0 14px;display:flex}.lws-history-card{color:var(--text-sub,#627d98);background:#16425b06;border:1px solid #16425b17;border-radius:10px}.lws-history-card summary{cursor:pointer;padding:11px 14px;font-size:13px;font-weight:600;list-style:none}.lws-history-card summary::-webkit-details-marker{display:none}.lws-history-card summary:after{content:"展开";float:right;font-size:12px;font-weight:400}.lws-history-card[open] summary:after{content:"收起"}.lws-history-content .lws-timeline{padding-bottom:0}.lws-trainer-progress{color:var(--text-main,#16425b);background:linear-gradient(135deg,#2f669012,#4a7ca106);border:1px solid #2f669029;border-radius:12px;padding:14px 15px}.lws-trainer-progress-head{justify-content:space-between;gap:12px;font-size:14px;display:flex}.lws-trainer-progress-head span{color:var(--text-sub,#627d98);font-size:12px}.lws-trainer-progress-track{background:#2f669021;border-radius:99px;height:7px;margin:10px 0;overflow:hidden}.lws-trainer-progress-track i{border-radius:inherit;background:var(--stu-primary,#2f6690);height:100%;transition:width .25s;display:block}.lws-trainer-progress-stats{color:var(--text-sub,#627d98);flex-wrap:wrap;gap:6px 12px;font-size:12px;display:flex}.lws-trainer-progress small{color:var(--text-hint,#829ab1);margin-top:9px;font-size:11px;line-height:1.55;display:block}.lws-timeline-card{background:#fff;border:1px solid #16425b12;border-radius:12px;animation:.3s lws-fadeIn;overflow:hidden}.lws-timeline-card-header{background:#16425b05;border-bottom:1px solid #16425b0a;align-items:center;gap:8px;padding:10px 14px;display:flex}.lws-timeline-card-body{padding:14px}.lws-timeline-badge{white-space:nowrap;border-radius:5px;padding:3px 8px;font-size:11px;font-weight:700}.lws-timeline-badge.question{color:var(--stu-primary,#2f6690);background:#2f669014}.lws-timeline-badge.answer{color:#4b5fc0;background:#4b5fc014}.lws-timeline-badge.correct{color:#177a5a;background:#177a5a1a}.lws-timeline-badge.incorrect{color:#bf4d42;background:#bf4d421a}.lws-timeline-badge.guide{color:#6366f1;background:#6366f114}.lws-timeline-difficulty{color:var(--text-hint,#829ab1);text-transform:uppercase;background:#16425b0a;border-radius:3px;margin-left:auto;padding:2px 6px;font-size:10px}.lws-timeline-time{color:var(--text-hint,#829ab1);margin-left:auto;font-size:10px}.lws-timeline-question_card .lws-question-stem{margin-bottom:12px;font-size:14px;font-weight:600;line-height:1.7}.lws-question-options-display{flex-direction:column;gap:6px;display:flex}.lws-option-display{background:#16425b05;border-radius:6px;padding:8px 10px;font-size:13px;line-height:1.6;display:block}.lws-option-display b{color:var(--stu-primary,#2f6690)}.lws-timeline-answer .lws-question-options{flex-direction:column;gap:8px;margin-bottom:12px;display:flex}.lws-timeline-answer .lws-option-label{cursor:pointer;border:1.5px solid #16425b1f;border-radius:9px;align-items:flex-start;gap:10px;padding:11px 13px;font-size:13px;transition:border-color .15s,background .15s;display:flex}.lws-timeline-answer .lws-option-label:hover{background:#2f669008;border-color:#2f66904d}.lws-timeline-answer .lws-option-label input[type=radio]{accent-color:var(--stu-primary,#2f6690);margin-top:1px}.lws-timeline-answer .lws-option-label:has(input:checked){border-color:var(--stu-primary,#2f6690);background:#2f66900f}.lws-timeline-answer .lws-option-key{text-align:center;min-width:20px;color:var(--stu-primary,#2f6690);font-size:12px;font-weight:700}.lws-timeline-answer .lws-textarea{box-sizing:border-box;width:100%;min-height:80px;font:inherit;resize:vertical;border:1.5px solid #16425b24;border-radius:9px;margin-bottom:12px;padding:11px;font-size:13px}.lws-timeline-answer .lws-textarea:focus{border-color:var(--stu-primary,#2f6690);outline:0;box-shadow:0 0 0 3px #2f669014}.lws-submit-btn{margin-right:8px}.lws-answer-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.lws-submit-status{color:var(--text-sub,#627d98);font-size:12px}.lws-student-answer-text{color:var(--text-main,#102a43);background:#4b5fc00a;border-left:3px solid #4b5fc0;border-radius:8px;padding:10px 14px;font-size:14px;font-weight:600}.lws-eval-row{margin-bottom:6px;font-size:13px}.lws-eval-label{color:var(--text-sub,#627d98);font-weight:600}.lws-eval-analysis{color:var(--text-sub,#627d98);background:#16425b05;border-radius:6px;margin-top:8px;padding:10px 12px;font-size:13px;line-height:1.7}.lws-eval-error-type{color:#bf4d42;background:#bf4d420f;border-radius:3px;margin-top:4px;padding:2px 8px;font-size:11px;display:inline-block}.lws-timeline-info-text{color:var(--text-sub,#627d98);text-align:center;padding:8px 0;font-size:13px}.lws-timeline-error{background:#bf4d4208;border-color:#bf4d4226}.lws-timeline-guide .lws-guide-bubble-timeline{color:var(--text-main,#16425b);padding:4px 0;font-size:13px;line-height:1.7}.student-content{overflow:visible!important}.lws-sticky-shell{z-index:80;-webkit-backdrop-filter:blur(12px);background:#f5f8fcf5;margin-bottom:0;padding-top:12px;padding-bottom:4px;transition:box-shadow .2s;position:sticky;top:0}.lws-completed-card{text-align:center;background:#fff;border:1px solid #16425b12;border-radius:14px;padding:48px 20px}.lws-completed-icon{margin-bottom:16px;font-size:48px}.lws-completed-card h3{color:var(--text-main,#102a43);margin:0 0 8px;font-size:20px}.lws-completed-card p{color:var(--text-sub,#627d98);margin:0 0 8px;font-size:14px}.lws-completed-actions{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.lws-progress-node.current .lws-progress-dot{animation:2.2s ease-out infinite lws-node-pulse;position:relative;box-shadow:0 0 #2f669047}.lws-section-card,.lws-answer-evaluation,.lws-completed-card{animation:.38s cubic-bezier(.2,.75,.25,1) both lws-content-enter}.lws-section-card{transition:transform .2s,box-shadow .2s,border-color .2s}.lws-section-card:hover{border-color:#2f669029;transform:translateY(-2px);box-shadow:0 10px 28px #16425b12}@keyframes lws-content-enter{0%{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}@keyframes lws-node-pulse{0%{box-shadow:0 0 #2f669047}70%{box-shadow:0 0 0 8px #2f669000}to{box-shadow:0 0 #2f669000}}.lws-answer-evaluation{background:linear-gradient(135deg,#2f66900e,#177a5a09);border:1px solid #2f669024;border-radius:12px;grid-template-columns:38px 1fr;gap:13px;margin-top:14px;padding:16px 18px;display:grid}.lws-answer-evaluation.strong{background:linear-gradient(135deg,#177a5a13,#2f669009);border-color:#177a5a33}.lws-answer-evaluation-icon{width:34px;height:34px;color:var(--stu-primary,#2f6690);background:#fff;border-radius:50%;justify-content:center;align-items:center;font-weight:800;display:flex;box-shadow:0 3px 12px #16425b17}.lws-answer-evaluation.strong .lws-answer-evaluation-icon{color:#177a5a}.lws-answer-evaluation-head{color:var(--stu-primary,#2f6690);align-items:center;gap:8px;font-size:12px;display:flex}.lws-answer-evaluation-head span{color:#177a5a;background:#fff;border-radius:999px;padding:2px 7px;font-weight:700}.lws-answer-evaluation h4{margin:5px 0 4px;font-size:15px}.lws-answer-evaluation p{color:var(--text-sub,#627d98);margin:0;font-size:13px;line-height:1.7}.lws-answer-evaluation-tip{border-top:1px dashed #2f669021;padding-top:7px;margin-top:7px!important}.lws-completed-card{text-align:left;padding:25px}.lws-completed-hero{text-align:left;justify-content:center;align-items:center;gap:15px;margin-bottom:20px;display:flex}.lws-completed-hero .lws-completed-icon{margin:0}.lws-completion-chat{background:linear-gradient(145deg,#f5f9fcf5,#fff);border:1px solid #2f669024;border-radius:13px;max-width:780px;margin:0 auto;padding:16px}.lws-completion-chat-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:11px;display:flex}.lws-completion-chat-head b{font-size:14px}.lws-completion-chat-head span{color:var(--text-hint,#829ab1);font-size:11px}.lws-completion-messages{flex-direction:column;gap:9px;max-height:350px;padding:4px 2px 10px;display:flex;overflow:auto}.lws-completion-empty{text-align:center;color:var(--text-hint,#829ab1);padding:20px;font-size:12px}.lws-completion-message{border-radius:11px;max-width:88%;padding:10px 13px;font-size:13px;line-height:1.7}.lws-completion-message.user{background:var(--stu-primary,#2f6690);color:#fff;align-self:flex-end}.lws-completion-message.assistant{background:#fff;border:1px solid #16425b17;align-self:flex-start;box-shadow:0 3px 12px #16425b0a}.lws-completion-message.user .message-markdown{color:#fff}.lws-chat-thinking{color:var(--text-hint,#829ab1);animation:1.2s ease-in-out infinite lws-shimmer}.lws-completion-suggestions{flex-wrap:wrap;gap:7px;margin:2px 0 10px;display:flex}.lws-completion-suggestions button{color:var(--stu-primary,#2f6690);font:inherit;cursor:pointer;background:#fff;border:1px solid #2f669026;border-radius:999px;padding:6px 9px;font-size:11px;transition:all .18s}.lws-completion-suggestions button:hover{background:#2f669012;transform:translateY(-1px)}.lws-completion-form{align-items:flex-end;gap:8px;display:flex}.lws-completion-form textarea{resize:vertical;min-height:44px;max-height:110px;font:inherit;border:1px solid #16425b26;border-radius:9px;outline:0;flex:1;padding:10px 11px;font-size:13px}.lws-completion-form textarea:focus{border-color:var(--stu-primary,#2f6690);box-shadow:0 0 0 3px #2f669014}.lf-ai-create{box-shadow:0 8px 22px #184c702e}.lf-ai-builder-intro{color:var(--stu-primary,#2f6690);background:linear-gradient(135deg,#2f669014,#6366f10e);border-radius:11px;align-items:flex-start;gap:11px;margin-bottom:12px;padding:13px 14px;display:flex}.lf-ai-builder-intro b{font-size:14px}.lf-ai-builder-intro p{color:var(--text-sub,#627d98);margin:4px 0 0;font-size:12px;line-height:1.55}.lf-ai-generating-status{background:#2f66900b;border:1px solid #2f66901f;border-radius:10px;align-items:center;gap:12px;margin-top:16px;padding:13px;display:flex}.lf-ai-generating-status i{border:2px solid #2f66902e;border-top-color:var(--stu-primary,#2f6690);border-radius:50%;flex:none;width:20px;height:20px;animation:.7s linear infinite lf-spin}.lf-ai-generating-status b,.lf-ai-generating-status span{display:block}.lf-ai-generating-status b{font-size:13px}.lf-ai-generating-status span{color:var(--text-sub,#627d98);margin-top:3px;font-size:11px}.lf-ai-success,.lf-ai-fallback{border-radius:999px;margin-left:6px;padding:2px 6px;font-size:10px;display:inline-flex}.lf-ai-success{color:#177a5a;background:#177a5a17}.lf-ai-fallback{color:#a86713;background:#bd7c201a}.lf-ai-goal-row{flex-wrap:wrap;gap:7px;margin-bottom:12px;display:flex}.lf-ai-goal-row span{color:var(--stu-primary,#2f6690);background:#2f669012;border-radius:7px;padding:5px 8px;font-size:11px;font-weight:700}.lf-goal-create{background:#ffffffd1;border-color:#2f66903d}.lf-goal-wizard{max-width:760px}.lf-goal-wizard select{min-height:40px;color:var(--text-main,#102a43);font:inherit;background:#fff;border:1px solid #16425b24;border-radius:8px;padding:0 10px}.lg-intro{color:var(--stu-primary,#2f6690);background:linear-gradient(135deg,#2f669013,#6366f10b);border:1px solid #2f66901f;border-radius:12px;align-items:flex-start;gap:12px;margin-bottom:15px;padding:15px;display:flex}.lg-intro b{font-size:15px}.lg-intro p{color:var(--text-sub,#627d98);margin:4px 0 0;font-size:12px;line-height:1.6}.lg-examples{flex-wrap:wrap;gap:7px;margin:-3px 0 15px;display:flex}.lg-examples button{color:var(--stu-primary,#2f6690);font:inherit;cursor:pointer;background:#fff;border:1px solid #2f669021;border-radius:999px;padding:6px 10px;font-size:11px}.lg-examples button:hover{background:#2f66900f}.lg-settings{grid-template-columns:repeat(3,minmax(0,1fr))}.lg-settings label{gap:6px;display:grid}.lg-settings input,.lg-settings select{box-sizing:border-box;width:100%}.lg-loading{text-align:center;padding:24px 10px}.lg-loading>i{border:3px solid #2f669024;border-top-color:var(--stu-primary,#2f6690);border-radius:50%;width:30px;height:30px;margin:0 auto 13px;animation:.7s linear infinite lf-spin;display:block}.lg-loading h3{margin:0 0 6px}.lg-loading p{color:var(--text-sub,#627d98);margin:0;font-size:12px}.lg-loading ol{grid-template-columns:repeat(4,1fr);gap:8px;margin:24px 0 0;padding:0;list-style:none;display:grid}.lg-loading li{color:var(--text-hint,#829ab1);background:#16425b09;border-radius:8px;padding:8px;font-size:11px}.lg-loading li.active{color:var(--stu-primary,#2f6690);background:#2f669017;font-weight:700}.lg-analysis-head>span,.lg-blocked>span{color:var(--stu-primary,#2f6690);background:#2f669014;border-radius:999px;padding:3px 8px;font-size:10px;font-weight:800;display:inline-block}.lg-analysis-head h3,.lg-blocked h3{margin:9px 0 5px;font-size:20px}.lg-analysis-head p,.lg-blocked p{color:var(--text-sub,#627d98);margin:0 0 14px;line-height:1.65}.lg-facts{grid-template-columns:repeat(4,1fr);gap:8px;margin:15px 0;display:grid}.lg-facts>div{background:#16425b06;border:1px solid #16425b14;border-radius:9px;padding:11px}.lg-facts small,.lg-facts b{display:block}.lg-facts small{color:var(--text-hint,#829ab1);margin-bottom:5px;font-size:10px}.lg-facts b{font-size:13px}.lg-analysis-section{margin:15px 0}.lg-analysis-section h4{margin:0 0 8px;font-size:13px}.lg-analysis-section ol{gap:6px;padding:0;list-style:none;display:grid}.lg-analysis-section li{background:#16425b08;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:9px 11px;font-size:12px;display:flex}.lg-analysis-section li em{color:var(--text-hint,#829ab1);flex:none;font-size:10px;font-style:normal}.lg-chips,.lg-suggestions{flex-wrap:wrap;gap:6px;display:flex}.lg-chips span,.lg-suggestions span{color:var(--stu-primary,#2f6690);background:#2f669011;border-radius:7px;padding:5px 8px;font-size:11px}.lg-coverage{border-radius:9px;justify-content:space-between;gap:12px;margin-top:14px;padding:11px 12px;font-size:12px;display:flex}.lg-coverage.sufficient{color:#177a5a;background:#177a5a14}.lg-coverage.partial{color:#9a6410;background:#bd7c201a}.lg-coverage.insufficient{color:#a83f36;background:#bf4d4214}.lg-coverage.unavailable{color:#627d98;background:#627d981a}.lg-warning{color:#8b5c0c;background:#c789220f;border-left:3px solid #c78922;padding:8px 10px;font-size:11px}.lg-blocked{background:#16425b06;border:1px solid #16425b17;border-radius:12px;padding:18px}.lg-blocked.out{background:#bf4d4209;border-color:#bf4d4229}.lg-blocked.insufficient{background:#bd7c2009;border-color:#bd7c202e}.lg-option-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:13px;display:grid}.lg-option-grid button{text-align:left;color:var(--text-main,#102a43);cursor:pointer;background:#fff;border:1px solid #2f669021;border-radius:9px;gap:4px;padding:11px;display:grid}.lg-option-grid button:hover{border-color:var(--stu-primary,#2f6690);background:#2f669009}.lg-option-grid small{color:var(--text-sub,#627d98);line-height:1.45}@media (width<=700px){.lg-settings,.lg-facts,.lg-loading ol{grid-template-columns:1fr 1fr}.lg-option-grid{grid-template-columns:1fr}.lg-coverage{display:grid}}@media (prefers-reduced-motion:reduce){.lws-progress-node.current .lws-progress-dot,.lws-section-card,.lws-answer-evaluation,.lws-completed-card,.lws-chat-thinking{animation:none}.lws-section-card,.lws-completion-suggestions button{transition:none}}@keyframes lws-fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes lws-slideIn{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}@media (width<=768px){.lws-topbar{flex-wrap:wrap;gap:8px}.lws-topbar-info{order:-1;width:100%}.lws-bottom-bar{left:0}.lws-progress-track{gap:4px}.lws-progress-node{padding:6px 8px;font-size:11px}.lws-progress-label{max-width:80px}.lws-kp-meta{gap:8px}.lws-agent-status-inner{gap:6px;font-size:11px}.lws-task-header{flex-direction:column;align-items:flex-start;gap:6px}.lws-guide-bubble{max-width:95%}.lws-section-body{padding:12px}.lws-modal{max-width:95vw}}.lws-multimodal-container{margin-bottom:16px}.lws-multimodal-area{border:1px solid var(--border-soft,#16425b1f);background:#fff;border-radius:10px;padding:14px}.lws-multimodal-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.lws-multimodal-title{color:var(--text-sub,#627d98);font-size:13px;font-weight:600}.lws-file-select-btn{background:var(--primary,#2f6690);color:#fff;cursor:pointer;border:none;border-radius:6px;align-items:center;padding:5px 12px;font-size:12px;display:inline-flex}.lws-file-select-btn:hover{opacity:.9}.lws-file-limit-text{color:var(--text-sub,#627d98);font-size:11px}.lws-drop-zone{text-align:center;color:var(--text-sub,#627d98);cursor:pointer;border:2px dashed #2f669033;border-radius:8px;margin-bottom:10px;padding:20px;font-size:12px;transition:border-color .2s,background .2s}.lws-drop-zone.lws-dragover{border-color:var(--primary,#2f6690);background:#2f66900a}.lws-drop-hint{color:#627d9899;margin-top:4px;font-size:10px;display:block}.lws-file-previews{flex-wrap:wrap;gap:10px;display:flex}.lws-file-preview-item{border:1px solid var(--border-soft,#16425b1f);border-radius:8px;width:80px;height:80px;position:relative;overflow:hidden}.lws-file-thumb{object-fit:cover;width:100%;height:100%}.lws-file-name{display:none}.lws-file-remove{color:#fff;cursor:pointer;background:#0009;border:none;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:14px;line-height:1;display:flex;position:absolute;top:2px;right:2px}.lws-file-remove:hover{background:#dc2626cc}.lws-input-composer{border:1px solid var(--border-soft,#16425b1f);background:var(--card-bg,#fff);border-radius:12px;margin-top:16px;margin-bottom:16px;animation:.25s lwsComposerIn;overflow:hidden;box-shadow:0 2px 12px #16425b0f}@keyframes lwsComposerIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.lws-input-composer.lws-composer-dragover{border-color:var(--primary,#2f6690);background:#2f669008}.lws-composer-body{padding:14px 16px}.lws-composer-textarea{border:1px solid var(--border-medium,#16425b26);width:100%;min-height:80px;color:var(--text-main,#102a43);resize:vertical;box-sizing:border-box;background:#fafbfc;border-radius:10px;padding:12px 14px;font-family:inherit;font-size:14px;line-height:1.6;transition:border-color .2s}.lws-composer-textarea:focus{border-color:var(--primary,#2f6690);background:#fff;outline:none;box-shadow:0 0 0 3px #2f669014}.lws-composer-options{flex-direction:column;gap:8px;margin-bottom:8px;display:flex}.lws-composer-option{border:1px solid var(--border-soft,#16425b1a);cursor:pointer;border-radius:10px;align-items:flex-start;gap:10px;padding:10px 14px;font-size:14px;line-height:1.5;transition:all .15s;display:flex}.lws-composer-option:hover{border-color:var(--primary,#2f6690);background:#2f669008}.lws-composer-option input[type=radio],.lws-composer-option input[type=checkbox]{accent-color:var(--primary,#2f6690);flex-shrink:0;margin-top:3px}.lws-composer-option-key{color:var(--primary,#2f6690);text-align:center;min-width:20px;font-weight:700}.lws-composer-option-content{color:var(--text-main,#102a43)}.lws-composer-footer{border-top:1px solid var(--border-soft,#16425b14);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;display:flex}.lws-composer-attachments{flex-wrap:wrap;flex:1;align-items:center;gap:8px;min-width:0;display:flex}.lws-composer-attach-btn{color:var(--primary,#2f6690);cursor:pointer;white-space:nowrap;background:#2f66900f;border:1px dashed #2f669033;border-radius:8px;align-items:center;gap:4px;padding:6px 12px;font-size:13px;transition:all .15s;display:inline-flex}.lws-composer-attach-btn:hover{border-color:var(--primary,#2f6690);background:#2f66901a}.lws-composer-attach-btn input[type=file]{display:none}.lws-composer-file-count{color:var(--text-hint,#829ab1);white-space:nowrap;font-size:11px}.lws-composer-file-previews{flex-wrap:wrap;gap:6px;display:flex}.lws-composer-file-preview{border:1px solid var(--border-soft,#16425b1f);border-radius:6px;flex-shrink:0;width:48px;height:48px;position:relative;overflow:hidden}.lws-composer-thumb{object-fit:cover;width:100%;height:100%}.lws-composer-file-remove{color:#fff;cursor:pointer;background:#0000008c;border:none;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;padding:0;font-size:11px;line-height:1;display:flex;position:absolute;top:1px;right:1px}.lws-composer-file-remove:hover{background:#dc2626d9}.lws-composer-submit{white-space:nowrap;flex-shrink:0}.lws-composer-status{color:var(--text-hint,#829ab1);padding:0 16px 10px;font-size:12px}.lws-agent-stage-note{color:var(--text-hint,#829ab1);margin-left:6px;font-size:11px;font-style:italic}.lws-file-preview-attached{color:var(--primary,#2f6690);align-items:center;gap:4px;margin-left:4px;font-size:11px;display:inline-flex}.lws-narration{background:#f8faffeb;border:1px solid #6366f12e;border-radius:12px;justify-content:space-between;align-items:center;gap:14px;margin:14px 18px 18px;padding:12px 14px;display:flex}.lws-narration-copy{gap:3px;min-width:0;display:grid}.lws-narration-copy>span:first-child{color:#312e81;font-weight:700}.lws-narration-copy>span:last-child{color:#64748b;text-overflow:ellipsis;font-size:13px;overflow:hidden}.lws-narration-controls{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.lws-narration-controls button,.lws-narration-controls select{color:#3730a3;cursor:pointer;background:#fff;border:1px solid #c7d2fe;border-radius:8px;min-height:32px;padding:5px 9px}.lws-narration-controls button:disabled{cursor:not-allowed;opacity:.48}.lws-narration-controls label{color:#475569;white-space:nowrap;font-size:13px}.lws-history-narrate{color:#4f46e5;cursor:pointer;background:0 0;border:0;margin:8px 12px 0;font-size:13px}@media (width<=860px){.lws-narration{flex-direction:column;align-items:flex-start}}:root{--z-learning-progress:80;--z-learning-bottom-bar:84;--z-learning-pdf:88;--z-learning-narration:92;--z-global-assistant:96;--z-task-island:104;--z-dropdown:120;--z-modal-backdrop:900;--z-modal:1000;--z-toast:1200;--z-learning-mini-player:var(--z-learning-narration);--z-pdf-panel:var(--z-learning-pdf);--lws-progress-offset:124px}.lws-page{min-width:0;max-width:1680px}.student-dashboard-wrapper.learning-session-layout{overflow:visible}.lws-progress-trigger{top:0;left:var(--sidebar-width,78px);height:12px;z-index:calc(var(--z-learning-progress) + 1);pointer-events:auto;position:fixed;right:0}.lws-sticky-shell{z-index:var(--z-learning-progress)!important}.lws-progress-nav{gap:7px;display:grid}.lws-progress-summary{justify-content:space-between;align-items:end;gap:16px;padding:2px 4px 0;display:flex}.lws-progress-summary>div:first-child{gap:2px;min-width:0;display:grid}.lws-progress-summary b{color:#172033;text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.lws-progress-summary span,.lws-progress-summary small{color:#64748b;font-size:11px}.lws-progress-summary-value{text-align:right;flex:none;display:grid}.lws-progress-summary-value strong{color:var(--stu-primary,#2f6690);font-size:15px}.lws-progress-track{min-width:max-content;display:flex}.lws-progress-node{appearance:none;font:inherit;text-align:left;cursor:pointer}.lws-progress-node.waiting{cursor:not-allowed}.lws-progress-compact{color:#172033;width:100%;font:inherit;cursor:pointer;text-align:left;background:#fff;border:1px solid #2f66901f;border-radius:9px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 12px;padding:7px 9px;display:none}.lws-progress-compact span{text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:650;overflow:hidden}.lws-progress-compact b{color:var(--stu-primary,#2f6690);font-size:11px}.lws-progress-compact i{background:#e8eef5;border-radius:999px;grid-column:1/-1;height:3px;overflow:hidden}.lws-progress-compact em{border-radius:inherit;background:var(--stu-primary,#2f6690);height:100%;display:block}.lws-progress-pin,.lws-progress-collapse{color:#52677c;min-height:30px;font:inherit;cursor:pointer;background:#fff;border:1px solid #2f669029;border-radius:7px;padding:4px 8px;font-size:11px}.lws-sticky-shell.is-progress-locked .lws-progress-pin{color:#1d4ed8;background:#eff6ff;border-color:#2563eb4d}.lws-sticky-shell.is-progress-collapsed{padding-top:5px}.lws-sticky-shell.is-progress-collapsed .lws-topbar,.lws-sticky-shell.is-progress-collapsed .lws-progress-summary,.lws-sticky-shell.is-progress-collapsed .lws-progress-track{display:none}.lws-sticky-shell.is-progress-collapsed .lws-progress-compact{display:grid}.lws-history-card,.lws-guide-panel,.lws-content-area{scroll-margin-top:var(--lws-progress-offset)}.lws-narration-copy small{color:#64748b;font-size:11px}.lws-narration-progress{background:#e2e8f0;border-radius:999px;width:min(280px,100%);height:4px;overflow:hidden}.lws-narration-progress>i{border-radius:inherit;background:#4f46e5;width:0;height:100%;transition:width .18s;display:block}[data-narration-anchor].is-narrating{background:#6366f11a;border-radius:5px;transition:background .15s,box-shadow .15s;box-shadow:0 0 0 3px #6366f11a}.lws-narration-mini{z-index:var(--z-learning-mini-player);width:min(720px, calc(100vw - var(--sidebar-width,78px) - 260px));background:#fffffff7;border:1px solid #4f46e533;border-radius:12px;align-items:center;gap:12px;min-width:440px;padding:10px 12px;display:flex;position:fixed;bottom:78px;right:218px;box-shadow:0 10px 28px #0f172a24}.lws-narration-mini[hidden]{display:none}.lws-narration-mini-copy{flex:1;gap:3px;min-width:120px;display:grid}.lws-narration-mini-copy b,.lws-narration-mini-copy span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.lws-narration-mini-copy b{color:#312e81;font-size:12px}.lws-narration-mini-copy span{color:#64748b;font-size:10px}.lws-narration-mini-controls{align-items:center;gap:5px;display:flex}.lws-narration-mini button,.lws-narration-mini select{color:#3730a3;min-height:29px;font:inherit;cursor:pointer;background:#fff;border:1px solid #c7d2fe;border-radius:7px;padding:4px 7px;font-size:11px}.lws-narration-mini.is-minimized{width:auto;min-width:210px}.lws-narration-mini.is-minimized .lws-narration-mini-controls>:not([data-learning-action=narration-play-pause]):not([data-learning-action=narration-mini-toggle]){display:none}@media (width<=1100px),(height<=680px){.lws-sticky-shell:not(.is-progress-locked) .lws-progress-summary,.lws-sticky-shell:not(.is-progress-locked) .lws-progress-track{display:none}.lws-sticky-shell:not(.is-progress-locked) .lws-progress-compact{display:grid}.lws-narration-mini{width:min(620px,100vw - 190px);min-width:0;bottom:70px;right:88px}.lws-narration-mini-controls [data-learning-action=narration-return]{display:none}}@media (width<=720px){.lws-progress-pin,.lws-progress-collapse{display:none}.lws-narration-mini{width:auto;bottom:70px;left:12px;right:72px}.lws-narration-mini-controls [data-learning-action=narration-previous],.lws-narration-mini-controls [data-learning-action=narration-next],.lws-narration-mini-controls select{display:none}}@media (prefers-reduced-motion:reduce){.lws-narration-progress>i,[data-narration-anchor].is-narrating{transition:none}}.lws-study-layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:14px;min-width:0;display:grid}.lws-bottom-bar{z-index:var(--z-learning-bottom-bar)!important}.lws-page.is-pdf-open .lws-study-layout{grid-template-columns:minmax(0,1fr) var(--lws-pdf-width,430px)}.lws-pdf-panel{z-index:var(--z-pdf-panel);background:#f8fafc;border:1px solid #16425b21;border-radius:12px;grid-template-rows:auto auto auto auto minmax(0,1fr) auto;width:100%;min-width:0;height:calc(100dvh - 24px);display:grid;position:sticky;top:12px;overflow:hidden;box-shadow:0 10px 30px #0f172a1a}.lws-pdf-panel[hidden]{display:none}.lws-pdf-resizer{z-index:2;cursor:col-resize;touch-action:none;width:12px;position:absolute;top:0;bottom:0;left:-6px}.lws-pdf-resizer:after{content:"";background:#cbd5e1;border-radius:3px;width:2px;position:absolute;top:45%;bottom:45%;left:5px}.lws-pdf-panel.is-resizing{-webkit-user-select:none;user-select:none}.lws-pdf-header{background:#fff;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:start;gap:12px;padding:12px 13px;display:flex}.lws-pdf-header>div{gap:2px;min-width:0;display:grid}.lws-pdf-header b{color:#172033;font-size:14px}.lws-pdf-header span{color:#64748b;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.lws-pdf-header button{color:#64748b;cursor:pointer;background:0 0;border:0;font-size:21px}.lws-pdf-source-row{background:#fff;grid-template-columns:minmax(0,1fr) auto;gap:7px;padding:9px 10px;display:grid}.lws-pdf-source-row select{color:#334155;background:#fff;border:1px solid #d8e1eb;border-radius:7px;min-width:0;height:33px;padding:0 8px}.lws-pdf-source-row label,.lws-pdf-toolbar button,.lws-pdf-footer button{color:#334155;min-height:31px;font:inherit;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #d8e1eb;border-radius:7px;justify-content:center;align-items:center;padding:4px 8px;font-size:11px;display:inline-flex}.lws-pdf-local-note{color:#8a5a0a;background:#fff;padding:0 11px 8px;font-size:10px}.lws-pdf-tabs{scrollbar-width:thin;background:#f8fafc;border-bottom:1px solid #e2e8f0;gap:4px;min-width:0;padding:6px 7px;display:flex;overflow-x:auto}.lws-pdf-tabs[hidden]{display:none}.lws-pdf-tab{color:#52677c;background:#fff;border:1px solid #d8e1eb;border-radius:7px;flex:none;align-items:center;max-width:210px;display:inline-flex;overflow:hidden}.lws-pdf-tab.is-active{color:#244f67;background:#edf5f8;border-color:#7aa7c0;box-shadow:inset 0 0 0 1px #315f7a14}.lws-pdf-tab>button{min-width:0;height:27px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;font-size:10px}.lws-pdf-tab>button[role=tab]{text-overflow:ellipsis;white-space:nowrap;max-width:170px;padding:0 7px;overflow:hidden}.lws-pdf-tab>.lws-pdf-tab-close{color:#7b8e98;flex:0 0 25px;width:25px;padding:0}.lws-pdf-tab>.lws-pdf-tab-close:hover{color:#9a3412;background:#b4530914}.lws-pdf-toolbar{background:#fff;border-top:1px solid #eef2f7;border-bottom:1px solid #e2e8f0;justify-content:center;align-items:center;gap:5px;padding:8px 9px;display:flex}.lws-pdf-toolbar span{color:#475569;text-align:center;min-width:52px;font-size:11px}.lws-pdf-toolbar button:disabled,.lws-pdf-footer button:disabled{cursor:not-allowed;opacity:.45}.lws-pdf-viewport{text-align:center;background:#e9eef4;min-height:0;padding:12px;position:relative;overflow:auto}.lws-reference-html{background:#f4f8fb;border:0;width:100%;height:100%;min-height:0;position:absolute;inset:0}.lws-pdf-panel.is-presentation .lws-reference-html{display:block}.lws-pdf-drop-overlay{z-index:8;color:#315f7a;pointer-events:none;background:#edf7faf0;border:2px dashed #4b86a3;border-radius:10px;place-items:center;font-size:12px;font-weight:700;display:grid;position:absolute;inset:56px 12px 52px}.lws-pdf-drop-overlay[hidden]{display:none}.lws-pdf-panel.is-drag-over .lws-pdf-viewport{box-shadow:inset 0 0 0 2px #4b86a333}.lws-pdf-viewport canvas{background:#fff;max-width:none;display:inline-block;box-shadow:0 2px 12px #0f172a21}.lws-pdf-viewport canvas[hidden]{display:none}.lws-pdf-empty{color:#64748b;place-items:center;min-height:180px;font-size:12px;display:grid}.lws-pdf-empty[hidden]{display:none}.lws-pdf-empty.is-error{color:#b42318}.lws-pdf-footer{background:#fff;border-top:1px solid #dce4ed;justify-content:end;gap:6px;padding:9px 10px;display:flex}.lws-pdf-backdrop{display:none}@media (width<=1179px){.lws-page.is-pdf-open .lws-study-layout{grid-template-columns:minmax(0,1fr)}.lws-page.is-pdf-open .lws-bottom-bar{right:0}.lws-page.is-pdf-open .lws-narration-mini{right:88px}.lws-pdf-panel{z-index:var(--z-pdf-panel);border-radius:12px 0 0 12px;width:min(520px,100vw - 32px);height:100dvh;position:fixed;top:0;bottom:0;right:0}.lws-pdf-resizer{display:none}.lws-pdf-backdrop:not([hidden]){z-index:calc(var(--z-pdf-panel) - 1);background:#0f172a47;border:0;display:block;position:fixed;inset:0}}@media (width<=560px){.lws-pdf-panel{border-radius:0;width:100vw}.lws-pdf-source-row{grid-template-columns:1fr}}.lf-modal-overlay{overflow:hidden}.lf-modal{max-height:min(760px,100dvh - 40px)}.lf-modal>.lf-wizard{flex-direction:column;flex:auto;min-height:0;max-height:100%;display:flex;overflow:hidden}.lf-modal>.lf-wizard>.lf-modal-head,.lf-modal>.lf-wizard>.lf-modal-foot{flex:none}.lf-modal>.lf-wizard>.lf-modal-body{overscroll-behavior:contain;scrollbar-gutter:stable;flex:auto;min-height:0;overflow:hidden auto}.lf-modal>.lf-wizard>.lf-modal-foot{z-index:2;background:#fff;position:relative;box-shadow:0 -8px 20px #16425b0b}@media (width<=760px){.lf-modal{max-height:calc(100dvh - 20px)}.lf-modal>.lf-wizard>.lf-modal-head{padding:17px 17px 12px}.lf-modal>.lf-wizard>.lf-modal-body{padding:16px 17px}.lf-modal>.lf-wizard>.lf-modal-foot{flex-wrap:wrap;padding:12px 17px}.lf-modal>.lf-wizard>.lf-modal-foot .lf-button{flex:auto}}.learning-context-page{color:#25343b;max-width:1120px;margin:0 auto;padding:30px}.learning-context-hero{color:#fff;background:linear-gradient(130deg,#244f62,#39748a);border-radius:20px;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:18px;padding:28px;display:flex}.learning-context-hero span:first-child{letter-spacing:.12em;opacity:.75;font-size:.78rem}.learning-context-hero h1{margin:5px 0 8px}.learning-context-hero p{opacity:.82;max-width:700px;margin:0}.learning-context-state{background:#ffffff24;border-radius:999px;flex:none;padding:8px 12px;font-size:.8rem}.learning-context-state.is-valid{color:#216a4f;background:#dff5e9}.learning-context-block{background:#fff;border:1px solid #dce7eb;border-radius:16px;grid-template-columns:190px 1fr;gap:28px;margin-bottom:14px;padding:24px;display:grid}.learning-context-block>div:first-child{align-self:start;align-items:center;gap:10px;display:flex}.learning-context-block b{color:#32697d;background:#e8f2f5;border-radius:9px;place-items:center;width:30px;height:30px;font-size:.75rem;display:grid}.learning-context-block h2{margin:0;font-size:1.05rem}.learning-context-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.learning-context-grid label{color:#52656e;gap:7px;font-size:.85rem;display:grid}.learning-context-grid select,.learning-context-grid input[type=number]{background:#fff;border:1px solid #cad9df;border-radius:10px;width:100%;min-height:42px;padding:0 12px}.learning-context-grid .context-check{align-items:center;gap:8px;min-height:42px;display:flex}.learning-context-actions{justify-content:flex-end;gap:10px;padding:8px 0 20px;display:flex}.learning-context-snapshot{background:#f1f7f8;border-radius:16px;padding:24px}.learning-context-metrics{grid-template-columns:repeat(3,1fr);gap:12px;margin:16px 0;display:grid}.learning-context-metrics div{background:#fff;border-radius:12px;padding:16px}.learning-context-metrics strong{color:#2b6d81;font-size:1.5rem;display:block}.learning-context-metrics span{color:#71838b;font-size:.78rem}.learning-context-shortcuts{gap:10px;margin-top:16px;display:flex}@media (width<=760px){.learning-context-page{padding:16px}.learning-context-hero{display:block}.learning-context-state{margin-top:14px;display:inline-block}.learning-context-block,.learning-context-grid,.learning-context-metrics{grid-template-columns:1fr}.learning-context-actions,.learning-context-shortcuts{flex-direction:column}}.lf-plan-summary{background:#fff;border:1px solid #16425b1f;border-radius:14px;margin-top:20px;padding:20px 22px;box-shadow:0 5px 20px #16425b0b}.lf-plan-summary>.lf-loading{border:0;min-height:92px}.lf-plan-summary>header{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.lf-plan-summary .lf-eyebrow{color:#638095;margin-bottom:5px}.lf-plan-summary h2{color:var(--text-main,#102a43);margin:0;font-size:17px}.lf-plan-summary header p:not(.lf-eyebrow){color:var(--text-sub,#627d98);margin:5px 0 0;font-size:12px}.lf-plan-valid{color:#6b7f8d;background:#f1f4f6;border-radius:7px;flex:none;padding:5px 9px;font-size:11px;font-weight:700}.lf-plan-valid.is-ready{color:#237055;background:#e4f5ed}.lf-plan-facts{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:16px;display:grid}.lf-plan-facts>div{background:#f7fafb;border-radius:9px;min-width:0;padding:11px 12px}.lf-plan-facts small,.lf-plan-facts b{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.lf-plan-facts small{color:#8296a4;margin-bottom:5px;font-size:10px}.lf-plan-facts b{color:#243f50;font-size:12px}.lf-plan-facts b.is-ready{color:#207057}.lf-plan-facts b.is-failed{color:#b64c46}.lf-plan-facts b.is-queued,.lf-plan-facts b.is-preloading{color:#87611c}.lf-preparation-checklist>strong{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.lf-preparation-checklist>strong>small{color:#8296a4;font-size:10px;font-weight:500}.lf-preparation-checklist span.is-optional i{color:#9a691a;background:#fff5de}.lf-preparation-checklist span b em{color:#748a98;background:#f3f5f7;border-radius:999px;margin-left:5px;padding:2px 5px;font-size:8px;font-style:normal;font-weight:600}.lf-readiness-blocked,.lf-readiness-degraded{border-radius:8px;margin:10px 0 0;padding:8px 10px;font-size:11px}.lf-readiness-blocked{color:#a7423d;background:#fff0ee}.lf-readiness-degraded{color:#806020;background:#fff8e8}.lf-plan-summary [data-plan-action=start][aria-busy=true]{cursor:wait;opacity:.72}.lf-plan-summary [data-plan-action=start]:disabled{cursor:not-allowed;opacity:.5}.lf-plan-summary>footer{border-top:1px solid #16425b14;justify-content:flex-end;gap:8px;margin-top:15px;padding-top:14px;display:flex}.lf-plan-progress{grid-template-columns:26px 1fr 26px 1fr 26px;align-items:center;padding:14px 24px 2px;display:grid}.lf-plan-progress i{color:#7a8f9c;background:#edf2f5;border-radius:50%;place-items:center;width:24px;height:24px;font-size:11px;font-style:normal;font-weight:700;display:grid}.lf-plan-progress i.active{background:var(--stu-primary,#2f6690);color:#fff}.lf-plan-progress span{background:#e5ecef;height:2px}.lf-plan-progress i.active+span{background:#2f669073}.lf-plan-step-copy{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:15px;display:flex}.lf-plan-step-copy b{font-size:14px}.lf-plan-step-copy span{color:#718794;font-size:11px}.lf-plan-scope-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.lf-plan-scope-grid select,.lf-plan-advanced-grid select,.lf-plan-advanced-grid input{color:#233e4d;width:100%;min-height:40px;font:inherit;background:#fff;border:1px solid #16425b29;border-radius:8px;margin-top:6px;padding:0 10px;font-size:12px}.lf-plan-scope-note{color:#456477;background:#f2f7f9;border-radius:8px;margin-top:13px;padding:10px 12px;font-size:12px}.lf-plan-goal-list,.lf-plan-workflow-list{flex-direction:column;gap:8px;max-height:270px;display:flex;overflow:auto}.lf-plan-option{color:#243e4d;text-align:left;width:100%;font:inherit;cursor:pointer;background:#fff;border:1px solid #16425b1f;border-radius:9px;justify-content:space-between;align-items:center;gap:14px;padding:12px;display:flex}.lf-plan-option:hover,.lf-plan-option.selected{border-color:var(--stu-primary,#2f6690);background:#f4f8fa}.lf-plan-option b,.lf-plan-option small{display:block}.lf-plan-option b{font-size:13px}.lf-plan-option small{color:#718793;margin-top:4px;font-size:11px}.lf-plan-option em{color:#2f6690;flex:none;font-size:11px;font-style:normal;font-weight:700}.lf-plan-empty{color:#718793;text-align:center;border:1px dashed #cfdae0;border-radius:9px;padding:28px 16px;font-size:12px}.lf-plan-create-goal{border-top:1px solid #16425b14;align-items:flex-end;gap:10px;margin-top:13px;padding-top:13px;display:flex}.lf-plan-create-goal .lf-field{flex:1;margin:0}.lf-plan-create-goal textarea{min-height:62px}.lf-plan-create-goal .lf-button{white-space:nowrap;margin-bottom:1px}.lf-plan-advanced{border-top:1px solid #16425b17;margin-top:14px;padding-top:12px}.lf-plan-advanced summary{color:#365f78;cursor:pointer;font-size:12px;font-weight:700}.lf-plan-advanced-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-top:12px;display:grid}.lf-plan-advanced-grid label{color:#657d8b;font-size:11px}.lf-plan-advanced-grid .lf-plan-check{align-items:center;gap:7px;min-height:40px;display:flex}.lf-plan-advanced-grid .lf-plan-check input{width:auto;min-height:0;margin:0}.lf-plan-error{color:#a7423d;background:#fff0ee;border-radius:8px;margin:0 0 12px;padding:9px 11px;font-size:12px}@media (width<=980px){.lf-plan-facts{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=760px){.lf-plan-summary{padding:17px}.lf-plan-facts{grid-template-columns:1fr 1fr}.lf-plan-summary>footer{flex-wrap:wrap;justify-content:flex-start}.lf-plan-summary>footer .lf-button{white-space:nowrap;flex:1}.lf-plan-scope-grid,.lf-plan-advanced-grid{grid-template-columns:1fr}.lf-plan-step-copy,.lf-plan-create-goal{flex-direction:column;align-items:stretch}.lf-plan-create-goal .lf-button{width:100%}.lf-preparation-checklist>strong{flex-direction:column;align-items:flex-start;gap:3px}}.global-task-panel>header .global-task-header-actions{align-items:center;gap:5px;display:flex}.global-task-panel>header .global-task-header-actions button{padding:6px 8px;font-size:11px}.lf-page>.lf-hero{min-height:auto;color:var(--text-main,#102a43);background:#fff;border:1px solid #16425b1a;border-radius:12px;padding:18px 20px;box-shadow:0 3px 14px #16425b0a}.lf-page>.lf-hero .lf-eyebrow{color:#78909d}.lf-page>.lf-hero h1{color:var(--text-main,#102a43);font-size:22px}.lf-page>.lf-hero p:not(.lf-eyebrow){color:var(--text-sub,#627d98);margin-top:5px}.lf-page>.lf-hero .lf-stat b{color:#315f7a}.lf-page>.lf-hero .lf-stat span{color:#78909d}.lf-page>.lf-hero .lf-button.primary{color:#fff;box-shadow:none;background:#315f7a;border-color:#315f7a}.lf-plan-summary{border-radius:12px;margin-top:14px;padding:18px 20px;box-shadow:0 3px 14px #16425b09}.lf-plan-summary .lf-eyebrow,.lf-resource-panel .lf-eyebrow{color:#79909d}.lf-plan-summary>header h2{font-size:18px}.lf-plan-entry-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.lf-plan-entry-grid>button{color:#203845;text-align:left;min-height:78px;font:inherit;cursor:pointer;background:#fbfcfd;border:1px solid #16425b1f;border-radius:10px;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:2px 9px;padding:12px;display:grid}.lf-plan-entry-grid>button:hover{background:#f5f9fb;border-color:#2f669059}.lf-plan-entry-grid>button>span{color:#315f7a;background:#eaf2f6;border-radius:9px;grid-row:1/3;place-items:center;width:34px;height:34px;display:grid}.lf-plan-entry-grid b{font-size:13px}.lf-plan-entry-grid small{color:#758995;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.lf-resource-panel[hidden]{display:none}.lf-resource-panel,.lf-recommendation{margin-top:14px}.lf-toolbar{margin-top:18px}.lf-grid{grid-auto-rows:1fr;align-items:stretch;margin-top:14px}.lf-flow-card{box-sizing:border-box;height:100%;container-type:inline-size}.lf-flow-card h3{-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:42px;display:-webkit-box;overflow:hidden}.lf-node-tags{align-content:flex-start;max-height:50px;overflow:hidden}.lf-card-meta{min-height:19px}.lf-card-foot{grid-template-columns:minmax(0,1fr);align-items:end;gap:7px;min-height:70px;display:grid}.lf-card-foot small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.lf-card-actions{grid-template-columns:max-content minmax(94px,1fr) 31px 31px;align-items:center;gap:5px;width:100%;min-width:0;display:grid}.lf-card-actions:not(:has(>:nth-child(4))){grid-template-columns:max-content minmax(94px,1fr) 31px}.lf-card-actions .lf-button,.lf-card-actions .lf-icon-button{box-sizing:border-box;white-space:nowrap;flex-shrink:0;min-width:0;height:31px;line-height:1}.lf-card-actions .lf-button{font-size:clamp(.72rem,.69rem + .08vw,.78rem)}.lf-card-actions .lf-button.primary{width:100%}@container (width<=300px){:is(.lf-card-actions,.lf-card-actions:not(:has(>:nth-child(4)))){grid-template-columns:minmax(68px,.8fr) minmax(110px,1.4fr)}.lf-card-actions .lf-icon-button{width:100%}}.lw-editor-canvas,.lw-editor-svg{transform-origin:0 0}.lw-canvas-node{height:100px;min-height:100px}.lw-canvas-node-port.in-port{background:#315f7a;margin:-7px 0 0;top:50%;left:-7px}.lw-canvas-node-port.out-port{background:#177a5a;margin:-7px 0 0;inset:50% -7px auto auto}.lw-canvas-node-port.pass-port{background:#177a5a;top:34%}.lw-canvas-node-port.fail-port{background:#bf5b4f;top:68%}.lw-canvas-node-port>span{color:#657985;white-space:nowrap;background:#fff;border-radius:4px;padding:1px 4px;font-size:9px;position:absolute;top:-4px;right:17px;box-shadow:0 1px 4px #16425b17}.lw-canvas-node.is-connection-target{border-color:#4d86a4;box-shadow:0 0 0 4px #315f7a1f}.lw-canvas-node.is-connection-target .in-port{transform:scale(1.3);box-shadow:0 0 0 3px #315f7a2e}@media (width<=900px){.lf-plan-entry-grid{grid-template-columns:1fr}.lf-page>.lf-hero{flex-direction:column;align-items:flex-start}.lf-hero-right{width:100%}.lw-editor-palette{width:176px}.lw-editor-panel{width:230px}}.student-profile-shell{gap:14px}.profile-hero-card{color:var(--text-main,#102a43);background:#fff;border:1px solid #16425b1a;border-radius:14px;grid-template-columns:92px 1fr;gap:20px;padding:22px 26px;box-shadow:0 4px 18px #16425b0d}.profile-hero-card:before{display:none}.profile-avatar-upload{width:84px;height:84px}.profile-hero-main h1{color:var(--text-main,#102a43);font-size:23px}.profile-hero-main>p,.profile-eyebrow{color:var(--text-sub,#627d98)}.profile-hero-meta{color:#6f8490;align-items:center;gap:12px;font-size:12px;display:flex}.profile-status-chip{color:#315f7a;background:#edf4f7;border-radius:6px;padding:4px 8px;font-weight:700}.profile-grid{align-items:start;gap:14px}.profile-panel{border-radius:12px;box-shadow:0 3px 14px #16425b09}.lws-page{max-width:1480px;padding:0 14px 68px}.lws-sticky-shell{padding-top:5px;padding-bottom:2px;transition:box-shadow .18s}.lws-topbar{box-sizing:border-box;gap:8px;min-height:48px;padding:4px 0 6px}.lws-back-btn{min-height:32px;padding:4px 9px}.lws-flow-title{font-size:14px}.lws-topbar-meta{margin-top:1px;font-size:11px}.lws-topbar-right{gap:5px}.lws-topbar-right .lws-btn-sm,.lws-progress-pin,.lws-progress-collapse{height:30px;min-height:30px;padding:3px 8px}.lws-progress-nav{box-sizing:border-box;opacity:1;gap:4px;max-height:72px;padding:3px 0 5px;transition:max-height .18s,opacity .14s,padding .18s;overflow:auto hidden}.lws-progress-summary{padding-top:0}.lws-progress-summary b{font-size:12px}.lws-progress-summary-value strong{font-size:13px}.lws-progress-track{gap:5px}.lws-progress-node{border-width:1px;border-radius:8px;min-height:30px;padding:4px 8px}.lws-progress-dot{width:16px;height:16px;font-size:9px}.lws-progress-label{max-width:108px;font-size:11px}.lws-progress-agent{font-size:9px}.lws-sticky-shell.is-progress-collapsed{padding-top:3px;padding-bottom:2px}.lws-sticky-shell.is-progress-collapsed .lws-progress-nav{opacity:.98;max-height:38px;padding:0}.lws-progress-compact{min-height:36px;padding:5px 8px}.lws-sticky-shell.is-progress-transitioning{pointer-events:none}.lws-main{padding-top:10px}.lws-kp-card{border-radius:11px;grid-template-columns:minmax(190px,.9fr) auto minmax(180px,1.2fr) auto;align-items:center;gap:8px 14px;margin-bottom:12px;padding:12px 14px;display:grid}.lws-kp-current{align-items:center;gap:7px;min-width:0;display:flex}.lws-kp-current h3{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:14px;overflow:hidden}.lws-kp-status{color:#64748b;white-space:nowrap;gap:10px;font-size:11px;display:flex}.lws-kp-status b{color:var(--stu-primary,#2f6690)}.lws-kp-card .lws-kp-task-goal{color:#64748b;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:11px;line-height:1.45;display:-webkit-box;overflow:hidden}.lws-kp-primary{min-height:32px;color:var(--stu-primary,#2f6690);font:inherit;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #2f669033;border-radius:7px;padding:4px 10px;font-size:11px;font-weight:650}.lws-guide-panel{border-radius:10px;margin-bottom:12px}.lws-guide-header{box-sizing:border-box;min-height:36px;padding:6px 12px}.lws-guide-avatar{width:18px;height:18px}.lws-guide-avatar svg{width:17px;height:17px}.lws-guide-name{font-size:12px}.lws-guide-blocks{max-height:230px;padding:9px 12px}.lws-guide-block{margin-bottom:6px}.lws-guide-bubble{padding:6px 10px;font-size:12px;line-height:1.55}.lws-narration{gap:9px;padding:8px 12px}.lws-narration-copy{gap:2px}.lws-narration-controls{gap:4px}.lws-narration-controls button,.lws-narration-controls select{min-height:30px;padding:3px 7px;font-size:10px}.lws-agent-status-bar,.lws-content-area{margin-bottom:12px}.lws-task-card{min-height:160px;padding:15px}.lws-task-header{margin-bottom:12px;padding-bottom:9px}.lws-history-card{margin-bottom:6px}.lws-history-card summary{padding:8px 10px;font-size:11px}.lws-history-content{padding:9px 11px}.lws-bottom-bar{box-sizing:border-box;gap:6px;min-height:52px;padding:7px 14px}.lws-bottom-bar .lws-btn{min-height:36px;padding:0 14px}.lws-bottom-bar .lws-btn-primary{min-height:38px}.lws-pdf-panel{border-radius:10px;grid-template-rows:auto auto auto auto minmax(0,1fr) auto;height:calc(100dvh - 16px);top:8px}.lws-pdf-resizer{z-index:4;width:10px;left:-5px}.lws-pdf-resizer:after{left:4px}.lws-pdf-header{box-sizing:border-box;grid-template-columns:minmax(74px,.75fr) minmax(118px,1.25fr) auto 32px;align-items:center;gap:6px;min-height:42px;padding:5px 7px;display:grid}.lws-pdf-title{gap:0;min-width:0;display:grid}.lws-pdf-title b{font-size:12px}.lws-pdf-title span{font-size:9px}.lws-pdf-header select{color:#334155;min-width:0;height:31px;font:inherit;background:#fff;border:1px solid #d8e1eb;border-radius:7px;padding:0 7px;font-size:10px}.lws-pdf-local-picker,.lws-pdf-header .lws-pdf-icon-btn{color:#334155;min-height:31px;font:inherit;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #d8e1eb;border-radius:7px;justify-content:center;align-items:center;gap:4px;padding:3px 7px;font-size:10px;display:inline-flex}.lws-pdf-header svg,.lws-pdf-toolbar svg,.lws-pdf-footer svg{flex:none;width:16px;height:16px}.lws-pdf-header .lws-pdf-icon-btn{width:32px;padding:0}.lws-pdf-local-note{background:#fff8e8;padding:4px 9px;font-size:9px}.lws-pdf-toolbar{box-sizing:border-box;justify-content:flex-start;gap:3px;min-height:40px;padding:4px 7px;overflow-x:auto}.lws-pdf-toolbar button{min-width:30px;min-height:30px;padding:3px 6px}.lws-pdf-toolbar .lws-pdf-icon-btn{width:30px;padding:0}.lws-pdf-page-field{color:#64748b;background:#fff;border:1px solid #d8e1eb;border-radius:7px;align-items:center;gap:2px;min-width:61px;padding:0 4px;font-size:10px;display:flex}.lws-pdf-page-field input{color:#334155;text-align:right;width:28px;height:28px;font:inherit;-moz-appearance:textfield;background:0 0;border:0;outline:0;padding:0;font-size:10px}.lws-pdf-page-field input::-webkit-inner-spin-button{display:none}.lws-pdf-tool-separator{background:#e2e8f0;width:1px;height:20px;margin:0 2px}.lws-pdf-zoom-value{min-width:38px;font-size:10px}.lws-pdf-fit-btn{gap:3px}.lws-pdf-fit-btn.is-active{color:#1d4ed8;background:#eff6ff;border-color:#93c5fd}.lws-pdf-continuous{color:#237066;background:#edf7f5;border-radius:5px;margin-left:auto;padding:3px 6px;font-size:9px;font-weight:700}.lws-pdf-viewport{overscroll-behavior:contain;scrollbar-gutter:stable;touch-action:pan-x pan-y;text-align:left;min-height:0;padding:12px;position:relative;overflow:auto}.lws-pdf-pages{justify-items:center;gap:14px;width:max-content;min-width:100%;display:grid}.pdf-page{box-sizing:content-box;contain:layout paint style;background:#fff;flex:none;position:relative;overflow:hidden;box-shadow:0 2px 12px #0f172a24}.pdf-page:after{z-index:0;content:"";opacity:.7;background:linear-gradient(105deg,#fff 20%,#f4f6f8 38%,#fff 56%) 0 0/220% 100%;position:absolute;inset:0}.pdf-page.is-rendered:after{display:none}.pdf-page canvas{z-index:1;background:#fff;max-width:none;display:block;position:absolute;top:0;left:0}.pdf-page-number{z-index:2;color:#fff;opacity:.7;background:#0f172aa8;border-radius:5px;place-items:center;min-width:20px;height:20px;padding:0 3px;font-size:9px;display:grid;position:absolute;bottom:5px;right:6px}.lws-pdf-zoom-hint{z-index:5;color:#fff;opacity:0;pointer-events:none;background:#0f172ac7;border-radius:7px;width:max-content;margin-top:-1px;padding:5px 8px;font-size:11px;transition:opacity .14s,transform .14s;display:block;position:sticky;top:10px;left:calc(100% - 66px);transform:translateY(-4px)}.lws-pdf-zoom-hint.is-visible{opacity:1;transform:translateY(0)}.lws-pdf-footer{box-sizing:border-box;min-height:40px;padding:4px 8px}.lws-pdf-footer button{gap:4px;min-height:31px}.lws-page.is-pdf-open .lws-narration-mini{right:calc(var(--lws-pdf-width,430px) + 22px)}body:has(.lws-page.is-pdf-open) .toast-container{right:calc(var(--lws-pdf-width,430px) + 24px);top:12px}@media (width<=1180px){.lws-kp-card{grid-template-columns:minmax(180px,1fr) auto}.lws-kp-card .lws-kp-task-goal{grid-column:1/2}.lws-page.is-pdf-open .lws-bottom-bar{right:0}body:has(.lws-page.is-pdf-open) .toast-container{right:min(540px,100vw - 16px);transform:translate(100%)}}@media (width<=820px){.lws-page{padding-left:10px;padding-right:10px}.lws-topbar-info,.lws-save-status{display:none}.lws-kp-card{grid-template-columns:1fr auto}.lws-kp-status{grid-column:1/2}.lws-kp-card .lws-kp-task-goal{display:none}.lws-narration{flex-direction:column;align-items:flex-start}.lws-pdf-fit-btn span,.lws-pdf-continuous{display:none}}@media (width<=560px){.lws-pdf-header{grid-template-columns:minmax(70px,.7fr) minmax(110px,1.3fr) 32px}.lws-pdf-local-picker span{display:none}.lws-pdf-local-picker{width:32px;padding:0}.lws-pdf-toolbar{gap:2px}.lws-pdf-footer{padding-bottom:max(4px,env(safe-area-inset-bottom))}body:has(.lws-page.is-pdf-open) .toast-container{top:54px;left:12px;right:12px;transform:none}}@media (height<=680px){.lws-topbar{min-height:44px}.lws-flow-title{font-size:13px}.lws-progress-nav{max-height:64px}.lws-main{padding-top:8px}.lws-kp-card{margin-bottom:8px;padding-top:9px;padding-bottom:9px}.lws-guide-blocks{max-height:160px}.lws-bottom-bar{min-height:48px}}@media (prefers-reduced-motion:reduce){.lws-progress-nav,.lws-pdf-zoom-hint,.lws-narration-progress>i,.pdf-page:after{transition:none;animation:none}.pdf-page:after{background:#f8fafc}}.student-home-shell{box-sizing:border-box;color:#243845;gap:12px;min-width:0;max-width:1440px;margin:0 auto;padding:14px 18px 34px;display:grid}.student-home-shell button,.student-home-shell a{font-family:inherit}.home-module{min-width:0;animation:.34s both home-module-in}.student-home-shell>.home-module:nth-child(2){animation-delay:45ms}.student-home-shell>.home-module:nth-child(3){animation-delay:85ms}.student-home-shell>.home-module:nth-child(4){animation-delay:.125s}.student-home-shell>.home-module:nth-child(5){animation-delay:.165s}.student-home-shell>.home-module:nth-child(6){animation-delay:.205s}.student-home-head{justify-content:space-between;align-items:center;gap:18px;padding:5px 2px;display:flex}.student-home-head>div:first-child{min-width:0}.student-home-head h1{color:#213946;margin:2px 0 0;font-size:23px;line-height:1.25}.student-home-head>div:first-child>p{color:#7a8d97;margin:4px 0 0;font-size:11px}.home-eyebrow{color:#557d91;letter-spacing:.09em;font-size:10px;font-weight:750}.home-identity{background:#fff;border:1px solid #e0e8ec;border-radius:10px;grid-template-columns:38px minmax(105px,1fr) auto auto;align-items:center;gap:8px 10px;min-width:340px;padding:7px 9px;display:grid}.home-identity-avatar{color:#315f7a;background:#eaf2f6;border-radius:9px;place-items:center;width:36px;height:36px;font-weight:800;display:grid;overflow:hidden}.home-identity-avatar img{object-fit:cover;width:100%;height:100%}.home-identity>div:nth-child(2){min-width:0;display:grid}.home-identity>div:nth-child(2) b,.home-identity>div:nth-child(2) span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.home-identity>div:nth-child(2) b{font-size:12px}.home-identity>div:nth-child(2) span,.home-identity>a{color:#738792;font-size:10px}.home-identity>a{text-decoration:none}.home-identity-progress{justify-items:end;display:grid}.home-identity-progress span{color:#7b8e98;font-size:9px}.home-identity-progress b{color:#315f7a;font-size:12px}.home-main-task{background:linear-gradient(105deg,#fff 0%,#f7fafc 68%,#edf6f8 100%);border:1px solid #cfdee5;border-radius:13px;grid-template-columns:minmax(0,1fr) 250px;gap:24px;padding:18px 20px;display:grid;position:relative;overflow:hidden;box-shadow:0 5px 18px #1e43570f}.home-main-task:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#ffffffc7,#0000);width:18%;animation:.75s .18s both home-task-sheen;position:absolute;top:0;bottom:0;left:-24%;transform:skew(-18deg)}.home-main-copy{min-width:0}.home-main-copy h1{color:#1e3745;margin:5px 0 0;font-size:22px;line-height:1.28}.home-main-copy>p{color:#687f8c;max-width:760px;margin:6px 0 0;font-size:12px;line-height:1.55}.home-main-copy dl{flex-wrap:wrap;gap:6px;margin:13px 0 0;display:flex}.home-main-copy dl>div{background:#ffffffb8;border:1px solid #3f697d17;border-radius:7px;gap:5px;min-width:100px;padding:6px 8px;display:flex}.home-main-copy dt{color:#82929b;font-size:9px}.home-main-copy dd{color:#3d5968;text-overflow:ellipsis;white-space:nowrap;max-width:180px;margin:0;font-size:10px;font-weight:650;overflow:hidden}.home-main-action{flex-direction:column;justify-content:center;gap:12px;display:flex}.home-main-progress>div{color:#6f8490;justify-content:space-between;align-items:center;font-size:10px;display:flex}.home-main-progress b{color:#315f7a;font-size:15px}.home-main-progress>i{background:#dfe9ee;border-radius:999px;height:6px;margin-top:6px;display:block;overflow:hidden}.home-main-progress em{border-radius:inherit;background:linear-gradient(90deg,#3f7895,#4a9b91);width:0;height:100%;transition:width .58s;display:block}.home-main-action>button{color:#fff;cursor:pointer;background:#315f7a;border:1px solid #315f7a;border-radius:9px;justify-content:center;align-items:center;gap:8px;min-height:38px;font-size:12px;font-weight:750;display:flex;box-shadow:0 5px 12px #315f7a24}.home-main-action>button svg{width:15px;height:15px}.home-main-action>button:hover{background:#274f64}.home-main-action>button:disabled{cursor:wait;opacity:.65}.home-overview,.home-quick-section,.home-panel,.home-course-section{background:#fff;border:1px solid #e0e7eb;border-radius:11px;padding:13px 14px;box-shadow:0 2px 10px #0f172a06}.home-section-head,.home-panel-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:9px;display:flex}.home-section-head h2,.home-panel-head h2{color:#294451;margin:0;font-size:15px}.home-section-head p,.home-panel-head p{color:#7c8e98;margin:2px 0 0;font-size:10px}.home-section-head>span{color:#9d554d;background:#fff4f2;border-radius:6px;padding:4px 7px;font-size:10px}.home-panel-head button{color:#557d91;cursor:pointer;background:0 0;border:0;font-size:10px}.home-metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.home-metric-grid article{box-sizing:border-box;background:#fbfcfd;border:1px solid #e5ebee;border-radius:9px;gap:2px;min-height:76px;padding:10px 11px;display:grid;position:relative;overflow:hidden}.home-metric-grid article:before{content:"";background:#7b9bae;width:3px;position:absolute;top:0;bottom:0;left:0}.home-metric-grid article.green:before{background:#65a18d}.home-metric-grid article.amber:before{background:#cba15e}.home-metric-grid article.teal:before{background:#5b9b9a}.home-metric-grid span{color:#6d828e;font-size:10px}.home-metric-grid b{color:#274654;font-size:20px;line-height:1.2}.home-metric-grid em{color:#8a99a1;font-size:9px;font-style:normal}.home-metric-grid article>i{background:#e8eef1;border-radius:99px;height:3px;margin-top:4px;display:block;overflow:hidden}.home-metric-grid article>i u{border-radius:inherit;background:#4d829d;width:0;height:100%;text-decoration:none;transition:width .55s;display:block}.home-quick-section{padding-bottom:12px}.home-quick-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;display:grid}.home-quick-grid button{color:#365362;text-align:left;cursor:pointer;background:#fafcfd;border:1px solid #e1e8ec;border-radius:9px;grid-template-columns:31px minmax(0,1fr) 14px;align-items:center;gap:7px;min-height:52px;padding:7px 8px;transition:transform .15s,border-color .15s,box-shadow .15s;display:grid}.home-quick-grid button:hover{border-color:#b9cdd7;transform:translateY(-1px);box-shadow:0 5px 12px #20445612}.home-quick-grid button>span{color:#315f7a;background:#eaf2f6;border-radius:8px;place-items:center;width:29px;height:29px;display:grid}.home-quick-grid svg{width:15px;height:15px}.home-quick-grid button>b{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.home-quick-grid button>svg{color:#8aa0ab;width:12px}.home-work-grid{grid-template-columns:minmax(0,1.08fr) minmax(330px,.92fr);gap:12px;min-width:0;display:grid}.home-panel{min-width:0}.home-task-list,.home-rec-list{gap:6px;display:grid}.home-task-row{background:#fbfcfd;border:1px solid #e5ebee;border-radius:8px;grid-template-columns:minmax(180px,1fr) minmax(90px,.55fr) auto;align-items:center;gap:9px;padding:8px 9px;display:grid}.home-task-row>div:first-child{gap:1px;min-width:0;display:grid}.home-task-row>div:first-child span{color:#557585;background:#edf3f6;border-radius:4px;width:max-content;padding:2px 5px;font-size:8px;font-weight:700}.home-task-row.status-running>div:first-child span,.home-task-row.status-queued>div:first-child span{color:#2f6690;background:#eaf3f8}.home-task-row.status-failed>div:first-child span{color:#a84e47;background:#fff0ef}.home-task-row>div:first-child b,.home-task-row>div:first-child small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.home-task-row>div:first-child b{color:#35515f;font-size:11px}.home-task-row>div:first-child small{color:#82919a;font-size:9px}.home-task-progress{align-items:center;gap:5px;display:flex}.home-task-progress i{background:#e4ebee;border-radius:9px;min-width:62px;height:4px;display:block;overflow:hidden}.home-task-progress em{background:#568aa3;width:0;height:100%;transition:width .45s;display:block}.home-task-progress i.indeterminate:after{content:"";background:#568aa3;width:35%;height:100%;animation:1.2s ease-in-out infinite home-progress-move;display:block}.home-task-progress span{color:#738892;font-size:9px}.home-task-row>button{color:#43687a;cursor:pointer;background:#fff;border:1px solid #d4e0e5;border-radius:6px;min-height:27px;padding:3px 7px;font-size:9px}.home-task-row.teacher{grid-template-columns:minmax(180px,1fr) auto}.home-rec-list{grid-template-columns:1fr 1fr}.home-rec-list>button{color:#35525f;text-align:left;cursor:pointer;background:#fbfcfd;border:1px solid #e4eaed;border-radius:8px;gap:2px;min-width:0;padding:8px 9px;display:grid}.home-rec-list>button span{color:#547589;background:#edf4f7;border-radius:4px;width:max-content;padding:2px 5px;font-size:8px}.home-rec-list>button b,.home-rec-list>button small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.home-rec-list>button b{font-size:10px}.home-rec-list>button small{color:#82919a;font-size:8px}.home-empty-inline{color:#80919a;border:1px dashed #dce5e9;border-radius:8px;place-items:center;min-height:66px;font-size:10px;display:grid}.home-course-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.home-course-card{color:#35515f;text-align:left;cursor:pointer;background:#fbfcfd;border:1px solid #e2e9ec;border-radius:9px;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:9px;min-width:0;padding:8px;transition:border-color .15s,box-shadow .15s;display:grid}.home-course-card:hover{border-color:#b9cdd7;box-shadow:0 5px 12px #2044560f}.home-course-thumb,.home-course-placeholder{color:#477387;background:#eaf2f6;border-radius:8px;place-items:center;width:46px;height:46px;font-weight:800;display:grid;overflow:hidden}.home-course-thumb img{object-fit:cover;width:100%;height:100%}.home-course-card>div{gap:2px;min-width:0;display:grid}.home-course-card>div>span,.home-course-card>div>small{color:#7c8e97;text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.home-course-card>div>b{color:#304d5b;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.home-course-card>div>i{background:#e3eaee;border-radius:9px;height:3px;margin-top:3px;display:block;overflow:hidden}.home-course-card>div>i em{background:#589087;width:0;height:100%;transition:width .55s;display:block}.home-course-card>strong{color:#527485;font-size:11px}.home-skeleton{grid-template-columns:1fr 1fr}.home-skeleton i{background:linear-gradient(100deg,#eef2f4 20%,#f8fafb 40%,#eef2f4 60%) 0 0/220% 100%;border-radius:11px;min-height:130px;animation:1.2s ease-in-out infinite home-skeleton}.home-skeleton i:first-child{grid-column:1/-1;min-height:72px}.home-skeleton i:nth-child(2){grid-column:1/-1;min-height:180px}@keyframes home-module-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes home-task-sheen{0%{left:-24%}to{left:118%}}@keyframes home-progress-move{0%{transform:translate(-110%)}to{transform:translate(300%)}}@keyframes home-skeleton{0%{background-position:120% 0}to{background-position:-100% 0}}@media (width<=1260px){.home-quick-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.home-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-main-task{grid-template-columns:minmax(0,1fr) 220px}.home-rec-list{grid-template-columns:1fr}}@media (width<=1100px){.home-main-task{grid-template-columns:1fr;gap:14px}.home-main-action{grid-template-columns:minmax(0,1fr) 180px;align-items:end;display:grid}.home-metric-grid{grid-template-columns:1fr 1fr}.home-work-grid{grid-template-columns:1fr}}@media (width<=1000px){.student-home-shell{padding:12px}.student-home-head{flex-direction:column;align-items:flex-start}.home-identity{box-sizing:border-box;width:100%}.home-main-task{grid-template-columns:1fr;gap:14px}.home-main-action{grid-template-columns:minmax(0,1fr) 180px;align-items:end;display:grid}.home-metric-grid{grid-template-columns:1fr 1fr}.home-work-grid{grid-template-columns:1fr}.home-course-grid{grid-template-columns:1fr 1fr}}@media (width<=700px){.student-home-head h1{font-size:20px}.home-identity{grid-template-columns:36px minmax(90px,1fr) auto}.home-identity-progress{display:none}.home-main-task{padding:15px}.home-main-copy h1{font-size:19px}.home-main-copy dl>div{box-sizing:border-box;min-width:calc(50% - 4px)}.home-main-action{grid-template-columns:1fr}.home-metric-grid,.home-quick-grid{grid-template-columns:1fr 1fr}.home-task-row{grid-template-columns:minmax(0,1fr) auto}.home-task-progress{display:none}.home-course-grid{grid-template-columns:1fr}}@media (width<=430px){.student-home-shell{padding:9px}.home-identity{min-width:0}.home-identity>a{display:none}.home-metric-grid{grid-template-columns:1fr}.home-quick-grid{grid-template-columns:1fr 1fr}.home-main-copy dl>div{min-width:100%}.home-section-head{flex-direction:column;align-items:flex-start}}@media (height<=680px){.student-home-shell{gap:8px;padding-top:8px}.student-home-head{padding:1px 2px}.student-home-head h1{font-size:20px}.home-main-task{padding-top:13px;padding-bottom:13px}.home-main-copy dl{margin-top:8px}.home-overview,.home-quick-section,.home-panel,.home-course-section{padding-top:10px;padding-bottom:10px}.home-metric-grid article{min-height:67px}.home-quick-grid button{min-height:46px}}@media (prefers-reduced-motion:reduce){.home-module,.home-main-task:after,.home-skeleton i,.home-task-progress i.indeterminate:after{animation:none}.home-main-progress em,.home-metric-grid article>i u,.home-task-progress em,.home-course-card>div>i em,.home-quick-grid button,.home-course-card{transition:none}.home-quick-grid button:hover{transform:none}}.lws-pdf-panel>.lws-pdf-zoom-hint{margin:0;position:absolute;top:88px;left:auto;right:10px}@media (width<=1180px){body:has(.lws-page.is-pdf-open) .toast-container{left:24px;right:auto;transform:none}}@media (width<=560px){body:has(.lws-page.is-pdf-open) .toast-container{top:54px;left:12px;right:12px;transform:none}}.lws-page{padding-bottom:24px}.lws-study-column{min-width:0}.lws-bottom-bar{border:1px solid #16425b1f;border-radius:12px;margin:10px 12px 0;position:sticky;bottom:10px;left:auto;box-shadow:0 8px 24px #16425b1a;right:auto!important}.lws-page.is-pdf-open .lws-bottom-bar{right:auto!important}:is(.lws-page.is-immersive,.lws-page:fullscreen){box-sizing:border-box;background:#eef3f8;width:100%;max-width:none;min-height:100dvh;margin:0;padding:0 14px 20px;overflow:auto}:is(.lws-page.is-immersive .lws-study-layout,.lws-page:fullscreen .lws-study-layout){max-width:none;margin:0 auto}:is(.lws-page.is-immersive .lws-sticky-shell,.lws-page:fullscreen .lws-sticky-shell){top:0}:is(.lws-page.is-immersive .lws-pdf-panel,.lws-page:fullscreen .lws-pdf-panel){height:calc(100dvh - 16px)}body.lws-immersive-mode .student-sidebar{display:none}body.lws-immersive-mode .student-dashboard-wrapper{padding:0;display:block}body.lws-immersive-mode .student-main{width:100%;margin:0;padding:0}body.lws-immersive-mode .unified-work-center,body.lws-immersive-mode .ai-float-widget{display:none}@media (width<=820px){.lws-bottom-bar{margin-left:4px;margin-right:4px;bottom:6px}.lws-topbar-right{gap:4px}.lws-topbar-right .lws-btn-sm{padding-left:7px;padding-right:7px}}@media (width>=1180px){.lws-page.is-pdf-open .lws-study-layout{grid-template-columns:minmax(0,1fr) min(var(--lws-pdf-width,360px),440px)}.lws-pdf-panel{max-width:440px}}@media (width>=561px) and (width<=1179px){.lws-pdf-panel{width:min(440px,100vw - 24px)}}.lws-pdf-panel.is-presentation .lws-reference-html{min-width:0;overflow:auto}.course-kg-three{background:radial-gradient(circle at 48% 45%,#fafdff 0,#edf5f8 48%,#dceaf0 100%);min-height:540px;overflow:hidden}.kg-three-stage{cursor:grab;touch-action:none;outline:none;width:100%;height:540px;min-height:420px;position:relative}.kg-three-stage.is-rotating{cursor:grabbing}.kg-three-svg{width:100%;height:100%;display:block;overflow:visible}.kg-three-edges line{stroke:#5c8eaa;stroke-width:1.4px;stroke-linecap:round}.kg-three-node{cursor:pointer;filter:drop-shadow(0 5px 6px #19425c29);transition:filter .15s}.kg-three-node:focus{outline:none}.kg-three-node:hover,.kg-three-node.is-selected{filter:drop-shadow(0 8px 10px #19425c45)}.kg-three-node-body{stroke:#fff;stroke-width:2.4px}.kg-three-node-shadow{fill:#10394f29;stroke:none}.kg-three-node-orbit{fill:none;stroke-width:1.6px;opacity:.42;stroke-dasharray:3 4}.kg-three-node.is-selected .kg-three-node-orbit{stroke-width:3px;opacity:1;stroke-dasharray:none}.kg-three-node-label{fill:#23475c;paint-order:stroke;stroke:#f9fcfd;stroke-width:4px;stroke-linejoin:round;pointer-events:none;font-size:11px;font-weight:700}.kg-three-node-score{fill:#fff;pointer-events:none;font-size:10px;font-weight:800}.kg-three-node-marker{fill:#fff;pointer-events:none;font-size:16px;font-weight:800}.kg-three-hint{z-index:2;color:#5f7888;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none;background:#ffffffc7;border:1px solid #4878922e;border-radius:999px;padding:6px 10px;font-size:.72rem;position:absolute;bottom:14px;left:16px}@media (width<=760px){.course-kg-three{min-height:430px}.kg-three-stage{height:430px;min-height:430px}.kg-three-hint{font-size:.66rem;bottom:10px;left:10px}.kg-three-node-label{font-size:10px}}.sp-page{--sp-bg:#f4f7fb;--sp-card-bg:#fff;--sp-text-primary:#0f172a;--sp-text-secondary:#475569;--sp-text-muted:#64748b;--sp-border:#e2e8f0;--sp-border-light:#e8eef6;--sp-track-bg:#e8eef6;--sp-blue:#2563eb;--sp-blue-light:#2563eb14;--sp-purple:#7c3aed;--sp-purple-light:#7c3aed14;--sp-amber:#f59e0b;--sp-amber-light:#f59e0b14;--sp-green:#10b981;--sp-red:#ef4444;--sp-radius-sm:8px;--sp-radius:12px;--sp-radius-lg:16px;--sp-shadow-sm:0 1px 3px #0000000a;--sp-shadow:0 2px 8px #0000000f;--sp-gap:16px;--sp-gap-lg:20px;--sp-header-h:auto;--sp-transition:.18s ease;box-sizing:border-box;max-width:1440px;margin:0 auto;padding:16px}.sp-page *,.sp-page :before,.sp-page :after{box-sizing:border-box}.sp-header{border-radius:var(--sp-radius-lg);margin-bottom:var(--sp-gap-lg);background:linear-gradient(135deg,#12304a 0%,#1e4d7b 50%,#1a3a60 100%);justify-content:space-between;align-items:center;gap:24px;min-height:100px;padding:20px 24px;display:flex;position:relative;overflow:hidden}.sp-header:before{content:"";pointer-events:none;background:radial-gradient(circle,#2563eb1f 0%,#0000 70%);width:240px;height:240px;position:absolute;top:0;right:0}.sp-header:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#06b6d433,#0000);width:200px;height:1px;position:absolute;bottom:0;left:40%}.sp-header-left{z-index:1;flex:1;position:relative}.sp-header-right{z-index:1;flex-shrink:0;align-items:center;gap:14px;display:flex;position:relative}.sp-eyebrow{letter-spacing:.12em;color:#06b6d4d9;text-transform:uppercase;margin-bottom:4px;font-size:11px;font-weight:600;display:inline-block}.sp-title{color:#fff;letter-spacing:.02em;margin:0 0 4px;font-size:26px;font-weight:700;line-height:1.2}.sp-desc{color:#ffffffb3;margin:0;font-size:13px;line-height:1.4}.sp-export-btn{color:#ffffffe6;cursor:pointer;white-space:nowrap;background:#ffffff26;border:1px solid #ffffff40;border-radius:8px;flex-shrink:0;align-items:center;gap:6px;padding:8px 16px;font-family:inherit;font-size:13px;font-weight:500;line-height:1;transition:background .18s,transform .12s,border-color .18s;display:inline-flex}.sp-export-btn:hover{background:#ffffff38;border-color:#fff6}.sp-export-btn:active{transform:scale(.97)}.sp-export-btn:focus-visible{outline-offset:2px;outline:2px solid #06b6d4cc}.sp-export-btn:disabled{opacity:.65;cursor:not-allowed;transform:none}#sp-overall-ring{flex-shrink:0;width:72px;height:72px}.sp-overall-info{flex-direction:column;align-items:flex-start;gap:2px;display:flex}.sp-overall-label{color:#fff9;letter-spacing:.04em;font-size:11px;font-weight:500}.sp-overall-score{color:#fff;font-size:30px;font-weight:700;line-height:1}.sp-overall-level{font-size:12px;font-weight:600}.sp-ability-cards{gap:var(--sp-gap);margin-bottom:var(--sp-gap-lg);grid-template-columns:repeat(3,1fr);display:grid}.sp-ability-card{background:var(--sp-card-bg);border:1px solid var(--sp-border);border-radius:var(--sp-radius);cursor:pointer;transition:transform var(--sp-transition), box-shadow var(--sp-transition), border-color var(--sp-transition);box-shadow:var(--sp-shadow-sm);align-items:center;gap:14px;padding:18px 20px;display:flex}.sp-ability-card:hover{border-color:#cbd5e1;transform:translateY(-2px);box-shadow:0 4px 16px #00000014}.sp-ability-card-icon{background:var(--sp-accent);background:color-mix(in srgb, var(--sp-accent) 10%, transparent);width:44px;height:44px;color:var(--sp-accent);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.sp-ability-card-body{flex:1;min-width:0}.sp-ability-card-head{align-items:center;gap:8px;margin-bottom:4px;display:flex}.sp-ability-card-title{color:var(--sp-text-primary);font-size:14px;font-weight:600}.sp-ability-card-score{align-items:baseline;gap:8px;margin-bottom:6px;display:flex}.sp-ability-card-value{color:var(--sp-text-primary);font-size:28px;font-weight:700;line-height:1}.sp-ability-card-level{font-size:12px;font-weight:500}.sp-ability-card-bar{background:var(--sp-track-bg);border-radius:3px;height:5px;overflow:hidden}.sp-ability-card-fill{border-radius:3px;height:100%;transition:width .4s}.trend-up{color:var(--sp-green);font-size:12px;font-weight:600}.trend-down{color:var(--sp-red);font-size:12px;font-weight:600}.trend-flat{color:var(--sp-text-muted);font-size:12px}.sp-detail-section{background:var(--sp-card-bg);border:1px solid var(--sp-border);border-radius:var(--sp-radius-lg);margin-bottom:var(--sp-gap-lg);box-shadow:var(--sp-shadow-sm);overflow:hidden}.sp-detail-tabs{border-bottom:1px solid var(--sp-border);background:#f8fafc;display:flex}.sp-detail-tab{color:var(--sp-text-muted);cursor:pointer;transition:color var(--sp-transition), background var(--sp-transition);background:0 0;border:none;align-items:center;gap:8px;padding:14px 24px;font-family:inherit;font-size:14px;font-weight:500;display:flex;position:relative}.sp-detail-tab:after{content:"";background:var(--sp-tab-color);height:2.5px;transition:transform var(--sp-transition);position:absolute;bottom:-1px;left:0;right:0;transform:scaleX(0)}.sp-detail-tab.active{color:var(--sp-text-primary);background:var(--sp-card-bg)}.sp-detail-tab.active:after{transform:scaleX(1)}.sp-detail-tab:hover:not(.active){color:var(--sp-text-secondary)}.sp-detail-tab svg{flex-shrink:0}.sp-detail-panels{padding:var(--sp-gap)}.sp-detail-panel{display:none}.sp-detail-panel.active{display:block}.sp-detail-grid{grid-template-columns:42fr 58fr;align-items:start;gap:24px;display:grid}.sp-detail-left{flex-direction:column;align-items:center;gap:12px;display:flex}.sp-radar-container{width:100%;height:260px}.sp-detail-meta{align-items:baseline;gap:10px;display:flex}.sp-detail-score{font-size:32px;font-weight:700;line-height:1}.sp-detail-status{font-size:13px;font-weight:600}.sp-detail-right{min-width:0}.sp-section-subtitle{color:var(--sp-text-primary);margin:0 0 12px;font-size:14px;font-weight:600}.sp-dim-list{flex-direction:column;gap:10px;display:flex}.sp-dim-row{border-bottom:1px solid #f1f5f9;grid-template-columns:1fr 2fr 40px 56px;align-items:center;gap:12px;padding:8px 0;display:grid}.sp-dim-row:last-child{border-bottom:none}.sp-dim-name{color:var(--sp-text-secondary);white-space:nowrap;font-size:13px;font-weight:500}.sp-dim-track{background:var(--sp-track-bg);border-radius:3px;height:6px;overflow:hidden}.sp-dim-fill{background:var(--sp-blue);border-radius:3px;height:100%;transition:width .5s}.sp-dim-value{color:var(--sp-text-primary);text-align:right;font-size:14px;font-weight:700}.sp-dim-tag{text-align:center;white-space:nowrap;border-radius:10px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.dim-status-advantage{color:#059669;background:#10b9811a}.dim-status-good{color:#2563eb;background:#2563eb1a}.dim-status-growing{color:#d97706;background:#f59e0b1a}.dim-status-weak{color:#dc2626;background:#ef444414}.sp-analysis-grid{gap:var(--sp-gap);margin-bottom:var(--sp-gap-lg);grid-template-columns:1fr 1fr;display:grid}.sp-analysis-card{background:var(--sp-card-bg);border:1px solid var(--sp-border);border-radius:var(--sp-radius);box-shadow:var(--sp-shadow-sm);padding:18px}.sp-card-header{align-items:center;gap:8px;margin-bottom:14px;display:flex}.sp-card-header-icon{color:var(--sp-text-muted);align-items:center;display:flex}.sp-card-header-title{color:var(--sp-text-primary);margin:0;font-size:15px;font-weight:600}.sp-card-header-count{color:var(--sp-text-muted);margin-left:auto;font-size:12px;font-weight:500}.sp-trend-chart{height:260px}.sp-kp-section{flex-direction:column;gap:16px;display:flex}.sp-kp-group-title{color:var(--sp-text-secondary);align-items:center;gap:6px;margin:0 0 10px;font-size:13px;font-weight:600;display:flex}.sp-kp-group-icon{align-items:center;display:flex}.sp-kp-item{border-bottom:1px solid #f8fafc;grid-template-columns:18px 1fr 80px 42px;align-items:center;gap:10px;padding:8px 0;display:grid}.sp-kp-item:last-child{border-bottom:none}.sp-kp-icon{color:var(--sp-text-muted);align-items:center;display:flex}.sp-kp-name{color:var(--sp-text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;overflow:hidden}.sp-kp-track{background:var(--sp-track-bg);border-radius:3px;height:5px;overflow:hidden}.sp-kp-fill{border-radius:3px;height:100%}.sp-kp-fill-good{background:var(--sp-green)}.sp-kp-fill-weak{background:var(--sp-amber)}.sp-kp-score{color:var(--sp-text-primary);text-align:right;font-size:13px;font-weight:600}.sp-kp-empty{color:var(--sp-text-muted);text-align:center;padding:12px 0;font-size:12px}.sp-metrics-section{background:var(--sp-card-bg);border:1px solid var(--sp-border);border-radius:var(--sp-radius-lg);margin-bottom:var(--sp-gap-lg);box-shadow:var(--sp-shadow-sm);padding:18px 20px}.sp-table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.sp-metrics-table{border-collapse:separate;border-spacing:0;width:100%;font-size:13px}.sp-metrics-table thead th{text-align:left;color:var(--sp-text-secondary);border-bottom:2px solid var(--sp-border-light);white-space:nowrap;letter-spacing:.02em;background:#f8fafc;padding:10px 12px;font-size:12px;font-weight:600}.sp-metrics-table thead th:first-child{border-radius:6px 0 0}.sp-metrics-table thead th:last-child{border-radius:0 6px 0 0}.sp-metric-row td{color:var(--sp-text-primary);vertical-align:middle;border-bottom:1px solid #f1f5f9;padding:10px 12px}.sp-metric-row:last-child td{border-bottom:none}.sp-metric-row:hover{background:#f8fafc}.sp-metric-name{white-space:nowrap;font-weight:500}.sp-metric-category{color:var(--sp-text-muted);white-space:nowrap;font-size:12px}.sp-metric-value{text-align:right;white-space:nowrap;font-size:14px;font-weight:700}.sp-metric-status{text-align:center;white-space:nowrap}.sp-metric-change,.sp-metric-source{color:var(--sp-text-muted);white-space:nowrap;font-size:12px}.sp-metric-updated{color:var(--sp-text-muted);white-space:nowrap;font-size:11px}.sp-chart-empty{height:100%;min-height:160px;color:var(--sp-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:10px;font-size:13px;display:flex}.sp-error-state,.sp-empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:60px 20px;display:flex}.sp-error-msg{color:var(--sp-text-secondary);margin:12px 0 16px;font-size:15px}.sp-btn-retry{background:var(--sp-blue);color:#fff;cursor:pointer;transition:background var(--sp-transition);border:none;border-radius:8px;padding:8px 24px;font-family:inherit;font-size:14px;font-weight:500}.sp-btn-retry:hover{background:#1d4ed8}.sp-empty-title{color:var(--sp-text-primary);margin:12px 0 4px;font-size:18px;font-weight:600}.sp-empty-desc{color:var(--sp-text-muted);max-width:360px;font-size:13px}.sp-learning-overview{background:var(--sp-card-bg);border:1px solid var(--sp-border);margin-bottom:var(--sp-gap-lg);box-shadow:var(--sp-shadow-sm);border-radius:8px;grid-template-columns:minmax(240px,1.05fr) minmax(360px,1.35fr) minmax(260px,1fr);display:grid;overflow:hidden}.sp-learning-summary,.sp-learning-metrics,.sp-learning-guidance{min-width:0;padding:18px 20px}.sp-learning-metrics,.sp-learning-guidance{border-left:1px solid var(--sp-border-light)}.sp-learning-summary-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px;display:flex}.sp-section-kicker{color:var(--sp-text-muted);margin-bottom:4px;font-size:11px;font-weight:600;display:block}.sp-learning-summary h2,.sp-learning-guidance h3{color:var(--sp-text-primary);margin:0;font-size:16px;font-weight:700;line-height:1.4}.sp-learning-summary p{color:var(--sp-text-secondary);margin:0;font-size:13px;line-height:1.7}.sp-risk-badge{border-radius:999px;flex-shrink:0;padding:4px 9px;font-size:12px;font-weight:600}.sp-risk-normal{color:#166534;background:#dcfce7}.sp-risk-attention{color:#92400e;background:#fef3c7}.sp-risk-high{color:#b91c1c;background:#fee2e2}.sp-risk-reasons{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.sp-risk-reasons span{border:1px solid var(--sp-border-light);color:var(--sp-text-muted);background:#f8fafc;border-radius:4px;padding:3px 7px;font-size:11px;line-height:1.4}.sp-learning-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px;display:grid}.sp-learning-metric-head{color:var(--sp-text-secondary);justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:6px;font-size:12px;display:flex}.sp-learning-metric-head strong{color:var(--sp-text-primary);font-size:16px}.sp-learning-metric-track{background:var(--sp-track-bg);border-radius:3px;height:6px;overflow:hidden}.sp-learning-metric-track span{border-radius:inherit;height:100%;display:block}.sp-learning-metric small{color:var(--sp-text-muted);margin-top:5px;font-size:10px;line-height:1.4;display:block}.sp-learning-guidance ul{color:var(--sp-text-secondary);margin:10px 0 0;padding-left:18px;font-size:12px;line-height:1.6}.sp-learning-guidance li+li{margin-top:5px}@media (width<=1280px){.sp-learning-overview{grid-template-columns:minmax(240px,1fr) minmax(360px,1.35fr)}.sp-learning-guidance{border-left:0;border-top:1px solid var(--sp-border-light);grid-column:1/-1}.sp-detail-grid{grid-template-columns:1fr;gap:16px}.sp-radar-container{height:240px}.sp-analysis-grid{grid-template-columns:1fr 1fr}}@media (width<=1024px){.sp-page{padding:12px}.sp-ability-cards{grid-template-columns:repeat(3,1fr)}.sp-ability-card{padding:14px 16px}.sp-analysis-grid{grid-template-columns:1fr}.sp-dim-row{grid-template-columns:1fr 2fr 36px 50px;gap:8px}}@media (width<=768px){.sp-learning-overview{grid-template-columns:1fr}.sp-learning-metrics,.sp-learning-guidance{border-left:0;border-top:1px solid var(--sp-border-light);grid-column:auto}.sp-header{flex-direction:column;align-items:flex-start;gap:14px;padding:16px 20px}.sp-header-right{flex-wrap:wrap;align-self:flex-start;gap:10px}.sp-export-btn{order:1;justify-content:center;width:100%}#sp-overall-ring{width:56px;height:56px}.sp-overall-score{font-size:24px}.sp-title{font-size:22px}.sp-ability-cards{grid-template-columns:repeat(2,1fr)}.sp-ability-card:last-child{grid-column:1/-1}.sp-detail-grid{grid-template-columns:1fr}.sp-detail-tab{padding:12px 16px;font-size:13px}.sp-detail-tab span{display:none}.sp-dim-row{grid-template-columns:1fr 1.5fr 32px 48px;gap:6px;font-size:12px}.sp-dim-tag{padding:1px 6px;font-size:10px}.sp-trend-chart{height:220px}.sp-metrics-table{font-size:12px}.sp-metrics-table thead th,.sp-metric-row td{padding:8px 10px}}@media (width<=480px){.sp-page{padding:8px}.sp-header{border-radius:var(--sp-radius);padding:14px 16px}.sp-eye-brow{font-size:10px}.sp-title{font-size:20px}.sp-desc{font-size:12px}.sp-ability-cards{grid-template-columns:1fr;gap:10px}.sp-learning-summary,.sp-learning-metrics,.sp-learning-guidance{padding:14px}.sp-learning-metrics{grid-template-columns:1fr;gap:13px}.sp-ability-card:last-child{grid-column:auto}.sp-detail-tabs{-webkit-overflow-scrolling:touch;overflow-x:auto}.sp-detail-tab{flex-shrink:0;padding:10px 14px;font-size:12px}.sp-detail-panels{padding:12px}.sp-radar-container{height:200px}.sp-dim-row{grid-template-columns:1fr 1fr 30px 44px;gap:4px}.sp-dim-name{font-size:11px}.sp-dim-value{font-size:12px}.sp-analysis-card{padding:14px}.sp-trend-chart{height:200px}.sp-kp-item{grid-template-columns:16px 1fr 60px 36px;gap:6px}.sp-metrics-section{border-radius:var(--sp-radius);padding:12px}.sp-table-wrap{margin:0 -12px;padding:0 12px}.sp-metrics-table{font-size:11px}.sp-metrics-table thead th,.sp-metric-row td{padding:6px 8px}}@media (prefers-reduced-motion:reduce){.sp-page *,.sp-page :before,.sp-page :after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.sp-ability-card-fill,.sp-dim-fill{transition:none}}:root{--complex-deep:#0b1f4d;--complex-primary:#2563eb;--complex-secondary:#3b82f6;--complex-light:#22d3ee;--complex-muted:#e2e8f0;--complex-line:#0b1f4d1a;--complex-soft:#2563eb0f;--complex-panel:#fffffff2;--complex-shadow:0 8px 24px #0b1f4d14;--complex-radius:8px}.lf-resource-panel{background:#fff;border:1px solid #dce6ef;border-radius:18px;margin:18px 0;padding:20px;box-shadow:0 12px 30px #0f172a0d}.lf-resource-panel>header{justify-content:space-between;align-items:center;gap:18px;margin-bottom:16px;display:flex}.lf-resource-panel h2{color:#172033;margin:2px 0 4px}.lf-resource-panel p{color:#64748b;margin:0}.lf-resource-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;display:grid}.lf-resource-card{background:#fbfdff;border:1px solid #e3eaf2;border-radius:14px;gap:10px;padding:15px;display:grid}.lf-resource-card>div,.lf-resource-card footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.lf-resource-card h3,.lf-resource-card p{margin:0}.lf-resource-card h3{color:#1e293b;font-size:1rem}.lf-resource-card p{font-size:.83rem}.lf-preload-state{color:#64748b;background:#f5f7fa;border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;padding:9px 10px;font-size:.76rem;display:flex}.lf-preload-state b{color:#334155}.lf-preload-state .lf-button{margin-left:auto}.lf-preload-state.is-ready{color:#18794e;background:#eaf8ef}.lf-preload-state.is-partial{color:#9a6700;background:#fff7e6}.lf-preload-state.is-failed{color:#b42318;background:#fff0f0}.lf-resource-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.lf-preparation-checklist{background:#fbfdff;border:1px solid #e3eaf2;border-radius:13px;gap:9px;margin-top:14px;padding:12px;display:grid}.lf-preparation-checklist>strong{color:#334155;font-size:.82rem}.lf-preparation-checklist>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.lf-preparation-checklist span{background:#fff;border-radius:9px;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:2px 7px;padding:8px;display:grid}.lf-preparation-checklist i{color:#64748b;background:#edf2f7;border-radius:50%;grid-row:1/3;place-items:center;width:20px;height:20px;font-size:.68rem;font-style:normal;font-weight:800;display:grid}.lf-preparation-checklist b{color:#334155;font-size:.7rem}.lf-preparation-checklist small{color:#7c8b96;text-overflow:ellipsis;white-space:nowrap;font-size:.58rem;overflow:hidden}.lf-preparation-checklist .is-ready i{color:#18794e;background:#e7f6ec}.lf-preparation-checklist .is-pending i{color:#a16207;background:#fff3dc}@media (width<=720px){.lf-resource-panel>header{flex-direction:column;align-items:stretch}.lf-resource-actions{justify-content:stretch}.lf-resource-actions .lf-button{flex:1}.lf-preparation-checklist>div,.lf-resource-grid{grid-template-columns:1fr}.lf-preload-state .lf-button{width:100%;margin-left:0}.lf-card-actions{flex-wrap:wrap;width:100%}}.complex-shell{flex-direction:column;gap:18px;min-height:calc(100vh - 56px);display:flex}.complex-hero,.exam-topbar,.report-hero{border-radius:var(--complex-radius);color:#fff;background:linear-gradient(118deg,#0b1f4dfa,#132e5bf0 55%,#2563ebdb),linear-gradient(28deg,#22d3ee29,#7c3aed0a);border:1px solid #ffffff24;box-shadow:0 14px 32px #0b1f4d2e}.complex-hero{justify-content:space-between;align-items:center;gap:22px;padding:26px 30px;display:flex}.complex-hero h1,.report-hero h1,.exam-title{color:#fff;margin:0 0 7px;font-size:1.58rem;font-weight:750;line-height:1.25}.complex-hero p,.report-hero p,.exam-subtitle{color:#ffffffc7;margin:0;font-size:.92rem;line-height:1.6}.complex-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.complex-btn,.complex-btn-secondary,.complex-btn-ghost,.complex-btn-danger{border-radius:var(--complex-radius);min-height:38px;font-family:var(--font);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:6px;padding:0 16px;font-size:.86rem;font-weight:650;transition:transform .2s,box-shadow .2s,background .2s,border-color .2s;display:inline-flex}.complex-btn{color:#fff;background:linear-gradient(135deg, var(--complex-primary), var(--complex-secondary));box-shadow:0 8px 18px #2f669038}.complex-btn:hover,.complex-btn-secondary:hover,.complex-btn-ghost:hover,.complex-btn-danger:hover{transform:translateY(-1px)}.complex-btn-secondary{color:var(--complex-primary);background:#fff;border-color:#2f669026}.complex-btn-ghost{color:var(--complex-primary);background:#2f66900f;border-color:#2f66901f}.complex-btn-danger{color:#b64c3d;background:#e8913a1a;border-color:#e8913a38}.complex-btn[disabled],.complex-btn-secondary[disabled],.complex-btn-ghost[disabled],.complex-btn-danger[disabled]{opacity:.58;cursor:not-allowed;box-shadow:none;transform:none}.complex-input,.complex-select,.complex-textarea{border:1px solid var(--complex-line);border-radius:var(--complex-radius);width:100%;color:var(--text-main);font-family:var(--font);background:#fff;outline:none;font-size:.9rem;transition:border-color .2s,box-shadow .2s}.complex-input,.complex-select{height:40px;padding:0 12px}.complex-textarea{resize:vertical;min-height:108px;padding:12px;line-height:1.6}.complex-input:focus,.complex-select:focus,.complex-textarea:focus{border-color:#2f66906b;box-shadow:0 0 0 3px #2f669014}.complex-card{background:var(--complex-panel);border:1px solid var(--complex-line);border-radius:var(--complex-radius);box-shadow:var(--complex-shadow);padding:18px}.complex-section-title{color:var(--complex-deep);margin:0 0 12px;font-size:1rem;font-weight:750}.complex-tag,.status-pill{color:var(--complex-primary);background:#2f669014;border:1px solid #2f66901a;border-radius:999px;align-items:center;gap:5px;padding:4px 9px;font-size:.75rem;font-weight:650;display:inline-flex}.status-pill.success,.status-pill.chunked,.status-pill.parsed,.status-pill.approved,.status-pill.correct{color:#2c7a63;background:#4caf841f;border-color:#4caf8438}.status-pill.warning,.status-pill.uploaded,.status-pill.parsing,.status-pill.chunking,.status-pill.pending,.status-pill.partial{color:#a4691d;background:#f0b85e29;border-color:#f0b85e47}.status-pill.danger,.status-pill.failed,.status-pill.rejected,.status-pill.wrong{color:#b64c3d;background:#e0576e1a;border-color:#e0576e2e}.complex-empty,.complex-error,.complex-loading{text-align:center;border:1px dashed var(--complex-line);border-radius:var(--complex-radius);background:#ffffffd1;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:310px;padding:38px;display:flex}.complex-empty h3,.complex-error h3{color:var(--complex-deep);margin:0;font-size:1.05rem}.complex-empty p,.complex-error p,.complex-loading p{max-width:430px;color:var(--text-sub);margin:0;line-height:1.6}.complex-spinner{border:3px solid #2f669024;border-top-color:var(--complex-primary);border-radius:50%;width:38px;height:38px;animation:.8s linear infinite spin}.exam-topbar{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:22px 24px;display:grid}.exam-meta-row{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.exam-meta-row span{color:#ffffffd6;background:#ffffff1f;border:1px solid #ffffff29;border-radius:999px;padding:5px 10px;font-size:.76rem}.exam-layout{grid-template-columns:150px minmax(0,1fr) 260px;align-items:start;gap:16px;display:grid}.question-nav-panel,.answer-progress-panel,.question-card,.exam-bottom-bar{border:1px solid var(--complex-line);border-radius:var(--complex-radius);box-shadow:var(--complex-shadow);background:#fff}.question-nav-panel{padding:14px;position:sticky;top:18px}.question-number-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.question-number{border-radius:var(--complex-radius);height:34px;color:var(--text-sub);cursor:pointer;background:#f2f5f7;border:1px solid #16425b1a;font-weight:750}.question-number.answered{color:#fff;background:var(--complex-secondary);border-color:var(--complex-secondary)}.question-number.current{color:#fff;background:var(--complex-deep);border-color:var(--complex-deep);box-shadow:0 0 0 3px #16425b1f}.question-number.marked{border-color:#f0b85e;box-shadow:inset 0 0 0 2px #f0b85e52}.question-card{min-height:430px;padding:22px}.question-head{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:16px;display:flex}.question-head h2{color:var(--complex-deep);margin:0;font-size:1.15rem}.question-content{color:var(--text-main);white-space:pre-wrap;margin-bottom:18px;font-size:.98rem;line-height:1.75}.choice-list{flex-direction:column;gap:10px;display:flex}.choice-option{border:1px solid var(--complex-line);border-radius:var(--complex-radius);cursor:pointer;background:#fff;grid-template-columns:28px 1fr;align-items:center;gap:10px;padding:12px 14px;transition:background .2s,border-color .2s,box-shadow .2s;display:grid}.choice-option:hover{background:#81c3d71c;border-color:#2f669042}.choice-option.selected{border-color:var(--complex-primary);background:#2f66900f;box-shadow:0 0 0 3px #2f669014}.choice-badge{width:28px;height:28px;color:var(--complex-primary);background:#2f669014;border-radius:50%;justify-content:center;align-items:center;font-weight:800;display:inline-flex}.tf-row{grid-template-columns:repeat(2,minmax(0,160px));gap:12px;display:grid}.short-count{color:var(--text-hint);text-align:right;margin-top:8px;font-size:.78rem}.answer-progress-panel{padding:16px;position:sticky;top:18px}.progress-chart-mini{height:170px}.progress-kpis{grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:12px;display:grid}.progress-kpis div{border-radius:var(--complex-radius);background:#2f66900f;padding:10px}.progress-kpis b{color:var(--complex-deep);font-size:1.15rem;display:block}.progress-kpis span{color:var(--text-sub);font-size:.74rem}.exam-bottom-bar{justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.report-hero{grid-template-columns:minmax(0,1fr) 190px;align-items:center;gap:22px;padding:28px 30px;display:grid}.report-score-box{text-align:center;border-radius:var(--complex-radius);background:#ffffff21;border:1px solid #ffffff2e;padding:18px}.report-score-box b{color:#fff;font-size:2.2rem;line-height:1.1;display:block}.report-score-box span{color:#ffffffc2;font-size:.82rem}.complex-metric-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;display:grid}.complex-metric{border-radius:var(--complex-radius);border:1px solid var(--complex-line);box-shadow:var(--complex-shadow);background:#fff;padding:16px}.complex-metric b{color:var(--complex-deep);font-size:1.45rem;line-height:1.1;display:block}.complex-metric span{color:var(--text-sub);font-size:.78rem}.report-charts{grid-template-columns:minmax(280px,.8fr) minmax(360px,1.2fr);gap:16px;display:grid}.result-question-list{flex-direction:column;gap:12px;display:flex}.result-question-card{border:1px solid var(--complex-line);border-radius:var(--complex-radius);box-shadow:var(--complex-shadow);background:#fff;padding:16px}.result-question-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px;display:flex}.answer-compare-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.answer-box{border-radius:var(--complex-radius);background:#d9dcd633;border:1px solid #16425b14;padding:12px}.answer-box span{color:var(--text-hint);margin-bottom:5px;font-size:.75rem;display:block}.analysis-body{border-left:3px solid var(--complex-light);color:var(--text-sub);background:#81c3d714;margin-top:12px;padding:12px;line-height:1.7;display:none}.analysis-body.open{display:block}.chat-workbench{grid-template-columns:260px minmax(0,1fr) 250px;gap:14px;height:calc(100vh - 92px);min-height:640px;display:grid}.chat-side,.chat-main,.chat-helper{border:1px solid var(--complex-line);border-radius:var(--complex-radius);min-height:0;box-shadow:var(--complex-shadow);background:#fff}.chat-side,.chat-helper{padding:14px;overflow:auto}.chat-main{grid-template-rows:auto minmax(0,1fr) auto;display:grid;overflow:hidden}.chat-main-head{border-bottom:1px solid var(--complex-line);padding:15px 18px}.conversation-list{flex-direction:column;gap:8px;margin-top:12px;display:flex}.conversation-item{border-radius:var(--complex-radius);cursor:pointer;background:#2f66900d;border:1px solid #0000;padding:10px}.conversation-item.active{background:#81c3d72e;border-color:#2f669047}.conversation-title-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.conversation-title-row b{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--complex-deep);font-size:.88rem;overflow:hidden}.conversation-item p{color:var(--text-sub);margin:5px 0 0;font-size:.76rem;line-height:1.45}.btn-delete-conv{color:#b64c3d;cursor:pointer;background:#e0576e14;border:none;border-radius:50%;flex:0 0 26px;width:26px;height:26px}.chat-messages{background:linear-gradient(#f7fafbdb,#fffffff5);padding:18px;overflow:auto}.message-row{margin-bottom:14px;display:flex}.message-row.user{justify-content:flex-end}.message-bubble{border-radius:var(--complex-radius);white-space:pre-wrap;max-width:min(680px,78%);padding:12px 14px;line-height:1.7}.message-row.user .message-bubble{color:#fff;background:var(--complex-primary)}.message-row.assistant .message-bubble{color:var(--text-main);border:1px solid var(--complex-line);background:#fff;box-shadow:0 6px 18px #16425b0f}.message-meta{color:var(--text-hint);margin-bottom:5px;font-size:.72rem}.source-list{flex-direction:column;gap:7px;margin-top:10px;display:flex}.source-card{border-radius:var(--complex-radius);color:var(--text-sub);background:#81c3d71a;border:1px solid #2f66901f;padding:9px;font-size:.78rem}.chat-input-area{border-top:1px solid var(--complex-line);background:#fff;padding:14px}.chat-input-row{grid-template-columns:minmax(0,1fr) 96px;align-items:end;gap:10px;display:grid}.chat-input-row textarea{min-height:70px;max-height:150px}.quick-question-list{flex-direction:column;gap:8px;display:flex}.quick-question{text-align:left;color:var(--complex-primary);border-radius:var(--complex-radius);cursor:pointer;background:#2f66900f;border:1px solid #2f66901f;padding:9px 10px;line-height:1.45}.ai-chat-shell{flex:auto;gap:14px;min-width:0;height:100%;min-height:0;overflow:hidden}.student-main.student-main-ai-chat{--ai-bg-page:#f5f7fb;--ai-bg-panel:#fff;--ai-bg-soft:#f7f9fc;--ai-bg-hover:#eef3f9;--ai-border:#e3e8ef;--ai-border-strong:#cfd8e4;--ai-text-primary:#172033;--ai-text-secondary:#526078;--ai-text-muted:#8792a5;--ai-accent:#356fd6;--ai-accent-soft:#eaf2ff;--ai-success:#3d7f6d;--ai-warning:#a36a25;--ai-danger:#b94e5b;background:var(--ai-bg-page);padding:14px 16px}.student-main-ai-chat .ai-visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.student-main-ai-chat .ai-chat-shell{color:var(--ai-text-primary);gap:10px}.student-main-ai-chat .ai-chat-topbar{border:1px solid var(--ai-border);background:linear-gradient(105deg,#fff 0%,#fbfcff 66%,#f4f7ff 100%);border-radius:14px;flex:none;align-items:center;gap:18px;min-height:62px;padding:8px 12px 8px 14px;display:flex;overflow:hidden;box-shadow:0 4px 16px #23344e09}.student-main-ai-chat .ai-chat-brand{align-items:center;gap:10px;min-width:205px;display:flex}.student-main-ai-chat .ai-chat-brand-mark{width:32px;height:32px;color:var(--ai-accent);background:#f3f7ff;border:1px solid #dbe6f8;border-radius:9px;place-items:center;display:grid}.student-main-ai-chat .ai-chat-brand-mark svg{width:18px;height:18px}.student-main-ai-chat .ai-chat-brand h1{letter-spacing:-.01em;margin:0;font-size:16px;line-height:1.25}.student-main-ai-chat .ai-chat-brand p{color:var(--ai-text-muted);margin:2px 0 0;font-size:11px}.student-main-ai-chat .ai-mode-panel{min-width:0;box-shadow:none;background:0 0;border:0;border-radius:0;flex:auto;align-items:center;gap:8px;padding:0;display:flex}.student-main-ai-chat .ai-mode-cards{border:1px solid var(--ai-border);background:#f2f5f9;border-radius:10px;flex:none;align-items:center;gap:2px;height:38px;padding:3px;display:inline-flex}.student-main-ai-chat .ai-mode-card{min-width:0;height:30px;min-height:0;color:var(--ai-text-secondary);cursor:pointer;background:0 0;border:0;border-radius:7px;justify-content:center;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:600;line-height:1;transition:color .18s,background-color .18s,box-shadow .18s;display:inline-flex}.student-main-ai-chat .ai-mode-card svg{width:15px;height:15px}.student-main-ai-chat .ai-mode-card small{display:none}.student-main-ai-chat .ai-mode-card:hover:not(:disabled){color:var(--ai-text-primary);background:#ffffffa6}.student-main-ai-chat .ai-mode-card.active{color:#245dbd;background:#fff;box-shadow:0 1px 4px #273e621a}.student-main-ai-chat .ai-mode-card:focus-visible{outline-offset:1px;outline:2px solid #356fd64d}.student-main-ai-chat .ai-mode-selectors,.student-main-ai-chat .ai-mode-selectors label{align-items:center;min-width:0;display:flex}.student-main-ai-chat .ai-mode-selectors .is-hidden{display:none}.student-main-ai-chat .ai-mode-selectors .complex-select{border:1px solid var(--ai-border);width:132px;height:36px;color:var(--ai-text-secondary);background-color:#fff;border-radius:9px;padding:0 30px 0 10px;font-size:12px}.student-main-ai-chat .ai-topbar-meta{color:var(--ai-text-muted);white-space:nowrap;align-items:center;gap:7px;font-size:11px;display:flex}.student-main-ai-chat .ai-topbar-meta span+span{border-left:1px solid var(--ai-border);padding-left:8px}.student-main-ai-chat .ai-chat-workbench{background:0 0;border:0;grid-template-columns:238px minmax(0,1fr);gap:10px;transition:grid-template-columns .2s}.student-main-ai-chat .ai-chat-workbench.history-collapsed{grid-template-columns:52px minmax(0,1fr)}.student-main-ai-chat .ai-history-panel,.student-main-ai-chat .ai-chat-main{border:1px solid var(--ai-border);background:var(--ai-bg-panel);border-radius:14px;box-shadow:0 4px 18px #1f2d4208}.student-main-ai-chat .ai-history-panel{gap:8px;padding:9px 8px 8px;overflow:hidden}.student-main-ai-chat .ai-history-head{flex:none;align-items:center;gap:6px;display:flex}.student-main-ai-chat .ai-new-conversation,.student-main-ai-chat .ai-history-toggle{cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:7px;height:34px;transition:background-color .18s,border-color .18s,color .18s;display:inline-flex}.student-main-ai-chat .ai-new-conversation{color:#2c62bd;background:#f5f8fe;border:1px solid #d8e3f5;flex:auto;min-width:0;padding:0 10px;font-size:12px;font-weight:650}.student-main-ai-chat .ai-history-toggle{border:1px solid var(--ai-border);width:34px;color:var(--ai-text-muted);background:#fff;flex:none}.student-main-ai-chat .ai-new-conversation svg,.student-main-ai-chat .ai-history-toggle svg{width:16px;height:16px}.student-main-ai-chat .ai-new-conversation:hover:not(:disabled),.student-main-ai-chat .ai-history-toggle:hover{border-color:var(--ai-border-strong);background:var(--ai-bg-hover);color:var(--ai-accent)}.student-main-ai-chat .ai-history-search{border:1px solid var(--ai-border);background:var(--ai-bg-soft);height:34px;color:var(--ai-text-muted);border-radius:8px;flex:none;align-items:center;gap:7px;padding:0 9px;display:flex}.student-main-ai-chat .ai-history-search:focus-within{border-color:#a9c1ea;box-shadow:0 0 0 3px #356fd614}.student-main-ai-chat .ai-history-search svg{flex:none;width:15px;height:15px}.student-main-ai-chat .ai-history-search input{width:100%;min-width:0;color:var(--ai-text-primary);background:0 0;border:0;outline:0;font-size:12px}.student-main-ai-chat .ai-history-panel #conversation-list-host{padding-right:1px}.student-main-ai-chat .ai-conversation-list{flex-direction:column;gap:0;display:flex}.student-main-ai-chat .conversation-item{cursor:pointer;background:0 0;border:0;border-bottom:1px solid #edf0f4;border-radius:7px;min-height:66px;padding:9px 8px;transition:background-color .16s}.student-main-ai-chat .conversation-item:hover{background:var(--ai-bg-soft)}.student-main-ai-chat .conversation-item.active{background:var(--ai-accent-soft);box-shadow:inset 2px 0 0 var(--ai-accent)}.student-main-ai-chat .conversation-item:focus-visible{outline-offset:-2px;outline:2px solid #356fd64d}.student-main-ai-chat .conversation-title-row{gap:6px}.student-main-ai-chat .conversation-title-row b{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--ai-text-primary);font-size:12px;overflow:hidden}.student-main-ai-chat .conversation-preview{color:var(--ai-text-secondary);text-overflow:ellipsis;white-space:nowrap;margin:4px 0 5px;font-size:11px;line-height:1.25;overflow:hidden}.student-main-ai-chat .conversation-meta{color:var(--ai-text-muted);justify-content:space-between;gap:6px;font-size:10px;display:flex}.student-main-ai-chat .conversation-meta span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.student-main-ai-chat .btn-delete-conv{color:#0000;opacity:0;background:0 0;border:0;border-radius:6px;place-items:center;width:24px;height:24px;padding:0;transition:opacity .16s,color .16s,background-color .16s;display:grid}.student-main-ai-chat .btn-delete-conv svg{width:14px;height:14px}.student-main-ai-chat .conversation-item:hover .btn-delete-conv,.student-main-ai-chat .conversation-item.active .btn-delete-conv,.student-main-ai-chat .btn-delete-conv:focus-visible{color:var(--ai-text-muted);opacity:1}.student-main-ai-chat .btn-delete-conv:hover{color:var(--ai-danger);background:#fff0f2}.student-main-ai-chat .history-collapsed .ai-history-panel{padding-inline:8px}.student-main-ai-chat .history-collapsed .ai-new-conversation{flex:0 0 34px;width:34px;padding:0}.student-main-ai-chat .history-collapsed .ai-new-conversation span,.student-main-ai-chat .history-collapsed .ai-history-search,.student-main-ai-chat .history-collapsed #conversation-list-host{display:none}.student-main-ai-chat .history-collapsed .ai-history-head{flex-direction:column}.student-main-ai-chat .ai-chat-main{grid-template-rows:46px minmax(0,1fr) auto}.student-main-ai-chat .ai-chat-main-head{border-bottom:1px solid var(--ai-border);background:#fffffff5;min-height:46px;padding:0 12px 0 16px}.student-main-ai-chat .ai-chat-title-block{align-items:center;gap:7px;min-width:0;display:flex}.student-main-ai-chat .ai-chat-title-block h2{text-overflow:ellipsis;white-space:nowrap;max-width:min(44vw,520px);margin:0;font-size:13px;overflow:hidden}.student-main-ai-chat .ai-chat-title-block>span{color:var(--ai-text-muted);white-space:nowrap;font-size:10px}.student-main-ai-chat .ai-context-tag{border-left:1px solid var(--ai-border);padding-left:7px}.student-main-ai-chat .ai-chat-actions{gap:2px}.student-main-ai-chat .ai-toolbar-button{height:30px;color:var(--ai-text-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;align-items:center;gap:5px;padding:0 7px;font-size:11px;transition:color .18s,border-color .18s,background-color .18s;display:inline-flex}.student-main-ai-chat .ai-toolbar-button svg{width:14px;height:14px}.student-main-ai-chat .ai-toolbar-button:hover:not(:disabled){border-color:var(--ai-border);background:var(--ai-bg-soft);color:var(--ai-text-primary)}.student-main-ai-chat .ai-toolbar-danger:hover:not(:disabled){color:var(--ai-danger);background:#fff5f6;border-color:#f1cbd0}.student-main-ai-chat .ai-toolbar-stop:not(:disabled){color:var(--ai-danger);background:#fff4f5}.student-main-ai-chat .ai-toolbar-button:disabled{opacity:.38;cursor:default}.student-main-ai-chat .ai-chat-messages{background:#fff;padding:10px clamp(14px,2.2vw,28px) 18px}.student-main-ai-chat .ai-chat-message-list{width:100%;max-width:1180px;margin:0 auto}.student-main-ai-chat .message-row{width:100%;margin:0;display:flex}.student-main-ai-chat .message-row.assistant{justify-content:flex-start}.student-main-ai-chat .message-row.user{justify-content:flex-end;padding:8px 0 12px}.student-main-ai-chat .message-row.assistant .ai-message-bubble{width:100%;max-width:1120px;box-shadow:none;background:0 0;border:0;border-radius:0;padding:12px 6px 18px}.student-main-ai-chat .message-row.user .ai-message-bubble{color:#18365f;width:auto;max-width:min(760px,76%);box-shadow:none;background:#e4efff;border:1px solid #bfd3f1;border-radius:14px 14px 4px;padding:11px 14px}.student-main-ai-chat .message-meta{color:#66748a;min-height:22px;margin-bottom:6px;font-size:12px}.student-main-ai-chat .ai-message-tools{opacity:.68;transition:opacity .18s}.student-main-ai-chat .message-row.assistant:hover .ai-message-tools,.student-main-ai-chat .ai-message-tools:focus-within{opacity:1}.student-main-ai-chat .ai-message-tools button{color:#596980;font-size:12px}.student-main-ai-chat .message-markdown{color:#17243a;letter-spacing:.005em;font-size:16px;line-height:1.75}.student-main-ai-chat .message-row.user .message-markdown,.student-main-ai-chat .message-row.user .message-markdown h1,.student-main-ai-chat .message-row.user .message-markdown h2,.student-main-ai-chat .message-row.user .message-markdown h3,.student-main-ai-chat .message-row.user .message-markdown h4,.student-main-ai-chat .message-row.user .message-markdown h5,.student-main-ai-chat .message-row.user .message-markdown h6,.student-main-ai-chat .message-row.user .message-markdown ul,.student-main-ai-chat .message-row.user .message-markdown ol,.student-main-ai-chat .message-row.user .message-markdown blockquote,.student-main-ai-chat .message-row.user .message-markdown .katex,.student-main-ai-chat .message-row.user .markdown-table-wrap th,.student-main-ai-chat .message-row.user .markdown-table-wrap td{color:#18365f}.student-main-ai-chat .message-row.user .message-markdown a{color:#174f9c}.student-main-ai-chat .message-markdown p{margin:0 0 .78em}.student-main-ai-chat .message-markdown h1{margin:1.25em 0 .55em;font-size:1.45em}.student-main-ai-chat .message-markdown h2{margin:1.15em 0 .5em;font-size:1.25em}.student-main-ai-chat .message-markdown h3{margin:1em 0 .45em;font-size:1.08em}.student-main-ai-chat .message-markdown ul,.student-main-ai-chat .message-markdown ol{margin:.45em 0 .8em;padding-left:1.45em}.student-main-ai-chat .message-markdown pre{box-shadow:none;background:#f7f9fc;border:1px solid #dce3ec;border-radius:10px;margin:.9em 0}.student-main-ai-chat .message-markdown .markdown-table-wrap{border:1px solid var(--ai-border);border-radius:9px;margin:.9em 0}.student-main-ai-chat .message-markdown blockquote{color:var(--ai-text-secondary);background:#f7f9fd;border-left:3px solid #b7c9e7}.student-main-ai-chat .thinking-text{color:var(--ai-text-muted);margin:4px 0;font-size:13px}.student-main-ai-chat .subject-run-empty,.student-main-ai-chat .subject-run-panel{border:1px solid var(--ai-border);background:var(--ai-bg-soft);width:min(100%,1180px);box-shadow:none;border-radius:10px;margin:0 auto 8px}.student-main-ai-chat .subject-run-empty{align-items:center;gap:9px;min-height:42px;padding:8px 11px;display:flex}.student-main-ai-chat .subject-run-empty-icon{width:24px;height:24px;color:var(--ai-text-muted);place-items:center;display:grid}.student-main-ai-chat .subject-run-empty-icon svg{width:16px;height:16px}.student-main-ai-chat .subject-run-empty strong{font-size:12px;display:block}.student-main-ai-chat .subject-run-empty p{color:var(--ai-text-muted);margin:1px 0 0;font-size:10px}.student-main-ai-chat .subject-run-statusbar{align-items:center;gap:12px;min-height:42px;padding:7px 10px;display:flex}.student-main-ai-chat .subject-run-status-main{flex:auto;align-items:center;gap:8px;min-width:0;display:flex}.student-main-ai-chat .subject-run-status-main>strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.student-main-ai-chat .subject-run-status-icon{flex:none;place-items:center;width:22px;height:22px;display:grid}.student-main-ai-chat .subject-run-status-icon svg{fill:none;stroke:currentColor;stroke-width:1.8px;width:16px;height:16px}.student-main-ai-chat .status-success{color:var(--ai-success)}.student-main-ai-chat .status-failed{color:var(--ai-danger)}.student-main-ai-chat .status-cancelled{color:#8a6870}.student-main-ai-chat .subject-run-metrics{color:var(--ai-text-muted);white-space:nowrap;align-items:center;gap:0;font-size:10px;display:flex}.student-main-ai-chat .subject-run-metrics span{border-left:1px solid var(--ai-border);padding:0 8px;display:inline-flex}.student-main-ai-chat .subject-run-metrics b{color:var(--ai-text-secondary);font-weight:650}.student-main-ai-chat .subject-run-technical{border:1px dashed var(--ai-border);color:var(--ai-text-muted);background:#f7fafccc;border-radius:8px;margin:8px 8px 0;padding:7px 9px;font-size:10px}.student-main-ai-chat .subject-run-technical>summary{cursor:pointer;font-weight:650}.student-main-ai-chat .subject-run-technical dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:8px 0;display:grid}.student-main-ai-chat .subject-run-technical dl>div{min-width:0}.student-main-ai-chat .subject-run-technical dt{color:var(--ai-text-muted)}.student-main-ai-chat .subject-run-technical dd{overflow-wrap:anywhere;color:var(--ai-text-secondary);margin:2px 0 0}.student-main-ai-chat .subject-run-technical ul{margin:7px 0 0;padding-left:18px}.student-main-ai-chat .subject-run-progress{background:#e8edf3;height:2px}.student-main-ai-chat .subject-run-progress i{background:var(--ai-accent);height:100%;transition:width .2s;display:block}.student-main-ai-chat .subject-run-details,.student-main-ai-chat .subject-run-sources{border:0;border-top:1px solid var(--ai-border);background:0 0}.student-main-ai-chat .subject-run-details>summary,.student-main-ai-chat .subject-run-section-title{min-height:34px;color:var(--ai-text-secondary);cursor:pointer;align-items:center;gap:7px;padding:0 10px;font-size:11px;list-style:none;display:flex}.student-main-ai-chat .subject-run-details>summary::-webkit-details-marker{display:none}.student-main-ai-chat .subject-run-section-title::-webkit-details-marker{display:none}.student-main-ai-chat .subject-run-details>summary small,.student-main-ai-chat .subject-run-section-title span{color:var(--ai-text-muted);margin-left:auto;font-size:10px}.student-main-ai-chat .subject-run-chevron{width:13px;height:13px;transition:transform .18s}.student-main-ai-chat details[open]>summary .subject-run-chevron{transform:rotate(90deg)}.student-main-ai-chat .subject-run-timeline{flex-direction:column;gap:0;padding:4px 10px 10px 19px;display:flex;position:relative}.student-main-ai-chat .subject-run-timeline:before{content:"";background:#dce3ec;width:1px;position:absolute;top:11px;bottom:17px;left:28px}.student-main-ai-chat .subject-run-task{background:0 0;border:0;border-radius:0;grid-template-columns:20px minmax(0,1fr);gap:8px;min-height:42px;padding:6px 0;display:grid;position:relative}.student-main-ai-chat .subject-run-task-icon{z-index:1;background:var(--ai-bg-soft);width:18px;height:18px;color:var(--ai-text-muted);border-radius:50%;place-items:center;display:grid;position:relative}.student-main-ai-chat .subject-run-task-icon svg{fill:none;stroke:currentColor;stroke-width:1.8px;width:14px;height:14px}.student-main-ai-chat .task-success .subject-run-task-icon{color:var(--ai-success)}.student-main-ai-chat .task-running .subject-run-task-icon{color:var(--ai-accent)}.student-main-ai-chat .task-failed .subject-run-task-icon{color:var(--ai-danger)}.student-main-ai-chat .subject-run-task-head{justify-content:space-between;align-items:baseline;gap:8px;min-height:18px;display:flex}.student-main-ai-chat .subject-run-task-head strong{font-size:11px}.student-main-ai-chat .subject-run-task-head span{color:var(--ai-text-muted);white-space:nowrap;font-size:10px}.student-main-ai-chat .subject-run-task-body>p{color:var(--ai-text-muted);margin:2px 0 0;font-size:10px;line-height:1.4}.student-main-ai-chat .subject-run-task-body details{color:var(--ai-text-secondary);margin-top:4px;font-size:10px}.student-main-ai-chat .subject-run-retry{color:var(--ai-danger);background:#fff;border:1px solid #e6b9bf;border-radius:6px;margin-top:5px;padding:4px 8px;font-size:10px}.student-main-ai-chat .subject-run-source-list{padding:0 10px 9px}.student-main-ai-chat .subject-run-source{background:0 0;border:0;border-top:1px solid #e9edf2;border-radius:0;padding:0}.student-main-ai-chat .subject-run-source>summary{min-height:34px;color:var(--ai-text-secondary);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:7px;font-size:10px;display:grid}.student-main-ai-chat .subject-run-source>summary span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.student-main-ai-chat .subject-run-source>summary small{color:var(--ai-text-muted)}.student-main-ai-chat .subject-run-source>p{color:var(--ai-text-secondary);margin:0 0 5px 25px;font-size:10px;line-height:1.5}.student-main-ai-chat .subject-run-source>span,.student-main-ai-chat .subject-run-source>a{color:var(--ai-text-muted);margin:0 0 7px 25px;font-size:9px}.student-main-ai-chat .ai-loading-breadcrumb{min-width:0;color:var(--ai-text-muted);align-items:center;gap:8px;font-size:12px;font-weight:600;display:inline-flex}.student-main-ai-chat .ai-loading-breadcrumb.is-subtle{opacity:.72;font-weight:500}.student-main-ai-chat .ai-path-loader{flex:none;width:19px;height:16px;overflow:visible}.student-main-ai-chat .ai-path-loader path{stroke:var(--ai-accent);stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:var(--ai-path-length,48);stroke-dashoffset:var(--ai-path-length,48);animation:2.5s ease-in-out infinite ai-path-trace}.student-main-ai-chat .ai-loading-shimmer{text-overflow:ellipsis;white-space:nowrap;color:#0000;background:linear-gradient(100deg,#8994a6 25%,#27364e 48%,#8994a6 72%) 0 0/200%;-webkit-background-clip:text;background-clip:text;animation:2.1s linear infinite ai-text-shimmer;overflow:hidden}@keyframes ai-path-trace{0%{stroke-dashoffset:var(--ai-path-length,48);opacity:.35}52%{stroke-dashoffset:0;opacity:1}to{stroke-dashoffset:var(--ai-path-length-negative,-48);opacity:.3}}@keyframes ai-text-shimmer{0%{background-position:190%}to{background-position:-10%}}.student-main-ai-chat .ai-chat-input-area{border-top:1px solid var(--ai-border);background:#fbfcfe;padding:7px 14px 9px}.student-main-ai-chat .starter-question-row{scrollbar-width:none;flex-wrap:nowrap;gap:6px;height:32px;min-height:32px;margin:0 0 5px;display:flex;overflow:auto hidden}.student-main-ai-chat .starter-question-row::-webkit-scrollbar{display:none}.student-main-ai-chat .starter-question-row .quick-question{border:1px solid var(--ai-border);max-width:260px;height:28px;color:var(--ai-text-secondary);text-overflow:ellipsis;white-space:nowrap;background:#fff;border-radius:8px;flex:none;padding:0 10px;font-size:10px;transition:color .16s,border-color .16s,background-color .16s;overflow:hidden}.student-main-ai-chat .starter-question-row .quick-question:hover:not(:disabled){color:var(--ai-accent);background:#f5f8fc;border-color:#bdcce1}.student-main-ai-chat .ai-composer-shell{border:1px solid var(--ai-border-strong);background:#fff;border-radius:13px;transition:border-color .18s,box-shadow .18s;box-shadow:0 2px 8px #1f2d4209}.student-main-ai-chat .ai-composer-shell:focus-within{border-color:#93b3e8;box-shadow:0 0 0 3px #356fd614,0 3px 10px #1f2d420a}.student-main-ai-chat .ai-composer-shell #chat-input{resize:none;width:100%;min-height:44px;max-height:140px;color:var(--ai-text-primary);box-shadow:none;background:0 0;border:0;border-radius:13px 13px 0 0;outline:0;padding:10px 12px 4px;font-size:13px;line-height:1.55}.student-main-ai-chat .ai-composer-shell #chat-input::placeholder{color:#99a3b3}.student-main-ai-chat .ai-composer-shell #chat-input.drag-active{background:#f1f6ff}.student-main-ai-chat .ai-composer-bottom{align-items:center;gap:7px;min-height:36px;padding:3px 6px 5px 7px;display:flex}.student-main-ai-chat .ai-composer-tools{flex-direction:row;align-items:center;gap:2px;display:flex}.student-main-ai-chat .ai-composer-tool{height:28px;color:var(--ai-text-muted);cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:4px;padding:0 7px;font-size:10px;display:inline-flex}.student-main-ai-chat .ai-composer-tool svg{width:15px;height:15px}.student-main-ai-chat .ai-composer-tool:hover:not(:disabled),.student-main-ai-chat .ai-composer-tool.active{background:var(--ai-bg-hover);color:var(--ai-accent)}.student-main-ai-chat .ai-composer-context{border-left:1px solid var(--ai-border);min-width:0;color:var(--ai-text-muted);text-overflow:ellipsis;white-space:nowrap;margin-right:auto;padding-left:8px;font-size:10px;overflow:hidden}.student-main-ai-chat .ai-input-count{color:var(--ai-text-muted);white-space:nowrap;font-size:9px}.student-main-ai-chat .ai-send-button{background:var(--ai-accent);color:#fff;cursor:pointer;border:0;border-radius:9px;place-items:center;width:30px;height:30px;transition:background-color .18s,transform .18s;display:grid;box-shadow:0 2px 5px #356fd62e}.student-main-ai-chat .ai-send-button svg{width:15px;height:15px}.student-main-ai-chat .ai-send-button:hover:not(:disabled){background:#2d62bf;transform:translateY(-1px)}.student-main-ai-chat .ai-send-button:disabled{color:#98a2b2;box-shadow:none;cursor:default;background:#d8dee8}.student-main-ai-chat .ai-input-disclaimer{color:var(--ai-text-muted);text-align:center;margin:4px 0 0;font-size:9px;line-height:1.2}.student-main-ai-chat .ai-pending-images{margin:0 0 5px}@media (width<=1180px){.student-main.student-main-ai-chat{padding:10px 12px}.student-main-ai-chat .ai-chat-topbar{gap:10px;min-height:56px;padding-block:6px}.student-main-ai-chat .ai-chat-brand{min-width:172px}.student-main-ai-chat .ai-chat-brand p{display:none}.student-main-ai-chat .ai-chat-workbench{grid-template-columns:218px minmax(0,1fr)}.student-main-ai-chat .ai-mode-card{padding-inline:8px}.student-main-ai-chat .ai-model-name,.student-main-ai-chat .ai-toolbar-button span{display:none}.student-main-ai-chat .ai-toolbar-button{justify-content:center;width:30px;padding:0}}@media (width<=920px){.student-main-ai-chat .ai-chat-brand{min-width:34px}.student-main-ai-chat .ai-chat-brand>div,.student-main-ai-chat .ai-mode-card span{display:none}.student-main-ai-chat .ai-mode-card{width:32px;padding:0}.student-main-ai-chat .ai-mode-selectors .complex-select{width:116px}.student-main-ai-chat .ai-topbar-meta{display:none}.student-main-ai-chat .ai-chat-workbench{grid-template-columns:202px minmax(0,1fr)}.student-main-ai-chat .ai-chat-title-block>span:not(.ai-context-tag){display:none}}@media (width<=760px){.student-main.student-main-ai-chat{height:100dvh;min-height:0;overflow:hidden}.student-main-ai-chat .ai-chat-workbench{grid-template-columns:52px minmax(0,1fr)}.student-main-ai-chat .ai-history-panel{padding-inline:8px}.student-main-ai-chat .ai-new-conversation{flex:0 0 34px;width:34px;padding:0}.student-main-ai-chat .ai-new-conversation span,.student-main-ai-chat .ai-history-search,.student-main-ai-chat .ai-history-panel #conversation-list-host{display:none}.student-main-ai-chat .ai-history-head{flex-direction:column}.student-main-ai-chat .ai-chat-title-block h2{max-width:34vw}.student-main-ai-chat .message-row.user .ai-message-bubble{max-width:88%}.student-main-ai-chat .ai-composer-tool span,.student-main-ai-chat .ai-composer-context{display:none}}@media (height<=700px) and (width>=761px){.student-main.student-main-ai-chat{padding:8px 10px}.student-main-ai-chat .ai-chat-shell{gap:7px}.student-main-ai-chat .ai-chat-topbar{min-height:50px;padding-block:4px}.student-main-ai-chat .ai-chat-brand p,.student-main-ai-chat .ai-topbar-meta{display:none}.student-main-ai-chat .ai-mode-cards{height:34px}.student-main-ai-chat .ai-mode-card{height:26px}.student-main-ai-chat .ai-mode-selectors .complex-select{height:32px}.student-main-ai-chat .ai-chat-main{grid-template-rows:42px minmax(0,1fr) auto}.student-main-ai-chat .ai-chat-main-head{min-height:42px}.student-main-ai-chat .ai-chat-messages{padding-top:7px;padding-bottom:10px}.student-main-ai-chat .ai-chat-input-area{padding-top:5px;padding-bottom:6px}.student-main.student-main-ai-chat .starter-question-row{height:29px;min-height:29px;margin-bottom:3px;display:flex}.student-main-ai-chat .starter-question-row .quick-question{height:26px}.student-main-ai-chat .ai-composer-shell #chat-input{min-height:38px;padding-top:7px}.student-main-ai-chat .ai-composer-bottom{min-height:32px;padding-block:2px 4px}.student-main-ai-chat .ai-input-disclaimer{display:none}}@media (prefers-reduced-motion:reduce){.student-main-ai-chat *,.student-main-ai-chat :before,.student-main-ai-chat :after{scroll-behavior:auto;transition-duration:.01ms;animation-duration:.01ms;animation-iteration-count:1}.student-main-ai-chat .ai-path-loader path{stroke-dasharray:none;stroke-dashoffset:0;opacity:1;animation:none}.student-main-ai-chat .ai-loading-shimmer{color:var(--ai-text-secondary);background:0 0;animation:none}.student-main-ai-chat .ai-send-button:hover:not(:disabled){transform:none}}.student-main.student-main-ai-chat{flex-direction:column;height:100dvh;min-height:0;padding-top:20px;padding-bottom:20px;display:flex;overflow:hidden}.ai-chat-hero{flex:none;padding:22px 26px}.ai-hero-meta{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.ai-hero-meta span{color:#ffffffdb;border-radius:var(--complex-radius);background:#ffffff1f;border:1px solid #ffffff2e;align-items:center;min-height:30px;padding:0 11px;font-size:.78rem;font-weight:650;display:inline-flex}.ai-mode-panel{border:1px solid var(--complex-line);border-radius:var(--complex-radius);box-shadow:var(--complex-shadow);background:#fff;flex:none;grid-template-columns:minmax(0,1fr) minmax(220px,320px);align-items:stretch;gap:12px;padding:12px;display:grid}.ai-mode-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.ai-mode-card{text-align:left;min-height:70px;color:var(--text-sub);border:1px solid var(--complex-line);border-radius:var(--complex-radius);cursor:pointer;background:#f7fafbe6;padding:11px 12px;transition:border-color .2s,background .2s,box-shadow .2s,transform .2s}.ai-mode-card:hover{border-color:#2f66903d;transform:translateY(-1px)}.ai-mode-card.active{color:var(--complex-deep);background:linear-gradient(#81c3d72e,#fffffff5),linear-gradient(90deg,#4caf841a,#f0b85e12);border-color:#2f669052;box-shadow:0 0 0 3px #2f669012}.ai-mode-card span{color:inherit;margin-bottom:5px;font-size:.88rem;font-weight:750;display:block}.ai-mode-card small{color:var(--text-hint);font-size:.74rem;line-height:1.35;display:block}.ai-mode-selectors{flex-direction:column;justify-content:center;gap:9px;display:flex}.ai-mode-selectors label{flex-direction:column;gap:6px;display:flex}.ai-mode-selectors span{color:var(--text-sub);font-size:.78rem;font-weight:650}.ai-chat-workbench{flex:auto;grid-template-columns:280px minmax(0,1fr);gap:14px;min-width:0;height:auto;min-height:0;display:grid;overflow:hidden}.ai-history-panel,.ai-chat-main{border:1px solid var(--complex-line);border-radius:var(--complex-radius);min-width:0;height:100%;min-height:0;box-shadow:var(--complex-shadow);background:#fff}.ai-history-panel{flex-direction:column;padding:14px;display:flex;overflow:hidden}.ai-history-panel #conversation-list-host{overscroll-behavior:contain;scrollbar-gutter:stable;flex:auto;min-width:0;min-height:0;overflow:hidden auto}.ai-chat-main{grid-template-rows:auto minmax(0,1fr) auto;display:grid;overflow:hidden}.student-main-ai-chat .ai-chat-main{min-height:0}.ai-chat-main-head{flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex}.ai-chat-title-block{flex-wrap:wrap;align-items:center;gap:10px;min-width:0;display:flex}.ai-chat-title-block h2{text-overflow:ellipsis;white-space:nowrap;max-width:420px;margin:0;overflow:hidden}.ai-chat-actions{justify-content:flex-end}.ai-conversation-list .conversation-item{background:#2f66900b}.ai-conversation-list .conversation-item.active{background:linear-gradient(#81c3d733,#ffffffd1),linear-gradient(90deg,#4caf8414,#f0b85e0f)}.ai-compact-state{min-height:240px;margin-top:12px;padding:22px 14px}.ai-chat-messages{overscroll-behavior:contain;scrollbar-gutter:stable;min-width:0;min-height:0;padding:16px 18px;overflow:hidden auto}.ai-chat-message-list{min-width:0}.subject-run-empty,.subject-run-panel{background:linear-gradient(135deg,#5666d80e,#7c5ce70b);border:1px solid #5666d833;border-radius:12px;width:100%;min-width:0;margin:0 0 14px}.subject-run-empty{color:var(--text-sub);align-items:center;gap:10px;padding:10px 13px;display:flex}.subject-run-empty strong{color:var(--complex-deep);font-size:.84rem}.subject-run-empty p{margin:2px 0 0;font-size:.74rem}.subject-run-empty-icon,.subject-run-status-icon,.subject-run-task-icon{color:#6573d8;flex:none;justify-content:center;align-items:center;display:inline-flex}.subject-run-empty-icon{width:28px;height:28px}.subject-run-empty-icon svg,.subject-run-status-icon svg,.subject-run-task-icon svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.subject-run-panel{min-width:0;max-height:none;overflow:visible}.subject-run-statusbar{justify-content:space-between;align-items:center;gap:16px;padding:11px 13px 9px;display:flex}.subject-run-status-main{align-items:center;gap:9px;min-width:190px;display:flex}.subject-run-status-main>div{flex-direction:column;min-width:0;display:flex}.subject-run-status-main strong{color:var(--complex-deep);font-size:.84rem}.subject-run-status-main span{color:var(--text-hint);text-overflow:ellipsis;white-space:nowrap;max-width:360px;font-size:.72rem;overflow:hidden}.subject-run-status-icon{background:#5666d81a;border-radius:9px;width:30px;height:30px}.subject-run-status-icon.status-success{color:#2c8b68;background:#2c8b681a}.subject-run-status-icon.status-failed{color:#c4515a;background:#c4515a1a}.subject-run-status-icon.status-cancelled{color:#7d8492;background:#7d84921f}.subject-run-metrics{align-items:center;gap:16px;display:flex}.subject-run-metrics span{color:var(--text-hint);white-space:nowrap;flex-direction:column;font-size:.67rem;display:flex}.subject-run-metrics b{color:var(--text-main);font-size:.78rem;font-weight:750}.subject-run-progress{background:#5666d81a;border-radius:99px;height:3px;margin:0 13px 8px;overflow:hidden}.subject-run-progress i{background:linear-gradient(90deg,#5666d8,#7c5ce7);height:100%;transition:width .2s;display:block}.subject-run-details{border-top:1px solid #5666d81f}.subject-run-details>summary,.subject-run-section-title{color:var(--complex-deep);cursor:pointer;justify-content:space-between;align-items:center;gap:8px;padding:9px 13px;font-size:.78rem;display:flex}.subject-run-details>summary small,.subject-run-section-title span{color:var(--text-hint);font-size:.68rem}.subject-run-timeline{padding:0 13px 8px 22px}.subject-run-task{grid-template-columns:24px minmax(0,1fr);gap:8px;padding:5px 0 8px;display:grid;position:relative}.subject-run-task:before{content:"";background:#5666d82b;width:1px;position:absolute;top:28px;bottom:-4px;left:11px}.subject-run-task:last-child:before{display:none}.subject-run-task-icon{color:#8790aa;z-index:1;background:#fff;border:1px solid #8790aa40;border-radius:50%;width:24px;height:24px}.subject-run-task-icon svg{width:14px;height:14px}.subject-run-task.task-running .subject-run-task-icon{color:#5666d8;border-color:#5666d873}.subject-run-task.task-success .subject-run-task-icon{color:#2c8b68;border-color:#2c8b6859}.subject-run-task.task-failed .subject-run-task-icon{color:#c4515a;border-color:#c4515a66}.subject-run-task-body{min-width:0}.subject-run-task-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.subject-run-task-head strong{color:var(--text-main);font-size:.76rem}.subject-run-task-head span{color:var(--text-hint);white-space:nowrap;font-size:.66rem}.subject-run-task-body p{color:var(--text-sub);margin:2px 0 0;font-size:.7rem;line-height:1.45}.subject-run-task-body details{color:var(--text-hint);margin-top:4px;font-size:.68rem}.subject-run-task-body details div{background:#ffffffb8;border-radius:6px;margin-top:3px;padding:6px 8px}.subject-run-retry{color:#5968c8;cursor:pointer;background:#fff;border:1px solid #5666d847;border-radius:6px;margin-top:5px;padding:4px 9px;font-size:.68rem}.subject-run-sources{border-top:1px solid #5666d81f;padding-bottom:9px}.subject-run-source-list{gap:7px;padding:0 13px;display:flex;overflow-x:auto}.subject-run-source{background:#ffffffd1;border:1px solid #5666d824;border-radius:8px;flex:0 0 min(300px,78%);padding:7px 9px}.subject-run-source summary{cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:6px;font-size:.7rem;display:grid}.subject-run-source summary b{color:#5f6ed2}.subject-run-source summary span{text-overflow:ellipsis;white-space:nowrap;color:var(--text-main);overflow:hidden}.subject-run-source summary small{color:var(--text-hint);font-size:.62rem}.subject-run-source p{max-height:100px;color:var(--text-sub);white-space:pre-wrap;margin:7px 0 4px;font-size:.68rem;line-height:1.5;overflow:auto}.subject-run-source>span,.subject-run-source>a{color:var(--text-hint);margin-right:8px;font-size:.64rem;display:inline-block}.subject-run-source>a{color:#5666d8}.ai-message-bubble{white-space:normal;overflow-wrap:anywhere;word-break:normal;width:fit-content;min-width:0;max-width:min(1040px,92%)}.message-row{min-width:0}.message-row.assistant .ai-message-bubble{width:min(1040px,92%)}.message-row.user .ai-message-bubble{max-width:min(560px,72%)}.message-plain{white-space:pre-wrap}.message-row.streaming .message-bubble{border-color:#4caf843d;box-shadow:0 8px 22px #4caf8414}.message-markdown{width:100%;min-width:0;max-width:100%;color:var(--text-main);overflow-wrap:anywhere;word-break:normal;line-height:1.72}.message-markdown p{overflow-wrap:anywhere;margin:0 0 9px}.message-markdown p:last-child{margin-bottom:0}.message-markdown h1,.message-markdown h2,.message-markdown h3,.message-markdown h4,.message-markdown h5,.message-markdown h6{color:var(--complex-deep);margin:12px 0 7px;font-weight:750;line-height:1.35}.message-markdown h1{font-size:1.12rem}.message-markdown h2{font-size:1.06rem}.message-markdown h3{font-size:1rem}.message-markdown h4,.message-markdown h5,.message-markdown h6{font-size:.92rem}.message-markdown ul,.message-markdown ol{color:var(--text-main);margin:6px 0 10px 18px;padding:0}.message-markdown ul{list-style:outside}.message-markdown ol{list-style:decimal}.message-markdown li{margin:3px 0}.message-markdown a{color:var(--complex-primary);text-underline-offset:3px;text-decoration:underline}.message-markdown blockquote{color:var(--text-sub);background:#2f66900d;border-left:3px solid #2f66903d;border-radius:6px;margin:8px 0 10px;padding:7px 10px}.message-markdown blockquote p{margin-bottom:5px}.message-markdown blockquote p:last-child{margin-bottom:0}.message-markdown code{color:#b64c3d;overflow-wrap:anywhere;word-break:break-word;background:#e8913a1a;border-radius:5px;padding:2px 5px;font-family:Consolas,SFMono-Regular,monospace;font-size:.86em}.message-markdown .katex{font-size:1.02em}.message-markdown .katex-display{max-width:100%;margin:10px 0;padding:3px 0;display:block;overflow:auto hidden}.message-row.user .message-markdown,.message-row.user .message-markdown h1,.message-row.user .message-markdown h2,.message-row.user .message-markdown h3,.message-row.user .message-markdown h4,.message-row.user .message-markdown h5,.message-row.user .message-markdown h6,.message-row.user .message-markdown ul,.message-row.user .message-markdown ol,.message-row.user .message-markdown blockquote,.message-row.user .message-markdown a{color:#fff}.message-row.user .message-markdown code{color:#102a43;background:#ffffffdb}.message-row.user .message-markdown .katex{color:#fff}.message-row.user .message-markdown blockquote{background:#ffffff21;border-left-color:#ffffff6b}.markdown-code-block{border-radius:var(--complex-radius);background:#102a43;border:1px solid #16425b1f;width:100%;min-width:0;max-width:100%;margin:10px 0;overflow:hidden}.markdown-code-head{color:#ffffffb8;background:#ffffff12;justify-content:space-between;align-items:center;gap:10px;min-height:34px;padding:0 10px;font-size:.76rem;display:flex}.code-copy-btn{color:#fff;cursor:pointer;background:#81c3d733;border:1px solid #81c3d73d;border-radius:6px;height:24px;padding:0 9px;font-size:.74rem}.markdown-code-block pre{white-space:pre;overflow-wrap:normal;word-break:normal;max-width:100%;margin:0;padding:13px;overflow:auto hidden}.markdown-code-block code{color:#f7fafb;background:0 0;width:max-content;min-width:100%;padding:0;font-size:.84rem;line-height:1.65;display:block}.message-row.user .markdown-code-block code{color:#f7fafb;background:0 0}.markdown-table-wrap{border:1px solid var(--complex-line);border-radius:var(--complex-radius);width:100%;min-width:0;max-width:100%;margin:10px 0;overflow:auto hidden}.markdown-table-wrap table{border-collapse:collapse;width:max-content;min-width:100%;font-size:.84rem}.message-markdown img{max-width:100%;height:auto;display:block}.message-markdown blockquote,.message-markdown ul,.message-markdown ol,.message-markdown li{min-width:0;max-width:100%}.ai-chat-input-area{flex-shrink:0;min-width:0}.markdown-table-wrap th,.markdown-table-wrap td{text-align:left;border-bottom:1px solid #16425b14;padding:8px 10px}.markdown-table-wrap th{color:var(--complex-deep);background:#2f669012;font-weight:750}.message-row.user .markdown-table-wrap{border-color:#ffffff47}.message-row.user .markdown-table-wrap th,.message-row.user .markdown-table-wrap td{color:#fff;border-bottom-color:#ffffff2e}.message-row.user .markdown-table-wrap th{background:#ffffff1f}.thinking-text{color:var(--text-hint)}.starter-question-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:10px;display:grid}.starter-question-row .quick-question{min-height:38px;padding:8px 10px;font-size:.78rem}.starter-question-row.loading .quick-question{opacity:.72}.ai-chat-input-row{grid-template-columns:auto minmax(0,1fr) 104px}.ai-chat-input-row textarea{resize:none;min-height:46px;max-height:180px}.ai-composer-tools{flex-direction:column;align-self:end;gap:7px;display:flex}.ai-composer-tool{color:#236675;cursor:pointer;background:#f5fbfb;border:1px solid #1f637333;border-radius:9px;min-width:48px;height:31px;padding:0 9px;font-size:12px}.ai-composer-tool:hover:not(:disabled),.ai-composer-tool.active{background:#dff4f1;border-color:#49a89d}.ai-composer-tool:disabled{opacity:.48;cursor:not-allowed}.ai-pending-images,.ai-message-images{flex-wrap:wrap;gap:9px;display:flex}.ai-pending-images{padding:9px 2px 2px}.ai-pending-image{width:72px;height:72px;position:relative}.ai-pending-image img,.ai-message-image img{object-fit:cover;border-radius:10px;width:100%;height:100%}.ai-pending-image img{border:1px solid #124b5b2e}.ai-pending-image button{color:#fff;cursor:pointer;background:#244f5d;border:2px solid #fff;border-radius:50%;width:22px;height:22px;padding:0;position:absolute;top:-7px;right:-7px}.ai-message-images{margin:8px 0 10px}.ai-message-image{cursor:zoom-in;background:#edf5f5;border:1px solid #134e5e29;border-radius:11px;width:min(180px,42vw);height:132px;padding:0;overflow:hidden}.ai-message-tools{gap:4px;margin-left:12px;display:inline-flex}.ai-message-tools button{color:#5a7b84;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:2px 7px;font-size:11px}.ai-message-tools button:hover{color:#236675;background:#2c767e17}.ai-chat-input-row textarea.drag-active{background:#f3fbfa;border-color:#45a99d;box-shadow:0 0 0 3px #45a99d21}.ai-input-foot{color:var(--text-hint);justify-content:space-between;align-items:center;gap:12px;margin-top:8px;font-size:.74rem;display:flex}.doc-layout{grid-template-columns:minmax(360px,.9fr) minmax(0,1.1fr);align-items:start;gap:16px;display:grid}.upload-dropzone{border-radius:var(--complex-radius);text-align:center;cursor:pointer;background:linear-gradient(135deg,#81c3d72e,#d9dcd624);border:1px dashed #2f669061;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:160px;padding:22px;display:flex}.upload-dropzone.dragover{border-color:var(--complex-primary);background:#81c3d742}.doc-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.doc-list{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;display:grid}.doc-card{border:1px solid var(--complex-line);border-radius:var(--complex-radius);box-shadow:var(--complex-shadow);background:#fff;padding:14px}.doc-card-head{grid-template-columns:42px minmax(0,1fr);align-items:center;gap:10px;margin-bottom:10px;display:grid}.file-type-badge{border-radius:var(--complex-radius);background:linear-gradient(135deg, var(--complex-primary), var(--complex-light));color:#fff;text-transform:uppercase;justify-content:center;align-items:center;width:42px;height:42px;font-size:.75rem;font-weight:800;display:flex}.doc-title{min-width:0;color:var(--complex-deep);text-overflow:ellipsis;white-space:nowrap;font-weight:750;overflow:hidden}.doc-meta{color:var(--text-sub);font-size:.76rem}.doc-action-row{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.drawer-mask,.video-modal-mask{z-index:9998;background:#102a436b;justify-content:flex-end;display:flex;position:fixed;inset:0}.doc-drawer{background:#fff;width:min(560px,92vw);height:100%;padding:22px;overflow:auto;box-shadow:-12px 0 30px #16425b2e}.chunk-preview{border-radius:var(--complex-radius);color:var(--text-sub);background:#2f66900f;border:1px solid #2f66901a;margin-bottom:10px;padding:12px;line-height:1.65}.filter-panel{grid-template-columns:repeat(4,minmax(140px,1fr)) auto;align-items:end;gap:10px;display:grid}.video-grid{grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:14px;display:grid}.video-card{border:1px solid var(--complex-line);border-radius:var(--complex-radius);box-shadow:var(--complex-shadow);background:#fff;overflow:hidden}.video-cover{background:linear-gradient(135deg,#16425bf5,#3a7ca5d1),linear-gradient(45deg,#81c3d747,#d9dcd61a);height:154px;position:relative;overflow:hidden}.video-cover img{object-fit:cover;width:100%;height:100%}.video-play-mark{width:48px;height:48px;color:var(--complex-primary);background:#ffffffe0;border-radius:50%;justify-content:center;align-items:center;font-weight:900;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.video-source{color:#fff;background:#16425bad;border:1px solid #ffffff2e;position:absolute;top:10px;left:10px}.video-body{padding:14px}.video-title{color:var(--complex-deep);margin:0 0 7px;font-size:.98rem;font-weight:750;line-height:1.45}.video-reason{border-radius:var(--complex-radius);color:var(--text-sub);background:#81c3d71c;margin:10px 0;padding:10px;font-size:.82rem;line-height:1.55}.video-modal-mask{justify-content:center;align-items:center;padding:26px}.video-modal{border-radius:var(--complex-radius);background:#fff;width:min(920px,94vw);overflow:hidden;box-shadow:0 22px 60px #16425b3d}.video-modal-head{border-bottom:1px solid var(--complex-line);justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;display:flex}.video-frame{aspect-ratio:16/9;border:0;width:100%;display:block}@media (width<=1180px){.exam-layout,.chat-workbench,.doc-layout,.report-charts,.ai-mode-panel{grid-template-columns:1fr}.question-nav-panel,.answer-progress-panel{position:static}.question-number-grid{grid-template-columns:repeat(10,34px);overflow:auto}.chat-workbench{height:auto}.ai-chat-workbench{grid-template-columns:minmax(220px,250px) minmax(0,1fr);height:auto;min-height:0}.chat-main{min-height:620px}.starter-question-row{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.complex-hero,.exam-topbar,.report-hero,.exam-bottom-bar{grid-template-columns:1fr;align-items:stretch}.complex-actions,.exam-bottom-bar{justify-content:stretch}.complex-btn,.complex-btn-secondary,.complex-btn-ghost,.complex-btn-danger{width:100%}.answer-compare-grid,.doc-form-grid,.filter-panel,.ai-mode-cards,.starter-question-row,.ai-chat-input-row{grid-template-columns:1fr}.ai-composer-tools{flex-direction:row}.ai-composer-tool{flex:1}.ai-chat-main-head,.ai-input-foot,.ai-chat-hero{flex-direction:column;align-items:stretch}.ai-chat-title-block{align-items:flex-start}.ai-chat-title-block h2{max-width:100%}.subject-run-statusbar{flex-direction:column;align-items:flex-start}.subject-run-status-main span{max-width:calc(100vw - 100px)}.subject-run-metrics{justify-content:space-between;gap:8px;width:100%}.subject-run-panel{max-height:none;margin:0 0 12px}.complex-shell,.chat-workbench,.ai-chat-workbench,.doc-layout,.video-grid,.practice-shell,.practice-shell-v2,.practice-shell-v3,.practice-shell-v4,.wq-workspace,.wq-main{min-width:0;max-width:100%}.student-main.student-main-ai-chat{height:auto;min-height:100dvh;overflow:visible}.student-main-ai-chat .ai-chat-shell,.student-main-ai-chat .ai-chat-workbench{height:auto;overflow:visible}.student-main-ai-chat .ai-chat-workbench{grid-template-columns:1fr}.student-main-ai-chat .ai-history-panel{height:min(32vh,280px);max-height:none}.student-main-ai-chat .ai-chat-main{height:calc(100dvh - 32px);min-height:0}.complex-hero,.exam-topbar,.report-hero{padding:20px 16px}.complex-hero h1,.report-hero h1,.exam-title{font-size:clamp(1.22rem,5.6vw,1.42rem)}.chat-main,.ai-chat-main{min-height:min(620px,100vh - 190px)}.chat-input-row{grid-template-columns:1fr}.message-bubble,.ai-message-bubble,.message-row.user .ai-message-bubble,.side-chat-bubble{max-width:100%}.message-markdown,.message-markdown p,.message-markdown li,.message-markdown code{overflow-wrap:anywhere}.markdown-code-block,.markdown-table-wrap,.message-markdown .katex-display{max-width:100%;overflow-x:auto}.chat-side,.chat-helper{max-height:42vh}.doc-drawer{width:min(100vw,560px);padding:16px}.video-modal-mask{padding:12px}.video-modal{width:calc(100vw - 24px);max-height:calc(100vh - 24px);overflow:auto}.video-modal-head{flex-direction:column;align-items:flex-start}.video-grid{grid-template-columns:1fr}.practice-question-card,.practice-question-card-v2,.practice-question-card-v3,.practice-question-card-v4,.practice-side-panel,.practice-side-panel-v2,.practice-side-panel-v3,.practice-side-panel-v4{min-width:0;max-width:100%}.choice-option,.practice-check-tile,.practice-mode-card,.wq-card,.wq-detail-block p{overflow-wrap:anywhere}}@media (height<=700px) and (width>=761px){.student-main.student-main-ai-chat{padding-top:12px;padding-bottom:12px}.student-main-ai-chat .ai-chat-shell{gap:10px}.student-main-ai-chat .ai-chat-hero{padding:13px 18px}.student-main-ai-chat .ai-chat-hero p,.student-main-ai-chat .ai-mode-card small,.student-main-ai-chat .starter-question-row{display:none}.student-main-ai-chat .ai-hero-meta span{min-height:26px}.student-main-ai-chat .ai-mode-panel{grid-template-columns:minmax(0,1fr) minmax(220px,300px);gap:8px;padding:8px}.student-main-ai-chat .ai-mode-cards,.student-main-ai-chat .ai-mode-selectors{gap:7px}.student-main-ai-chat .ai-mode-card{min-height:54px;padding:8px 10px}}.practice-shell{width:min(1440px,100%);margin:0 auto}.practice-hero{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.practice-glass-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffe0}.practice-config-layout{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:16px;display:grid}.practice-config-card{min-height:520px}.practice-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.practice-form-grid label,.practice-wrong-filter label{color:var(--text-sub);flex-direction:column;gap:7px;font-size:.8rem;font-weight:650;display:flex}.practice-field-block{margin-top:18px}.practice-field-head{color:var(--complex-deep);justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;font-size:.9rem;font-weight:750;display:flex}.practice-field-head small{color:var(--text-hint);font-weight:500}.practice-type-grid,.practice-mode-grid{gap:10px;display:grid}.practice-type-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.practice-mode-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.practice-check-tile,.practice-mode-card{text-align:left;border:1px solid var(--complex-line);border-radius:var(--complex-radius);cursor:pointer;background:#f7fafbeb;min-height:72px;padding:12px;transition:border-color .2s,box-shadow .2s,transform .2s,background .2s}.practice-check-tile{grid-template-columns:18px 1fr;align-items:center;gap:8px 10px;display:grid}.practice-check-tile input{accent-color:var(--complex-primary)}.practice-check-tile span{color:var(--complex-deep);font-size:.78rem;font-weight:800}.practice-check-tile small{color:var(--text-sub);grid-column:2;font-size:.76rem}.practice-check-tile:hover,.practice-mode-card:hover{border-color:#2f669047;transform:translateY(-1px)}.practice-check-tile.active,.practice-mode-card.active{background:linear-gradient(#81c3d733,#fffffff5),linear-gradient(90deg,#4caf8414,#f0b85e0f);border-color:#2f669057;box-shadow:0 0 0 3px #2f669012}.practice-check-tile.disabled{opacity:.52;cursor:not-allowed}.practice-check-tile.disabled:hover{border-color:var(--complex-line);transform:none}.practice-mode-card b{color:var(--complex-deep);margin-bottom:6px;font-size:.9rem;display:block}.practice-mode-card span,.practice-muted{color:var(--text-sub);font-size:.8rem;line-height:1.5}.practice-config-side{flex-direction:column;gap:14px;display:flex}.practice-stat-list{grid-template-columns:repeat(2,1fr);gap:9px;display:grid}.practice-stat-list div,.practice-side-meta div,.practice-scope-summary{border-radius:var(--complex-radius);background:#2f66900d;border:1px solid #16425b14}.practice-stat-list div{padding:11px}.practice-stat-list span,.practice-side-meta span,.practice-scope-summary span{color:var(--text-hint);font-size:.74rem;display:block}.practice-stat-list b,.practice-side-meta b,.practice-scope-summary b{color:var(--complex-deep);margin-top:4px;font-size:1rem;display:block}.practice-kp-list{flex-wrap:wrap;gap:8px;display:flex}.practice-kp-chip{min-height:30px;color:var(--complex-primary);background:#2f669012;border:1px solid #2f66901a;border-radius:999px;align-items:center;gap:7px;padding:0 10px;font-size:.78rem;font-weight:650;display:inline-flex}.practice-kp-chip small{color:#2c7a63}.practice-scope-summary{grid-template-columns:72px minmax(0,1fr);gap:8px 10px;padding:12px;display:grid}.practice-scope-summary b{text-overflow:ellipsis;white-space:nowrap;margin-top:0;overflow:hidden}.practice-result-strip{grid-template-columns:repeat(5,minmax(120px,1fr));gap:10px;display:grid}.practice-result-strip div{border:1px solid var(--complex-line);border-radius:var(--complex-radius);box-shadow:var(--complex-shadow);background:#ffffffe6;padding:14px}.practice-result-strip span{color:var(--text-sub);font-size:.76rem;display:block}.practice-result-strip b{color:var(--complex-deep);margin-top:5px;font-size:1.18rem;display:block}.practice-result-strip b.ok{color:#2c7a63}.practice-result-strip b.bad{color:#b64c3d}.practice-exam-layout{grid-template-columns:150px minmax(0,1fr) 320px}.practice-question-card{border-top:4px solid #0000}.practice-question-correct{border-top-color:#4caf84;box-shadow:0 10px 28px #4caf841c}.practice-question-wrong{border-top-color:#e0576e;box-shadow:0 10px 28px #e0576e1c}.practice-question-tags{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.practice-result-head{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.question-number.correct{color:#fff;background:#4caf84;border-color:#4caf84}.question-number.wrong{color:#fff;background:#e0576e;border-color:#e0576e}.question-number.partial{color:#8a5a15;background:#f0b85e38;border-color:#f0b85e5c}.choice-option.answer-locked{cursor:default}.choice-option.correct-choice{background:#4caf841f;border-color:#4caf8473}.choice-option.correct-choice .choice-badge{color:#fff;background:#4caf84}.choice-option.wrong-choice{background:#e0576e1a;border-color:#e0576e6b}.choice-option.wrong-choice .choice-badge{color:#fff;background:#e0576e}.blank-answer-grid{gap:10px;display:grid}.blank-answer-grid label{color:var(--text-sub);grid-template-columns:62px minmax(0,1fr);align-items:center;gap:10px;font-size:.82rem;display:grid}.practice-answer-compare .student-answer{border-color:#2f669024}.practice-answer-compare .correct-answer{background:#4caf8414;border-color:#4caf8438}.practice-analysis-card{border-left-color:var(--complex-primary);display:block}.practice-analysis-card b{color:var(--complex-deep);margin-bottom:6px;display:block}.practice-analysis-card p{margin:0}.practice-side-panel{max-height:calc(100vh - 140px);overflow:auto}.practice-side-meta{gap:8px;margin-bottom:12px;display:grid}.practice-side-meta div{padding:10px}.practice-entry-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:12px;display:grid}.practice-ai-panel.disabled{opacity:.78}.practice-chat-list{border-radius:var(--complex-radius);background:linear-gradient(#f7fafbe6,#fffffff5);border:1px solid #16425b14;max-height:300px;padding:10px;overflow:auto}.practice-chat-empty{color:var(--text-hint);text-align:center;padding:18px 10px;font-size:.82rem}.practice-ai-input-row{grid-template-columns:minmax(0,1fr) 72px;align-items:end;gap:8px;margin-top:10px;display:grid}.practice-ai-input-row textarea{resize:vertical;min-height:76px}.practice-bottom-bar{z-index:5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff0;position:sticky;bottom:12px}.practice-wrong-filter{grid-template-columns:repeat(3,minmax(150px,1fr)) auto;align-items:end;gap:12px;display:grid}.practice-wrong-stats{grid-template-columns:repeat(5,minmax(120px,1fr))}.practice-wrong-list{gap:14px;display:grid}.practice-wrong-card{border:1px solid var(--complex-line);border-radius:var(--complex-radius);box-shadow:var(--complex-shadow);background:#ffffffeb;border-left:4px solid #e0576e;padding:16px}.practice-wrong-card.mastered{border-left-color:#4caf84}.practice-wrong-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px;display:flex}.practice-wrong-head h3{color:var(--complex-deep);margin:8px 0 0;font-size:1rem;line-height:1.45}.practice-wrong-content{color:var(--text-main);white-space:pre-wrap;line-height:1.72}.wrong-option-list{gap:8px;margin-top:12px;display:grid}.wrong-option-list div{border-radius:var(--complex-radius);background:#2f66900a;border:1px solid #16425b14;grid-template-columns:28px minmax(0,1fr);gap:8px;padding:9px 10px;display:grid}.wrong-option-list b{color:var(--complex-primary)}.wrong-option-list span{color:var(--text-main)}.practice-wrong-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:12px;display:flex}@media (width<=1180px){.practice-config-layout,.practice-exam-layout{grid-template-columns:1fr}.practice-side-panel{max-height:none}.practice-result-strip,.practice-wrong-stats,.practice-wrong-filter{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.practice-form-grid,.practice-mode-grid,.practice-type-grid,.practice-result-strip,.practice-wrong-stats,.practice-wrong-filter,.practice-ai-input-row,.practice-entry-row,.answer-compare-grid,.practice-stat-list{grid-template-columns:1fr}.practice-wrong-head,.practice-result-head{flex-direction:column;align-items:stretch}.blank-answer-grid label{grid-template-columns:1fr}.practice-bottom-bar{position:static}}.practice-shell-v2{gap:20px;width:min(1280px,100%);margin:0 auto}.practice-hero-v2{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:28px 32px}.practice-v2-grid{flex-direction:column;gap:18px;display:flex}.practice-main-grid{grid-template-columns:minmax(0,1fr) 360px;align-items:stretch;gap:16px;display:grid}.practice-center-workbench,.practice-side-rail{flex-direction:column;gap:14px;min-width:0;display:flex}.practice-card-v2{border:1px solid var(--complex-line);background:#fff;border-radius:8px;padding:18px;box-shadow:0 8px 24px #16425b0f}.practice-card-v2-head{justify-content:space-between;align-items:baseline;margin-bottom:16px;display:flex}.practice-card-v2-head small{color:var(--text-hint);font-size:.8rem}.subject-card-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;display:grid}.subject-card{text-align:left;border:2px solid var(--complex-line);cursor:pointer;background:#f7fafbcc;border-radius:8px;grid-template-rows:auto auto;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:6px 12px;min-height:80px;padding:14px 16px;transition:border-color .2s,box-shadow .2s,background .2s,transform .15s;display:grid;position:relative}.subject-card:hover{border-color:#2f66904d;transform:translateY(-2px);box-shadow:0 6px 20px #2f66901a}.subject-card.active{border-color:var(--complex-primary);background:linear-gradient(135deg,#81c3d721,#fffffff5);box-shadow:0 0 0 4px #2f66901a}.subject-card-icon{background:linear-gradient(135deg, var(--complex-primary), var(--complex-secondary));color:#fff;border-radius:8px;grid-row:1/-1;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.2rem;font-weight:800;display:flex}.subject-card-body b{color:var(--complex-deep);font-size:.95rem;font-weight:750;display:block}.subject-card-body small{color:var(--text-sub);margin-top:2px;font-size:.76rem;display:block}.subject-count{color:var(--complex-secondary);margin-top:4px;font-size:.74rem;font-weight:650;display:inline-block}.subject-recommend-tag{border-radius:999px;align-items:center;padding:3px 10px;font-size:.7rem;font-weight:700;display:inline-flex;position:absolute;top:10px;right:12px}.subject-tag-recommend{color:#2c7a63;background:#4caf8424;border:1px solid #4caf843d}.subject-tag-sufficient{color:#2f6690;background:#2f66901a;border:1px solid #2f66902e}.subject-tag-ai{color:#7c3aed;background:#7c3aed1a;border:1px solid #7c3aed2e}.config-card{position:relative}.practice-config-split{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"types count""difficulty source""session answer";align-items:start;gap:16px;display:grid}.practice-config-main,.practice-config-side{min-width:0;display:contents}.practice-config-main>.config-block:first-child{grid-area:types}.practice-config-main>.config-block:nth-child(2){grid-area:difficulty}.practice-config-side>.config-block:first-child{grid-area:count}.practice-config-side>.config-block:nth-child(2){grid-area:source}.practice-config-side>.config-block:nth-child(3){grid-area:session}.practice-config-side>.config-block:nth-child(4){grid-area:answer}.practice-config-main .config-block:nth-child(2){display:block}.practice-config-split .config-block{margin-bottom:0}.config-card.config-disabled:before{content:"";z-index:2;pointer-events:none;background:#ffffff8c;border-radius:8px;position:absolute;inset:0}.config-block{margin-bottom:20px}.config-block:last-child{margin-bottom:0}.config-block-head{color:var(--complex-deep);justify-content:space-between;align-items:center;margin-bottom:10px;font-size:.9rem;font-weight:700;display:flex}.config-block-head small{color:var(--text-hint);font-size:.76rem;font-weight:500}.config-block-head .hint-warning{color:#c2410c}.config-error{color:#b64c3d;margin:6px 0 0;font-size:.78rem}.type-capsule-grid{flex-wrap:wrap;gap:10px;display:flex}.practice-config-main .type-capsule-grid{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.type-capsule{border:1.5px solid var(--complex-line);min-height:38px;color:var(--text-sub);cursor:pointer;background:#fff;border-radius:999px;align-items:center;gap:7px;padding:0 15px;font-size:.84rem;font-weight:650;transition:all .2s;display:inline-flex}.practice-config-main .type-capsule{justify-content:center}.type-capsule:hover{background:#2f66900a;border-color:#2f669047}.type-capsule.active{color:#fff;background:var(--complex-primary);border-color:var(--complex-primary);box-shadow:0 4px 12px #2f669038}.type-capsule.disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.type-capsule-icon{opacity:.75;font-size:.7rem;font-weight:800}.diff-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:10px;display:grid}.diff-card{text-align:left;border:1.5px solid var(--complex-line);cursor:pointer;background:#f7fafbcc;border-radius:8px;min-height:96px;padding:14px;transition:all .2s}.diff-card:hover{border-color:#2f669047;transform:translateY(-1px)}.diff-card.active{color:#fff;background:linear-gradient(135deg, var(--complex-primary), var(--complex-secondary));border-color:var(--complex-primary);box-shadow:0 6px 18px #2f669033}.diff-card b{color:inherit;font-size:.92rem;font-weight:750;display:block}.diff-card.active b{color:#fff}.diff-card small{color:var(--text-hint);margin-top:4px;font-size:.73rem;line-height:1.35;display:block}.diff-card.active small{color:#ffffffd1}.count-selector-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.count-chip{border:1.5px solid var(--complex-line);min-height:38px;color:var(--text-sub);cursor:pointer;background:#fff;border-radius:999px;padding:0 18px;font-size:.84rem;font-weight:650;transition:all .2s}.count-chip:hover{border-color:#2f669047}.count-chip.active{color:#fff;background:var(--complex-primary);border-color:var(--complex-primary);box-shadow:0 4px 12px #2f669033}.count-custom-label{color:var(--text-sub);align-items:center;gap:8px;font-size:.82rem;font-weight:650;display:inline-flex}.count-custom-input{text-align:center;width:80px}.source-mix-block{background:linear-gradient(135deg,#2f669009,#5b66d00a);border:1px solid #2f66901f;border-radius:10px;padding:14px}.source-mix-heading>div{gap:3px;display:grid}.source-mix-heading small{line-height:1.45}.source-mix{min-width:0}.source-mix-summary{grid-template-columns:minmax(86px,1fr) auto minmax(86px,1fr);align-items:center;gap:10px;display:grid}.source-mix-side{gap:1px;display:grid}.source-mix-side.ai{text-align:right}.source-mix-side span,.source-mix-side small{color:var(--text-sub);font-size:.71rem}.source-mix-side b{color:var(--complex-primary);font-size:.98rem}.source-mix-side.ai b{color:#5b66d0}.source-mix-total{min-width:76px;color:var(--text-sub);text-align:center;white-space:nowrap;background:#fff;border:1px solid #2f66901a;border-radius:999px;padding:6px 10px;font-size:.72rem}.source-mix-total b{color:var(--complex-deep)}.source-mix-control{padding-top:34px;position:relative}.source-mix-range{z-index:2;appearance:none;cursor:pointer;background:linear-gradient(90deg,#2f6690 0%,#4779b9 48%,#6967d9 100%);border-radius:999px;outline:none;width:100%;height:8px;margin:0;position:relative;box-shadow:inset 0 0 0 1px #16425b1f}.source-mix-range::-webkit-slider-thumb{appearance:none;background:#fff;border:3px solid #5b66d0;border-radius:50%;width:21px;height:21px;transition:box-shadow .16s,transform .16s;box-shadow:0 2px 7px #25437a33}.source-mix-range::-moz-range-thumb{background:#fff;border:3px solid #5b66d0;border-radius:50%;width:16px;height:16px;box-shadow:0 2px 7px #25437a33}.source-mix-range:hover::-webkit-slider-thumb{transform:scale(1.06);box-shadow:0 0 0 6px #5b66d021,0 2px 7px #25437a33}.source-mix-range:active::-webkit-slider-thumb{transform:scale(1.06);box-shadow:0 0 0 6px #5b66d021,0 2px 7px #25437a33}.source-mix-range:focus-visible{box-shadow:0 0 0 4px #5b66d02b,inset 0 0 0 1px #16425b1f}.source-mix-range:disabled{cursor:not-allowed;filter:saturate(.35);opacity:.65}.source-mix-tooltip{z-index:4;top:0;left:clamp(38px, var(--mix-position), calc(100% - 38px));color:#fff;white-space:nowrap;opacity:0;pointer-events:none;background:#263e71;border-radius:6px;padding:5px 8px;font-size:.68rem;font-weight:700;line-height:1;transition:opacity .14s,transform .14s;position:absolute;transform:translate(-50%)translateY(3px);box-shadow:0 4px 10px #1e375d2e}.source-mix-control:hover .source-mix-tooltip,.source-mix-control:focus-within .source-mix-tooltip{opacity:1;transform:translate(-50%)translateY(0)}.source-mix-ticks{height:18px;margin:1px 10px 0;position:relative}.source-mix-tick{left:var(--tick);width:1px;height:5px;color:var(--text-hint);text-align:center;background:#16425b40;font-size:.61rem;line-height:18px;position:absolute;top:0;transform:translate(-50%)}.source-mix-tick.labelled{height:7px}.source-mix-tick.labelled:first-line{color:var(--text-hint)}.source-mix-labels{color:var(--text-hint);justify-content:space-between;margin-top:1px;font-size:.66rem;display:flex}.source-mix-availability{color:#5c7380;margin:8px 0 0;font-size:.69rem;line-height:1.5}.source-mix-availability.warning{color:#9a5b17}.mode-option-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.mode-option{text-align:left;border:1.5px solid var(--complex-line);cursor:pointer;background:#f7fafbcc;border-radius:8px;min-height:82px;padding:14px;transition:all .2s}.mode-option:hover{border-color:#2f669047;transform:translateY(-1px)}.mode-option.active{background:linear-gradient(135deg,#81c3d72e,#fffffff5);border-color:#2f66905c;box-shadow:0 0 0 3px #2f669012}.mode-option b{color:var(--complex-deep);font-size:.9rem;font-weight:750;display:block}.mode-option small{color:var(--text-sub);margin-top:5px;font-size:.76rem;line-height:1.45;display:block}.mode-option.disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.mode-info-card{background:linear-gradient(135deg,#81c3d71a,#d9dcd629);border-color:#81c3d738}.mode-info-inner{align-items:flex-start;gap:14px;display:flex}.mode-info-icon{color:#4f60c6;background:linear-gradient(135deg,#2f66901f,#5b66d01f);border:1px solid #5b66d021;border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;margin-top:2px;display:inline-flex}.mode-info-icon svg{width:22px;height:22px}.mode-info-desc{color:var(--text-sub);margin:0;font-size:.86rem;line-height:1.65}.mode-info-desc b{color:var(--complex-deep)}.wrong-book-inner{justify-content:space-between;align-items:center;gap:18px;display:flex}.wrong-book-info{min-width:0}.wrong-book-stats{gap:16px;margin-top:10px;display:flex}.wrong-book-stat{text-align:center;background:#2f66900d;border:1px solid #2f669014;border-radius:8px;padding:8px 14px}.wrong-book-stat b{color:var(--complex-deep);font-size:1.2rem;font-weight:800;display:block}.wrong-book-stat span{color:var(--text-hint);margin-top:2px;font-size:.72rem;display:block}.wrong-book-stat.unresolved b{color:#c2410c}.wrong-book-stat.mastered b{color:#2c7a63}.wrong-book-stat.recent b{color:#7c3aed}.practice-side-rail .wrong-book-inner{flex-direction:column;align-items:stretch}.practice-side-rail .wrong-book-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.practice-side-rail .wrong-book-card .complex-btn-secondary{width:100%}.recommendation-entry-card .practice-card-v2-head{align-items:flex-start;gap:10px;margin-bottom:12px}.recommend-entry-list{gap:8px;display:grid}.recommend-entry-item{text-align:left;cursor:pointer;background:#f7fafbd1;border:1px solid #2f66901a;border-radius:8px;width:100%;padding:10px;transition:border-color .2s,box-shadow .2s,transform .2s}.recommend-entry-item:hover{border-color:#2f669047;transform:translateY(-1px);box-shadow:0 6px 16px #2f669014}.recommend-entry-item span,.recommend-entry-item small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.recommend-entry-item span{color:var(--complex-deep);font-size:.84rem;font-weight:750}.recommend-entry-item small,.recommend-entry-empty{color:var(--text-hint);margin:4px 0 0;font-size:.74rem;line-height:1.45}.practice-start-bar{flex-direction:column;align-items:center;gap:10px;padding:4px 0 0;display:flex}.config-title-row{align-items:flex-start;margin-bottom:14px}.config-mode-pill,.practice-card-eyebrow{min-height:26px;color:var(--complex-primary);background:#2f669012;border:1px solid #2f66901f;border-radius:999px;align-items:center;padding:0 10px;font-size:.74rem;font-weight:750;display:inline-flex}.practice-config-footer{border-top:1px solid #16425b14;justify-content:space-between;align-items:center;gap:16px;margin-top:18px;padding-top:16px;display:flex}.practice-start-summary{min-width:0}.practice-start-summary b,.practice-start-summary span,.practice-start-summary em{display:block}.practice-start-summary b{color:var(--complex-deep);font-size:.94rem}.practice-start-summary span{color:var(--text-sub);margin-top:3px;font-size:.82rem}.practice-start-summary em{color:#c2410c;margin-top:5px;font-size:.78rem;font-style:normal}.btn-start-practice-v2{border-radius:8px;min-width:180px;min-height:44px;font-size:.96rem;box-shadow:0 10px 28px #2f669042}.practice-resume-card{justify-content:space-between;align-items:center;gap:16px;min-height:104px;display:flex}.practice-resume-card.active{color:#fff;background:linear-gradient(135deg,#16425b,#2f6690);border-color:#2f669040}.practice-resume-card.active .complex-section-title,.practice-resume-card.active .resume-main p{color:#fff}.practice-resume-card.active .practice-card-eyebrow{color:#ffffffeb;background:#ffffff24;border-color:#ffffff2e}.practice-resume-card.empty p,.resume-main p{color:var(--text-sub);margin:7px 0 0;font-size:.84rem;line-height:1.5}.resume-actions{flex:none;gap:8px;display:flex}.complex-btn-secondary.danger{color:#932f29;background:#fff1f0;border-color:#d77870;font-weight:750}.complex-btn-secondary.danger:hover:not(:disabled){color:#7d241f;background:#ffdcd8;border-color:#c75a51}.complex-btn-secondary.danger:focus-visible{outline-offset:2px;outline:3px solid #ffdfdbf5;box-shadow:0 0 0 1px #b9443c}.complex-btn-secondary.danger:disabled{color:#8e5d59;opacity:1;cursor:wait;background:#f1e6e4;border-color:#d7b5b1}.ai-generating-notice-icon{vertical-align:-4px;color:#4f60c6;width:18px;height:18px;margin-right:6px;display:inline-flex}.ai-generating-notice-icon svg{width:100%;height:100%}.practice-insight-card{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:12px;display:grid}.insight-stat{text-align:center;background:#f7fafbd1;border:1px solid #2f669017;border-radius:8px;min-width:0;padding:10px 8px}.insight-stat b,.insight-stat span{display:block}.insight-stat b{color:var(--complex-deep);font-size:1.24rem;line-height:1.1}.insight-stat span{color:var(--text-hint);margin-top:4px;font-size:.72rem}.insight-stat.warning b{color:#b64c3d}.practice-history-list{gap:8px;display:grid}.practice-history-item{background:#f7fafbd1;border:1px solid #2f66901a;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;display:grid}.practice-history-item.active{background:#2f66900f;border-color:#2f669047}.practice-history-item.submitted{border-color:#4caf842e}.history-item-main,.history-title-row b,.history-item-main p{min-width:0}.history-title-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.history-title-row b{color:var(--complex-deep);text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;overflow:hidden}.history-title-row span{color:var(--complex-primary);flex:none;font-size:.72rem;font-weight:750}.history-item-main p{color:var(--text-sub);text-overflow:ellipsis;white-space:nowrap;margin:4px 0 0;font-size:.76rem;overflow:hidden}.history-meta-row{flex-wrap:wrap;gap:6px;margin-top:7px;display:flex}.history-meta-row em{color:var(--text-hint);font-size:.7rem;font-style:normal}.history-actions{flex-direction:column;gap:6px;display:flex}.history-actions .complex-btn-secondary{min-height:30px;padding:0 10px;font-size:.76rem}.practice-history-empty{color:var(--text-hint);text-align:center;background:#f7fafbb8;border:1px dashed #2f669024;border-radius:8px;margin:0;padding:18px 10px;font-size:.82rem;line-height:1.5}.start-hint{color:#c2410c;background:#ea580c14;border:1px solid #ea580c29;border-radius:999px;margin:0;padding:8px 18px;font-size:.82rem;font-weight:650}.btn-spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:18px;height:18px;margin-right:8px;animation:.7s linear infinite spin;display:inline-block}.practice-topbar-v2{padding:22px 26px}.practice-topbar-v2.exam-topbar-mode{background:linear-gradient(118deg,#b44c3df0,#a4691de0)}.topbar-left{min-width:0}.back-link{font-size:.82rem}.topbar-mode-badges{gap:8px;margin:8px 0;display:flex}.mode-badge{border:1px solid #0000;border-radius:999px;align-items:center;padding:4px 11px;font-size:.74rem;font-weight:700;display:inline-flex}.mode-badge.practice{color:#fff;background:#ffffff2e;border-color:#ffffff3d}.mode-badge.exam{color:#fff;background:#ffc89638;border-color:#ffffff38}.mode-badge.single{color:#ffffffe6;background:#81c3d747;border-color:#fff3}.mode-badge.paper{color:#ffffffe6;background:#ffffff1f;border-color:#ffffff29}.mode-badge.submitted{color:#2c7a63;background:#4caf8433;border-color:#4caf8447}.mode-badge.answering{color:#ffffffe6;background:#ffffff24;border-color:#ffffff2e}.exam-progress-kpis{grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:14px;display:grid}.exam-progress-kpi{text-align:center;border-radius:14px;padding:14px}.exam-progress-kpi.answered{background:#2f669014;border:1px solid #2f669024}.exam-progress-kpi.unanswered{background:#94a3b80f;border:1px solid #94a3b81f}.exam-progress-kpi b{color:var(--complex-deep);font-size:1.6rem;font-weight:800;display:block}.exam-progress-kpi span{color:var(--text-sub);margin-top:3px;font-size:.76rem;display:block}.exam-progress-bar-wrap{background:#2f669014;border-radius:4px;height:8px;margin-bottom:16px;overflow:hidden}.exam-progress-bar{background:linear-gradient(90deg, var(--complex-secondary), var(--complex-primary));border-radius:4px;height:100%;transition:width .4s}.exam-type-stats{flex-direction:column;gap:8px;margin-bottom:14px;display:flex}.exam-type-stat-row{background:#2f66900a;border-radius:8px;justify-content:space-between;align-items:center;padding:8px 10px;display:flex}.exam-type-stat-row span{color:var(--text-sub);font-size:.8rem;font-weight:650}.exam-mode-notice{text-align:center;background:#a4691d14;border:1px solid #a4691d24;border-radius:10px;padding:10px}.exam-mode-notice small{color:#a4691d;font-size:.76rem;font-weight:650}.practice-nav-panel-v2{max-height:calc(100vh - 120px);padding:14px;position:sticky;top:18px;overflow:auto}.question-nav-grouped{flex-direction:column;gap:14px;display:flex}.question-nav-group{flex-direction:column;gap:6px;display:flex}.question-nav-group-title{align-items:center;margin-bottom:2px;display:flex}.question-nav-group-numbers{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.practice-side-panel-v2{max-height:calc(100vh - 140px);padding:16px;position:sticky;top:18px;overflow:auto}.exam-progress-panel{background:linear-gradient(#fff8f099,#fff)}.single-lock-hint{color:var(--text-sub);background:#2f66900d;border:1px dashed #2f669029;border-radius:12px;align-items:center;gap:8px;margin-top:16px;padding:12px 14px;font-size:.82rem;display:flex}.practice-exam-layout-v2{grid-template-columns:170px minmax(0,1fr) 300px}.qtag{color:var(--qt-text,#2f6690);background:var(--qt-bg,#2f669014);border:1px solid var(--qt-border,#2f669024);white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:3px 10px;font-size:.72rem;font-weight:700;display:inline-flex}.qtag-md{padding:4px 12px;font-size:.78rem}.kp-tag{color:#2f6690;background:#2f66900f;border-color:#2f66901a}.subject-tag{color:#475569;background:#64748b14;border-color:#64748b24}.wrong-stats-v2{grid-template-columns:repeat(4,minmax(130px,1fr));gap:12px;display:grid}.wrong-stat-card{border:1px solid var(--complex-line);text-align:center;background:#fff;border-radius:16px;padding:16px;box-shadow:0 4px 14px #16425b0a}.wrong-stat-card b{color:var(--complex-deep);font-size:1.5rem;font-weight:800;display:block}.wrong-stat-card span{color:var(--text-sub);margin-top:4px;font-size:.76rem;display:block}.wrong-stat-card.unresolved b{color:#c2410c}.wrong-stat-card.mastered b{color:#2c7a63}.wrong-stat-card.recent b{color:#7c3aed}.wrong-filter-v2{padding:16px 18px}.filter-row{grid-template-columns:repeat(5,minmax(0,1fr));align-items:end;gap:10px;display:grid}.filter-row label{color:var(--text-sub);flex-direction:column;gap:6px;font-size:.78rem;font-weight:650;display:flex}.filter-actions{justify-content:flex-end;margin-top:12px;display:flex}.wrong-compact-list{flex-direction:column;gap:10px;display:flex}.wrong-compact-card{border:1px solid var(--complex-line);background:#fff;border-left:4px solid #e0576e;border-radius:14px;transition:border-color .2s;overflow:hidden;box-shadow:0 4px 12px #16425b0a}.wrong-compact-card.mastered{border-left-color:#4caf84}.wrong-compact-head{cursor:pointer;justify-content:space-between;align-items:flex-start;gap:12px;padding:14px 16px;transition:background .15s;display:flex}.wrong-compact-head:hover{background:#2f669008}.wrong-compact-main{flex:1;min-width:0}.wrong-compact-tags{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.wrong-compact-summary{color:var(--text-main);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.88rem;line-height:1.55;display:-webkit-box;overflow:hidden}.wrong-compact-meta{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.wrong-count-badge{color:#c2410c;background:#ea580c14;border:1px solid #ea580c24;border-radius:999px;align-items:center;padding:2px 9px;font-size:.7rem;font-weight:700;display:inline-flex}.wrong-time{color:var(--text-hint);font-size:.74rem}.wrong-expand-icon{width:28px;height:28px;color:var(--text-hint);background:#2f66900f;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.7rem;display:flex}.wrong-compact-detail{background:#f7fafb99;border-top:1px solid #16425b14;padding:16px}.wrong-detail-content{flex-direction:column;gap:14px;display:flex}.wrong-detail-block b{color:var(--complex-deep);margin-bottom:6px;font-size:.84rem;display:block}.wrong-detail-block p{color:var(--text-main);white-space:pre-wrap;margin:0;font-size:.86rem;line-height:1.7}.wrong-detail-compare{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.wrong-detail-col{background:#fffc;border:1px solid #16425b14;border-radius:12px;padding:12px}.wrong-answer-student{color:#b64c3d!important}.wrong-answer-correct{color:#2c7a63!important}.wrong-option-list-compact{flex-direction:column;gap:6px;display:flex}.wrong-option-item{background:#ffffffb3;border:1px solid #16425b0f;border-radius:8px;grid-template-columns:24px minmax(0,1fr);gap:8px;padding:6px 10px;font-size:.84rem;display:grid}.wrong-option-item b{color:var(--complex-primary);margin-bottom:0!important}.wrong-compact-actions{border-top:1px solid #16425b0f;flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:16px;padding-top:14px;display:flex}@media (width<=1180px){.practice-v2-grid{gap:14px}.practice-main-grid,.practice-config-split{grid-template-columns:1fr;grid-template-areas:none}.practice-config-main>.config-block,.practice-config-side>.config-block{grid-area:auto}.practice-side-rail{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.practice-history-card{grid-column:1/-1}.practice-exam-layout-v2{grid-template-columns:1fr}.practice-nav-panel-v2,.practice-side-panel-v2{max-height:none;position:static}.question-nav-group-numbers{grid-template-columns:repeat(8,1fr)}.diff-card-grid,.mode-option-grid,.wrong-stats-v2{grid-template-columns:repeat(2,1fr)}.filter-row{grid-template-columns:repeat(2,minmax(0,1fr))}.wrong-book-inner{flex-direction:column;align-items:stretch}}@media (width<=760px){.practice-side-rail,.practice-config-main .type-capsule-grid,.subject-card-grid,.diff-card-grid,.mode-option-grid,.wrong-stats-v2,.filter-row,.wrong-detail-compare,.practice-result-strip,.practice-exam-layout-v2{grid-template-columns:1fr}.wrong-book-stats{flex-wrap:wrap;gap:8px}.wrong-book-inner{flex-direction:column;align-items:stretch}.btn-start-practice-v2{width:100%;min-width:unset}.practice-config-footer,.practice-resume-card,.resume-actions{flex-direction:column;align-items:stretch}.practice-history-item{grid-template-columns:1fr}.history-actions{flex-flow:wrap}.practice-start-bar{padding:16px 0 8px}.type-capsule-grid,.count-selector-row{gap:8px}.source-mix-summary{grid-template-columns:1fr 1fr}.source-mix-total{grid-area:1/1/auto/-1;justify-self:center}.source-mix-side{grid-row:2}.ai-generating-modal{padding:24px 18px}}.ai-generating-overlay{z-index:10000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#102a4385;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.ai-generating-modal{text-align:center;background:#fff;border-radius:20px;width:min(500px,92vw);padding:36px 30px;box-shadow:0 28px 72px #16425b4d}.ai-generating-icon{margin-bottom:20px}.ai-generating-spinner{border:4px solid #2f66901f;border-top-color:var(--complex-primary);border-radius:50%;width:56px;height:56px;margin:0 auto;animation:.75s linear infinite spin}.ai-generating-modal h3{color:var(--complex-deep);margin:0 0 12px;font-size:1.2rem;font-weight:750}.ai-generating-modal>p{color:var(--text-sub);margin:0 0 24px;font-size:.88rem;line-height:1.65}.ai-generating-steps{text-align:left;flex-direction:column;gap:10px;margin-bottom:10px;display:flex}.ai-step{color:var(--text-hint);background:#2f669009;border:1px solid #2f66900d;border-radius:10px;padding:10px 15px;font-size:.84rem;transition:all .35s}.ai-step.active{color:var(--complex-primary);background:#2f669014;border-color:#2f669033;font-weight:650}.ai-step.done{color:#2c7a63;background:#4caf8414;border-color:#4caf8429}.ai-generating-notice{background:#a4691d0f;border:1px solid #a4691d1f;border-radius:10px;margin:18px 0 14px;padding:10px 14px}.ai-generating-notice p{color:#a4691d;margin:0;font-size:.78rem;font-weight:650}.practice-shell-v3{gap:16px;width:min(1400px,100%);margin:0 auto}.practice-topbar-v3{padding:18px 24px}.practice-topbar-v3 .topbar-right{align-items:center;gap:8px;display:flex}.practice-exam-layout-v3{grid-template-columns:130px minmax(0,1fr) 310px;gap:14px}@media (width>=1400px){.practice-exam-layout-v3{grid-template-columns:140px minmax(0,1fr) 330px}}.practice-nav-panel-v3{max-height:calc(100vh - 140px);padding:12px 10px;position:sticky;top:18px;overflow:auto}.practice-nav-panel-v3 .nav-panel-title{color:var(--complex-deep);text-align:center;margin:0 0 10px;font-size:.85rem;font-weight:750}.practice-nav-panel-v3 .question-nav-grouped{flex-direction:column;gap:10px;display:flex}.practice-nav-panel-v3 .question-nav-group{flex-direction:column;gap:4px;display:flex}.practice-nav-panel-v3 .question-nav-group-title{justify-content:center;margin-bottom:2px;display:flex}.practice-nav-panel-v3 .question-nav-group-title .qtag{padding:2px 6px;font-size:.65rem}.practice-nav-panel-v3 .question-nav-group-numbers{grid-template-columns:repeat(3,1fr);gap:5px;display:grid}.practice-nav-panel-v3 .question-number{width:100%;height:30px;color:var(--text-sub);cursor:pointer;background:#f2f5f7;border:1px solid #16425b1a;border-radius:6px;font-size:.76rem;font-weight:700;transition:all .15s}.practice-nav-panel-v3 .question-number:hover{background:#2f66900f;border-color:#2f669047}.practice-nav-panel-v3 .question-number.answered{color:#fff;background:var(--complex-secondary);border-color:var(--complex-secondary)}.practice-nav-panel-v3 .question-number.current{color:#fff;background:var(--complex-deep);border-color:var(--complex-deep);box-shadow:0 0 0 2px #16425b24}.practice-nav-panel-v3 .question-number.correct{color:#fff;background:#4caf84;border-color:#4caf84}.practice-nav-panel-v3 .question-number.wrong{color:#fff;background:#e0576e;border-color:#e0576e}.practice-nav-panel-v3 .question-number.partial{color:#8a5a15;background:#f0b85e38;border-color:#f0b85e5c}.practice-question-card-v3{border-top:4px solid #0000;border-radius:14px;min-height:480px;padding:28px 32px}.practice-question-card-v3 .question-content{margin-bottom:22px;font-size:1.02rem;line-height:1.8}.practice-question-card-v3 .choice-list{gap:12px}.practice-question-card-v3 .choice-option{padding:14px 16px;font-size:.94rem}.practice-question-card-v3 .choice-option .choice-badge{width:30px;height:30px;font-size:.85rem}.practice-question-card-v3 .tf-row{gap:14px}.practice-question-card-v3 .complex-textarea{min-height:140px;font-size:.94rem}.practice-question-card-v3 .question-head h2{font-size:1.2rem}.practice-side-panel-v3{border-radius:14px;flex-direction:column;max-height:calc(100vh - 140px);padding:0;display:flex;position:sticky;top:18px;overflow:hidden}.side-tabs-bar{border-bottom:1px solid var(--complex-line);background:#f7fafbcc;flex-shrink:0;display:flex}.side-tab-btn{color:var(--text-sub);cursor:pointer;font-size:.72rem;font-weight:650;font-family:var(--font);background:0 0;border:none;border-bottom:2px solid #0000;flex-direction:column;flex:1;align-items:center;gap:3px;padding:10px 8px 9px;transition:all .2s;display:inline-flex}.side-tab-btn:hover{color:var(--complex-primary);background:#2f66900a}.side-tab-btn.active{color:var(--complex-primary);border-bottom-color:var(--complex-primary);background:#2f66900f}.side-tab-icon{font-size:1rem}.side-tab-label{font-size:.7rem}.side-panel-body{flex:1;padding:14px;overflow:auto}.side-tab-content{flex-direction:column;gap:12px;display:flex}.side-tab-title{color:var(--complex-deep);margin:0 0 4px;font-size:.9rem;font-weight:750}.info-grid{border:1px solid #16425b14;border-radius:10px;flex-direction:column;gap:0;display:flex;overflow:hidden}.info-row{border-bottom:1px solid #16425b0f;justify-content:space-between;align-items:center;padding:9px 12px;font-size:.82rem;display:flex}.info-row:last-child{border-bottom:none}.info-label{color:var(--text-hint);flex-shrink:0;font-weight:650}.info-value{color:var(--text-main);text-align:right;align-items:center;gap:4px;font-weight:650;display:flex}.status-text.correct{color:#2c7a63}.status-text.wrong{color:#b64c3d}.status-text.partial{color:#a4691d}.tab-lock-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:28px 16px;display:flex}.tab-lock-state .lock-icon{opacity:.6;font-size:2rem}.tab-lock-state p{color:var(--text-sub);margin:0;font-size:.82rem;line-height:1.5}.analysis-section{flex-direction:column;gap:10px;display:flex}.analysis-block{background:#f7fafbb3;border:1px solid #16425b14;border-radius:10px;padding:12px}.analysis-block b{color:var(--complex-deep);margin-bottom:6px;font-size:.82rem;display:block}.analysis-block p{color:var(--text-main);margin:0;font-size:.82rem;line-height:1.6}.analysis-text{color:var(--text-main);white-space:pre-wrap;word-break:break-word;font-size:.82rem;line-height:1.65}.analysis-empty{font-style:italic;color:var(--text-hint)!important}.correct-block{border-left:3px solid #4caf84}.my-block{border-left:3px solid var(--complex-primary)}.official-block{border-left:3px solid var(--complex-light)}.ai-block{background:#7c3aed0a;border-left:3px solid #7c3aed}.ai-gen-analysis-area{text-align:center;background:#7c3aed0a;border:1px dashed #7c3aed2e;border-radius:10px;padding:14px}.ai-gen-hint{color:var(--text-sub);margin:0 0 10px;font-size:.78rem}.ai-gen-btn{font-size:.8rem}.ai-gen-loading{color:var(--text-sub);justify-content:center;align-items:center;gap:10px;font-size:.82rem;display:flex}.ai-gen-loading .complex-spinner{width:20px;height:20px}.side-tab-chat{flex-direction:column;height:100%;display:flex}.side-chat-messages{flex-direction:column;flex:1;gap:10px;min-height:200px;max-height:340px;padding:8px 0;display:flex;overflow:auto}.side-chat-msg{display:flex}.side-chat-msg.user{justify-content:flex-end}.side-chat-msg.assistant{justify-content:flex-start}.side-chat-bubble{word-break:break-word;border-radius:10px;max-width:88%;padding:10px 12px;font-size:.8rem;line-height:1.6}.side-chat-msg.user .side-chat-bubble{color:#fff;background:var(--complex-primary);border-bottom-right-radius:3px}.side-chat-msg.assistant .side-chat-bubble{color:var(--text-main);border:1px solid var(--complex-line);background:#fff;border-bottom-left-radius:3px;box-shadow:0 2px 8px #16425b0a}.side-chat-meta{color:var(--text-hint);margin-bottom:4px;font-size:.66rem;font-weight:650}.side-chat-msg.user .side-chat-meta{color:#ffffffbf}.side-chat-bubble .message-markdown{font-size:.8rem;line-height:1.6}.side-chat-bubble .message-markdown p{margin:0 0 6px}.side-chat-bubble .message-markdown p:last-child{margin-bottom:0}.side-chat-bubble .message-markdown code{font-size:.82em}.side-chat-bubble .message-markdown pre{max-height:200px;overflow:auto}.side-chat-input-row{border-top:1px solid var(--complex-line);flex-shrink:0;grid-template-columns:minmax(0,1fr) 56px;align-items:end;gap:8px;padding-top:10px;display:grid}.side-chat-input-row textarea{resize:none;min-height:44px;max-height:100px;font-size:.8rem}.side-chat-input-row .complex-btn{height:44px;padding:0 10px;font-size:.8rem}.practice-bottom-bar-v3{z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff0;border-radius:12px;padding:12px 16px;position:sticky;bottom:12px}.student-dashboard-wrapper.practice-focus-active .sidebar-menu-item.practice-locked{opacity:.42;cursor:not-allowed;pointer-events:none}.student-dashboard-wrapper.practice-focus-active .sidebar-menu-item.practice-locked:hover{background:0 0}@media (width<=1280px){.practice-exam-layout-v3{grid-template-columns:110px minmax(0,1fr) 280px;gap:10px}.practice-question-card-v3{padding:22px 20px}.practice-nav-panel-v3 .question-nav-group-numbers{grid-template-columns:repeat(2,1fr)}.side-tab-btn{padding:8px 6px 7px}}@media (width<=1020px){.practice-exam-layout-v3{grid-template-columns:1fr;gap:12px}.practice-nav-panel-v3{order:-1;max-height:none;position:static}.practice-nav-panel-v3 .question-nav-group-numbers{grid-template-columns:repeat(auto-fill,minmax(30px,1fr));max-height:80px;overflow:auto}.practice-side-panel-v3{max-height:none;position:static}.side-chat-messages{max-height:260px}}@media (width<=760px){.practice-topbar-v3{grid-template-columns:1fr}.practice-topbar-v3 .topbar-right{justify-content:flex-start}.practice-question-card-v3{padding:16px 14px}.practice-question-card-v3 .question-content{font-size:.92rem}.side-tabs-bar{overflow-x:auto}.practice-bottom-bar-v3{flex-direction:column;gap:8px;position:static}.practice-bottom-bar-v3 .complex-actions{justify-content:stretch;width:100%}.practice-bottom-bar-v3 .complex-btn,.practice-bottom-bar-v3 .complex-btn-ghost,.practice-bottom-bar-v3 .complex-btn-secondary{flex:1}.side-chat-input-row{grid-template-columns:1fr}}.practice-shell-v4{gap:14px;width:min(1500px,100%);margin:0 auto}.practice-topbar-v4{padding:14px 22px}.practice-topbar-v4 .exam-title{margin-bottom:4px;font-size:1.35rem}.practice-topbar-v4 .exam-meta-row{margin-top:8px}.practice-exam-layout-v4{grid-template-columns:130px minmax(560px,1fr) 400px;align-items:start;gap:14px}@media (width>=1600px){.practice-exam-layout-v4{grid-template-columns:140px minmax(620px,1fr) 420px}}.practice-nav-panel-v4{border-radius:10px;max-height:calc(100vh - 150px);padding:10px 8px;position:sticky;top:18px;overflow:auto}.practice-nav-panel-v4 .nav-panel-title{color:var(--complex-deep);text-align:center;margin:0 0 8px;font-size:.82rem;font-weight:750}.practice-nav-panel-v4 .question-nav-grouped{flex-direction:column;gap:8px;display:flex}.practice-nav-panel-v4 .question-nav-group{flex-direction:column;gap:3px;display:flex}.practice-nav-panel-v4 .question-nav-group-title{justify-content:center;margin-bottom:1px;display:flex}.practice-nav-panel-v4 .question-nav-group-title .qtag{padding:1px 5px;font-size:.6rem}.practice-nav-panel-v4 .question-nav-group-numbers{grid-template-columns:repeat(3,1fr);gap:4px;display:grid}.practice-nav-panel-v4 .question-number{width:100%;height:28px;color:var(--text-sub);cursor:pointer;font-size:.73rem;font-weight:700;font-family:var(--font);background:#f2f5f7;border:1px solid #16425b1a;border-radius:5px;transition:all .15s}.practice-nav-panel-v4 .question-number:hover{background:#2f66900f;border-color:#2f669047}.practice-nav-panel-v4 .question-number.answered{color:#fff;background:var(--complex-secondary);border-color:var(--complex-secondary)}.practice-nav-panel-v4 .question-number.current{color:#fff;background:var(--complex-deep);border-color:var(--complex-deep);box-shadow:0 0 0 2px #16425b24}.practice-nav-panel-v4 .question-number.correct{color:#fff;background:#4caf84;border-color:#4caf84}.practice-nav-panel-v4 .question-number.wrong{color:#fff;background:#e0576e;border-color:#e0576e}.practice-nav-panel-v4 .question-number.partial{color:#8a5a15;background:#f0b85e38;border-color:#f0b85e5c}.practice-nav-panel-v4 .question-number.locked{color:#b0bec5;cursor:not-allowed;opacity:.55;background:#eceff1;border-color:#16425b0f}.practice-nav-panel-v4 .question-number.locked:hover{background:#eceff1;border-color:#16425b0f}.practice-question-card-v4{border-top:4px solid #0000;border-radius:14px;min-height:460px;padding:26px 30px}.practice-question-card-v4 .question-content{margin-bottom:20px;font-size:1rem;line-height:1.8}.practice-question-card-v4 .choice-list{gap:10px}.practice-question-card-v4 .choice-option{padding:13px 15px;font-size:.92rem}.practice-question-card-v4 .choice-option .choice-badge{width:28px;height:28px}.practice-question-card-v4 .complex-textarea{min-height:130px;font-size:.92rem}.practice-question-card-v4 .question-head h2{font-size:1.15rem}.practice-side-panel-v4{border-radius:14px;flex-direction:column;min-height:460px;max-height:calc(100vh - 150px);padding:0;display:flex;position:sticky;top:18px;overflow:hidden}.practice-side-panel-v4 .side-tabs-bar{border-bottom:1px solid var(--complex-line);background:#f7fafbcc;flex-shrink:0;display:flex}.practice-side-panel-v4 .side-tab-btn{color:var(--text-sub);cursor:pointer;font-size:.73rem;font-weight:650;font-family:var(--font);background:0 0;border:none;border-bottom:2px solid #0000;flex-direction:column;flex:1;align-items:center;gap:3px;padding:10px 8px 9px;transition:all .2s;display:inline-flex}.practice-side-panel-v4 .side-tab-btn:hover{color:var(--complex-primary);background:#2f66900a}.practice-side-panel-v4 .side-tab-btn.active{color:var(--complex-primary);border-bottom-color:var(--complex-primary);background:#2f66900f}.practice-side-panel-v4 .side-tab-icon{font-size:1.05rem}.practice-side-panel-v4 .side-tab-label{font-size:.72rem}.practice-side-panel-v4 .side-panel-body{flex:1;padding:16px;overflow:auto}.practice-bottom-bar-v4{z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff2;border-radius:12px;padding:12px 16px;position:sticky;bottom:12px}@media (width<=1280px){.practice-exam-layout-v4{grid-template-columns:110px minmax(0,1fr) 340px;gap:10px}.practice-question-card-v4{padding:20px 18px}.practice-nav-panel-v4 .question-nav-group-numbers{grid-template-columns:repeat(2,1fr)}}@media (width<=1020px){.practice-exam-layout-v4{grid-template-columns:1fr;gap:12px}.practice-nav-panel-v4{order:-1;max-height:none;position:static}.practice-nav-panel-v4 .question-nav-group-numbers{grid-template-columns:repeat(auto-fill,minmax(28px,1fr));max-height:70px;overflow:auto}.practice-side-panel-v4{min-height:360px;max-height:none;position:static}.side-chat-messages{max-height:300px}}@media (width<=760px){.practice-topbar-v4{grid-template-columns:1fr}.practice-question-card-v4{padding:14px 12px}.practice-bottom-bar-v4{flex-direction:column;gap:8px;position:static}.practice-bottom-bar-v4 .complex-actions{justify-content:stretch;width:100%}}.wq-workspace{background:var(--complex-bg);grid-template-columns:260px 1fr 300px;gap:0;min-height:calc(100vh - 200px);transition:grid-template-columns .25s;display:grid}.wq-workspace:not(.left-open){grid-template-columns:0 1fr 300px}.wq-workspace:not(.right-open){grid-template-columns:260px 1fr 0}.wq-workspace:not(.left-open):not(.right-open){grid-template-columns:0 1fr 0}.wq-sidebar{border-right:1px solid var(--complex-border);background:#fff;flex-direction:column;display:flex;overflow:hidden}.wq-sidebar-right{border-right:none;border-left:1px solid var(--complex-border)}.wq-sidebar-header{border-bottom:1px solid var(--complex-border);flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.wq-sidebar-header h3{color:var(--complex-text);margin:0;font-size:.95rem;font-weight:700}.wq-sidebar-scroll{flex:1;padding:8px;overflow-y:auto}.wq-sidebar-toggle{border:1px solid var(--complex-border);cursor:pointer;width:28px;height:28px;color:var(--complex-text-muted);background:#fff;border-radius:6px;justify-content:center;align-items:center;font-size:.7rem;display:flex}.wq-sidebar-toggle:hover{background:var(--complex-bg);color:var(--complex-primary)}.wq-filter-chips{border-bottom:1px solid var(--complex-border);flex-wrap:wrap;gap:6px;margin-bottom:8px;padding:8px 4px;display:flex}.wq-chip{color:#2563eb;cursor:pointer;background:#2563eb14;border:1px solid #2563eb26;border-radius:12px;align-items:center;gap:4px;padding:2px 8px;font-size:.75rem;display:inline-flex}.wq-chip:hover{background:#2563eb26}.wq-chip-clear{color:var(--complex-text-muted);cursor:pointer;background:0 0;border:none;padding:2px 4px;font-size:.72rem;text-decoration:underline}.wq-nav-section{margin-bottom:4px}.wq-nav-title{color:var(--complex-text);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:6px;justify-content:space-between;align-items:center;padding:8px;font-size:.82rem;font-weight:600;display:flex}.wq-nav-title:hover{background:var(--complex-bg)}.wq-nav-arrow{color:var(--complex-text-muted);font-size:.65rem}.wq-nav-body{padding-left:4px}.wq-nav-item{color:var(--complex-text);cursor:pointer;border-radius:6px;justify-content:space-between;align-items:center;padding:6px 12px;font-size:.8rem;transition:all .12s;display:flex}.wq-nav-item:hover{background:var(--complex-bg)}.wq-nav-item.active{color:#2563eb;background:#2563eb14;font-weight:600}.wq-nav-sub{padding-left:24px;font-size:.78rem}.wq-nav-sub2{color:var(--complex-text-muted);padding-left:36px;font-size:.76rem}.wq-nav-count{color:var(--complex-text-muted);background:var(--complex-bg);border-radius:8px;padding:1px 6px;font-size:.7rem}.wq-nav-item.active .wq-nav-count{color:#2563eb;background:#2563eb1f}.wq-tag-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-right:6px;display:inline-block}.wq-main{flex-direction:column;gap:12px;padding:16px 20px;display:flex;overflow-y:auto}.wq-stats-bar{border:1px solid var(--complex-border);background:#fff;border-radius:12px;flex-wrap:wrap;gap:10px;padding:14px 16px;display:flex}.wq-stat-item{border-right:1px solid var(--complex-border);flex-direction:column;align-items:center;min-width:70px;padding:6px 14px;display:flex}.wq-stat-item:last-child{border-right:none}.wq-stat-item b{color:var(--complex-text);font-size:1.3rem;font-weight:700}.wq-stat-item span{color:var(--complex-text-muted);margin-top:2px;font-size:.72rem}.wq-stat-item.warn b{color:#eab308}.wq-stat-item.danger b{color:#ef4444}.wq-stat-item.info b{color:#3b82f6}.wq-stat-item.success b{color:#22c55e}.wq-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.wq-toolbar-left,.wq-toolbar-right{align-items:center;gap:8px;display:flex}.wq-search-input{border:1px solid var(--complex-border);border-radius:8px;outline:none;width:200px;padding:6px 12px;font-size:.82rem;transition:border-color .15s}.wq-search-input:focus{border-color:var(--complex-primary)}.wq-select-sm{border:1px solid var(--complex-border);cursor:pointer;background:#fff;border-radius:8px;padding:6px 10px;font-size:.8rem}.wq-btn-icon{border:1px solid var(--complex-border);cursor:pointer;width:36px;height:36px;color:var(--complex-text-muted);background:#fff;border-radius:8px;justify-content:center;align-items:center;font-size:1rem;display:flex}.wq-btn-icon:hover{background:var(--complex-bg);color:var(--complex-primary)}.wq-btn-icon-sm{border:1px solid var(--complex-border);cursor:pointer;width:30px;height:30px;color:var(--complex-text-muted);background:#fff;border-radius:6px;justify-content:center;align-items:center;font-size:.85rem;display:flex}.wq-btn-icon-sm.active{color:#2563eb;background:#2563eb14;border-color:#2563eb}.wq-view-toggle{gap:2px;display:flex}.wq-btn-accent{color:#2563eb;cursor:pointer;background:#2563eb14;border:1px solid #2563eb;border-radius:8px;padding:6px 14px;font-size:.82rem;font-weight:600}.wq-btn-accent:hover{background:#2563eb26}.wq-result-info{color:var(--complex-text-muted);font-size:.78rem}.wq-card-list{flex-direction:column;gap:10px;display:flex}.wq-card{border:1px solid var(--complex-border);background:#fff;border-radius:12px;transition:all .15s;overflow:hidden}.wq-card:hover{border-color:#93c5fd;box-shadow:0 2px 8px #0000000a}.wq-card.mastered{opacity:.75}.wq-card.wrong-again{border-left:3px solid #ef4444}.wq-card.in-basket{background:#2563eb05;border-color:#2563eb}.wq-card-head{cursor:pointer;-webkit-user-select:none;user-select:none;flex-wrap:wrap;align-items:center;gap:8px;padding:12px 14px;display:flex}.wq-card-check{flex-shrink:0}.wq-card-check input{cursor:pointer;accent-color:#2563eb;width:18px;height:18px}.wq-card-tags{flex-wrap:wrap;flex:1;gap:4px;min-width:0;display:flex}.wq-card-summary{width:100%;color:var(--complex-text);margin:4px 0 0 26px;font-size:.84rem;line-height:1.5}.wq-card-meta{flex-wrap:wrap;align-items:center;gap:8px;width:100%;margin:6px 0 0 26px;display:flex}.wq-card-expand-icon{color:var(--complex-text-muted);margin-left:auto;font-size:.65rem}.wq-reason-badge{color:#c2410c;background:#ea580c14;border:1px solid #ea580c26;border-radius:8px;padding:1px 8px;font-size:.7rem}.wq-status-badge{color:#2563eb;background:#3b82f614;border:1px solid #3b82f626;border-radius:8px;padding:1px 8px;font-size:.7rem}.wq-status-badge.pending_review{color:#6b7280;background:#6b728014;border-color:#6b728026}.wq-status-badge.reinforcing{color:#2563eb;background:#3b82f614;border-color:#3b82f626}.wq-status-badge.wrong_again{color:#ef4444;background:#ef444414;border-color:#ef444426}.wq-status-badge.mastered{color:#16a34a;background:#22c55e14;border-color:#22c55e26}.wq-status-badge.ignored{color:#9ca3af;background:#6b72800d;border-color:#6b72801a}.wq-meta-text{color:var(--complex-text-muted);font-size:.72rem}.wq-meta-text.success{color:#16a34a}.wq-card-detail{border-top:1px solid var(--complex-border);padding:0 14px 14px}.wq-detail-grid{flex-direction:column;gap:10px;padding:12px 0;display:flex}.wq-detail-block b{color:var(--complex-text-muted);margin-bottom:4px;font-size:.78rem;display:block}.wq-detail-block p{color:var(--complex-text);margin:0;font-size:.84rem;line-height:1.6}.wq-answer-correct{font-weight:600;color:#16a34a!important}.wq-option-list{flex-direction:column;gap:4px;display:flex}.wq-option-item{background:#00000005;border-radius:6px;gap:8px;padding:4px 8px;font-size:.82rem;display:flex}.wq-option-item b{color:var(--complex-primary);min-width:20px;margin-bottom:0!important}.wq-detail-actions-row{border-top:1px solid var(--complex-border);flex-wrap:wrap;justify-content:space-between;gap:10px;padding:10px 0 0;display:flex}.wq-detail-actions-left,.wq-detail-actions-right{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.wq-action-label{color:var(--complex-text-muted);align-items:center;gap:4px;font-size:.75rem;display:flex}.wq-select-xs{border:1px solid var(--complex-border);cursor:pointer;background:#fff;border-radius:6px;padding:3px 6px;font-size:.75rem}.wq-btn-mini{border:1px solid var(--complex-border);cursor:pointer;color:var(--complex-text);background:#fff;border-radius:6px;padding:3px 10px;font-size:.75rem}.wq-btn-mini:hover{background:var(--complex-bg)}.wq-btn-mini.active{color:#2563eb;background:#2563eb14;border-color:#2563eb}.wq-btn-mini[disabled]{opacity:.4;cursor:not-allowed}.wq-btn-sm{border:1px solid var(--complex-border);cursor:pointer;color:var(--complex-text);background:#fff;border-radius:8px;padding:6px 14px;font-size:.82rem;transition:all .12s}.wq-btn-sm:hover{background:var(--complex-bg);border-color:var(--complex-primary)}.wq-btn-sm.primary{color:#fff;background:#2563eb;border-color:#2563eb}.wq-btn-sm.primary:hover{background:#1d4ed8}.wq-btn-sm.accent{color:#fff;background:#7c3aed;border-color:#7c3aed}.wq-btn-sm.accent:hover{background:#6d28d9}.wq-btn-primary{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:10px;padding:10px 20px;font-size:.9rem;font-weight:600;transition:all .15s}.wq-btn-primary:hover{background:#1d4ed8}.wq-btn-primary[disabled]{cursor:not-allowed;background:#93c5fd}.wq-btn-block{width:100%;display:block}.wq-similar-group{align-items:center;gap:4px;display:flex}.wq-similar-label{color:var(--complex-text-muted);font-size:.78rem}.wq-similar-count{border:1px solid var(--complex-border);text-align:center;border-radius:6px;outline:none;width:42px;padding:4px;font-size:.82rem}.wq-similar-count:focus{border-color:var(--complex-primary)}.wq-btn-mini-remove{cursor:pointer;width:20px;height:20px;color:var(--complex-text-muted);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:.7rem;display:flex}.wq-btn-mini-remove:hover{color:#ef4444;background:#ef44441a}.wq-compact-table{border:1px solid var(--complex-border);background:#fff;border-radius:12px;overflow:hidden}.wq-table-header{background:var(--complex-bg);color:var(--complex-text-muted);border-bottom:1px solid var(--complex-border);grid-template-columns:36px 80px 1fr 120px 90px 70px 60px;align-items:center;padding:10px 12px;font-size:.75rem;font-weight:600;display:grid}.wq-table-row{border-bottom:1px solid var(--complex-border);grid-template-columns:36px 80px 1fr 120px 90px 70px 60px;align-items:center;padding:10px 12px;font-size:.8rem;transition:background .1s;display:grid}.wq-table-row:last-child{border-bottom:none}.wq-table-row:hover{background:#00000003}.wq-table-row.in-basket{background:#2563eb08}.wq-td{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.wq-expand-link{color:var(--complex-primary);cursor:pointer;text-decoration:none}.wq-expand-link:hover{text-decoration:underline}.wq-grouped-list{flex-direction:column;gap:16px;display:flex}.wq-group-header{border:1px solid var(--complex-border);background:#fff;border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:8px;padding:10px 14px;display:flex}.wq-group-title{color:var(--complex-text);font-size:.88rem;font-weight:700}.wq-group-count{color:var(--complex-text-muted);font-size:.75rem}.wq-pagination{justify-content:center;align-items:center;gap:6px;padding:12px 0;display:flex}.wq-page-info{color:var(--complex-text-muted);margin-left:8px;font-size:.78rem}.wq-basket-stats{background:var(--complex-bg);border-radius:10px;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:12px;padding:10px;display:grid}.wq-basket-stat{flex-direction:column;align-items:center;padding:6px;display:flex}.wq-basket-stat b{color:var(--complex-text);font-size:1.1rem;font-weight:700}.wq-basket-stat span{color:var(--complex-text-muted);font-size:.65rem}.wq-basket-mode{border:1px solid var(--complex-border);background:#fff;border-radius:10px;margin-bottom:12px;padding:10px}.wq-basket-mode>b{color:var(--complex-text-muted);margin-bottom:6px;font-size:.78rem;display:block}.wq-radio-item{cursor:pointer;border:1px solid #0000;border-radius:8px;flex-wrap:wrap;align-items:center;gap:6px;padding:8px 10px;transition:all .12s;display:flex}.wq-radio-item:hover{background:var(--complex-bg)}.wq-radio-item.checked{background:#2563eb0d;border-color:#2563eb33}.wq-radio-item input{accent-color:#2563eb}.wq-radio-item span{color:var(--complex-text);font-size:.8rem;font-weight:500}.wq-radio-item small{width:100%;color:var(--complex-text-muted);margin-left:22px;font-size:.68rem}.wq-basket-list{margin-bottom:12px}.wq-basket-list>b{color:var(--complex-text-muted);margin-bottom:6px;font-size:.78rem;display:block}.wq-basket-item{background:var(--complex-bg);border-radius:6px;justify-content:space-between;align-items:center;margin-bottom:4px;padding:6px 10px;font-size:.78rem;display:flex}.wq-basket-item-text{text-overflow:ellipsis;white-space:nowrap;color:var(--complex-text);overflow:hidden}.wq-empty-hint{color:var(--complex-text-muted);text-align:center;padding:16px;font-size:.78rem}.wq-basket-actions{border-top:1px solid var(--complex-border);flex-direction:column;gap:8px;padding-top:8px;display:flex}.wq-modal{z-index:1000;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.wq-modal-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000059;position:absolute;inset:0}.wq-modal-content{background:#fff;border-radius:16px;flex-direction:column;width:92%;max-width:480px;max-height:80vh;display:flex;position:relative;overflow:hidden;box-shadow:0 20px 60px #00000026}.wq-modal-header{border-bottom:1px solid var(--complex-border);flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.wq-modal-header h3{margin:0;font-size:1rem;font-weight:700}.wq-modal-close{cursor:pointer;width:30px;height:30px;color:var(--complex-text-muted);background:#0000000d;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:.9rem;display:flex}.wq-modal-close:hover{background:#0000001a}.wq-modal-body{flex-direction:column;gap:12px;padding:16px 20px;display:flex;overflow-y:auto}.wq-tag-create-row{align-items:center;gap:8px;display:flex}.wq-tag-list{flex-direction:column;gap:6px;display:flex}.wq-tag-item{background:var(--complex-bg);border-radius:8px;align-items:center;gap:8px;padding:8px 12px;font-size:.84rem;display:flex}.wq-progress-bar{background:var(--complex-bg);border-radius:5px;width:100%;height:10px;margin-bottom:12px;overflow:hidden}.wq-progress-fill{background:linear-gradient(90deg,#2563eb,#7c3aed);border-radius:5px;height:100%;transition:width .5s}.wq-progress-info p{color:var(--complex-text);margin:4px 0;font-size:.82rem}.wq-error-text{color:#ef4444;margin:8px 0;font-size:.82rem}@media (width<=1024px){.wq-workspace{grid-template-columns:0 1fr 0}.wq-workspace.left-open{grid-template-columns:260px 0 0}.wq-workspace.right-open{grid-template-columns:0 0 300px}.wq-sidebar{z-index:100;width:260px;position:fixed;top:0;bottom:0;left:0}.wq-sidebar-right{width:300px;left:auto;right:0}.wq-main{padding:12px}.wq-stats-bar{flex-wrap:wrap;gap:6px;padding:10px}.wq-stat-item{border-right:none;min-width:auto;padding:4px 8px}.wq-stat-item b{font-size:1rem}.wq-table-header,.wq-table-row{grid-template-columns:36px 60px 1fr 60px 60px}.wq-th-kp,.wq-td-kp,.wq-th-actions,.wq-td-actions{display:none}}@media (width<=760px){.wq-workspace.left-open{grid-template-columns:min(300px,100vw - 24px) 0 0}.wq-workspace.right-open{grid-template-columns:0 0 min(320px,100vw - 24px)}.wq-sidebar,.wq-sidebar-right{width:min(320px,100vw - 24px);max-width:calc(100vw - 24px)}.wq-toolbar-left,.wq-toolbar-right{flex-wrap:wrap;width:100%}.wq-search-input{flex:100%;width:100%}.wq-compact-table{overflow-x:auto}.wq-table-header,.wq-table-row{min-width:480px}.wq-pagination{flex-wrap:wrap}.wq-modal{padding:12px}.wq-modal-content{width:min(100%,100vw - 24px);max-height:calc(100vh - 24px)}.wq-tag-create-row,.wq-detail-actions-row,.wq-detail-actions-left,.wq-detail-actions-right{flex-direction:column;align-items:stretch}}.student-main-ai-chat .ai-history-filters{flex:none;grid-template-columns:1fr 1fr;gap:5px;display:grid}.student-main-ai-chat .ai-history-filters input{grid-column:1/-1}.student-main-ai-chat .ai-history-filters select,.student-main-ai-chat .ai-history-filters input{box-sizing:border-box;border:1px solid var(--ai-border);width:100%;min-width:0;height:29px;color:var(--ai-text-secondary);font:inherit;background:#fff;border-radius:6px;padding:0 6px;font-size:10px}.student-main-ai-chat .ai-history-bulk{border-top:1px solid var(--ai-border);flex-wrap:wrap;gap:4px;padding-top:5px;display:flex}.student-main-ai-chat .ai-history-bulk button,.student-main-ai-chat .btn-rename-conv{border:1px solid var(--ai-border);min-height:24px;color:var(--ai-text-secondary);font:inherit;cursor:pointer;background:#fff;border-radius:6px;padding:0 6px;font-size:10px}.student-main-ai-chat .btn-rename-conv{opacity:0;margin-left:auto}.student-main-ai-chat .conversation-item:hover .btn-rename-conv,.student-main-ai-chat .conversation-item.active .btn-rename-conv,.student-main-ai-chat .btn-rename-conv:focus-visible{opacity:1}.student-main-ai-chat .conversation-item>[data-ai-history-select]{float:left;margin:3px 6px 0 0}.student-main-ai-chat .history-collapsed .ai-history-filters,.student-main-ai-chat .history-collapsed .ai-history-bulk{display:none}@media (width<=760px){.student-main-ai-chat .ai-history-filters,.student-main-ai-chat .ai-history-bulk{display:none}}.student-shared-resources{border:1px solid var(--border-light,#e7dfd3);background:linear-gradient(135deg,#fffaf1,#fff);border-radius:14px;margin:16px 0;padding:16px}.student-shared-resources-head{justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:12px;display:flex}.student-shared-resources-head span{color:var(--text-hint);font-size:.72rem}.student-shared-resources-head h2{color:var(--complex-deep);margin:3px 0 0;font-size:1.05rem}.student-shared-resources-head>b{color:#9a5e20;background:#fff0d9;border-radius:12px;padding:4px 9px;font-size:.7rem}.student-shared-resource-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.student-shared-resource-grid article{border:1px solid var(--border-light,#e8e0d5);background:#fff;border-radius:10px;flex-direction:column;justify-content:space-between;min-width:0;padding:12px;display:flex;position:relative}.student-shared-resource-grid article.unread:before{content:"";background:#d97706;border-radius:50%;width:7px;height:7px;position:absolute;top:9px;right:9px}.student-shared-resource-grid span,.student-shared-resource-grid p,.student-shared-resource-grid time{color:var(--text-sub);font-size:.68rem;display:block}.student-shared-resource-grid h3{color:var(--complex-deep);text-overflow:ellipsis;white-space:nowrap;margin:5px 0;font-size:.86rem;overflow:hidden}.student-shared-resource-grid p{margin:0 0 4px}.student-shared-resource-grid footer{flex-wrap:wrap;gap:5px;margin-top:10px;display:flex}.student-shared-resource-grid footer button{padding:5px 8px;font-size:.66rem}@media (width<=960px){.student-shared-resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=620px){.student-shared-resource-grid{grid-template-columns:1fr}}.role-teacher{--primary:#f59e0b;--primary-hover:#d97706;--primary-light:#fffbeb;--primary-border:#fde68a;--bg:#fffbf5;--text:#1c1917;--text-secondary:#57534e;--text-muted:#a8a29e;--border:#ede4d8;--shadow:0 1px 3px #b4530914, 0 1px 2px #b453090d;--shadow-md:0 4px 6px #b453090f, 0 2px 4px #b453090a;--stu-primary:#f59e0b;--stu-primary-hover:#d97706;--stu-dark:#451a03;--stu-secondary:#fbbf24;--stu-accent:#fde68a;--stu-accent-cyan:#fde68a;--stu-accent-purple:#ea580c;--stu-accent-green:#22c55e;--stu-accent-orange:#f59e0b;--stu-page-bg:#fffbf5;--stu-surface:#fff;--stu-surface-hover:#fff7ed;--stu-surface-soft:#fff7ed;--stu-text:#1c1917;--stu-text-secondary:#57534e;--stu-text-muted:#a8a29e;--stu-text-inverse:#fff;--stu-border:#ede4d8;--stu-border-light:#f5f0e8;--stu-border-active:#fde68a;--stu-shadow-xs:0 1px 2px #b453090a;--stu-shadow:0 4px 16px #b453090f;--stu-shadow-md:0 8px 24px #b4530914;--stu-shadow-lg:0 16px 48px #b453091a;--stu-success:#22c55e;--stu-success-bg:#f0fdf4;--stu-warning:#f59e0b;--stu-warning-bg:#fffbeb;--stu-error:#ef4444;--stu-error-bg:#fef2f2;--stu-info:#3b82f6;--stu-info-bg:#eff6ff;--page-bg:#fffbf5;--text-main:#1c1917;--text-sub:#57534e;--text-hint:#a8a29e;--border-soft:#b4530914;--border-medium:#b453091f;--shadow-card:0 4px 16px #b453090f;--shadow-card-hover:0 8px 24px #b453091a;--shadow-elevated:0 16px 48px #b453091f;--clr-blue:#f59e0b;--clr-blue-dark:#451a03;--clr-cyan:#fde68a;--clr-purple:#ea580c;--clr-green:#22c55e;--clr-orange:#f59e0b;--clr-rose:#ef4444}.role-teacher .student-dashboard-wrapper{background:linear-gradient(135deg,#fbbf2426 0%,#fbbf2400 30%),linear-gradient(225deg,#f59e0b14 0%,#f59e0b00 26%),linear-gradient(#fffbeb 0%,#fff7ed 100%)}.role-teacher .student-dashboard-wrapper:before{background:radial-gradient(at 70% 30%,#f59e0b12 0%,#0000 60%),radial-gradient(at 30% 60%,#ea580c0a 0%,#0000 50%)!important}.role-teacher .student-sidebar{background:linear-gradient(#451a03b3,#b4530980);box-shadow:0 20px 50px #451a032e,inset 0 0 0 1px #ffffff0f,0 0 32px #f59e0b14}.role-teacher .student-sidebar:after{background:linear-gradient(#fbbf2424,#f59e0b0f);box-shadow:0 0 38px #fbbf241a,0 0 22px #f59e0b14}.role-teacher .sidebar-brand-mark{background:linear-gradient(135deg,#f59e0b59,#ea580c40);box-shadow:0 0 16px #f59e0b40}.role-teacher .sidebar-brand-en{color:#fbbf24d9}.role-teacher .sidebar-menu-item:hover{background:#ffffff14}.role-teacher .sidebar-menu-item.active{background:linear-gradient(90deg,#f59e0b4d,#f59e0b1f);box-shadow:inset 0 0 0 1px #ffffff1a}.role-teacher .sidebar-menu-item.active:before{background:linear-gradient(#fbbf24,#f59e0b);box-shadow:0 0 8px #fbbf2459}.role-teacher .sidebar-menu-item.active .sidebar-menu-icon{background:#f59e0b4d}.role-teacher .sidebar-menu-item.active .sidebar-menu-icon svg,.role-teacher .sidebar-menu-item.active .sidebar-menu-text{color:#fff}.role-teacher .sidebar-menu-item:hover .sidebar-menu-icon{background:#ffffff1a}.role-teacher .sidebar-menu-item .menu-tooltip{background:#451a03f0;box-shadow:0 6px 20px #451a0347}.role-teacher .sidebar-menu-item .menu-tooltip:before{border-right-color:#451a03f0}.role-teacher .sidebar-pin-btn:hover{background:#ffffff1f}.role-teacher .sidebar-pin-btn.pinned{background:#f59e0b4d;border-color:#f59e0b80;box-shadow:0 0 18px #f59e0b33,inset 0 0 0 1px #ffffff0f}.role-teacher .sidebar-user-role{color:#fbbf24b3}.role-teacher .sidebar-logout-btn{color:#ffffff7a}.role-teacher .sidebar-logout-btn:hover{color:#fca5a5;background:#ef444426;border-color:#ef444447}.role-teacher .welcome-banner{box-shadow:0 10px 32px #451a032e;background:linear-gradient(135deg,#451a03 0%,#78350f 35%,#b45309 65%,#d97706 100%)!important}.role-teacher .stat-value{color:var(--stu-primary)}.role-teacher .card-title{color:#451a03}.role-teacher .card:hover{border-color:#f59e0b4d}.role-teacher .stat-card:hover{border-color:#f59e0b66}.role-teacher .stat-card-enhanced:after{opacity:1}.role-teacher .btn-primary{background:#f59e0b;border-color:#f59e0b;box-shadow:0 2px 8px #f59e0b40}.role-teacher .btn-primary:hover:not(:disabled){background:#d97706;border-color:#d97706;box-shadow:0 4px 14px #f59e0b59}.role-teacher .btn-retry{box-shadow:0 6px 20px #f59e0b40;background:linear-gradient(135deg,#f59e0b,#d97706)!important}.role-teacher .btn-retry:hover{box-shadow:0 10px 28px #f59e0b59}.role-teacher input:focus,.role-teacher select:focus,.role-teacher textarea:focus{border-color:#f59e0b!important;box-shadow:0 0 0 3px #f59e0b1a!important}.role-teacher .btn-link{color:#f59e0b}.role-teacher .btn-link:hover{background:#fffbeb}.role-teacher .tab-btn.active{color:#451a03!important;border-bottom-color:#f59e0b!important}.role-teacher .course-card{border-left-color:#f59e0b!important}.role-teacher .course-hero-card{background:linear-gradient(135deg,#451a03 0%,#78350f 40%,#b45309 70%,#d97706 100%)!important;box-shadow:0 12px 40px #451a0333!important}.role-teacher .course-hero-card:before{background:radial-gradient(circle,#fbbf2438,#0000 60%)!important}.role-teacher .course-hero-card .hero-course-code,.role-teacher .course-hero-card .hero-desc,.role-teacher .course-hero-card .hero-tag{color:#ffffffd9!important}.role-teacher .course-hero-card .hero-tag{background:#ffffff1f!important;border-color:#ffffff26!important}.role-teacher .home-quick-card.primary{background:linear-gradient(135deg,#b45309,#d97706)!important}.role-teacher .home-quick-card.primary:hover{background:linear-gradient(135deg,#92400e,#b45309)!important}.role-teacher .home-quick-card:hover{border-color:#f59e0b66!important;box-shadow:0 8px 18px #b453091f!important}.role-teacher .course-card-h:hover{border-color:#f59e0b59!important;box-shadow:0 8px 24px #b453091f!important}.role-teacher .btn-enter-course-h{color:#fff!important;background:linear-gradient(135deg,#b45309,#d97706)!important;box-shadow:0 2px 8px #b4530933!important}.role-teacher .btn-enter-course-h:hover{background:linear-gradient(135deg,#92400e,#b45309)!important;box-shadow:0 4px 14px #b453094d!important}.role-teacher .progress-bar-h-fill,.role-teacher .home-progress-bar i{background:linear-gradient(90deg,#fbbf24,#d97706)!important}.role-teacher .kp-inline-stats .kp-stat{background:#b453090d!important}.role-teacher .home-panel-link{color:#f59e0b!important}.role-teacher .home-metric-card.blue b{color:#d97706!important}.role-teacher .home-metric-card.green b{color:#2c7a63!important}.role-teacher .home-metric-card.amber b{color:#b45309!important}.role-teacher .home-metric-card.red b{color:#b64c3d!important}.role-teacher .home-rec-tag.blue{color:#b45309!important;background:#f59e0b1f!important}.role-teacher .home-rec-tag.green{color:#166534!important;background:#22c55e1a!important}.role-teacher .home-rec-tag.amber{color:#92400e!important;background:#f59e0b24!important}.role-teacher .overview-icon.blue{color:#b45309!important;background:#f59e0b1f!important}.role-teacher .search-box input:focus{border-color:#f59e0b!important;box-shadow:0 0 0 3px #f59e0b14!important}.role-teacher .chart-card{border-color:#f59e0b14!important}.role-teacher .empty-state .empty-icon{opacity:.5}.role-teacher .filter-chip.active{color:#b45309!important;background:#f59e0b1f!important;border-color:#f59e0b40!important}.role-teacher .btn-back{color:#57534e!important}.role-teacher .btn-back:hover{color:#b45309!important;background:#f59e0b0f!important}.role-teacher .home-task-item.unread{background:#f59e0b0a!important;border-color:#f59e0b1f!important}.role-teacher .home-student-avatar{background:linear-gradient(135deg,#b45309,#d97706)!important}.role-teacher .home-student-name{color:#451a03!important}.role-teacher .teacher-page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px;display:flex}.role-teacher .teacher-page-head h2{margin:2px 0;font-size:1.5rem;font-weight:700}.role-teacher .teacher-page-head p{color:var(--text-secondary);margin:0;font-size:.85rem}.role-teacher .teacher-card-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;display:grid}.role-teacher .teacher-table-container{border:1px solid var(--border-soft);border-radius:var(--radius-lg);background:var(--surface-card);width:100%;overflow-x:auto}.role-teacher .teacher-filter-bar{background:var(--surface-card);border:1px solid var(--border-soft);border-radius:var(--radius-lg);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;padding:12px 16px;display:flex}.role-teacher .teacher-action-bar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.role-teacher .teacher-stat-card{min-height:110px;padding:16px}.role-teacher .teacher-chart-container{background:var(--surface-card);border:1px solid var(--border-soft);border-radius:var(--radius-lg);min-height:280px;padding:14px}.role-teacher .teacher-detail-grid{grid-template-columns:130px minmax(0,1fr);align-items:baseline;gap:12px 18px;display:grid}.role-teacher .teacher-detail-grid .detail-label{color:var(--text-secondary);text-align:right;padding-top:6px;font-size:.82rem;font-weight:600}.role-teacher .teacher-detail-grid .detail-value{color:var(--text-primary);word-break:break-word;padding-top:6px;font-size:.9rem}.role-admin{--admin-primary:#6d5dfb;--admin-primary-hover:#5d50e8;--admin-primary-active:#5546d8;--admin-primary-soft:#f3f1ff;--admin-primary-border:#d8d1ff;--admin-focus-ring:#6d5dfb2e;--primary:var(--admin-primary);--primary-hover:var(--admin-primary-hover);--primary-light:#f5f3ff;--primary-border:var(--admin-primary-border);--bg:#faf9fe;--text:#1e1b2e;--text-secondary:#6d5e8a;--text-muted:#9b8db5;--border:#e8e0f0;--shadow:0 1px 3px #7c3aed14, 0 1px 2px #7c3aed0d;--shadow-md:0 4px 6px #7c3aed12, 0 2px 4px #7c3aed0d;--stu-primary:var(--admin-primary);--stu-secondary:#8174ee;--stu-bg-soft:var(--admin-primary-soft);--stu-dark:#51459a;--stu-accent:#9a90f3;--stu-text:#1e1b2e;--stu-text-secondary:#1e1b2ead;--stu-text-muted:#1e1b2e73;--stu-border:#7c3aed1f;--stu-border-light:#a78bfa38;--stu-shadow:0 4px 16px #5b21b60f;--stu-shadow-md:0 8px 32px #5b21b614;--stu-shadow-lg:0 16px 48px #5b21b61a;--admin-shell-edge:20px;--admin-shell-gap:24px}.student-dashboard-wrapper.role-admin{background:radial-gradient(circle at 92% 4%,#8174ee14,#0000 27rem),#f8f7fc}.student-dashboard-wrapper.role-admin:before{display:none}@media (width>=769px){.student-dashboard-wrapper.role-admin{box-sizing:border-box;min-height:100vh;padding:0;display:block;overflow-x:clip}.student-dashboard-wrapper.role-admin>.student-sidebar{left:var(--admin-shell-edge);top:var(--admin-shell-edge);bottom:var(--admin-shell-edge);width:var(--stu-sidebar-collapsed);height:calc(100vh - var(--admin-shell-edge) - var(--admin-shell-edge));box-sizing:border-box;z-index:460;margin:0;position:fixed}.student-dashboard-wrapper.role-admin>.student-sidebar.expanded,.student-dashboard-wrapper.role-admin>.student-sidebar.collapsed:hover{width:var(--stu-sidebar-expanded)}.student-dashboard-wrapper.role-admin>.student-sidebar.collapsed:not(:hover){width:var(--stu-sidebar-collapsed)}.student-dashboard-wrapper.role-admin>.student-main,.student-dashboard-wrapper.role-admin.sidebar-expanded>.student-main,.student-dashboard-wrapper.role-admin.sidebar-collapsed>.student-main{width:100%;min-width:0;max-width:none;min-height:100vh;padding:28px 40px 40px calc(var(--admin-shell-edge) + var(--stu-sidebar-collapsed) + 24px);box-sizing:border-box;margin:0;transition:none}}.role-admin .student-sidebar{overflow-anchor:none;-webkit-backdrop-filter:blur(24px)saturate(125%);background:linear-gradient(165deg,#4d42a6f0,#6558c6e6 54%,#494193f0);border:1px solid #ffffff3d;box-shadow:0 18px 44px #463a8f33,inset 0 1px #ffffff1f}.role-admin .student-sidebar:after{opacity:.42;background:linear-gradient(#d8d1ff29,#6d5dfb14);display:block;box-shadow:0 0 30px #6d5dfb24}.role-admin .sidebar-brand{border-bottom:1px solid #a78bfa1f}.role-admin .sidebar-brand-en{color:#e2deffd1}.role-admin .sidebar-menu-wrap::-webkit-scrollbar-thumb{background:#a78bfa4d}.role-admin .sidebar-menu-item:hover{background:#ffffff1a}.role-admin .sidebar-menu-item.active{background:linear-gradient(90deg,#ffffff30,#ffffff1a);box-shadow:inset 0 0 0 1px #fff3,0 8px 18px #362b791a}.role-admin .sidebar-menu-item.active:before{background:linear-gradient(#e8e5ff,#b8aeff)}.role-admin .sidebar-menu-item.active .sidebar-menu-icon{background:#a78bfa38;box-shadow:inset 0 0 0 1px #a78bfa52}.role-admin .sidebar-menu-item.active .sidebar-menu-icon svg,.role-admin .sidebar-menu-item.active .sidebar-menu-text{color:#fff}.role-admin .sidebar-menu-icon svg{color:#ffffffd9}.role-admin .sidebar-menu-item:hover .sidebar-menu-icon{background:#ffffff1a}.role-admin .sidebar-menu-item .menu-tooltip{background:#4c1d95;box-shadow:0 6px 18px #4c1d9533}.role-admin .sidebar-menu-item .menu-tooltip:before{border-right-color:#4c1d95}.role-admin .sidebar-pin-btn{color:#ffffffb3;background:#a78bfa1f;border:1px solid #ffffff1c}.role-admin .sidebar-pin-btn:hover{color:#fff;background:#a78bfa38;border-color:#ffffff38}.role-admin .sidebar-pin-btn.pinned{color:#fff;background:#a78bfa40;border-color:#a78bfa73;box-shadow:0 0 18px #a78bfa2e,inset 0 0 0 1px #ffffff0f}.role-admin .sidebar-user-info:hover{background:#a78bfa1f}.role-admin .sidebar-user-role{color:#ffffffa6}.role-admin .sidebar-logout-btn{color:#ffffff80;background:#ffffff08;border:1px solid #a78bfa14}.role-admin .sub-nav-panel{-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff;border:1px solid #7c3aed2e;box-shadow:0 12px 32px #5b21b624}.role-admin .sub-nav-item{color:#4c1d95}.role-admin .sub-nav-item:hover{color:#5b21b6;background:#f5f3ff}.role-admin .sub-nav-item.active{color:#5b21b6;background:#ede9fe;font-weight:600}.role-admin .welcome-banner{box-shadow:0 8px 28px #5b21b626;background:linear-gradient(135deg,#5b21b6 0%,#7c3aed 50%,#a78bfa 100%)!important}.role-admin .welcome-banner.admin-banner{background:linear-gradient(135deg,#5b21b6 0%,#7c3aed 50%,#8b5cf6 100%)!important}.role-admin .stat-card{border:1px solid var(--stu-border,#7c3aed1f);box-shadow:0 12px 32px #5b21b60f}.role-admin .stat-card:hover{border-color:#a78bfa80;box-shadow:0 18px 42px #5b21b61a}.role-admin .stat-value{color:var(--stu-primary,#7c3aed)}.role-admin .card{border:1px solid var(--stu-border,#7c3aed1f);box-shadow:0 12px 32px #5b21b60f}.role-admin .card:hover{border-color:#a78bfa4d;box-shadow:0 16px 40px #5b21b617}.role-admin .card-title{color:var(--stu-dark,#5b21b6)}.role-admin .btn-primary{color:#fff;background:#7c3aed;border-color:#7c3aed}.role-admin .btn-primary:hover:not(:disabled){background:#6d28d9;border-color:#6d28d9}.role-admin .btn-link{color:#7c3aed}.role-admin .btn-link:hover{background:#f5f3ff}.role-admin input:focus,.role-admin select:focus,.role-admin textarea:focus{border-color:#7c3aed!important;box-shadow:0 0 0 3px #7c3aed1a!important}.role-admin .btn-retry{box-shadow:0 6px 20px #7c3aed40;background:linear-gradient(135deg,#7c3aed,#8b5cf6)!important}.role-admin .btn-retry:hover{box-shadow:0 10px 28px #7c3aed59}.role-admin .tab-btn.active{color:#5b21b6!important;border-bottom-color:#7c3aed!important}.role-admin .table-container{overflow-x:auto}.role-admin .admin-users-table-container{overscroll-behavior-inline:contain}.role-admin .admin-users-table{table-layout:auto;min-width:1580px}.role-admin .admin-users-table th,.role-admin .admin-users-table td{vertical-align:middle;white-space:nowrap}.role-admin .admin-users-table th:nth-child(6),.role-admin .admin-users-table td:nth-child(6){min-width:180px}.role-admin .admin-users-table th:last-child,.role-admin .admin-users-table td:last-child{min-width:270px;position:sticky;right:0;box-shadow:-10px 0 18px -18px #34265cb3}.role-admin .admin-users-table th:last-child{z-index:2;background:#f8f9fa!important}.role-admin .admin-users-table td:last-child{z-index:1;background:#fff}.role-admin .admin-users-table tr:hover td:last-child{background:#fcfbff}.role-admin table{border-collapse:collapse;width:100%;font-size:.9rem}.role-admin table th{text-align:left;color:var(--stu-text-muted);text-transform:uppercase;letter-spacing:.04em;border-bottom:2px solid var(--stu-border);background:#ffffff80;padding:12px 14px;font-size:.82rem;font-weight:600}.role-admin table td{border-bottom:1px solid var(--stu-border);color:var(--stu-text);padding:12px 14px}.role-admin table tr:hover td{background:#a78bfa0a}.role-admin .search-bar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:20px;display:flex}.role-admin .search-bar input,.role-admin .search-bar select{border:1px solid var(--stu-border);border-radius:var(--stu-radius-sm);font-size:.88rem;font-family:var(--font);color:var(--stu-text);background:#fffc;outline:none;padding:9px 14px;transition:border-color .2s,box-shadow .2s}.role-admin .search-bar input{flex:1;min-width:200px}.role-admin .pagination{justify-content:center;align-items:center;gap:8px;margin-top:20px;padding:12px 0;display:flex}.role-admin .pagination button{border:1px solid var(--stu-border);border-radius:var(--stu-radius-sm);color:var(--stu-text);cursor:pointer;font-size:.85rem;font-family:var(--font);background:#fffc;padding:6px 14px;transition:all .2s}.role-admin .pagination button:hover:not(:disabled){border-color:var(--stu-primary);color:var(--stu-primary)}.role-admin .pagination button.active{background:var(--stu-primary);color:#fff;border-color:var(--stu-primary)}.role-admin .pagination button:disabled{opacity:.4;cursor:not-allowed}.role-admin .pagination .page-info{color:var(--stu-text-muted);font-size:.85rem}.role-admin .tag{border-radius:12px;padding:3px 10px;font-size:.78rem;font-weight:500;display:inline-block}.role-admin .tag-active{color:#065f46;background:#d1fae5}.role-admin .tag-disabled{color:#991b1b;background:#fee2e2}.role-admin .tag-pending{color:#92400e;background:#fef3c7}.role-admin .tag-approved{color:#065f46;background:#d1fae5}.role-admin .tag-rejected{color:#991b1b;background:#fee2e2}.role-admin .tag-admin{color:#5b21b6;background:#ede9fe}.role-admin .tag-teacher{color:#c2410c;background:#fff3e0}.role-admin .tag-student{color:#1e40af;background:#dbeafe}.role-admin .action-btns{flex-wrap:wrap;gap:6px;display:flex}.role-admin .action-btns button{border:1px solid var(--stu-border);cursor:pointer;color:var(--stu-text);font-size:.8rem;font-family:var(--font);background:#fffc;border-radius:8px;padding:4px 12px;transition:all .2s}.role-admin .action-btns button:hover{border-color:var(--stu-primary);background:var(--primary-light,#f5f3ff);color:var(--stu-primary)}.role-admin .action-btns .btn-danger{color:#dc2626;border-color:#fca5a5}.role-admin .action-btns .btn-danger:hover{background:#fef2f2;border-color:#dc2626}.role-admin .modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000059;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.role-admin .modal-box{border-radius:var(--stu-radius);border:1px solid var(--stu-border);background:#fff;width:90%;max-width:540px;max-height:85vh;padding:28px;overflow-y:auto;box-shadow:0 24px 64px #5b21b626}.role-admin .modal-box h3{color:var(--stu-dark);margin-bottom:18px;font-size:1.1rem}.role-admin .modal-box .form-group{margin-bottom:14px}.role-admin .modal-box .form-group label{color:var(--stu-text-secondary);margin-bottom:4px;font-size:.85rem;font-weight:500;display:block}.role-admin .modal-box .form-group input,.role-admin .modal-box .form-group select,.role-admin .modal-box .form-group textarea{border:1px solid var(--stu-border);width:100%;font-size:.9rem;font-family:var(--font);color:var(--stu-text);border-radius:8px;outline:none;padding:9px 12px;transition:border-color .2s}.role-admin .modal-box .form-group textarea{resize:vertical;min-height:80px}.role-admin .modal-box .modal-actions{justify-content:flex-end;gap:10px;margin-top:20px;display:flex}.role-admin .modal-box .modal-actions button{font-size:.88rem;font-family:var(--font);cursor:pointer;border-radius:10px;padding:8px 22px;transition:all .2s}.role-admin .modal-box .modal-actions .btn-cancel{border:1px solid var(--stu-border);color:var(--stu-text-secondary);background:0 0}.role-admin .modal-box .modal-actions .btn-cancel:hover{background:#00000008}.role-admin .modal-box .modal-actions .btn-confirm{background:var(--stu-primary);color:#fff;border:none}.role-admin .modal-box .modal-actions .btn-confirm:hover{background:var(--primary-hover,#6d28d9)}.role-admin .detail-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;margin-bottom:20px;display:grid}.role-admin .detail-item{border-radius:var(--stu-radius-sm);background:#a78bfa0f;flex-direction:column;gap:4px;padding:12px 16px;display:flex}.role-admin .detail-item .detail-label{color:var(--stu-text-muted);font-size:.78rem}.role-admin .detail-item .detail-value{color:var(--stu-text);font-size:.92rem;font-weight:500}.role-admin .empty-state{text-align:center;color:var(--stu-text-muted);padding:48px 24px}.role-admin .empty-state .empty-icon{margin-bottom:12px;font-size:2.5rem}.role-admin .empty-state p{font-size:.92rem}.role-admin .loading-state{text-align:center;color:var(--stu-text-muted);padding:48px 24px}.role-admin .loading-spinner{border:3px solid var(--stu-border);border-top-color:var(--stu-primary);border-radius:50%;width:32px;height:32px;margin-bottom:12px;animation:.8s linear infinite admin-spin;display:inline-block}@keyframes admin-spin{to{transform:rotate(360deg)}}.role-admin .toast-container{z-index:9999;flex-direction:column;gap:8px;display:flex;position:fixed;top:20px;right:20px}.role-admin .toast-item{border-radius:12px;max-width:360px;padding:12px 20px;font-size:.88rem;font-weight:500;animation:.3s admin-toast-in;box-shadow:0 8px 24px #5b21b61f}.role-admin .toast-item.toast-success{color:#065f46;background:#d1fae5;border:1px solid #a7f3d0}.role-admin .toast-item.toast-error{color:#991b1b;background:#fee2e2;border:1px solid #fca5a5}@keyframes admin-toast-in{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.role-admin .section-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.role-admin .section-header h2{color:var(--stu-dark);font-size:1.25rem;font-weight:700}.role-admin .btn-sm{font-size:.85rem;font-family:var(--font);cursor:pointer;border:none;border-radius:10px;align-items:center;gap:6px;padding:7px 18px;font-weight:600;transition:all .2s;display:inline-flex}.role-admin .btn-sm.btn-primary{background:var(--stu-primary);color:#fff}.role-admin .btn-sm.btn-primary:hover{background:var(--primary-hover,#6d28d9)}.role-admin .btn-sm.btn-secondary{color:var(--stu-primary);border:1px solid var(--stu-border);background:#a78bfa1a}.role-admin .btn-sm.btn-secondary:hover{background:#a78bfa2e}.role-admin .btn-sm.btn-danger{color:#991b1b;background:#fee2e2}.role-admin .btn-sm.btn-danger:hover{background:#fecaca}.role-admin .course-card-item{border:1px solid var(--stu-border);border-radius:var(--stu-radius);cursor:pointer;border-left:4px solid var(--stu-primary);background:#ffffffdb;padding:20px;transition:all .25s}.role-admin .course-card-item:hover{border-color:#a78bfa66;transform:translateY(-2px);box-shadow:0 12px 32px #5b21b614}.role-admin .course-card-item h4{color:var(--stu-text);margin-bottom:6px;font-size:1rem}.role-admin .course-card-item .course-meta{color:var(--stu-text-muted);flex-wrap:wrap;gap:16px;font-size:.82rem;display:flex}.role-admin{--page-bg:#fafaff;--text-main:#1e1b2e;--text-sub:#6d5e8a;--text-hint:#9b8db5;--border-soft:#7c3aed1a;--border-medium:#7c3aed26;--shadow-card:0 4px 20px #5b21b60f;--shadow-card-hover:0 12px 32px #5b21b61a;--shadow-elevated:0 16px 48px #5b21b61f}.role-admin .admin-links{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;display:grid}.role-admin .admin-link-item{border:1px solid var(--stu-border);border-radius:var(--stu-radius-sm);cursor:pointer;background:#ffffffb3;align-items:center;gap:12px;padding:16px;transition:all .2s;display:flex}.role-admin .admin-link-item:hover{background:#a78bfa14;border-color:#a78bfa80}.role-admin .admin-dashboard-toolbar,.role-admin .admin-list-summary,.role-admin .admin-page-actions,.role-admin .admin-filter-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.role-admin .admin-dashboard-toolbar h2,.role-admin .admin-page-heading h2{color:var(--stu-dark);margin:0;font-size:1.35rem}.role-admin .admin-dashboard-toolbar p,.role-admin .admin-page-heading p,.role-admin .section-header p,.role-admin .admin-recovery-warning p{color:var(--stu-text-secondary);margin:5px 0 0;font-size:.86rem;line-height:1.55}.role-admin .stat-meta{color:var(--stu-text-muted);margin-top:7px;font-size:.72rem;line-height:1.35}.role-admin .admin-recovery-warning{background:#fffbeb;border-left:4px solid #d97706}.role-admin .admin-recovery-warning ul{color:#6b4f16;margin:12px 0 0;padding-left:20px;font-size:.84rem;line-height:1.7}.role-admin .admin-link-icon{width:38px;height:38px;color:var(--stu-primary);background:var(--stu-bg-soft);border-radius:11px;flex:none;place-items:center;display:grid}.role-admin .admin-link-icon svg{width:20px;height:20px}.role-admin .admin-link-info{flex:auto;gap:3px;min-width:0;display:grid}.role-admin .admin-link-title{color:var(--stu-text);text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:650;overflow:hidden}.role-admin .admin-link-desc{color:var(--stu-text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;overflow:hidden}.role-admin .admin-page-heading{margin-bottom:0}.role-admin .admin-filter-bar{align-items:end;margin-bottom:0;padding:14px}.role-admin .admin-filter-bar>label{flex:150px;gap:6px;min-width:130px;display:grid}.role-admin .admin-filter-bar>label:first-child,.role-admin .admin-filter-bar>label:nth-child(4){flex-basis:210px}.role-admin .admin-filter-bar label>span{color:var(--stu-text-secondary);font-size:.75rem;font-weight:650}.role-admin .admin-filter-input,.role-admin .admin-filter-select{box-sizing:border-box;width:100%;min-width:0;min-height:38px}.role-admin .admin-filter-actions{flex:none;justify-content:flex-start}.role-admin .admin-list-summary{color:var(--stu-text-secondary);margin-bottom:12px;font-size:.82rem}.role-admin .admin-list-summary .btn-link{font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;display:inline-flex}.role-admin .admin-list-summary svg,.role-admin .admin-page-actions svg,.role-admin .admin-filter-actions svg,.role-admin .admin-dashboard-toolbar svg{width:16px;height:16px}.role-admin .admin-data-table{table-layout:fixed;min-width:920px}.role-admin .admin-data-table th:first-child{width:30%}.role-admin .admin-data-table th:nth-child(2){width:13%}.role-admin .admin-data-table th:nth-child(3){width:15%}.role-admin .admin-data-table th:nth-child(4){width:11%}.role-admin .admin-data-table th:nth-child(5){width:18%}.role-admin .admin-data-table th:last-child{width:13%}.role-admin .admin-data-table tr.is-unread td{background:#fcfbff}.role-admin .admin-data-table td{vertical-align:middle}.role-admin .admin-data-table td small{color:var(--stu-text-muted);margin-top:4px;display:block}.role-admin .admin-notification-title-cell strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.role-admin .admin-notification-summary{color:var(--stu-text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:5px 0 0;font-size:.78rem;font-weight:400;line-height:1.45;display:-webkit-box;overflow:hidden}.role-admin .admin-action-complete{color:var(--stu-text-muted);font-size:.78rem}.role-admin .modal-box .section-header{align-items:flex-start}.role-admin .modal-box .section-header h3{margin-bottom:0}.admin-modal-open{overflow:hidden}.admin-modal-backdrop,.admin-drawer-backdrop{z-index:1200;background:#1e1b2e6b;padding:18px;display:flex;position:fixed;inset:0}.admin-modal-backdrop{justify-content:center;align-items:center}.admin-drawer-backdrop{justify-content:flex-end;padding:0}.admin-modal,.admin-drawer{box-sizing:border-box;color:#1e1b2e;font-family:var(--font,system-ui, sans-serif);background:#fff;border:1px solid #e8e0f0;box-shadow:0 24px 60px #1e1b2e38}.admin-modal{border-radius:16px;width:min(560px,100%);max-height:calc(100vh - 36px);padding:20px;overflow:auto}.admin-drawer{width:min(560px,100vw);height:100%;padding:20px;overflow:auto}.admin-modal-header,.admin-drawer-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:18px;display:flex}.admin-modal-header h3,.admin-drawer-header h3{margin:0}.admin-modal-header p{color:#6d5e8a;margin:6px 0 0;line-height:1.5}.admin-dialog-footer{border-top:1px solid #e8e0f0;justify-content:flex-end;gap:8px;margin-top:18px;padding-top:14px;display:flex}.admin-button,.admin-icon-button{color:#fff;min-height:36px;font:650 13px/1 var(--font,system-ui, sans-serif);cursor:pointer;background:#7c3aed;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:7px;padding:8px 13px;display:inline-flex}.admin-icon-button{width:36px;padding:7px}.admin-button:hover,.admin-icon-button:hover{background:#6d28d9}.admin-button:active:not(:disabled),.admin-icon-button:active:not(:disabled){filter:saturate(1.12);transform:translateY(1px)}.admin-button:focus-visible,.admin-icon-button:focus-visible{outline-offset:2px;outline:3px solid #7c3aed2e}.admin-button:disabled,.admin-button.is-loading{opacity:.55;cursor:not-allowed}.admin-button.is-secondary{color:#4c4562;background:#fff;border-color:#e8e0f0}.admin-button.is-ghost{color:#7c3aed;background:0 0}.admin-button.is-danger{color:#b4233c;background:#fff1f3;border-color:#f4c7cf}.admin-button svg,.admin-icon-button svg{width:16px;height:16px}.admin-field{gap:6px;min-width:0;display:grid}.admin-field>label{color:#4c4562;font-size:.8rem;font-weight:650}.admin-input,.admin-select,.admin-textarea{box-sizing:border-box;color:#1e1b2e;width:100%;min-width:0;font:.88rem/1.4 var(--font,system-ui, sans-serif);background:#fff;border:1px solid #e0d7ec;border-radius:9px;padding:9px 11px}.admin-textarea{resize:vertical;min-height:100px}.admin-input:focus,.admin-select:focus,.admin-textarea:focus{border-color:#7c3aed;outline:0;box-shadow:0 0 0 3px #7c3aed1a}.admin-toast-region{z-index:1400;pointer-events:none;gap:8px;width:min(380px,100vw - 32px);display:grid;position:fixed;top:22px;right:22px}.admin-toast{color:#1e1b2e;pointer-events:auto;background:#fff;border:1px solid #d8d1ff;border-left:4px solid #0f9f8f;border-radius:10px;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:9px;padding:11px 14px;font-size:.84rem;line-height:1.45;display:grid;box-shadow:0 10px 28px #1e1b2e1f}.admin-toast.is-error{border-left-color:#e11d48}.admin-toast svg{color:#7c3aed;width:20px;height:20px}@media (width<=900px){.role-admin .admin-filter-bar>label{flex-basis:calc(50% - 8px)}.role-admin .admin-filter-actions{width:100%}}@media (width<=600px){.role-admin .admin-filter-bar>label{flex-basis:100%}.role-admin .admin-filter-actions .btn-sm,.role-admin .admin-page-actions .btn-sm{flex:auto}.admin-toast-region{width:auto;top:14px;left:16px;right:16px}}.role-admin .admin-page{gap:16px;width:100%;min-width:0;max-width:none;margin:0;padding:0;display:grid}.role-admin .admin-page>section,.role-admin .admin-page>div{min-width:0}.role-admin .admin-page-header{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}@media (width>=721px){.role-admin .admin-page-header{box-sizing:border-box;padding-right:156px}}.role-admin .admin-page-header h2{color:var(--stu-dark);margin:0;font-size:1.35rem;line-height:1.3}.role-admin .admin-page-header p{max-width:820px;color:var(--stu-text-secondary);margin:5px 0 0;font-size:.84rem;line-height:1.6}.role-admin .admin-header-actions,.role-admin .admin-inline-actions,.admin-drawer .admin-inline-actions,.admin-modal .admin-inline-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.role-admin .admin-header-actions{justify-content:flex-end}.admin-button{text-decoration:none;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s}.admin-button.is-secondary:hover{color:#6d28d9;background:#f5f3ff;border-color:#c4b5fd}.admin-button.is-ghost:hover{color:#5b21b6;background:#f5f3ff}.admin-button.is-danger:hover{color:#9f1239;background:#ffe4e6;border-color:#fda4af}.role-admin .admin-card,.admin-drawer .admin-card,.admin-modal .admin-card{border:1px solid var(--stu-border,#e8e0f0);color:#1e1b2e;background:#fff;border-radius:14px;min-width:0;padding:16px;box-shadow:0 4px 16px #5b21b60d}.admin-drawer .admin-card,.admin-modal .admin-card{border-color:#e8e0f0}.role-admin .admin-card-header,.admin-drawer .admin-card-header,.admin-modal .admin-card-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:13px;display:flex}.role-admin .admin-card-header h3,.admin-drawer .admin-card-header h3,.admin-modal .admin-card-header h3{color:#33284d;margin:0;font-size:.96rem}.role-admin .admin-card-header p,.admin-drawer .admin-card-header p,.admin-modal .admin-card-header p{color:#6d5e8a;margin:4px 0 0;font-size:.76rem;line-height:1.5}.role-admin .admin-choice-list,.admin-drawer .admin-choice-list{background:#fff;border:1px solid #e8e0f0;border-radius:11px;max-height:280px;margin-top:10px;display:grid;overflow:auto}.role-admin .admin-choice,.admin-drawer .admin-choice{cursor:pointer;border-bottom:1px solid #f0ecf5;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.role-admin .admin-choice:last-child,.admin-drawer .admin-choice:last-child{border-bottom:0}.role-admin .admin-choice:hover,.admin-drawer .admin-choice:hover{background:#fcfbff}.role-admin .admin-choice input,.admin-drawer .admin-choice input{width:16px;height:16px;accent-color:var(--stu-primary,#6d5dfb);margin-top:2px}.role-admin .admin-choice span,.admin-drawer .admin-choice span{gap:3px;min-width:0;display:grid}.role-admin .admin-choice strong,.admin-drawer .admin-choice strong{color:#332b45;font-size:.78rem}.role-admin .admin-choice small,.admin-drawer .admin-choice small{color:#8c809e;font-size:.7rem}.role-admin .admin-metric-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;display:grid}.role-admin .admin-metric-card{border:1px solid var(--stu-border);background:#fff;border-radius:14px;min-width:0;min-height:108px;padding:15px;position:relative;overflow:hidden}.role-admin .admin-metric-card:after{background:var(--metric-color,var(--stu-primary));content:"";opacity:.07;border-radius:50%;width:66px;height:66px;position:absolute;top:-22px;right:-18px}.role-admin .admin-metric-label{color:var(--stu-text-secondary);font-size:.76rem;font-weight:650}.role-admin .admin-metric-value{color:var(--stu-text);letter-spacing:-.02em;text-overflow:ellipsis;white-space:nowrap;margin-top:12px;font-size:1.65rem;font-weight:750;overflow:hidden}.role-admin .admin-metric-context{color:var(--stu-text-muted);margin-top:7px;font-size:.7rem;line-height:1.4}.role-admin .admin-grid-3{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;display:grid}.role-admin .admin-filter-bar{border:1px solid var(--stu-border);background:#fdfcff;border-radius:13px;flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.role-admin .admin-filter-bar .admin-field{flex:160px}.role-admin .admin-filter-bar .admin-field.is-search{flex-basis:240px}.role-admin .admin-filter-bar>.admin-button{flex:none}.role-admin .admin-table-wrap,.admin-drawer .admin-table-wrap,.admin-modal .admin-table-wrap{background:#fff;border:1px solid #e8e0f0;border-radius:11px;width:100%;min-width:0;overflow:auto}.role-admin .admin-table,.admin-drawer .admin-table,.admin-modal .admin-table{border-collapse:collapse;width:100%;min-width:720px;font-size:.76rem}.role-admin .admin-table th,.admin-drawer .admin-table th,.admin-modal .admin-table th{z-index:1;color:#5c516f;letter-spacing:0;text-align:left;text-transform:none;white-space:nowrap;background:#f8f7fc;height:42px;padding:9px 12px;font-size:.72rem;font-weight:700;position:sticky;top:0}.role-admin .admin-table td,.admin-drawer .admin-table td,.admin-modal .admin-table td{color:#332b45;vertical-align:middle;border-top:1px solid #f0ecf5;border-bottom:0;height:48px;padding:9px 12px}.role-admin .admin-table tbody tr:hover td,.admin-drawer .admin-table tbody tr:hover td,.admin-modal .admin-table tbody tr:hover td{background:#fcfbff}.role-admin .admin-table code,.admin-drawer .admin-table code{color:#5b21b6;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.72rem}.role-admin .admin-table small,.admin-drawer .admin-table small{color:var(--stu-text-muted,#8c809e)}.role-admin .admin-table .admin-button{white-space:nowrap;min-height:32px;padding:6px 9px;font-size:.72rem}.role-admin .admin-badge,.admin-drawer .admin-badge,.admin-modal .admin-badge{color:#5e6675;white-space:nowrap;background:#f2f4f7;border-radius:999px;align-items:center;gap:5px;max-width:190px;padding:4px 8px;font-size:.68rem;font-weight:700;display:inline-flex}.role-admin .admin-badge:before,.admin-drawer .admin-badge:before,.admin-modal .admin-badge:before{content:"";background:#98a2b3;border-radius:50%;flex:none;width:6px;height:6px}.role-admin .admin-badge.is-success,.admin-drawer .admin-badge.is-success,.admin-modal .admin-badge.is-success{color:#087f72;background:#ecfdf8}.role-admin .admin-badge.is-success:before,.admin-drawer .admin-badge.is-success:before,.admin-modal .admin-badge.is-success:before{background:#0f9f8f}.role-admin .admin-badge.is-warning,.admin-drawer .admin-badge.is-warning,.admin-modal .admin-badge.is-warning{color:#9a5b08;background:#fffaeb}.role-admin .admin-badge.is-warning:before,.admin-drawer .admin-badge.is-warning:before,.admin-modal .admin-badge.is-warning:before{background:#d97706}.role-admin .admin-badge.is-danger,.admin-drawer .admin-badge.is-danger,.admin-modal .admin-badge.is-danger{color:#b4233c;background:#fff1f3}.role-admin .admin-badge.is-danger:before,.admin-drawer .admin-badge.is-danger:before,.admin-modal .admin-badge.is-danger:before{background:#e11d48}.role-admin .admin-badge.is-info,.admin-drawer .admin-badge.is-info,.admin-modal .admin-badge.is-info{color:#1d4ed8;background:#eff6ff}.role-admin .admin-badge.is-info:before,.admin-drawer .admin-badge.is-info:before,.admin-modal .admin-badge.is-info:before{background:#2563eb}.role-admin .admin-tabs{border:1px solid var(--stu-border);background:#f1eef7;border-radius:11px;gap:4px;max-width:100%;padding:4px;display:flex;overflow-x:auto}.role-admin .admin-tab{min-height:34px;color:var(--stu-text-secondary);font:650 .76rem/1 var(--font,system-ui, sans-serif);white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:7px 12px}.role-admin .admin-tab:hover{color:var(--stu-primary);background:#fff9}.role-admin .admin-tab.is-active{color:var(--stu-primary);background:#fff;box-shadow:0 1px 4px #5b21b614}.role-admin .admin-empty,.role-admin .admin-error{min-height:170px;color:var(--stu-text-secondary);text-align:center;background:#fdfcff;border:1px dashed #d9d1e3;border-radius:12px;place-items:center;padding:26px;display:grid}.role-admin .admin-empty svg,.role-admin .admin-error svg{color:#8e80a6;width:34px;height:34px;margin-bottom:9px}.role-admin .admin-empty strong,.role-admin .admin-error strong{color:#4c4562}.role-admin .admin-empty p,.role-admin .admin-error p{margin:7px 0 14px;line-height:1.55}.role-admin .admin-error{color:#9f1239;background:#fff8f9;border-color:#f4c7cf}.role-admin .admin-skeleton{background:#f1eef5;border:1px solid #ece7f2;border-radius:12px;min-height:120px;position:relative;overflow:hidden}.role-admin .admin-skeleton:after{content:"";background:linear-gradient(90deg,#0000,#fffc,#0000);animation:1.2s infinite admin-recovery-shimmer;position:absolute;inset:0;transform:translate(-100%)}@keyframes admin-recovery-shimmer{to{transform:translate(100%)}}.admin-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;display:grid}.admin-field.is-wide{grid-column:1/-1}.admin-field>label .required,.admin-field .required{color:#c81e4b}.admin-help,.admin-field>small{color:#766a89;font-size:.7rem;line-height:1.45}.admin-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236D5E8A' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;background-size:15px;min-height:38px;padding-right:34px}.admin-drawer input[type=checkbox],.admin-modal input[type=checkbox],.role-admin .admin-page input[type=checkbox]{vertical-align:-3px;appearance:none;cursor:pointer;background:#fff;border:1px solid #bdb2cd;border-radius:4px;width:16px;height:16px;margin:0 5px 0 0}.admin-drawer input[type=checkbox]:checked,.admin-modal input[type=checkbox]:checked,.role-admin .admin-page input[type=checkbox]:checked{background:#7c3aed;border-color:#7c3aed;box-shadow:inset 0 0 0 3px #fff}.role-admin .admin-pagination{color:var(--stu-text-secondary);justify-content:space-between;align-items:center;gap:12px;padding-top:12px;font-size:.76rem;display:flex}.role-admin .admin-pagination-actions{gap:6px;display:flex}.role-admin .admin-provider-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:13px;display:grid}.role-admin .admin-provider-card{border:1px solid var(--stu-border);background:#fff;border-radius:14px;min-width:0;padding:16px;box-shadow:0 3px 12px #5b21b60a}.role-admin .admin-provider-card>header{grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.role-admin .admin-provider-card h3{color:var(--stu-text);margin:0;font-size:.9rem}.role-admin .admin-provider-card header p{color:var(--stu-text-secondary);margin:3px 0 0;font-size:.7rem}.role-admin .admin-provider-mark{width:42px;height:42px;color:var(--stu-primary);background:var(--stu-bg-soft);border-radius:11px;place-items:center;display:grid}.role-admin .admin-provider-mark svg{width:25px;height:25px}.role-admin .admin-provider-card dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:15px 0;display:grid}.role-admin .admin-provider-card dl div{background:#f8f7fc;border-radius:9px;min-width:0;padding:9px}.role-admin .admin-provider-card dt{color:var(--stu-text-secondary);font-size:.66rem}.role-admin .admin-provider-card dd{color:var(--stu-text);text-overflow:ellipsis;white-space:nowrap;margin:4px 0 0;font-size:.76rem;font-weight:700;overflow:hidden}.role-admin .admin-provider-url{color:var(--stu-text-secondary);text-overflow:ellipsis;white-space:nowrap;margin:0 0 13px;font:.68rem/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;overflow:hidden}.role-admin .admin-provider-card footer{flex-wrap:wrap;gap:6px;display:flex}.role-admin .admin-provider-card footer .admin-button{min-height:32px;padding:6px 9px;font-size:.7rem}.role-admin .admin-environment-item{grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.role-admin .admin-environment-item>div{width:38px;height:38px;color:var(--stu-primary);background:var(--stu-bg-soft);border-radius:10px;place-items:center;display:grid}.role-admin .admin-environment-item svg{width:19px;height:19px}.role-admin .admin-environment-item h3,.role-admin .admin-environment-item p{margin:0}.role-admin .admin-environment-item h3{text-transform:capitalize;font-size:.8rem}.role-admin .admin-environment-item p{color:var(--stu-text-secondary);font-size:.7rem}.admin-drawer .admin-trace-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:18px;display:grid}.admin-drawer .admin-trace-summary>div{background:#f8f7fc;border-radius:9px;gap:4px;min-width:0;padding:10px;display:grid}.admin-drawer .admin-trace-summary span{color:#766a89;font-size:.66rem}.admin-drawer .admin-trace-summary code{color:#4c1d95;text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;overflow:hidden}.admin-drawer .admin-timeline{margin:8px 0 18px 15px;display:grid;position:relative}.admin-drawer .admin-timeline:before{content:"";background:#d9d1e3;width:1px;position:absolute;top:14px;bottom:14px;left:13px}.admin-drawer .admin-timeline-node{grid-template-columns:28px minmax(0,1fr);gap:12px;padding-bottom:14px;display:grid;position:relative}.admin-drawer .admin-timeline-index{z-index:1;color:#fff;background:#7c3aed;border:3px solid #f2f0ff;border-radius:50%;place-items:center;width:28px;height:28px;font-size:.66rem;display:grid}.admin-drawer .admin-timeline-node header{justify-content:space-between;align-items:center;gap:8px;display:flex}.admin-drawer .admin-timeline-node h4{color:#33284d;margin:4px 0;font-size:.8rem}.admin-drawer .admin-timeline-node small{color:#766a89}.admin-drawer .admin-timeline-node pre{color:#4c4562;white-space:pre-wrap;word-break:break-word;background:#f8f7fc;border:1px solid #e8e0f0;border-radius:8px;max-height:180px;margin:8px 0 0;padding:10px;font:.7rem/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;overflow:auto}.role-admin .admin-recovery-isolation,.role-admin .admin-load-warning,.role-admin .admin-inline-warning{color:#6b4f16;background:#fffbeb;border:1px solid #f4d28a;border-left:4px solid #d97706;border-radius:11px;padding:13px 15px}.role-admin .admin-recovery-isolation strong,.role-admin .admin-load-warning strong,.role-admin .admin-inline-warning strong{color:#7a4c06;font-size:.82rem}.role-admin .admin-recovery-isolation p{margin:5px 0 0;font-size:.76rem;line-height:1.55}.role-admin .admin-inline-warning{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.role-admin .admin-inline-warning p{margin:5px 0 0;font-size:.76rem;line-height:1.55}.role-admin .admin-log-description{text-overflow:ellipsis;white-space:nowrap;max-width:300px;overflow:hidden}.role-admin .admin-load-warning ul{margin:7px 0 0;padding-left:18px;font-size:.74rem;line-height:1.55}.role-admin .admin-limited-state{color:#8a5b0a;background:#fffaeb;border-radius:8px;max-width:220px;padding:5px 8px;font-size:.68rem;line-height:1.4;display:inline-flex}@media (width<=720px){.role-admin .admin-inline-warning{flex-direction:column;align-items:flex-start}.role-admin .admin-page-header{display:grid}.role-admin .admin-header-actions{justify-content:flex-start;width:100%}.role-admin .admin-header-actions .admin-button{flex:auto}.admin-form-grid{grid-template-columns:1fr}.admin-field.is-wide{grid-column:auto}.role-admin .admin-pagination{flex-direction:column;align-items:flex-start}.admin-drawer .admin-trace-summary{grid-template-columns:1fr}}@media (width<=480px){.role-admin .admin-provider-grid,.role-admin .admin-grid-3{grid-template-columns:1fr}.role-admin .admin-provider-card>header{grid-template-columns:42px minmax(0,1fr)}.role-admin .admin-provider-card>header .admin-badge{grid-column:1/-1;justify-self:start}}@media (prefers-reduced-motion:reduce){.role-admin .admin-skeleton:after{animation-duration:.01ms;animation-iteration-count:1}}.ai-safety-page{gap:14px;display:grid}.ai-safety-eyebrow{color:#6757d6;letter-spacing:.13em;margin-bottom:5px;font-size:.66rem;font-weight:800;display:block}.ai-safety-header{align-items:flex-end}.ai-safety-frameworks{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;display:grid}.ai-safety-frameworks a{color:#4e4383;background:linear-gradient(145deg,#fff,#f9f7ff);border:1px solid #e4dff7;border-radius:13px;gap:3px;padding:12px 14px;text-decoration:none;transition:transform .16s,border-color .16s;display:grid;box-shadow:0 5px 16px #4a3d910b}.ai-safety-frameworks a:hover{border-color:#bfb4f2;transform:translateY(-1px)}.ai-safety-frameworks strong{font-size:.76rem}.ai-safety-frameworks span{color:#80778f;font-size:.61rem;line-height:1.45}.ai-safety-posture{background:linear-gradient(125deg,#f1fbf7,#fff);border:1px solid #d8e9e4;border-radius:16px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:18px 20px;display:grid;box-shadow:0 9px 24px #1f624c12}.ai-safety-posture.is-medium{background:linear-gradient(125deg,#fff9e9,#fff);border-color:#f1dfb8}.ai-safety-posture.is-high,.ai-safety-posture.is-critical{background:linear-gradient(125deg,#fff1f0,#fff);border-color:#f2c9c7}.ai-safety-posture-icon{color:#16715a;background:#d9f1e9;border-radius:13px;place-items:center;width:46px;height:46px;display:grid}.ai-safety-posture.is-medium .ai-safety-posture-icon{color:#9b6411;background:#faeac1}.ai-safety-posture.is-high .ai-safety-posture-icon,.ai-safety-posture.is-critical .ai-safety-posture-icon{color:#a13732;background:#f7d8d5}.ai-safety-posture>div>span{color:#7b7189;font-size:.65rem}.ai-safety-posture h3{color:#2f6255;margin:2px 0;font-size:1.18rem}.ai-safety-posture.is-medium h3{color:#8a5a13}.ai-safety-posture.is-high h3,.ai-safety-posture.is-critical h3{color:#922e2b}.ai-safety-posture p{color:#786f83;margin:0;font-size:.7rem}.ai-safety-score{text-align:center;background:radial-gradient(circle closest-side,#fff 76%,transparent 78% 99%),conic-gradient(#6d5dfb calc(var(--score)*1%),#ebe7f7 0);border-radius:50%;place-content:center;width:82px;height:82px;display:grid}.ai-safety-score strong{color:#4f4387;font-size:1.05rem}.ai-safety-score span{color:#80778f;font-size:.55rem}.ai-safety-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.ai-safety-metric{background:#fff;border:1px solid #e3def4;border-radius:14px;gap:4px;padding:15px;display:grid}.ai-safety-metric>span{color:#7a7189;font-size:.66rem}.ai-safety-metric strong{color:#40356f;font-size:1.35rem}.ai-safety-metric small{color:#928a9e;font-size:.59rem}.ai-safety-metric.is-good{background:#f8fcfa;border-color:#cde8df}.ai-safety-metric.is-warning{background:#fffdf7;border-color:#f0deb6}.ai-safety-metric.is-danger{background:#fff9f8;border-color:#edc7c4}.ai-safety-standards,.ai-safety-evidence{padding:0;overflow:hidden}.ai-safety-standards>.admin-card-header,.ai-safety-evidence>.admin-card-header{border-bottom:1px solid #eeeaf7;padding:17px 18px}.ai-safety-standards .admin-card-header h3,.ai-safety-evidence .admin-card-header h3{margin:0 0 4px}.ai-safety-standards .admin-card-header p,.ai-safety-evidence .admin-card-header p{color:#857c91;margin:0;font-size:.68rem}.ai-safety-control-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:14px;display:grid}.ai-safety-control{background:#fcfbfe;border:1px solid #e7e3ef;border-radius:13px;flex-direction:column;min-width:0;min-height:270px;padding:14px;display:flex}.ai-safety-control.is-enabled{background:linear-gradient(150deg,#fff,#faf8ff);border-color:#d7d0f2}.ai-safety-control header{justify-content:space-between;align-items:center;gap:8px;display:flex}.ai-safety-control header>div{flex-wrap:wrap;gap:5px;display:flex}.ai-safety-domain,.ai-safety-function,.ai-safety-control-state{color:#6c627a;background:#f0edf7;border-radius:999px;padding:3px 7px;font-size:.55rem;font-weight:700}.ai-safety-function{color:#5d50bd;background:#eeeafe}.ai-safety-control-state{color:#847d7d;background:#f1efef}.ai-safety-control-state.is-ready{color:#26735e;background:#e4f4ed}.ai-safety-control h3{color:#453b69;margin:12px 0 6px;font-size:.83rem}.ai-safety-control>p{color:#7b7385;min-height:42px;margin:0;font-size:.65rem;line-height:1.6}.ai-safety-control ul{gap:6px;margin:10px 0 13px;padding:0;list-style:none;display:grid}.ai-safety-control li{color:#5f5868;padding-left:14px;font-size:.62rem;line-height:1.45;position:relative}.ai-safety-control li:before{content:"";background:#7c6dea;border-radius:50%;width:6px;height:6px;position:absolute;top:.48em;left:1px}.ai-safety-control footer{border-top:1px dashed #e4dfeb;justify-content:space-between;align-items:flex-end;gap:8px;margin-top:auto;padding-top:10px;display:flex}.ai-safety-control footer>div{flex-wrap:wrap;gap:4px;min-width:0;display:flex}.ai-safety-control footer span{color:#766e81;background:#f3f1f7;border-radius:5px;padding:2px 5px;font-size:.5rem}.ai-safety-control footer .admin-button{flex:none;min-height:28px;padding:4px 8px;font-size:.58rem}.ai-safety-evidence .admin-table-wrap{border:0;border-radius:0}.ai-safety-events small{color:#938a9d}.ai-safety-severity{color:#6d637a;text-transform:uppercase;background:#eeeaf6;border-radius:999px;padding:3px 7px;font-size:.57rem;font-weight:750;display:inline-flex}.ai-safety-severity.is-critical{color:#a52f2a;background:#f8d8d6}.ai-safety-severity.is-high{color:#9a5b0a;background:#fae7cd}.ai-safety-severity.is-medium{color:#866900;background:#fff4cd}.ai-safety-empty{color:#82798d;text-align:center;padding:26px;font-size:.7rem}.ai-safety-evidence .admin-inline-actions a{align-items:center;text-decoration:none;display:inline-flex}@media (width<=1100px){.ai-safety-frameworks,.ai-safety-metrics,.ai-safety-control-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.ai-safety-frameworks,.ai-safety-metrics,.ai-safety-control-grid{grid-template-columns:1fr}.ai-safety-posture{grid-template-columns:auto 1fr}.ai-safety-score{background:#f0edfa;border-radius:12px;grid-column:1/-1;width:100%;height:54px}.ai-safety-control{min-height:0}.ai-safety-standards>.admin-card-header,.ai-safety-evidence>.admin-card-header{flex-direction:column;align-items:flex-start}}.role-admin .admin-rbac-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.role-admin .admin-rbac-summary article{border:1px solid var(--stu-border);background:#fff;border-radius:13px;gap:5px;padding:15px;display:grid}.role-admin .admin-rbac-summary article.is-warning{background:#fffbeb;border-color:#f4d28a}.role-admin .admin-rbac-summary span{color:var(--stu-text-secondary);font-size:.7rem}.role-admin .admin-rbac-summary strong{color:var(--stu-text);font-size:1.35rem}.role-admin .admin-rbac-badges{flex-wrap:wrap;gap:5px;display:flex}.role-admin .admin-rbac-role-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;display:grid}.role-admin .admin-rbac-role-card{border:1px solid var(--stu-border);background:#fff;border-radius:13px;gap:12px;min-width:0;padding:15px;display:grid}.role-admin .admin-rbac-role-card header{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.role-admin .admin-rbac-role-card h3{color:var(--stu-text);margin:0 0 3px;font-size:.86rem}.role-admin .admin-rbac-role-card code{color:var(--stu-primary);font-size:.67rem}.role-admin .admin-rbac-role-card>p{min-height:2.8em;color:var(--stu-text-secondary);margin:0;font-size:.7rem;line-height:1.45}.role-admin .admin-rbac-role-card dl{grid-template-columns:repeat(2,1fr);gap:7px;margin:0;display:grid}.role-admin .admin-rbac-role-card dl div{background:#f8f7fc;border-radius:8px;padding:8px}.role-admin .admin-rbac-role-card dt{color:var(--stu-text-secondary);font-size:.64rem}.role-admin .admin-rbac-role-card dd{color:var(--stu-text);margin:3px 0 0;font-size:.83rem;font-weight:700}.admin-drawer .admin-rbac-option-list,.admin-drawer .admin-rbac-permission-groups{gap:9px;margin-bottom:16px;display:grid}.admin-drawer .admin-rbac-option-list>label,.admin-drawer .admin-rbac-permission-groups label{border:1px solid #e8e0f0;border-radius:9px;align-items:flex-start;gap:7px;padding:9px;display:flex}.admin-drawer .admin-rbac-option-list span,.admin-drawer .admin-rbac-permission-groups span{flex:1;gap:3px;min-width:0;display:grid}.admin-drawer .admin-rbac-option-list strong,.admin-drawer .admin-rbac-permission-groups strong{color:#33284d;font-size:.75rem}.admin-drawer .admin-rbac-option-list small{color:#766a89;font-size:.66rem;line-height:1.4}.admin-drawer .admin-rbac-permission-groups fieldset{border:1px solid #e8e0f0;border-radius:10px;margin:0;padding:10px}.admin-drawer .admin-rbac-permission-groups legend{color:#5b21b6;padding:0 6px;font-size:.72rem;font-weight:700}.admin-drawer .admin-rbac-permission-groups code{overflow-wrap:anywhere;color:#766a89;font-size:.62rem}.admin-drawer .admin-rbac-permission-groups em{color:#9f1239;background:#fff1f2;border-radius:5px;padding:2px 5px;font-size:.6rem;font-style:normal}@media (width<=900px){.role-admin .admin-rbac-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=480px){.role-admin .admin-rbac-summary{grid-template-columns:1fr}}.role-admin .admin-dashboard-kpis{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.role-admin .admin-dashboard-kpis .stat-card{min-width:0;padding:17px 14px}.role-admin .admin-metric-groups{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px;display:grid}.role-admin .admin-metric-group{background:#ffffffe8;border:1px solid #6d5dfb21;border-radius:16px;min-width:0;transition:transform .18s,box-shadow .18s,border-color .18s;overflow:hidden;box-shadow:0 10px 28px #463a8f12}.role-admin .admin-metric-group:hover{border-color:#6d5dfb40;transform:translateY(-2px);box-shadow:0 15px 34px #463a8f1c}.role-admin .admin-metric-group>header{box-sizing:border-box;color:#fff;background:linear-gradient(135deg,#6255d4,#8177e7);align-content:center;min-height:96px;padding:16px 18px;display:grid;position:relative}.role-admin .admin-metric-group.is-teaching>header{background:linear-gradient(135deg,#5268be,#7286dc)}.role-admin .admin-metric-group.is-ai>header{background:linear-gradient(135deg,#5d54b9,#8b7dd7)}.role-admin .admin-metric-group.is-risk>header{background:linear-gradient(135deg,#76549d,#9a77bc)}.role-admin .admin-metric-group>header span{opacity:.82;font-size:.72rem}.role-admin .admin-metric-group>header strong{margin-top:3px;font-size:1.8rem;line-height:1}.role-admin .admin-metric-group>header small{opacity:.76;margin-top:5px;font-size:.65rem}.role-admin .admin-metric-group>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:11px 12px 13px;display:grid}.role-admin .admin-compact-metric{border-right:1px solid var(--stu-border);min-width:0;padding-right:8px}.role-admin .admin-compact-metric:last-child{border-right:0;padding-right:0}.role-admin .admin-compact-metric span,.role-admin .admin-compact-metric strong,.role-admin .admin-compact-metric small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.role-admin .admin-compact-metric span{color:var(--stu-text-muted);font-size:.6rem}.role-admin .admin-compact-metric strong{color:var(--stu-text);margin-top:3px;font-size:.88rem}.role-admin .admin-compact-metric small{color:var(--stu-text-muted);margin-top:2px;font-size:.52rem}.role-admin .admin-dashboard-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:14px;margin-top:16px;display:grid}.role-admin .admin-dashboard-grid>.card{min-width:0;margin:0;padding:18px}.role-admin .admin-dashboard-grid .card-title{margin:0;font-size:.94rem}.role-admin .admin-grid-span-4{grid-column:span 4}.role-admin .admin-grid-span-5{grid-column:span 5}.role-admin .admin-grid-span-6{grid-column:span 6}.role-admin .admin-grid-span-7{grid-column:span 7}.role-admin .admin-grid-span-8{grid-column:span 8}.role-admin .admin-grid-span-12{grid-column:span 12}.role-admin .admin-dashboard-insight-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:16px;display:grid}.role-admin .admin-trend-summary,.role-admin .admin-trend-legend{color:var(--stu-text-secondary);flex-wrap:wrap;align-items:center;gap:18px;font-size:.78rem;display:flex}.role-admin .admin-trend-summary strong{color:var(--stu-text);margin-left:4px}.role-admin .admin-trend-chart{border-bottom:1px solid var(--stu-border);grid-template-columns:repeat(14,minmax(32px,1fr));gap:5px;min-width:0;height:220px;margin:16px 0 10px;padding:12px 8px 0;display:grid;overflow:hidden}.role-admin .admin-dashboard-trend-card{overflow:hidden}.role-admin .admin-trend-day{grid-template-rows:minmax(0,1fr) 22px;gap:5px;min-width:0;display:grid}.role-admin .admin-trend-bars{justify-content:center;align-items:flex-end;gap:3px;min-height:0;display:flex}.role-admin .admin-trend-bars i{border-radius:4px 4px 1px 1px;width:min(10px,42%);min-height:0}.role-admin .admin-trend-day>span{color:var(--stu-text-muted);text-align:center;white-space:nowrap;font-size:.58rem;overflow:hidden}.role-admin .admin-trend-bars .is-ai,.role-admin .admin-trend-legend .is-ai{background:#7c3aed}.role-admin .admin-trend-bars .is-learning,.role-admin .admin-trend-legend .is-learning{background:#a78bfa}.role-admin .admin-trend-legend i{border-radius:2px;width:8px;height:8px;margin-right:5px;display:inline-block}.role-admin .admin-distribution-grid{gap:16px;display:grid}.role-admin .admin-distribution-block h4{color:var(--stu-text);margin:0 0 9px;font-size:.82rem}.role-admin .admin-distribution-row{grid-template-columns:60px minmax(0,1fr) 32px;align-items:center;gap:8px;margin-top:8px;display:grid}.role-admin .admin-distribution-row>span{color:var(--stu-text-secondary);font-size:.72rem}.role-admin .admin-distribution-row>div{background:#f1edfa;border-radius:999px;height:7px;overflow:hidden}.role-admin .admin-distribution-row>div i{border-radius:inherit;background:linear-gradient(90deg,#7c3aed,#a78bfa);height:100%;display:block}.role-admin .admin-distribution-row>strong{color:var(--stu-text);text-align:right;font-size:.72rem}.role-admin .admin-data-empty{color:var(--stu-text-muted);margin:0;font-size:.72rem}.role-admin .admin-review-flow{gap:10px;display:grid}.role-admin .admin-review-flow-item{border:1px solid var(--stu-border);color:inherit;background:#fff;border-radius:11px;gap:9px;padding:12px;text-decoration:none;display:grid}.role-admin .admin-review-flow-item:hover{border-color:var(--stu-border-active);background:#fcfaff}.role-admin .admin-review-flow-item h4{color:var(--stu-text);margin:0;font-size:.82rem}.role-admin .admin-review-flow-item>div{flex-wrap:wrap;gap:12px;display:flex}.role-admin .admin-review-flow-item span{color:var(--stu-text-secondary);align-items:baseline;gap:4px;font-size:.68rem;display:inline-flex}.role-admin .admin-review-flow-item b{color:var(--stu-primary);font-size:1rem}.role-admin .admin-composition-stack{gap:17px;display:grid}.role-admin .admin-provider-matrix{gap:7px;max-height:244px;display:grid;overflow:auto}.role-admin .admin-provider-matrix article{border:1px solid var(--stu-border);border-radius:10px;grid-template-columns:9px minmax(0,1fr) auto;align-items:center;gap:8px;padding:9px;display:grid}.role-admin .admin-provider-matrix strong,.role-admin .admin-provider-matrix small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.role-admin .admin-provider-matrix strong{color:var(--stu-text);font-size:.72rem}.role-admin .admin-provider-matrix small{color:var(--stu-text-muted);margin-top:2px;font-size:.58rem}.role-admin .admin-health-dot{background:#b7adc5;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 3px #b7adc524}.role-admin .admin-health-dot.is-available{background:#52a57a;box-shadow:0 0 0 3px #52a57a24}.role-admin .admin-health-dot.is-unavailable,.role-admin .admin-health-dot.is-failed{background:#d76c72;box-shadow:0 0 0 3px #d76c7224}.role-admin .admin-reliability-head{grid-template-columns:auto minmax(0,1fr);align-items:end;gap:2px 10px;margin-bottom:16px;display:grid}.role-admin .admin-reliability-head strong{color:var(--stu-primary);grid-row:span 2;font-size:2rem;line-height:1}.role-admin .admin-reliability-head span{color:var(--stu-text);font-size:.72rem;font-weight:700}.role-admin .admin-reliability-head small{color:var(--stu-text-muted);font-size:.58rem}.role-admin .admin-event-frequency{gap:9px;display:grid}.role-admin .admin-event-frequency>div{grid-template-columns:minmax(100px,1fr) minmax(90px,1.3fr) 34px;align-items:center;gap:9px;display:grid}.role-admin .admin-event-frequency span{color:var(--stu-text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:.67rem;overflow:hidden}.role-admin .admin-event-frequency i{background:#f1edfa;border-radius:99px;height:6px;overflow:hidden}.role-admin .admin-event-frequency b{border-radius:inherit;background:linear-gradient(90deg,#6d5dfb,#a59cf1);height:100%;display:block}.role-admin .admin-event-frequency strong{color:var(--stu-text);text-align:right;font-size:.68rem}.role-admin .admin-todo-list{gap:7px;display:grid}.role-admin .admin-todo-list a{border:1px solid var(--stu-border);color:inherit;border-radius:10px;grid-template-columns:minmax(0,1fr) auto 18px;align-items:center;gap:8px;padding:9px 10px;text-decoration:none;display:grid}.role-admin .admin-todo-list a:hover{border-color:var(--stu-border-active);background:#fbfaff}.role-admin .admin-todo-list span{color:var(--stu-text-secondary);font-size:.7rem}.role-admin .admin-todo-list strong{color:var(--stu-primary);font-size:.72rem}.role-admin .admin-todo-list svg{width:14px;height:14px;color:var(--stu-text-muted)}.role-admin .admin-dashboard-empty{min-height:140px;padding:20px}.role-admin .admin-banner{isolation:isolate;overflow:hidden}.role-admin .admin-banner>:not(.admin-banner-particles){z-index:1;position:relative}.role-admin .admin-banner-particles{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.role-admin .admin-banner-particles i{background:#ffffff7a;border-radius:50%;width:3px;height:3px;animation:8s ease-in-out infinite alternate admin-banner-drift;position:absolute}.role-admin .admin-banner-particles i:first-child{top:28%;left:4%}.role-admin .admin-banner-particles i:nth-child(2){top:66%;left:11%}.role-admin .admin-banner-particles i:nth-child(3){top:19%;left:21%}.role-admin .admin-banner-particles i:nth-child(4){top:74%;left:32%}.role-admin .admin-banner-particles i:nth-child(5){top:38%;left:43%}.role-admin .admin-banner-particles i:nth-child(6){top:17%;left:54%}.role-admin .admin-banner-particles i:nth-child(7){top:69%;left:62%}.role-admin .admin-banner-particles i:nth-child(8){top:31%;left:71%}.role-admin .admin-banner-particles i:nth-child(9){top:77%;left:79%}.role-admin .admin-banner-particles i:nth-child(10){top:22%;left:87%}.role-admin .admin-banner-particles i:nth-child(11){top:56%;left:93%}.role-admin .admin-banner-particles i:nth-child(12){top:82%;left:48%}@keyframes admin-banner-drift{0%{opacity:.25;transform:translateY(5px)scale(.8)}to{opacity:.8;transform:translate(14px,-9px)scale(1.35)}}.role-admin .admin-dashboard-skeleton{gap:16px;display:grid}.role-admin .admin-dashboard-skeleton>div,.role-admin .admin-dashboard-skeleton i{background:linear-gradient(100deg,#f1eefa 20%,#faf9fe 38%,#f1eefa 56%) 0 0/220% 100%;border-radius:14px;animation:1.2s linear infinite admin-dashboard-shimmer;display:block;overflow:hidden}.role-admin .admin-dashboard-skeleton .is-banner{height:132px}.role-admin .admin-dashboard-skeleton .is-toolbar{width:42%;height:42px}.role-admin .admin-dashboard-skeleton .is-metrics{background:0 0;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;height:auto;animation:none;display:grid}.role-admin .admin-dashboard-skeleton .is-metrics i{height:166px}.role-admin .admin-dashboard-skeleton .is-panels{background:0 0;grid-template-columns:2fr 1fr;gap:14px;height:auto;animation:none;display:grid}.role-admin .admin-dashboard-skeleton .is-panels i{height:280px}.role-admin .admin-dashboard-skeleton .is-panels i:last-child{display:none}@keyframes admin-dashboard-shimmer{to{background-position-x:-220%}}@media (width<=900px){.role-admin .admin-dashboard-insight-grid{grid-template-columns:1fr}.role-admin .admin-metric-groups{grid-template-columns:repeat(2,minmax(0,1fr))}.role-admin .admin-grid-span-4,.role-admin .admin-grid-span-5,.role-admin .admin-grid-span-6,.role-admin .admin-grid-span-7,.role-admin .admin-grid-span-8{grid-column:span 12}}@media (width<=600px){.role-admin .admin-dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.role-admin .admin-metric-groups,.role-admin .admin-dashboard-grid{grid-template-columns:1fr}.role-admin .admin-dashboard-grid>.card{grid-column:1}.role-admin .admin-trend-chart{min-width:520px}}.role-admin .admin-module-nav{z-index:90;box-sizing:border-box;-webkit-backdrop-filter:blur(18px)saturate(120%);background:#ffffffdb;border:1px solid #d8d1ffdb;border-radius:14px;align-items:center;gap:12px;width:100%;min-width:0;min-height:48px;margin:0 0 14px;padding:6px 8px 6px 14px;display:flex;position:sticky;top:8px;overflow:hidden;box-shadow:0 8px 24px #463a8f12}.role-admin .admin-module-nav-title{color:#51459a;white-space:nowrap;border-right:1px solid #e8e4f4;flex:none;align-items:center;gap:7px;padding-right:12px;font-size:.78rem;font-weight:750;display:inline-flex}.role-admin .admin-module-nav-title svg{width:17px;height:17px}.role-admin .admin-module-nav-links{scrollbar-width:none;gap:4px;min-width:0;display:flex;overflow-x:auto}.role-admin .admin-module-nav-links::-webkit-scrollbar{display:none}.role-admin .admin-module-nav-link{color:#6a607b;white-space:nowrap;border-radius:9px;align-items:center;min-height:34px;padding:0 13px;font-size:.76rem;font-weight:650;text-decoration:none;transition:color .18s,background-color .18s,box-shadow .18s;display:inline-flex}.role-admin .admin-module-nav-link:hover{color:var(--admin-primary-hover);background:#f6f4ff}.role-admin .admin-module-nav-link.is-active{color:#5146c8;background:#eeeafe;box-shadow:inset 0 0 0 1px #6d5dfb1a}.role-admin .student-main>:not(.admin-module-nav){animation:.22s ease-out both admin-page-enter}@keyframes admin-page-enter{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.role-admin .welcome-banner,.role-admin .agent-market-hero,.role-admin .admin-page-header{isolation:isolate;position:relative}.role-admin .welcome-banner:after,.role-admin .agent-market-hero:after{z-index:-1;border-radius:inherit;content:"";opacity:.7;pointer-events:none;background-image:radial-gradient(circle at 12% 28%,#ffffff57 0 1px,#0000 1.5px),radial-gradient(circle at 78% 35%,#ffffff3d 0 1px,#0000 1.5px),radial-gradient(circle at 64% 78%,#fff3 0 1px,#0000 1.5px),linear-gradient(115deg,#0000 20%,#ffffff14,#0000 64%);background-size:86px 74px,112px 92px,136px 108px,100% 100%;position:absolute;inset:0}.role-admin .welcome-banner,.role-admin .welcome-banner.admin-banner,.role-admin .agent-market-hero{box-shadow:0 14px 34px #51469a29;background:linear-gradient(125deg,#51469a 0%,#6d5dfb 52%,#8a7deb 100%)!important}.role-admin .agent-market-shell{width:100%;max-width:none;padding:0}.role-admin .agent-market-hero{border-radius:18px;min-height:0;margin-bottom:14px;padding:24px 26px}.role-admin .agent-market-hero h1{margin:0;font-size:1.45rem}.role-admin .agent-market-hero p{margin:6px 0 0;font-size:.84rem}.role-admin .page-header,.role-admin .admin-page-header,.role-admin .admin-dashboard-toolbar{margin-bottom:12px}.role-admin .page-title,.role-admin .admin-page-header h2,.role-admin .admin-dashboard-toolbar h2{color:#433875;letter-spacing:-.015em}.role-admin .card,.role-admin .admin-card,.role-admin .stat-card,.role-admin .course-card-item,.role-admin .admin-review-card,.role-admin .admin-provider-card,.role-admin .admin-rbac-role-card{border-color:#d8d1ffa8;transition:transform .18s,border-color .18s,box-shadow .18s;box-shadow:0 7px 22px #463a8f0e}.role-admin .card:hover,.role-admin .admin-card:hover,.role-admin .stat-card:hover,.role-admin .course-card-item:hover,.role-admin .admin-review-card:hover,.role-admin .admin-provider-card:hover,.role-admin .admin-rbac-role-card:hover{border-color:#b8aeffb8;transform:translateY(-1px);box-shadow:0 12px 28px #463a8f16}.role-admin .btn,.role-admin .btn-sm,.role-admin .complex-btn,.role-admin .complex-btn-danger,.role-admin .action-btns button,.role-admin .admin-button{border-radius:9px;min-height:34px;font-family:inherit;transition:transform .15s,border-color .15s,color .15s,background-color .15s,box-shadow .15s}.role-admin .btn-primary,.role-admin .complex-btn,.role-admin .admin-button:not(.is-secondary):not(.is-ghost):not(.is-danger){background:linear-gradient(135deg, var(--admin-primary), #7c70e8);border-color:#0000;box-shadow:0 5px 14px #6d5dfb29}.role-admin .btn:active:not(:disabled),.role-admin .btn-sm:active:not(:disabled),.role-admin .complex-btn:active:not(:disabled),.role-admin .complex-btn-danger:active:not(:disabled),.role-admin .admin-button:active:not(:disabled){transform:scale(.98)}.role-admin :where(button,a,input,select,textarea):focus-visible{outline:3px solid var(--admin-focus-ring);outline-offset:2px}.role-admin .courses-overview-bar{background:#ffffffe0;border:1px solid #d8d1ffa8;border-radius:14px;margin-bottom:12px;padding:12px 14px;box-shadow:0 7px 22px #463a8f0d}.role-admin .search-bar,.role-admin .admin-filter-bar{background:#fdfcfff0;border-color:#d8d1ffb8}.role-admin table th,.role-admin .admin-table th{color:#5f5672;background:#f7f5fc}.role-admin table tr:hover td,.role-admin .admin-table tbody tr:hover td{background:#fbfaff}@media (width<=900px){.role-admin .admin-module-nav{flex-direction:column;align-items:stretch;gap:5px;padding:8px}.role-admin .admin-module-nav-title{border-bottom:1px solid #ece8f5;border-right:0;min-height:28px;padding:0 7px 5px}.role-admin .agent-market-hero{padding:20px}}@media (width<=600px){.role-admin .admin-module-nav{margin-bottom:10px;position:relative;top:auto}.role-admin .admin-module-nav-link{padding:0 11px}.role-admin .agent-market-hero{border-radius:14px;padding:18px}.role-admin .agent-market-hero h1{font-size:1.22rem}}@media (prefers-reduced-motion:reduce){.role-admin .admin-banner-particles i,.role-admin .admin-dashboard-skeleton>div,.role-admin .admin-dashboard-skeleton i,.role-admin .student-main>:not(.admin-module-nav){animation:none}.role-admin .card,.role-admin .admin-card,.role-admin .stat-card,.role-admin .course-card-item,.role-admin .admin-review-card,.role-admin .admin-provider-card,.role-admin .admin-rbac-role-card,.role-admin .btn,.role-admin .admin-button{transition-duration:.01ms}}:root{--am-deep:#0b1f4d;--am-deep2:#0f254a;--am-primary:#2563eb;--am-primary-light:#3b82f6;--am-accent:#06b6d4;--am-accent-soft:#06b6d41f;--am-purple:#7c3aed;--am-purple-soft:#7c3aed14;--am-teal:#14b8a6;--am-teal-soft:#14b8a614;--am-orange:#f59e0b;--am-orange-soft:#f59e0b1a;--am-indigo:#6366f1;--am-indigo-soft:#6366f114;--am-border:#0b1f4d12;--am-line:#0b1f4d17;--am-soft:#2563eb0d;--am-shadow:0 1px 3px #0b1f4d0a, 0 4px 12px #0b1f4d0d;--am-shadow-hover:0 2px 6px #0b1f4d0f, 0 8px 24px #0b1f4d17;--am-radius:14px;--am-radius-sm:10px;--am-radius-lg:18px;--am-transition:.22s cubic-bezier(.4, 0, .2, 1)}.agent-market-shell{color:#0f172a;flex-direction:column;gap:14px;max-width:1440px;min-height:calc(100vh - 56px);margin:0 auto;padding:0 4px 24px;display:flex}.agent-market-workbench{grid-template-columns:minmax(180px,220px) minmax(0,1fr) minmax(210px,260px);grid-template-areas:"filters results ranking";align-items:start;gap:18px;display:grid}.agent-market-filters{background:#fff;border:1px solid #94a3b83d;border-radius:18px;grid-area:filters;gap:12px;padding:18px;display:grid}.agent-market-filters h3,.agent-hot-ranking h3{color:#172033;margin:0}.agent-market-filters label{color:#64748b;gap:7px;font-size:13px;display:grid}.agent-market-filters input{border:1px solid #dbe3ee;border-radius:10px;width:100%;padding:10px}.agent-market-results{grid-area:results;min-width:0}.agent-hot-ranking{background:linear-gradient(#fffaf1,#fff);border:1px solid #ff950533;border-radius:18px;grid-area:ranking;padding:18px;position:sticky;top:20px;box-shadow:0 12px 30px #0f172a0f}.agent-hot-ranking ol{gap:8px;margin:14px 0;padding:0;list-style:none;display:grid}.agent-hot-ranking li a{color:inherit;grid-template-columns:28px 1fr;align-items:center;gap:8px;text-decoration:none;display:grid}.agent-hot-ranking li b{color:#c56100;background:#ffedd5;border-radius:9px;place-items:center;width:26px;height:26px;display:grid}.agent-hot-ranking li span{min-width:0;display:grid}.agent-hot-ranking li strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.agent-hot-ranking li small{color:#64748b}.agent-hot-ranking .ranking-extra{display:block}@media (width<=900px){.agent-market-workbench{grid-template-columns:1fr;grid-template-areas:"filters""ranking""results"}.agent-hot-ranking{position:static}.agent-hot-ranking .ranking-extra{display:none}.agent-hot-ranking.is-expanded .ranking-extra{display:block}}.agent-market-tabs{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);-webkit-overflow-scrolling:touch;scrollbar-width:none;background:#ffffffc2;border:1px solid #94a3b82e;border-radius:13px;gap:4px;padding:5px;display:flex;overflow:auto hidden;box-shadow:0 4px 16px #2b435c09}.agent-market-tabs::-webkit-scrollbar{display:none}.agent-market-tabs a{color:#5f7382;white-space:nowrap;transition:color var(--am-transition), background var(--am-transition), box-shadow var(--am-transition), transform var(--am-transition);border-radius:9px;flex:none;padding:8px 14px;font-size:.88rem;font-weight:550;text-decoration:none;position:relative}.agent-market-tabs a:hover{color:#315f7a;background:#f1f6f8;transform:translateY(-1px)}.agent-market-tabs a.active{color:#244f68;background:linear-gradient(135deg,#eaf3f7,#edf2ff);font-weight:720;box-shadow:inset 0 0 0 1px #4169861a,0 2px 7px #315f7a14}.agent-market-tabs a.active:after{display:none}.agent-market-tabs a[href="#/student/agents/create"]{color:var(--am-primary);font-weight:600}.agent-market-tabs a[href="#/student/agents/create"]:hover{background:#2563eb12}.agent-market-tabs a[href="#/student/agents/create"].active{color:#fff;background:linear-gradient(135deg, var(--am-primary), var(--am-purple));border-radius:8px}.agent-market-tabs a[href="#/student/agents/create"].active:after{display:none}.agent-market-hero,.agent-create-hero{color:#fff;background:linear-gradient(125deg,#163653 0%,#254e6f 32%,#315f7f 62%,#5259a5 100%);border-radius:16px;justify-content:space-between;align-items:center;gap:20px;padding:21px 28px;display:flex;position:relative;overflow:hidden;box-shadow:0 10px 28px #23415b2e,0 2px 8px #315f7a1a}.agent-market-hero:before,.agent-create-hero:before{content:"";opacity:.9;pointer-events:none;background:radial-gradient(at 15% 30%,#06b6d438 0%,#0000 42%),radial-gradient(at 75% 55%,#7c3aed2e 0%,#0000 40%),radial-gradient(at 50% 90%,#2563eb24 0%,#0000 35%),repeating-linear-gradient(0deg,#ffffff08 0 1px,#0000 1px 22px),repeating-linear-gradient(90deg,#ffffff08 0 1px,#0000 1px 22px),linear-gradient(155deg,#06b6d41a 0%,#0000 50%);position:absolute;inset:0}.agent-market-hero:after,.agent-create-hero:after{content:"";pointer-events:none;background-image:radial-gradient(1.5px 1.5px at 10% 20%,#ffffffbf 50%,#0000 50%),radial-gradient(1px 1px at 25% 35%,#06b6d48c 50%,#0000 50%),radial-gradient(2px 2px at 52% 18%,#fffc 50%,#0000 50%),radial-gradient(1px 1px at 75% 42%,#7c3aed80 50%,#0000 50%),radial-gradient(1.5px 1.5px at 88% 22%,#ffffffa6 50%,#0000 50%),radial-gradient(1px 1px at 30% 72%,#06b6d480 50%,#0000 50%),radial-gradient(1.5px 1.5px at 60% 78%,#ffffffb3 50%,#0000 50%),radial-gradient(1px 1px at 8% 62%,#7c3aed66 50%,#0000 50%),radial-gradient(1px 1px at 45%,#ffffff8c 50%,#0000 50%),radial-gradient(6px 1px at 28% 38%,#06b6d41f 50%,#0000 50%),radial-gradient(8px 1px at 65% 45%,#7c3aed1a 50%,#0000 50%);animation:8s ease-in-out infinite alternate constellationTwinkle;position:absolute;inset:0}@keyframes constellationTwinkle{0%,to{opacity:.65}50%{opacity:1}}.agent-market-hero>*,.agent-create-hero>*{z-index:1;position:relative}.agent-market-hero h1,.agent-create-hero h1{letter-spacing:-.01em;color:#fff;text-shadow:0 1px 4px #00000026;margin:3px 0 6px;font-size:1.46rem;font-weight:750;line-height:1.25}.agent-market-hero p,.agent-create-hero p{color:#ffffffd6;max-width:540px;margin:0;font-size:.84rem;line-height:1.5}.agent-market-hero .complex-btn{color:#0b1f4d;min-height:38px;transition:transform var(--am-transition), box-shadow var(--am-transition), background var(--am-transition);background:#fff;border-radius:9px;padding:0 18px;font-size:.88rem;font-weight:650;text-decoration:none;box-shadow:0 4px 16px #00000026}.agent-market-eyebrow{color:#e1f2fbc7;letter-spacing:.16em;align-items:center;gap:7px;font-size:.64rem;font-weight:760;display:inline-flex}.agent-market-eyebrow:before{content:"";background:linear-gradient(90deg,#7dd3fc,#c4b5fd);border-radius:999px;width:18px;height:2px;box-shadow:0 0 9px #7dd3fc8c}.agent-market-hero .complex-btn:hover{background:#f0f4fa;transform:translateY(-1px);box-shadow:0 6px 24px #00000038}.agent-task-hero-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.knowledge-hero-actions{gap:8px;display:flex}.knowledge-hero-actions .complex-btn-secondary{color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #ffffff8c;border-radius:10px;min-height:42px;padding:0 18px}.knowledge-source{color:#4338ca;background:#eef2ff;border-radius:999px;margin-bottom:5px;padding:2px 7px;font-size:10px;font-weight:700;display:inline-flex}.knowledge-filters{gap:6px;margin:-8px 0 14px;display:flex;overflow-x:auto}.knowledge-filters button{color:#64748b;cursor:pointer;background:#fff;border:1px solid #dce5ef;border-radius:999px;flex:none;padding:6px 10px}.knowledge-filters button.active{color:#1d4ed8;background:#eff6ff;border-color:#93c5fd}.knowledge-dify-panel{background:#fff;border:1px solid #dbe5ef;border-radius:14px;margin-bottom:16px;padding:16px}.knowledge-dify-panel[hidden]{display:none}.knowledge-dify-panel>header{justify-content:space-between;align-items:start;gap:16px;margin-bottom:12px;display:flex}.knowledge-dify-panel h3,.knowledge-dify-panel p{margin:0}.knowledge-dify-panel p{color:#64748b;margin-top:4px;font-size:12px}.knowledge-dify-panel header button{color:#64748b;cursor:pointer;background:0 0;border:0;font-size:22px}.knowledge-dify-list{gap:7px;max-height:360px;margin-bottom:12px;display:grid;overflow:auto}.knowledge-dify-list label{border:1px solid #e2e8f0;border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;display:grid}.knowledge-dify-list label.is-bound{opacity:.58}.knowledge-dify-list span{min-width:0;display:grid}.knowledge-dify-list small,.knowledge-dify-list em{color:#64748b;font-size:11px;font-style:normal}.knowledge-document-row{background:#fff;border:1px solid #e2e8f0;border-radius:10px;gap:8px;padding:11px!important;display:grid!important}.knowledge-document-row>div:first-child{justify-content:space-between;gap:12px;display:flex}.knowledge-document-row>div:first-child span{color:#64748b;font-size:11px}.knowledge-pipeline{align-items:center;gap:5px;overflow-x:auto;display:flex!important}.knowledge-pipeline span{color:#64748b;background:#f1f5f9;border-radius:999px;flex:none;padding:3px 6px;font-size:10px}.knowledge-pipeline span.active{color:#1d4ed8;background:#eff6ff}.knowledge-pipeline i{color:#94a3b8;font-size:10px;font-style:normal}.knowledge-document-error{color:#9f1239;background:#fff1f2;border-left:3px solid #e11d48;margin:0;padding:7px 9px;font-size:11px}.knowledge-document-error small{color:#64748b}@media (width<=700px){.knowledge-hero-actions{flex-wrap:wrap}.knowledge-dify-list label{grid-template-columns:auto 1fr}.knowledge-dify-list em{grid-column:2}.knowledge-document-row>div:first-child{display:grid}}.agent-filter-bar{border:1.5px solid var(--am-line);border-radius:var(--am-radius);transition:border-color var(--am-transition), box-shadow var(--am-transition);background:#fff;gap:0;margin-bottom:18px;display:flex;overflow:hidden}.agent-filter-bar:focus-within{border-color:var(--am-primary);box-shadow:0 0 0 3px #2563eb14}.agent-filter-bar input{color:#0f172a;background:0 0;border:0;outline:none;flex:1;min-width:0;height:44px;padding:0 16px;font-family:inherit;font-size:.9rem}.agent-filter-bar input::placeholder{color:#94a3b8;font-weight:400}.agent-filter-bar .agent-search-btn{color:#fff;background:linear-gradient(135deg, var(--am-primary), var(--am-primary-light));cursor:pointer;transition:background var(--am-transition), opacity var(--am-transition);white-space:nowrap;border:0;border-radius:0;flex:none;align-items:center;gap:6px;padding:0 20px;font-family:inherit;font-size:.86rem;font-weight:600;display:inline-flex}.agent-filter-bar .agent-search-btn:hover{background:linear-gradient(135deg,#1d4ed8,#2563eb)}.agent-filter-bar .agent-search-btn:active{opacity:.88}.agent-filter-bar .agent-search-icon{color:#94a3b8;pointer-events:none;flex:none;place-items:center;width:44px;height:44px;display:grid}.agent-filter-bar:focus-within .agent-search-icon{color:var(--am-primary)}.agent-card-grid,.knowledge-grid{grid-template-columns:repeat(auto-fill,minmax(288px,1fr));gap:18px;display:grid}.agent-market-card,.knowledge-card,.admin-review-card{border:1px solid var(--am-border);border-radius:var(--am-radius);box-shadow:var(--am-shadow);transition:transform var(--am-transition), box-shadow var(--am-transition), border-color var(--am-transition);cursor:default;background:#fff;flex-direction:column;gap:12px;padding:22px;display:flex;position:relative}.agent-market-card:hover,.knowledge-card:hover,.admin-review-card:hover{box-shadow:var(--am-shadow-hover);border-color:#2563eb2e;transform:translateY(-3px)}.agent-market-card:before{content:"";border-radius:var(--am-radius) var(--am-radius) 0 0;background:linear-gradient(90deg, var(--am-primary), var(--am-accent));opacity:0;height:3px;transition:opacity var(--am-transition);position:absolute;top:0;left:0;right:0}.agent-card-head,.knowledge-card-head,.admin-review-card header{align-items:flex-start;gap:14px;display:flex}.agent-card-head>div:nth-child(2){flex:1;min-width:0}.agent-card-head h3,.knowledge-card h3,.admin-review-card h3{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;margin:0 0 3px;font-size:1.02rem;font-weight:700;line-height:1.3;overflow:hidden}.agent-card-head h3+p,.knowledge-card h3+p,.admin-review-card h3+p{color:#64748b;margin:0;font-size:.82rem;line-height:1.4}.agent-card-avatar{color:#fff;-webkit-user-select:none;user-select:none;background:linear-gradient(135deg,#2563eb,#3b82f6);border-radius:13px;flex:0 0 46px;place-items:center;width:46px;height:46px;font-size:1.15rem;font-weight:800;display:grid;box-shadow:0 3px 10px #2563eb38}.agent-favorite-btn{color:#cbd5e1;cursor:pointer;transition:color var(--am-transition), transform var(--am-transition);background:0 0;border:0;flex:none;align-self:flex-start;padding:2px 4px;font-size:1.35rem;line-height:1}.agent-favorite-btn:hover{color:#f59e0b;transform:scale(1.18)}.agent-favorite-btn.active{color:#f59e0b}.agent-card-description{color:#475569;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:38px;margin:0;font-size:.86rem;line-height:1.55;display:-webkit-box;overflow:hidden}.agent-card-tags{flex-wrap:wrap;gap:6px;display:flex}.agent-card-tags span{background:var(--am-soft);color:var(--am-primary);border-radius:6px;align-items:center;padding:3px 10px;font-size:.74rem;font-weight:550;line-height:1.5;display:inline-flex}.agent-card-tags span:nth-child(2n){background:var(--am-teal-soft);color:#0d9488}.agent-card-tags span:nth-child(3n){background:var(--am-purple-soft);color:#7c3aed}.agent-card-tags span:nth-child(4n){background:var(--am-indigo-soft);color:#4f46e5}.agent-card-stats,.knowledge-meta,.admin-review-meta{color:#94a3b8;flex-wrap:wrap;align-items:center;gap:14px;font-size:.78rem;font-weight:500;display:flex}.agent-card-stats span:first-child{color:#64748b}.agent-card-actions,.admin-review-card footer{flex-wrap:wrap;align-items:center;gap:8px;margin-top:auto;padding-top:4px;display:flex}.admin-review-readonly{color:var(--am-text-muted);font-size:.8rem}.agent-card-actions .complex-btn{border-radius:8px;min-height:34px;padding:0 18px;font-size:.83rem}.agent-more{margin-left:auto;position:relative}.agent-more summary{cursor:pointer;color:#64748b;border:1px solid var(--am-line);transition:all var(--am-transition);background:#fff;border-radius:8px;align-items:center;padding:7px 12px;font-size:.83rem;font-weight:550;list-style:none;display:inline-flex}.agent-more summary:hover{color:var(--am-primary);background:var(--am-soft);border-color:#2563eb40}.agent-more>div{z-index:10;border:1px solid var(--am-line);border-radius:var(--am-radius-sm);background:#fff;flex-direction:column;min-width:155px;padding:6px;display:flex;position:absolute;top:40px;right:0;box-shadow:0 12px 32px #0b1f4d24}.agent-more>div button{text-align:left;cursor:pointer;color:#475569;background:0 0;border:0;border-radius:7px;padding:9px 12px;font-family:inherit;font-size:.83rem;transition:all .15s}.agent-more>div button:hover{background:var(--am-soft);color:var(--am-primary)}.agent-status{border-radius:5px;padding:3px 8px;font-size:.74rem;font-weight:600}.agent-status.status-public{color:#0d9488;background:#14b8a61a}.agent-status.status-public_pending{color:#d97706;background:#f59e0b1a}.agent-status.status-draft,.agent-status.status-private{color:#64748b;background:#94a3b81a}.agent-status.status-rejected{color:#e11d48;background:#f43f5e14}.agent-status.status-offline{color:#94a3b8;background:#94a3b814}.agent-market-empty{border-radius:var(--am-radius);color:#64748b;text-align:center;background:#ffffffb3;border:2px dashed #2563eb33;place-items:center;min-height:220px;padding:32px;font-size:.92rem;display:grid}.agent-market-empty.is-error{color:#b91c1c;border-color:#ef444440}.agent-spinner{border:3px solid #2563eb24;border-top-color:var(--am-primary);border-radius:50%;width:28px;height:28px;animation:.7s linear infinite agent-spin}@keyframes agent-spin{to{transform:rotate(360deg)}}.agent-toast{z-index:9999;color:#fff;background:#0d9488;border-radius:10px;max-width:400px;padding:12px 18px;font-size:.88rem;animation:.3s cubic-bezier(.4,0,.2,1) slideUpFade;position:fixed;bottom:24px;right:24px;box-shadow:0 10px 28px #0000002e}.agent-toast.is-error{background:#dc2626}#agent-detail-root{flex-direction:column;gap:22px;display:flex}.agent-detail-hero{border:1px solid var(--am-border);border-radius:var(--am-radius-lg);box-shadow:var(--am-shadow);background:linear-gradient(135deg,#fafbfc 0%,#f4f7fb 100%);align-items:flex-start;gap:20px;padding:28px 30px;display:flex;position:relative;overflow:hidden}.agent-detail-hero:before{content:"";pointer-events:none;background:radial-gradient(circle at 85% 20%,#2563eb0a 0%,#0000 55%),radial-gradient(circle at 15% 70%,#06b6d408 0%,#0000 45%);position:absolute;inset:0}.agent-detail-hero>*{z-index:1;position:relative}.agent-detail-hero .agent-card-avatar{border-radius:18px;flex:0 0 72px;width:72px;height:72px;font-size:1.75rem;box-shadow:0 6px 18px #2563eb40}.agent-detail-hero>div:nth-child(2){flex:1;min-width:0}.agent-detail-hero .agent-status{border-radius:6px;margin-bottom:8px;padding:4px 10px;font-size:.78rem;display:inline-flex}.agent-detail-hero h1{color:#0f172a;margin:0 0 6px;font-size:1.5rem;font-weight:750;line-height:1.25}.agent-detail-hero>div>p{color:#64748b;max-width:640px;margin:0 0 12px;font-size:.9rem;line-height:1.55}.agent-detail-grid{grid-template-columns:1.5fr 1fr;align-items:start;gap:18px;display:grid}.agent-detail-grid .complex-card{border-radius:var(--am-radius);border:1px solid var(--am-border);box-shadow:var(--am-shadow);background:#fff;padding:24px}.agent-detail-grid .complex-card h3{color:#0f172a;align-items:center;gap:8px;margin:0 0 10px;font-size:.98rem;font-weight:700;display:flex}.agent-detail-grid .complex-card h3:before{content:"";background:var(--am-primary);border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}.agent-detail-grid .complex-card h3:nth-of-type(2):before{background:#f59e0b}.agent-detail-grid .complex-card h3:nth-of-type(2){border-top:1px solid var(--am-line);margin-top:22px;padding-top:18px}.agent-detail-grid .complex-card ul{color:#475569;margin:0;padding:0;font-size:.86rem;line-height:1.7;list-style:none}.agent-detail-grid .complex-card ul li{margin-bottom:7px;padding-left:20px;position:relative}.agent-detail-grid .complex-card ul li:before{content:"";background:#2563eb59;border-radius:50%;width:6px;height:6px;position:absolute;top:9px;left:0}.agent-detail-grid .complex-card h3:nth-of-type(2)~ul li:before{background:#f59e0b66}.agent-detail-grid .complex-card:last-child{background:linear-gradient(160deg,#fafbfc 0%,#f0f4fa 100%);border-color:#2563eb1a;position:relative;overflow:hidden}.agent-detail-grid .complex-card:last-child:before{content:"";pointer-events:none;background:radial-gradient(circle,#2563eb0f 0%,#0000 70%);border-radius:50%;width:120px;height:120px;position:absolute;top:-30px;right:-30px}.agent-detail-grid .complex-card:last-child h3{z-index:1;position:relative}.agent-detail-grid .complex-card:last-child h3:before{background:var(--am-accent)}.agent-detail-grid .complex-card:last-child>p{z-index:1;color:#64748b;margin:0 0 18px;font-size:.86rem;line-height:1.55;position:relative}.agent-detail-grid #detail-use.complex-btn{z-index:1;border-radius:10px;width:100%;min-height:44px;margin-bottom:10px;font-size:.9rem;font-weight:650;position:relative;box-shadow:0 4px 14px #2563eb47}.agent-detail-grid .complex-btn-secondary,.agent-detail-grid .complex-btn-ghost{z-index:1;margin:0 0 8px;font-size:.83rem;position:relative}.agent-rating-row{z-index:1;color:#94a3b8;align-items:center;gap:4px;margin:12px 0 6px;font-size:.82rem;display:flex;position:relative}.agent-rating-row button{border:1px solid var(--am-line);cursor:pointer;color:#cbd5e1;width:34px;height:34px;transition:all var(--am-transition);background:#fff;border-radius:8px;font-size:.82rem}.agent-rating-row button:hover{color:#f59e0b;background:#fffbeb;border-color:#f59e0b}.agent-create-form{flex-direction:column;gap:18px;display:flex}.agent-create-form .complex-card,.knowledge-create-form{border:1px solid var(--am-line);border-radius:var(--am-radius);box-shadow:var(--am-shadow);background:#fff;padding:24px}.agent-create-form h2{color:#0f172a;margin:0 0 18px;font-size:1.12rem}.agent-create-form label,.knowledge-create-form label{color:#334155;flex-direction:column;gap:7px;margin-bottom:16px;font-size:.88rem;font-weight:650;display:flex}.agent-create-form input,.agent-create-form textarea,.agent-create-form select,.knowledge-create-form input,.knowledge-create-form textarea{box-sizing:border-box;color:#0f172a;width:100%;font:inherit;background:#fff;border:1px solid #2563eb33;border-radius:7px;outline:none;padding:10px 12px;transition:border-color .2s,box-shadow .2s}.agent-create-form input:focus,.agent-create-form textarea:focus,.agent-create-form select:focus{border-color:var(--am-primary);box-shadow:0 0 0 3px #2563eb14}.agent-create-form textarea,.knowledge-create-form textarea{resize:vertical;min-height:100px}.agent-tag-group{border:0;margin:0 0 16px;padding:0}.agent-tag-group legend{color:#334155;margin-bottom:10px;font-weight:700}.agent-tag-group>div{flex-wrap:wrap;gap:8px;display:flex}.agent-tag-choice,.agent-tag-custom{color:#475569;cursor:pointer;background:#fff;border:1px solid #2563eb2e;border-radius:999px;padding:7px 14px;font-size:.84rem;transition:all .2s}.agent-tag-choice:hover{border-color:var(--am-primary);color:var(--am-primary)}.agent-tag-choice.active{color:#fff;border-color:var(--am-primary);background:var(--am-primary);box-shadow:0 2px 10px #2563eb40}.agent-mode-options{grid-template-columns:1fr 1fr;gap:10px;display:grid}.agent-mode-options label{border:1px solid var(--am-line);border-radius:var(--am-radius);cursor:pointer;grid-template-columns:auto 1fr;align-items:start;padding:14px;transition:border-color .2s;display:grid}.agent-mode-options label:hover{border-color:var(--am-primary)}.agent-mode-options small{color:#94a3b8;grid-column:2}#knowledge-selector{border-radius:var(--am-radius);background:var(--am-soft);margin:14px 0;padding:14px}.agent-kb-option{align-items:center;flex-direction:row!important}.agent-kb-option input{width:auto!important}.agent-switch{align-items:center;flex-direction:row!important}.agent-switch input{width:auto!important}.agent-advanced{margin-top:14px}.agent-advanced summary{cursor:pointer;color:var(--am-primary);font-weight:700}.agent-advanced-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.agent-create-submit{justify-content:flex-end;gap:10px;padding-top:8px;display:flex}.agent-create-submit a{text-decoration:none}.knowledge-create-form{grid-template-columns:1fr 1fr auto auto;align-items:end;gap:12px;display:grid}.knowledge-create-form label{margin:0}.knowledge-create-form textarea{height:42px;min-height:42px}.knowledge-tabs{border-bottom:1px solid var(--am-line);gap:6px;padding-bottom:6px;display:flex}.knowledge-tabs button{color:#64748b;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:8px 14px;font-size:.86rem;font-weight:600;transition:all .2s}.knowledge-tabs button.active{color:#fff;background:var(--am-primary)}.knowledge-card-head>div{flex:1}.knowledge-documents{border-radius:var(--am-radius);background:#f7f9fc;padding:12px}.knowledge-documents>div{border-bottom:1px solid var(--am-line);justify-content:space-between;gap:10px;padding:8px 0;display:flex}.artifact-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;display:grid}.artifact-card{border:1px solid var(--am-line);border-radius:var(--am-radius-lg);background:#fff;flex-direction:column;gap:12px;padding:20px;display:flex;box-shadow:0 12px 32px #0f172a0d}.artifact-card-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.artifact-type,.artifact-status{color:#315b74;background:#eef4ff;border-radius:999px;padding:5px 9px;font-size:.75rem;font-weight:700;display:inline-flex}.artifact-status.is-failed{color:#b42318;background:#fff0f0}.artifact-status.is-generating,.artifact-status.is-exporting{color:#a15c00;background:#fff7e8}.artifact-card h2{color:#172033;margin:0;font-size:1.05rem}.artifact-card p{color:#64748b;flex:1;margin:0;line-height:1.6}.artifact-card dl,.artifact-metadata{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:0;display:grid}.artifact-card dl div,.artifact-metadata div{background:#f7f9fc;border-radius:10px;padding:10px 12px}.artifact-card dt,.artifact-metadata dt{color:#94a3b8;font-size:.72rem}.artifact-card dd,.artifact-metadata dd{color:#334155;margin:4px 0 0;font-weight:650}.artifact-detail{gap:18px;display:grid}.artifact-detail>header{border:1px solid var(--am-line);border-radius:var(--am-radius-lg);background:#fff;justify-content:space-between;align-items:flex-start;gap:18px;padding:22px;display:flex}.artifact-detail>header a{color:#315b74;text-decoration:none}.artifact-detail>header h1{color:#172033;margin:8px 0 4px}.artifact-detail>header p{color:#64748b;margin:0}.artifact-actions{flex-wrap:wrap;gap:8px;display:flex}.artifact-metadata{border:1px solid var(--am-line);border-radius:var(--am-radius-lg);background:#fff;padding:18px}.artifact-preview-card{border:1px solid var(--am-line);border-radius:var(--am-radius-lg);background:#fff;overflow:hidden}.artifact-preview-card>div:first-child{border-bottom:1px solid var(--am-line);justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.artifact-preview-card h2{margin:0;font-size:1rem}.artifact-preview-card span{color:#94a3b8;font-size:.72rem}.artifact-preview-card iframe{background:#fff;border:0;width:100%;min-height:680px;display:block}.artifact-error{color:#9f241b;background:#fff6f5;border:1px solid #ffd2cf;border-radius:12px;padding:12px 15px}@media (width<=720px){.artifact-grid{grid-template-columns:1fr}.artifact-detail>header{flex-direction:column}.artifact-actions{width:100%}.artifact-actions button{flex:1}.artifact-preview-card iframe{min-height:560px}}.artifact-link-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.artifact-link-form label{color:#334155;gap:7px;font-weight:650;display:grid}.artifact-link-form select{background:#fff;border:1px solid #d8e1ec;border-radius:10px;min-width:0;padding:10px 12px}.artifact-link-form #artifact-link-result{grid-column:1/-1}.artifact-link-success{color:#147a46;background:#e8f8ef;border-radius:10px;padding:12px}.artifact-link-success a{color:inherit;font-weight:750}@media (width<=720px){.artifact-link-form{grid-template-columns:1fr}}.agent-market-toolbar{background:#fff;border-radius:16px;gap:10px;margin-bottom:16px;padding:14px 16px;display:grid;box-shadow:0 8px 28px #0f172a0f}.agent-market-toolbar form{grid-template-columns:minmax(220px,1fr) auto auto;gap:10px;display:grid}.agent-market-toolbar input{border:1px solid #dbe3ee;border-radius:12px;min-width:0;padding:12px 14px}.agent-filter-summary{color:#64748b;flex-wrap:wrap;align-items:center;gap:9px;font-size:.82rem;display:flex}.agent-filter-summary div{flex-wrap:wrap;gap:6px;display:flex}.agent-filter-summary button,.agent-filter-summary em{color:#315b74;background:#eef4ff;border:0;border-radius:999px;padding:5px 9px;font-style:normal}.agent-market-workbench{grid-template-columns:minmax(0,1fr) minmax(210px,250px)!important;grid-template-areas:"results ranking"!important}.agent-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.agent-market-card{min-width:0;height:100%}.agent-more-trigger{color:#475569;background:#fff;border:1px solid #dbe3ee;border-radius:9px;padding:8px 10px}.agent-card-menu-portal{z-index:99999;background:#fff;border:1px solid #dbe3ee;border-radius:12px;padding:7px;display:grid;position:fixed;box-shadow:0 18px 50px #0f172a33}.agent-card-menu-portal button{text-align:left;color:#334155;background:0 0;border:0;border-radius:8px;padding:10px 12px}.agent-card-menu-portal button:hover{background:#f1f5f9}.agent-filter-overlay{z-index:99998;background:#0f172a59;justify-content:flex-end;display:flex;position:fixed;inset:0}.agent-filter-drawer{background:#fff;flex-direction:column;width:min(440px,100%);height:100%;padding:20px;display:flex;box-shadow:-20px 0 50px #0f172a2e}.agent-filter-drawer header,.agent-filter-drawer footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.agent-filter-fields{gap:14px;padding:16px 0;display:grid;overflow:auto}.agent-filter-fields label{gap:6px;display:grid}.agent-filter-fields select{border:1px solid #dbe3ee;border-radius:9px;padding:10px}.agent-filter-fields fieldset{border:0;flex-wrap:wrap;gap:8px;padding:0;display:flex}.agent-filter-fields fieldset legend{width:100%;margin-bottom:6px}.agent-filter-fields fieldset label{background:#f1f5f9;border-radius:999px;padding:7px 9px;display:flex}@media (width<=1279px){.agent-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media (width<=767px){.agent-market-toolbar form{grid-template-columns:1fr 1fr}.agent-market-toolbar input{grid-column:1/-1}.agent-market-workbench{grid-template-columns:1fr!important;grid-template-areas:"ranking""results"!important}.agent-card-grid{grid-template-columns:1fr!important}}.agent-chat-layout{border:1px solid var(--am-line);border-radius:var(--am-radius-lg);background:#fff;grid-template-columns:210px minmax(0,1fr) 260px;min-height:calc(100vh - 150px);display:grid;overflow:hidden}.agent-chat-history,.agent-memory-panel{background:#f7f9fc;padding:14px;overflow:auto}.agent-chat-history{border-right:1px solid var(--am-line);flex-direction:column;gap:4px;display:flex}.agent-chat-history a{color:#475569;white-space:nowrap;text-overflow:ellipsis;border-radius:8px;padding:9px 12px;font-size:.85rem;text-decoration:none;transition:all .15s;overflow:hidden}.agent-chat-history a:hover{color:var(--am-primary);background:#2563eb0f}.agent-chat-history a.active{color:#fff;background:var(--am-primary);font-weight:600}.agent-chat-main{flex-direction:column;min-width:0;display:flex}.agent-chat-main>header{border-bottom:1px solid var(--am-line);background:#fff;justify-content:space-between;align-items:center;padding:15px 18px;display:flex}.agent-chat-main>header h1{color:#0f172a;margin:0;font-size:1.08rem}.agent-chat-main>header p{color:#94a3b8;margin:3px 0 0;font-size:.8rem}.agent-messages{background:#fafbfd;flex:1;min-height:420px;max-height:calc(100vh - 320px);padding:18px;overflow:auto}.agent-chat-message{background:#fff;border-radius:12px;max-width:82%;margin-bottom:14px;padding:12px 14px;font-size:.9rem;line-height:1.6;box-shadow:0 2px 12px #0b1f4d0d}.agent-chat-message.is-user{color:#fff;background:linear-gradient(135deg,#2563eb,#3b82f6);margin-left:auto}.agent-message-role{opacity:.72;margin-bottom:5px;font-size:.72rem;font-weight:750}.agent-chat-message .message-markdown p:first-child{margin-top:0}.agent-chat-message .message-markdown p:last-child{margin-bottom:0}.agent-sources{border-top:1px solid var(--am-line);color:#334155;margin-top:10px;padding-top:8px}.agent-sources article{background:#f4f8fb;border-radius:8px;margin-top:7px;padding:10px}.agent-sources article span{color:#94a3b8;margin-top:3px;font-size:.75rem;display:block}.agent-sources blockquote{border-left:3px solid var(--am-accent);color:#475569;margin:7px 0 0;padding-left:10px;font-size:.82rem}.agent-message-form{border-top:1px solid var(--am-line);background:#fff;padding:12px}.agent-message-form textarea{box-sizing:border-box;resize:vertical;width:100%;min-height:76px;font-family:var(--font);color:#0f172a;border:1px solid #2563eb33;border-radius:8px;outline:none;padding:11px;font-size:.9rem;transition:border-color .2s,box-shadow .2s}.agent-message-form textarea:focus{border-color:var(--am-primary);box-shadow:0 0 0 3px #2563eb14}.agent-message-form>div{justify-content:space-between;align-items:center;margin-top:8px;display:flex}.agent-chat-welcome{text-align:center;place-items:center;min-height:320px;padding:32px;display:grid}.agent-chat-welcome button{border:1px solid var(--am-line);cursor:pointer;color:#475569;background:#fff;border-radius:8px;margin:5px;padding:8px 14px;font-size:.84rem;transition:all .2s}.agent-chat-welcome button:hover{border-color:var(--am-primary);color:var(--am-primary)}.agent-memory-panel{border-left:1px solid var(--am-line)}.memory-head,.memory-item{justify-content:space-between;gap:8px;display:flex}.memory-head h3{color:#0f172a;margin:0 0 12px;font-size:.95rem}.memory-item{border-bottom:1px solid var(--am-line);padding:10px 0;font-size:.84rem}.memory-item p{color:#64748b;margin:4px 0;font-size:.8rem}.memory-item button,.memory-head button{color:#dc2626;cursor:pointer;background:0 0;border:0;font-size:.8rem}.muted{color:#94a3b8;font-size:.83rem}.admin-review-list{flex-direction:column;gap:14px;display:flex}.admin-review-card header>div{flex:1}.admin-review-card details{border-radius:var(--am-radius);background:#f7f9fc;padding:12px}.admin-prompt-preview{white-space:pre-wrap;border:1px solid var(--am-line);background:#fff;border-radius:8px;margin:10px 0;padding:12px;font-size:.84rem;line-height:1.6}.review-risk{color:#d97706!important}.is-hidden{display:none!important}.is-busy{pointer-events:none;opacity:.65}@media (width<=1280px){.agent-market-shell{max-width:100%;padding:0 4px 20px}.agent-card-grid,.knowledge-grid{grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:14px}.agent-market-hero,.agent-create-hero{padding:18px 22px}}@media (width<=1100px){.agent-chat-layout{grid-template-columns:170px minmax(0,1fr)}.agent-memory-panel{border-left:0;border-top:1px solid var(--am-line);grid-column:1/-1}.knowledge-create-form{grid-template-columns:1fr 1fr}}@media (width<=1024px){.agent-detail-grid{grid-template-columns:1.2fr 1fr;gap:14px}.agent-card-grid,.knowledge-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}}@media (width<=768px){.agent-market-shell{gap:12px}.agent-market-tabs{border-bottom-width:1px;gap:0;padding:4px 6px}.agent-market-tabs a{padding:8px 12px;font-size:.8rem}.agent-market-hero,.agent-create-hero{flex-direction:column;align-items:flex-start;gap:16px;padding:24px 20px}.agent-market-hero h1,.agent-create-hero h1{font-size:1.3rem}.agent-market-hero p,.agent-create-hero p{font-size:.85rem}.agent-detail-hero{flex-direction:column;align-items:flex-start;gap:14px;padding:22px 18px}.agent-detail-hero .agent-card-avatar{border-radius:14px;flex-basis:56px;width:56px;height:56px;font-size:1.3rem}.agent-detail-hero h1{font-size:1.25rem}.agent-detail-grid,.agent-mode-options,.agent-advanced-grid{grid-template-columns:1fr}.agent-card-grid,.knowledge-grid{grid-template-columns:1fr;gap:12px}.agent-market-card{padding:18px}.agent-filter-bar{border-radius:var(--am-radius-sm)}.agent-filter-bar input{height:42px;font-size:.85rem}.agent-chat-layout{display:block}.agent-chat-history{max-height:150px}.agent-messages{max-height:none}.agent-chat-message{max-width:94%}.knowledge-create-form{flex-direction:column;align-items:stretch;display:flex}.agent-more>div{left:0;right:auto}}@media (width<=480px){.agent-market-hero,.agent-create-hero{padding:20px 16px}.agent-market-hero h1,.agent-create-hero h1{font-size:1.15rem}.agent-market-tabs a{padding:7px 10px;font-size:.76rem}.agent-filter-bar input{padding:0 10px;font-size:.82rem}.agent-filter-bar .agent-search-btn{padding:0 14px;font-size:.8rem}.agent-market-card{padding:16px}.agent-card-actions{flex-direction:column;align-items:stretch}.agent-card-actions .complex-btn{justify-content:center;width:100%}.agent-more{align-self:flex-end;margin-left:0}.agent-detail-hero{padding:18px 14px}.agent-detail-grid .complex-card{padding:18px}}@media (prefers-reduced-motion:reduce){.agent-market-hero:after,.agent-create-hero:after{animation:none}.agent-market-card,.knowledge-card,.admin-review-card{transition:none}.agent-market-card:hover,.knowledge-card:hover,.admin-review-card:hover{transform:none}.agent-market-tabs a,.agent-favorite-btn,.agent-filter-bar,.agent-filter-bar input,.agent-more summary,.agent-more>div button,.agent-rating-row button{transition:none}}.artifact-export-panel{background:#f8fbfc;border:1px solid #dbe7ec;border-radius:16px;margin:20px 0;padding:20px}.agent-system-badge{vertical-align:middle;color:#27697f;background:#e4f3f7;border-radius:999px;margin-left:5px;padding:2px 7px;font-size:.65rem;font-weight:600;display:inline-flex}.artifact-export-panel h2{margin:0 0 4px;font-size:1.05rem}.artifact-export-panel p{color:#657781;margin:0 0 14px}.artifact-export-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:14px;display:grid}.artifact-export-options article{background:#fff;border:1px solid #d6e3e8;border-radius:12px;grid-template-columns:auto 1fr;align-items:center;gap:8px 12px;padding:14px;display:grid}.artifact-export-options label{align-items:center;gap:8px;display:flex}.artifact-export-options small{color:#71828b;grid-column:1/-1}.artifact-export-options button{grid-column:1/-1;justify-self:start}.artifact-export-state{color:#71828b;justify-self:end;font-size:.78rem}.artifact-export-state.is-ready{color:#247a5a}.artifact-export-state.is-failed{color:#b44949}.artifact-export-state.is-exporting,.artifact-export-state.is-queued{color:#a3691d}@media (width<=720px){.artifact-export-options{grid-template-columns:1fr}}.artifact-list-toolbar{background:#ffffffeb;border:1px solid #94a3b833;border-radius:13px;grid-template-columns:minmax(420px,1fr) minmax(210px,290px) 122px 142px 112px auto;align-items:center;gap:8px;margin:0;padding:9px 10px;display:grid;box-shadow:0 5px 18px #2b435c0b}.artifact-filter-tabs{scrollbar-width:none;gap:3px;min-width:0;display:flex;overflow:auto}.artifact-filter-tabs::-webkit-scrollbar{display:none}.artifact-filter-tabs button{color:#6c7f8c;min-height:34px;font:inherit;cursor:pointer;transition:color var(--am-transition), background var(--am-transition), border-color var(--am-transition);background:0 0;border:1px solid #0000;border-radius:8px;flex:none;padding:0 9px;font-size:.72rem}.artifact-filter-tabs button:hover{color:#315f7a;background:#f6f9fa;border-color:#dbe6eb}.artifact-filter-tabs button.active{color:#285c78;background:linear-gradient(135deg,#eaf3f7,#eef3ff);border-color:#d4e4eb;font-weight:760}.artifact-search{min-width:0;position:relative}.artifact-search:before{content:"";pointer-events:none;border:1.5px solid #8193a0;border-radius:50%;width:8px;height:8px;position:absolute;top:50%;left:12px;transform:translateY(-62%)}.artifact-search:after{content:"";pointer-events:none;background:#8193a0;border-radius:2px;width:5px;height:1.5px;position:absolute;top:55%;left:21px;transform:rotate(45deg)}.artifact-search input,.artifact-list-toolbar select,.artifact-list-toolbar>input,.artifact-list-toolbar>button{box-sizing:border-box;color:#273d4a;width:100%;min-width:0;min-height:36px;font:inherit;background:#fff;border:1px solid #d6e1e7;border-radius:8px;padding:0 10px;font-size:.75rem}.artifact-search input{padding-left:32px}.artifact-search input:focus,.artifact-list-toolbar select:focus,.artifact-list-toolbar>input:focus{border-color:#7ba1b6;outline:0;box-shadow:0 0 0 3px #315f7a17}.artifact-list-toolbar>button{color:#315f7a;cursor:pointer;width:auto;padding:0 12px;font-weight:700}.artifact-list-toolbar>button:disabled{color:#a8b3ba;cursor:not-allowed;background:#f7f9fa;border-style:dashed}.artifact-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-auto-rows:1fr;align-items:stretch;gap:12px}.artifact-card{box-sizing:border-box;min-width:0;height:100%;transition:transform var(--am-transition), border-color var(--am-transition), box-shadow var(--am-transition);border-color:#8b9ead33;border-radius:14px;grid-template-rows:auto minmax(44px,auto) minmax(36px,auto) minmax(48px,auto) auto minmax(100px,auto);gap:8px;padding:14px;display:grid;position:relative;overflow:hidden;box-shadow:0 5px 18px #2b435c0b}.artifact-card:before{opacity:.32;content:"";height:3px;transition:opacity var(--am-transition);background:linear-gradient(90deg,#4b7993,#5ca6a6,#6977c5);position:absolute;inset:0 0 auto}.artifact-card:hover{border-color:#4b79934d;transform:translateY(-2px);box-shadow:0 12px 28px #2b435c1a}.artifact-card:hover:before{opacity:.9}.artifact-card-top{align-items:center;gap:8px}.artifact-card-badges{justify-content:flex-end;align-items:center;gap:5px;min-width:0;display:flex}.artifact-select{color:#7a8b96;cursor:pointer;align-items:center;gap:5px;font-size:.69rem;display:inline-flex}.artifact-select input{accent-color:#315f7a;width:14px;height:14px;margin:0}.artifact-type,.artifact-status{border:1px solid #0000;padding:3px 7px;font-size:.65rem;line-height:1.4}.artifact-type{color:#315f7a;background:#edf5f8;border-color:#d7e6ed}.artifact-status.is-ready,.artifact-status.is-downloadable{color:#237251;background:#edf8f2;border-color:#d4eadf}.artifact-status.is-generating,.artifact-status.is-exporting{color:#9a671e;background:#fff8e9;border-color:#efe0bd}.artifact-status.is-failed{color:#a9433e;background:#fff3f2;border-color:#f1d2cf}.artifact-card-title{align-items:center;gap:9px;min-width:0;min-height:44px;display:flex}.artifact-card-title .agent-icon{border-radius:10px;width:36px!important;height:36px!important}.artifact-card h2{-webkit-line-clamp:2;-webkit-box-orient:vertical;min-width:0;font-size:.94rem;line-height:1.35;display:-webkit-box;overflow:hidden}.artifact-card>p{color:#71838f;-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:none;min-height:34px;font-size:.76rem;line-height:1.5;display:-webkit-box;overflow:hidden}.artifact-card-context{flex-wrap:wrap;align-content:flex-start;gap:5px;min-height:48px;max-height:48px;display:flex;overflow:hidden}.artifact-card-context span{text-overflow:ellipsis;white-space:nowrap;border:1px solid #0000;border-radius:999px;max-width:100%;padding:3px 7px;font-size:.65rem;line-height:1.4;display:block;overflow:hidden}.artifact-card-context .is-agent{color:#3e6479;background:#f0f6f8;border-color:#dbe7ed}.artifact-card-context .is-course{color:#327468;background:#eff8f5;border-color:#d6ebe6}.artifact-card-context .is-knowledge{color:#62649a;background:#f4f3fb;border-color:#e1e2f3;flex-basis:100%}.artifact-card dl{grid-template-rows:repeat(2,minmax(51px,auto));grid-template-columns:repeat(2,minmax(0,1fr));align-self:stretch;gap:6px}.artifact-card dl div{background:#f7f9fb;border:1px solid #94a3b817;border-radius:9px;min-width:0;padding:8px 9px}.artifact-card dt{font-size:.63rem}.artifact-card dd{text-overflow:ellipsis;margin-top:3px;font-size:.76rem;line-height:1.45;overflow:hidden}.artifact-card dd.is-ready{color:#217459}.artifact-card dd.is-failed{color:#b44949}.artifact-card dd.is-queued,.artifact-card dd.is-exporting{color:#9a671e}.artifact-card-actions{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:30px;align-content:end;gap:5px;min-height:100px;margin-top:auto;display:grid}.artifact-card-actions a,.artifact-card-actions button{color:#315b74;min-width:0;min-height:30px;font:inherit;cursor:pointer;transition:background var(--am-transition), border-color var(--am-transition), color var(--am-transition);background:#fff;border:1px solid #d4e0e6;border-radius:7px;justify-content:center;align-items:center;padding:0 7px;font-size:.68rem;font-weight:680;text-decoration:none;display:inline-flex}.artifact-card-actions a:hover,.artifact-card-actions button:hover{background:#f0f6f8;border-color:#a9c3d1}.artifact-card-actions .artifact-card-preview{color:#fff;background:#315f7a;border-color:#315f7a}.artifact-card-actions .artifact-card-preview:hover{background:#254c63;border-color:#254c63}.artifact-card-actions .danger{color:#a9433e}.artifact-requirements,.artifact-notices{border:1px solid var(--am-line);border-radius:var(--am-radius-lg);background:#fff;padding:18px}.artifact-requirements h2,.artifact-notices h3{margin:0 0 7px;font-size:.95rem}.artifact-requirements p,.artifact-notices p{color:#64748b;margin:0;font-size:.82rem;line-height:1.65}.artifact-notices{grid-template-columns:1fr 1fr;gap:18px;display:grid}.artifact-notices>div+div{border-left:1px solid var(--am-line);padding-left:18px}.artifact-export-options article.is-highlighted{border-color:#2f6d8c;box-shadow:0 0 0 3px #2f6d8c1c}@media (width<=1280px){.artifact-list-toolbar{grid-template-columns:minmax(220px,1fr) 122px 142px 112px auto}.artifact-filter-tabs{grid-column:1/-1}}@media (width<=900px){.artifact-list-toolbar{grid-template-columns:minmax(0,1fr) minmax(120px,.42fr) minmax(110px,.34fr)}.artifact-filter-tabs{grid-column:1/-1}.artifact-list-toolbar>input,.artifact-list-toolbar>button{width:100%}}@media (width<=720px){.artifact-list-toolbar{grid-template-columns:1fr 1fr}.artifact-filter-tabs,.artifact-search{grid-column:1/-1}.artifact-list-toolbar>button{width:100%}.artifact-notices{grid-template-columns:1fr}.artifact-notices>div+div{border-left:0;border-top:1px solid var(--am-line);padding:14px 0 0}.artifact-grid{grid-template-columns:1fr}.artifact-card-actions>*{white-space:nowrap;justify-content:center}}.agent-market-toolbar{border:1px solid #94a3b833;border-radius:13px;gap:7px;padding:10px 11px;box-shadow:0 5px 18px #2b435c0b}.agent-market-toolbar form{grid-template-columns:minmax(240px,1fr) auto auto auto;gap:7px}.agent-market-toolbar input{box-sizing:border-box;border-radius:8px;min-height:38px;padding:0 12px}.agent-market-toolbar .agent-search-btn,.agent-market-toolbar .complex-btn-secondary,.agent-search-clear{color:#315b74;min-height:38px;font:inherit;cursor:pointer;background:#fff;border:1px solid #d4dee7;border-radius:8px;padding:0 13px;font-size:.75rem;font-weight:700}.agent-market-toolbar .agent-search-btn{color:#fff;background:#315f7a;border-color:#315f7a}.agent-search-clear[hidden]{display:none}.agent-filter-summary{gap:7px;min-height:28px;font-size:.75rem}.agent-filter-summary button,.agent-filter-summary em{color:#315f7a;background:#eff5f8;border:1px solid #d8e6ec;border-radius:999px;padding:4px 8px}.agent-inline-sort{color:#64748b;align-items:center;gap:6px;margin-left:auto;display:flex}.agent-inline-sort select{color:#425767;background:#fff;border:1px solid #d9e2e9;border-radius:7px;min-height:30px}.agent-market-workbench{align-items:start;gap:12px}.agent-card-grid{gap:12px}.agent-hot-ranking{background:linear-gradient(#f9fcfd,#fff);border-color:#7490a133;border-radius:14px;padding:14px;top:14px;box-shadow:0 8px 22px #2b435c0f}.agent-hot-ranking ol{gap:6px;margin:10px 0}.agent-hot-ranking li a{border-radius:8px;padding:5px}.agent-hot-ranking li a:hover{background:#edf4f7}.agent-market-card{border-radius:14px;gap:8px;min-height:294px;padding:15px;overflow:hidden;box-shadow:0 5px 18px #2b435c0b}.agent-market-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px #2b435c1a}.agent-market-card:before{opacity:.28;background:linear-gradient(90deg,#4b7993,#58a4a0,#6977c5);height:3px;display:block}.agent-market-card:hover:before{opacity:.9}.agent-card-avatar{width:42px;height:42px;box-shadow:none;background:#356b88;border-radius:11px;flex-basis:42px}.agent-card-head{gap:10px}.agent-card-head h3{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.94rem;display:-webkit-box}.agent-card-head h3+p{font-size:.72rem}.agent-card-head>.agent-more-trigger{letter-spacing:.08em;border-radius:7px;flex:none;min-width:32px;padding:5px 6px}.agent-card-identity{flex-wrap:wrap;gap:4px;margin-top:5px;display:flex}.agent-card-identity span{color:#45697d;background:#edf3f6;border:1px solid #d8e5eb;border-radius:999px;padding:2px 6px;font-size:.61rem;font-weight:700}.agent-card-description{color:#5f7481;-webkit-line-clamp:2;min-height:39px;font-size:.76rem;line-height:1.5}.agent-card-tags{align-content:flex-start;gap:5px;min-height:0;max-height:45px;overflow:hidden}.agent-card-tags span,.agent-card-tags span:nth-child(n){border:1px solid #0000;border-radius:999px;padding:3px 7px;font-size:.64rem;line-height:1.4}.agent-card-tags span.is-capability{color:#315f7a;background:#edf5f8;border-color:#d5e5ed}.agent-card-tags span.is-purpose{color:#327468;background:#eff8f5;border-color:#d7ebe6}.agent-card-tags span.is-style{color:#67649c;background:#f4f2fb;border-color:#e2e0f3}.agent-card-tags span.is-more{color:#75858e;background:#f7f9fa;border-color:#e2e7ea}.agent-card-capability-state{border-top:1px solid #edf1f4;border-bottom:1px solid #edf1f4;flex-wrap:wrap;gap:5px;padding:6px 0;display:flex}.agent-card-capability-state span{color:#5e7582;background:#f7f9fa;border:1px solid #e1e7ea;border-radius:999px;padding:3px 7px;font-size:.62rem}.agent-card-capability-state .is-context{color:#276c62;background:#edf7f4;border-color:#d6ebe6}.agent-card-capability-state .is-format{color:#68659b;background:#f5f3fb;border-color:#e1e0f1}.agent-card-capability-state .is-dialogue{color:#426b81;background:#f0f6f8;border-color:#d8e5ec}.agent-card-stats{gap:8px;font-size:.65rem}.agent-card-actions{grid-template-columns:minmax(0,1fr) auto auto;align-items:stretch;gap:5px;min-height:34px;display:grid}.agent-card-actions .agent-card-primary-action{background:#315f7a;border-color:#315f7a;min-width:0;min-height:34px;padding:0 10px}.agent-card-actions .agent-card-secondary-action{white-space:nowrap;min-width:42px;min-height:34px;padding:0 9px}.agent-card-actions .agent-favorite-btn{color:#64748b;white-space:nowrap;background:#fff;border:1px solid #d8e1e7;border-radius:8px;place-items:center;min-width:42px;min-height:34px;padding:0 8px;font-size:.7rem;display:inline-grid}.agent-card-actions .agent-favorite-btn svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px;display:block}.agent-card-actions .agent-favorite-btn:hover,.agent-card-actions .agent-favorite-btn.active{color:#9b6a19;background:#fff9ec;transform:none}.agent-card-menu-portal{max-width:calc(100vw - 24px);overflow:auto}.agent-card-menu-portal button{cursor:pointer}@media (width<=1279px){.agent-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.agent-market-workbench{grid-template-columns:minmax(0,1fr) 220px!important}}@media (width<=900px){.agent-market-workbench{grid-template-columns:1fr!important;grid-template-areas:"ranking""results"!important}.agent-hot-ranking{position:static}.agent-market-toolbar form{grid-template-columns:1fr auto auto}.agent-market-toolbar input{grid-column:1/-1}.agent-inline-sort{justify-content:flex-end;width:100%;margin-left:0}}@media (width<=767px){.agent-card-grid{grid-template-columns:1fr!important}.agent-market-toolbar form{grid-template-columns:1fr 1fr}.agent-search-clear{min-height:40px;margin:0;position:static}.agent-filter-summary{align-items:flex-start}.agent-inline-sort{justify-content:space-between}.agent-inline-sort select{flex:1}.agent-card-actions{grid-template-columns:minmax(0,1fr) auto auto}.agent-card-actions .agent-card-primary-action{grid-column:1/-1}}.agent-icon{color:var(--agent-icon-color);background:var(--agent-icon-bg);border-radius:11px;flex:none;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.agent-icon svg,.agent-icon img{object-fit:cover;width:62%;height:62%}.agent-icon img{width:100%;height:100%}.agent-icon-picker{background:#fafcfd;border:1px solid #e1e8ee;border-radius:12px;gap:13px;padding:15px;display:grid}.agent-icon-preview{align-items:center;gap:12px;display:flex}.agent-icon-preview div{gap:3px;display:grid}.agent-icon-preview span{color:#71808c;font-size:.76rem}.agent-icon-options{grid-template-columns:repeat(10,minmax(36px,1fr));gap:6px;display:grid}.agent-icon-options button{cursor:pointer;background:#fff;border:1px solid #0000;border-radius:8px;place-items:center;min-height:42px;padding:3px;display:grid}.agent-icon-options button:hover,.agent-icon-options button.active{background:#f0f6f9;border-color:#4b7993;box-shadow:0 0 0 2px #315f7a1a}.agent-color-options{flex-wrap:wrap;gap:8px;display:flex}.agent-color-options button{border:5px solid var(--swatch-bg);background:var(--swatch);cursor:pointer;border-radius:50%;outline:1px solid #d7e0e6;width:27px;height:27px}.agent-color-options button.active{outline-offset:2px;outline:2px solid #315f7a}.unified-composer{background:#fff;border:1px solid #d8e2e8;border-radius:13px;gap:8px;margin:10px 14px 14px;padding:10px;display:grid;position:relative;box-shadow:0 7px 22px #0f172a0f}.composer-input-row{align-items:flex-end;gap:8px;display:flex}.composer-input-row textarea{box-sizing:border-box;resize:vertical;color:#1f3441;width:100%;min-height:62px;max-height:170px;font:inherit;background:0 0;border:0;outline:0;padding:8px 9px;font-size:.88rem;line-height:1.55}.composer-send{color:#fff;min-width:64px;min-height:36px;font:inherit;cursor:pointer;background:#315f7a;border:0;border-radius:8px;font-size:.8rem;font-weight:750}.composer-send:disabled{opacity:.55;cursor:default}.composer-toolbar,.composer-toolbar>div{align-items:center;gap:6px;display:flex}.composer-toolbar{border-top:1px solid #edf1f4;justify-content:space-between;padding-top:7px}.composer-toolbar button{color:#536d7d;min-height:28px;font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;padding:0 7px;font-size:.72rem}.composer-toolbar button:hover{background:#f5f8fa;border-color:#d7e1e7}.composer-toolbar [data-composer-stop]{color:#a43e38;border-color:#f0c7c4}.composer-toolbar span{color:#8998a2;font-size:.68rem}.composer-context-tags{flex-wrap:wrap;gap:5px;display:flex}.composer-context-tags button{color:#315f7a;min-height:27px;font:inherit;cursor:pointer;background:#f3f8fa;border:1px solid #d6e3e9;border-radius:7px;align-items:center;gap:5px;padding:2px 7px;font-size:.72rem;display:inline-flex}.composer-context-tags button>span:last-child,.composer-context-tags i{color:#8b9aa4;font-style:normal}.composer-images{gap:7px;display:flex;overflow:auto}.composer-images figure{flex:0 0 76px;margin:0;position:relative}.composer-images img{object-fit:cover;border-radius:7px;width:76px;height:58px;display:block}.composer-images button{color:#fff;cursor:pointer;background:#0f172ab8;border:0;border-radius:50%;width:20px;height:20px;position:absolute;top:3px;right:3px}.composer-images figcaption{color:#7b8c97;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:.63rem;overflow:hidden}.composer-mention-menu{z-index:60;background:#fff;border:1px solid #d7e1e7;border-radius:11px;max-height:310px;padding:7px;position:absolute;bottom:calc(100% - 5px);left:10px;right:10px;overflow:auto;box-shadow:0 16px 46px #0f172a26}.composer-mention-menu header{color:#73848f;align-items:center;gap:5px;padding:6px 7px;font-size:.7rem;display:flex}.composer-mention-menu header strong{color:#334b5a;margin-right:auto;font-size:.78rem}.composer-mention-menu kbd{font:inherit;background:#f7f9fa;border:1px solid #d9e1e6;border-radius:4px;padding:2px 4px}.composer-mention-menu>button{text-align:left;cursor:pointer;background:#fff;border:0;border-radius:7px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;width:100%;padding:8px;display:grid}.composer-mention-menu>button:hover,.composer-mention-menu>button.active{background:#edf4f7}.composer-mention-menu>button>span:not(.agent-icon){min-width:0;display:grid}.composer-mention-menu strong,.composer-mention-menu small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.composer-mention-menu small{color:#7a8b96;margin-top:2px;font-size:.68rem}.composer-mention-menu em{color:#628093;font-size:.65rem;font-style:normal}.mention-kind{color:#315f7a;background:#eef5f8;border-radius:8px;place-items:center;width:32px;height:32px;font-size:.68rem;font-weight:800;display:grid}.composer-mention-empty{text-align:center;color:#83919a;padding:15px;font-size:.76rem}.agent-chat-shell{background:#fff;border:1px solid #e0e7ec;border-radius:13px;min-width:0;position:relative;box-shadow:0 8px 26px #0f172a0b}.agent-chat-topbar{border-bottom:1px solid #e6ebef;align-items:center;gap:10px;min-height:62px;padding:8px 12px;display:flex}.agent-chat-topbar>a{color:#486779;flex:none;font-size:.76rem;text-decoration:none}.agent-chat-title{flex:1;min-width:0}.agent-chat-title h1{color:#1a303d;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:1rem;overflow:hidden}.agent-chat-title p{color:#7f909a;text-overflow:ellipsis;white-space:nowrap;margin:3px 0 0;font-size:.7rem;overflow:hidden}.agent-runtime-badge{color:#496878;background:#eef4f6;border-radius:6px;padding:4px 7px;font-size:.66rem;font-weight:750}.agent-chat-header-actions{gap:5px;display:flex}.agent-chat-header-actions button{color:#526d7c;min-height:30px;font:inherit;cursor:pointer;background:#fff;border:1px solid #dae3e8;border-radius:7px;padding:0 8px;font-size:.68rem}.agent-chat-shell .agent-chat-layout{background:#fff;border:0;border-radius:0;grid-template-columns:210px minmax(0,1fr);height:clamp(510px,100vh - 178px,820px);min-height:0;display:grid}.agent-chat-shell .agent-chat-layout.history-collapsed{grid-template-columns:48px minmax(0,1fr)}.agent-chat-shell .agent-chat-history{background:#f8fafb;border-right:1px solid #e7ecef;min-width:0;padding:9px;overflow:hidden}.agent-chat-shell .agent-chat-layout.history-collapsed .agent-chat-history>:not(.history-heading),.agent-chat-shell .agent-chat-layout.history-collapsed .history-heading strong,.agent-chat-shell .agent-chat-layout.history-collapsed .history-heading #new-agent-chat{display:none}.history-heading{align-items:center;gap:5px;margin-bottom:7px;display:flex}.history-heading strong{flex:1;font-size:.76rem}.history-heading button,#history-bulk-actions button{color:#526e7d;min-height:27px;font:inherit;cursor:pointer;background:#fff;border:1px solid #dbe4e9;border-radius:6px;padding:0 6px;font-size:.65rem}.agent-chat-history>input{box-sizing:border-box;width:100%;min-height:32px;font:inherit;border:1px solid #dbe3e8;border-radius:7px;margin-bottom:7px;padding:0 8px;font-size:.7rem}.history-row{border-radius:7px;align-items:center;gap:6px;margin:2px 0;display:flex}.history-row.active{background:#e9f1f5}.agent-chat-shell .agent-chat-history .history-row a{flex:1;min-width:0;padding:7px 8px;display:grid}.history-row strong,.history-row span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.history-row strong{font-size:.72rem}.history-row span{color:#8a99a2;margin-top:2px;font-size:.62rem}.history-row input{flex:none}.agent-chat-shell #history-bulk-actions{flex-wrap:wrap;gap:4px;margin-top:8px;display:flex}.agent-chat-shell .agent-chat-main{background:#fff;min-height:0;position:relative}.agent-chat-shell .agent-messages{scrollbar-gutter:stable;background:#fff;min-height:0;max-height:none;padding:18px clamp(16px,4vw,54px);overflow:auto}.agent-chat-shell .agent-chat-message{max-width:100%;box-shadow:none;color:#243946;background:0 0;border-radius:0;margin:0 auto 22px;padding:0;font-size:.88rem;line-height:1.72}.agent-chat-shell .agent-chat-message.is-user{color:#284554;background:#f2f6f8;border:1px solid #dce6eb;border-radius:11px;width:fit-content;max-width:min(76%,720px);margin-left:auto;margin-right:0;padding:9px 12px}.agent-message-role{color:#71828d;align-items:center;gap:6px;display:flex}.agent-message-role span{color:#70818c;background:#f0f4f6;border-radius:4px;padding:2px 5px;font-size:.58rem}.agent-chat-message .message-markdown{min-width:0}.agent-chat-message .message-markdown pre,.agent-stream-text{white-space:pre-wrap;background:#f5f7f9;border-radius:8px;max-width:100%;padding:12px;overflow:auto}.agent-chat-message .message-markdown table{border-collapse:collapse;max-width:100%;display:block;overflow:auto}.agent-chat-message .message-markdown th,.agent-chat-message .message-markdown td{border:1px solid #dce4e9;padding:7px 9px}.agent-chat-message .katex-display{overflow:auto hidden}.agent-chat-message .message-markdown img{max-width:100%;height:auto}.agent-message-actions{gap:7px;margin-top:7px;display:flex}.agent-message-actions button{color:#718793;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:5px;padding:3px 6px;font-size:.66rem}.agent-message-context{flex-wrap:wrap;gap:4px;margin:5px 0;display:flex}.agent-message-context span{color:#486d80;background:#edf4f7;border-radius:5px;padding:3px 6px;font-size:.65rem}.agent-message-images{gap:7px;margin:7px 0;display:flex}.agent-message-images img{object-fit:cover;border-radius:8px;max-width:180px;max-height:150px}.agent-sources summary{cursor:pointer;font-size:.72rem}.agent-sources article>div{justify-content:space-between;gap:10px;display:flex}.agent-sources blockquote{max-height:130px;overflow:auto}.agent-sources a{color:#315f7a;font-size:.68rem}.agent-run-list{gap:6px;margin-top:10px;display:grid}.agent-run-list h4{color:#506b79;margin:0;font-size:.72rem}.agent-run-card{background:#fafcfd;border:1px solid #e1e8ec;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px;display:grid}.agent-run-card div{min-width:0;display:grid}.agent-run-card strong{font-size:.72rem}.agent-run-card span,.agent-run-card a{color:#7d8c95;font-size:.64rem}.agent-run-card p{color:#a33f39;margin:3px 0 0;font-size:.68rem}.agent-live-runs article{color:#607681;gap:8px;padding:5px 0;font-size:.7rem;display:flex}.agent-live-sources{color:#70838e;font-size:.68rem}.memory-candidate{background:#f8fbf2;border:1px solid #d9e4c9;border-radius:9px;margin-top:10px;padding:10px}.memory-candidate p{margin:5px 0}.memory-candidate button{color:#456532;cursor:pointer;background:#fff;border:1px solid #cfdbbd;border-radius:6px;margin-right:5px;padding:5px 8px}.conversation-artifacts{gap:7px;max-width:860px;margin:15px auto;display:grid}.conversation-artifacts h3{margin:0;font-size:.78rem}.conversation-artifacts article{background:#fafcfd;border:1px solid #dce6eb;border-radius:9px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;padding:9px;display:grid}.conversation-artifacts article div{display:grid}.conversation-artifacts span,.conversation-artifacts a{color:#68808e;font-size:.67rem}.agent-floating-regenerate{z-index:4;color:#526f7f;font:inherit;cursor:pointer;background:#fff;border:1px solid #d8e2e7;border-radius:7px;padding:6px 9px;font-size:.68rem;position:absolute;bottom:122px;right:18px}.agent-memory-drawer{z-index:70;background:#fff;border-left:1px solid #dce5ea;width:min(390px,100%);transition:transform .18s;position:absolute;inset:63px 0 0 auto;overflow:auto;transform:translate(102%);box-shadow:-16px 0 35px #0f172a1c}.agent-memory-drawer.open{transform:translate(0)}#agent-memory-panel{gap:10px;padding:14px;display:grid}#agent-memory-panel>header{justify-content:space-between;align-items:center;gap:10px;display:flex}#agent-memory-panel h3{margin:0;font-size:.9rem}#agent-memory-panel header span{color:#82919a;font-size:.65rem}#agent-memory-panel form{gap:6px;display:grid}#agent-memory-panel input,#agent-memory-panel textarea{box-sizing:border-box;width:100%;font:inherit;border:1px solid #dce4e9;border-radius:7px;padding:8px;font-size:.72rem}#agent-memory-panel textarea{resize:vertical;min-height:74px}#agent-memory-panel button{color:#526e7d;cursor:pointer;background:#fff;border:1px solid #d8e1e6;border-radius:6px;min-height:28px}.memory-list{gap:7px;display:grid}.memory-list article{background:#fafcfd;border:1px solid #e0e7eb;border-radius:8px;padding:9px}.memory-list article>label{float:right;font-size:.65rem}.memory-list article p{color:#546b78;margin:5px 0;font-size:.72rem}.memory-list article small{color:#86959e;font-size:.62rem}.memory-list article div{gap:5px;margin-top:6px;display:flex}.agent-task-toolbar{background:#fff;border:1px solid #e0e7eb;border-radius:11px;grid-template-columns:minmax(220px,1fr) repeat(3,minmax(120px,auto));gap:8px;margin:13px 0;padding:10px;display:grid}.agent-task-toolbar input,.agent-task-toolbar select{min-width:0;min-height:36px;font:inherit;background:#fff;border:1px solid #d9e2e7;border-radius:7px;padding:0 9px;font-size:.74rem}.agent-task-list{gap:7px;display:grid}.agent-task-row{background:#fff;border:1px solid #e0e7eb;border-radius:10px;grid-template-columns:minmax(230px,1.2fr) minmax(230px,1.4fr) minmax(150px,.7fr) minmax(170px,.8fr);align-items:center;gap:13px;padding:11px 13px;display:grid}.agent-task-identity{align-items:center;gap:9px;min-width:0;display:flex}.agent-task-identity>div{min-width:0;display:grid}.agent-task-identity strong,.agent-task-identity span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.agent-task-identity strong{font-size:.78rem}.agent-task-identity span,.agent-task-meta{color:#7b8c96;font-size:.66rem}.agent-task-progress>div{color:#526b78;justify-content:space-between;gap:8px;font-size:.68rem;display:flex}.agent-task-progress>i{background:#edf1f3;border-radius:5px;height:5px;margin-top:6px;display:block;overflow:hidden}.agent-task-progress>i em{border-radius:inherit;background:#3f7895;height:100%;display:block}.agent-task-progress>i.indeterminate:after{content:"";background:#3f7895;width:36%;height:100%;animation:1.2s ease-in-out infinite agent-task-indeterminate;display:block}.agent-task-progress p{color:#a9433e;margin:5px 0 0;font-size:.65rem}.agent-task-meta{gap:2px;display:grid}.agent-task-state{justify-items:end;gap:6px;display:grid}.agent-task-state>span{color:#47697a;background:#eef4f6;border-radius:5px;padding:3px 6px;font-size:.65rem}.agent-task-state>div{flex-wrap:wrap;justify-content:flex-end;gap:4px;display:flex}.agent-task-state button,.agent-task-state a{color:#45687a;font:inherit;cursor:pointer;background:#fff;border:1px solid #d8e1e6;border-radius:6px;padding:4px 6px;font-size:.64rem;text-decoration:none}@keyframes agent-task-indeterminate{0%{transform:translate(-110%)}to{transform:translate(300%)}}.file-generator-shell .agent-chat-layout{height:auto;min-height:calc(100vh - 180px)}.file-generator-main{background:#f8fafb;padding:12px;overflow:auto}.file-generator-main .agent-create-form{gap:10px;display:grid}.file-generator-main .complex-card{box-shadow:none;border-radius:10px;padding:14px}.file-generator-main .complex-card h2{margin:0 0 10px;font-size:.88rem}.file-generator-main label{color:#455e6d;font-size:.72rem}.file-generator-main input,.file-generator-main select,.file-generator-main textarea{box-sizing:border-box;font:inherit}.fg-knowledge-options,.fg-check-grid{flex-wrap:wrap;gap:7px;display:flex}.fg-knowledge-options label,.fg-check-grid label{background:#fafcfd;border:1px solid #e0e7eb;border-radius:7px;padding:6px 8px}.fg-question-types{gap:5px;margin-top:10px;display:grid}.fg-question-types>header,.fg-question-type{background:#fafcfd;border:1px solid #e1e8ec;border-radius:7px;grid-template-columns:minmax(120px,1fr) minmax(120px,.7fr) minmax(150px,.7fr);align-items:center;gap:8px;padding:7px 9px;display:grid}.fg-question-types>header{background:0 0;border:0;grid-template-columns:1fr auto}.fg-question-type label{align-items:center;gap:5px;display:flex}.fg-question-type input{border:1px solid #d7e1e6;border-radius:6px;width:100%;min-width:0;padding:6px}.fg-question-types .is-error{color:#aa413a}.fg-natural-plan{margin-top:10px}.fg-natural-plan>p{color:#70828d;font-size:.72rem}.fg-confirm-card{margin-top:10px}.fg-confirm-actions{align-items:center;gap:10px;display:flex}.fg-confirm-actions a{color:#315f7a;font-size:.72rem}.fg-missing{color:#76521e;background:#fff7e8;border-radius:7px;margin-top:9px;padding:8px;font-size:.72rem}@media (width<=1100px){.agent-icon-options{grid-template-columns:repeat(7,minmax(36px,1fr))}.agent-chat-header-actions{max-width:42%;overflow:auto}.agent-task-row{grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) minmax(150px,.6fr)}.agent-task-state{grid-column:1/-1;justify-content:space-between;align-items:center;display:flex}}@media (width<=800px){.agent-chat-topbar{flex-wrap:wrap}.agent-chat-title{flex-basis:calc(100% - 130px)}.agent-chat-header-actions{order:5;width:100%;max-width:none}.agent-chat-shell .agent-chat-layout{grid-template-columns:1fr;height:auto;min-height:540px}.agent-chat-shell .agent-chat-history{display:none}.agent-chat-shell .agent-messages{min-height:380px;padding:14px}.agent-chat-message.is-user{max-width:90%}.agent-memory-drawer{inset:105px 0 0}.agent-task-toolbar{grid-template-columns:1fr 1fr}.agent-task-toolbar input:first-child{grid-column:1/-1}.agent-task-row{grid-template-columns:1fr}.agent-task-state{grid-column:auto}.file-generator-shell .agent-chat-history{display:none}.fg-question-type{grid-template-columns:1fr 1fr}.fg-question-type>span{grid-column:1/-1}.agent-icon-options{grid-template-columns:repeat(6,minmax(36px,1fr))}}@media (width<=560px){.unified-composer{margin:8px}.composer-toolbar{align-items:flex-start}.composer-toolbar>div:first-child{flex-wrap:wrap}.composer-toolbar>div:last-child{margin-left:auto}.composer-mention-menu{left:0;right:0}.agent-icon-options{grid-template-columns:repeat(5,minmax(36px,1fr))}.agent-task-toolbar{grid-template-columns:1fr}.agent-task-toolbar input:first-child{grid-column:auto}.agent-task-row{padding:10px}.fg-question-type{grid-template-columns:1fr}.fg-question-type>span{grid-column:auto}.agent-chat-title p{white-space:normal}.agent-runtime-badge{display:none}}.knowledge-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:12px;display:grid}.knowledge-card{background:#fff;border:1px solid #e0e7eb;border-radius:11px;flex-direction:column;min-width:0;min-height:210px;padding:15px;display:flex;box-shadow:0 3px 12px #0f172a09}.knowledge-page>.agent-market-hero{color:#203743;background:#fff;border:1px solid #e0e7eb;border-radius:11px;min-height:auto;padding:17px 19px;box-shadow:0 3px 13px #0f172a09}.knowledge-page>.agent-market-hero h1{font-size:1.15rem}.knowledge-page>.agent-market-hero p{color:#71838e;margin-top:4px}.knowledge-page>.agent-market-hero .complex-btn{align-self:center}.knowledge-page .knowledge-tabs{margin-top:14px}.knowledge-card-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.knowledge-card-head>div{min-width:0}.knowledge-card-head h3{color:#203743;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.92rem;overflow:hidden}.knowledge-card-head p{color:#71838e;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:34px;margin:6px 0 0;font-size:.7rem;line-height:1.5;display:-webkit-box;overflow:hidden}.knowledge-meta{color:#768893;flex-wrap:wrap;gap:5px 10px;margin:12px 0;font-size:.66rem;display:flex}.knowledge-card .agent-card-actions{align-items:center;gap:6px;margin-top:auto;display:flex}.knowledge-card .agent-card-actions>button,.knowledge-card .agent-card-actions>label{white-space:nowrap}.knowledge-integrity-warning{color:#885f27;background:#fff6e7;border-radius:7px;margin:8px 0 0;padding:7px 8px;font-size:.68rem}.knowledge-more-trigger{color:#59717f;width:31px;min-width:31px;height:31px;font:inherit;cursor:pointer;background:#fff;border:1px solid #dbe3e8;border-radius:7px;place-items:center;margin-left:auto;padding:0;display:grid}.agent-chat-shell{overflow:hidden}.agent-chat-shell .agent-chat-main{grid-template-rows:minmax(0,1fr) auto;display:grid;overflow:visible}.unified-composer{z-index:55}.composer-mention-menu{overscroll-behavior:contain;max-height:min(310px,45vh)}.agent-memory-backdrop{z-index:65;cursor:default;background:#0f1e2838;border:0;position:absolute;inset:63px 0 0}.agent-memory-backdrop[hidden]{display:none}.agent-memory-drawer{z-index:70;visibility:hidden;width:min(390px,92%);transition:transform .18s,visibility 0s linear .18s;position:absolute;inset:63px 0 0 auto;transform:translate(102%)}.agent-memory-drawer.open{visibility:visible;transition-delay:0s;transform:translate(0)}@media (width<=1100px){.knowledge-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=720px){.knowledge-grid{grid-template-columns:1fr}.knowledge-card{min-height:190px}.agent-memory-backdrop,.agent-memory-drawer{top:105px}}@media (height<=700px){.agent-chat-shell .agent-chat-layout{height:max(360px,100vh - 178px)}}.knowledge-page{color:#243845}.knowledge-console-head{background:#fff;border:1px solid #e0e7eb;border-radius:11px;justify-content:space-between;align-items:center;gap:18px;padding:15px 17px;display:flex;box-shadow:0 3px 13px #0f172a09}.knowledge-console-head>div:first-child{min-width:0}.knowledge-console-head>div:last-child{flex:none;gap:7px;display:flex}.knowledge-console-head span{color:#66808e;letter-spacing:.08em;font-size:.65rem;font-weight:700}.knowledge-console-head h1{color:#203743;margin:2px 0 0;font-size:1.35rem}.knowledge-console-head p{color:#71838e;margin:3px 0 0;font-size:.72rem}.knowledge-console-head button{min-height:34px;padding:0 11px}.knowledge-summary{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:11px;display:grid}.knowledge-summary article{background:#fff;border:1px solid #e2e8ec;border-radius:9px;justify-content:space-between;align-items:center;gap:8px;min-height:56px;padding:9px 12px;display:flex}.knowledge-summary span{color:#728691;font-size:.67rem}.knowledge-summary b{color:#294b5e;font-size:1.05rem}.knowledge-toolbar{background:#fff;border:1px solid #e0e7eb;border-radius:10px;grid-template-columns:auto minmax(190px,1fr) repeat(4,minmax(108px,auto)) auto;align-items:center;gap:6px;margin:10px 0;padding:7px;display:grid}.knowledge-toolbar .knowledge-tabs{background:#f2f5f7;border-radius:7px;gap:2px;margin:0;padding:2px;display:flex}.knowledge-toolbar .knowledge-tabs button{color:#6d808b;min-height:29px;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:0 9px;font-size:.67rem}.knowledge-toolbar .knowledge-tabs button.active{color:#315f7a;background:#fff;font-weight:700;box-shadow:0 1px 4px #0f172a14}.knowledge-search{border:1px solid #dce4e9;border-radius:7px;align-items:center;gap:5px;height:32px;padding:0 8px;display:flex}.knowledge-search svg{color:#84949d;width:14px;height:14px}.knowledge-search input{width:100%;min-width:0;font:inherit;background:0 0;border:0;outline:0;font-size:.68rem}.knowledge-toolbar select{color:#526b78;min-width:0;height:32px;font:inherit;background:#fff;border:1px solid #dce4e9;border-radius:7px;padding:0 22px 0 7px;font-size:.66rem}.knowledge-view-toggle{gap:2px;display:flex}.knowledge-view-toggle button{color:#738690;cursor:pointer;background:#fff;border:1px solid #dce4e9;width:31px;height:31px}.knowledge-view-toggle button:first-child{border-radius:7px 0 0 7px}.knowledge-view-toggle button:last-child{border-radius:0 7px 7px 0}.knowledge-view-toggle button.active{color:#315f7a;background:#edf5f8;border-color:#9dbbc9}#knowledge-list-root{min-height:170px;transition:opacity .14s}#knowledge-list-root.is-filtering{opacity:.48}.knowledge-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.knowledge-card{cursor:pointer;min-height:224px;animation:.24s both knowledge-card-in;animation-delay:calc(var(--kb-index,0) * 28ms);border-color:#e0e7eb;border-radius:10px;padding:13px;transition:border-color .16s,box-shadow .16s,transform .16s;box-shadow:0 2px 9px #0f172a06}.knowledge-card:hover{border-color:#b9cbd5;transform:translateY(-1px);box-shadow:0 8px 20px #1b3c4e14}.knowledge-card.status-processing{border-top-color:#8db7cb}.knowledge-card.status-partial{border-top-color:#d4ad69}.knowledge-card.status-failed{border-top-color:#d58c86}.knowledge-card-head{grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.knowledge-card-head>div{gap:2px;min-width:0;display:grid}.knowledge-card-head h3{font-size:.82rem}.knowledge-card-head>div>span{color:#7c8e98;font-size:.6rem}.knowledge-source{border-radius:8px;place-items:center;width:28px;height:28px;margin:0;padding:0;font-size:.65rem;display:grid}.knowledge-source.source-dify{color:#4f46a5;background:#eef2ff}.knowledge-source.source-local{color:#287467;background:#edf7f5}.knowledge-card .agent-status{text-overflow:ellipsis;white-space:nowrap;max-width:92px;overflow:hidden}.knowledge-card-description{color:#667b87;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:32px;margin:9px 0 8px;font-size:.68rem;line-height:1.48;display:-webkit-box;overflow:hidden}.knowledge-integrity-warning{color:#8a5c1f;text-align:left;width:max-content;max-width:100%;font:inherit;cursor:pointer;background:#fff5e3;border:0;border-radius:6px;margin:7px 0 0;padding:4px 7px;font-size:.62rem}.knowledge-card-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin:1px 0 8px;display:grid}.knowledge-card-stats>div{text-align:center;background:#f7f9fa;border-radius:7px;padding:6px 5px}.knowledge-card-stats dt{color:#82919a;font-size:.58rem}.knowledge-card-stats dd{color:#375463;margin:2px 0 0;font-size:.76rem;font-weight:700}.knowledge-card-stats .has-error dd{color:#ae4c43}.knowledge-card-facts{gap:5px;margin-bottom:8px;display:flex;overflow:hidden}.knowledge-card-facts span{color:#71838d;text-overflow:ellipsis;white-space:nowrap;background:#f4f7f8;border-radius:5px;padding:3px 5px;font-size:.58rem;overflow:hidden}.knowledge-card-actions{align-items:center;gap:5px;margin-top:auto;display:flex}.knowledge-card-actions>button,.knowledge-card-actions>label{box-sizing:border-box;color:#526f7e;min-height:31px;font:inherit;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #d9e3e8;border-radius:7px;padding:0 8px;font-size:.63rem}.knowledge-card-actions .knowledge-open{color:#fff;background:#315f7a;border-color:#315f7a}.knowledge-upload{justify-content:center;align-items:center;display:inline-flex}.knowledge-card-actions .knowledge-sync{align-items:center;gap:3px;display:inline-flex}.knowledge-sync svg{width:13px;height:13px}.knowledge-sync.is-busy svg{animation:.7s linear infinite knowledge-sync-spin}.knowledge-card-actions .knowledge-retry{color:#99651d}.knowledge-card-actions .knowledge-more{margin-left:auto}.knowledge-more>div{top:36px;bottom:auto}.knowledge-empty{gap:5px}.knowledge-empty p{margin:0}.knowledge-empty span{color:#85949c;font-size:.67rem}.knowledge-grid.is-list{grid-template-columns:1fr}.knowledge-grid.is-list .knowledge-card{grid-template-columns:minmax(190px,1.2fr) minmax(160px,1fr) minmax(230px,1.2fr) auto;align-items:center;gap:10px;min-height:82px;padding:10px 12px;display:grid}.knowledge-grid.is-list .knowledge-card-description{min-height:0;margin:0}.knowledge-grid.is-list .knowledge-card-stats{margin:0}.knowledge-grid.is-list .knowledge-card-facts{display:none}.knowledge-grid.is-list .knowledge-card-actions{margin:0}.knowledge-grid.is-list .knowledge-integrity-warning{grid-column:1/-1}.knowledge-drawer-backdrop{z-index:119;background:#14252f47;border:0;animation:.16s knowledge-fade-in;position:fixed;inset:0}.knowledge-detail-drawer{z-index:120;box-sizing:border-box;background:#f7f9fa;width:min(720px,92vw);animation:.2s knowledge-drawer-in;position:fixed;top:0;bottom:0;right:0;overflow:auto;box-shadow:-18px 0 42px #0f172a26}.knowledge-detail-drawer.is-loading{color:#6d808b;place-items:center;font-size:.75rem;display:grid}.knowledge-detail-drawer>header{z-index:3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff7;border-bottom:1px solid #e0e7eb;justify-content:space-between;align-items:flex-start;gap:15px;padding:15px 18px;display:flex;position:sticky;top:0}.knowledge-detail-drawer>header>div{min-width:0}.knowledge-detail-drawer>header span{color:#6d8490;font-size:.63rem;font-weight:700}.knowledge-detail-drawer>header h2{color:#203743;margin:3px 0 0;font-size:1.08rem}.knowledge-detail-drawer>header p{color:#738691;margin:4px 0 0;font-size:.68rem}.knowledge-detail-drawer>header>button{color:#617984;cursor:pointer;background:#fff;border:1px solid #dce4e9;border-radius:7px;width:30px;height:30px;font-size:1.05rem}.knowledge-drawer-warning{color:#745324;background:#fff7e8;border-left:3px solid #d19a45;border-radius:7px;align-items:center;gap:10px;margin:12px 14px 0;padding:8px 10px;font-size:.65rem;display:flex}.knowledge-drawer-warning span{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.knowledge-drawer-warning button{color:#8d5d16;font:inherit;cursor:pointer;background:0 0;border:0;font-weight:700}.knowledge-detail-overview{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;padding:12px 14px;display:grid}.knowledge-detail-overview article{background:#fff;border:1px solid #e0e7eb;border-radius:8px;gap:3px;padding:9px;display:grid}.knowledge-detail-overview span{color:#7b8c96;font-size:.6rem}.knowledge-detail-overview b{color:#355463;text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;overflow:hidden}.knowledge-detail-documents{padding:0 14px 18px}.knowledge-detail-title{justify-content:space-between;align-items:center;gap:12px;margin-bottom:7px;display:flex}.knowledge-detail-title h3{color:#294452;margin:0;font-size:.82rem}.knowledge-detail-title p{color:#7b8c96;margin:3px 0 0;font-size:.61rem}.knowledge-detail-title .knowledge-upload{color:#315f7a;cursor:pointer;background:#fff;border:1px solid #bdd0d9;border-radius:7px;min-height:31px;padding:0 9px;font-size:.65rem}.knowledge-document-list{gap:7px;display:grid}.knowledge-document-row{gap:7px;padding:10px}.knowledge-document-row>header{justify-content:space-between;align-items:center;gap:10px;display:flex}.knowledge-document-row>header>div{align-items:center;gap:7px;min-width:0;display:flex}.knowledge-document-row>header b{color:#304b59;text-overflow:ellipsis;white-space:nowrap;font-size:.71rem;overflow:hidden}.knowledge-document-row>header span{color:#5c7481;background:#f0f4f6;border-radius:5px;padding:2px 5px;font-size:.58rem}.knowledge-document-row>header small{color:#7b8c96;white-space:nowrap;font-size:.59rem}.knowledge-document-row>footer{justify-content:flex-end;gap:5px;display:flex}.knowledge-document-row>footer button{color:#526e7d;min-height:27px;font:inherit;cursor:pointer;background:#fff;border:1px solid #d8e2e7;border-radius:6px;padding:3px 7px;font-size:.6rem}.knowledge-document-row>footer button.danger{color:#a64a43}.knowledge-pipeline{gap:3px}.knowledge-pipeline span{color:#6d7f89;background:#eef2f4;padding:3px 6px}.knowledge-pipeline span.done{color:#347058;background:#edf6f1}.knowledge-pipeline span.active{color:#2f6690;background:#eaf3f8;position:relative;overflow:hidden}.knowledge-pipeline span.active:after{content:"";background:#5a90aa;height:2px;animation:1.2s ease-in-out infinite knowledge-progress;position:absolute;bottom:0;left:0;right:0}.knowledge-pipeline span.failed{color:#a8453e;background:#fff0ef}.knowledge-drawer-empty{color:#7d8d96;text-align:center;background:#fff;border:1px dashed #d8e2e7;border-radius:9px;padding:24px;font-size:.7rem}.knowledge-preview-modal{z-index:150;background:#0f1d2685;place-items:center;padding:28px;display:grid;position:fixed;inset:0}.knowledge-preview-modal>div{background:#fff;border-radius:11px;grid-template-rows:auto minmax(0,1fr);width:min(980px,96vw);height:min(820px,92vh);display:grid;overflow:hidden;box-shadow:0 24px 60px #00000040}.knowledge-preview-modal header{border-bottom:1px solid #e0e7eb;justify-content:space-between;align-items:center;gap:12px;padding:8px 11px;display:flex}.knowledge-preview-modal header b{text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.knowledge-preview-modal header button{cursor:pointer;background:#f2f5f7;border:0;border-radius:6px;width:30px;height:30px}.knowledge-preview-modal iframe{background:#eef1f3;border:0;width:100%;height:100%}.knowledge-preview-loading{color:#6c808b;place-items:center;font-size:.75rem;display:grid}@keyframes knowledge-card-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes knowledge-fade-in{0%{opacity:0}to{opacity:1}}@keyframes knowledge-drawer-in{0%{opacity:.6;transform:translate(24px)}to{opacity:1;transform:translate(0)}}@keyframes knowledge-sync-spin{to{transform:rotate(360deg)}}@keyframes knowledge-progress{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media (width<=1180px){.knowledge-toolbar{grid-template-columns:auto minmax(180px,1fr) repeat(2,minmax(105px,auto))}.knowledge-toolbar #kb-visibility,.knowledge-toolbar #kb-sort,.knowledge-toolbar .knowledge-view-toggle{grid-row:2}.knowledge-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.knowledge-grid.is-list .knowledge-card{grid-template-columns:minmax(190px,1fr) minmax(160px,1fr) auto}.knowledge-grid.is-list .knowledge-card-description{display:none}}@media (width<=760px){.knowledge-console-head{flex-direction:column;align-items:flex-start}.knowledge-console-head>div:last-child{width:100%}.knowledge-console-head>div:last-child button{flex:1}.knowledge-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.knowledge-toolbar{grid-template-columns:1fr 1fr}.knowledge-toolbar .knowledge-tabs,.knowledge-toolbar .knowledge-search{grid-column:1/-1}.knowledge-toolbar select{width:100%}.knowledge-grid{grid-template-columns:1fr}.knowledge-grid.is-list .knowledge-card{min-height:210px;display:flex}.knowledge-grid.is-list .knowledge-card-description,.knowledge-grid.is-list .knowledge-card-facts{display:-webkit-box}.knowledge-detail-overview{grid-template-columns:1fr 1fr}.knowledge-detail-drawer{width:100vw}.knowledge-preview-modal{padding:8px}}@media (width<=480px){.knowledge-summary{grid-template-columns:1fr 1fr}.knowledge-card-actions{flex-wrap:wrap}.knowledge-card-actions .knowledge-more{margin-left:0}.knowledge-detail-title{flex-direction:column;align-items:flex-start}.knowledge-detail-overview{grid-template-columns:1fr}.knowledge-pipeline{overflow-x:auto}}@media (prefers-reduced-motion:reduce){#knowledge-list-root,.knowledge-card,.knowledge-card:hover,.knowledge-drawer-backdrop,.knowledge-detail-drawer,.knowledge-pipeline span.active:after,.knowledge-sync.is-busy svg{transition:none;animation:none;transform:none}}.agent-card-menu-portal button.is-danger{color:#a9433e}.knowledge-card-actions .knowledge-more-trigger{width:31px;min-width:31px;margin-left:auto;padding:0}@media (width<=480px){.knowledge-card-actions .knowledge-more-trigger{margin-left:0}}.knowledge-document-row .knowledge-pipeline{justify-content:flex-start}.agent-task-row{grid-template-columns:28px minmax(210px,1.2fr) minmax(210px,1.4fr) minmax(140px,.7fr) minmax(160px,.8fr)}@media (width<=1100px){.agent-task-row{grid-template-columns:28px minmax(210px,1fr) minmax(210px,1fr) minmax(140px,.6fr)}.agent-task-state{grid-column:2/-1}}@media (width<=800px){.agent-task-row{grid-template-columns:28px minmax(0,1fr)}.agent-task-row>:not(.agent-task-select),.agent-task-state{grid-column:2}}.composer-file-icon{color:#4b6979;background:#edf3f6;border-radius:7px;place-items:center;width:72px;height:52px;font-size:.68rem;font-weight:700;display:grid}.ai-message-file{color:#456879;font:inherit;cursor:pointer;background:#f7fafb;border:1px solid #d9e3e8;border-radius:7px;padding:7px 9px;font-size:.68rem}.ai-learning-context-banner{color:#526f7d;background:#f2f8fa;border:1px solid #cfe0e7;border-radius:8px;align-items:center;gap:9px;max-width:860px;margin:10px auto;padding:8px 11px;font-size:.67rem;display:flex}.ai-learning-context-banner strong{color:#315f7a}.ai-artifact-card{background:#f8fbfc;border:1px solid #d8e4e9;border-radius:9px;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin-top:8px;padding:9px 10px;display:grid}.ai-artifact-card>div{gap:2px;min-width:0;display:grid}.ai-artifact-card strong,.ai-artifact-card span,.ai-artifact-card small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ai-artifact-card strong{color:#294f62;font-size:.74rem}.ai-artifact-card span,.ai-artifact-card small{color:#71848f;font-size:.62rem}.ai-artifact-card footer{align-items:center;gap:5px;display:flex}.ai-artifact-card a,.ai-artifact-card button{color:#315f7a;font:inherit;cursor:pointer;background:#fff;border:1px solid #cddde4;border-radius:6px;padding:5px 7px;font-size:.62rem;text-decoration:none}@media (width<=640px){.ai-artifact-card{grid-template-columns:1fr}.ai-artifact-card footer{flex-wrap:wrap}}.file-generator-shell{box-shadow:none;background:0 0;border:0;border-radius:18px;overflow:visible}.file-generator-shell .agent-chat-main{display:block;overflow:visible}.file-generator-shell .file-generator-main{background:linear-gradient(#f4f8fb 0,#f8fafc 65%,#f4f7f9 100%);grid-template-columns:minmax(0,1fr) 292px;align-items:start;gap:18px;padding:20px;display:grid}.fg-workspace-hero{color:#fff;background:radial-gradient(circle at 78% 4%,#81a9ff61,#0000 34%),linear-gradient(125deg,#123e69,#235f96 52%,#4080b3);border:1px solid #aec6dcbf;border-radius:18px 18px 0 0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:20px;padding:22px 24px;display:grid;position:relative;overflow:hidden}.fg-workspace-hero:after{content:"";border:1px solid #ffffff40;border-radius:50%;width:290px;height:290px;position:absolute;bottom:-108px;right:5%}.fg-mode-exam .fg-workspace-hero{background:radial-gradient(circle at 78% 4%,#f6ae6061,#0000 34%),linear-gradient(125deg,#362060,#65409d 52%,#9663bf)}.fg-back-link{z-index:1;color:#ffffffdb;white-space:nowrap;align-items:center;min-height:30px;font-size:.72rem;text-decoration:none;display:inline-flex;position:relative}.fg-back-link:hover{color:#fff}.fg-hero-title{z-index:1;align-items:center;gap:13px;min-width:0;display:flex;position:relative}.fg-hero-title>.agent-icon{box-shadow:0 10px 22px #05173033}.fg-hero-title>div{min-width:0}.fg-hero-title span{color:#ecf7ffbf;letter-spacing:.14em;font-size:.6rem;font-weight:800;display:block}.fg-hero-title h1{color:#fff;letter-spacing:.01em;margin:4px 0 2px;font-size:1.32rem}.fg-hero-title p{color:#f0f8ffd1;max-width:650px;margin:0;font-size:.73rem;line-height:1.55}.fg-hero-meta{z-index:1;color:#eff8ffbd;white-space:nowrap;justify-items:end;gap:7px;font-size:.63rem;display:grid;position:relative}.fg-status-pill{color:#fff;background:#07214133;border:1px solid #ffffff42;border-radius:999px;padding:5px 9px;font-size:.65rem;font-weight:700}.fg-stepper{color:#7c909f;background:#fff;border-bottom:1px solid #dce7f0;border-left:1px solid #dce7f0;border-right:1px solid #dce7f0;border-radius:0 0 15px 15px;align-items:center;gap:18px;padding:12px 24px;display:flex}.fg-stepper>span{align-items:center;gap:6px;font-size:.68rem;font-weight:700;display:flex}.fg-stepper i{color:#80919b;background:#f8fafb;border:1px solid #cfdae2;border-radius:50%;place-items:center;width:19px;height:19px;font-size:.61rem;font-style:normal;display:grid}.fg-stepper .is-active{color:#2c668e}.fg-stepper .is-active i{color:#25628d;background:#eaf5fb;border-color:#74a5c1}.fg-mode-exam .fg-stepper .is-active{color:#7047a2}.fg-mode-exam .fg-stepper .is-active i{color:#7445a7;background:#f2edfb;border-color:#b9a1df}.fg-stepper p{color:#8697a1;margin:0 0 0 auto;font-size:.65rem}.fg-workspace-layout{background:#f4f8fb;border:1px solid #dce7ef;border-top:0;border-radius:0 0 18px 18px;grid-template-columns:218px minmax(0,1fr);min-height:calc(100vh - 210px);display:grid}.fg-history{background:linear-gradient(#fbfdff,#f1f6fa);border-right:1px solid #dde7ee;flex-direction:column;min-width:0;padding:15px 11px;display:flex}.fg-history-head{justify-content:space-between;align-items:center;gap:7px;margin:0 3px 11px;display:flex}.fg-history-head>span{color:#5f7482;font-size:.67rem;font-weight:800}.fg-history-head button{color:#2e668e;min-height:29px;font:inherit;cursor:pointer;background:#fff;border:1px solid #c8d9e4;border-radius:7px;padding:0 7px;font-size:.62rem;font-weight:700}.fg-history-list{gap:4px;display:grid;overflow:auto}.fg-history-list>a{color:#748692;border:1px solid #0000;border-radius:8px;align-items:flex-start;gap:7px;min-width:0;padding:8px;text-decoration:none;display:flex}.fg-history-list>a:hover{background:#fff}.fg-history-list>a.active{color:#2e668e;background:#eaf5fb;border-color:#bed8e8;box-shadow:0 3px 9px #3c68820f}.fg-history-list>a>span{font-size:.62rem;line-height:1.7}.fg-history-list a>div{gap:2px;min-width:0;display:grid}.fg-history-list strong,.fg-history-list small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fg-history-list strong{font-size:.68rem}.fg-history-list small{color:#96a5ae;font-size:.59rem}.fg-history-list>p{color:#8898a2;margin:8px;font-size:.65rem}.fg-history-note{color:#7b8d98;background:#ffffffa6;border:1px dashed #c8d8e3;border-radius:9px;gap:4px;margin-top:auto;padding:10px 9px;display:grid}.fg-history-note b{color:#426276;font-size:.64rem}.fg-history-note span{font-size:.59rem;line-height:1.55}.fg-workbench{gap:15px;min-width:0;display:grid}.fg-workspace-form{gap:15px;display:grid}.fg-panel{background:#fff;border:1px solid #dce7ed;border-radius:14px;min-width:0;padding:19px;box-shadow:0 4px 14px #1e445d09}.fg-section-head{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:16px;display:flex}.fg-section-head>div{min-width:0}.fg-section-head span{color:#4b87aa;letter-spacing:.1em;font-size:.61rem;font-weight:800;display:block}.fg-mode-exam .fg-section-head span{color:#8053ad}.fg-section-head h2{color:#29485b;margin:4px 0 3px;font-size:1.01rem}.fg-section-head p{color:#788b96;max-width:620px;margin:0;font-size:.68rem;line-height:1.55}.fg-section-mark{color:#347399;background:#eaf5fb;border-radius:11px;flex:none;place-items:center;width:37px;height:37px;font-size:1rem;display:grid}.fg-mode-exam .fg-section-mark{color:#8155ad;background:#f4eefc}.fg-field-grid{gap:10px;display:grid}.fg-field-grid-primary{grid-template-columns:1fr 1.15fr .9fr 1.45fr}.fg-field-grid-three{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:13px}.fg-field-grid-two{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:13px}.fg-panel label,.fg-locked-type{color:#506875;gap:5px;font-size:.67rem;font-weight:700;display:grid}.fg-panel input,.fg-panel select,.fg-panel textarea{box-sizing:border-box;color:#294757;width:100%;font:inherit;background:#fbfdfe;border:1px solid #d8e4ea;border-radius:8px;outline:none;font-size:.72rem;transition:border-color .15s,box-shadow .15s}.fg-panel input,.fg-panel select{height:37px;padding:0 10px}.fg-panel textarea{resize:vertical;min-height:88px;padding:9px 10px;line-height:1.55}.fg-panel input:focus,.fg-panel select:focus,.fg-panel textarea:focus{border-color:#76a8c4;box-shadow:0 0 0 3px #5194b921}.fg-locked-type{background:#f0f8fc;border:1px solid #cde1ec;border-radius:8px;justify-content:center;padding:7px 10px}.fg-locked-type span{color:#6e8795;font-size:.59rem}.fg-locked-type b{color:#2f698d;font-size:.77rem}.fg-locked-type small{color:#7c939f;font-size:.59rem;font-weight:400}.fg-mode-exam .fg-locked-type{background:#f7f3fc;border-color:#dfd1f1}.fg-mode-exam .fg-locked-type b{color:#7951a6}.fg-knowledge-picker{background:#f9fbfc;border:1px solid #e0e9ee;border-radius:10px;margin-top:16px;padding:13px}.fg-picker-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.fg-picker-head>div:first-child{gap:2px;display:grid}.fg-picker-head b{color:#405d6d;font-size:.73rem}.fg-picker-head small{color:#81929c;font-size:.62rem}.fg-picker-head>div:last-child{gap:6px;display:flex}.fg-picker-head input{width:170px;height:31px;font-size:.65rem}.fg-picker-head button{color:#66808e;height:31px;font:inherit;cursor:pointer;background:#fff;border:1px solid #d2dfe6;border-radius:7px;padding:0 8px;font-size:.61rem}.fg-picker-head button:disabled{cursor:not-allowed;opacity:.45}.fg-knowledge-grid{flex-wrap:wrap;gap:6px;max-height:244px;padding-right:3px;display:flex;overflow:auto}.fg-knowledge-chip{cursor:pointer;background:#fff;border:1px solid #dce6eb;border-radius:7px;align-items:center;gap:5px;width:auto;position:relative;color:#58707d!important;padding:7px 9px!important;font-size:.64rem!important;font-weight:600!important;display:inline-flex!important}.fg-knowledge-chip input{opacity:0;position:absolute;width:1px!important;height:1px!important}.fg-knowledge-chip:has(input:checked){background:#eaf6fb;border-color:#78adca;box-shadow:inset 0 0 0 1px #4891b71a;color:#26678d!important}.fg-mode-exam .fg-knowledge-chip:has(input:checked){background:#f3edfb;border-color:#b996d7;color:#7448a0!important}.fg-knowledge-empty{color:#81929d;text-align:center;border:1px dashed #cfdee6;border-radius:8px;place-content:center;gap:3px;min-height:72px;display:grid}.fg-knowledge-empty b{color:#597180;font-size:.69rem}.fg-knowledge-empty span{font-size:.62rem}.fg-score-strip{color:#65428c;background:#f5f0fb;border-radius:8px;justify-content:space-between;align-items:center;margin:0 0 7px;padding:9px 11px;font-size:.68rem;display:flex}.fg-score-strip b{font-size:.7rem}.fg-score-strip span{font-size:.64rem}.fg-score-strip .is-error{color:#ac5546}.fg-question-types{gap:6px;display:grid}.fg-question-type{background:#fbfcfd;border:1px solid #e0e7ed;border-radius:9px;grid-template-columns:minmax(120px,1.2fr) minmax(90px,.65fr) minmax(100px,.7fr);align-items:end;gap:9px;padding:9px 11px;display:grid}.fg-question-type>div{gap:2px;display:grid}.fg-question-type strong{color:#425e6d;font-size:.7rem}.fg-question-type small{color:#95a4ac;letter-spacing:.06em;font-size:.56rem}.fg-question-type label{gap:3px;font-size:.59rem}.fg-question-type input{height:32px;padding:0 8px}.fg-toggle-row{flex-wrap:wrap;gap:7px;margin-top:13px;display:flex}.fg-toggle-row label{color:#59717e;cursor:pointer;background:#fbfdfe;border:1px solid #dbe6eb;border-radius:8px;align-items:center;gap:6px;padding:7px 9px;font-size:.64rem;font-weight:600;display:flex}.fg-toggle-row input{width:14px;height:14px;margin:0}.fg-objectives-field{margin-top:2px}.fg-objectives-field>span{color:#506875;font-size:.67rem;font-weight:700}.fg-objectives-field>small{color:#84949d;font-size:.61rem;font-weight:400}.fg-output-panel{padding-bottom:14px}.fg-format-options{gap:8px;margin:-1px 0 13px;display:flex}.fg-format-options label{cursor:pointer;background:#fbfdfe;border:1px solid #dce6eb;border-radius:9px;grid-template-columns:auto 1fr;gap:0 7px;min-width:125px;padding:9px 10px;display:grid}.fg-format-options label:has(input:checked){background:#edf7fb;border-color:#79aac4}.fg-mode-exam .fg-format-options label:has(input:checked){background:#f5effb;border-color:#b799d9}.fg-format-options input{width:14px;height:14px;margin:2px 0 0}.fg-format-options span{color:#496473;font-size:.69rem}.fg-format-options small{color:#8a9aa3;grid-column:2;font-size:.58rem;font-weight:400}.fg-form-footer{border-top:1px solid #e5edf0;justify-content:space-between;align-items:center;gap:12px;margin-top:13px;padding-top:13px;display:flex}.fg-form-footer>span{color:#82929b;font-size:.61rem}.fg-save-button,.fg-primary-action{color:#fff;min-height:36px;font:inherit;cursor:pointer;background:#245f87;border:0;border-radius:8px;justify-content:center;align-items:center;gap:15px;padding:0 13px;font-size:.68rem;font-weight:800;display:inline-flex;box-shadow:0 7px 14px #235e852e}.fg-save-button b,.fg-primary-action span{font-size:.9rem}.fg-mode-exam .fg-save-button,.fg-mode-exam .fg-primary-action{background:#70469d;box-shadow:0 7px 14px #653e912e}.fg-natural-plan{background:linear-gradient(135deg,#f7fbfd,#fff)}.fg-ai-badge{background:#d9f0f7;border-radius:9px;place-items:center;width:31px;height:31px;color:#29728d!important;letter-spacing:0!important;font-size:.66rem!important;display:grid!important}.fg-natural-plan .unified-composer{border-color:#d5e4eb;margin:0}.fg-summary-rail{gap:10px;display:grid;position:sticky;top:16px}.fg-summary-card{background:#fff;border:1px solid #dbe6ec;border-radius:13px;padding:15px;box-shadow:0 5px 16px #20455b0b}.fg-summary-primary{background:linear-gradient(145deg,#eaf5fa,#fff 72%)}.fg-mode-exam .fg-summary-primary{background:linear-gradient(145deg,#f2ecfb,#fff 72%)}.fg-summary-kicker{color:#4c7f9f;align-items:center;gap:6px;font-size:.61rem;display:flex}.fg-summary-kicker>span{background:#cbe9f5;border-radius:7px;place-items:center;width:24px;height:24px;font-size:.78rem;display:grid}.fg-mode-exam .fg-summary-kicker{color:#7650a1}.fg-mode-exam .fg-summary-kicker>span{background:#e3d6f4}.fg-summary-primary h2{color:#26475b;text-overflow:ellipsis;white-space:nowrap;margin:10px 0 3px;font-size:.91rem;overflow:hidden}.fg-summary-primary>p{color:#728793;margin:0;font-size:.66rem}.fg-summary-primary dl{gap:8px;margin:15px 0 12px;display:grid}.fg-summary-primary dl div{justify-content:space-between;gap:8px;display:flex}.fg-summary-primary dt{color:#8596a0;font-size:.61rem}.fg-summary-primary dd{color:#486474;text-align:right;text-overflow:ellipsis;white-space:nowrap;max-width:65%;margin:0;font-size:.62rem;font-weight:700;overflow:hidden}.fg-summary-tags{flex-wrap:wrap;gap:4px;display:flex}.fg-summary-tags span{color:#5f7b8a;text-overflow:ellipsis;white-space:nowrap;background:#ffffffd1;border-radius:5px;max-width:100%;padding:4px 6px;font-size:.57rem;overflow:hidden}.fg-summary-check>div{color:#405f71;align-items:center;gap:7px;font-size:.72rem;display:flex}.fg-status-dot{background:#e0a04d;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 3px #fff5e7}.fg-status-dot.is-ready{background:#56a77d;box-shadow:0 0 0 3px #e9f7ef}.fg-summary-check p{color:#788b96;margin:9px 0;font-size:.63rem;line-height:1.6}.fg-summary-check ul{gap:5px;margin:8px 0 11px;padding:0;list-style:none;display:grid}.fg-summary-check li{color:#856231;padding-left:10px;font-size:.59rem;line-height:1.45}.fg-summary-check li:before{content:"• ";margin-left:-10px}.fg-primary-action{width:100%;margin-top:2px}.fg-summary-link{color:#2d6e94;text-align:center;margin-top:9px;font-size:.64rem;font-weight:700;text-decoration:none;display:block}.fg-task-link{color:#587380;background:#fff;border:1px solid #dce6eb;border-radius:10px;grid-template-columns:25px minmax(0,1fr) auto;align-items:center;gap:8px;padding:11px;text-decoration:none;display:grid}.fg-task-link>span{color:#3a7899;background:#edf5f8;border-radius:7px;place-items:center;width:23px;height:23px;font-size:.8rem;display:grid}.fg-task-link>div{gap:2px;min-width:0;display:grid}.fg-task-link b{color:#466373;font-size:.63rem}.fg-task-link small{color:#8797a0;text-overflow:ellipsis;white-space:nowrap;font-size:.55rem;overflow:hidden}.fg-task-link i{color:#7390a0;font-size:.82rem;font-style:normal}@media (width<=1180px){.file-generator-shell .file-generator-main{grid-template-columns:1fr}.fg-summary-rail{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;position:static}.fg-task-link{height:auto}.fg-field-grid-primary{grid-template-columns:repeat(2,minmax(0,1fr))}.fg-locked-type{min-height:36px}.fg-stepper p{display:none}}@media (width<=820px){.fg-workspace-hero{grid-template-columns:1fr;gap:12px;padding:18px}.fg-hero-meta{justify-items:start}.fg-workspace-layout{grid-template-columns:1fr}.fg-history{display:none}.file-generator-shell .file-generator-main{padding:12px}.fg-stepper{gap:10px;padding:10px 14px;overflow:auto}.fg-stepper>span{white-space:nowrap}.fg-summary-rail,.fg-field-grid-primary,.fg-field-grid-three,.fg-field-grid-two{grid-template-columns:1fr}.fg-question-type{grid-template-columns:1fr 1fr}.fg-question-type>div{grid-column:1/-1}.fg-picker-head{flex-direction:column;align-items:flex-start}.fg-picker-head>div:last-child,.fg-picker-head input{width:100%}.fg-panel{padding:15px}}@media (width<=520px){.fg-hero-title h1{font-size:1.1rem}.fg-stepper{gap:8px}.fg-stepper>span{font-size:.6rem}.fg-stepper i{width:17px;height:17px}.fg-format-options{grid-template-columns:1fr;display:grid}.fg-format-options label{min-width:0}.fg-toggle-row{grid-template-columns:1fr;display:grid}.fg-form-footer{flex-direction:column;align-items:flex-start}.fg-save-button{width:100%}.fg-knowledge-grid{max-height:290px}.fg-question-type{grid-template-columns:1fr}.fg-question-type>div{grid-column:auto}}.global-task-center{top:max(14px, env(safe-area-inset-top));z-index:var(--z-task-island,104);pointer-events:auto;width:42px;height:42px;transition:width .2s;position:fixed;right:22px}.global-task-center.is-expanded{width:min(420px,100vw - 44px)}.global-task-island{box-sizing:border-box;color:#294451;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);cursor:pointer;text-align:left;background:#fffffff5;border:1px solid #315f7a33;border-radius:999px;grid-template-columns:32px 22px minmax(0,1fr) auto;align-items:center;gap:7px;width:100%;height:42px;padding:4px;display:grid;overflow:hidden;box-shadow:0 8px 24px #0f172a1f}.global-task-island:focus-visible{outline-offset:3px;outline:2px solid #2563eb}.global-task-island-icon{color:#fff;background:#315f7a;border-radius:50%;place-items:center;width:32px;height:32px;display:grid}.global-task-island-icon svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;width:16px;height:16px}.global-task-island-count{color:#315f7a;background:#eaf2f6;border-radius:999px;place-items:center;min-width:20px;height:20px;padding:0 3px;font-size:10px;display:grid}.global-task-island-copy{opacity:0;min-width:0;transition:opacity .12s;display:grid}.global-task-island-copy strong,.global-task-island-copy small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.global-task-island-copy strong{font-size:11px}.global-task-island-copy small{color:#71848f;font-size:9px}.global-task-island-copy i{background:#e2e8f0;border-radius:999px;height:3px;margin-top:3px;display:block;overflow:hidden}.global-task-island-copy em{border-radius:inherit;background:#4a9b91;height:100%;display:block}.global-task-island-active{opacity:0;color:#557d91;white-space:nowrap;padding-right:8px;font-size:9px}.global-task-center.is-expanded .global-task-island-copy,.global-task-center.is-expanded .global-task-island-active{opacity:1}.global-task-center:not(.is-expanded) .global-task-island{grid-template-columns:1fr;padding:4px}.global-task-center:not(.is-expanded) .global-task-island-icon,.global-task-center:not(.is-expanded) .global-task-island-copy,.global-task-center:not(.is-expanded) .global-task-island-active{display:none}.global-task-center:not(.is-expanded) .global-task-island-count{box-sizing:border-box;color:#fff;background:#315f7a;width:32px;height:32px;margin:auto;padding:0;font-size:11px;position:static}.global-task-center.is-sync-error .global-task-island-icon,.global-task-center.is-sync-error:not(.is-expanded) .global-task-island-count{background:#b45309}.agent-task-select{place-items:center;display:grid}.agent-task-select input{accent-color:#315f7a;width:16px;height:16px}.agent-task-bulk{color:#5f7480;background:#fff;border:1px solid #dfe8ec;border-radius:9px;align-items:center;gap:8px;margin-bottom:10px;padding:8px 10px;font-size:11px;display:flex}.agent-task-bulk span{margin-left:auto}.agent-task-bulk button{color:#315f7a;cursor:pointer;background:#fff;border:1px solid #cbdbe2;border-radius:7px;min-height:30px;padding:4px 9px}.agent-task-bulk button:disabled{cursor:not-allowed;opacity:.45}@media (width<=720px){.agent-task-bulk{flex-wrap:wrap;align-items:stretch}.agent-task-bulk span{margin-left:0}.agent-task-bulk button{flex:1}}@media (width<=560px){.global-task-center{top:max(10px, env(safe-area-inset-top));right:12px}.global-task-center.is-expanded{width:calc(100vw - 24px)}}@media (prefers-reduced-motion:reduce){.global-task-center,.global-task-island-copy,.global-task-island-active{transition:none}}.unified-work-center{--uwc-accent:#426b82;--uwc-accent-soft:#e8f1f4;z-index:12000;contain:style;color:#263845;pointer-events:auto;width:98px;max-width:calc(100vw - 8px);height:52px;font-family:inherit;position:fixed;top:88px;left:auto;right:0}.unified-work-center.role-teacher{--uwc-accent:#a56731;--uwc-accent-soft:#f6eadc}.unified-work-center.role-admin{--uwc-accent:#6658d6;--uwc-accent-soft:#eeebff}.unified-center-rail{filter:drop-shadow(0 12px 26px #2232482b);align-items:stretch;width:100%;height:52px;display:flex}.unified-center-trigger{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);width:76px;min-height:52px;color:inherit;cursor:ns-resize;touch-action:none;background:#fffffff5;border:1px solid #ffffffd1;border-right:0;border-radius:16px 0 0 16px;grid-template-columns:36px auto;align-items:center;gap:7px;padding:7px 7px 7px 8px;display:grid}.unified-center-trigger:focus-visible,.unified-center-dock-toggle:focus-visible{outline:3px solid color-mix(in srgb,var(--uwc-accent) 25%,transparent);outline-offset:2px}.unified-work-center.is-dragging .unified-center-trigger{cursor:grabbing}.unified-center-dock-toggle{width:22px;min-width:22px;color:var(--uwc-accent);cursor:pointer;background:#f6f9fbf5;border:1px solid #ffffffd1;border-left-color:#6a7c9124;border-radius:0;place-items:center;padding:0;display:grid}.unified-center-dock-toggle svg{width:13px;height:13px}.unified-trigger-icon{background:var(--uwc-accent);color:#fff;border-radius:12px;place-items:center;width:36px;height:36px;display:grid}.unified-trigger-icon svg{width:18px;height:18px}.unified-trigger-copy{display:none}.unified-trigger-counts{gap:3px;display:grid}.unified-trigger-counts i{box-sizing:border-box;color:#218657;background:#e4f5ec;border-radius:50%;place-items:center;min-width:20px;height:20px;padding:0 3px;font-size:.56rem;font-style:normal;font-weight:800;display:grid}.unified-trigger-counts i:last-child{color:#c94e4e;background:#fde8e7}.unified-center-trigger.has-new{animation:.7s 2 uwc-pulse}.unified-center-trigger.is-refreshing .unified-trigger-icon svg{animation:.8s linear infinite uwc-spin}@keyframes uwc-pulse{50%{filter:brightness(1.03);box-shadow:0 0 0 4px color-mix(in srgb,var(--uwc-accent) 14%,transparent)}}@keyframes uwc-spin{to{transform:rotate(360deg)}}.unified-center-panel{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffffa;border:1px solid #6070842e;border-radius:17px;width:min(390px,100vw - 24px);max-height:70vh;position:absolute;top:61px;right:8px;overflow:hidden;box-shadow:0 24px 64px #1c293d33}.unified-center-panel>header{border-bottom:1px solid #e8edf0;justify-content:space-between;align-items:center;padding:13px 14px 10px;display:flex}.unified-center-panel>header>div{display:grid}.unified-center-panel>header strong{font-size:.84rem}.unified-center-panel>header small{color:#81909a;margin-top:3px;font-size:.57rem}.unified-center-panel>header button,.unified-message-modal header button{background:var(--uwc-accent-soft);width:30px;height:30px;color:var(--uwc-accent);cursor:pointer;border:0;border-radius:9px;place-items:center;padding:0;display:grid}.unified-center-panel>header svg,.unified-message-modal header button svg{width:15px;height:15px}.unified-center-tabs{grid-template-columns:1fr 1fr;gap:5px;padding:7px 10px 0;display:grid}.unified-center-tabs button{color:#74838e;font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:8px;font-size:.66rem;font-weight:700}.unified-center-tabs button.is-active{border-color:var(--uwc-accent);color:var(--uwc-accent)}.unified-center-tabs span{background:var(--uwc-accent-soft);border-radius:8px;margin-left:3px;padding:1px 5px;font-size:.53rem}.unified-center-view{max-height:calc(70vh - 105px);padding:7px 10px 10px;overflow-y:auto}.unified-feed-list{gap:5px;display:grid}.unified-feed-row{width:100%;color:inherit;text-align:left;cursor:pointer;background:#fff;border:1px solid #e8edf0;border-radius:10px;grid-template-columns:34px minmax(0,1fr) 16px;align-items:center;gap:8px;padding:8px;display:grid}.unified-feed-row:hover{border-color:color-mix(in srgb,var(--uwc-accent) 32%,#e8edf0);background:#fcfdfd}.unified-feed-row.is-unread{background:color-mix(in srgb,var(--uwc-accent-soft) 45%,#fff)}.unified-feed-icon{background:var(--uwc-accent-soft);width:32px;height:32px;color:var(--uwc-accent);border-radius:9px;place-items:center;display:grid}.unified-feed-icon svg{width:16px;height:16px}.unified-feed-copy{gap:2px;min-width:0;display:grid}.unified-feed-copy strong,.unified-feed-copy small,.unified-feed-copy em{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.unified-feed-copy strong{font-size:.66rem}.unified-feed-copy small{color:#6e7f89;font-size:.57rem}.unified-feed-copy em{color:#96a1a8;font-size:.51rem;font-style:normal}.unified-feed-arrow svg{color:#a3adb3;width:14px;height:14px}.unified-unread-dot{background:#d4606b;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 3px #d4606b1f}.unified-center-empty,.unified-center-loading{color:#8a979f;place-items:center;min-height:112px;font-size:.64rem;display:grid}.unified-center-view>footer{flex-wrap:wrap;justify-content:flex-end;gap:5px;padding-top:8px;display:flex}.unified-center-view>footer button{color:var(--uwc-accent);font:inherit;cursor:pointer;background:#fff;border:1px solid #dfe6ea;border-radius:8px;align-items:center;gap:4px;padding:6px 8px;font-size:.58rem;font-weight:700;display:inline-flex}.unified-center-view>footer svg{width:12px;height:12px}.unified-message-tools{flex-wrap:wrap;gap:4px;margin-bottom:7px;display:flex}.unified-message-tools button{color:#73818a;font:inherit;cursor:pointer;background:#fff;border:1px solid #e1e7ea;border-radius:8px;padding:4px 7px;font-size:.54rem}.unified-message-tools button.is-active{border-color:color-mix(in srgb,var(--uwc-accent) 35%,#e1e7ea);background:var(--uwc-accent-soft);color:var(--uwc-accent)}.unified-type-filters{flex-wrap:wrap;gap:4px;display:flex}.unified-center-error{color:#a5444d;background:#fae9e9;border-radius:8px;margin:0 10px 10px;padding:7px;font-size:.58rem}.unified-work-center.panel-above .unified-center-panel{top:auto;bottom:61px}.unified-work-center.is-collapsed{width:32px}.unified-work-center.is-collapsed .unified-center-trigger{cursor:pointer;border-right:0;border-radius:16px 0 0 16px;grid-template-columns:1fr;width:32px;padding:5px}.unified-work-center.is-collapsed .unified-trigger-icon,.unified-work-center.is-collapsed .unified-trigger-copy,.unified-work-center.is-collapsed .unified-center-dock-toggle{display:none}.unified-work-center.is-collapsed .unified-trigger-counts{gap:3px;width:20px;margin:auto}.unified-work-center.is-collapsed .unified-trigger-counts i{width:20px;min-width:20px;padding:0}.unified-message-modal{z-index:940;box-sizing:border-box;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1c263557;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.unified-message-modal[hidden]{display:none}.unified-message-modal>div{background:#fff;border:1px solid #ffffffa8;border-radius:17px;width:min(470px,100vw - 32px);max-height:min(620px,82vh);overflow:hidden;box-shadow:0 30px 78px #141f3147}.unified-message-modal header{border-bottom:1px solid #e7ecef;grid-template-columns:34px minmax(0,1fr) 30px;align-items:center;gap:9px;padding:13px 14px;display:grid}.unified-message-modal header>span{background:var(--uwc-accent-soft);width:34px;height:34px;color:var(--uwc-accent);border-radius:10px;place-items:center;display:grid}.unified-message-modal header>span svg{width:17px;height:17px}.unified-message-modal header>div{min-width:0;display:grid}.unified-message-modal header strong{text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.unified-message-modal header small{color:#839099;margin-top:3px;font-size:.55rem}.unified-message-body{color:#465762;max-height:55vh;padding:16px;font-size:.7rem;line-height:1.7;overflow:auto}.unified-message-body p{white-space:pre-wrap;margin:0}.unified-message-body dl{background:#fafcfc;border:1px solid #e7ecef;border-radius:10px;margin:14px 0 0;display:grid}.unified-message-body dl div{border-bottom:1px solid #e7ecef;grid-template-columns:76px minmax(0,1fr);padding:8px 10px;display:grid}.unified-message-body dl div:last-child{border-bottom:0}.unified-message-body dt{color:#8a969d}.unified-message-body dd{color:#354651;margin:0;font-weight:700}.unified-message-modal footer{border-top:1px solid #e7ecef;justify-content:flex-end;gap:7px;padding:10px 14px;display:flex}.unified-message-modal footer button{color:#52636d;font:inherit;cursor:pointer;background:#fff;border:1px solid #dbe3e7;border-radius:9px;padding:7px 11px;font-size:.63rem}.unified-message-modal footer button.is-primary{border-color:var(--uwc-accent);background:var(--uwc-accent);color:#fff}@media (width<=620px){.unified-center-panel{width:auto;max-height:76vh;position:fixed;top:auto;bottom:8px;left:8px!important;right:8px!important}.unified-center-view{max-height:calc(76vh - 105px)}.unified-work-center{max-width:none}}@media (prefers-reduced-motion:reduce){.unified-center-trigger,.unified-trigger-icon svg{animation:none!important}}.unified-panel-actions{align-items:center;gap:5px;display:flex}.unified-task-filters{scrollbar-width:thin;gap:4px;padding:0 0 7px;display:flex;overflow-x:auto}.unified-task-filters button{color:#73818a;font:inherit;cursor:pointer;background:#fff;border:1px solid #e1e7ea;border-radius:8px;flex:none;padding:4px 7px;font-size:.54rem}.unified-task-filters button.is-active{border-color:color-mix(in srgb,var(--uwc-accent) 35%,#e1e7ea);background:var(--uwc-accent-soft);color:var(--uwc-accent);font-weight:700}.unified-work-center:not(.is-open) .unified-center-panel{pointer-events:none}.ai-search-controls{color:inherit;gap:5px;padding:7px 9px 0;display:grid}.ai-search-primary{align-items:center;gap:4px;min-width:0;display:flex}.ai-search-label{white-space:nowrap;align-items:center;gap:5px;margin-right:2px;font-size:.7rem;font-weight:700;display:inline-flex}.ai-search-label i{background:#7b9a7d;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 3px #7b9a7d21}.ai-search-primary button{color:inherit;cursor:pointer;background:0 0;border:1px solid #876f5233;border-radius:12px;padding:3px 7px;font-size:.66rem}.ai-search-primary button.active{color:#355e3c;background:#e9f3e9;border-color:#94b095}.ai-search-primary button:disabled,.ai-search-advanced :disabled{cursor:not-allowed;opacity:.48}.ai-search-advanced-toggle{margin-left:auto}.ai-search-status{color:#887b6d;padding-left:2px;font-size:.58rem}.ai-search-advanced{background:#fffdfa;border:1px solid #876f522b;border-radius:10px;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:9px;display:grid;box-shadow:0 8px 22px #46301c14}.ai-search-advanced[hidden]{display:none}.ai-search-advanced label{align-items:center;gap:6px;min-width:0;font-size:.64rem;display:flex}.ai-search-advanced label.wide{grid-column:1/-1}.ai-search-advanced select,.ai-search-advanced input:not([type=checkbox]){box-sizing:border-box;width:100%;min-width:0;font:inherit;background:#fff;border:1px solid #ded5c9;border-radius:7px;padding:5px 6px}.ai-search-capability-note{color:#8f8273;grid-column:1/-1;margin:0;font-size:.57rem;line-height:1.5}.ai-citation{vertical-align:super;margin:0 2px;line-height:1;display:inline-block}.ai-citation button{color:#35603d;cursor:pointer;background:#e6f0e7;border:0;border-radius:9px;min-width:18px;height:18px;font-size:10px;font-weight:700}.ai-source-card{grid-template-columns:22px minmax(0,1fr);align-items:start;gap:7px;transition:background .18s,box-shadow .18s;padding:7px!important;display:grid!important}.ai-source-card.is-focused{box-shadow:0 0 0 2px #b56f243d;background:#fff2d9!important}.ai-source-card-index{color:#466c4c;background:#edf4ed;border-radius:7px;place-items:center;width:21px;height:21px;font-size:.62rem;font-weight:800;display:grid}.ai-source-card a{color:inherit;text-decoration:none}.ai-source-empty{color:#968a7c;font-size:.65rem}.ai-execution-trace{background:#fbfaf7;border:1px solid #876f5226;border-radius:9px;margin-top:8px;overflow:hidden}.ai-execution-trace>button{width:100%;color:inherit;cursor:pointer;background:0 0;border:0;justify-content:space-between;padding:7px 9px;display:flex}.ai-execution-trace>button b{font-size:.65rem}.ai-execution-trace>button span{color:#8f8273;font-size:.57rem}.ai-execution-trace ol{margin:0;padding:0 9px 7px;list-style:none}.ai-execution-trace li{align-items:center;gap:7px;padding:3px 0;font-size:.6rem;display:flex}.ai-execution-trace li>i{background:#7b9a7d;border-radius:50%;width:6px;height:6px}.ai-execution-trace li.failed>i{background:#c45d4e}.ai-execution-trace li span{gap:6px;min-width:0;display:flex}.ai-execution-trace li small{color:#978b7e;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ai-artifact-grid{gap:8px;margin-top:8px;display:grid}.ai-artifact-card{background:#fff;border:1px solid #876f522e;border-radius:10px;padding:10px}.ai-artifact-card>div:first-child{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:7px;display:grid}.ai-artifact-card span{color:#49664b;background:#eef3e9;border-radius:10px;padding:3px 6px;font-size:.57rem}.ai-artifact-card b{font-size:.72rem}.ai-artifact-card small{color:#8f8273}.ai-artifact-card>a{color:#8a581f;margin-top:8px;font-size:.65rem;display:inline-block}.ai-artifact-preview{max-height:260px;margin-top:6px;font-size:.65rem;overflow:auto}.ai-artifact-preview table{border-collapse:collapse;width:100%}.ai-artifact-preview th,.ai-artifact-preview td{border:1px solid #e3ddd4;padding:4px}.ai-confirm-action{color:#704516;cursor:pointer;background:#fff3df;border:1px solid #dcae71;border-radius:8px;margin-top:8px;padding:7px 10px;font-size:.68rem}@media (width<=640px){.ai-search-advanced{grid-template-columns:1fr}.ai-search-advanced label.wide{grid-column:auto}}.ai-pending-action-card{color:#263a51;background:linear-gradient(145deg,#fbfdff,#f5f8fd);border:1px solid #cfdced;border-radius:13px;gap:11px;margin-top:12px;padding:14px;display:grid;box-shadow:0 5px 18px #2642680f}.ai-pending-action-card>header{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.ai-pending-action-card>header span{color:#607895;letter-spacing:.08em;font-size:10px;font-weight:750;display:block}.ai-pending-action-card h4{margin:3px 0 0;font-size:15px}.ai-pending-action-card>header>b{color:#865a13;white-space:nowrap;background:#fff2d7;border-radius:999px;padding:4px 8px;font-size:10px}.ai-pending-action-card.status-queued>header>b,.ai-pending-action-card.status-running>header>b{color:#285fae;background:#eaf2ff}.ai-pending-action-card.status-cancelled>header>b{color:#6c7480;background:#f2f3f5}.ai-pending-action-card dl{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:0;display:grid}.ai-pending-action-card dl>div{background:#ffffffc2;border:1px solid #365b8917;border-radius:9px;min-width:0;padding:8px 9px}.ai-pending-action-card dt{color:#7a8ca1;font-size:10px}.ai-pending-action-card dd{color:#2e4055;text-overflow:ellipsis;margin:3px 0 0;font-size:12px;font-weight:650;overflow:hidden}.ai-pending-actions,.ai-pending-modify-form>div{flex-wrap:wrap;gap:7px;display:flex}.ai-pending-actions button,.ai-pending-modify-form button,.ai-chart-actions button{color:#46617e;min-height:31px;font:inherit;cursor:pointer;background:#fff;border:1px solid #ccd8e7;border-radius:8px;padding:0 10px;font-size:11px}.ai-pending-actions .primary,.ai-pending-modify-form .primary{color:#fff;background:#356fd6;border-color:#356fd6}.ai-pending-actions .danger{color:#a34a53;border-color:#ebc7cb}.ai-pending-actions button:disabled{opacity:.55;cursor:wait}.ai-pending-modify-form{background:#fff;border:1px solid #dbe3ed;border-radius:10px;grid-template-columns:2fr repeat(3,1fr);gap:8px;padding:10px;display:grid}.ai-pending-modify-form[hidden]{display:none}.ai-pending-modify-form label{color:#60748b;gap:4px;font-size:10px;display:grid}.ai-pending-modify-form input{box-sizing:border-box;min-width:0;height:32px;font:inherit;border:1px solid #d5dfeb;border-radius:7px;padding:0 8px}.ai-pending-modify-form fieldset{border:1px solid #d5dfeb;border-radius:7px;align-items:center;gap:10px;margin:0;padding:6px 8px;display:flex}.ai-pending-modify-form fieldset label{align-items:center;display:flex}.ai-pending-modify-form>div{grid-column:1/-1}.ai-pending-preview{font-size:11px}.ai-pending-preview summary{cursor:pointer;color:#4d6785}.ai-pending-preview pre{color:#eef4ff;white-space:pre-wrap;background:#1f2937;border-radius:8px;max-height:220px;padding:10px;font-size:10px;overflow:auto}.ai-pending-action-result{color:#60748b;margin:0;font-size:11px}.ai-chart-artifact{gap:8px;margin-top:10px;display:grid}.ai-chart-artifact>header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.ai-chart-artifact>header>div{gap:2px;display:grid}.ai-chart-artifact>header b{font-size:14px}.ai-chart-artifact>header small{font-size:10px}.ai-chart-canvas{width:100%;height:300px;min-height:260px}.ai-chart-artifact:fullscreen{box-sizing:border-box;background:#fff;padding:28px}.ai-chart-artifact:fullscreen .ai-chart-canvas{height:calc(100vh - 180px)}.ai-chart-artifact>footer{color:#798ba0;flex-wrap:wrap;gap:6px 12px;font-size:9px;display:flex}.ai-chart-actions{gap:6px;display:flex}.ai-chart-table-wrap{border:1px solid #dce4ed;border-radius:8px;max-height:260px;overflow:auto}.ai-chart-table-wrap[hidden]{display:none}.ai-chart-table-wrap table{border-collapse:collapse;width:100%;font-size:10px}.ai-chart-table-wrap th,.ai-chart-table-wrap td{text-align:left;border-bottom:1px solid #e7edf3;padding:6px 8px}.ai-chart-table-wrap th{background:#f5f8fb;position:sticky;top:0}.ai-chart-empty{text-align:center;background:#fafcff;border:1px dashed #cbd8e6;border-radius:10px;place-items:center;min-height:130px;padding:16px;display:grid}.ai-chart-empty p{color:#7c8ca0;margin:4px 0 0;font-size:11px}.composer-toolbar button{align-items:center;gap:4px;transition:background-color .16s,border-color .16s,color .16s;display:inline-flex}.composer-toolbar button svg{flex:none;width:15px;height:15px}.ai-search-primary button{transition:background-color .16s,border-color .16s,color .16s}.ai-search-primary button:focus-visible,.ai-pending-action-card button:focus-visible,.ai-chart-actions button:focus-visible{outline-offset:2px;outline:2px solid #356fd647}@media (width<=760px){.ai-pending-action-card dl{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-pending-modify-form{grid-template-columns:1fr 1fr}.ai-pending-modify-form label:first-child,.ai-pending-modify-form fieldset{grid-column:1/-1}.ai-chart-canvas{height:250px}.composer-toolbar button span{display:none}}.ai-search-label svg,.ai-search-advanced-toggle svg{flex:none;width:14px;height:14px}.composer-toolbar [data-composer-stop][hidden]{display:none!important}.ai-pending-action-result{gap:7px;display:grid}.ai-pending-action-result p{margin:0}.ai-pending-action-result>div{flex-wrap:wrap;gap:7px;display:flex}.ai-pending-action-result a,.ai-pending-action-result button{color:#3563a3;min-height:30px;font:inherit;cursor:pointer;background:#fff;border:1px solid #ccd8e7;border-radius:7px;align-items:center;padding:0 9px;font-size:10px;text-decoration:none;display:inline-flex}.ai-artifact-card,.ai-pending-action-card,.ai-chart-artifact{box-sizing:border-box;min-width:0;max-width:100%}.ai-chart-artifact>header,.ai-chart-artifact>header>div{min-width:0}.ai-chart-artifact>header b,.ai-chart-artifact>header small{overflow-wrap:anywhere}.ai-chart-actions{flex-wrap:wrap;flex:none;justify-content:flex-end}.ai-chart-table-wrap{max-width:100%}.ai-chart-insights{color:#486079;background:#f5f8fb;border-radius:9px;gap:4px;margin:0;padding:9px 12px 9px 28px;font-size:11px;line-height:1.55;display:grid}.teacher-ai-message-extras{grid-column:2;min-width:0}.teacher-ai-source-list .ai-source-card b,.teacher-ai-source-list .ai-source-card span{display:block}.teacher-ai-source-list .ai-source-card span{margin-top:2px}.teacher-ai-composer>.ai-search-controls{border-top:1px solid #876f521c}.composer-toolbar-primary{flex-wrap:wrap;min-width:0}.composer-toolbar-extension{min-width:0;position:relative}.composer-toolbar-extension .ai-search-controls{padding:0;display:block}.composer-toolbar-extension .ai-search-primary{gap:3px}.composer-toolbar-extension .ai-search-label{color:#536d7d;padding:0 3px}.composer-toolbar-extension .ai-search-primary button{border-radius:6px;min-height:28px;padding:0 6px}.composer-toolbar-extension .ai-search-advanced-toggle{margin-left:2px}.composer-toolbar-extension .ai-search-status{display:none}.composer-toolbar-extension .ai-search-advanced{z-index:80;box-sizing:border-box;width:min(540px,100vw - 96px);position:absolute;bottom:36px;left:0;box-shadow:0 16px 42px #192f4829}@media (width<=760px){.composer-toolbar-extension .ai-search-label span,.composer-toolbar-extension .ai-search-advanced-toggle span{display:none}.composer-toolbar-extension .ai-search-advanced{width:min(430px,100vw - 36px);left:-190px}}.student-ai-message-extras{min-width:0}.ai-artifact-card>button{color:#8a581f;cursor:pointer;background:0 0;border:0;margin-top:8px;font-size:.65rem}.course-files-panel{--cf-accent:#456d83;--cf-soft:#eaf2f5;background:#ffffffeb;border:1px solid #536f7f29;border-radius:17px;margin:18px 0 24px;padding:18px;box-shadow:0 10px 32px #293d4b12}.course-files-panel.role-teacher{--cf-accent:#a26835;--cf-soft:#f6ebdf}.course-files-panel.role-admin{--cf-accent:#6658d6;--cf-soft:#eeebff}.course-files-head,.course-files-head>div,.course-file-toolbar,.course-file-class-picker,.course-file-class-picker>div{align-items:center;display:flex}.course-files-head{justify-content:space-between;gap:14px}.course-files-head>div{gap:10px;min-width:0}.course-files-head-icon{background:var(--cf-soft);width:38px;height:38px;color:var(--cf-accent);border-radius:11px;flex:none;place-items:center;display:grid}.course-files-head-icon svg{width:19px;height:19px}.course-files-head h3{color:#2d3d47;margin:0;font-size:1rem}.course-files-head p{color:#829099;margin:3px 0 0;font-size:.66rem}.course-file-primary{border:1px solid var(--cf-accent);background:var(--cf-accent);color:#fff;font:inherit;cursor:pointer;border-radius:9px;align-items:center;gap:5px;padding:8px 11px;font-size:.65rem;font-weight:700;display:inline-flex}.course-file-primary svg{width:14px;height:14px}.course-file-class-picker{background:#f8fafb;border-radius:10px;gap:9px;margin-top:13px;padding:8px 10px}.course-file-class-picker>span{color:#87949c;font-size:.6rem}.course-file-class-picker>div{flex-wrap:wrap;gap:5px}.course-file-class-picker button,.course-file-category-filter button,.course-file-sort button{color:#6f7e87;font:inherit;cursor:pointer;background:#fff;border:1px solid #dde6ea;border-radius:8px;padding:5px 8px;font-size:.57rem}.course-file-class-picker button.is-active,.course-file-category-filter button.is-active,.course-file-sort button.is-active{border-color:color-mix(in srgb,var(--cf-accent) 35%,#dde6ea);background:var(--cf-soft);color:var(--cf-accent);font-weight:700}.course-file-toolbar{flex-wrap:wrap;gap:7px;margin-top:12px}.course-file-search{color:#8a979f;background:#fff;border:1px solid #dfe7ea;border-radius:9px;flex:1;align-items:center;min-width:210px;max-width:340px;padding:0 9px;display:flex}.course-file-search svg{width:15px;height:15px}.course-file-search input{width:100%;min-width:0;font:inherit;color:#334750;background:0 0;border:0;outline:0;padding:8px;font-size:.64rem}.course-file-category-filter,.course-file-sort{flex-wrap:wrap;gap:4px;display:flex}.course-file-sort{margin-left:auto}.course-file-status{color:#4b785d;background:#e8f3ec;border-radius:8px;margin-top:9px;padding:7px 9px;font-size:.61rem}.course-file-status.is-error{color:#a64750;background:#fae9e9}.course-file-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:12px;display:grid}.course-file-card{background:#fff;border:1px solid #e1e8eb;border-radius:12px;grid-template-columns:44px minmax(0,1fr) auto;gap:9px;padding:11px;transition:border-color .16s,transform .16s,box-shadow .16s;display:grid;position:relative}.course-file-card:hover,.course-file-card.is-target{border-color:color-mix(in srgb,var(--cf-accent) 35%,#e1e8eb);transform:translateY(-1px);box-shadow:0 9px 22px #2a3e4914}.course-file-card.is-target{box-shadow:0 0 0 3px color-mix(in srgb,var(--cf-accent) 14%,transparent)}.course-file-type{background:var(--cf-soft);width:42px;height:42px;color:var(--cf-accent);border-radius:10px;place-items:center;font-size:.55rem;font-weight:800;display:grid}.course-file-copy{min-width:0}.course-file-copy>span{color:var(--cf-accent);font-size:.53rem}.course-file-copy h4{color:#32444d;text-overflow:ellipsis;white-space:nowrap;margin:3px 0;font-size:.71rem;overflow:hidden}.course-file-copy p,.course-file-copy small{color:#7f8d95;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.56rem;display:block;overflow:hidden}.course-file-copy small{color:#9aa5ab;margin-top:4px}.course-file-state{align-items:flex-start;gap:4px;display:flex}.course-file-state i,.course-file-state span{color:#b6545d;background:#f8e8e9;border-radius:7px;padding:2px 5px;font-size:.5rem;font-style:normal}.course-file-state span{color:#4f7d61;background:#e9f3ed}.course-file-card dl{background:#f8fafb;border-radius:8px;grid-column:1/-1;grid-template-columns:repeat(3,1fr);margin:2px 0 0;display:grid}.course-file-card dl div{text-align:center;padding:6px}.course-file-card dt{color:#91a0a8;font-size:.49rem}.course-file-card dd{color:var(--cf-accent);margin:2px 0 0;font-size:.68rem;font-weight:800}.course-file-card footer{border-top:1px solid #edf1f3;flex-wrap:wrap;grid-column:1/-1;justify-content:flex-end;gap:4px;padding-top:7px;display:flex}.course-file-card footer button{color:var(--cf-accent);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:3px;padding:4px 6px;font-size:.55rem;display:inline-flex}.course-file-card footer button:hover{background:var(--cf-soft)}.course-file-card footer button.is-danger{color:#b25259}.course-file-card footer svg{width:12px;height:12px}.course-file-loading,.course-file-empty{color:#87949c;border:1px dashed #dce5e8;border-radius:11px;grid-column:1/-1;place-items:center;min-height:130px;font-size:.66rem;display:grid}.course-file-empty.is-error{color:#ad4d56}.course-file-dialog,.course-file-confirm{z-index:1120;box-sizing:border-box;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1e2a355c;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.course-file-dialog[hidden],.course-file-confirm[hidden]{display:none}.course-file-dialog>div,.course-file-confirm>div{background:#fff;border:1px solid #ffffffb3;border-radius:16px;width:min(500px,100vw - 32px);max-height:88vh;overflow:auto;box-shadow:0 28px 74px #18232e40}.course-file-dialog header{border-bottom:1px solid #e5ebee;justify-content:space-between;align-items:center;padding:13px 15px;display:flex}.course-file-dialog header>div{display:grid}.course-file-dialog header strong{font-size:.8rem}.course-file-dialog header small{color:#87949d;margin-top:3px;font-size:.56rem}.course-file-dialog header button{background:var(--cf-soft);width:30px;height:30px;color:var(--cf-accent);cursor:pointer;border:0;border-radius:8px;place-items:center;padding:0;display:grid}.course-file-dialog header svg{width:15px;height:15px}.course-file-dialog form{gap:11px;padding:15px;display:grid}.course-file-dialog label:not(.course-file-drop):not(.course-file-publish-switch){gap:5px;display:grid}.course-file-dialog label>span,.course-file-dialog legend{color:#61717a;font-size:.61rem;font-weight:700}.course-file-dialog input[type=text],.course-file-dialog textarea{box-sizing:border-box;width:100%;font:inherit;border:1px solid #dce5e8;border-radius:8px;outline:0;padding:8px;font-size:.65rem}.course-file-dialog input:focus,.course-file-dialog textarea:focus{border-color:var(--cf-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--cf-accent) 12%,transparent)}.course-file-drop{border:1px dashed color-mix(in srgb,var(--cf-accent) 38%,#dce5e8);background:color-mix(in srgb,var(--cf-soft) 44%,#fff);cursor:pointer;border-radius:10px;place-items:center;gap:4px;padding:18px;display:grid}.course-file-drop>span{background:var(--cf-soft);width:35px;height:35px;color:var(--cf-accent);border-radius:9px;place-items:center;display:grid}.course-file-drop svg{width:17px;height:17px}.course-file-drop strong{color:#3e5059;font-size:.7rem}.course-file-drop small{color:#8a979f;font-size:.55rem}.course-file-drop input{opacity:0;width:1px;height:1px;position:absolute}.course-file-dialog fieldset{border:1px solid #e1e8eb;border-radius:9px;margin:0;padding:9px}.course-file-dialog fieldset div{flex-wrap:wrap;gap:4px;display:flex}.course-file-dialog fieldset button{color:#77858d;font:inherit;cursor:pointer;background:#fff;border:1px solid #dfe6e9;border-radius:7px;padding:5px 7px;font-size:.55rem}.course-file-dialog fieldset button.is-active{border-color:var(--cf-accent);background:var(--cf-soft);color:var(--cf-accent)}.course-file-publish-switch{color:#5f7079;cursor:pointer;align-items:center;gap:8px;font-size:.61rem;display:flex}.course-file-publish-switch input{opacity:0;position:absolute}.course-file-publish-switch>span{background:#cbd5da;border-radius:10px;width:34px;height:19px;position:relative}.course-file-publish-switch>span:after{content:"";background:#fff;border-radius:50%;width:13px;height:13px;transition:left .16s;position:absolute;top:3px;left:3px}.course-file-publish-switch input:checked+span{background:var(--cf-accent)}.course-file-publish-switch input:checked+span:after{left:18px}.course-file-dialog footer,.course-file-confirm footer{justify-content:flex-end;gap:6px;padding-top:5px;display:flex}.course-file-dialog footer button,.course-file-confirm button{color:#586a73;font:inherit;cursor:pointer;background:#fff;border:1px solid #dce4e8;border-radius:8px;padding:7px 10px;font-size:.61rem}.course-file-dialog footer button.is-primary{border-color:var(--cf-accent);background:var(--cf-accent);color:#fff}.course-file-confirm>div{width:min(390px,100vw - 32px);padding:18px}.course-file-confirm strong{font-size:.82rem}.course-file-confirm p{color:#7c8a92;margin:8px 0;font-size:.64rem;line-height:1.6}.course-file-confirm button.is-danger{color:#fff;background:#b5525b;border-color:#b5525b}@media (width<=1150px){.course-file-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=720px){.course-files-panel{padding:12px}.course-file-grid{grid-template-columns:1fr}.course-files-head{align-items:flex-start}.course-file-toolbar{align-items:stretch}.course-file-search{flex-basis:100%;max-width:none}.course-file-sort{margin-left:0}}@media (prefers-reduced-motion:reduce){.course-file-card,.course-file-publish-switch>span:after{transition:none}}.prep-action-grid .wide{grid-column:1/-1}:root{--teacher-ink:#392b20;--teacher-muted:#806f5e;--teacher-accent:#b86d21;--teacher-accent-dark:#8f4f17;--teacher-soft:#f7f1e7;--teacher-card:#fffdfa;--teacher-line:#e9dfd1}.role-teacher{--primary:var(--teacher-accent);--primary-dark:var(--teacher-accent-dark)}.teacher-page-head{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px;display:flex}.teacher-page-head h2{color:var(--teacher-ink);margin:3px 0 2px;font-size:1.62rem}.teacher-page-head p{color:var(--teacher-muted);margin:0;font-size:.9rem}.teacher-eyebrow{color:var(--teacher-accent);text-transform:uppercase;letter-spacing:.09em;font-size:.78rem;font-weight:750}.teacher-btn{border:1px solid var(--teacher-line);color:var(--teacher-ink);cursor:pointer;white-space:nowrap;background:#fff;border-radius:9px;padding:9px 14px;font-weight:700}.teacher-btn.primary{color:#fff;background:var(--teacher-accent);border-color:var(--teacher-accent)}.teacher-btn:hover{transform:translateY(-1px);box-shadow:0 6px 16px #603a191a}.role-teacher .teacher-btn,.role-teacher .teacher-btn--primary,.role-teacher .teacher-btn--secondary,.role-teacher .teacher-btn--ghost,.role-teacher .teacher-btn--danger,.role-teacher .teacher-btn--icon{border:1px solid var(--teacher-line);min-height:34px;color:var(--teacher-ink);font:inherit;white-space:nowrap;cursor:pointer;background:#fff;border-radius:9px;justify-content:center;align-items:center;gap:6px;padding:7px 12px;font-size:.72rem;font-weight:700;line-height:1;display:inline-flex}.role-teacher .teacher-btn--primary{border-color:var(--teacher-accent);background:var(--teacher-accent);color:#fff}.role-teacher .teacher-btn--ghost{background:0 0;border-color:#0000}.role-teacher .teacher-btn--danger{color:#a43c2e;background:#fff8f6;border-color:#dfb8ae}.role-teacher .teacher-btn--icon{width:34px;padding:0}.role-teacher :is(.teacher-btn,.teacher-btn--primary,.teacher-btn--secondary,.teacher-btn--ghost,.teacher-btn--danger,.teacher-btn--icon):disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.role-teacher :is(.teacher-btn,.teacher-btn--primary,.teacher-btn--secondary,.teacher-btn--ghost,.teacher-btn--danger,.teacher-btn--icon):focus-visible{outline-offset:2px;outline:3px solid #b76d2038}.teacher-inline-empty{color:#a39586;padding:12px;font-size:.78rem}.teacher-ai-page{--teacher-ink:#35281d;--teacher-muted:#81705e;--teacher-accent:#b56f24;--teacher-accent-dark:#82501f;--teacher-soft:#faf4eb;--teacher-card:#fffdfa;--teacher-line:#e7d9c8;box-sizing:border-box;height:calc(100dvh - 48px);min-height:0;color:var(--teacher-ink);background:radial-gradient(circle at 18% 0,#e1be9121,#0000 28%),linear-gradient(145deg,#fcfaf6,#f8f4ee);grid-template-rows:auto minmax(0,1fr);gap:12px;padding:14px 20px 18px;display:grid;overflow:hidden}.student-main.teacher-ai-host{min-height:100dvh;padding-top:0;padding-bottom:0;overflow:hidden}.teacher-ai-topbar{border:1px solid var(--teacher-line);background:#fffdfaf5;border-radius:16px;grid-template-columns:minmax(235px,1fr) auto minmax(160px,1fr);align-items:center;gap:18px;min-width:0;padding:12px 72px 12px 16px;display:grid;box-shadow:0 8px 26px #4f341b0f}.teacher-ai-brand{align-items:center;gap:11px;min-width:0;display:flex}.teacher-ai-brand-mark{width:39px;height:39px;color:var(--teacher-accent);background:linear-gradient(145deg,#fff7ea,#f2dfc4);border:1px solid #dfc39d;border-radius:12px;flex:none;place-items:center;display:grid}.teacher-ai-brand-mark svg{width:21px;height:21px}.teacher-ai-brand h1{color:var(--teacher-ink);margin:0;font-size:1.05rem;line-height:1.25}.teacher-ai-brand p{color:var(--teacher-muted);text-overflow:ellipsis;white-space:nowrap;margin:3px 0 0;font-size:.67rem;overflow:hidden}.teacher-ai-modes{background:#f7f1e8;border:1px solid #eadfd2;border-radius:11px;min-width:0;padding:3px;display:flex}.teacher-ai-modes button{color:#766553;min-height:34px;font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:8px;padding:0 13px}.teacher-ai-modes button b{font-size:.72rem}.teacher-ai-modes button.active{color:var(--teacher-accent-dark);background:#fff;box-shadow:0 2px 9px #5e3f201a}.teacher-ai-modes button:focus-visible{outline-offset:1px;outline:3px solid #b56f242e}.teacher-ai-model{min-width:0;color:var(--teacher-muted);white-space:nowrap;justify-self:end;align-items:center;gap:8px;display:flex}.teacher-ai-model span{color:var(--teacher-accent-dark);background:#f4eadc;border-radius:999px;padding:3px 7px;font-size:.58rem}.teacher-ai-model b{font-size:.66rem;font-weight:600}.teacher-ai-layout{border:1px solid var(--teacher-line);background:var(--teacher-card);border-radius:16px;grid-template-columns:248px minmax(420px,1fr);min-height:0;transition:grid-template-columns .2s;display:grid;overflow:hidden;box-shadow:0 14px 38px #4c321a14}.teacher-ai-history{border-right:1px solid var(--teacher-line);background:linear-gradient(#fbf7f0,#f8f1e7);grid-template-rows:auto auto auto minmax(0,1fr) auto;gap:9px;min-width:0;min-height:0;padding:12px;display:grid;overflow:hidden}.teacher-ai-history-head{grid-template-columns:minmax(0,1fr) 36px;gap:7px;display:grid}.teacher-ai-new,.teacher-ai-history-toggle{min-height:36px;color:var(--teacher-accent-dark);font:inherit;cursor:pointer;background:#fffdfa;border:1px solid #dec8aa;border-radius:9px;justify-content:center;align-items:center;font-size:.7rem;font-weight:750;display:flex}.teacher-ai-new{gap:6px}.teacher-ai-new:hover,.teacher-ai-history-toggle:hover{background:#fff7eb;border-color:#c69a62}.teacher-ai-new-icon{color:var(--teacher-accent);font-size:1rem;font-weight:400}.teacher-ai-history-toggle svg{width:16px;height:16px}.teacher-ai-history-search{box-sizing:border-box;border:1px solid var(--teacher-line);color:#a18e79;background:#fffdfa;border-radius:9px;align-items:center;gap:7px;min-width:0;height:36px;padding:0 10px;display:flex}.teacher-ai-history-search svg{flex:none;width:15px;height:15px}.teacher-ai-history-search input{width:100%;min-width:0;color:var(--teacher-ink);font:inherit;background:0 0;border:0;outline:0;font-size:.69rem}.teacher-ai-history-search:focus-within{border-color:#c79a62;box-shadow:0 0 0 3px #b56f2417}.teacher-ai-visually-hidden{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.teacher-ai-history-title{min-width:0;color:var(--teacher-muted);justify-content:space-between;align-items:center;gap:8px;padding:4px 3px 0;display:flex}.teacher-ai-history-title b{color:var(--teacher-ink);font-size:.72rem}.teacher-ai-history-title span{text-overflow:ellipsis;white-space:nowrap;font-size:.59rem;overflow:hidden}.teacher-ai-conversation-list{scrollbar-width:thin;align-content:start;gap:4px;min-height:0;display:grid;overflow:auto}.teacher-ai-conversation-list>button{box-sizing:border-box;text-align:left;width:100%;min-width:0;color:var(--teacher-ink);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;padding:10px 27px 10px 10px;display:block;position:relative}.teacher-ai-conversation-list>button:hover{background:#fffdfac7}.teacher-ai-conversation-list>button.active{box-shadow:inset 3px 0 0 var(--teacher-accent);background:#fff8ed;border-color:#dfc19b}.teacher-ai-conversation-list b,.teacher-ai-conversation-list p,.teacher-ai-conversation-list span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.teacher-ai-conversation-list b{font-size:.72rem}.teacher-ai-conversation-list p{color:var(--teacher-muted);margin:5px 0 0;font-size:.61rem}.teacher-ai-conversation-list span{color:#9a8874;margin-top:6px;font-size:.57rem}.teacher-ai-conversation-list time{float:right}.teacher-ai-conversation-list i{color:#ad9a84;border-radius:6px;place-items:center;width:19px;height:19px;font-style:normal;display:grid;position:absolute;top:8px;right:8px}.teacher-ai-conversation-list i:hover{color:#a44e36;background:#f3e3d3}.teacher-ai-history-foot{color:#a49380;text-align:center;margin:0;padding:3px;font-size:.56rem}.teacher-ai-page.history-collapsed .teacher-ai-layout{grid-template-columns:62px minmax(420px,1fr)}.teacher-ai-page.history-collapsed .teacher-ai-history{padding:12px 10px}.teacher-ai-page.history-collapsed .teacher-ai-history-head{grid-template-columns:1fr;display:grid}.teacher-ai-page.history-collapsed :is(.teacher-ai-history-search,.teacher-ai-history-title,.teacher-ai-conversation-list,.teacher-ai-history-foot){display:none}.teacher-ai-page.history-collapsed .teacher-ai-new{width:40px;min-width:40px;padding:0}.teacher-ai-page.history-collapsed .teacher-ai-new>span:last-child{display:none}.teacher-ai-page.history-collapsed .teacher-ai-history-toggle{width:40px}.teacher-ai-main{background:#fffdfa;grid-template-rows:auto minmax(0,1fr) auto;min-width:0;min-height:0;display:grid;position:relative;overflow:hidden}.teacher-ai-chat-head{box-sizing:border-box;border-bottom:1px solid var(--teacher-line);background:#fffdfaf0;justify-content:space-between;align-items:center;gap:16px;min-height:61px;padding:10px 72px 10px 16px;display:flex}.teacher-ai-chat-title{min-width:0}.teacher-ai-chat-title h2{color:var(--teacher-ink);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.87rem;overflow:hidden}.teacher-ai-chat-title>div{align-items:center;gap:7px;min-width:0;margin-top:4px;display:flex}.teacher-ai-chat-title span{color:var(--teacher-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.58rem;overflow:hidden}.teacher-ai-chat-title span:first-child{color:var(--teacher-accent-dark);background:#f4eadc;border-radius:8px;padding:2px 6px}.teacher-ai-chat-actions{gap:5px;display:flex}.teacher-ai-chat-actions button{min-height:32px;color:var(--teacher-muted);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:5px;padding:0 8px;font-size:.63rem;display:inline-flex}.teacher-ai-chat-actions button:hover:not(:disabled),.teacher-ai-chat-actions button[aria-expanded=true]{border-color:var(--teacher-line);color:var(--teacher-accent-dark);background:#faf2e7}.teacher-ai-chat-actions button:disabled{opacity:.42;cursor:not-allowed}.teacher-ai-chat-actions svg{width:14px;height:14px}.teacher-ai-chat-actions em{min-width:17px;height:17px;color:var(--teacher-accent-dark);background:#f1e4d3;border-radius:9px;place-items:center;font-size:.54rem;font-style:normal;display:grid}.teacher-ai-context{z-index:45;box-sizing:border-box;background:#fffdfa;border:1px solid #dec9ac;border-radius:13px;width:min(390px,100% - 24px);max-height:calc(100% - 82px);padding:13px;position:absolute;top:68px;right:12px;overflow:auto;box-shadow:0 18px 48px #452c152e}.teacher-ai-context[hidden]{display:none!important}.teacher-ai-context-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.teacher-ai-context-head b,.teacher-ai-context-head span{display:block}.teacher-ai-context-head b{font-size:.8rem}.teacher-ai-context-head span{color:var(--teacher-muted);margin-top:3px;font-size:.6rem}.teacher-ai-context-head button{width:28px;height:28px;color:var(--teacher-muted);cursor:pointer;background:#f6ede1;border:0;border-radius:8px;flex:none;place-items:center;display:grid}.teacher-ai-context-head svg{width:14px;height:14px}.teacher-context-selects{border:1px solid var(--teacher-line);background:#fbf6ef;border-radius:10px;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:10px;display:grid}.teacher-context-selects label{min-width:0;color:var(--teacher-muted);gap:4px;font-size:.59rem;display:grid}.teacher-context-selects select{box-sizing:border-box;border:1px solid var(--teacher-line);width:100%;min-width:0;height:32px;color:var(--teacher-ink);font:inherit;background:#fff;border-radius:7px;font-size:.63rem}.teacher-context-grid{grid-template-columns:1fr 1fr;gap:12px;margin-top:13px;display:grid}.teacher-context-section{min-width:0;margin:0}.teacher-context-section h3{color:var(--teacher-ink);margin:0 0 7px;font-size:.69rem}.teacher-context-options{flex-wrap:wrap;gap:5px;display:flex}.teacher-context-options button{border:1px solid var(--teacher-line);max-width:100%;color:var(--teacher-muted);font:inherit;text-overflow:ellipsis;cursor:pointer;background:#fff;border-radius:15px;padding:5px 8px;font-size:.61rem;overflow:hidden}.teacher-context-options button small{color:var(--teacher-accent);margin-left:4px}.teacher-context-options button.active{color:var(--teacher-accent-dark);background:#fff1dc;border-color:#d4a771}.teacher-context-sources{border-top:1px solid var(--teacher-line);margin-top:13px;padding-top:12px}.teacher-ai-source-list{gap:6px;display:grid}.teacher-ai-source-list>div{border:1px solid var(--teacher-line);background:#fff;border-radius:7px;padding:7px}.teacher-ai-source-list b,.teacher-ai-source-list span{display:block}.teacher-ai-source-list b{color:var(--teacher-ink);font-size:.66rem}.teacher-ai-source-list span{color:var(--teacher-muted);margin-top:2px;font-size:.58rem}.teacher-ai-messages{scroll-behavior:smooth;min-width:0;min-height:0;padding:24px clamp(18px,5vw,72px);overflow:hidden auto}.teacher-ai-main.is-empty .teacher-ai-messages{place-items:center;display:grid}.teacher-ai-welcome{width:min(660px,100%);color:var(--teacher-muted);text-align:center;margin:0 auto}.teacher-ai-welcome:before{content:"教";width:42px;height:42px;color:var(--teacher-accent);background:#fff5e6;border:1px solid #dfc29b;border-radius:14px;place-items:center;margin:0 auto 11px;font-size:.9rem;font-weight:800;display:grid}.teacher-ai-welcome>b{color:var(--teacher-ink);font-size:1.16rem}.teacher-ai-welcome p{margin:8px 0 12px;line-height:1.7}.teacher-ai-welcome button{border:1px solid var(--teacher-line);color:var(--teacher-ink);font:inherit;cursor:pointer;background:#fff;border-radius:9px;margin:4px;padding:7px 11px;font-size:.66rem}.teacher-ai-welcome button:hover{color:var(--teacher-accent-dark);background:#fff8ed;border-color:#d0a06a}.teacher-ai-message{box-sizing:border-box;grid-template-columns:38px minmax(0,1fr);gap:10px;width:min(880px,100%);max-width:100%;margin:0 auto 18px;display:grid}.teacher-ai-message-role{width:32px;height:32px;color:var(--teacher-accent-dark);background:#fff3e1;border:1px solid #e0c7a6;border-radius:9px;place-items:center;font-size:.67rem;font-weight:800;display:grid}.teacher-ai-message.user{grid-template-columns:minmax(0,1fr) 38px;padding-left:min(120px,12%)}.teacher-ai-message.user .teacher-ai-message-role{border-color:var(--teacher-accent);background:var(--teacher-accent);color:#fff;grid-area:1/2}.teacher-ai-message.user .teacher-ai-message-body{color:#5d3c1c;background:#fff1db;border-color:#e0bd8e;border-radius:13px 4px 13px 13px;grid-area:1/1}.teacher-ai-message-body{overflow-wrap:anywhere;border:1px solid var(--teacher-line);min-width:0;color:var(--teacher-ink);background:#fff;border-radius:4px 12px 12px;padding:11px 14px;font-size:14px;line-height:1.72}.teacher-ai-message-body>:first-child{margin-top:0}.teacher-ai-message-body>:last-child{margin-bottom:0}.teacher-ai-message-body img{max-width:100%;height:auto}.teacher-ai-message-body pre,.teacher-ai-message-body table{max-width:100%;display:block;overflow-x:auto}.teacher-ai-message-body pre{background:#f7f2eb;border-radius:8px;padding:10px}.teacher-ai-message-body code{white-space:pre-wrap;word-break:break-word}.teacher-ai-message-body table{border-collapse:collapse;white-space:nowrap}.teacher-ai-message-body th,.teacher-ai-message-body td{border:1px solid var(--teacher-line);padding:6px 8px}.teacher-ai-thinking{color:var(--teacher-muted)}.teacher-ai-thinking:after{content:"…";animation:1.1s steps(3,end) infinite teacherDots}.teacher-ai-chart-grid{grid-column:2;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.teacher-ai-chart-card{border:1px solid var(--teacher-line);background:#fff;border-radius:10px;min-width:0;padding:10px}.teacher-ai-chart-card>b{color:var(--teacher-ink);font-size:.76rem}.teacher-ai-chart-card>div{width:100%;height:230px}.teacher-ai-input-area{border-top:1px solid var(--teacher-line);background:#fffcf8;min-width:0;padding:8px clamp(14px,4vw,58px) 7px}.teacher-ai-starter-row{scrollbar-width:none;gap:6px;width:min(880px,100%);min-height:31px;margin:0 auto 7px;display:flex;overflow-x:auto}.teacher-ai-starter-row button{border:1px solid var(--teacher-line);color:var(--teacher-muted);font:inherit;cursor:pointer;background:#fff;border-radius:8px;flex:none;padding:6px 9px;font-size:.61rem}.teacher-ai-starter-row button:hover{color:var(--teacher-accent-dark);background:#fff7eb;border-color:#d3ab7b}.teacher-ai-composer{z-index:20;background:#fff;border:1px solid #dcc6a9;border-radius:13px;width:min(880px,100%);margin:0 auto;transition:border-color .18s,box-shadow .18s;position:relative;box-shadow:0 3px 12px #51351b0d}.teacher-ai-composer:focus-within{border-color:#c88e4c;box-shadow:0 0 0 3px #b56f2417,0 5px 15px #51351b0f}.teacher-ai-composer textarea{resize:none;box-sizing:border-box;width:100%;min-height:48px;max-height:140px;color:var(--teacher-ink);font:inherit;background:0 0;border:0;outline:0;padding:11px 14px 4px;font-size:13px;line-height:1.55}.teacher-ai-composer-actions{border-top:1px solid #f1e8dc;justify-content:space-between;align-items:center;padding:5px 7px 7px;display:flex}.teacher-tool-button{color:var(--teacher-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:5px;margin-right:2px;padding:7px 9px;font-size:.67rem;display:inline-flex}.teacher-tool-button svg{width:14px;height:14px}.teacher-tool-button:hover{color:var(--teacher-accent);background:#faf0e2}.teacher-ai-composer .teacher-btn.primary{min-height:34px;box-shadow:none;border-radius:8px;padding:0 16px}.teacher-ai-composer .teacher-btn.primary:disabled{opacity:.42;cursor:not-allowed;transform:none}.teacher-ai-disclaimer{color:#a39381;text-align:center;margin:5px 0 0;font-size:.55rem}.teacher-ai-attachments,.teacher-ai-selection-chips{flex-wrap:wrap;gap:5px;padding:7px 10px 0;display:flex}.teacher-ai-attachments:empty,.teacher-ai-selection-chips:empty{display:none}.teacher-ai-attachments span{color:var(--teacher-ink);background:#f6ecde;border-radius:7px;padding:5px 8px;font-size:.67rem}.teacher-ai-attachments button{cursor:pointer;background:0 0;border:0;margin-left:7px}.teacher-ai-selection-chips button{color:var(--teacher-accent-dark);cursor:pointer;background:#fff3e2;border:1px solid #dfbd91;border-radius:14px;padding:4px 8px;font-size:.63rem}.teacher-ai-mention-popover{z-index:60;background:#fffdfa;border:1px solid #d8bd99;border-radius:11px;max-height:min(300px,42vh);padding:6px;position:absolute;bottom:calc(100% + 8px);left:8px;right:8px;overflow:auto;box-shadow:0 16px 40px #4b2f162e}.teacher-ai-mention-popover[hidden]{display:none!important}.teacher-ai-mention-head{color:var(--teacher-muted);padding:5px 8px 7px;font-size:.64rem}.teacher-ai-mention-popover button{width:100%;color:var(--teacher-ink);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:9px;padding:7px 8px;display:grid}.teacher-ai-mention-popover button.active,.teacher-ai-mention-popover button:hover{background:#fff1dc}.teacher-ai-mention-icon{background:#f6e8d5;border-radius:8px;place-items:center;width:30px;height:30px;color:var(--teacher-accent)!important;display:grid!important}.teacher-ai-mention-icon svg{width:16px;height:16px}.teacher-ai-mention-copy{min-width:0;display:grid!important}.teacher-ai-mention-popover button b,.teacher-ai-mention-copy>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.teacher-ai-mention-popover button b{font-size:.72rem}.teacher-ai-mention-copy>span{color:var(--teacher-muted);margin-top:2px;font-size:.59rem}@keyframes teacherDots{0%{opacity:.2}to{opacity:1}}@media (width<=1180px){.teacher-ai-topbar{grid-template-columns:minmax(205px,1fr) auto minmax(115px,1fr);gap:10px}.teacher-ai-brand p,.teacher-ai-model span{display:none}.teacher-ai-modes button{padding:0 9px}.teacher-ai-layout{grid-template-columns:220px minmax(400px,1fr)}}@media (width<=920px){.teacher-ai-page{grid-template-rows:auto minmax(0,1fr)}.teacher-ai-topbar{grid-template-columns:minmax(210px,1fr) auto}.teacher-ai-modes{box-sizing:border-box;grid-area:2/1/auto/-1;width:100%;overflow-x:auto}.teacher-ai-modes button{flex:1 0 auto}.teacher-ai-model{grid-area:1/2}.teacher-ai-layout{grid-template-columns:190px minmax(360px,1fr)}.teacher-ai-context-grid{grid-template-columns:1fr}.teacher-ai-input-area{padding-left:12px;padding-right:12px}}@media (width<=760px){.teacher-ai-page{padding:10px}.teacher-ai-layout{grid-template-columns:60px minmax(0,1fr);position:relative}.teacher-ai-history{box-sizing:border-box;width:60px;padding:11px 9px}.teacher-ai-page:not(.history-collapsed) .teacher-ai-history{z-index:50;width:260px;position:absolute;top:0;bottom:0;left:0;box-shadow:10px 0 30px #472f1829}.teacher-ai-page.history-collapsed .teacher-ai-layout{grid-template-columns:60px minmax(0,1fr)}.teacher-ai-main{grid-column:2}.teacher-ai-page:not(.history-collapsed) .teacher-ai-history-head{grid-template-columns:minmax(0,1fr) 36px}.teacher-ai-page:not(.history-collapsed) .teacher-ai-new{width:auto}.teacher-ai-page:not(.history-collapsed) .teacher-ai-new>span:last-child{display:inline}.teacher-ai-messages{padding:18px 12px}.teacher-ai-chart-grid,.teacher-context-selects{grid-template-columns:1fr}.teacher-ai-context{width:calc(100% - 16px);right:8px}.teacher-ai-chat-title #teacher-ai-context-summary,.teacher-ai-chat-actions button span{display:none}}@media (width<=560px){.teacher-ai-topbar{grid-template-columns:1fr;padding:10px 64px 10px 11px}.teacher-ai-brand-mark{width:34px;height:34px}.teacher-ai-brand h1{font-size:.9rem}.teacher-ai-model{display:none}.teacher-ai-modes{grid-row:2}.teacher-ai-chat-head{padding:9px 64px 9px 10px}.teacher-ai-chat-actions button span{display:none}.teacher-ai-message.user{padding-left:34px}.teacher-ai-input-area{padding-left:8px;padding-right:8px}.teacher-ai-starter-row{margin-bottom:5px}.teacher-tool-button span{display:none}}@media (height<=700px){.teacher-ai-page{gap:8px;padding-top:8px}.teacher-ai-topbar{padding-top:8px;padding-bottom:8px}.teacher-ai-brand p,.teacher-ai-model span{display:none}.teacher-ai-input-area{padding-top:5px}.teacher-ai-starter-row{min-height:28px;margin-bottom:4px}.teacher-ai-disclaimer{display:none}}@media (prefers-reduced-motion:reduce){.teacher-btn,.teacher-ai-layout,.teacher-ai-messages{scroll-behavior:auto!important;transition:none!important}.teacher-ai-thinking:after{animation:none}}.preparation-page{box-sizing:border-box;background:#fbf8f3;height:100vh;padding:16px 20px 22px;overflow:hidden}.preparation-head-actions{gap:7px;display:flex}.preparation-steps{scrollbar-width:thin;gap:4px;padding:2px 0 10px;display:flex;overflow-x:auto}.preparation-steps button{border:1px solid var(--teacher-line);color:var(--teacher-muted);cursor:pointer;white-space:nowrap;background:#fff;border-radius:18px;flex:none;align-items:center;gap:5px;padding:5px 8px 5px 5px;font-size:.68rem;display:flex}.preparation-steps i{background:#f1e8dc;border-radius:50%;place-items:center;width:20px;height:20px;font-size:.62rem;font-style:normal;display:grid}.preparation-steps button.active{color:var(--teacher-accent-dark);background:#fff3e1;border-color:#d4a46a}.preparation-layout{border:1px solid var(--teacher-line);background:#fffdfa;border-radius:13px;grid-template-columns:220px minmax(440px,1fr) 275px;height:calc(100vh - 126px);min-height:470px;display:grid;overflow:hidden;box-shadow:0 10px 28px #583c2412}.preparation-sidebar,.preparation-insight{background:#faf6ef;min-height:0;padding:12px;overflow:auto}.preparation-sidebar{border-right:1px solid var(--teacher-line)}.preparation-insight{border-left:1px solid var(--teacher-line)}.prep-side-head,.prep-panel-head{justify-content:space-between;align-items:center;display:flex}.prep-side-head{color:var(--teacher-ink);margin-bottom:12px}.prep-side-head button,.prep-panel-head button{color:var(--teacher-accent);cursor:pointer;background:0 0;border:0;font-size:.72rem;font-weight:700}.preparation-sidebar>label{color:var(--teacher-muted);gap:4px;margin-bottom:8px;font-size:.68rem;display:grid}.preparation-sidebar select{border:1px solid var(--teacher-line);color:var(--teacher-ink);background:#fff;border-radius:7px;padding:8px}.prep-side-title{color:var(--teacher-muted);text-transform:uppercase;margin:15px 3px 7px;font-size:.7rem;font-weight:750}.prep-side-title span{float:right}.prep-plan-list,.prep-resource-list{gap:5px;display:grid}.prep-plan-list button,.prep-resource-list button{text-align:left;cursor:pointer;color:var(--teacher-ink);background:0 0;border:1px solid #0000;border-radius:8px;padding:8px}.prep-plan-list button.active{background:#fff0dc;border-color:#dfc19b}.prep-plan-list b,.prep-plan-list span,.prep-plan-list em,.prep-resource-list b,.prep-resource-list span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.prep-plan-list b,.prep-resource-list b{font-size:.77rem}.prep-plan-list span,.prep-resource-list span{color:var(--teacher-muted);margin-top:2px;font-size:.64rem}.preparation-editor{min-width:0;min-height:0;padding:18px clamp(16px,3vw,38px);overflow:auto}.prep-empty{text-align:center;color:var(--teacher-muted);max-width:560px;margin:19vh auto 0}.prep-empty b{color:var(--teacher-ink);font-size:1.1rem;display:block}.prep-editor-head{justify-content:space-between;align-items:flex-start;gap:15px;display:flex}.prep-editor-head h3{color:var(--teacher-ink);margin:5px 0 3px;font-size:1.22rem}.prep-editor-head p{color:var(--teacher-muted);margin:0;font-size:.72rem}.prep-editor-head>div:last-child{gap:6px;display:flex}.prep-status{color:var(--teacher-accent-dark);text-transform:uppercase;background:#f1e8db;border-radius:12px;padding:2px 7px;font-size:.62rem;font-weight:800;display:inline-block}.prep-status[data-status=generating]{background:#fff0bd}.prep-status[data-status=ready],.prep-status[data-status=published]{color:#376740;background:#dcebdd}.prep-stage-note{color:var(--teacher-muted);justify-content:space-between;gap:14px;margin:18px 0 8px;font-size:.7rem;display:flex}.prep-stage-note b{color:var(--teacher-ink);font-size:.85rem}#prep-editor-input{box-sizing:border-box;resize:vertical;border:1px solid var(--teacher-line);width:100%;min-height:300px;max-height:48vh;color:var(--teacher-ink);background:#fff;border-radius:10px;outline:none;padding:14px;font:13px/1.75 Microsoft YaHei,system-ui,sans-serif}#prep-editor-input:focus{border-color:#c58d4d;box-shadow:0 0 0 3px #c58d4d1a}.prep-refine-row{gap:7px;margin-top:8px;display:flex}.prep-refine-row input{border:1px solid var(--teacher-line);min-width:0;color:var(--teacher-ink);font:inherit;background:#fff;border-radius:8px;flex:1;padding:8px 10px}.prep-natural-preview{color:var(--teacher-muted);font-size:.72rem;line-height:1.7}.prep-natural-preview h5{color:var(--teacher-ink);margin:10px 0 3px;font-size:.73rem}.prep-natural-preview p{margin:3px 0}.prep-natural-preview p.bullet{padding-left:13px;position:relative}.prep-natural-preview p.bullet:before{content:"";background:var(--teacher-accent);border-radius:50%;width:4px;height:4px;position:absolute;top:.72em;left:2px}.prep-confirm-dialog{width:min(560px,100vw - 28px)}.prep-confirm-dialog>form>div{padding:14px 16px}.prep-confirm-dialog dl{grid-template-columns:1fr 1fr;gap:7px;margin:0;display:grid}.prep-confirm-dialog dl>div{background:#faf5ee;border-radius:7px;padding:8px}.prep-confirm-dialog dt{color:var(--teacher-muted);font-size:.58rem}.prep-confirm-dialog dd{color:var(--teacher-ink);margin:3px 0 0;font-size:.68rem}.prep-confirm-dialog p{color:var(--teacher-muted);margin:0;padding:0 16px 12px;font-size:.64rem}.prep-preview{border:1px solid var(--teacher-line);background:#fdfaf6;border-radius:9px;margin-top:12px;padding:11px}.prep-preview h4{color:var(--teacher-ink);margin:0 0 8px;font-size:.76rem}.prep-preview pre{color:var(--teacher-muted);white-space:pre-wrap;margin:0;font:12px/1.6 inherit}.preparation-insight section{border-bottom:1px solid var(--teacher-line);margin-bottom:14px;padding:3px 0 14px}.prep-panel-head h3{color:var(--teacher-ink);margin:0 0 8px;font-size:.8rem}.prep-panel-head span{color:var(--teacher-accent);font-size:.7rem;font-weight:800}.prep-metric-grid{grid-template-columns:1fr 1fr;gap:6px;display:grid}.prep-metric-grid div{border:1px solid var(--teacher-line);background:#fff;border-radius:7px;padding:8px}.prep-metric-grid b,.prep-metric-grid span{display:block}.prep-metric-grid b{color:var(--teacher-accent-dark);font-size:.96rem}.prep-metric-grid span{color:var(--teacher-muted);font-size:.62rem}.prep-insight-list{margin-top:10px}.prep-insight-list>b{color:var(--teacher-ink);font-size:.7rem}.prep-insight-list p{color:var(--teacher-muted);justify-content:space-between;margin:5px 0;font-size:.66rem;display:flex}.prep-insight-list i{color:var(--teacher-accent);font-style:normal}.prep-progress-bar{background:#e9e0d4;border-radius:4px;height:5px;overflow:hidden}.prep-progress-bar i{background:linear-gradient(90deg,#c3914f,#ab641e);width:0;height:100%;transition:width .25s;display:block}.prep-agent-list{gap:5px;margin-top:9px;display:grid}.prep-agent-list>div{align-items:center;gap:7px;padding:6px 3px;display:flex}.prep-agent-list>div>i{background:#bdb0a2;border-radius:50%;width:7px;height:7px}.prep-agent-list>div[data-status=completed]>i,.prep-agent-list>div[data-status=success]>i,.prep-agent-list>div[data-status=succeeded]>i{background:#56845c}.prep-agent-list>div[data-status=degraded]>i{background:#c18a38}.prep-agent-list>div[data-status=failed]>i{background:#b9533d}.prep-agent-list>div[data-status=running]>i{background:#d18a2e;box-shadow:0 0 0 3px #d18a2e26}.prep-agent-list span{flex:1;min-width:0}.prep-agent-list b,.prep-agent-list em{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.prep-agent-list b{color:var(--teacher-ink);font-size:.67rem}.prep-agent-list em{color:var(--teacher-muted);font-size:.58rem;font-style:normal}.prep-agent-list strong{color:var(--teacher-muted);font-size:.58rem}.prep-action-grid{grid-template-columns:1fr 1fr;gap:6px;display:grid}.prep-action-grid button{border:1px solid var(--teacher-line);color:var(--teacher-ink);cursor:pointer;background:#fff;border-radius:7px;padding:8px 5px;font-size:.68rem}.teacher-dialog{border:1px solid var(--teacher-line);width:min(760px,100vw - 32px);max-height:calc(100vh - 40px);color:var(--teacher-ink);border-radius:13px;padding:0;box-shadow:0 22px 70px #2d1e113b}.teacher-dialog::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#2f251c5c}.teacher-dialog header,.teacher-dialog footer{border-bottom:1px solid var(--teacher-line);justify-content:space-between;align-items:center;padding:13px 16px;display:flex}.teacher-dialog footer{border:0;border-top:1px solid var(--teacher-line);justify-content:flex-end;gap:7px}.teacher-dialog h3{margin:0}.teacher-dialog header button{cursor:pointer;background:0 0;border:0;font-size:1.3rem}.teacher-form-grid{grid-template-columns:1fr 1fr;gap:12px;max-height:65vh;padding:16px;display:grid;overflow:auto}.teacher-form-grid label{color:var(--teacher-muted);gap:5px;font-size:.7rem;display:grid}.teacher-form-grid input,.teacher-form-grid select,.teacher-form-grid textarea{border:1px solid var(--teacher-line);color:var(--teacher-ink);font:inherit;border-radius:7px;padding:8px}.teacher-form-grid .wide{grid-column:1/-1}.teacher-form-grid fieldset{border:1px solid var(--teacher-line);border-radius:8px;flex-wrap:wrap;gap:12px;display:flex}.teacher-form-grid fieldset label{align-items:center;gap:4px;display:flex}.version-dialog{width:min(620px,100vw - 32px)}.version-dialog>div{max-height:60vh;padding:12px;overflow:auto}.version-dialog article{border-bottom:1px solid var(--teacher-line);justify-content:space-between;align-items:center;padding:10px;display:flex}.version-dialog article b,.version-dialog article span,.version-dialog article em{display:block}.version-dialog article b{color:var(--teacher-accent-dark)}.version-dialog article span{font-size:.74rem}.version-dialog article em{color:var(--teacher-muted);font-size:.64rem;font-style:normal}@media (width<=1180px){.preparation-layout{grid-template-columns:200px minmax(430px,1fr)}.preparation-insight{z-index:25;width:275px;position:fixed;top:90px;bottom:12px;right:12px;transform:translate(calc(100% + 25px));box-shadow:0 15px 40px #00000029}.preparation-page.insight-open .preparation-insight{transform:none}}@media (width<=800px){.preparation-page{padding:10px}.preparation-layout{grid-template-columns:1fr;height:calc(100vh - 110px)}.preparation-sidebar{display:none}.prep-editor-head{display:block}.prep-editor-head>div:last-child{margin-top:8px}.teacher-form-grid{grid-template-columns:1fr}.teacher-form-grid .wide{grid-column:auto}}.teacher-notification-island{z-index:70;position:fixed;top:16px;right:82px}.teacher-notification-island>button{border:1px solid var(--teacher-line);color:var(--teacher-ink);cursor:pointer;background:#fffdfa;border-radius:18px;padding:7px 11px;box-shadow:0 6px 18px #452e1b17}.teacher-notification-island>button span{color:#fff;background:#a94a2a;border-radius:9px;place-items:center;min-width:17px;height:17px;margin-left:4px;font-size:.6rem;display:inline-grid}.teacher-notification-popover{border:1px solid var(--teacher-line);background:#fff;border-radius:11px;width:min(330px,100vw - 24px);position:absolute;top:42px;right:0;overflow:hidden;box-shadow:0 18px 45px #3726172e}.teacher-notification-popover header{border-bottom:1px solid var(--teacher-line);justify-content:space-between;padding:11px;display:flex}.teacher-notification-popover header button{color:var(--teacher-accent);cursor:pointer;background:0 0;border:0}.teacher-notification-popover>div{max-height:360px;overflow:auto}.teacher-notification-popover>div>button{text-align:left;width:100%;color:var(--teacher-ink);cursor:pointer;background:#fff;border:0;border-bottom:1px solid #f0e9df;padding:10px;display:block}.teacher-notification-popover>div>button.unread{background:#fff8ed}.teacher-notification-popover b,.teacher-notification-popover span,.teacher-notification-popover em{display:block}.teacher-notification-popover b{font-size:.76rem}.teacher-notification-popover span{color:var(--teacher-muted);white-space:nowrap;text-overflow:ellipsis;margin:3px 0;font-size:.68rem;overflow:hidden}.teacher-notification-popover em{color:#a29180;font-size:.58rem;font-style:normal}.teacher-ai-float{z-index:65;touch-action:none;position:fixed;top:70%;right:2px}.teacher-ai-float-main{filter:drop-shadow(0 7px 18px #462b152b);cursor:grab;align-items:stretch;display:flex}.teacher-ai-float-main[hidden],.teacher-ai-float-dock[hidden],.teacher-task-island-panel[hidden]{display:none!important}.teacher-ai-float-open{color:var(--teacher-ink);cursor:pointer;background:#fff6e8;border:1px solid #d8b88f;border-radius:20px 0 0 20px;align-items:center;gap:7px;padding:5px 9px 5px 5px;display:flex}.teacher-ai-float-open b{background:var(--teacher-accent);color:#fff;border-radius:50%;place-items:center;width:29px;height:29px;font-size:.7rem;display:grid}.teacher-ai-float-open span{font-size:.68rem;font-weight:700}.teacher-ai-float-hide{color:var(--teacher-accent-dark);cursor:pointer;background:#f0dcc0;border:1px solid #d8b88f;border-left:0;border-radius:0 14px 14px 0}.teacher-ai-float-dock{background:var(--teacher-accent);color:#fff;cursor:pointer;border:1px solid #d8b88f;border-radius:18px 0 0 18px;padding:9px 5px 9px 10px}.teacher-assistant-root{pointer-events:none;z-index:64;position:fixed;inset:0}.teacher-assistant-root.overlay-suppressed{visibility:hidden;pointer-events:none}.teacher-assistant-root>*{pointer-events:auto}.teacher-task-island{z-index:72;touch-action:none;position:fixed;top:16px;right:82px}.teacher-task-island-main{max-width:310px;color:var(--teacher-ink);cursor:pointer;background:#fffdfa;border:1px solid #ddd1c1;border-radius:20px;align-items:center;gap:7px;padding:5px 10px 5px 7px;transition:max-width .18s,padding .18s;display:flex;box-shadow:0 7px 22px #3e2b191f}.teacher-task-island-main>.teacher-task-island-grip{color:#ad9b88;cursor:ns-resize;font-size:.68rem}.teacher-task-island-main>b{background:var(--teacher-accent);color:#fff;border-radius:12px;place-items:center;min-width:24px;height:24px;font-size:.65rem;display:grid}.teacher-task-island-main>span:last-child{text-align:left;min-width:0;display:none}.teacher-task-island.is-expanded .teacher-task-island-main>span:last-child{display:block}.teacher-task-island-main strong,.teacher-task-island-main small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.teacher-task-island-main strong{font-size:.68rem}.teacher-task-island-main small{color:var(--teacher-muted);margin-top:1px;font-size:.57rem}.teacher-task-island-panel{border:1px solid var(--teacher-line);background:#fff;border-radius:11px;width:min(360px,100vw - 24px);position:absolute;top:43px;right:0;overflow:hidden;box-shadow:0 18px 45px #3726172e}.teacher-task-island-panel>header{border-bottom:1px solid var(--teacher-line);justify-content:space-between;padding:11px;display:flex}.teacher-task-island-panel>header button{color:var(--teacher-accent);cursor:pointer;background:0 0;border:0}.teacher-task-island-panel>div{max-height:420px;padding:8px;overflow:auto}.teacher-task-island-panel h4{color:var(--teacher-muted);margin:5px 3px;font-size:.61rem}.teacher-task-island-panel h4:not(:first-child){margin-top:12px}.teacher-task-island-panel h4+div{gap:3px;display:grid}.teacher-task-island-panel h4+div>button{text-align:left;width:100%;color:var(--teacher-ink);cursor:pointer;background:#fff;border:0;border-bottom:1px solid #f0e9df;border-radius:5px;padding:8px;display:block}.teacher-task-island-panel h4+div>button.unread{background:#fff8ed}.teacher-task-island-panel b,.teacher-task-island-panel span,.teacher-task-island-panel em{display:block}.teacher-task-island-panel b{font-size:.7rem}.teacher-task-island-panel span{color:var(--teacher-muted);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:.61rem;overflow:hidden}.teacher-task-island-panel em{color:#a29180;font-size:.56rem;font-style:normal}.teacher-ai-float-panel{z-index:74;border:1px solid var(--teacher-line);touch-action:auto;background:#fffdfa;border-radius:13px;grid-template-rows:auto auto minmax(0,1fr) auto auto;width:min(390px,100vw - 30px);height:min(480px,100dvh - 94px);display:grid;position:fixed;bottom:18px;right:18px;overflow:hidden;box-shadow:0 22px 60px #39271738}.teacher-ai-float-panel[hidden]{display:none}.teacher-ai-float-panel>header{border-bottom:1px solid var(--teacher-line);align-items:center;gap:7px;padding:11px 12px;display:flex}.teacher-ai-float-panel>header>div{flex:1;min-width:0}.teacher-ai-float-panel>header b,.teacher-ai-float-panel>header span{display:block}.teacher-ai-float-panel>header b{color:var(--teacher-ink);font-size:.82rem}.teacher-ai-float-panel>header span{color:var(--teacher-muted);font-size:.6rem}.teacher-ai-float-panel>header button{color:var(--teacher-muted);cursor:pointer;background:0 0;border:0}.teacher-ai-float-skills{border-bottom:1px solid var(--teacher-line);gap:5px;padding:8px;display:flex;overflow-x:auto}.teacher-ai-float-skills button{border:1px solid var(--teacher-line);color:var(--teacher-muted);cursor:pointer;background:#fff;border-radius:14px;flex:none;padding:5px 7px;font-size:.62rem}.teacher-ai-float-messages{min-height:0;padding:10px;overflow:auto}.teacher-ai-float-messages .empty{color:var(--teacher-muted);text-align:center;padding:32px 10px;font-size:.7rem}.teacher-ai-float-messages>div:not(.empty){color:var(--teacher-ink);border-radius:9px;margin-bottom:8px;padding:8px 10px;font-size:.72rem;line-height:1.55}.teacher-ai-float-messages>.user{background:#f1e5d4;margin-left:45px}.teacher-ai-float-messages>.assistant{border:1px solid var(--teacher-line);background:#fff;margin-right:25px}.teacher-ai-float-files{flex-wrap:wrap;gap:4px;padding:0 9px;display:flex}.teacher-ai-float-files:empty{display:none}.teacher-ai-float-files span{color:var(--teacher-muted);background:#f5eadb;border-radius:6px;padding:4px 6px;font-size:.6rem}.teacher-ai-float-files button{cursor:pointer;background:0 0;border:0}.teacher-ai-float-panel form{border-top:1px solid var(--teacher-line);padding:7px}.teacher-ai-float-panel textarea{box-sizing:border-box;resize:none;width:100%;color:var(--teacher-ink);font:inherit;background:0 0;border:0;outline:0}.teacher-ai-float-panel form footer{justify-content:space-between;align-items:center;display:flex}.teacher-ai-float-panel form footer label,.teacher-ai-float-panel form footer button{color:var(--teacher-muted);cursor:pointer;background:#f3eadf;border:0;border-radius:7px;padding:6px 8px;font-size:.64rem}.teacher-ai-float-panel form footer>button{background:var(--teacher-accent);color:#fff}.teacher-reminder-alert{z-index:76;box-sizing:border-box;width:min(330px,100vw - 30px);color:var(--teacher-ink);background:#fffaf1;border:1px solid #dfc39d;border-radius:13px;padding:12px;position:fixed;bottom:18px;right:426px;box-shadow:0 20px 52px #3d2a1833}.teacher-reminder-alert[hidden]{display:none}.teacher-reminder-alert header,.teacher-reminder-alert footer{justify-content:space-between;align-items:center;gap:8px;display:flex}.teacher-reminder-alert header div{min-width:0}.teacher-reminder-alert header b,.teacher-reminder-alert header span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.teacher-reminder-alert header b{font-size:.78rem}.teacher-reminder-alert header span{color:var(--teacher-muted);margin-top:2px;font-size:.59rem}.teacher-reminder-alert header>button{cursor:pointer;background:0 0;border:0}.teacher-reminder-alert p{color:var(--teacher-muted);margin:9px 0;font-size:.68rem;line-height:1.6}.teacher-reminder-alert footer{justify-content:flex-end}.teacher-reminder-alert footer button{border:1px solid var(--teacher-line);color:var(--teacher-ink);cursor:pointer;background:#fff;border-radius:7px;padding:6px 8px;font-size:.61rem}.teacher-reminder-alert footer button.primary{border-color:var(--teacher-accent);background:var(--teacher-accent);color:#fff}@media (width<=900px){.teacher-reminder-alert{bottom:82px;right:18px}}@media (width<=700px){.teacher-notification-island{top:10px;right:12px}.teacher-ai-float{right:9px}.teacher-ai-float-panel{width:calc(100vw - 18px);height:min(520px,100dvh - 88px);bottom:70px;right:9px}.teacher-reminder-alert{width:calc(100vw - 18px);bottom:82px;right:9px}}.teacher-secondary-nav{z-index:58;box-sizing:border-box;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);height:46px;color:var(--teacher-ink);background:#fffdfaf5;border-bottom:1px solid #e5ddd2;align-items:center;gap:20px;padding:0 22px;display:flex;position:sticky;top:0}.teacher-secondary-nav>strong{flex:none;font-size:.72rem}.teacher-secondary-nav>div{align-items:stretch;gap:2px;height:100%;display:flex;overflow-x:auto}.teacher-secondary-nav a{color:var(--teacher-muted);white-space:nowrap;align-items:center;padding:0 10px;font-size:.65rem;font-weight:650;text-decoration:none;display:flex;position:relative}.teacher-secondary-nav a:hover{color:var(--teacher-accent-dark);background:#fff8ed}.teacher-secondary-nav a.active{color:var(--teacher-accent-dark)}.teacher-secondary-nav a.active:after{content:"";background:var(--teacher-accent);border-radius:2px;height:2px;position:absolute;bottom:0;left:9px;right:9px}#systab-bar{display:none!important}#systab-content{padding-top:16px!important}#hw-tab-bar{height:44px!important;box-shadow:none!important;padding:0 18px!important;position:static!important;inset:auto!important}#hw-tab-bar+div{padding-top:16px!important}@media (width<=700px){.teacher-secondary-nav{gap:8px;padding:0 10px}.teacher-secondary-nav>strong{display:none}.teacher-task-island{right:12px}}.teacher-ai-page .teacher-ai-message.assistant .teacher-ai-message-body{color:#443326;font-size:14px;line-height:1.78}.teacher-ai-page .teacher-ai-message.assistant .teacher-ai-message-body :is(h1,h2,h3,h4){color:#5b391b;letter-spacing:.01em;font-weight:780}.teacher-ai-page .teacher-ai-message.assistant .teacher-ai-message-body h1{border-bottom:2px solid #d7a75f;margin:1.25em 0 .62em;padding-bottom:.34em;font-size:1.55em}.teacher-ai-page .teacher-ai-message.assistant .teacher-ai-message-body h2{border-left:4px solid #c88a37;margin:1.18em 0 .55em;padding-left:.58em;font-size:1.3em}.teacher-ai-page .teacher-ai-message.assistant .teacher-ai-message-body h3{color:#71481f;margin:1.05em 0 .48em;font-size:1.12em}.teacher-ai-page .teacher-ai-message.assistant .teacher-ai-message-body h4{color:#815b35;margin:.95em 0 .42em;font-size:1.02em}.teacher-ai-page .teacher-ai-message.assistant .teacher-ai-message-body p{margin:.35em 0 .88em}.teacher-ai-page .teacher-ai-message.assistant .teacher-ai-message-body :is(ul,ol){margin:.42em 0 .95em;padding-left:1.55em}.teacher-ai-page .teacher-ai-message.assistant .teacher-ai-message-body li{margin:.28em 0;padding-left:.12em}.teacher-ai-page .teacher-ai-message.assistant .teacher-ai-message-body strong{color:#734315}.teacher-ai-page .teacher-ai-message.assistant .teacher-ai-message-body a{color:#9b5b1d;text-underline-offset:3px;text-decoration-color:#d7ad76}.teacher-ai-page .teacher-ai-message.assistant .teacher-ai-message-body blockquote{color:#65503d;background:#fbf1e3;border-left:4px solid #d2a05d;border-radius:0 9px 9px 0;margin:.9em 0;padding:.72em 1em}.teacher-ai-page .teacher-ai-message.assistant .teacher-ai-message-body :not(pre)>code{color:#8a4f1d;background:#f8efe4;border:1px solid #ead7bc;border-radius:5px;padding:.12em .38em;font-size:.9em}.teacher-ai-page .teacher-ai-message.assistant .teacher-ai-message-body pre{color:#f8ead7;background:#342b24;border:1px solid #dfc8aa;border-radius:10px;margin:1em 0;padding:13px 15px;box-shadow:inset 3px 0 #c88a37}.teacher-ai-page .teacher-ai-message.assistant .teacher-ai-message-body pre code{color:inherit;white-space:pre}.teacher-ai-page .teacher-ai-message.assistant .teacher-ai-message-body table{white-space:normal;background:#fffdf9;border:1px solid #dfcdb7;border-radius:8px;margin:1em 0}.teacher-ai-page .teacher-ai-message.assistant .teacher-ai-message-body th{color:#623d1d;background:#f1dfc6;font-weight:760}.teacher-ai-page .teacher-ai-message.assistant .teacher-ai-message-body tr:nth-child(2n) td{background:#fcf7ef}.teacher-ai-page .teacher-ai-message.assistant .teacher-ai-message-body :is(th,td){border-color:#e7d8c4}.teacher-ai-page .teacher-ai-message.assistant .teacher-ai-message-body hr{border:0;border-top:1px solid #dcc39f;margin:1.35em 0}.teacher-ai-page .teacher-ai-message.assistant .teacher-ai-message-body .katex{color:#60401f}.teacher-ai-page .ai-pending-action-card{background:#fffaf2;border-color:#dfc29c}.teacher-ai-page .ai-pending-action-card header b,.teacher-ai-page .ai-pending-action-card .primary{color:#fff;background:#a96825}.teacher-dashboard-page{box-sizing:border-box;min-height:100vh;color:var(--teacher-ink);background:#fbf9f5;padding:20px 24px 30px}.teacher-focus-card{border:1px solid #dfc9ad;border-left:4px solid var(--teacher-accent);background:linear-gradient(115deg,#fff9ee,#fffdfa);border-radius:11px;justify-content:space-between;align-items:center;gap:20px;padding:15px 17px;display:flex;box-shadow:0 7px 20px #5b3c200f}.teacher-focus-card span{color:var(--teacher-accent);text-transform:uppercase;letter-spacing:.07em;font-size:.68rem;font-weight:800}.teacher-focus-card h2{margin:4px 0 2px;font-size:1.2rem}.teacher-focus-card p{color:var(--teacher-muted);margin:0;font-size:.78rem}.teacher-focus-card button{background:var(--teacher-accent);color:#fff;cursor:pointer;white-space:nowrap;border:0;border-radius:8px;flex:none;padding:9px 14px;font-weight:750}.teacher-dashboard-grid{grid-template-columns:minmax(0,1fr) 250px;align-items:start;gap:16px;margin-top:14px;display:grid}.teacher-metric-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;display:grid}.teacher-metric-grid article{border:1px solid var(--teacher-line);background:#fff;border-radius:9px;min-width:0;padding:11px 12px}.teacher-metric-grid span{color:var(--teacher-muted);font-size:.66rem;display:block}.teacher-metric-grid b{color:var(--teacher-ink);margin-top:5px;font-size:1.22rem;display:block}.teacher-metric-grid i{color:var(--teacher-muted);margin-left:2px;font-size:.6rem;font-style:normal;font-weight:500}.teacher-quick-section{margin-top:0!important}.teacher-quick-section+.teacher-metric-grid{margin-top:10px}.teacher-calendar-section>header{align-items:center}.teacher-calendar-controls{align-items:center;gap:4px;display:flex}.teacher-calendar-controls button{color:#5d4d3e;cursor:pointer;background:#fff;border:1px solid #ded4c7;border-radius:6px;min-width:28px;height:28px}.teacher-calendar-controls span{background:#f4eee6;border-radius:7px;margin-left:5px;padding:2px;display:flex}.teacher-calendar-controls span button{background:0 0;border:0;height:24px;font-size:.64rem}.teacher-calendar-controls span button.active{color:var(--teacher-accent);background:#fff;box-shadow:0 1px 4px #4a341e1f}.teacher-calendar-weekdays,.teacher-calendar-month{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.teacher-calendar-weekdays span{color:var(--teacher-muted);text-align:right;padding:5px 8px;font-size:.61rem}.teacher-calendar-day{background:#fff;border-top:1px solid #eee7dc;border-left:1px solid #eee7dc;min-width:0;min-height:94px;padding:4px}.teacher-calendar-day:nth-child(7n){border-right:1px solid #eee7dc}.teacher-calendar-day:nth-last-child(-n+7){border-bottom:1px solid #eee7dc}.teacher-calendar-day.outside{background:#faf8f4}.teacher-calendar-date{color:#4f453a;cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:23px;height:23px;margin-left:auto;font-size:.65rem;display:grid}.teacher-calendar-day.outside .teacher-calendar-date{color:#b5aa9d}.teacher-calendar-day.today .teacher-calendar-date{background:var(--teacher-accent);color:#fff;font-weight:800}.teacher-calendar-day>div{gap:2px;display:grid}.teacher-calendar-event{color:#4b4034;text-align:left;cursor:pointer;background:#f8f2ea;border:0;border-radius:4px;align-items:center;gap:4px;width:100%;min-width:0;padding:3px 5px;display:flex}.teacher-calendar-event i{background:#b36a23;border-radius:50%;flex:0 0 5px;width:5px;height:5px}.teacher-calendar-event span{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.58rem;overflow:hidden}.teacher-calendar-event em{color:#897564;margin-right:4px;font-size:.54rem;font-style:normal}.teacher-calendar-event.deadline{background:#fff0ed}.teacher-calendar-event.deadline i{background:#bd513d}.teacher-calendar-event.preparation{background:#eff5ee}.teacher-calendar-event.preparation i{background:#648466}.teacher-calendar-event.resource{background:#f0f3fa}.teacher-calendar-event.resource i{background:#657da4}.teacher-calendar-event.message{background:#f7f1fa}.teacher-calendar-event.message i{background:#8c69a5}.teacher-calendar-more{color:var(--teacher-accent);cursor:pointer;background:0 0;border:0;font-size:.56rem}.teacher-calendar-week{border:1px solid #eee7dc;border-radius:8px;grid-template-columns:repeat(7,minmax(110px,1fr));display:grid;overflow-x:auto}.teacher-calendar-week>section{border-right:1px solid #eee7dc;min-height:230px;padding:7px}.teacher-calendar-week>section:last-child{border-right:0}.teacher-calendar-week>section.today{background:#fffaf2}.teacher-calendar-week header{justify-content:space-between;padding-bottom:7px;display:flex}.teacher-calendar-week header span{color:var(--teacher-muted);font-size:.61rem}.teacher-calendar-week header b{font-size:.67rem}.teacher-calendar-week section>div{align-content:start;gap:4px;display:grid}.teacher-calendar-empty{color:var(--teacher-muted);cursor:pointer;background:0 0;border:1px dashed #d8cbbc;border-radius:6px;padding:8px 4px;font-size:.58rem}.teacher-calendar-list{gap:8px;max-height:400px;display:grid;overflow:auto}.teacher-calendar-list>section{border-bottom:1px solid #eee7dc;grid-template-columns:120px 1fr;gap:10px;padding:8px 0;display:grid}.teacher-calendar-list>section>header{display:block}.teacher-calendar-list>section>header b{font-size:.69rem;display:block}.teacher-calendar-list>section>header button{color:var(--teacher-accent);cursor:pointer;background:0 0;border:0;margin-top:5px;font-size:.58rem}.teacher-calendar-list section>div{gap:4px;display:grid}.teacher-calendar-list article{grid-template-columns:minmax(0,1fr) 210px;align-items:center;gap:10px;display:grid}.teacher-calendar-list article>span{text-overflow:ellipsis;white-space:nowrap;color:var(--teacher-muted);font-size:.58rem;overflow:hidden}.teacher-calendar-dialog{border:1px solid #ded2c2;border-radius:12px;width:min(420px,100vw - 28px);padding:0;box-shadow:0 20px 70px #3a2a1a3b}.teacher-calendar-dialog::backdrop{background:#27201952}.teacher-calendar-dialog form{padding:16px}.teacher-calendar-dialog header{justify-content:space-between;align-items:center;display:flex}.teacher-calendar-dialog header span,.teacher-calendar-dialog header strong{display:block}.teacher-calendar-dialog header span{color:var(--teacher-muted);font-size:.61rem}.teacher-calendar-dialog header strong{font-size:.9rem}.teacher-calendar-dialog header button{cursor:pointer;background:0 0;border:0;font-size:1.25rem}.teacher-calendar-dialog p{color:var(--teacher-muted);font-size:.68rem}.teacher-calendar-dialog form>div{grid-template-columns:repeat(3,1fr);gap:7px;display:grid}.teacher-calendar-dialog form>div button{color:#66451f;cursor:pointer;background:#fff8ed;border:1px solid #dfcfba;border-radius:7px;padding:9px 5px;font-size:.66rem;font-weight:700}.teacher-dashboard-section{border:1px solid var(--teacher-line);background:#fff;border-radius:11px;margin-top:12px;padding:13px}.teacher-dashboard-section>header{justify-content:space-between;align-items:flex-start;margin-bottom:10px;display:flex}.teacher-dashboard-section h3{margin:0;font-size:.9rem}.teacher-dashboard-section header p{color:var(--teacher-muted);margin:2px 0 0;font-size:.65rem}.teacher-dashboard-section header a{color:var(--teacher-accent);font-size:.68rem;text-decoration:none}.teacher-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.teacher-chart-grid article{border:1px solid #eee7dc;border-radius:8px;min-width:0;padding:8px}.teacher-chart-grid article>b{font-size:.7rem;display:block}.teacher-chart-grid article>div{width:100%;height:226px}.teacher-dashboard-section.compact{padding-bottom:11px}.teacher-quick-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;display:grid}.teacher-quick-grid button{border:1px solid var(--teacher-line);min-width:0;color:var(--teacher-ink);cursor:pointer;white-space:nowrap;background:#fdfaf5;border-radius:8px;justify-content:space-between;align-items:center;padding:9px;font-size:.7rem;font-weight:700;display:flex}.teacher-quick-grid button:hover{background:#fff4e3;border-color:#d8ad7a}.teacher-quick-grid span{color:var(--teacher-accent)}.teacher-recent-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 8px;display:grid}.teacher-recent-list button{text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #eee7dc;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px 3px;display:grid}.teacher-recent-list span{color:var(--teacher-accent);font-size:.62rem}.teacher-recent-list b{text-overflow:ellipsis;white-space:nowrap;color:var(--teacher-ink);font-size:.7rem;overflow:hidden}.teacher-recent-list em{color:var(--teacher-muted);white-space:nowrap;font-size:.6rem;font-style:normal}.teacher-summary-card{border:1px solid var(--teacher-line);background:#fff;border-radius:11px;padding:14px;position:sticky;top:16px;box-shadow:0 8px 22px #533a230d}.teacher-summary-person{align-items:center;gap:9px;display:flex}.teacher-summary-person>div{color:#fff;background:linear-gradient(145deg,#ba7126,#d89543);border-radius:10px;place-items:center;width:39px;height:39px;font-weight:800;display:grid}.teacher-summary-person b,.teacher-summary-person em{display:block}.teacher-summary-person b{font-size:.86rem}.teacher-summary-person em{color:var(--teacher-muted);margin-top:2px;font-size:.62rem;font-style:normal}.teacher-summary-counts{grid-template-columns:1fr 1fr;gap:6px;margin:12px 0;display:grid}.teacher-summary-counts span{color:var(--teacher-muted);background:#faf5ed;border-radius:7px;padding:8px;font-size:.62rem}.teacher-summary-counts b{color:var(--teacher-accent-dark);font-size:1rem;display:block}.teacher-summary-card h3{margin:12px 0 7px;font-size:.72rem}.teacher-summary-schedule{gap:5px;display:grid}.teacher-summary-schedule button{text-align:left;cursor:pointer;background:#fcf8f2;border:0;border-left:2px solid #d7aa73;padding:7px}.teacher-summary-schedule b,.teacher-summary-schedule span{display:block}.teacher-summary-schedule span{color:var(--teacher-muted);margin-top:2px;font-size:.58rem}.teacher-summary-schedule p{color:var(--teacher-muted);font-size:.65rem}.teacher-dashboard-error{text-align:center;color:var(--teacher-muted);margin:20vh auto}.teacher-dashboard-error b{color:var(--teacher-ink)}.teacher-dashboard-error button{background:var(--teacher-accent);color:#fff;border:0;border-radius:7px;padding:8px 12px}@media (width<=1250px){.teacher-dashboard-grid{grid-template-columns:1fr}.teacher-summary-card{position:static}.teacher-summary-schedule{grid-template-columns:repeat(2,1fr)}.teacher-metric-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=850px){.teacher-dashboard-page{padding:12px}.teacher-focus-card{align-items:flex-start}.teacher-chart-grid{grid-template-columns:1fr}.teacher-quick-grid{grid-template-columns:repeat(3,1fr)}.teacher-recent-list,.teacher-summary-schedule{grid-template-columns:1fr}}@media (width<=560px){.teacher-metric-grid,.teacher-quick-grid{grid-template-columns:repeat(2,1fr)}}.analytics-workbench{box-sizing:border-box;min-height:100vh;color:var(--teacher-ink);background:#fbf9f5;padding:18px 22px 30px}.analytics-filter-bar{border:1px solid var(--teacher-line);background:#fff;border-radius:10px;flex-wrap:wrap;align-items:end;gap:8px;padding:11px;display:flex}.analytics-filter-bar label{min-width:125px;color:var(--teacher-muted);gap:4px;font-size:.65rem;display:grid}.analytics-filter-bar select,.analytics-filter-bar input{border:1px solid var(--teacher-line);color:var(--teacher-ink);background:#fff;border-radius:7px;padding:8px}.analytics-empty{text-align:center;color:var(--teacher-muted);margin:18vh auto}.analytics-empty b{color:var(--teacher-ink)}.analytics-overview{grid-template-columns:repeat(8,minmax(0,1fr));gap:7px;margin-top:11px;display:grid}.analytics-overview article{border:1px solid var(--teacher-line);background:#fff;border-radius:8px;padding:10px}.analytics-overview span{color:var(--teacher-muted);font-size:.62rem;display:block}.analytics-overview b{margin-top:4px;font-size:1.08rem;display:block}.analytics-overview i{color:var(--teacher-muted);margin-left:2px;font-size:.56rem;font-style:normal;font-weight:500}.analytics-chart-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:9px;display:grid}.analytics-chart-grid article,.analytics-detail-grid>article,.analytics-sources{border:1px solid var(--teacher-line);background:#fff;border-radius:9px;min-width:0;padding:10px}.analytics-chart-grid article header,.analytics-detail-grid article>header,.analytics-sources>header{justify-content:space-between;align-items:center;display:flex}.analytics-chart-grid header button{color:var(--teacher-accent);cursor:pointer;background:0 0;border:0;font-size:.62rem}.analytics-chart-grid article>div{width:100%;height:218px}.analytics-chart-grid article.expanded{z-index:80;background:#fff;position:fixed;inset:58px 34px 28px 140px;box-shadow:0 20px 70px #00000040}.analytics-chart-grid article.expanded>div{height:calc(100% - 24px)}body.analytics-chart-open{overflow:hidden}body.analytics-chart-open:after{content:"";z-index:79;pointer-events:none;background:#2c231b57;position:fixed;inset:0}.analytics-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:9px;display:grid}.analytics-detail-grid h3{margin:0 0 7px;font-size:.75rem}.analytics-detail-grid header>span{color:var(--teacher-accent);font-size:.65rem}.analytics-rank-list{display:grid}.analytics-rank-list>div{border-bottom:1px solid #eee8df;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:7px;padding:7px 0;display:grid}.analytics-rank-list>div>i{width:18px;height:18px;color:var(--teacher-accent-dark);background:#f2e6d7;border-radius:50%;place-items:center;font-size:.58rem;font-style:normal;display:grid}.analytics-rank-list b,.analytics-rank-list em{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.analytics-rank-list b{font-size:.68rem}.analytics-rank-list em{color:var(--teacher-muted);font-size:.58rem;font-style:normal}.analytics-rank-list strong{color:var(--teacher-accent);font-size:.64rem}.analytics-tag-list{flex-wrap:wrap;gap:5px;display:flex}.analytics-tag-list span{color:var(--teacher-muted);background:#f7eee2;border-radius:14px;padding:5px 7px;font-size:.62rem}.analytics-tag-list b{color:var(--teacher-accent);margin-left:5px}.analytics-detail-grid h4{margin:12px 0 5px;font-size:.66rem}.analytics-question-list p{color:var(--teacher-muted);border-left:2px solid #d3b189;margin:4px 0;padding:5px;font-size:.62rem}.analytics-question-list p.unresolved{background:#fff7f2;border-color:#b85e3b}.analytics-risk-list{gap:4px;display:grid}.analytics-risk-list button{text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #eee8df;justify-content:space-between;align-items:center;padding:6px 2px;display:flex}.analytics-risk-list b,.analytics-risk-list em{display:block}.analytics-risk-list b{font-size:.68rem}.analytics-risk-list em,.analytics-risk-list i{color:var(--teacher-muted);font-size:.58rem;font-style:normal}.analytics-layer-grid{grid-template-columns:repeat(4,1fr);gap:5px;display:grid}.analytics-layer-grid div{text-align:center;background:#faf5ee;border-radius:7px;padding:8px 4px}.analytics-layer-grid b,.analytics-layer-grid span{display:block}.analytics-layer-grid b{color:var(--teacher-accent-dark)}.analytics-layer-grid span{color:var(--teacher-muted);font-size:.56rem}.analytics-task-comparison{grid-template-columns:1fr 1fr;gap:6px;margin-top:9px;display:grid}.analytics-task-comparison div{border:1px solid var(--teacher-line);border-radius:7px;padding:8px}.analytics-task-comparison b,.analytics-task-comparison span{display:block}.analytics-task-comparison b{font-size:.92rem}.analytics-task-comparison span{color:var(--teacher-muted);font-size:.57rem}.analytics-focus-list{gap:6px;display:grid}.analytics-focus-list>div{background:#fcf8f2;border-left:3px solid #d1a064;padding:7px}.analytics-focus-list>div[data-priority=high]{border-color:#b85e3b}.analytics-focus-list b{font-size:.68rem}.analytics-focus-list p{color:var(--teacher-muted);margin:3px 0;font-size:.6rem}.analytics-focus-list button{color:var(--teacher-accent);cursor:pointer;background:0 0;border:0;padding:0;font-size:.58rem}.analytics-sources{margin-top:9px}.analytics-sources h3{margin:0;font-size:.75rem}.analytics-sources header span{color:var(--teacher-muted);font-size:.6rem}.analytics-sources>div{grid-template-columns:repeat(2,1fr);gap:6px;margin-top:8px;display:grid}.analytics-sources p{color:var(--teacher-muted);margin:0;font-size:.62rem}.analytics-sources p b{color:var(--teacher-ink);margin-right:5px}.analytics-sources footer{flex-wrap:wrap;gap:5px;margin-top:8px;display:flex}.analytics-sources footer span{color:var(--teacher-muted);background:#f6f0e7;border-radius:5px;padding:4px 6px;font-size:.58rem}@media (width<=1200px){.analytics-overview{grid-template-columns:repeat(4,1fr)}.analytics-chart-grid,.analytics-detail-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=760px){.analytics-workbench{padding:12px}.analytics-chart-grid,.analytics-detail-grid{grid-template-columns:1fr}.analytics-overview{grid-template-columns:repeat(2,1fr)}.analytics-sources>div{grid-template-columns:1fr}.analytics-chart-grid article.expanded{inset:54px 10px 10px}}@media print{.student-sidebar,.analytics-filter-bar,.teacher-task-island,.teacher-ai-float,.global-task-center,.teacher-page-head button{display:none!important}.student-main{margin:0!important}.analytics-workbench{padding:0}.analytics-chart-grid article>div{height:220px}.analytics-detail-grid{grid-template-columns:repeat(2,1fr)}}.teacher-resource-page{box-sizing:border-box;min-height:100vh;color:var(--teacher-ink);background:#fbf9f5;padding:18px 22px 30px}.teacher-page-head>div:last-child{gap:7px;display:flex}.resource-tabs{border-bottom:1px solid var(--teacher-line);gap:5px;display:flex}.resource-tabs button{color:var(--teacher-muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:9px 12px;font-weight:700}.resource-tabs button.active{border-color:var(--teacher-accent);color:var(--teacher-accent-dark)}.resource-tabs span{background:#f0dfc8;border-radius:8px;margin-left:4px;padding:1px 5px;font-size:.6rem}.resource-filter{flex-wrap:wrap;gap:7px;padding:10px 0;display:flex}.resource-filter input,.resource-filter select{border:1px solid var(--teacher-line);min-width:130px;color:var(--teacher-ink);background:#fff;border-radius:7px;padding:8px}.resource-filter input{flex:1;min-width:220px}.resource-card-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;display:grid}.resource-card-grid article{border:1px solid var(--teacher-line);background:#fff;border-radius:9px;grid-template-columns:48px minmax(0,1fr);gap:9px;min-width:0;padding:10px;display:grid}.resource-file-type{width:44px;height:44px;color:var(--teacher-accent-dark);background:#f2e4d2;border-radius:9px;place-items:center;font-size:.62rem;font-weight:800;display:grid}.resource-card-body{min-width:0}.resource-card-body span{color:var(--teacher-accent);font-size:.58rem}.resource-card-body h3{text-overflow:ellipsis;white-space:nowrap;margin:3px 0;font-size:.76rem;overflow:hidden}.resource-card-body p,.resource-card-body em{color:var(--teacher-muted);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.6rem;font-style:normal;display:block;overflow:hidden}.resource-card-grid footer{border-top:1px solid #eee7dd;grid-column:1/-1;justify-content:flex-end;gap:4px;padding-top:7px;display:flex}.resource-card-grid footer a,.resource-card-grid footer button{color:var(--teacher-accent);cursor:pointer;background:0 0;border:0;font-size:.61rem;text-decoration:none}.resource-batch-bar{border:1px solid var(--teacher-line);color:var(--teacher-muted);background:#fff;border-radius:8px;align-items:center;gap:10px;padding:8px;font-size:.68rem;display:flex}.resource-batch-bar span{flex:1}.resource-batch-bar button{border:1px solid var(--teacher-line);color:var(--teacher-ink);cursor:pointer;background:#fff;border-radius:6px;padding:6px 8px}.review-application-list{gap:7px;margin-top:8px;display:grid}.review-application-list article{border:1px solid var(--teacher-line);background:#fff;border-radius:9px;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;display:grid}.review-application-list span{color:var(--teacher-accent);font-size:.58rem}.review-application-list h3{margin:2px 0;font-size:.78rem}.review-application-list p{color:var(--teacher-muted);margin:0;font-size:.66rem}.review-application-list em{color:#9c8b7b;font-size:.58rem;font-style:normal}.review-application-list>article>button{color:var(--teacher-accent-dark);cursor:pointer;background:#fff7eb;border:1px solid #d9b78d;border-radius:7px;padding:7px 10px}.review-dialog>div{padding:15px}.review-dialog>footer{grid-template-columns:1fr auto auto;display:grid}.review-dialog textarea{resize:vertical;border:1px solid var(--teacher-line);border-radius:7px;min-height:52px;padding:8px}.review-detail-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.review-detail-grid p{color:var(--teacher-muted);background:#faf5ee;border-radius:7px;margin:0;padding:8px;font-size:.68rem}.review-detail-grid b{color:var(--teacher-ink);margin-bottom:3px;display:block}.review-detail-grid .wide{grid-column:1/-1}.review-dialog h4{font-size:.7rem}.review-documents{gap:5px;display:grid}.review-documents span{border-bottom:1px solid #eee8df;justify-content:space-between;padding:6px;font-size:.66rem;display:flex}.review-documents i{color:var(--teacher-muted);font-style:normal}@media (width<=1200px){.resource-card-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=850px){.resource-card-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=560px){.teacher-resource-page{padding:12px}.resource-card-grid,.review-detail-grid{grid-template-columns:1fr}.review-detail-grid .wide{grid-column:auto}.review-dialog>footer{grid-template-columns:1fr 1fr}.review-dialog textarea{grid-column:1/-1}}.resource-readback{color:var(--teacher-muted);border-top:1px dashed #eadfce;gap:6px;margin-top:7px;padding-top:6px;font-size:.56rem;display:flex}.resource-readback b{color:var(--teacher-accent-dark)}.resource-distribution-list{gap:8px;min-width:min(600px,100vw - 40px);padding:14px;display:grid}.resource-distribution-list article{border:1px solid var(--teacher-line);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:10px;display:grid}.resource-distribution-list article b,.resource-distribution-list article span{display:block}.resource-distribution-list article b{font-size:.72rem}.resource-distribution-list article span{color:var(--teacher-muted);margin-top:3px;font-size:.6rem}.resource-distribution-list dl{grid-template-columns:repeat(4,52px);gap:5px;margin:0;display:grid}.resource-distribution-list dl div{text-align:center;background:#faf4eb;border-radius:6px;padding:5px}.resource-distribution-list dt{color:var(--teacher-muted);font-size:.54rem}.resource-distribution-list dd{color:var(--teacher-accent-dark);margin:2px 0 0;font-size:.78rem;font-weight:800}.teacher-profile-page{box-sizing:border-box;min-height:100vh;color:var(--teacher-ink);background:#fbf9f5;padding:18px 22px 30px}.teacher-profile-layout{grid-template-columns:235px minmax(0,1fr);align-items:start;gap:12px;display:grid}.teacher-profile-summary,.teacher-profile-card{border:1px solid var(--teacher-line);background:#fff;border-radius:10px;padding:14px}.teacher-profile-summary{text-align:center;position:sticky;top:15px}.teacher-profile-avatar{cursor:pointer;width:72px;height:72px;margin:0 auto;display:block;position:relative}.teacher-profile-avatar img,.teacher-profile-avatar>span{object-fit:cover;color:#fff;background:linear-gradient(145deg,#b86c21,#d99443);border-radius:16px;place-items:center;width:72px;height:72px;font-size:1.35rem;font-weight:800;display:grid}.teacher-profile-avatar i{color:var(--teacher-accent);white-space:nowrap;background:#fff;border-radius:7px;padding:2px 6px;font-size:.55rem;font-style:normal;position:absolute;bottom:-5px;left:50%;transform:translate(-50%);box-shadow:0 2px 7px #0000001f}.teacher-profile-summary h3{margin:13px 0 2px}.teacher-profile-summary>p{color:var(--teacher-muted);margin:0;font-size:.66rem}.teacher-profile-summary>div{grid-template-columns:1fr 1fr;gap:6px;margin:13px 0;display:grid}.teacher-profile-summary>div span{color:var(--teacher-muted);background:#faf5ee;border-radius:7px;padding:8px;font-size:.58rem}.teacher-profile-summary>div b{color:var(--teacher-accent-dark);font-size:1rem;display:block}.teacher-profile-summary dl{text-align:left;border-top:1px solid var(--teacher-line);grid-template-columns:auto 1fr;gap:7px;padding-top:11px;font-size:.62rem;display:grid}.teacher-profile-summary dt{color:var(--teacher-muted)}.teacher-profile-summary dd{text-align:right;margin:0}.teacher-profile-layout main{gap:10px;display:grid}.teacher-profile-card{padding:0}.teacher-profile-card>header{border-bottom:1px solid var(--teacher-line);justify-content:space-between;align-items:center;padding:11px 13px;display:flex}.teacher-profile-card h3{margin:0;font-size:.82rem}.teacher-profile-card .teacher-form-grid{max-height:none}.teacher-preference-grid{grid-template-columns:1fr 1fr;gap:20px;padding:14px;display:grid}.teacher-preference-grid h4{margin:0 0 9px;font-size:.72rem}.teacher-preference-grid section>label{color:var(--teacher-muted);align-items:center;gap:7px;margin:8px 0;font-size:.68rem;display:flex}.teacher-preference-grid select{border:1px solid var(--teacher-line);color:var(--teacher-ink);background:#fff;border-radius:7px;padding:8px}.teacher-profile-course-list{grid-template-columns:repeat(3,1fr);gap:7px;padding:13px;display:grid}.teacher-profile-course-list button{text-align:left;border:1px solid var(--teacher-line);cursor:pointer;background:#fcf8f2;border-radius:7px;padding:9px}.teacher-profile-course-list b,.teacher-profile-course-list span{display:block}.teacher-profile-course-list b{font-size:.7rem}.teacher-profile-course-list span{color:var(--teacher-muted);margin-top:2px;font-size:.6rem}@media (width<=800px){.teacher-profile-page{padding:12px}.teacher-profile-layout{grid-template-columns:1fr}.teacher-profile-summary{position:static}.teacher-preference-grid{grid-template-columns:1fr}.teacher-profile-course-list{grid-template-columns:1fr 1fr}}.student-notification-island{z-index:70;position:fixed;top:16px;right:82px}.student-notification-island>button{color:#284d67;cursor:pointer;background:#f9fcfe;border:1px solid #cbdce7;border-radius:18px;padding:7px 11px;box-shadow:0 6px 18px #24496217}.student-notification-island>button span{color:#fff;background:#c4473d;border-radius:9px;place-items:center;min-width:17px;height:17px;margin-left:4px;font-size:.6rem;display:inline-grid}.student-notification-island>div{background:#fff;border:1px solid #d7e2e9;border-radius:11px;width:min(330px,100vw - 24px);position:absolute;top:42px;right:0;overflow:hidden;box-shadow:0 18px 45px #2241562e}.student-notification-island>div header{border-bottom:1px solid #e6edf1;justify-content:space-between;padding:11px;display:flex}.student-notification-island>div header button{color:#2f6690;cursor:pointer;background:0 0;border:0}.student-notification-island>div>div{max-height:360px;overflow:auto}.student-notification-island>div>div>button{text-align:left;color:#29495e;cursor:pointer;background:#fff;border:0;border-bottom:1px solid #edf2f5;width:100%;padding:10px;display:block}.student-notification-island>div>div>button.unread{background:#f3f9fc}.student-notification-island b,.student-notification-island span,.student-notification-island em{display:block}.student-notification-island b{font-size:.76rem}.student-notification-island span{color:#688295;white-space:nowrap;text-overflow:ellipsis;margin:3px 0;font-size:.68rem;overflow:hidden}.student-notification-island em{color:#8da0ad;font-size:.58rem;font-style:normal}.teacher-secondary-nav{height:48px}.teacher-secondary-nav>strong{font-size:.8rem}.teacher-secondary-nav a{padding-inline:12px;font-size:.74rem}.teacher-dashboard-section header p{font-size:.7rem}.teacher-chart-grid article>b,.teacher-recent-list b{font-size:.76rem}.teacher-summary-card h3{font-size:.8rem}.teacher-summary-schedule b{font-size:.74rem}.teacher-summary-schedule span{font-size:.64rem;line-height:1.45}.analytics-filter-bar label{font-size:.7rem}.analytics-overview span{font-size:.68rem}.analytics-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-chart-grid header b{font-size:.8rem}.analytics-chart-grid header button{font-size:.68rem}.analytics-chart-grid article>div{height:240px}.analytics-detail-grid h3,.analytics-sources h3{font-size:.82rem}@media (width<=760px){.analytics-chart-grid{grid-template-columns:1fr}}.teacher-dialog{margin:0;position:fixed;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.prep-ai-apply-dialog{width:min(520px,100vw - 32px)}.prep-ai-apply-dialog>p{color:var(--teacher-muted);margin:0;padding:0 16px 16px;font-size:.7rem;line-height:1.65}#prep-ai-apply-summary{border:1px solid var(--teacher-line);background:#fbf7f0;border-radius:9px;gap:5px;margin:16px;padding:13px 14px;display:grid}#prep-ai-apply-summary b{color:var(--teacher-accent-dark);font-size:.78rem}#prep-ai-apply-summary span{color:var(--teacher-muted);font-size:.68rem}.prep-stage-dialog{width:min(960px,100vw - 48px);max-width:1040px;max-height:calc(100dvh - 48px);overflow:hidden}.prep-stage-dialog[open]{grid-template-rows:auto auto auto minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr) minmax(220px,27%);display:grid}.prep-stage-dialog>header,.prep-stage-dialog>nav,.prep-stage-dialog>.prep-stage-actions,.prep-stage-dialog>footer{grid-column:1/-1}.prep-stage-dialog>header{grid-row:1}.prep-stage-dialog>nav{border-bottom:1px solid var(--teacher-line);background:#fbf8f3;grid-row:2;gap:6px;min-width:0;padding:8px 14px;display:flex;overflow-x:auto}.prep-stage-dialog>nav button{border:1px solid var(--teacher-line);min-width:0;max-width:260px;color:var(--teacher-ink);text-align:left;white-space:nowrap;background:#fff;border-radius:8px;flex:1 0 150px;padding:7px 10px}.prep-stage-dialog>nav button small,.prep-stage-dialog>nav button span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.prep-stage-dialog>nav button small{color:var(--teacher-muted);font-size:.56rem}.prep-stage-dialog>nav button span{margin-top:2px;font-size:.68rem}.prep-stage-dialog>nav button.active{color:#8a5429;background:#fff2df;border-color:#c9955e}.prep-stage-actions{border-bottom:1px solid var(--teacher-line);grid-row:3;align-items:center;gap:6px;padding:8px 14px;display:flex}.prep-stage-actions input{border:1px solid var(--teacher-line);min-width:160px;color:var(--teacher-ink);border-radius:7px;flex:1;padding:8px}.prep-stage-actions button{white-space:nowrap;flex:none}.prep-stage-dialog>.prep-stage-editor{color:#46372c;white-space:pre-wrap;outline:0;grid-area:4/1;min-width:0;min-height:0;padding:18px;line-height:1.72;overflow:auto}.prep-stage-dialog>aside{border-left:1px solid var(--teacher-line);background:#faf6ef;grid-area:4/2;min-width:0;min-height:0;padding:12px;overflow:auto}.prep-stage-dialog>aside section+section{border-top:1px solid var(--teacher-line);margin-top:14px;padding-top:14px}.prep-stage-dialog>footer{grid-row:5}@media (width<=760px),(height<=620px){.prep-stage-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.prep-stage-dialog[open]{grid-template-rows:auto auto auto minmax(120px,1fr) auto auto;grid-template-columns:minmax(0,1fr)}.prep-stage-dialog>.prep-stage-editor{grid-area:4/1}.prep-stage-dialog>aside{border-left:0;border-top:1px solid var(--teacher-line);grid-area:5/1;max-height:120px}.prep-stage-dialog>footer{grid-row:6;overflow-x:auto}.prep-stage-actions{flex-wrap:wrap}.prep-stage-actions input{flex-basis:100%;order:2}}.teacher-calendar-dialog.is-anchored{z-index:90;margin:0;position:fixed;inset:auto}.student-main:has(.preparation-immersive){min-width:0;height:100dvh;min-height:0;padding:0;overflow:hidden}.preparation-immersive{--prep-left:62%;--prep-gap:10px;--prep-border:#e7dbca;--prep-paper:#fffdfa;--prep-panel:#f8f3eb;--prep-text:#392b20;--prep-muted:#877565;width:100%;min-width:0;height:calc(100dvh - 48px);min-height:0;color:var(--prep-text);background:#f7f3ec;grid-template-rows:auto minmax(0,1fr);padding:0;display:grid;position:relative;overflow:hidden}.prep-immersive-toolbar{border-bottom:1px solid var(--prep-border);z-index:3;background:#fffdfaf5;align-items:center;gap:12px;min-width:0;min-height:58px;padding:8px 14px;display:flex;box-shadow:0 2px 12px #422d1b0f}.prep-brand{gap:2px;min-width:180px;display:grid}.prep-brand span{color:var(--teacher-accent);letter-spacing:.06em;font-size:.68rem;font-weight:800}.prep-brand b{text-overflow:ellipsis;white-space:nowrap;font-size:1rem;overflow:hidden}.prep-brand em{color:var(--prep-muted);font-size:.64rem;font-style:normal}.prep-context-selects{flex:1;align-items:center;gap:6px;min-width:0;display:flex}.prep-context-selects select{border:1px solid var(--prep-border);min-width:0;max-width:190px;color:var(--prep-text);font:inherit;background:#fff;border-radius:9px;flex:1;padding:9px 10px;font-size:.72rem}.prep-toolbar-actions{align-items:center;gap:5px;min-width:0;display:flex}.prep-toolbar-actions button,.preparation-immersive button{border:1px solid var(--prep-border);color:var(--prep-text);font:inherit;cursor:pointer;white-space:nowrap;background:#fff;border-radius:8px;padding:7px 9px;font-size:.68rem}.prep-toolbar-actions button:hover,.preparation-immersive button:hover{color:var(--teacher-accent-dark);border-color:#c8965e}.prep-toolbar-actions .primary,.preparation-immersive .primary{border-color:var(--teacher-accent);background:var(--teacher-accent);color:#fff;box-shadow:0 4px 12px #ab6c3033}.preparation-immersive button:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.prep-more-actions{position:relative}.prep-more-actions summary{border:1px solid var(--prep-border);color:var(--prep-text);cursor:pointer;white-space:nowrap;background:#fff;border-radius:8px;padding:7px 10px;font-size:.68rem;list-style:none}.prep-more-actions summary::-webkit-details-marker{display:none}.prep-more-actions summary:after{content:"⌄";color:var(--prep-muted);margin-left:6px}.prep-more-actions[open] summary{color:var(--teacher-accent-dark);border-color:#c8965e}.prep-more-actions>div{z-index:20;border:1px solid var(--prep-border);background:#fffdfa;border-radius:10px;gap:4px;min-width:150px;padding:7px;display:grid;position:absolute;top:calc(100% + 7px);right:0;box-shadow:0 12px 30px #412c1b2e}.prep-more-actions>div button{text-align:left;width:100%}.prep-mobile-surfaces{display:none}.prep-immersive-grid{grid-template-columns:minmax(0,var(--prep-left)) 8px minmax(360px,calc(100% - var(--prep-left) - 8px));min-width:0;min-height:0;display:grid;overflow:hidden}.prep-presentation-ai{background:#f3eee6;grid-template-rows:minmax(0,62fr) minmax(210px,38fr);min-width:0;min-height:0;display:grid;overflow:hidden}.prep-splitter{z-index:2;cursor:col-resize;background:#e2d4c3;position:relative}.prep-splitter:after{content:"";background:0 0;transition:background .15s;position:absolute;inset:0 2px}.prep-splitter:hover:after,.prep-splitter:active:after{background:var(--teacher-accent)}.prep-ppt-panel,.prep-ai-panel,.prep-document-workspace{min-width:0;min-height:0;overflow:hidden}.prep-ppt-panel{border-bottom:1px solid var(--prep-border);background:#ece6dd;grid-template-rows:auto minmax(0,1fr) auto;display:grid}.prep-ppt-panel.fullscreen{z-index:100;border:0;width:100vw;height:100dvh;position:fixed;inset:0}.prep-ppt-panel[data-file-state=dragging-over] .prep-ppt-stage{outline-offset:-8px;background:#fff4e3;outline:3px dashed #a96832}.prep-ppt-panel[data-file-state=validating] .prep-ppt-stage,.prep-ppt-panel[data-file-state=uploading] .prep-ppt-stage{cursor:progress}.prep-ppt-panel>header,.prep-ai-panel>header,.doc-modebar,.doc-statusbar{border-bottom:1px solid var(--prep-border);background:#fffdfaf0;justify-content:space-between;align-items:center;gap:8px;min-width:0;padding:8px 10px;display:flex}.prep-ppt-panel>header>div:first-child,.prep-ai-panel>header>div:first-child{gap:2px;min-width:0;display:grid}.prep-ppt-panel header b,.prep-ai-panel header b{font-size:.78rem}.prep-ppt-panel header span,.prep-ai-panel header span{text-overflow:ellipsis;white-space:nowrap;color:var(--prep-muted);font-size:.64rem;overflow:hidden}.prep-ppt-panel header>div:last-child{align-items:center;gap:4px;min-width:0;display:flex}.prep-ppt-panel header select{border:1px solid var(--prep-border);min-width:100px;max-width:210px;color:var(--prep-text);font:inherit;background:#fff;border-radius:6px;padding:6px;font-size:.66rem}.prep-ppt-panel header button,.prep-ppt-panel header span{border-radius:6px;padding:5px 7px;font-size:.64rem}.prep-ppt-stage{background:radial-gradient(circle at 50% 45%,#fdfaf5,#e7dfd4);place-items:center;min-width:0;min-height:0;padding:14px;display:grid;overflow:auto}.prep-ppt-stage:has(.ppt-pdf-preview){padding:0;display:block;overflow:hidden}.ppt-pdf-preview{width:100%;min-width:0;height:100%;min-height:0;position:relative;overflow:hidden}.ppt-pdf-preview .lws-pdf-viewport{box-sizing:border-box;width:100%;height:100%}.prep-workspace-empty{text-align:center;max-width:420px;color:var(--prep-muted);padding:28px 18px}.prep-workspace-empty b{color:var(--prep-text);font-size:.92rem;display:block}.prep-workspace-empty p{margin:7px 0 0;font-size:.71rem;line-height:1.7}.prep-workspace-empty button{margin:10px 3px 0}.prep-ppt-waiting>i{color:#8b572d;background:#f1e2cf;border-radius:11px;place-items:center;width:42px;height:42px;margin:0 auto 12px;font-size:.65rem;font-style:normal;font-weight:800;display:grid}.prep-start-card{box-sizing:border-box;background:#fffdf9e6;border:1px solid #e6d8c5;border-radius:16px;width:min(360px,100% - 28px);padding:26px 22px;box-shadow:0 10px 30px #48311d14}.prep-start-card>i{width:42px;height:42px;color:var(--teacher-accent-dark);letter-spacing:.05em;background:#f3e3cf;border-radius:13px;place-items:center;margin:0 auto 12px;font-size:.65rem;font-style:normal;font-weight:900;display:grid}.prep-start-card>div{flex-wrap:wrap;justify-content:center;gap:2px;display:flex}.prep-start-card .prep-start-links{border-top:1px solid #eee3d5;margin-top:5px;padding-top:5px}.prep-start-card .prep-start-links button{color:var(--teacher-accent-dark);box-shadow:none;background:0 0;border-color:#0000}.ppt-slide{aspect-ratio:16/9;transform-origin:50%;background:#fff;border:1px solid #d7c8b6;border-radius:5px;place-items:center;width:min(92%,900px);min-height:220px;display:grid;overflow:hidden;box-shadow:0 12px 35px #412c1b33}.ppt-slide>img{object-fit:contain;width:100%;height:100%}.ppt-slide>div{box-sizing:border-box;background:linear-gradient(135deg,#fffdfa,#f8f0e5);width:100%;height:100%;padding:7% 9%}.ppt-slide small{color:var(--teacher-accent);font-size:.6rem}.ppt-slide h2{margin:10% 0 3%;font-size:clamp(1rem,2vw,2rem)}.ppt-slide p{max-width:80%;color:var(--prep-muted);white-space:pre-wrap;line-height:1.7}.prep-ppt-panel>footer{border-top:1px solid var(--prep-border);background:#fffdfa;align-items:center;gap:6px;padding:7px 9px;display:flex}.prep-ppt-panel>footer span{min-width:65px;color:var(--prep-muted);text-align:center;font-size:.6rem}.prep-ppt-panel>footer input{border:1px solid var(--prep-border);min-width:0;color:var(--prep-text);font:inherit;border-radius:6px;flex:1;padding:6px 8px;font-size:.62rem}.prep-ai-panel{background:#fffdfa;grid-template-rows:auto auto minmax(0,1fr) auto auto;display:grid}.prep-ai-panel>header{border-bottom:0}.prep-ai-head-actions{align-items:center;gap:4px;min-width:0;display:flex}.prep-ai-head-actions>span{max-width:150px;color:var(--teacher-accent-dark)!important}.prep-ai-head-actions>button{background:0 0;border-color:#0000;padding:4px 6px;font-size:.58rem}.prep-ai-quick{scrollbar-width:thin;gap:5px;padding:0 9px 7px;display:flex;overflow-x:auto}.prep-ai-quick button{background:#fff7eb;border-radius:14px;flex:none;padding:6px 8px;font-size:.64rem}.prep-ai-messages{min-width:0;min-height:0;padding:8px 10px;overflow:auto}.prep-ai-empty{text-align:center;color:var(--prep-muted);padding:18px 10px;font-size:.69rem;line-height:1.65}.prep-ai-messages article{border:1px solid var(--prep-border);background:#fff;border-radius:9px;margin-bottom:8px;padding:9px;font-size:.69rem;line-height:1.6}.prep-ai-messages article.ai-user{background:#f5ebdf}.prep-ai-messages article header{justify-content:space-between;gap:8px;margin-bottom:5px;display:flex}.prep-ai-messages article header span{color:var(--prep-muted);font-size:.58rem}.prep-ai-messages article p{margin:3px 0}.prep-ai-messages article>div{max-height:180px;overflow:auto}.prep-ai-messages article footer{border-top:1px solid #f0e9df;flex-wrap:wrap;gap:4px;margin-top:7px;padding-top:6px;display:flex}.prep-ai-messages article footer button{padding:4px 6px;font-size:.57rem}.prep-ai-messages article footer button:disabled{opacity:.45;cursor:not-allowed}.prep-ai-messages article.ai-proposal.applied{background:#fbfffb;border-color:#bad5bd}.prep-ai-messages .ai-applied-state{color:#407348;font-size:.63rem;font-weight:700}.prep-ai-loading{color:var(--prep-muted);padding:9px;font-size:.64rem}.prep-ai-files{gap:4px;min-height:0;padding:0 9px;display:flex;overflow-x:auto}.prep-ai-files:empty{display:none}.prep-ai-files>span{max-width:180px;color:var(--prep-muted);background:#f4e9db;border-radius:10px;flex:none;align-items:center;gap:3px;padding:3px 6px;font-size:.58rem;display:flex}.prep-ai-files button{background:0 0;border:0;padding:0}.prep-ai-compose{border-top:1px solid var(--prep-border);gap:4px;padding:7px 9px;display:grid}.prep-ai-compose textarea{box-sizing:border-box;resize:vertical;border:1px solid var(--prep-border);width:100%;min-width:0;max-height:90px;color:var(--prep-text);font:inherit;border-radius:7px;padding:7px 8px;font-size:.64rem;line-height:1.5}.prep-ai-compose footer{justify-content:space-between;align-items:center;gap:7px;display:flex}.prep-ai-compose footer>div{align-items:center;gap:5px;min-width:0;display:flex}.prep-ai-compose footer span{color:var(--prep-muted);font-size:.57rem}.prep-ai-compose footer span.is-over{color:#b74132;font-weight:700}.prep-ai-compose button,.prep-ai-attach{border:1px solid var(--prep-border);color:var(--prep-text);cursor:pointer;background:#fff;border-radius:7px;padding:5px 8px;font-size:.6rem}.prep-ai-compose #prep-ai-send{border-color:var(--teacher-accent);background:var(--teacher-accent);color:#fff}.prep-ai-compose #prep-ai-send.is-stop{background:#a84435;border-color:#a84435}.prep-ai-panel.collapsed{grid-template-rows:auto}.prep-ai-panel.collapsed>:not(header){display:none!important}.prep-document-workspace{background:var(--prep-paper);grid-template-rows:auto auto auto minmax(0,1fr) auto;display:grid;position:relative}.doc-tabs{border-bottom:1px solid var(--prep-border);scrollbar-width:thin;background:#f8f3eb;align-items:center;gap:3px;min-width:0;min-height:37px;padding:4px 6px 0;display:flex;overflow-x:auto}.doc-tabs>button{background:0 0;border:1px solid #0000;border-bottom:0;border-radius:7px 7px 0 0;flex:none;align-items:center;gap:5px;max-width:220px;padding:7px 8px 8px;font-size:.67rem;display:flex}.doc-tabs>button.active{border-color:var(--prep-border);background:var(--prep-paper);color:var(--teacher-accent-dark)}.doc-tabs>button i{color:var(--teacher-accent);font-size:.55rem;font-style:normal;font-weight:800}.doc-tabs>button span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.doc-tabs>button em{color:var(--teacher-accent);font-style:normal}.doc-tabs>button b,.doc-tabs>button strong{color:#a3907d;cursor:pointer;font-size:.64rem}.doc-modebar{min-height:38px;padding:4px 8px}.doc-modebar>div{gap:4px;min-width:0;display:flex}.doc-modebar button{background:0 0;border-color:#0000;padding:6px 8px;font-size:.66rem}.doc-modebar button.active{color:var(--teacher-accent-dark);background:#fff0dd;border-color:#dfc39d}.doc-toolbar{border-bottom:1px solid var(--prep-border);background:#fff;flex-wrap:wrap;align-items:center;gap:4px;min-width:0;padding:5px 8px;display:flex}.doc-toolbar select,.doc-toolbar button{min-height:29px;font:inherit;background:#fffdfa;border:1px solid #eadfd1;border-radius:6px;padding:5px 7px;font-size:.64rem}.doc-toolbar span{border-right:1px solid #eee5da;gap:3px;padding-right:4px;display:flex}.doc-toolbar span:last-child{border-right:0}.doc-toolbar[hidden]{display:none}.doc-recovery{color:#77532c;background:#fff4dc;border-bottom:1px solid #ead7bb;align-items:center;gap:7px;padding:6px 9px;font-size:.6rem;display:flex}.doc-recovery button{padding:4px 6px;font-size:.58rem}.doc-work-area{min-width:0;min-height:0;overflow:hidden}.doc-editor-layout{grid-template-columns:minmax(125px,18%) minmax(0,1fr);width:100%;min-width:0;height:100%;min-height:0;display:grid}.doc-editor-layout.outline-closed{grid-template-columns:minmax(0,1fr)}.doc-outline{border-right:1px solid var(--prep-border);background:#faf6ef;min-width:0;padding:10px 7px;overflow:auto}.doc-editor-layout.outline-closed .doc-outline{border:0;padding:0;display:none;overflow:hidden}.doc-outline header{color:var(--prep-muted);justify-content:space-between;align-items:center;gap:4px;margin-bottom:6px;font-size:.62rem;display:flex}.doc-outline header button{background:0 0;border:0;padding:0 2px}.doc-outline>button{width:100%;color:var(--prep-muted);text-align:left;text-overflow:ellipsis;white-space:nowrap;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:4px;padding:5px 6px;font-size:.6rem;display:block;overflow:hidden}.doc-outline>button[data-level="2"]{padding-left:12px}.doc-outline>button[data-level="3"]{padding-left:18px}.doc-outline>button[data-level="4"]{padding-left:24px}.doc-outline>button:hover,.doc-outline>button.active{color:var(--teacher-accent-dark);background:#f2e4d2}.doc-outline>span{color:#ad9a86;padding:8px 5px;font-size:.58rem;line-height:1.5;display:block}.doc-editor-scroll{background:#eee8de;min-width:0;min-height:0;padding:18px clamp(12px,3vw,40px) 40px;position:relative;overflow:auto}.doc-zoom-hint{z-index:3;opacity:0;color:#fff;pointer-events:none;background:#3d3024;border-radius:11px;width:max-content;margin:0 auto;padding:4px 8px;font-size:.58rem;transition:opacity .15s;display:block;position:sticky;bottom:12px;left:50%}.doc-zoom-hint.is-visible{opacity:.86}.document-editor{box-sizing:border-box;color:#33291f;background:#fff;outline:0;width:min(860px,100%);min-height:calc(100% - 20px);margin:0 auto;padding:44px clamp(26px,5vw,72px);font-family:Microsoft YaHei,system-ui,sans-serif;font-size:14px;line-height:1.8;box-shadow:0 8px 24px #3d2a191f}.document-editor:focus{box-shadow:0 0 0 2px #d3a66e,0 8px 24px #3d2a191f}.document-editor h1,.document-editor h2,.document-editor h3,.document-editor h4{color:#68431f;scroll-margin-top:12px;line-height:1.35}.document-editor h1{text-align:center;margin:0 0 18px;font-size:1.8rem}.document-editor h2{margin:23px 0 8px;font-size:1.35rem}.document-editor h3{margin:18px 0 6px;font-size:1.12rem}.document-editor h4{margin:14px 0 5px;font-size:1rem}.document-editor p{margin:8px 0}.document-editor blockquote{color:#6b5846;background:#faf4ea;border-left:4px solid #cc9b65;margin:12px 0;padding:8px 14px}.document-editor pre{background:#f4f0ea;border-radius:6px;padding:11px 14px;font-family:Consolas,monospace;overflow:auto}.document-editor ul,.document-editor ol{padding-left:28px}.document-editor hr{border:0;border-top:1px solid #d6c7b5;margin:18px 0}.document-editor img{max-width:100%;height:auto;margin:12px auto;display:block}.document-editor table{border-collapse:collapse;table-layout:fixed;width:100%;margin:14px 0}.document-editor th,.document-editor td{vertical-align:top;word-break:break-word;border:1px solid #d7cabb;padding:7px 9px}.document-editor th{background:#f7efe4}.document-editor .formula{text-align:center;min-height:1.6em;margin:10px 0;display:block}.document-editor .katex-display{margin:0;overflow-x:auto}.document-editor [data-page-break=true]{break-before:page}.doc-statusbar{border-top:1px solid var(--prep-border);min-height:29px;color:var(--prep-muted);border-bottom:0;justify-content:space-between;padding:5px 9px;font-size:.63rem}.doc-statusbar span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.doc-drop-overlay{z-index:5;border:3px dashed var(--teacher-accent);color:var(--teacher-accent-dark);pointer-events:none;background:#fff7e8eb;align-content:center;place-items:center;gap:7px;display:none;position:absolute;inset:0}.doc-drop-overlay b,.doc-drop-overlay span{display:block}.doc-drop-overlay span{font-size:.68rem}#document-workspace[data-drag-state=dragging-over] .doc-drop-overlay,#document-workspace[data-drag-state=validating] .doc-drop-overlay,#document-workspace[data-drag-state=uploading] .doc-drop-overlay,#document-workspace[data-drag-state=parsing] .doc-drop-overlay{display:grid}#document-workspace[data-drag-state=uploading] .doc-drop-overlay{background:#fffbf4f2}.doc-compare-view{grid-template-columns:minmax(0,1fr) minmax(300px,1fr);width:100%;min-width:0;height:100%;min-height:0;display:grid;overflow:hidden}.doc-compare-view>.doc-editor-scroll,.doc-compare-view>.doc-pdf-viewer{min-width:0;min-height:0}.doc-pdf-viewer{background:#e9e3da;grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:0;display:grid;position:relative;overflow:hidden}.doc-pdf-viewer>header{z-index:3;border-bottom:1px solid var(--prep-border);background:#fffdfa;flex-wrap:nowrap;align-items:center;gap:4px;min-width:0;padding:6px;display:flex;position:sticky;top:0;overflow-x:auto}.doc-pdf-viewer>header input{border:1px solid var(--prep-border);min-width:90px;font:inherit;border-radius:6px;flex:1;padding:5px 7px;font-size:.6rem}.doc-pdf-viewer>header button,.doc-pdf-viewer>header span{border:1px solid var(--prep-border);color:var(--prep-text);font:inherit;white-space:nowrap;background:#fff;border-radius:5px;flex:none;padding:4px 6px;font-size:.57rem}.doc-pdf-viewer>header button:last-child{color:var(--teacher-accent-dark)}.lws-pdf-viewport{overscroll-behavior:contain;min-width:0;min-height:0;padding:18px;position:relative;overflow:auto}.lws-pdf-pages{flex-direction:column;align-items:center;gap:14px;min-width:max-content;display:flex}.pdf-page{background:#fff;flex:none;min-width:200px;min-height:280px;position:relative;box-shadow:0 4px 14px #3525172e}.pdf-page-number{z-index:1;color:#9b8874;font-size:.55rem;position:absolute;top:5px;right:7px}.lws-pdf-zoom-hint{z-index:4;opacity:0;color:#fff;pointer-events:none;background:#3d3024;border-radius:10px;padding:4px 7px;font-size:.58rem;transition:opacity .15s;position:sticky;top:12px;left:50%;transform:translate(-50%)}.lws-pdf-zoom-hint.is-visible{opacity:.85}.doc-pdf-viewer.is-loading:after{content:"正在加载 PDF…";color:var(--prep-muted);font-size:.7rem;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.doc-versions{background:#faf7f1;min-width:0;height:100%;min-height:0;padding:14px;overflow:auto}.doc-versions>header{border-bottom:1px solid var(--prep-border);justify-content:space-between;align-items:center;gap:8px;padding-bottom:10px;display:flex}.doc-versions>header div{gap:2px;display:grid}.doc-versions>header span{color:var(--prep-muted);font-size:.6rem}.doc-version-compare-controls{align-items:center;gap:5px;padding:10px 0;display:flex}.doc-version-compare-controls select{border:1px solid var(--prep-border);background:#fff;border-radius:6px;min-width:80px;padding:5px;font-size:.6rem}.doc-version-compare-controls span{color:var(--prep-muted);font-size:.6rem}.doc-version-compare-controls button,.doc-version-list button{padding:5px 7px;font-size:.59rem}.doc-version-list{gap:6px;display:grid}.doc-version-list article{border:1px solid var(--prep-border);background:#fff;border-radius:7px;align-items:center;gap:7px;padding:8px;display:flex}.doc-version-list article div{flex:1;min-width:0}.doc-version-list article b,.doc-version-list article span,.doc-version-list article em{display:block}.doc-version-list article span{color:var(--prep-muted);margin-top:2px;font-size:.61rem}.doc-version-list article em{color:#a29180;margin-top:2px;font-size:.55rem;font-style:normal}.version-preview{border:1px solid var(--prep-border);background:#fff;margin-top:10px;padding:14px;line-height:1.7}.doc-version-diff{margin-bottom:8px;font-size:.62rem}.doc-version-diff>div{border-bottom:1px solid #f0e8de;grid-template-columns:60px 1fr 1fr;gap:5px;padding:5px 0;display:grid}.doc-version-diff i{color:var(--prep-muted);font-style:normal}.doc-version-diff del,.doc-version-diff ins{overflow-wrap:anywhere;min-width:0;padding:3px 5px;text-decoration:none}.doc-version-diff del{background:#ffebe7}.doc-version-diff ins{background:#e7f5e8}.preparation-immersive.fullscreen,.prep-document-workspace.fullscreen{z-index:100;width:100vw;height:100dvh;position:fixed;inset:0}body.prep-document-fullscreen{overflow:hidden}.preparation-immersive [hidden]{display:none!important}.doc-new-dialog,.doc-resource-dialog,.doc-student-dialog{width:min(760px,100vw - 28px)}.doc-new-dialog>label,.doc-new-dialog>p,.doc-resource-dialog>div,.doc-resource-dialog>p,.doc-student-dialog>div{margin:12px 16px}.doc-new-dialog>label{color:var(--prep-muted);gap:5px;font-size:.68rem;display:grid}.doc-new-dialog>label input,.doc-resource-filters input,.doc-resource-filters select,.doc-student-dialog select{border:1px solid var(--prep-border);font:inherit;border-radius:7px;padding:8px}.doc-new-dialog>div{grid-template-columns:repeat(2,1fr);gap:7px;padding:0 16px 12px;display:grid}.doc-resource-filters{flex-wrap:wrap;gap:6px;display:flex}.doc-resource-filters input{flex:1;min-width:180px}.doc-resource-list,.doc-resource-dialog>#doc-resource-list{gap:5px;max-height:55vh;padding:0 16px 15px;display:grid;overflow:auto}.doc-resource-list button,.doc-resource-dialog>#doc-resource-list>button{border:1px solid var(--prep-border);text-align:left;background:#fff;border-radius:7px;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;padding:8px;display:grid}.doc-resource-dialog>#doc-resource-list button i{width:34px;height:26px;color:var(--teacher-accent-dark);background:#f2e5d6;border-radius:5px;place-items:center;font-size:.55rem;font-style:normal;font-weight:800;display:grid}.doc-resource-dialog>#doc-resource-list button span{min-width:0}.doc-resource-dialog>#doc-resource-list b,.doc-resource-dialog>#doc-resource-list em{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.doc-resource-dialog>#doc-resource-list b{font-size:.68rem}.doc-resource-dialog>#doc-resource-list em{color:var(--prep-muted);margin-top:2px;font-size:.57rem;font-style:normal}.doc-resource-dialog>#doc-resource-list strong{color:var(--teacher-accent-dark);font-size:.59rem}.doc-resource-dialog>#doc-resource-list button:disabled{opacity:.58;cursor:not-allowed}.doc-student-dialog{max-height:calc(100vh - 28px)}.doc-student-dialog>#student-material-preview{border:1px solid var(--prep-border);background:#fbf8f2;border-radius:7px;max-height:36vh;padding:10px;overflow:auto}.doc-student-dialog>#student-material-preview article{background:#fff;padding:8px;line-height:1.65}.doc-student-dialog .teacher-form-grid{max-height:none}@media (width<=1500px){.prep-document-workspace{min-width:0}.doc-outline{display:none}.doc-editor-layout{grid-template-columns:minmax(0,1fr)}}@media (width<=1180px){.prep-immersive-grid{grid-template-columns:minmax(0,var(--prep-left)) 6px minmax(310px,calc(100% - var(--prep-left) - 6px))}.prep-presentation-ai{grid-template-rows:minmax(0,58fr) minmax(190px,42fr)}.doc-toolbar span:nth-of-type(4){display:none}}@media (width<=1024px){.preparation-immersive{grid-template-rows:auto auto minmax(0,1fr)}.prep-immersive-toolbar{flex-wrap:wrap;min-height:0}.prep-brand{flex:180px}.prep-context-selects{flex-basis:100%;order:3}.prep-toolbar-actions{margin-left:auto;overflow-x:auto}.prep-mobile-surfaces{border-bottom:1px solid var(--prep-border);background:#fffdfa;gap:4px;padding:5px 8px;display:flex}.prep-mobile-surfaces button{flex:1;padding:6px;font-size:.65rem}.prep-mobile-surfaces button.active,.prep-mobile-surfaces button[aria-expanded=true]{color:var(--teacher-accent-dark);background:#fff0dd;border-color:#dfc39d}.prep-immersive-grid{grid-row:3;grid-template-columns:1fr;position:relative}.prep-splitter,.prep-presentation-ai,.prep-document-workspace{display:none}.preparation-immersive[data-mobile-surface=ppt] .prep-presentation-ai{grid-area:1/1;grid-template-rows:minmax(0,1fr);display:grid}.preparation-immersive[data-mobile-surface=ppt] .prep-ai-panel{display:none}.preparation-immersive[data-mobile-surface=document] .prep-document-workspace,.preparation-immersive[data-mobile-surface=reference] .prep-document-workspace{grid-area:1/1;display:grid}.preparation-immersive[data-mobile-surface=reference] .prep-document-workspace .doc-editor-layout,.preparation-immersive[data-mobile-surface=reference] .prep-document-workspace .doc-compare-view{display:none}.preparation-immersive.mobile-ai-open .prep-presentation-ai{z-index:8;border-top:1px solid var(--prep-border);height:min(44%,300px);display:block;position:absolute;inset:auto 0 0;box-shadow:0 -12px 28px #3726182e}.preparation-immersive.mobile-ai-open .prep-presentation-ai .prep-ppt-panel{display:none}.preparation-immersive.mobile-ai-open .prep-presentation-ai .prep-ai-panel{height:100%;display:grid}.doc-modebar{flex-wrap:wrap}.doc-toolbar{max-height:80px;overflow:auto}.preparation-immersive.mobile-ai-open:not([data-mobile-surface=ppt]) .prep-immersive-grid{grid-template-rows:minmax(90px,1fr) minmax(250px,58%)}.preparation-immersive.mobile-ai-open:not([data-mobile-surface=ppt]) .prep-presentation-ai{z-index:auto;height:auto;min-height:0;box-shadow:none;grid-area:2/1;grid-template-rows:minmax(0,1fr);display:grid;position:static;inset:auto}.preparation-immersive.mobile-ai-open[data-mobile-surface=ppt] .prep-presentation-ai{z-index:auto;height:auto;min-height:0;box-shadow:none;grid-area:1/1;grid-template-rows:minmax(90px,1fr) minmax(250px,58%);display:grid;position:static;inset:auto}.preparation-immersive.mobile-ai-open[data-mobile-surface=ppt] .prep-presentation-ai .prep-ppt-panel{display:grid}.preparation-immersive.mobile-ai-open .prep-presentation-ai .prep-ai-panel{height:auto;min-height:0;display:grid}}@media (width<=700px){.prep-immersive-toolbar{gap:7px;padding:7px 9px}.prep-brand{min-width:130px}.prep-brand b{font-size:.86rem}.prep-toolbar-actions #doc-export-main{display:none}.prep-context-selects select{max-width:none}.prep-stage-strip{padding-inline:8px}.doc-modebar>div:first-child{overflow-x:auto}.doc-modebar>div:last-child #doc-sync-stage{display:none}.doc-editor-scroll{padding:10px 6px 24px}.document-editor{min-height:100%;padding:26px 18px;font-size:13px}.document-editor h1{font-size:1.4rem}.doc-pdf-viewer>header button:nth-of-type(n+5){display:none}.doc-version-diff>div{grid-template-columns:1fr}.doc-version-list article{flex-wrap:wrap}.doc-version-list article div{flex-basis:100%}.doc-new-dialog>div{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.prep-splitter:after,.lws-pdf-zoom-hint{transition:none}}.student-main:has(.preparation-workbench){min-width:0;height:calc(100dvh - 48px);min-height:0;padding:0;overflow:hidden}.preparation-workbench{--prep-workbench-border:#e6dccf;--prep-workbench-panel:#fffdfa;color:#3d3025;background:#f8f5f0;grid-template-rows:auto auto minmax(0,1fr);width:100%;min-width:0;height:100%;min-height:0;padding:0;display:grid;overflow:hidden}.prep-workbench-head{border-bottom:1px solid var(--prep-workbench-border);background:#fffdfa;justify-content:space-between;align-items:center;gap:16px;min-width:0;padding:12px 18px 10px;display:flex}.prep-workbench-head>div:first-child{min-width:0}.prep-workbench-head span{color:#a2652f;font-size:.68rem;font-weight:750}.prep-workbench-head h2{color:#392b20;text-overflow:ellipsis;white-space:nowrap;margin:2px 0;font-size:1.12rem;overflow:hidden}.prep-workbench-head p{color:#88796b;margin:0;font-size:.68rem}.prep-workbench-head-actions{flex-wrap:wrap;flex:0 auto;justify-content:flex-end;align-items:center;gap:6px;min-width:0;max-width:58%;display:flex}.preparation-workbench button,.preparation-workbench select,.preparation-workbench textarea,.preparation-workbench input{font:inherit}.preparation-workbench button{color:#4d3b2c;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #dfd2c3;border-radius:8px;padding:7px 10px}.preparation-workbench button:hover:not(:disabled){color:#8b5428;border-color:#c9955e}.preparation-workbench button.primary{color:#fff;background:#a96832;border-color:#a96832}.preparation-workbench button:disabled{cursor:not-allowed;opacity:.45}.prep-save-indicator{background:#f3eee7;border-radius:7px;padding:5px 8px;color:#7d6e60!important;font-size:.63rem!important}.prep-save-indicator[data-tone=dirty]{background:#fff1d8;color:#8b5a20!important}.prep-save-indicator[data-tone=saving]{background:#edf2f5;color:#526b79!important}.prep-save-indicator[data-tone=saved]{background:#eaf3e9;color:#4b744b!important}.prep-save-indicator[data-tone=error]{background:#fbe9e6;color:#a14435!important}.prep-narrow-toggle{display:none}.prep-stage-rail{border-bottom:1px solid var(--prep-workbench-border);scrollbar-width:thin;background:#fbf8f3;align-items:center;gap:5px;min-width:0;padding:7px 14px;display:flex;overflow-x:auto}.prep-stage-rail button{background:#fff;border-radius:9px;flex:none;align-items:center;gap:6px;padding:5px 9px 5px 5px;font-size:.64rem;display:flex}.prep-stage-rail button i{color:#806b58;background:#f0e7dc;border-radius:6px;place-items:center;width:21px;height:21px;font-size:.58rem;font-style:normal;display:grid}.prep-stage-rail button span{color:inherit;font-size:inherit}.prep-stage-rail button em{color:#6d8467;font-size:.54rem;font-style:normal}.prep-stage-rail button.active{color:#8b5529;background:#fff4e4;border-color:#c38c54;box-shadow:inset 0 -2px #b8793d}.prep-stage-rail button.active i{color:#fff;background:#ad7038}.prep-workbench-grid{grid-template-columns:minmax(205px,16%) minmax(440px,1fr) minmax(245px,20%);min-width:0;min-height:0;display:grid;position:relative;overflow:hidden}.prep-workbench-left,.prep-workbench-right,.prep-workbench-center{min-width:0;min-height:0}.prep-workbench-left,.prep-workbench-right{background:#f8f4ed;align-content:start;gap:9px;padding:10px;display:grid;overflow:auto}.prep-workbench-left{border-right:1px solid var(--prep-workbench-border)}.prep-workbench-right{border-left:1px solid var(--prep-workbench-border)}.prep-panel{border:1px solid var(--prep-workbench-border);background:var(--prep-workbench-panel);border-radius:10px;min-width:0;padding:10px;box-shadow:0 3px 12px #4f372109}.prep-panel>header,.prep-panel>summary{justify-content:space-between;align-items:center;gap:7px;display:flex}.prep-panel>header b,.prep-panel>summary b{color:#493629;font-size:.73rem}.prep-panel>header span,.prep-panel>summary span{color:#968575;font-size:.59rem}.prep-panel>summary{cursor:pointer;list-style:none}.prep-panel>summary::-webkit-details-marker{display:none}.prep-panel>summary:after{content:"展开";color:#9a6b3c;font-size:.57rem}.prep-panel[open]>summary:after{content:"收起"}.prep-selector-panel label{color:#807061;gap:4px;margin-top:9px;font-size:.61rem;display:grid}.prep-selector-panel select{color:#49392d;background:#fff;border:1px solid #dfd4c8;border-radius:7px;width:100%;min-width:0;padding:8px}.prep-plan-list,.prep-resource-list{gap:5px;margin-top:8px;display:grid}.prep-plan-list>button{text-align:left;justify-content:space-between;align-items:center;gap:7px;width:100%;min-width:0;padding:8px;display:flex}.prep-plan-list>button>span{min-width:0}.prep-plan-list b,.prep-plan-list em{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.prep-plan-list b{color:#49382b;font-size:.67rem}.prep-plan-list em{color:#938272;margin-top:3px;font-size:.56rem;font-style:normal}.prep-plan-list>button>i{color:#8b6b4f;flex:none;font-size:.54rem;font-style:normal}.prep-plan-list>button.active{background:#fff2e0;border-color:#ce9d69}.prep-resource-list article{border-bottom:1px solid #eee6dc;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:7px;padding:6px 2px;display:grid}.prep-resource-list article:last-child{border-bottom:0}.prep-resource-list article>i{color:#926138;background:#f2e6d6;border-radius:7px;place-items:center;width:28px;height:28px;font-size:.51rem;font-style:normal;font-weight:750;display:grid}.prep-resource-list b,.prep-resource-list em{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.prep-resource-list b{color:#504033;font-size:.62rem}.prep-resource-list em{color:#998879;margin-top:2px;font-size:.53rem;font-style:normal}.prep-workbench-center{background:#fff;grid-template-rows:auto minmax(150px,.82fr) auto minmax(130px,.65fr) auto;gap:9px;padding:14px clamp(14px,2vw,26px);display:grid;overflow:auto}.prep-stage-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.prep-stage-head>div:first-child{min-width:0}.prep-stage-head span{color:#aa6a32;font-size:.61rem;font-weight:750}.prep-stage-head h3{color:#3c2c21;margin:3px 0;font-size:1.08rem}.prep-stage-head p{color:#8a796a;margin:0;font-size:.63rem}.prep-stage-head>div:last-child{gap:5px;display:flex}.prep-natural-editor-card,.prep-refine-card,.prep-preview-card{border:1px solid var(--prep-workbench-border);background:#fffdfa;border-radius:10px;min-width:0;overflow:hidden}.prep-editor-label,.prep-preview-card>header{background:#fbf8f3;border-bottom:1px solid #eee5da;justify-content:space-between;align-items:center;gap:8px;padding:8px 11px;display:flex}.prep-editor-label b,.prep-preview-card>header b{color:#49372a;font-size:.7rem}.prep-editor-label span,.prep-preview-card>header span{color:#958475;font-size:.57rem}.prep-natural-editor{box-sizing:border-box;color:#3f332a;white-space:pre-wrap;outline:0;min-height:100%;padding:15px 17px;font-size:.77rem;line-height:1.72;overflow:auto}.prep-natural-editor:empty:before{content:attr(data-placeholder);color:#ac9d8e;pointer-events:none}.prep-natural-editor:focus{box-shadow:inset 0 0 0 2px #d5aa78}.prep-refine-card{padding:9px 11px}.prep-refine-card>label{align-items:baseline;gap:8px;margin-bottom:7px;display:flex}.prep-refine-card b{color:#49372a;font-size:.69rem}.prep-refine-card span{color:#988777;font-size:.57rem}.prep-refine-card>div{align-items:stretch;gap:6px;display:flex}.prep-refine-card textarea{resize:vertical;color:#46362a;border:1px solid #e2d7ca;border-radius:7px;outline:0;flex:1;min-width:0;padding:8px 9px;font-size:.67rem}.prep-refine-card textarea:focus{border-color:#c39360}.prep-stage-preview{box-sizing:border-box;color:#514338;height:100%;min-height:110px;padding:11px 15px;font-size:.68rem;line-height:1.65;overflow:auto}.prep-stage-preview>:first-child{margin-top:0}.prep-stage-preview>:last-child{margin-bottom:0}.prep-center-actions{justify-content:flex-end;gap:6px;display:flex}.prep-metric-grid{margin-top:8px}.prep-insight-list p{gap:7px}.prep-insight-list p span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.prep-questions-panel{min-height:105px}.prep-question-list{gap:5px;max-height:150px;margin-top:8px;display:grid;overflow:auto}.prep-question-list article{color:#5b493b;border-bottom:1px solid #eee6dd;justify-content:space-between;gap:8px;padding:6px 0;font-size:.61rem;display:flex}.prep-question-list article span{min-width:0}.prep-question-list article i{color:#a06939;flex:none;font-size:.55rem;font-style:normal}.prep-agent-panel[open]{display:block}.prep-agent-panel .prep-progress-bar{margin-top:9px}.prep-plan-actions>div{grid-template-columns:1fr 1fr;gap:5px;margin-top:8px;display:grid}.prep-plan-actions button{min-width:0;padding-inline:5px;font-size:.61rem}.prep-muted{color:#9b8b7c;margin:8px 0;font-size:.61rem;line-height:1.55}@media (width<=1180px){.prep-narrow-toggle{display:inline-flex}.prep-workbench-grid{grid-template-columns:minmax(0,1fr)}.prep-workbench-left,.prep-workbench-right{z-index:8;box-sizing:border-box;width:min(300px,100% - 32px);transition:transform .18s;position:absolute;top:0;bottom:0;box-shadow:0 14px 36px #37261833}.prep-workbench-left{left:0;transform:translate(-104%)}.prep-workbench-right{right:0;transform:translate(104%)}.preparation-workbench.show-left-drawer .prep-workbench-left,.preparation-workbench.show-right-drawer .prep-workbench-right{transform:translate(0)}}@media (width<=760px),(height<=650px){.prep-workbench-head{padding:8px 10px}.prep-workbench-head p,.prep-save-indicator{display:none}.prep-workbench-head-actions{max-width:68%;overflow-x:auto}.prep-workbench-head-actions button{padding:6px 8px;font-size:.6rem}.prep-stage-rail{padding:5px 8px}.prep-stage-rail button{padding-block:4px}.prep-workbench-center{grid-template-rows:auto minmax(120px,1fr) auto minmax(90px,.58fr) auto;gap:6px;padding:8px 10px}.prep-stage-head p{display:none}.prep-stage-head>div:last-child{overflow-x:auto}}@media (prefers-reduced-motion:reduce){.prep-workbench-left,.prep-workbench-right{transition:none}}.prep-ppt-panel>footer .ppt-page-jump{flex:none;align-items:center;gap:3px;min-width:0;display:flex}.prep-ppt-panel>footer .ppt-page-jump input{text-align:center;flex:0 0 42px;width:42px;min-width:42px;padding:5px 4px}.prep-ppt-panel>footer .ppt-page-jump span{text-align:left;min-width:30px}.doc-pdf-viewer>header #pdf-page-input{text-align:center;flex:0 0 50px;width:50px;min-width:50px;max-width:50px}.preparation-workbench .prep-workbench-left,.preparation-workbench .prep-workbench-right{scrollbar-gutter:stable}.preparation-workbench .prep-plan-actions{z-index:4;position:sticky;bottom:0;box-shadow:0 -9px 22px #49311d1a}.preparation-workbench .prep-center-actions{z-index:3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff5;border-top:1px solid #eee5da;margin:0 clamp(-26px,-2vw,-14px) -14px;padding:9px clamp(14px,2vw,26px) 14px;position:sticky;bottom:-14px;box-shadow:0 -7px 18px #46301d0e}body:has(.preparation-workbench) .teacher-ai-float{display:none}.prep-refine-dialog{width:min(980px,100vw - 34px);overflow:hidden}.prep-refine-dialog>header>div span{color:#8f7c69;margin-top:2px;font-size:.65rem;display:block}.prep-refine-compare{background:#f7f2eb;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;min-height:0;max-height:min(58vh,560px);padding:14px 16px;display:grid;overflow:auto}.prep-refine-compare section{background:#fff;border:1px solid #e3d7c8;border-radius:10px;min-width:0}.prep-refine-compare h4{z-index:1;color:#513d2d;background:#fbf8f3;border-bottom:1px solid #eee4d8;margin:0;padding:9px 12px;font-size:.72rem;position:sticky;top:0}.prep-refine-compare article{color:#4d3d31;overflow-wrap:anywhere;padding:12px 14px;font-size:.7rem;line-height:1.72}.prep-refine-dialog>p{color:#846f5d;background:#fffdfa;margin:0;padding:9px 16px;font-size:.63rem}.prep-refine-dialog>footer{background:#fff;border-top:1px solid #eadfd2;justify-content:flex-end;gap:7px;padding:10px 16px;display:flex}@media (width<=720px){.prep-refine-compare{grid-template-columns:minmax(0,1fr);max-height:65vh}.prep-refine-dialog>footer{flex-wrap:wrap}.prep-refine-dialog>footer button{flex:auto}}.student-main:has(>.teacher-secondary-nav+.teacher-workbench){box-sizing:border-box;grid-template-rows:48px minmax(0,1fr);width:100%;min-width:0;height:100dvh;min-height:0;padding:0 0 0 128px;display:grid;overflow:hidden}.student-main:has(>.teacher-secondary-nav+.teacher-workbench)>.teacher-secondary-nav{grid-row:1;min-width:0}.student-main:has(>.teacher-secondary-nav+.teacher-workbench)>.teacher-workbench{grid-row:2;height:auto;min-height:0}.teacher-workbench .teacher-btn{box-sizing:border-box;color:#4c3a2c;white-space:nowrap;background:#fffdfa;border:1px solid #ddcfbf;border-radius:8px;justify-content:center;align-items:center;gap:5px;min-width:0;min-height:32px;padding:6px 10px;font-weight:600;line-height:1;transition:border-color .15s,background .15s,box-shadow .15s,transform 80ms;display:inline-flex}.teacher-workbench .teacher-btn--sm{min-height:30px;padding:5px 9px;font-size:.63rem}.teacher-workbench .teacher-btn--primary{color:#fff;background:#a96832;border-color:#a96832}.teacher-workbench .teacher-btn--secondary{background:#fffaf3}.teacher-workbench .teacher-btn--ghost{background:0 0;border-color:#0000}.teacher-workbench .teacher-btn:hover:not(:disabled){color:#7e4c24;background:#fff4e6;border-color:#bd7d43}.teacher-workbench .teacher-btn--primary:hover:not(:disabled){color:#fff;background:#925827}.teacher-workbench .teacher-btn:active:not(:disabled){transform:translateY(1px)}.teacher-workbench .teacher-btn:focus-visible{outline-offset:2px;outline:2px solid #d49b63}.teacher-workbench .teacher-btn:disabled{cursor:not-allowed;opacity:.46}.teacher-workbench .teacher-btn.is-loading:before{content:"";border:2px solid;border-right-color:#0000;border-radius:50%;width:10px;height:10px;animation:.65s linear infinite teacher-button-spin}@keyframes teacher-button-spin{to{transform:rotate(1turn)}}.preparation-workbench .prep-workbench-head{box-sizing:border-box;min-height:58px;padding:8px 16px}.preparation-workbench .prep-workbench-head-actions{overscroll-behavior-x:contain;scrollbar-width:thin;flex-wrap:nowrap;max-width:62%;padding:2px;overflow-x:auto}.preparation-workbench .prep-stage-rail{box-sizing:border-box;scrollbar-gutter:stable;min-height:38px;padding:4px 12px}.preparation-workbench .prep-stage-rail button{min-height:29px;padding:3px 8px 3px 4px}.preparation-workbench .prep-stage-rail button i{width:20px;height:20px}.preparation-workbench .prep-workbench-grid{grid-template-columns:minmax(205px,16%) minmax(440px,1fr) minmax(250px,20%)}.preparation-workbench .prep-workbench-left,.preparation-workbench .prep-workbench-right{overscroll-behavior:contain;scrollbar-gutter:stable;padding:9px;overflow:hidden auto}.preparation-workbench .prep-workbench-center{background:#fff;flex-direction:column;gap:0;padding:0;display:flex;overflow:hidden}.preparation-workbench .prep-stage-head{box-sizing:border-box;background:#fff;border-bottom:1px solid #eee5da;flex:none;min-height:68px;padding:10px clamp(12px,1.5vw,22px) 8px}.preparation-workbench .prep-stage-head>div:last-child{flex:none;gap:5px;padding:1px;display:flex;overflow-x:auto}.preparation-workbench .prep-center-scroll{box-sizing:border-box;overscroll-behavior:contain;scrollbar-gutter:stable;flex:auto;grid-auto-rows:max-content;align-content:start;gap:9px;min-width:0;min-height:0;padding:10px clamp(12px,1.5vw,22px);display:grid;overflow:hidden auto}.preparation-workbench .prep-natural-editor-card,.preparation-workbench .prep-refine-card,.preparation-workbench .prep-preview-card{flex:none;min-height:0;overflow:hidden}.preparation-workbench .prep-natural-editor{height:auto;min-height:clamp(155px,25vh,290px);overflow:visible}.preparation-workbench .prep-stage-preview{height:auto;min-height:clamp(145px,23vh,270px);max-height:none;overflow:visible}.preparation-workbench .prep-center-actions{z-index:auto;-webkit-backdrop-filter:none;backdrop-filter:none;background:#fffdfa;border-top:1px solid #eee5da;flex:none;justify-content:flex-end;gap:6px;margin:0;padding:8px clamp(12px,1.5vw,22px);display:flex;position:static;box-shadow:0 -4px 14px #46301d0a}.preparation-workbench .prep-plan-actions{z-index:auto;box-shadow:none;position:static;bottom:auto}.preparation-workbench .prep-questions-panel{grid-template-rows:auto minmax(0,1fr);min-height:120px;max-height:clamp(145px,25vh,225px);display:grid;overflow:hidden}.preparation-workbench .prep-question-list{overscroll-behavior:contain;scrollbar-gutter:stable;min-height:0;max-height:none;padding-right:4px;overflow:hidden auto}.preparation-workbench .prep-question-list article{grid-template-columns:minmax(0,1fr) auto;align-items:center;min-width:0;display:grid}.preparation-workbench .prep-question-list article span{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.preparation-workbench .prep-question-list article i{min-width:max-content}.preparation-workbench .prep-workbench-right{scroll-padding-bottom:12px}@media (width<=1180px){.preparation-workbench .prep-workbench-grid{grid-template-columns:minmax(0,1fr)}.preparation-workbench .prep-workbench-head-actions{max-width:68%}}@media (width<=1024px){.student-main:has(>.teacher-secondary-nav+.teacher-workbench){padding-left:110px}}@media (width<=768px){.student-main:has(>.teacher-secondary-nav+.teacher-workbench){padding:0 0 calc(var(--stu-mobile-nav-height,64px) + env(safe-area-inset-bottom))}}@media (width<=760px),(height<=650px){.preparation-workbench .prep-workbench-head{min-height:48px;padding:6px 9px}.preparation-workbench .prep-stage-rail{min-height:34px;padding:3px 7px}.preparation-workbench .prep-stage-head{min-height:56px;padding:7px 10px}.preparation-workbench .prep-center-scroll{gap:6px;padding:7px 9px}.preparation-workbench .prep-natural-editor{min-height:130px;padding:11px 13px}.preparation-workbench .prep-stage-preview{min-height:115px;padding:9px 12px}.preparation-workbench .prep-center-actions{padding:6px 9px}}@media (width<=560px){.preparation-workbench .prep-workbench-head-actions{max-width:72%}.preparation-workbench .prep-workbench-head-actions .prep-save-indicator{display:none}.preparation-workbench .prep-stage-head{align-items:center}.preparation-workbench .prep-stage-head h3{font-size:.92rem}.preparation-workbench .prep-center-actions{justify-content:flex-start;overflow-x:auto}}@media (prefers-reduced-motion:reduce){.teacher-workbench .teacher-btn{transition:none}.teacher-workbench .teacher-btn.is-loading:before{animation-duration:1.2s}}.preparation-immersive{--prep-left:60%;--prep-top:61%;grid-template-rows:auto auto auto minmax(0,1fr);height:auto}.preparation-immersive .prep-immersive-toolbar{box-sizing:border-box;gap:9px;min-height:54px;padding:6px 12px}.preparation-immersive .prep-brand{min-width:154px;max-width:230px}.preparation-immersive .prep-context-selects{gap:5px}.preparation-immersive .prep-context-selects select{max-width:175px;padding:7px 8px}.preparation-immersive .prep-toolbar-actions{gap:4px;overflow:visible}.prep-layout-menu{position:relative}.prep-layout-menu summary{border:1px solid var(--prep-border);color:var(--prep-text);cursor:pointer;white-space:nowrap;background:#fff;border-radius:8px;padding:7px 10px;font-size:.66rem;list-style:none}.prep-layout-menu summary::-webkit-details-marker{display:none}.prep-layout-menu summary:after{content:"⌄";color:var(--prep-muted);margin-left:5px}.prep-layout-menu[open] summary{color:var(--teacher-accent-dark);border-color:#c8965e}.prep-layout-menu>div{z-index:24;border:1px solid var(--prep-border);background:#fffdfa;border-radius:10px;grid-template-columns:1fr 1fr;gap:4px;width:260px;padding:7px;display:grid;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 12px 30px #412c1b2e}.prep-layout-menu>div button{text-align:left}.prep-hidden-panes{color:#7f5a32;background:#fff7e8;border-bottom:1px solid #eadfd2;justify-content:flex-end;align-items:center;gap:5px;min-width:0;padding:4px 10px;font-size:.6rem;display:flex}.prep-hidden-panes button{padding:4px 7px;font-size:.58rem}.prep-immersive-grid{grid-row:4;grid-template-columns:minmax(0,var(--prep-left)) 7px minmax(0,calc(100% - var(--prep-left) - 7px));grid-template-rows:minmax(0,1fr);min-width:0;min-height:0;display:grid;position:relative;overflow:hidden}.prep-dock-left{grid-template-rows:minmax(0,var(--prep-top)) 7px minmax(0,calc(100% - var(--prep-top) - 7px));background:#f2ece3;grid-area:1/1;min-width:0;min-height:0;display:grid;overflow:hidden}.prep-dock-slot{min-width:0;min-height:0;position:relative;overflow:hidden}.prep-dock-slot>.prep-dock-pane{box-sizing:border-box;width:100%;height:100%}.prep-col-splitter{grid-area:1/2}.prep-immersive-grid>[data-dock-slot=right]{grid-area:1/3}.prep-row-splitter{z-index:3;cursor:row-resize;background:#e2d4c3;min-width:0;min-height:7px;position:relative}.prep-row-splitter:after{content:"";background:0 0;transition:background .15s;position:absolute;inset:2px 0}.prep-row-splitter:hover:after,.prep-row-splitter:active:after{background:var(--teacher-accent)}body.prep-is-resizing{cursor:col-resize!important;-webkit-user-select:none!important;user-select:none!important}body.prep-is-resizing-row{cursor:row-resize!important;-webkit-user-select:none!important;user-select:none!important}body.prep-is-resizing *,body.prep-is-resizing-row *{pointer-events:none!important}.preparation-immersive.prep-top-unavailable .prep-dock-left{grid-template-rows:0 0 minmax(0,1fr)}.preparation-immersive.prep-bottom-unavailable .prep-dock-left{grid-template-rows:minmax(0,1fr) 0 0}.preparation-immersive.prep-top-collapsed .prep-dock-left{grid-template-rows:auto 7px minmax(0,1fr)}.preparation-immersive.prep-bottom-collapsed .prep-dock-left{grid-template-rows:minmax(0,1fr) 7px auto}.preparation-immersive.prep-top-unavailable.prep-bottom-unavailable .prep-dock-left{display:none}.preparation-immersive.prep-right-unavailable .prep-immersive-grid{grid-template-columns:minmax(0,1fr) 0 0}.preparation-immersive.prep-right-unavailable .prep-col-splitter{display:none}.preparation-immersive.prep-right-collapsed .prep-immersive-grid{grid-template-columns:minmax(0,1fr) 7px 146px}.prep-dock-pane.is-pane-collapsed{grid-template-rows:auto!important;height:auto!important;min-height:38px!important;display:grid!important}.prep-dock-pane.is-pane-collapsed>:not(:first-child){display:none!important}.prep-dock-slot.is-pane-hidden{visibility:hidden}.prep-focus-host{background:#f4efe7;grid-area:1/1/auto/-1;min-width:0;min-height:0;overflow:hidden}.prep-focus-host>.prep-dock-pane{width:100%;height:100%}.preparation-immersive.has-pane-focus .prep-dock-left,.preparation-immersive.has-pane-focus .prep-col-splitter,.preparation-immersive.has-pane-focus .prep-immersive-grid>[data-dock-slot=right]{display:none}.preparation-immersive.has-pane-focus .prep-focus-host{display:block}.prep-pane-handle{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;border:1px solid #dfd3c5;border-radius:5px;flex:none;place-items:center;width:20px;height:20px;line-height:1;color:#9a6c40!important;padding:0!important;font-size:.72rem!important;display:inline-grid!important}.prep-pane-handle:active{cursor:grabbing}.prep-pane-actions{flex:none;align-items:center;gap:2px;display:inline-flex!important;overflow:visible!important}.prep-pane-actions button{background:0 0!important;border-color:#0000!important;padding:4px 5px!important;font-size:.56rem!important}.prep-ppt-panel>header>div:first-child,.prep-ai-panel>header>div:first-child,.prep-document-pane-head>div:first-child{align-items:center;gap:5px;display:flex}.prep-ppt-panel>header>div:first-child>span:not(.prep-pane-handle),.prep-ai-panel>header>div:first-child>span:not(.prep-pane-handle),.prep-document-pane-head>div:first-child>span:not(.prep-pane-handle){text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.prep-document-workspace{grid-template-rows:auto auto auto auto auto minmax(0,1fr) auto}.prep-document-workspace>.prep-document-pane-head{grid-row:1}.prep-document-workspace>.doc-tabs{grid-row:2}.prep-document-workspace>.doc-modebar{grid-row:3}.prep-document-workspace>.doc-toolbar{grid-row:4}.prep-document-workspace>.doc-recovery{grid-row:5}.prep-document-workspace>.doc-work-area{grid-row:6}.prep-document-workspace>.doc-statusbar{grid-row:7}.prep-document-pane-head{box-sizing:border-box;border-bottom:1px solid var(--prep-border);background:#fffdfa;justify-content:space-between;align-items:center;gap:7px;min-width:0;min-height:35px;padding:5px 7px;display:flex}.prep-document-pane-head>div{align-items:center;gap:5px;min-width:0;display:flex}.prep-document-pane-head b{white-space:nowrap;font-size:.72rem}.prep-document-pane-head>div:first-child>span:last-child{color:var(--prep-muted);font-size:.58rem}.doc-tabs{min-height:34px;padding-top:2px}.doc-modebar{min-height:34px;padding:3px 6px;overflow:auto hidden}.doc-modebar>div{flex:none}.doc-toolbar{box-sizing:border-box;flex-wrap:nowrap;min-height:36px;overflow:visible}.doc-toolbar span{flex:none}.doc-toolbar select,.doc-toolbar button{min-height:27px;padding:4px 6px}.doc-tool-more{flex:none;position:relative}.doc-tool-more>summary{box-sizing:border-box;min-height:27px;color:var(--prep-text);cursor:pointer;background:#fffdfa;border:1px solid #eadfd1;border-radius:6px;align-items:center;padding:4px 7px;font-size:.62rem;list-style:none;display:flex}.doc-tool-more>summary::-webkit-details-marker{display:none}.doc-tool-more>summary:after{content:"⌄";color:var(--prep-muted);margin-left:4px}.doc-tool-more[open]>summary{color:var(--teacher-accent-dark);border-color:#c8965e}.doc-tool-more>div{z-index:12;border:1px solid var(--prep-border);background:#fffdfa;border-radius:8px;gap:4px;min-width:250px;padding:6px;display:grid;position:absolute;top:calc(100% + 5px);right:0;box-shadow:0 10px 24px #412c1b29}.doc-tool-more>div span{border-right:0;display:flex}.prep-ai-panel{grid-template-rows:auto auto minmax(0,1fr) auto auto}.prep-ai-panel>header{padding:5px 7px}.prep-ai-head-actions{scrollbar-width:none;flex:0 auto;overflow-x:auto}.prep-ai-head-actions::-webkit-scrollbar{display:none}.prep-ai-unread{background:#a96832;border-radius:9px;place-items:center;min-width:18px;height:18px;color:#fff!important;padding:0 4px!important;font-size:.52rem!important;display:inline-grid!important}.prep-ai-quick{box-sizing:border-box;min-height:32px;padding:0 7px 5px;overflow-y:hidden}.prep-ai-quick button{padding:5px 7px;font-size:.59rem}.prep-ai-messages{overscroll-behavior:contain;scrollbar-gutter:stable;padding:6px 8px}.prep-ai-compose{z-index:1;background:#fffdfa;padding:6px 8px;position:relative}.prep-ai-compose textarea{resize:none;min-height:42px;max-height:74px}.prep-dock-overlay{z-index:40;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#36271b47;grid-template-columns:1fr 1fr 1fr;gap:8px;padding:18px;display:grid;position:absolute;inset:0}.prep-dock-overlay button{place-items:center;font-weight:750;display:grid;color:#75451f!important;background:#fffbf4e6!important;border:2px dashed #b8793d!important;font-size:.78rem!important}.prep-dock-overlay button:hover,.prep-dock-overlay button.is-target{box-shadow:inset 0 0 0 2px #b8793d57;background:#fff1dc!important}.preparation-immersive.is-docking .prep-dock-pane{pointer-events:none}@media (width<=1320px){.preparation-immersive .prep-brand{min-width:138px;max-width:180px}.preparation-immersive .prep-context-selects select{max-width:150px}.preparation-immersive .prep-toolbar-actions #prep-exit-immersive{display:none}.prep-ppt-panel header select{max-width:155px}.prep-ppt-panel header>div:last-child{scrollbar-width:thin;overflow-x:auto}}@media (width<=1120px){.preparation-immersive .prep-immersive-toolbar{flex-wrap:wrap;min-height:0}.preparation-immersive .prep-brand{flex:180px}.preparation-immersive .prep-context-selects{flex-basis:100%;order:3}.preparation-immersive .prep-context-selects select{max-width:none}.preparation-immersive .prep-toolbar-actions{scrollbar-width:thin;max-width:70%;margin-left:auto;overflow-x:auto}}@media (width<=1024px){.preparation-immersive{grid-template-rows:auto auto auto minmax(0,1fr)}.preparation-immersive .prep-mobile-surfaces{border-bottom:1px solid var(--prep-border);background:#fffdfa;gap:4px;padding:4px 7px;display:flex}.preparation-immersive .prep-mobile-surfaces button{flex:1;min-height:29px;padding:5px;font-size:.61rem}.preparation-immersive .prep-mobile-surfaces button.active{color:#7c4b25;background:#fff0dd;border-color:#cf9860}.preparation-immersive .prep-immersive-grid{grid-row:4;grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr);display:grid}.preparation-immersive .prep-dock-left{display:contents}.preparation-immersive .prep-dock-slot{grid-area:1/1;width:100%;height:100%;display:none}:is(.preparation-immersive[data-compact-pane=presentation] .prep-dock-slot:has(>.prep-dock-pane[data-pane=presentation]),.preparation-immersive[data-compact-pane=assistant] .prep-dock-slot:has(>.prep-dock-pane[data-pane=assistant]),.preparation-immersive[data-compact-pane=document] .prep-dock-slot:has(>.prep-dock-pane[data-pane=document])){display:block}.preparation-immersive .prep-row-splitter,.preparation-immersive .prep-col-splitter{display:none!important}.preparation-immersive .prep-focus-host{grid-area:1/1}.preparation-immersive.has-pane-focus .prep-focus-host{display:block}.preparation-immersive .prep-document-workspace,.preparation-immersive .prep-ppt-panel,.preparation-immersive .prep-ai-panel{display:grid!important}.preparation-immersive .doc-toolbar{max-height:none;overflow:visible}.prep-hidden-panes{justify-content:flex-start;overflow-x:auto}}@media (width<=700px){.preparation-immersive .prep-immersive-toolbar{gap:5px;padding:5px 7px}.preparation-immersive .prep-brand{min-width:120px}.preparation-immersive .prep-brand b{font-size:.82rem}.preparation-immersive .prep-toolbar-actions{flex:100%;max-width:100%}.preparation-immersive .prep-toolbar-actions #doc-export-main{display:none}.prep-layout-menu>div{width:min(260px,100vw - 16px);position:fixed;top:110px;right:8px}.prep-ppt-panel>header,.prep-ai-panel>header{padding:5px}.prep-pane-actions button[data-pane-action=hide],.prep-document-pane-head>div:first-child>span:last-child{display:none}.doc-editor-scroll{padding:9px 5px 20px}}@media (height<=650px) and (width>=1025px){.preparation-immersive .prep-immersive-toolbar{min-height:46px;padding-block:4px}.preparation-immersive .prep-brand em{display:none}.prep-ppt-panel>header,.prep-ai-panel>header,.prep-ppt-panel>footer{padding-block:4px}.prep-ai-quick{min-height:28px}.prep-ai-compose textarea{min-height:34px}}@media (prefers-reduced-motion:reduce){.prep-row-splitter:after{transition:none}}.teacher-artifact-detail-page{--artifact-ink:#33271d;--artifact-muted:#806f60;--artifact-line:#eadfd2;--artifact-accent:#a96832;max-width:1480px;color:var(--artifact-ink);gap:18px;margin:0 auto;padding:18px 24px 42px;display:grid}.teacher-artifact-detail-breadcrumb{color:var(--artifact-muted);align-items:center;gap:8px;font-size:.84rem;display:flex}.teacher-artifact-detail-breadcrumb a{color:#89572f;font-weight:700;text-decoration:none}.teacher-artifact-detail-breadcrumb a:hover{text-decoration:underline}.teacher-artifact-detail-hero{background:linear-gradient(125deg,#fffaf2 0%,#fff 55%,#f6e8d6 100%);border:1px solid #e7d7c5;border-radius:18px;justify-content:space-between;align-items:flex-start;gap:24px;padding:26px 28px;display:flex;box-shadow:0 14px 34px #50372114}.teacher-artifact-detail-hero h2{color:#2f241a;margin:5px 0 7px;font-size:1.7rem;line-height:1.25}.teacher-artifact-detail-hero p{color:var(--artifact-muted);margin:0}.teacher-artifact-detail-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:9px;display:flex}.teacher-artifact-detail-actions a{text-decoration:none}.teacher-artifact-detail-actions .danger{color:#a3473a;border-color:#e9c8c2}.teacher-artifact-detail-actions button:disabled{opacity:.45;cursor:not-allowed}.teacher-artifact-detail-grid{grid-template-columns:minmax(0,1.45fr) minmax(320px,.75fr);gap:18px;display:grid}.teacher-artifact-detail-panel{border:1px solid var(--artifact-line);background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 8px 26px #4b35230e}.teacher-artifact-detail-panel>header{background:#fffcf8;border-bottom:1px solid #f0e7dd;justify-content:space-between;align-items:flex-start;gap:16px;padding:18px 20px;display:flex}.teacher-artifact-detail-panel>header span{color:var(--artifact-accent);letter-spacing:.08em;margin-bottom:3px;font-size:.7rem;font-weight:800;display:block}.teacher-artifact-detail-panel>header h3{margin:0;font-size:1rem}.teacher-artifact-detail-panel>header small{color:var(--artifact-muted)}.teacher-artifact-detail-overview dl{grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:8px 20px 18px;display:grid}.teacher-artifact-detail-overview dl>div{border-bottom:1px solid #f2ebe4;min-width:0;padding:15px 12px}.teacher-artifact-detail-overview dt{color:var(--artifact-muted);margin-bottom:6px;font-size:.72rem}.teacher-artifact-detail-overview dd{overflow-wrap:anywhere;margin:0;font-weight:750;line-height:1.45}.teacher-artifact-export-list{gap:10px;padding:16px;display:grid}.teacher-artifact-export-list>div{background:#fffcf8;border:1px solid #eee4d9;border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;display:grid}.teacher-artifact-format{color:#8d572d;background:#f4e4d1;border-radius:10px;place-items:center;width:48px;height:42px;font-size:.72rem;font-weight:900;display:grid}.teacher-artifact-export-list b,.teacher-artifact-export-list small{display:block}.teacher-artifact-export-list small{color:var(--artifact-muted);margin-top:3px}.teacher-artifact-export-list button{color:#85522a;cursor:pointer;background:#fff;border:1px solid #d9b58d;border-radius:9px;padding:8px 12px;font-weight:750}.teacher-artifact-detail-request>p{white-space:pre-wrap;color:#554538;margin:0;padding:20px;line-height:1.75}.teacher-artifact-detail-preview>.artifact-rich-preview{background:#fff;border:1px solid #ebe3da;border-radius:10px;max-width:1050px;margin:22px auto;padding:34px 44px;line-height:1.75;box-shadow:0 9px 26px #3c2d2014}.teacher-artifact-detail-preview>.artifact-rich-preview img{max-width:100%}.teacher-artifact-detail-empty{text-align:center;min-height:150px;color:var(--artifact-muted);place-items:center;padding:24px;display:grid}.teacher-artifact-detail-empty b{color:var(--artifact-ink)}.teacher-artifact-detail-empty p{margin:7px 0 0}.teacher-artifact-detail-page>.artifact-loading,.teacher-artifact-detail-page>.artifact-empty{border:1px solid var(--artifact-line);background:#fff;border-radius:16px;min-height:280px}@media (width<=1100px){.teacher-artifact-detail-grid{grid-template-columns:1fr}.teacher-artifact-detail-overview dl{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-artifact-detail-hero{flex-direction:column}.teacher-artifact-detail-actions{justify-content:flex-start}}@media (width<=720px){.teacher-artifact-detail-page{padding:12px}.teacher-artifact-detail-hero{padding:20px}.teacher-artifact-detail-overview dl{grid-template-columns:1fr}.teacher-artifact-detail-preview>.artifact-rich-preview{margin:12px;padding:22px 18px}.teacher-artifact-detail-actions{width:100%}.teacher-artifact-detail-actions>a,.teacher-artifact-detail-actions>button{text-align:center;flex:130px}}.preparation-workbench{grid-template-rows:auto auto auto auto minmax(0,1fr)}.prep-flow-rail{background:#fff;border-bottom:1px solid #dfe5e2;grid-template-columns:repeat(4,minmax(0,1fr));min-width:0;display:grid}.prep-flow-rail button{text-align:left;background:#fff;border:0;border-right:1px solid #e5e9e7;border-radius:0;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;min-height:56px;padding:7px 12px;display:grid;position:relative}.prep-flow-rail button:last-child{border-right:0}.prep-flow-rail button:after{content:"";z-index:1;background:#fff;border-top:1px solid #d7ddda;border-right:1px solid #d7ddda;width:9px;height:9px;position:absolute;right:-5px;transform:rotate(45deg)}.prep-flow-rail button:last-child:after{display:none}.prep-flow-rail button>i{color:#557067;background:#f3f6f5;border:1px solid #c9d2ce;border-radius:6px;place-items:center;width:28px;height:28px;font-size:.68rem;font-style:normal;font-weight:800;display:grid}.prep-flow-rail button>span{gap:2px;min-width:0;display:grid}.prep-flow-rail button b{color:#243b34;text-overflow:ellipsis;white-space:nowrap;font-size:.71rem;overflow:hidden}.prep-flow-rail button em{color:#7b8b85;text-overflow:ellipsis;white-space:nowrap;font-size:.56rem;font-style:normal;overflow:hidden}.prep-flow-rail button strong{color:#6e7b77;background:#f0f2f1;border-radius:5px;padding:3px 6px;font-size:.54rem;font-weight:700}.prep-flow-rail button strong[data-status=已完成],.prep-flow-rail button strong[data-status=已生成]{color:#28704b;background:#e6f4eb}.prep-flow-rail button strong[data-status=可生成]{color:#2f6e98;background:#e8f1f8}.prep-flow-rail button.active{color:#216445;background:#f4faf7;box-shadow:inset 0 -3px #3b8d62}.prep-flow-rail button.active>i{color:#fff;background:#3b8d62;border-color:#3b8d62}.prep-flow-rail button.active:after{background:#f4faf7}.prep-flow-summary{box-sizing:border-box;background:#fbfaf7;border-bottom:1px solid #e4ddd4;justify-content:space-between;align-items:center;gap:18px;min-width:0;min-height:67px;padding:9px 16px;display:flex}.prep-flow-summary>div:first-child{min-width:0}.prep-flow-summary span{color:#58766b;margin-bottom:2px;font-size:.55rem;font-weight:750;display:block}.prep-flow-summary h3{color:#243a33;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.82rem;overflow:hidden}.prep-flow-summary p{color:#786f67;text-overflow:ellipsis;white-space:nowrap;margin:3px 0 0;font-size:.62rem;overflow:hidden}.prep-flow-actions{flex:none;gap:6px;display:flex}.prep-syllabus-actions{grid-template-columns:1fr 1fr;gap:5px;margin-top:8px;display:grid}.prep-syllabus-actions button{width:100%;padding:5px 7px}.prep-syllabus-list{gap:5px;margin-top:7px;display:grid}.prep-syllabus-list>button{text-align:left;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:7px;width:100%;padding:7px;display:grid}.prep-syllabus-list>button>span{gap:2px;min-width:0;display:grid}.prep-syllabus-list b,.prep-syllabus-list em{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.prep-syllabus-list b{color:#3c4d47;font-size:.65rem}.prep-syllabus-list em{color:#91867d;font-size:.55rem;font-style:normal}.prep-syllabus-list>button>i{color:#3f765c;font-size:.52rem;font-style:normal}.prep-syllabus-list>button.active{background:#eef7f1;border-color:#73a88b;box-shadow:inset 3px 0 #3b8d62}.prep-syllabus-dialog{width:min(820px,100vw - 32px)}.prep-syllabus-dialog header>div{gap:2px;display:grid}.prep-syllabus-dialog header p{color:var(--teacher-muted);margin:0;font-size:.63rem}.prep-syllabus-dialog textarea{resize:vertical}@media (width<=900px){.prep-flow-rail{display:flex;overflow-x:auto}.prep-flow-rail button{flex:0 0 215px}.prep-flow-summary{min-height:61px;padding:7px 10px}.prep-flow-summary p{max-width:58vw}.prep-flow-rail button em{display:none}}@media (width<=620px){.prep-flow-summary p{display:none}.prep-flow-summary h3{max-width:48vw}.prep-flow-actions button{padding-inline:7px}.prep-syllabus-dialog .teacher-form-grid{grid-template-columns:1fr}.prep-syllabus-dialog .teacher-form-grid .wide{grid-column:1}}.prep-ppt-dialog{width:min(1040px,100vw - 32px);max-height:calc(100vh - 32px)}.prep-ppt-dialog form{flex-direction:column;max-height:calc(100vh - 48px);display:flex}.prep-ppt-dialog .teacher-form-grid{flex:none}.prep-ppt-generation-state{border-top:1px solid var(--teacher-border,#d9e1e5);min-height:90px;margin:14px 0;padding-top:14px;overflow:auto}.prep-ppt-generation-state>p{color:var(--teacher-muted,#64737b);text-align:center}.prep-ppt-progress{grid-template-columns:1fr auto;align-items:center;gap:8px 16px;display:grid}.prep-ppt-progress i{background:#e6ecef;border-radius:4px;grid-column:1/-1;height:7px;overflow:hidden}.prep-ppt-progress i em{background:#367c68;height:100%;transition:width .2s;display:block}.prep-ppt-progress p{color:#63727a;grid-column:1/-1;margin:0}.prep-ppt-error{color:#8b3e2d;background:#fff5f1;border:1px solid #e5b9ac;border-radius:6px;padding:14px}.prep-ppt-result>header{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.prep-ppt-result>header h4{letter-spacing:0;margin:4px 0;font-size:19px}.prep-ppt-result>header p,.prep-ppt-result>header small{color:#667780;margin:0}.prep-ppt-result>header>div:last-child{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.prep-ppt-notice{color:#315e4e;background:#eef6f2;border-left:3px solid #3f8c70;padding:9px 11px}.prep-ppt-slide-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.prep-ppt-slide-grid article{background:#fff;border:1px solid #d8e1e5;border-radius:6px;min-width:0;padding:13px}.prep-ppt-slide-grid article>span{color:#61717a;font-size:11px}.prep-ppt-slide-grid h5{letter-spacing:0;margin:6px 0 8px;font-size:15px}.prep-ppt-slide-grid ul{color:#384850;margin:0 0 10px;padding-left:20px}.prep-ppt-slide-grid li{margin:4px 0}.prep-ppt-slide-grid dl{border-top:1px solid #edf0f2;margin:0;padding-top:9px}.prep-ppt-slide-grid dt{color:#527080;margin-top:6px;font-size:11px;font-weight:700}.prep-ppt-slide-grid dd{color:#64747c;overflow-wrap:anywhere;margin:2px 0 0;line-height:1.55}@media (width<=760px){.prep-ppt-result>header{flex-direction:column}.prep-ppt-result>header>div:last-child{justify-content:flex-start}.prep-ppt-slide-grid{grid-template-columns:1fr}}.teacher-artifact-center{box-sizing:border-box;min-height:calc(100dvh - 80px);color:var(--teacher-ink);background:linear-gradient(145deg,#fbf8f2,#f7f1e8);padding:14px 16px 82px}.teacher-artifact-center.is-dragging:after{content:"松开以上传文件";z-index:740;border:2px dashed var(--teacher-accent);color:var(--teacher-accent-dark);pointer-events:none;background:#fffdfaf0;border-radius:18px;place-items:center;font-size:1.15rem;font-weight:800;display:grid;position:fixed;inset:92px 22px 22px 148px}.artifact-head{align-items:center;margin-bottom:10px}.artifact-head>div:last-child{gap:8px;display:flex}.artifact-drop-note{color:var(--teacher-muted);background:#fffaf2;border:1px dashed #ddcbb6;border-radius:10px;align-items:center;gap:12px;margin-bottom:10px;padding:8px 12px;font-size:.74rem;display:flex}.artifact-drop-note b{color:var(--teacher-ink);white-space:nowrap}.artifact-category-tabs{border:1px solid var(--teacher-line);scrollbar-width:thin;background:#fffdfa;border-radius:11px 11px 0 0;gap:5px;padding:5px;display:flex;overflow:auto hidden}.artifact-category-tabs button,.artifact-view-switch button{color:var(--teacher-muted);font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:7px 10px;font-size:.71rem;font-weight:700}.artifact-category-tabs button.active,.artifact-view-switch button.active{color:var(--teacher-accent-dark);background:#efe1cf;box-shadow:inset 0 0 0 1px #d7b993}.artifact-filter-toggle,.artifact-filter-backdrop,.artifact-filter-drawer-head{display:none}.artifact-filter-panel{border:1px solid var(--teacher-line);background:#fff;border-top:0;border-radius:0 0 11px 11px;grid-template-columns:minmax(210px,1.8fr) repeat(5,minmax(105px,.7fr)) auto;align-items:end;gap:7px;padding:9px;display:grid}.artifact-filter-panel label{min-width:0;color:var(--teacher-muted);gap:4px;font-size:.65rem;display:grid}.artifact-filter-panel :is(input,select){box-sizing:border-box;width:100%;min-width:0;height:32px;color:var(--teacher-ink);font:inherit;background:#fffdfa;border:1px solid #dfd2c3;border-radius:7px;padding:0 9px;font-size:.72rem}.artifact-view-switch{background:#fbf7f0;border:1px solid #dfd2c3;border-radius:8px;height:32px;padding:2px;display:flex}.artifact-view-switch button{padding:4px 8px}.artifact-summary{gap:7px;margin:9px 0;display:flex;overflow:auto hidden}.artifact-summary span{border:1px solid var(--teacher-line);min-width:100px;color:var(--teacher-muted);white-space:nowrap;background:#ffffffc2;border-radius:8px;padding:7px 10px;font-size:.68rem}.artifact-summary b{color:var(--teacher-ink);margin-right:5px;font-size:.88rem}.artifact-results{overscroll-behavior:contain;scrollbar-gutter:stable;height:clamp(220px,100dvh - 360px,760px);min-height:220px;padding-right:3px;overflow:auto}.artifact-loading,.artifact-empty{min-height:240px;color:var(--teacher-muted);text-align:center;background:#fffdfa;border:1px dashed #dccdbd;border-radius:12px;align-content:center;place-items:center;gap:6px;display:grid}.artifact-empty b{color:var(--teacher-ink)}.artifact-empty p{margin:0;font-size:.76rem}.artifact-empty.error b{color:#9d3f32}.artifact-list{gap:6px;display:grid}.artifact-row{border:1px solid var(--teacher-line);background:#fffdfa;border-radius:10px;grid-template-columns:24px 42px minmax(210px,1fr) 118px minmax(330px,auto);align-items:center;gap:10px;min-height:66px;padding:8px 10px;transition:border-color .15s,box-shadow .15s;display:grid}.artifact-row:hover,.artifact-row.selected,.artifact-card-v2.selected{border-color:#d5b187;box-shadow:0 6px 18px #5b3a1b12}.artifact-check{cursor:pointer;place-items:center;display:grid}.artifact-check input{width:15px;height:15px;accent-color:var(--teacher-accent)}.artifact-file-icon{color:#8c511d;letter-spacing:.02em;background:#efe2cf;border-radius:10px;place-items:center;width:40px;height:40px;font-size:.62rem;font-weight:850;display:grid}.artifact-file-icon.is-pdf{color:#a04435;background:#f4ded8}.artifact-file-icon:is(.is-ppt,.is-pptx){color:#aa572a;background:#f2dfd3}.artifact-file-icon:is(.is-docx,.is-doc){color:#446b82;background:#dfe8ee}.artifact-file-icon:is(.is-md,.is-txt){color:#547253;background:#e2eadf}.artifact-main{min-width:0}.artifact-main>div{align-items:center;gap:8px;display:flex}.artifact-main h3,.artifact-card-v2 h3{min-width:0;color:var(--teacher-ink);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.79rem;overflow:hidden}.artifact-main p,.artifact-card-v2 p{color:var(--teacher-muted);text-overflow:ellipsis;white-space:nowrap;margin:4px 0;font-size:.68rem;overflow:hidden}.artifact-main small,.artifact-card-v2 small{color:#a09283;font-size:.62rem}.artifact-status{color:#75685c;white-space:nowrap;background:#eee7dd;border-radius:999px;align-items:center;width:max-content;padding:3px 7px;font-size:.6rem;font-weight:800;display:inline-flex}.artifact-status.is-ready{color:#527153;background:#e4eee2}.artifact-status:is(.is-failed,.is-partial_failed){color:#a34235;background:#f7e3dd}.artifact-status:is(.is-converting,.is-generating,.is-parsing,.is-uploading){color:#9b611d;background:#f4e7d2}.artifact-status.is-archived{color:#756b61;background:#ece9e4}.artifact-type-meta{min-width:0;color:var(--teacher-muted);gap:2px;font-size:.62rem;display:grid}.artifact-type-meta b{color:var(--teacher-ink);font-size:.68rem}.artifact-type-meta a{color:var(--teacher-accent-dark);text-decoration:none}.artifact-actions{justify-content:flex-end;gap:4px;padding-bottom:1px;display:flex;overflow:auto hidden}.artifact-actions button{min-height:28px;color:var(--teacher-ink);font:inherit;white-space:nowrap;cursor:pointer;background:#fff;border:1px solid #ddcfbf;border-radius:7px;padding:5px 8px;font-size:.62rem;font-weight:700}.artifact-actions button:hover{color:var(--teacher-accent-dark);border-color:#c28b52}.artifact-actions button.danger{color:#a13e32}.artifact-actions button:disabled{opacity:.42;cursor:not-allowed}.artifact-card-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:9px;display:grid}.artifact-card-v2{border:1px solid var(--teacher-line);background:#fffdfa;border-radius:12px;gap:8px;min-width:0;padding:12px;display:grid}.artifact-card-v2 header{align-items:center;gap:8px;display:flex}.artifact-card-v2 header .artifact-status{margin-left:auto}.artifact-card-v2 dl{border-block:1px solid #eee5d9;grid-template-columns:repeat(4,1fr);margin:0;padding:7px 0;display:grid}.artifact-card-v2 dl div{text-align:center;gap:2px;display:grid}.artifact-card-v2 dt{color:var(--teacher-muted);font-size:.58rem}.artifact-card-v2 dd{color:var(--teacher-ink);margin:0;font-size:.68rem;font-weight:700}.artifact-card-v2 .artifact-actions{justify-content:flex-start}.artifact-batch-bar{z-index:610;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffbf5f7;border:1px solid #d4b68f;border-radius:12px;align-items:center;gap:7px;max-width:calc(100vw - 210px);padding:8px 10px;display:flex;position:fixed;bottom:18px;left:50%;transform:translate(-50%);box-shadow:0 14px 36px #4b2e152e}.artifact-batch-bar[hidden]{display:none}.artifact-batch-bar span{color:var(--teacher-muted);white-space:nowrap;margin-right:5px;font-size:.72rem}.artifact-batch-bar button{color:var(--teacher-ink);font:inherit;white-space:nowrap;cursor:pointer;background:#fff;border:1px solid #dccab5;border-radius:7px;padding:6px 9px;font-size:.66rem;font-weight:700}.artifact-batch-bar button.danger{color:#a13e32}.artifact-dialog{width:min(1040px,100vw - 48px);max-height:calc(100dvh - 54px);color:var(--teacher-ink);background:#fffdfa;border:1px solid #d8c7b3;border-radius:15px;padding:0;overflow:hidden;box-shadow:0 24px 70px #32221440}.artifact-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#2b22196b}.artifact-dialog>header,.artifact-dialog form>header{border-bottom:1px solid var(--teacher-line);justify-content:space-between;align-items:center;padding:11px 14px;display:flex}.artifact-dialog header small{color:var(--teacher-accent);font-size:.65rem;font-weight:800}.artifact-dialog header h3{margin:2px 0 0;font-size:1rem}.artifact-preview-body{background:#f4efe7;height:min(690px,100dvh - 190px);min-height:360px;overflow:auto}.artifact-dialog>footer,.artifact-dialog form>footer{border-top:1px solid var(--teacher-line);color:var(--teacher-muted);justify-content:space-between;align-items:center;gap:10px;padding:9px 14px;font-size:.68rem;display:flex}.artifact-dialog footer>div{gap:7px;display:flex}.artifact-rich-preview{box-sizing:border-box;background:#fff;width:min(800px,100% - 32px);min-height:calc(100% - 32px);margin:16px auto;padding:38px 50px;line-height:1.8;box-shadow:0 4px 18px #44301d1a}.artifact-rich-preview :is(img,table){max-width:100%}.artifact-rich-preview table{border-collapse:collapse}.artifact-rich-preview :is(td,th){border:1px solid #cfc5b8;padding:5px}.artifact-image-preview{box-sizing:border-box;place-items:center;min-height:100%;padding:18px;display:grid}.artifact-image-preview img{object-fit:contain;max-width:100%;max-height:calc(100dvh - 230px)}.artifact-text-preview{box-sizing:border-box;color:#44382f;white-space:pre-wrap;background:#fffdfa;min-height:100%;margin:0;padding:20px;font:13px/1.7 ui-monospace,Consolas,monospace;overflow:auto}.artifact-pdf-viewer{grid-template-rows:auto minmax(0,1fr);height:100%;min-height:0;display:grid}.artifact-pdf-viewer>header{z-index:4;border-bottom:1px solid var(--teacher-line);white-space:nowrap;background:#fffdfa;justify-content:center;align-items:center;gap:5px;min-height:39px;padding:5px 8px;display:flex;position:sticky;top:0}.artifact-pdf-viewer>header button,.artifact-pdf-viewer>header input{min-height:27px;color:var(--teacher-ink);font:inherit;background:#fff;border:1px solid #ddcfbf;border-radius:6px;padding:4px 7px;font-size:.64rem}.artifact-pdf-viewer>header input{width:48px}.artifact-pdf-viewer .lws-pdf-viewport{overscroll-behavior:contain;height:100%;min-height:0;overflow:auto}.artifact-pdf-viewer .lws-pdf-pages{justify-items:center;gap:14px;padding:14px;display:grid}.artifact-share-dialog{width:min(520px,100vw - 32px)}.artifact-dialog-form{gap:10px;padding:14px;display:grid}.artifact-dialog-form label{color:var(--teacher-muted);gap:5px;font-size:.69rem;display:grid}.artifact-dialog-form :is(select,textarea){box-sizing:border-box;width:100%;color:var(--teacher-ink);font:inherit;background:#fff;border:1px solid #dccfbe;border-radius:8px;padding:8px 10px}.artifact-dialog-form p{color:var(--teacher-muted);background:#f7f0e6;border-radius:7px;margin:0;padding:8px;font-size:.65rem}@media (width<=1280px){.artifact-filter-panel{grid-template-columns:minmax(190px,1.5fr) repeat(3,minmax(110px,1fr)) auto}.artifact-filter-panel label:nth-of-type(5),.artifact-filter-panel label:nth-of-type(6){grid-row:2}.artifact-row{grid-template-columns:24px 40px minmax(180px,1fr) 96px}.artifact-row .artifact-actions{grid-column:3/-1;justify-content:flex-start}.artifact-type-meta{grid-area:1/4}}@media (width<=760px){.teacher-artifact-center{padding:10px 10px 86px}.artifact-head{align-items:flex-start}.artifact-head>div:last-child{flex-wrap:wrap;justify-content:flex-end}.artifact-drop-note{flex-direction:column;align-items:flex-start;gap:3px}.artifact-filter-panel{grid-template-columns:1fr 1fr}.artifact-filter-panel .artifact-search{grid-column:1/-1}.artifact-view-switch{justify-self:end}.artifact-row{grid-template-columns:22px 40px minmax(0,1fr)}.artifact-row .artifact-type-meta{display:none}.artifact-row .artifact-actions{grid-column:2/-1}.artifact-batch-bar{max-width:none;bottom:10px;left:10px;right:10px;overflow:auto hidden;transform:none}.artifact-dialog{width:calc(100vw - 16px)}.artifact-rich-preview{width:calc(100% - 16px);margin:8px;padding:20px}.teacher-artifact-center.is-dragging:after{inset:76px 8px 8px}}@media (width<=1100px){.artifact-filter-toggle{justify-content:center;align-items:center;margin:7px 0 0 auto;display:inline-flex}.artifact-filter-backdrop:not([hidden]){z-index:88;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:#2e241b57;border:0;display:block;position:fixed;inset:0}#artifact-filter-panel{z-index:89;box-sizing:border-box;border:0;border-left:1px solid var(--teacher-line);background:#fffdfa;border-radius:0;grid-template-columns:1fr;grid-auto-rows:max-content;align-content:start;align-items:stretch;width:min(380px,100vw - 42px);padding:14px;display:none;position:fixed;inset:0 0 0 auto;overflow:auto;box-shadow:-18px 0 48px #36251733}#artifact-filter-panel.is-open{display:grid}.artifact-filter-drawer-head{border-bottom:1px solid var(--teacher-line);justify-content:space-between;align-items:center;margin-bottom:4px;padding-bottom:9px;display:flex}#artifact-filter-panel .artifact-search{grid-column:auto}.artifact-view-switch{justify-self:start}.teacher-artifact-center.filters-open{overflow:hidden}}.lc-home-section,.lc-scene-section,.lc-course-library{--lc-blue:#2f6690;--lc-deep:#16425b;--lc-indigo:#6664c6;--lc-line:#2f669026;--lc-muted:#607988;isolation:isolate;position:relative}.lc-section-head{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:8px;display:flex}.lc-section-head h2{color:#173f58;margin:0;font-size:22px}.lc-section-head p{color:#6b8190;margin:5px 0 0;font-size:13px}.lc-section-head>div:last-child{align-items:center;gap:8px;display:flex}.lc-section-head button,.lc-library-toolbar button{color:#315e79;min-height:34px;font:inherit;cursor:pointer;background:#fff;border:1px solid #2f66902b;border-radius:9px;padding:0 12px;font-size:12px}.lc-section-head button:hover,.lc-library-toolbar button:hover{background:#f4f9fc;border-color:#2f669059}.lc-fan-root{min-height:390px;overflow:hidden}.lc-fan-stage{touch-action:pan-y;-webkit-user-select:none;user-select:none;outline:none;place-items:center;min-height:342px;display:grid;position:relative}.lc-fan-stage:focus-visible{border-radius:18px;box-shadow:inset 0 0 0 3px #2f669024}.lc-fan-cards{width:100%;height:326px;position:relative}.lc-fan-slot{width:min(330px,31vw);transform:translate3d(calc(-50% + var(--lc-x) + var(--lc-hover-x)),calc(var(--lc-y) + var(--lc-hover-y)),0) rotate(var(--lc-r)) scale(var(--lc-s));transform-origin:50% 100%;z-index:var(--lc-z);opacity:.98;will-change:transform,opacity;transition:transform .38s cubic-bezier(.2,.75,.25,1),opacity .26s,filter .26s;position:absolute;top:12px;left:50%}.lc-fan-slot[data-motion=enter]{animation:.56s cubic-bezier(.2,.75,.25,1) both lc-fan-enter}.lc-fan-slot.is-hovered{--lc-hover-y:-14px;filter:drop-shadow(0 18px 22px #18486729)}.lc-fan-slot:not(.is-center) .lc-cover-copy p,.lc-fan-slot:not(.is-center) .lc-cover dl{opacity:.55}.lc-fan-slot:not(.is-center){cursor:pointer}.lc-fan-arrow{z-index:40;color:#2f6690;cursor:pointer;background:#fffffff0;border:1px solid #2f66902b;border-radius:50%;place-items:center;width:40px;height:40px;transition:transform .2s,background .2s;display:grid;position:absolute;top:47%;box-shadow:0 7px 18px #16425b17}.lc-fan-arrow:hover{background:#eef7fb;transform:translateY(-2px)}.lc-fan-arrow svg{width:18px}.lc-fan-arrow.is-left{left:12px}.lc-fan-arrow.is-right{right:12px}.lc-fan-indicators{justify-content:center;gap:7px;margin-top:-2px;display:flex}.lc-fan-indicators button{cursor:pointer;background:#c8d9e2;border:0;border-radius:999px;width:7px;height:7px;padding:0;transition:width .24s,background .24s}.lc-fan-indicators button[aria-current=true]{background:#2f6690;width:24px}.lc-cover{color:#183f55;background:linear-gradient(150deg,#fff 0%,#f8fbfd 72%,#f1f7fa 100%);border:1px solid #2f669024;border-radius:17px;grid-template-rows:auto 1fr auto auto;gap:12px;min-height:294px;padding:18px 19px 15px;display:grid;position:relative;overflow:hidden;box-shadow:0 14px 34px #16425b1a}.lc-cover:focus-visible{outline-offset:3px;outline:3px solid #2f66903b}.lc-cover:after{content:"";pointer-events:none;border:1px solid #2f669012;border-radius:50%;width:125px;height:125px;position:absolute;bottom:-44px;right:-34px;box-shadow:0 0 0 18px #2f669006,0 0 0 38px #2f669005}.lc-cover-accent{background:#2f6690;border-radius:0 0 3px 3px;height:3px;position:absolute;top:0;left:18px;right:18px}.lc-cover.type-formula .lc-cover-accent,.lc-cover.type-comparison .lc-cover-accent{background:#7167c7}.lc-cover.type-pitfall .lc-cover-accent{background:#e8913a}.lc-cover.type-wrong_question .lc-cover-accent{background:#e0576e}.lc-cover.type-task .lc-cover-accent{background:#2799aa}.lc-cover.type-progress .lc-cover-accent{background:#4caf84}.lc-cover.type-example .lc-cover-accent{background:#4d66b8}.lc-cover>header{align-items:center;gap:6px;display:flex}.lc-type-badge,.lc-personalized,.lc-difficulty{color:#2c6283;letter-spacing:.02em;background:#eaf3f8;border-radius:999px;align-items:center;min-height:23px;padding:0 8px;font-size:10px;font-weight:700;display:inline-flex}.lc-personalized{color:#2f7b60;background:#edf7f2}.lc-difficulty{color:#6c7d87;background:#f3f5f7;margin-left:auto;font-weight:600}.lc-cover-copy{z-index:1;position:relative}.lc-cover-copy h3{color:#153d56;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 9px;font-size:19px;line-height:1.35;display:-webkit-box;overflow:hidden}.lc-cover-copy p{color:#587281;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:13px;line-height:1.65;transition:opacity .2s;display:-webkit-box;overflow:hidden}.lc-cover dl{background:#ebf4f8a1;border-radius:10px;gap:7px;margin:0;padding:10px 11px;transition:opacity .2s;display:grid}.lc-cover dl>div{grid-template-columns:54px 1fr;gap:7px;display:grid}.lc-cover dt{color:#79909e;font-size:10px}.lc-cover dd{color:#466273;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:10px;line-height:1.45;display:-webkit-box;overflow:hidden}.lc-cover>footer{color:#728995;align-items:center;gap:10px;padding-top:2px;font-size:10px;display:flex}.lc-cover>footer span{align-items:center;gap:3px;display:inline-flex}.lc-cover>footer svg{width:12px;height:12px}.lc-cover>footer span:last-child{margin-left:auto}.lc-cover>footer .is-mastered{color:#2c7d5d;font-weight:700}.lc-modal-open{overflow:hidden}.lc-modal-layer{z-index:12000;opacity:0;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0c202e75;place-items:center;padding:28px;transition:opacity .24s;display:grid;position:fixed;inset:0}.lc-modal-layer.is-open{opacity:1}.lc-modal-layer.is-closing{opacity:0}.lc-detail-dialog{background:#fff;border:1px solid #ffffff80;border-radius:20px;grid-template-rows:minmax(0,1fr) auto;width:min(880px,92vw);max-height:85vh;transition:transform .27s cubic-bezier(.2,.8,.2,1);display:grid;position:relative;overflow:hidden;transform:translateY(10px)scale(.985);box-shadow:0 30px 80px #0c273847}.is-open>.lc-detail-dialog{transform:none}.lc-dialog-close{z-index:4;color:#426477;cursor:pointer;background:#fff;border:1px solid #2f669026;border-radius:50%;place-items:center;width:36px;height:36px;display:grid;position:absolute;top:17px;right:17px}.lc-dialog-close svg{width:17px}.lc-drawer-handle{display:none}.lc-detail-scroll{overscroll-behavior:contain;padding:28px 34px 22px;overflow:auto}.lc-detail-head{border-bottom:1px solid #2f66901a;padding-right:42px}.lc-detail-head>div{align-items:center;gap:7px;display:flex}.lc-detail-head>div>span:not(.lc-type-badge){color:#718997;font-size:11px}.lc-detail-head h2{color:#153d55;margin:12px 0 8px;font-size:28px;line-height:1.3}.lc-detail-head>p{color:#4e6b7c;background:#f3f8fb;border-left:3px solid #81c3d7;margin:0 0 20px;padding:10px 12px;font-size:12px;line-height:1.6}.lc-detail-markdown,.lc-detail-section{border-bottom:1px solid #2f669017;padding:20px 0}.lc-detail-section h3,.lc-detail-sources h3{color:#234d65;margin:0 0 11px;font-size:15px}.lc-detail-section .message-markdown,.lc-detail-markdown .message-markdown{color:#3d5868;font-size:14px;line-height:1.75}.lc-detail-section .message-markdown>:first-child,.lc-detail-markdown .message-markdown>:first-child{margin-top:0}.lc-detail-section .message-markdown>:last-child,.lc-detail-markdown .message-markdown>:last-child{margin-bottom:0}.lc-detail-section.is-callout{background:#fff7ed;border:0;border-radius:12px;margin:14px 0;padding:14px 16px}.lc-detail-section.is-formula{overflow:auto}.lc-detail-section.is-formula .katex-display{padding:7px 0;overflow:auto hidden}.lc-table-wrap{border:1px solid #dfe9ee;border-radius:10px;max-width:100%;overflow-x:auto}.lc-table-wrap table{border-collapse:collapse;width:100%;min-width:480px}.lc-table-wrap th,.lc-table-wrap td{text-align:left;border-bottom:1px solid #e8eff2;padding:9px 11px;font-size:12px}.lc-table-wrap th{color:#315c74;background:#f3f8fa}.lc-chart-view{gap:10px;display:grid}.lc-chart-canvas{width:100%;height:310px;min-height:260px}.lc-chart-tools{flex-wrap:wrap;gap:7px;display:flex}.lc-chart-tools button{color:#476879;font:inherit;cursor:pointer;background:#fff;border:1px solid #d9e5ea;border-radius:7px;padding:6px 10px;font-size:11px}.lc-chart-view>ul{color:#506d7d;margin:0;padding-left:18px;font-size:12px}.lc-chart-view>small{color:#8498a3}.lc-content-fallback{color:#627783;background:#f5f7f8;border-radius:10px;gap:4px;padding:15px;font-size:12px;display:grid}.lc-detail-sources{gap:9px;padding-top:20px;display:grid}.lc-detail-sources article{border:1px solid #e2ebef;border-radius:10px;padding:11px 12px}.lc-detail-sources article>div{justify-content:space-between;gap:15px;display:flex}.lc-detail-sources b{color:#34576a;font-size:12px}.lc-detail-sources span,.lc-detail-sources a{color:#6f8794;font-size:10px}.lc-detail-sources p{color:#647b88;margin:6px 0 0;font-size:11px;line-height:1.55}.lc-detail-actions{background:#f8fbfcf7;border-top:1px solid #2f66901f;align-items:center;gap:6px;padding:12px 17px;display:flex;overflow-x:auto}.lc-detail-actions button{color:#4a6878;min-height:34px;font:inherit;cursor:pointer;background:#fff;border:1px solid #d8e4e9;border-radius:8px;flex:none;align-items:center;gap:5px;padding:0 9px;font-size:10px;display:inline-flex}.lc-detail-actions button:hover,.lc-detail-actions button.is-active{color:#267657;background:#edf8f3;border-color:#91bfad}.lc-detail-actions button:disabled{opacity:.5;cursor:wait}.lc-detail-actions svg{width:14px;height:14px}.lc-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.lc-grid.is-compact{grid-template-columns:repeat(5,minmax(180px,1fr));padding:2px 2px 10px;overflow-x:auto}.lc-grid-item{text-align:left;cursor:pointer;background:0 0;border:0;min-width:0;padding:0;display:block}.lc-grid-item>.lc-cover{min-height:262px}.lc-grid.is-compact .lc-cover{min-height:228px;padding:15px}.lc-grid.is-compact .lc-cover-copy h3{font-size:15px}.lc-grid.is-compact .lc-cover-copy p{-webkit-line-clamp:2}.lc-grid.is-compact .lc-cover dl{display:none}.lc-empty{text-align:center;background:#f8fbfc;border:1px dashed #2f669038;border-radius:14px;place-items:center;min-height:160px;padding:25px;display:grid}.lc-empty b{color:#365c71}.lc-empty span{color:#78909c;margin-top:5px;font-size:12px}.lc-scene-section,.lc-course-library{background:linear-gradient(145deg,#fff,#f8fbfc);border:1px solid #2f66901f;border-radius:16px;margin:18px 0 24px;padding:19px}.lc-scene-section .lc-grid.is-compact{grid-template-columns:repeat(5,minmax(190px,1fr))}.lc-library-toolbar{flex-wrap:wrap;gap:8px;margin:12px 0 16px;display:flex}.lc-library-toolbar input,.lc-library-toolbar select{color:#426173;min-height:36px;font:inherit;background:#fff;border:1px solid #d8e4e9;border-radius:8px;padding:0 10px;font-size:12px}.lc-library-toolbar input{flex:1;min-width:220px}.lc-library-meta{color:#738a96;justify-content:space-between;margin-bottom:10px;font-size:11px;display:flex}.lc-artifact{background:linear-gradient(145deg,#fff,#f5f9fb);border:1px solid #2f669024;border-radius:13px;margin-top:10px;overflow:hidden}.lc-artifact>header{justify-content:space-between;align-items:center;gap:15px;padding:13px 14px;display:flex}.lc-artifact>header>div{gap:3px;display:grid}.lc-artifact>header span{color:#647f90;font-size:10px}.lc-artifact>header b{color:#244c63;font-size:13px}.lc-artifact>header small{color:#78909b;font-size:10px}.lc-artifact>header button{color:#315f7a;font:inherit;cursor:pointer;background:#fff;border:1px solid #cadce5;border-radius:7px;padding:7px 10px;font-size:10px}.lc-artifact-strip{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px;padding:0 12px 12px;display:grid}.lc-artifact-strip[hidden]{display:none}.lc-artifact-strip button{text-align:left;cursor:pointer;background:#fff;border:1px solid #e0e9ed;border-radius:9px;gap:5px;padding:10px;display:grid}.lc-artifact-strip span,.lc-artifact-strip small{color:#718894;font-size:9px}.lc-artifact-strip b{color:#315469;font-size:11px}.lc-artifact-strip small{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}@keyframes lc-fan-enter{0%{opacity:0;transform:translate3d(calc(-50% + var(--lc-x) * 1.16),calc(var(--lc-y) + 18px),0) rotate(calc(var(--lc-r) * 1.25)) scale(calc(var(--lc-s) * .94))}to{opacity:.98}}@media (width<=1099px){.lc-fan-root{min-height:365px}.lc-fan-cards{height:310px}.lc-fan-slot{width:min(320px,48vw)}.lc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lc-grid.is-compact,.lc-scene-section .lc-grid.is-compact{grid-template-columns:repeat(3,minmax(190px,1fr))}}@media (width<=639px){.lc-section-head{flex-wrap:wrap;align-items:flex-start;gap:8px}.lc-section-head>div:first-child{flex:190px;min-width:0}.lc-section-head>div:last-child{justify-content:space-between;width:100%}.lc-section-head>div:last-child span{min-width:0}.lc-section-head button{white-space:nowrap;flex:none}.lc-section-head h2{font-size:19px}.lc-section-head p{font-size:11px}.lc-fan-root{min-height:348px;margin-inline:-13px}.lc-fan-stage{min-height:305px}.lc-fan-cards{height:296px;overflow:visible}.lc-fan-slot{width:min(294px,78vw);top:8px}.lc-fan-slot:not(.is-center){pointer-events:auto}.lc-fan-slot:not(.is-center) .lc-cover-copy,.lc-fan-slot:not(.is-center) .lc-cover dl,.lc-fan-slot:not(.is-center) .lc-cover footer{opacity:0}.lc-cover{border-radius:15px;min-height:274px;padding:16px}.lc-cover-copy h3{font-size:17px}.lc-cover dl,.lc-fan-arrow{display:none}.lc-modal-layer{background:#0c202e80;align-items:end;padding:0}.lc-detail-dialog{border-radius:19px 19px 0 0;width:100vw;max-height:92vh;transform:translateY(30px)}.lc-drawer-handle{background:#c8d5db;border-radius:5px;width:42px;height:4px;display:block;position:absolute;top:8px;left:50%;transform:translate(-50%)}.lc-dialog-close{top:18px;right:14px}.lc-detail-scroll{padding:31px 18px 18px}.lc-detail-head h2{font-size:23px}.lc-detail-actions{padding:10px 12px env(safe-area-inset-bottom,10px)}.lc-chart-canvas{height:270px}.lc-grid,.lc-grid.is-compact,.lc-scene-section .lc-grid.is-compact{grid-template-columns:1fr}.lc-grid.is-compact{display:flex}.lc-grid.is-compact .lc-grid-item{min-width:78vw}.lc-scene-section,.lc-course-library{margin-inline:0;padding:14px}.lc-library-toolbar>*{width:100%}.lc-artifact>header{align-items:flex-start}.lc-artifact-strip{display:flex;overflow-x:auto}.lc-artifact-strip button{min-width:190px}}@media (prefers-reduced-motion:reduce){.lc-fan-slot,.lc-fan-arrow,.lc-fan-indicators button,.lc-modal-layer,.lc-detail-dialog{transition-duration:.12s!important;animation:none!important}.lc-fan-slot{transform:translate3d(calc(-50% + var(--lc-x) + var(--lc-hover-x)),calc(var(--lc-y) + var(--lc-hover-y)),0) scale(var(--lc-s))}.lc-fan-slot.is-hovered{--lc-hover-y:0px}}.lc-course-library .lc-grid{grid-auto-rows:1fr;gap:10px}.lc-course-library .lc-grid-item,.lc-course-library .lc-cover{height:100%}.lc-course-library .lc-grid-item>.lc-cover{gap:8px;min-height:0;padding:13px 15px 11px}.lc-course-library .lc-cover-copy h3{-webkit-line-clamp:1;margin-bottom:5px;font-size:16px}.lc-course-library .lc-cover-copy p{-webkit-line-clamp:2;font-size:11px;line-height:1.45}.lc-course-library .lc-cover dl{gap:3px;padding:7px 8px}.lc-course-library .lc-cover dl>div{grid-template-columns:46px 1fr;gap:5px}.lc-course-library .lc-cover dd{-webkit-line-clamp:1}.lc-library-pagination{justify-content:center;align-items:center;gap:10px;margin-top:12px;display:flex}.lc-library-pagination[hidden]{display:none}.lc-library-pagination button{color:#315e79;cursor:pointer;background:#fff;border:1px solid #d8e4e9;border-radius:8px;min-height:32px;padding:0 12px}.lc-library-pagination button:disabled{opacity:.42;cursor:not-allowed}.lc-library-pagination span{color:#607988;text-align:center;min-width:82px;font-size:11px}.lc-modal-layer.lc-is-drawer{background:#0c202e61;place-items:stretch end;padding:0}.lc-is-drawer .lc-detail-dialog{border-radius:18px 0 0 18px;width:min(680px,92vw);height:100vh;max-height:100vh;transform:translate(34px);box-shadow:-26px 0 72px #0c273842}.lc-is-drawer.is-open>.lc-detail-dialog{transform:none}@media (width<=639px){.lc-is-drawer .lc-detail-dialog{border-radius:19px 19px 0 0;width:100vw;height:92vh;max-height:92vh;transform:translateY(30px)}}.teacher-agent-market-page{box-sizing:border-box;min-height:100vh;color:var(--teacher-ink);background:#fbf9f5;padding:24px 28px 44px}.teacher-agent-page-head{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:16px;display:flex}.teacher-agent-page-head>div>span,.teacher-agent-hero>div>span{color:var(--teacher-accent);letter-spacing:.12em;font-size:.66rem;font-weight:800}.teacher-agent-page-head h2{font-family:var(--teacher-serif);margin:5px 0 4px;font-size:1.55rem}.teacher-agent-page-head p{color:var(--teacher-muted);margin:0;font-size:.76rem}.teacher-agent-page-head>a{color:var(--teacher-accent-dark);white-space:nowrap;background:#fff8ed;border:1px solid #d9b483;border-radius:8px;padding:9px 13px;font-size:.7rem;font-weight:750;text-decoration:none}.teacher-agent-hero{background:radial-gradient(circle at 88% 18%,#ca97572e,#0000 26%),linear-gradient(118deg,#fff8ec,#fffdf9);border:1px solid #dfc9ad;border-radius:14px;justify-content:space-between;align-items:center;gap:28px;min-height:124px;padding:22px 25px;display:flex;box-shadow:0 9px 26px #5b3c200f}.teacher-agent-hero h3{font-family:var(--teacher-serif);margin:5px 0;font-size:1.35rem}.teacher-agent-hero p{max-width:650px;color:var(--teacher-muted);margin:0;font-size:.72rem}.teacher-agent-hero-metrics{border-left:1px solid #e4d2ba;flex:0 0 270px;grid-template-columns:1fr 1fr;display:grid}.teacher-agent-hero-metrics span{color:var(--teacher-muted);padding:7px 20px;font-size:.62rem}.teacher-agent-hero-metrics b{color:var(--teacher-accent-dark);font-family:var(--teacher-serif);margin-bottom:2px;font-size:1.35rem;display:block}.teacher-agent-toolbar{justify-content:space-between;align-items:center;gap:14px;margin:18px 0 14px;display:flex}.teacher-agent-toolbar label{border:1px solid var(--teacher-line);min-width:260px;color:var(--teacher-muted);background:#fff;border-radius:9px;align-items:center;gap:7px;padding:0 11px;display:flex}.teacher-agent-toolbar input{width:100%;color:var(--teacher-ink);font:inherit;background:0 0;border:0;outline:0;padding:10px 0;font-size:.7rem}.teacher-agent-toolbar>div{gap:6px;display:flex;overflow-x:auto}.teacher-agent-toolbar button{border:1px solid var(--teacher-line);color:var(--teacher-muted);cursor:pointer;background:#fff;border-radius:16px;flex:none;padding:7px 11px;font-size:.64rem}.teacher-agent-toolbar button.active{color:var(--teacher-accent-dark);background:#fff2df;border-color:#d2a267;font-weight:750}.teacher-agent-result-head{justify-content:space-between;align-items:center;margin:4px 1px 10px;display:flex}.teacher-agent-result-head>div{align-items:center;gap:7px;display:flex}.teacher-agent-result-head>div>span{background:var(--teacher-accent);border-radius:2px;width:3px;height:16px}.teacher-agent-result-head b{font-size:.78rem}.teacher-agent-result-head em{color:var(--teacher-muted);font-size:.62rem;font-style:normal}.teacher-agent-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.teacher-agent-card{border:1px solid var(--teacher-line);background:#fff;border-radius:12px;flex-direction:column;min-width:0;min-height:230px;padding:15px;transition:transform .18s,border-color .18s,box-shadow .18s;display:flex;box-shadow:0 7px 20px #4a321c09}.teacher-agent-card:hover{border-color:#dcb988;transform:translateY(-2px);box-shadow:0 11px 28px #4a321c14}.teacher-agent-card header{align-items:center;gap:9px;display:flex}.teacher-agent-avatar{color:#fff;width:38px;height:38px;font-family:var(--teacher-serif);background:linear-gradient(145deg,#b86f25,#d59a52);border-radius:10px;flex:0 0 38px;place-items:center;font-weight:800;display:grid}.teacher-agent-card header>div:nth-child(2){flex:1;min-width:0}.teacher-agent-card header span,.teacher-agent-card header h3{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.teacher-agent-card header span{color:var(--teacher-accent);font-size:.58rem}.teacher-agent-card h3{margin:3px 0 0;font-size:.82rem}.teacher-agent-card header em{color:var(--teacher-muted);white-space:nowrap;background:#f6eee3;border-radius:11px;align-self:flex-start;padding:4px 6px;font-size:.56rem;font-style:normal}.teacher-agent-card>p{color:var(--teacher-muted);flex:1;margin:14px 0 11px;font-size:.68rem;line-height:1.7}.teacher-agent-tags{flex-wrap:wrap;gap:5px;display:flex}.teacher-agent-tags span,.teacher-agent-detail-tags span{color:#796857;background:#fdfaf6;border:1px solid #eadfd1;border-radius:12px;padding:4px 7px;font-size:.56rem}.teacher-agent-card footer{border-top:1px solid #eee7dc;gap:7px;margin-top:13px;padding-top:11px;display:flex}.teacher-agent-card footer button,.teacher-agent-detail-dialog footer button{color:var(--teacher-ink);cursor:pointer;background:#fff;border:1px solid #ddcfbe;border-radius:7px;flex:1;padding:8px;font-size:.63rem;font-weight:700}.teacher-agent-card footer button.primary,.teacher-agent-detail-dialog footer button.primary{border-color:var(--teacher-accent);background:var(--teacher-accent);color:#fff}.teacher-agent-loading,.teacher-agent-empty{min-height:200px;color:var(--teacher-muted);text-align:center;background:#fff;border:1px dashed #dfd2c1;border-radius:12px;grid-column:1/-1;place-content:center;gap:5px;font-size:.7rem;display:grid}.teacher-agent-empty b{color:var(--teacher-ink);font-size:.78rem}.teacher-agent-empty span{display:block}.teacher-agent-detail-dialog{border:1px solid var(--teacher-line);width:min(540px,100vw - 28px);color:var(--teacher-ink);background:#fffdfa;border-radius:13px;margin:0;padding:0;position:fixed;inset:50% auto auto 50%;transform:translate(-50%,-50%);box-shadow:0 24px 80px #3424153d}.teacher-agent-detail-dialog::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#2f251c5c}.teacher-agent-detail-dialog>div{padding:18px}.teacher-agent-detail-dialog header{align-items:center;gap:10px;display:flex}.teacher-agent-detail-dialog header>div:nth-child(2){flex:1;min-width:0}.teacher-agent-detail-dialog header span{color:var(--teacher-accent);font-size:.61rem}.teacher-agent-detail-dialog h3{margin:3px 0 0;font-size:1rem}.teacher-agent-detail-dialog header button{color:var(--teacher-muted);cursor:pointer;background:0 0;border:0;font-size:1.3rem}.teacher-agent-detail-dialog>div>p{color:var(--teacher-muted);font-size:.72rem;line-height:1.7}.teacher-agent-detail-dialog h4{margin:15px 0 8px;font-size:.7rem}.teacher-agent-detail-tags{flex-wrap:wrap;gap:6px;display:flex}.teacher-agent-detail-dialog aside{color:var(--teacher-muted);background:#fff7eb;border-left:3px solid #d5a56b;margin:16px 0;padding:10px;font-size:.64rem;line-height:1.6}.teacher-agent-detail-dialog footer{justify-content:flex-end;gap:7px;display:flex}.teacher-agent-detail-dialog footer button{flex:none;padding:8px 12px}@media (width<=1050px){.teacher-agent-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-agent-toolbar{flex-direction:column;align-items:stretch}.teacher-agent-toolbar label{min-width:0}.teacher-agent-hero-metrics{flex-basis:220px}}@media (width<=700px){.teacher-agent-market-page{padding:16px 12px 30px}.teacher-agent-page-head{align-items:flex-start}.teacher-agent-page-head>a{display:none}.teacher-agent-hero{flex-direction:column;align-items:flex-start}.teacher-agent-hero-metrics{box-sizing:border-box;border-top:1px solid #e4d2ba;border-left:0;width:100%}.teacher-agent-grid{grid-template-columns:1fr}}.teacher-publisher-page{box-sizing:border-box;min-height:100vh;color:var(--teacher-ink);background:#fbf9f5;padding:18px 22px 30px}.publisher-steps{border:1px solid var(--teacher-line);background:#fff;border-radius:10px;gap:5px;margin:10px 0;padding:8px;display:flex;overflow-x:auto}.publisher-steps button{min-width:105px;color:var(--teacher-muted);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:7px;flex:1;align-items:center;gap:5px;padding:7px 8px;font-size:.65rem;display:flex}.publisher-steps button i{background:#efe8df;border-radius:50%;place-items:center;width:19px;height:19px;font-size:.55rem;font-style:normal;display:grid}.publisher-steps button.active{color:var(--teacher-ink);background:#f5e6d1;font-weight:700}.publisher-steps button.active i{background:var(--teacher-accent);color:#fff}.publisher-shell{grid-template-columns:minmax(0,1fr) 230px;gap:10px;display:grid}.publisher-main,.publisher-summary{border:1px solid var(--teacher-line);background:#fff;border-radius:10px;min-width:0}.publisher-panel{min-height:460px;padding:16px}.publisher-panel>header{border-bottom:1px solid #eee7dc;margin-bottom:14px;padding-bottom:10px}.publisher-panel h3{color:var(--teacher-ink);margin:0;font-size:.9rem}.publisher-panel header p{color:var(--teacher-muted);margin:4px 0 0;font-size:.65rem}.publisher-context-note{border-left:3px solid var(--teacher-accent);color:var(--teacher-muted);background:#faf4ea;margin-top:14px;padding:10px;font-size:.68rem}.publisher-composition{border:1px solid var(--teacher-line);background:#fcfaf6;border-radius:8px;flex-wrap:wrap;align-items:end;gap:8px;padding:9px;display:flex}.publisher-composition>div{flex-wrap:wrap;gap:5px;display:flex}.publisher-composition label{color:var(--teacher-muted);align-items:center;gap:4px;font-size:.62rem;display:flex}.publisher-composition input[type=number]{width:48px}.publisher-question-picker{border:1px solid var(--teacher-line);border-radius:8px;max-height:330px;margin-top:9px;overflow:auto}.publisher-question-tools{z-index:1;border-bottom:1px solid var(--teacher-line);background:#f8f3eb;justify-content:space-between;padding:8px;font-size:.62rem;display:flex;position:sticky;top:0}.publisher-question-row{border-bottom:1px solid #eee8df;grid-template-columns:auto minmax(0,1fr) 65px;align-items:center;gap:8px;padding:8px;display:grid}.publisher-question-row span{min-width:0}.publisher-question-row b,.publisher-question-row small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.publisher-question-row b{font-size:.67rem}.publisher-question-row small{color:var(--teacher-muted);margin-top:2px;font-size:.58rem}.publisher-validation{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.publisher-validation span{color:var(--teacher-muted);background:#f1eee9;border-radius:12px;padding:4px 7px;font-size:.6rem}.publisher-validation .ok{color:#36704c;background:#e6f1e9}.publisher-validation .warn{color:#9e5c16;background:#fff0dc}.publisher-rule-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-bottom:12px;display:grid}.publisher-rule-grid label,.publisher-resource-list label,.publisher-confirm>label{border:1px solid var(--teacher-line);color:var(--teacher-ink);background:#fdfbf8;border-radius:7px;padding:8px;font-size:.65rem}.publisher-resource-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.publisher-resource-list label{align-items:flex-start;gap:7px;display:flex}.publisher-resource-list b,.publisher-resource-list small{display:block}.publisher-resource-list small{color:var(--teacher-muted);margin-top:2px}.publisher-preview h3{font-size:1.05rem}.publisher-preview dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.publisher-preview dl div{border:1px solid var(--teacher-line);border-radius:7px;padding:9px}.publisher-preview dt{color:var(--teacher-muted);font-size:.58rem}.publisher-preview dd{margin:3px 0 0;font-size:.68rem}.publisher-confirm{gap:8px;max-width:640px;display:grid}.publisher-confirm>label{align-items:center;gap:7px;display:flex}.publisher-confirm .confirm-check{background:#fff6e8;margin-top:15px}.publisher-summary{align-self:start;padding:12px;position:sticky;top:12px}.publisher-summary h3{margin:0 0 9px;font-size:.78rem}.publisher-summary dl{margin:0}.publisher-summary dl div{border-bottom:1px solid #eee8df;justify-content:space-between;gap:8px;padding:7px 0;display:flex}.publisher-summary dt{color:var(--teacher-muted);font-size:.6rem}.publisher-summary dd{text-align:right;margin:0;font-size:.63rem}.publisher-summary-tip{color:var(--teacher-muted);background:#faf4ea;border-radius:7px;margin-top:10px;padding:8px;font-size:.58rem;line-height:1.5}.publisher-footer{grid-column:1/-1;justify-content:flex-end;align-items:center;gap:8px;padding-top:2px;display:flex}.publisher-footer span{color:var(--teacher-muted);font-size:.62rem}@media (width<=980px){.publisher-shell{grid-template-columns:1fr}.publisher-summary{grid-row:2;position:static}.publisher-panel{min-height:390px}}@media (width<=650px){.teacher-publisher-page{padding:12px}.publisher-rule-grid,.publisher-resource-list,.publisher-preview dl{grid-template-columns:1fr}.publisher-panel{padding:12px}.publisher-summary{display:none}}.teacher-question-page{box-sizing:border-box;min-height:100vh;color:var(--teacher-ink);background:#fbf9f5;padding:18px 22px 30px}.qb-filter-shell{border:1px solid var(--teacher-line);background:#fff;border-radius:10px 10px 0 0}.qb-filters,.qb-batch{background:#fff;flex-wrap:nowrap;align-items:center;gap:6px;padding:8px;display:flex}.qb-filters input,.qb-filters select{min-width:105px;max-width:180px}.qb-filters input{flex:1;min-width:180px}.qb-advanced{background:#fcfaf7;border-top:1px solid #eee8df;justify-content:flex-end;align-items:end;gap:8px;padding:8px;display:flex}.qb-advanced[hidden],.qb-batch[hidden]{display:none!important}.qb-advanced label{color:var(--teacher-muted);gap:3px;font-size:.56rem;display:grid}.qb-advanced select{min-width:125px}.qb-advanced #qb-export{margin-left:auto}.qb-batch{background:#fff6e8;border:1px solid #e3d5c2;border-top:0;font-size:.62rem}.qb-table-card{border:1px solid var(--teacher-line);background:#fff;border-top:0;border-radius:0 0 10px 10px;overflow:hidden}.qb-table-wrap{max-height:calc(100vh - 245px);overflow:auto}.qb-table-card table{border-collapse:collapse;white-space:nowrap;width:100%}.qb-table-card th{z-index:1;color:var(--teacher-muted);text-align:left;background:#f6f0e8;padding:8px;font-size:.58rem;position:sticky;top:0}.qb-table-card td{border-top:1px solid #eee8df;padding:8px;font-size:.63rem}.qb-table-card td:nth-child(2){white-space:normal;min-width:240px;max-width:420px}.qb-table-card td b,.qb-table-card td small{display:block}.qb-table-card td small{color:var(--teacher-muted);margin-top:3px;font-size:.55rem}.qb-table-card footer{border-top:1px solid var(--teacher-line);justify-content:space-between;align-items:center;padding:8px 10px;font-size:.62rem;display:flex}.qb-table-card footer>div{align-items:center;gap:6px;display:flex}.qb-difficulty,.qb-status{border-radius:10px;padding:3px 6px;display:inline-block}.qb-difficulty.basic,.qb-status.active{color:#37714c;background:#e7f2e9}.qb-difficulty.medium,.qb-status.pending{color:#9b611c;background:#fff0d8}.qb-difficulty.hard,.qb-status.disabled{color:#9b4735;background:#f7e4df}.qb-link{color:var(--teacher-accent);cursor:pointer;background:0 0;border:0;padding:3px}.qb-link.danger,.teacher-btn.danger{color:#9b4735}.teacher-btn.danger{background:#fff8f6;border-color:#e7c5bc}.teacher-dialog>form>textarea{box-sizing:border-box;border:1px solid var(--teacher-line);border-radius:8px;width:100%;padding:9px;font:12px/1.5 ui-monospace,monospace}.dialog-note{color:var(--teacher-muted);font-size:.62rem}.qb-ai-dialog{width:min(760px,100vw - 30px)}.qb-ai-preview{border:1px solid var(--teacher-line);border-radius:8px;max-height:300px;margin-top:10px;overflow:auto}.qb-ai-preview article{border-bottom:1px solid #eee8df;padding:8px}.qb-ai-preview label{gap:7px;display:flex}.qb-ai-preview b,.qb-ai-preview small{display:block}.qb-ai-preview small{color:var(--teacher-muted);margin-top:3px}@media (width<=900px){.qb-filters{flex-wrap:wrap}.qb-advanced{flex-wrap:wrap;justify-content:flex-start}.qb-advanced #qb-export{margin-left:0}}@media (width<=700px){.teacher-question-page{padding:12px}.qb-table-wrap{max-height:none}}.class-domain-switch{align-items:center;gap:5px;margin-bottom:10px;display:flex}.class-domain-switch button{border:1px solid var(--teacher-line,#dfd2c1);color:#75634f;cursor:pointer;background:#fff;border-radius:16px;padding:6px 12px}.class-domain-switch button.active{color:#fff;background:#8c653b;border-color:#8c653b}.class-domain-switch span{color:#887867;margin-left:5px;font-size:.7rem}.class-import-layer{z-index:1200;background:#2b1f145c;place-items:center;display:grid;position:fixed;inset:0}.class-import-layer>div{background:#fff;border:1px solid #dfd2c1;border-radius:12px;width:min(440px,100vw - 30px);padding:18px;box-shadow:0 20px 60px #2a1e1333}.class-import-layer h3{margin:0}.class-import-layer p{color:#786958;font-size:.75rem}.class-import-layer select{background:#fff;border:1px solid #dfd2c1;border-radius:8px;width:100%;padding:9px}.class-import-layer footer{justify-content:flex-end;gap:7px;margin-top:15px;display:flex}.class-import-layer button{cursor:pointer;background:#fff;border:1px solid #d8c7b2;border-radius:7px;padding:7px 12px}.class-import-layer button[data-confirm]{color:#fff;background:#8c653b;border-color:#8c653b}@media (width<=700px){.class-domain-switch{flex-wrap:wrap;align-items:flex-start}.class-domain-switch span{flex-basis:100%}}.teacher-class-workspace{box-sizing:border-box;min-height:100vh;color:var(--teacher-ink,#332b24);background:#f8f7f4;padding:18px 22px 32px}.teacher-class-list-head{margin:0 0 12px}.teacher-class-list-head span{color:#3f6f70;font-size:.6rem;font-weight:800}.teacher-class-list-head h2{color:var(--teacher-ink,#332b24);letter-spacing:0;margin:3px 0;font-size:1.18rem}.teacher-class-list-head p{color:var(--teacher-muted,#7d7064);margin:0;font-size:.68rem}.teacher-class-management-grid{grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:12px;display:grid}.teacher-class-management-card{border:1px solid var(--teacher-line,#dfd6ca);background:#fff;border-radius:8px;padding:14px}.teacher-class-management-card>header{justify-content:space-between;align-items:start;gap:8px;display:flex}.teacher-class-management-card>header span{color:#3f6f70;font-size:.6rem;font-weight:700}.teacher-class-management-card h4{color:var(--teacher-ink,#332b24);margin:3px 0 0;font-size:.9rem}.teacher-class-management-card>header em{color:#31704e;background:#e8f2ec;border-radius:7px;padding:3px 6px;font-size:.55rem;font-style:normal}.teacher-class-management-card>p{min-height:35px;color:var(--teacher-muted,#7d7064);margin:8px 0;font-size:.63rem;line-height:1.55}.teacher-class-management-card dl{grid-template-columns:repeat(4,1fr);gap:5px;margin:0 0 9px;display:grid}.teacher-class-management-card dl div{background:#f5f3ef;border-radius:7px;min-width:0;padding:7px 5px}.teacher-class-management-card dt{color:var(--teacher-muted,#7d7064);text-overflow:ellipsis;white-space:nowrap;font-size:.52rem;overflow:hidden}.teacher-class-management-card dd{color:#2f6968;margin:3px 0 0;font-size:.83rem;font-weight:800}.teacher-class-management-card dd i{color:var(--teacher-muted,#7d7064);margin-left:2px;font-size:.5rem;font-style:normal}.teacher-class-management-card dl .risk dd{color:#a34b36}.teacher-class-management-card>.cl-open{color:#fff;cursor:pointer;background:#356f70;border:0;border-radius:7px;width:100%;padding:8px;font-weight:700}.teacher-class-management-card>footer{border-top:1px solid #ebe5dd;justify-content:flex-end;gap:5px;margin-top:8px;padding-top:8px;display:flex}.teacher-class-management-card>footer button{color:#6d6258;cursor:pointer;background:0 0;border:0;padding:3px 5px;font-size:.58rem}.teacher-class-management-card>footer .cl-del{color:#a13b31}.teacher-class-scope{color:#365f60;background:#edf4f3;border-left:3px solid #3f6f70;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;padding:8px 10px;font-size:.68rem;display:flex}.teacher-class-scope a{color:#326b86;font-weight:700;text-decoration:none}.teacher-dashboard-classes{margin:10px 0}.teacher-dashboard-classes>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.teacher-dashboard-classes>div>button{border:1px solid var(--teacher-line,#dfd6ca);min-width:0;color:var(--teacher-ink,#332b24);text-align:left;cursor:pointer;background:#fff;border-radius:8px;padding:10px}.teacher-dashboard-classes button>span,.teacher-dashboard-classes button>b{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.teacher-dashboard-classes button>span{color:#3f6f70;font-size:.57rem}.teacher-dashboard-classes button>b{margin-top:2px;font-size:.74rem}.teacher-dashboard-classes dl{grid-template-columns:repeat(4,1fr);gap:4px;margin:8px 0 0;display:grid}.teacher-dashboard-classes dl div{border-top:1px solid #eee8e1;min-width:0;padding-top:6px}.teacher-dashboard-classes dt{color:var(--teacher-muted,#7d7064);text-overflow:ellipsis;white-space:nowrap;font-size:.51rem;overflow:hidden}.teacher-dashboard-classes dd{color:#2f6968;margin:2px 0 0;font-size:.61rem;font-weight:800}.teacher-dashboard-classes .risk dd{color:#a34b36}.teacher-dashboard-classes-empty{color:var(--teacher-muted,#7d7064);text-align:center;grid-column:1/-1;padding:18px;font-size:.68rem}.class-workspace-header{border-bottom:1px solid var(--teacher-line,#dfd6ca);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;padding:4px 0 18px;display:grid}.class-workspace-header h2{letter-spacing:0;margin:3px 0 5px;font-size:1.45rem}.class-workspace-header p{color:var(--teacher-muted,#7d7064);margin:0;font-size:.72rem}.class-workspace-header>div>span{color:#3f6f70;font-size:.66rem;font-weight:700}.class-back{color:var(--teacher-accent-dark,#8a531f);cursor:pointer;background:0 0;border:0;padding:7px 0;font-weight:700}.class-overview-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:12px 0;display:grid}.class-overview-grid article{border:1px solid var(--teacher-line,#dfd6ca);background:#fff;border-radius:8px;min-width:0;padding:11px 13px}.class-overview-grid span{color:var(--teacher-muted,#7d7064);font-size:.65rem;display:block}.class-overview-grid b{color:#2f5f60;margin-top:4px;font-size:1.22rem;display:block}.class-overview-grid b i{color:var(--teacher-muted,#7d7064);margin-left:3px;font-size:.6rem;font-style:normal}.class-overview-grid .risk b{color:#a34b36}.class-workspace-tabs{border-bottom:1px solid var(--teacher-line,#dfd6ca);gap:3px;display:flex;overflow-x:auto}.class-workspace-tabs button{color:var(--teacher-muted,#7d7064);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;flex:none;padding:10px 13px;font-size:.7rem;font-weight:700}.class-workspace-tabs button.active{color:#2f5f60;border-color:#3f6f70}.class-workspace-panel{min-height:350px;padding-top:12px}.class-workspace-panel>header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.class-workspace-panel>header h3{margin:0;font-size:.9rem}.class-workspace-panel>header p{color:var(--teacher-muted,#7d7064);margin:3px 0 0;font-size:.66rem}.class-workspace-table-wrap{border:1px solid var(--teacher-line,#dfd6ca);background:#fff;border-radius:8px;overflow:auto}.class-workspace-table{border-collapse:collapse;width:100%;min-width:760px}.class-workspace-table th{color:var(--teacher-muted,#7d7064);text-align:left;background:#f3f0eb;padding:10px 12px;font-size:.62rem}.class-workspace-table td{color:#63594f;border-top:1px solid #ebe5dd;padding:10px 12px;font-size:.67rem}.class-workspace-table td strong{color:#2f5f60}.class-workspace-table td em{margin-left:5px;font-style:normal}.class-student-name{color:var(--teacher-ink,#332b24);align-items:center;gap:7px;display:flex}.class-student-name i{color:#2f6968;background:#e2eeec;border-radius:50%;place-items:center;width:28px;height:28px;font-style:normal;font-weight:800;display:grid}.class-progress{vertical-align:middle;background:#e7e3dd;border-radius:3px;width:72px;height:5px;display:inline-block;overflow:hidden}.class-progress i{width:var(--value);background:#3f7f75;height:100%;display:block}.class-risk{color:#31704e;white-space:nowrap;background:#e8f2ec;border-radius:7px;padding:3px 7px;font-size:.58rem;font-weight:700;display:inline-flex}.class-risk.attention{color:#9a5d18;background:#fff0d8}.class-risk.high{color:#a13b31;background:#fde5e1}.class-link{color:#326b86;cursor:pointer;background:0 0;border:0;padding:2px;font-weight:700}.class-resource-list,.class-assignment-list,.class-question-list{gap:7px;display:grid}.class-resource-list article,.class-assignment-list>button{border:1px solid var(--teacher-line,#dfd6ca);text-align:left;background:#fff;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;padding:10px 12px;display:grid}.class-assignment-list>button{color:inherit;cursor:pointer}.class-resource-list b,.class-assignment-list b{font-size:.73rem;display:block}.class-resource-list p,.class-assignment-list p{color:var(--teacher-muted,#7d7064);margin:3px 0 0;font-size:.61rem}.class-resource-type,.class-task-type{color:#326b68;background:#e5efee;border-radius:7px;place-items:center;min-width:46px;height:34px;font-size:.57rem;font-weight:800;display:grid}.class-task-type.exam{color:#9a4d32;background:#fce8df}.class-task-type.homework{color:#3c6283;background:#e6edf5}.class-resource-list dl,.class-assignment-list dl{gap:7px;margin:0;display:flex}.class-resource-list dl div,.class-assignment-list dl div{text-align:center;border-left:1px solid #e7e0d7;min-width:54px;padding:5px}.class-resource-list dt,.class-assignment-list dt{color:var(--teacher-muted,#7d7064);font-size:.54rem}.class-resource-list dd,.class-assignment-list dd{color:var(--teacher-ink,#332b24);margin:2px 0 0;font-size:.65rem;font-weight:700}.class-question-summary{grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;margin-bottom:9px;display:grid}.class-question-summary section{border:1px solid var(--teacher-line,#dfd6ca);background:#fff;border-radius:8px;padding:9px}.class-question-summary strong,.class-question-summary span{display:block}.class-question-summary strong{color:#2f6968;font-size:1rem}.class-question-summary span{color:var(--teacher-muted,#7d7064);margin-top:2px;font-size:.56rem}.class-question-list button{text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #e6e0d8;grid-template-columns:70px minmax(0,1fr) 160px;gap:8px;width:100%;padding:8px 3px;display:grid}.class-question-list span,.class-question-list em{color:var(--teacher-muted,#7d7064);font-size:.6rem;font-style:normal}.class-question-list b{text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}.class-resource-matching{border:1px solid var(--teacher-line,#dfd6ca);background:#fff;border-radius:8px}.class-resource-matching>header,.class-resource-matching article,.class-resource-matching footer{padding:11px 13px}.class-resource-matching>header{border-bottom:1px solid #e7e0d8;justify-content:space-between;align-items:center;display:flex}.class-resource-matching header b{font-size:.78rem}.class-resource-matching header p,.class-resource-matching article p{color:var(--teacher-muted,#7d7064);margin:3px 0 0;font-size:.62rem}.class-resource-matching header>span{color:#2f6968;font-size:.64rem;font-weight:800}.class-resource-matching article{border-bottom:1px solid #eee8e1;grid-template-columns:12px minmax(0,1fr) auto;align-items:center;gap:9px;display:grid}.class-resource-matching article i{background:#d39a4e;border-radius:50%;width:8px;height:8px}.class-resource-matching article i.ready{background:#3f8b64}.class-resource-matching article>span{color:#8b5a2b;font-size:.58rem;font-weight:700}.class-resource-matching footer{justify-content:flex-end;gap:7px;display:flex}.class-workspace-empty{min-height:260px;color:var(--teacher-muted,#7d7064);text-align:center;place-items:center;gap:7px;padding:24px;display:grid}.class-workspace-empty b{color:var(--teacher-ink,#332b24)}.class-workspace-empty span{font-size:.68rem}@media (width<=900px){.teacher-class-workspace{padding:14px}.class-workspace-header{grid-template-columns:1fr auto}.class-workspace-header .class-back{grid-column:1/-1;justify-self:start}.class-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.class-question-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.teacher-dashboard-classes>div{grid-template-columns:1fr}}@media (width<=560px){.class-workspace-header{grid-template-columns:1fr}.class-workspace-header>.teacher-btn{justify-self:start}.class-resource-list article,.class-assignment-list>button{grid-template-columns:auto minmax(0,1fr)}.class-resource-list dl,.class-assignment-list dl{grid-column:1/-1}.class-question-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.class-question-list button{grid-template-columns:60px minmax(0,1fr)}.class-question-list em{grid-column:2}}.course-offering-strip{gap:8px;margin-bottom:12px;display:flex;overflow-x:auto}.course-offering-strip article{background:#fffaf3;border:1px solid #dfd2c1;border-radius:9px;min-width:210px;padding:9px}.course-offering-strip b,.course-offering-strip span,.course-offering-strip small{display:block}.course-offering-strip span,.course-offering-strip small{color:#786958;margin-top:3px;font-size:.68rem}.tsp-portrait-card{margin-bottom:20px;overflow:hidden}.tsp-card-heading{border-bottom:1px solid var(--border);margin:-4px -4px 0;padding:0 4px 16px}.tsp-card-heading .card-title{margin-bottom:4px}.tsp-card-heading p{color:var(--text-muted);margin:0;font-size:12px}.tsp-evaluation-top{border-bottom:1px solid var(--border);grid-template-columns:150px minmax(0,1fr);display:grid}.tsp-score-block,.tsp-summary-block{padding:18px 4px}.tsp-score-block{border-right:1px solid var(--border);flex-direction:column;justify-content:center;align-items:center;display:flex}.tsp-score-block span,.tsp-score-block small{color:var(--text-muted);font-size:11px}.tsp-score-block strong{color:#1f4f7a;margin:5px 0 2px;font-size:38px;line-height:1.1}.tsp-summary-block{padding-left:20px}.tsp-summary-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.tsp-summary-heading h4,.tsp-dimensions h4,.tsp-insights h4{color:var(--text-primary);margin:0;font-size:14px}.tsp-summary-block p{color:var(--text-secondary);margin:8px 0 0;font-size:13px;line-height:1.65}.tsp-risk-badge{white-space:nowrap;border-radius:999px;flex-shrink:0;padding:3px 8px;font-size:11px;font-weight:600;display:inline-flex}.tsp-risk-normal{color:#166534;background:#dcfce7}.tsp-risk-attention{color:#92400e;background:#fef3c7}.tsp-risk-high{color:#b91c1c;background:#fee2e2}.tsp-risk-reasons{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.tsp-risk-reasons span{border:1px solid var(--border);color:var(--text-muted);background:#f8fafc;border-radius:4px;padding:3px 7px;font-size:11px}.tsp-evaluation-body{grid-template-columns:minmax(0,1.35fr) minmax(280px,1fr);gap:0;display:grid}.tsp-dimensions,.tsp-insights{min-width:0;padding:18px 4px 2px}.tsp-dimensions{border-right:1px solid var(--border);padding-right:20px}.tsp-dimension-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px;margin-top:14px;display:grid}.tsp-dimension-head{color:var(--text-secondary);justify-content:space-between;align-items:baseline;font-size:12px;display:flex}.tsp-dimension-head strong{color:var(--text-primary);font-size:14px}.tsp-dimension-track{background:#e7edf3;border-radius:3px;height:6px;margin-top:5px;overflow:hidden}.tsp-dimension-track span{border-radius:inherit;background:#2f7baa;height:100%;display:block}.tsp-dimension-row small{color:var(--text-muted);margin-top:4px;font-size:10px;display:block}.tsp-insights{gap:18px;padding-left:20px;display:grid}.tsp-weak-list,.tsp-suggestion-list{margin-top:10px}.tsp-weak-list>div{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;padding:7px 0;font-size:12px;display:flex}.tsp-weak-list strong{color:#b45309;flex-shrink:0;font-size:11px}.tsp-suggestion-list{color:var(--text-secondary);padding-left:18px;font-size:12px;line-height:1.6}.tsp-suggestion-list li+li{margin-top:5px}.tsp-empty-text{color:var(--text-muted);margin:10px 0 0;font-size:12px}.tsp-list-evaluation{white-space:nowrap;justify-content:center;align-items:center;gap:7px;display:flex}.tsp-list-evaluation strong{color:var(--text-primary);font-size:13px}.tsp-list-evaluation small{color:var(--text-muted);font-size:10px}@media (width<=980px){.tsp-evaluation-body{grid-template-columns:1fr}.tsp-dimensions{border-bottom:1px solid var(--border);border-right:0;padding-right:4px}.tsp-insights{grid-template-columns:repeat(2,minmax(0,1fr));padding-left:4px}}@media (width<=680px){.tsp-evaluation-top{grid-template-columns:1fr}.tsp-score-block{border-bottom:1px solid var(--border);border-right:0}.tsp-summary-block{padding-left:4px}.tsp-dimension-list,.tsp-insights{grid-template-columns:1fr}.tsp-list-evaluation{flex-direction:column;align-items:flex-start;gap:3px}}.student-teaching-tasks{max-width:1500px;margin:0 auto;padding:22px}.student-teaching-tasks>header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:18px;display:flex}.student-teaching-tasks>header span{color:#5d7897;letter-spacing:.08em;font-size:.76rem;font-weight:700}.student-teaching-tasks h2{color:#20364f;margin:4px 0 5px;font-size:1.55rem}.student-teaching-tasks>header p{color:#718096;margin:0}.student-teaching-tasks button{color:#2f5578;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #cdd9e5;border-radius:8px;padding:8px 14px}.student-task-filters{background:#fff;border:1px solid #e3e9ef;border-radius:12px;flex-wrap:wrap;align-items:flex-end;gap:10px;padding:14px;display:flex}.student-task-filters label{color:#63758a;gap:5px;font-size:.78rem;display:grid}.student-task-filters select{color:#263d55;background:#fff;border:1px solid #d5dee8;border-radius:8px;min-width:135px;padding:8px 10px}.student-task-filters button,.student-teaching-task-card>button{color:#fff;background:#466f96;border-color:#466f96}.student-task-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0;display:grid}.student-task-summary article{background:#fff;border:1px solid #e3e9ef;border-radius:10px;align-items:baseline;gap:8px;padding:12px 15px;display:flex}.student-task-summary b{color:#315b80;font-size:1.25rem}.student-task-summary span{color:#718096;font-size:.8rem}#student-task-list{grid-template-columns:repeat(auto-fill,minmax(285px,1fr));gap:12px;display:grid}.student-teaching-task-card{background:#fff;border:1px solid #e3e9ef;border-left:3px solid #6287aa;border-radius:12px;padding:17px;box-shadow:0 5px 16px #2b455e0d}.student-teaching-task-card[data-status=completed]{border-left-color:#668b75}.student-teaching-task-card[data-status=overdue]{border-left-color:#a87967}.student-task-card-head{justify-content:space-between;align-items:center;display:flex}.student-task-card-head span{color:#466f96;background:#edf3f8;border-radius:999px;padding:3px 8px;font-size:.73rem}.student-task-card-head em{color:#778798;font-size:.75rem;font-style:normal}.student-teaching-task-card h3{color:#263d55;margin:11px 0 5px;font-size:1rem}.student-teaching-task-card>p{color:#718096;margin:0 0 12px;font-size:.82rem}.student-teaching-task-card dl{grid-template-columns:1fr 1fr;gap:7px;margin:0 0 13px;display:grid}.student-teaching-task-card dl div{background:#f7f9fb;border-radius:6px;justify-content:space-between;gap:8px;padding:7px;display:flex}.student-teaching-task-card dt,.student-teaching-task-card dd{margin:0;font-size:.76rem}.student-teaching-task-card dt{color:#8290a0}.student-teaching-task-card dd{color:#334c66}.student-teaching-task-card>button{width:100%}.student-task-empty{text-align:center;color:#8290a0;background:#fff;border:1px dashed #d6e0e9;border-radius:12px;grid-column:1/-1;padding:54px}@media (width<=800px){.student-teaching-tasks{padding:14px}.student-task-summary{grid-template-columns:1fr 1fr}.student-task-filters label{flex:1;min-width:130px}.student-task-filters select{width:100%;min-width:0}}@media (prefers-reduced-motion:no-preference){.student-teaching-task-card{transition:transform .18s,box-shadow .18s}.student-teaching-task-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px #2b455e17}}.learning-media-card{color:#14324a;background:#fff;border:1px solid #d8e8ee;border-radius:18px;margin:24px 0;padding:24px;box-shadow:0 10px 28px #194c6312}.learning-media-head{justify-content:space-between;gap:16px;margin-bottom:20px;display:flex}.learning-media-head span{color:#2188a5;letter-spacing:.08em;margin-bottom:6px;font-size:12px;font-weight:800;display:block}.learning-media-head h3{margin:0 0 7px;font-size:22px}.learning-media-head p{color:#607b8d;margin:0;line-height:1.6}.learning-media-form{background:#f5fafc;border-radius:14px;grid-template-columns:minmax(220px,2fr) minmax(180px,1.2fr) 100px auto auto auto;align-items:end;gap:12px;padding:16px;display:grid}.learning-media-form label{color:#486b7d;flex-direction:column;gap:7px;min-width:0;font-size:13px;font-weight:700;display:flex}.learning-media-form input,.learning-media-form select{color:#14324a;box-sizing:border-box;background:#fff;border:1px solid #cfe1e8;border-radius:10px;width:100%;min-height:40px;padding:8px 11px}.learning-media-form .learning-media-check{white-space:nowrap;flex-direction:row;align-items:center;min-height:40px}.learning-media-check input{width:17px;min-height:17px}.learning-media-primary,.learning-package-primary,.learning-media-toolbar button,.learning-ppt-nav button,.learning-package-actions button,.learning-package-progress button{color:#205a72;cursor:pointer;background:#fff;border:1px solid #bfd7e0;border-radius:10px;min-height:38px;padding:8px 15px;font-weight:700}.learning-media-primary{color:#fff!important;background:#2188a5!important;border-color:#2188a5!important}.learning-package-primary{color:#fff;white-space:nowrap;background:#315b74;border-color:#315b74}.learning-media-primary:disabled,.learning-package-primary:disabled,.learning-media-toolbar button:disabled,.learning-ppt-nav button:disabled{cursor:not-allowed;opacity:.55}.learning-media-error,.learning-media-warning{color:#a33b4b;background:#fff0f1;border-radius:10px;margin-top:14px;padding:11px 14px;font-size:14px}.learning-media-warning{color:#8b651a;background:#fff8e9}.learning-package-result{background:linear-gradient(145deg,#f8fbfc,#eef7fa);border:1px solid #cfe4ea;border-radius:15px;margin-top:18px;padding:16px}.learning-package-summary{justify-content:space-between;align-items:center;gap:20px;margin-bottom:14px;display:flex}.learning-package-summary>div:first-child{gap:3px;display:grid}.learning-package-summary span{color:#2188a5;letter-spacing:.06em;font-size:12px;font-weight:800}.learning-package-summary b{font-size:18px}.learning-package-summary small{color:#607b8d}.learning-package-progress{text-align:right;gap:5px;min-width:190px;display:grid}.learning-package-progress strong{color:#2188a5}.learning-package-progress progress{accent-color:#2188a5;width:100%;height:8px}.learning-package-progress button{color:#9a3343;border-color:#d998a2;justify-self:end;min-height:32px;padding:5px 11px;font-size:12px}.learning-package-progress button:disabled{cursor:not-allowed;opacity:.55}.learning-package-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.learning-package-item{background:#fff;border:1px solid #d8e8ee;border-radius:13px;grid-template-columns:30px minmax(0,1fr);gap:9px;min-height:132px;padding:13px;display:grid}.learning-package-index{color:#2188a5;background:#e8f4f7;border-radius:50%;place-items:center;width:28px;height:28px;font-weight:800;display:grid}.learning-package-copy{flex-direction:column;gap:5px;min-width:0;display:flex}.learning-package-copy b{font-size:14px}.learning-package-copy span,.learning-package-copy small{color:#607b8d;font-size:12px;line-height:1.45}.learning-package-copy small.is-error{color:#a33b4b}.learning-package-item.status-ready{border-color:#a8d5c6}.learning-package-item.status-failed{background:#fffafb;border-color:#efc1c7}.learning-package-item.status-generating{border-color:#afd7e5;box-shadow:inset 0 3px #2188a5}.learning-package-actions{grid-column:1/-1;align-items:end;gap:7px;margin-top:auto;display:flex}.learning-package-actions button{min-height:32px;padding:5px 10px;font-size:12px}.learning-package-notice{color:#315b74;background:#e8f4f7;border-radius:10px;margin-top:12px;padding:10px 12px;font-size:13px;line-height:1.55}.learning-ppt-result,.learning-video-result{border:1px solid #d9e8ee;border-radius:15px;margin-top:18px;overflow:hidden}.learning-media-toolbar{background:#f8fbfc;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;display:flex}.learning-media-toolbar>div{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.learning-media-toolbar>div:first-child{flex-direction:column;align-items:flex-start;gap:3px}.learning-media-toolbar span{color:#607b8d;font-size:13px}.learning-ppt-stage{background:#f8fbfc;grid-template-columns:minmax(0,1.55fr) minmax(260px,.9fr);min-height:410px;display:grid}.learning-ppt-copy{background:#fff;padding:42px 46px}.learning-ppt-copy small{color:#2188a5;font-weight:800}.learning-ppt-copy h4{margin:15px 0 12px;font-size:30px}.learning-ppt-copy p{color:#607b8d}.learning-ppt-copy ul{flex-direction:column;gap:16px;padding-left:22px;font-size:17px;line-height:1.55;display:flex}.learning-ppt-image{color:#607b8d;text-align:center;background:#eaf4f7;border:1px solid #d6e8ee;border-radius:16px;place-items:center;margin:28px;display:grid;overflow:hidden}.learning-ppt-image img{object-fit:cover;width:100%;height:100%}.learning-ppt-image span{padding:26px;line-height:1.6}.learning-ppt-nav{background:#f8fbfc;justify-content:center;align-items:center;gap:16px;padding:12px;display:flex}.learning-video-status{background:#eef7fa;border-radius:12px;grid-template-columns:auto 1fr;align-items:center;gap:5px 14px;margin-top:16px;padding:14px 16px;display:grid}.learning-video-status span{color:#607b8d}.learning-video-status progress{grid-column:1/-1;width:100%;height:8px}.learning-video-player{background:#122936;padding:14px}.learning-video-player video{border-radius:10px}.learning-video-result .learning-media-warning{margin:14px}.learning-media-card button:focus-visible,.learning-media-card input:focus-visible,.learning-media-card select:focus-visible{outline-offset:2px;outline:3px solid #2188a538}@media (width<=1180px){.learning-media-form{grid-template-columns:1fr 1fr 100px auto}.learning-package-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=980px){.learning-media-form{grid-template-columns:1fr 1fr}.learning-media-form .learning-media-primary,.learning-media-form .learning-package-primary{width:100%}.learning-package-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.learning-ppt-stage{grid-template-columns:1fr}.learning-ppt-image{min-height:260px}.learning-media-toolbar{flex-direction:column;align-items:flex-start}}@media (width<=640px){.learning-media-card{padding:16px}.learning-media-form{grid-template-columns:1fr}.learning-package-summary{flex-direction:column;align-items:stretch}.learning-package-progress{text-align:left;min-width:0}.learning-package-grid{grid-template-columns:1fr}.learning-ppt-copy{padding:28px 24px}.learning-ppt-copy h4{font-size:24px}.learning-media-toolbar>div:last-child{width:100%}.learning-media-toolbar button{flex:1}}.compiler-page{gap:14px;max-width:1500px;margin:0 auto;padding:18px 0 34px;display:grid}.compiler-page-head{background:#fff;border:1px solid #dce7ec;border-radius:14px;justify-content:space-between;align-items:flex-start;gap:18px;padding:20px 22px;display:flex;box-shadow:0 6px 18px #2b435c0d}.compiler-eyebrow{color:#4b7993;letter-spacing:.12em;font-size:.68rem;font-weight:800}.compiler-page-head h1{color:#203743;margin:5px 0 7px;font-size:1.45rem}.compiler-page-head p{color:#71838e;margin:0;font-size:.83rem}.compiler-mode-badge{color:#286778;white-space:nowrap;background:#eff7f8;border:1px solid #cfe2e7;border-radius:999px;padding:8px 11px;font-size:.72rem;font-weight:700}.compiler-samples{color:#426372;background:#f7fbfc;border:1px solid #dce7ec;border-radius:12px;gap:8px;padding:13px 16px;font-size:.78rem;display:grid}.compiler-samples>div:first-child{align-items:center;gap:10px;display:flex}.compiler-samples>div:first-child span{color:#357585;background:#e6f1f3;border-radius:999px;padding:3px 8px}.compiler-sample-list{flex-wrap:wrap;gap:6px;display:flex}.compiler-sample-list span{text-overflow:ellipsis;white-space:nowrap;background:#fff;border:1px solid #dce8eb;border-radius:7px;max-width:100%;padding:5px 8px;overflow:hidden}.compiler-workspace{grid-template-columns:minmax(0,1fr) 280px;gap:14px;min-height:650px;display:grid}.compiler-main-column{grid-template-rows:minmax(390px,1fr) minmax(180px,260px);gap:12px;min-width:0;display:grid}.compiler-editor-shell,.compiler-console,.compiler-side-panel{background:#fff;border:1px solid #dce7ec;border-radius:12px;overflow:hidden;box-shadow:0 5px 18px #2b435c0a}.compiler-editor-shell{grid-template-rows:38px minmax(0,1fr);min-height:390px;display:grid}.compiler-editor-toolbar{color:#426372;border-bottom:1px solid #e4ecef;align-items:center;gap:7px;padding:0 13px;font-size:.75rem;font-weight:700;display:flex}.compiler-language-dot{background:#397d70;border-radius:50%;width:8px;height:8px}.compiler-editor-hint{color:#90a2aa;margin-left:auto;font-weight:500}.compiler-editor{background:#fff;min-height:0}.compiler-editor .monaco-editor,.compiler-editor>textarea{width:100%;height:100%;min-height:350px}.compiler-editor>textarea{resize:none;color:#203743;background:#fff;border:0;outline:0;padding:17px;font:14px/1.65 Consolas,Monaco,monospace;display:block}.compiler-console{grid-template-rows:43px minmax(0,1fr);display:grid}.compiler-console>header,.compiler-history>header{border-bottom:1px solid #e4ecef;justify-content:space-between;align-items:center;gap:10px;padding:0 13px;display:flex}.compiler-console>header>div{color:#334f5d;align-items:center;gap:9px;font-size:.8rem;display:flex}.compiler-console-note{color:#90a2aa;font-size:.7rem}.compiler-status-chip{color:#71838e;background:#f1f5f6;border-radius:999px;padding:4px 8px;font-size:.68rem;font-weight:700}.compiler-status-chip.status-success{color:#20744e;background:#e6f7ef}.compiler-status-chip.status-compile-error,.compiler-status-chip.status-runtime-error{color:#b04444;background:#fff0f0}.compiler-status-chip.status-time-limit-exceeded{color:#956626;background:#fff7e7}.compiler-output{min-height:0;padding:12px;overflow:auto}.compiler-output-placeholder,.compiler-empty{color:#9aaab1;place-items:center;min-height:120px;font-size:.78rem;display:grid}.compiler-console-block{white-space:pre-wrap;word-break:break-word;color:#426372;margin:0;font:12px/1.7 Consolas,Monaco,monospace}.compiler-console-block.compiler-error{color:#b04444}.compiler-side-panel{flex-direction:column;gap:14px;padding:13px;display:flex}.compiler-side-actions{grid-template-columns:1fr 1fr;gap:7px;display:grid}.compiler-run-button,.compiler-judge-button,.compiler-ghost-button{cursor:pointer;border-radius:8px;min-height:36px;padding:0 10px;font-size:.76rem;font-weight:700}.compiler-run-button{color:#fff;background:#315f7a;border:1px solid #315f7a;grid-column:1/-1}.compiler-judge-button{color:#286f66;background:#edf8f5;border:1px solid #4c8a81}.compiler-ghost-button{color:#55717e;background:#fff;border:1px solid #d7e2e7}.compiler-run-button:disabled,.compiler-judge-button:disabled{opacity:.6;cursor:wait}.compiler-input-label{color:#55717e;gap:6px;font-size:.75rem;font-weight:700;display:grid}.compiler-input-label textarea{resize:vertical;border:1px solid #d8e4e8;border-radius:8px;outline:0;min-height:78px;padding:8px;font:12px/1.5 Consolas,Monaco,monospace}.compiler-history{border-top:1px solid #edf2f3;flex:1;grid-template-rows:38px minmax(0,1fr);min-height:0;display:grid}.compiler-history>header{padding:0}.compiler-history>header b{color:#334f5d;font-size:.78rem}.compiler-history>header button{color:#4b7993;cursor:pointer;background:0 0;border:0;font-size:.7rem}.compiler-history>div{padding:7px 0;overflow:auto}.compiler-history-item{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:8px;width:100%;padding:9px 6px;display:flex}.compiler-history-item:hover{background:#f1f7f8}.compiler-history-status{background:#9aaab1;border-radius:50%;flex:none;width:7px;height:7px}.compiler-history-status.status-success{background:#43a379}.compiler-history-status.status-compile-error,.compiler-history-status.status-runtime-error{background:#d06b6b}.compiler-history-copy{gap:3px;min-width:0;display:grid}.compiler-history-copy b,.compiler-history-copy small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.compiler-history-copy b{color:#426372;font-size:.72rem}.compiler-history-copy small{color:#9aaab1;font-size:.65rem}.compiler-case-result{background:#fbfdfd;border:1px solid #e0e9ec;border-radius:8px;gap:6px;margin-bottom:8px;padding:10px 11px;display:grid}.compiler-case-result header,.compiler-case-result>div{color:#55717e;justify-content:space-between;gap:9px;font-size:.72rem;display:flex}.compiler-verdict{font-weight:800}.verdict-passed{color:#23815c}.verdict-wrong-answer,.verdict-compile-error,.verdict-runtime-error{color:#b44b4b}.verdict-time-limit-exceeded{color:#986728}@media (width<=900px){.compiler-workspace{grid-template-columns:1fr}.compiler-side-panel{min-height:260px}.compiler-history{max-height:260px}}@media (width<=640px){.compiler-page{padding:10px 0 22px}.compiler-page-head{padding:16px;display:grid}.compiler-mode-badge{justify-self:start}.compiler-workspace{gap:10px}.compiler-main-column{grid-template-rows:minmax(340px,1fr) minmax(180px,240px)}.compiler-editor-shell{min-height:340px}.compiler-editor .monaco-editor,.compiler-editor>textarea{min-height:300px}}.compiler-language-controls{background:#f8fbfc;border:1px solid #e2ecef;border-radius:8px;gap:8px;padding:10px;display:grid}.compiler-input-label select{color:#365866;width:100%;min-height:34px;font:inherit;background:#fff;border:1px solid #d8e4e8;border-radius:7px;padding:0 8px}.compiler-template-button{color:#286f66;cursor:pointer;background:#edf8f5;border:1px solid #4c8a81;border-radius:7px;min-height:34px;font-size:.74rem;font-weight:700}.compiler-template-button:hover{background:#e1f3ee}
