@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";.landing{min-height:100vh}.hero{min-height:90vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--spacing-2xl) var(--spacing-md);position:relative;overflow:hidden}.hero:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(99,102,241,.1) 0%,transparent 70%);animation:rotate 20s linear infinite}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.hero-content{position:relative;z-index:1;max-width:900px}.hero-title{font-size:var(--font-5xl);font-weight:800;line-height:1.1;margin-bottom:var(--spacing-md)}.hero-subtitle{font-size:var(--font-xl);color:var(--color-text-muted);margin-bottom:var(--spacing-2xl);max-width:600px;margin-left:auto;margin-right:auto}.hero-cta{display:flex;gap:var(--spacing-md);justify-content:center;flex-wrap:wrap;margin-bottom:var(--spacing-3xl)}.hero-preview{margin-top:var(--spacing-2xl);max-width:800px;width:100%;border-radius:var(--radius-2xl);overflow:hidden;box-shadow:var(--shadow-xl);border:1px solid var(--color-border)}.hero-preview img{width:100%;height:auto;display:block}.features{padding:var(--spacing-3xl) 0}.features-title{text-align:center;font-size:var(--font-4xl);font-weight:700;margin-bottom:var(--spacing-xl)}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-lg);margin-top:var(--spacing-2xl)}.feature-card{text-align:center;padding:var(--spacing-xl);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);transition:all var(--transition-base);position:relative;overflow:hidden}.feature-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gradient-primary);transform:scaleX(0);transition:transform var(--transition-base)}.feature-card:hover:before{transform:scaleX(1)}.feature-card:hover{transform:translateY(-5px);border-color:var(--color-primary);box-shadow:var(--shadow-lg)}.feature-icon{font-size:3rem;margin-bottom:var(--spacing-md)}.feature-title{font-size:var(--font-xl);font-weight:600;margin-bottom:var(--spacing-sm);color:var(--color-text)}.feature-description{font-size:var(--font-base);color:var(--color-text-muted);line-height:1.7;margin-bottom:var(--spacing-md)}.feature-badge{display:inline-block;padding:.25rem .75rem;background:#8b5cf633;color:var(--color-secondary);font-size:var(--font-xs);font-weight:600;border-radius:var(--radius-full)}.footer{padding:var(--spacing-xl) 0;border-top:1px solid var(--color-border);text-align:center;color:var(--color-text-muted);font-size:var(--font-sm)}.footer-links{display:flex;justify-content:center;gap:var(--spacing-lg);margin-top:var(--spacing-md)}.footer-link{color:var(--color-text-muted);text-decoration:none;transition:color var(--transition-base)}.footer-link:hover{color:var(--color-primary)}@media (max-width: 768px){.hero-title{font-size:var(--font-4xl)}.hero-subtitle{font-size:var(--font-lg)}.features-grid{grid-template-columns:1fr}.hero-cta{flex-direction:column;align-items:center}}.sidebar{background:var(--color-surface);border-right:1px solid var(--color-border);position:fixed;top:0;left:0;height:100vh;overflow:hidden;z-index:100;flex-shrink:0;display:flex;flex-direction:column}.sidebar-header{padding:8px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--color-border);flex-shrink:0}.sidebar-logo{text-decoration:none;display:flex;align-items:center}.logo-image{height:40px;width:40px;object-fit:contain}.sidebar-toggle{background:transparent;border:none;color:var(--color-text);font-size:1.25rem;cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;transition:all .2s;border-radius:var(--radius-sm);width:40px;height:40px}.sidebar-toggle:hover{color:var(--color-primary);background:var(--color-bg-dark)}.sidebar-toggle-open{flex-shrink:0}.sidebar-toggle-closed{width:100%;margin-bottom:.5rem}.sidebar-content{padding:8px;opacity:1;flex:1;display:flex;flex-direction:column;overflow-y:auto}.sidebar-nav{display:flex;flex-direction:column;gap:.5rem}.nav-section{display:flex;flex-direction:column;gap:.25rem}.nav-divider{height:1px;background:var(--color-border);margin:.75rem 0}.nav-item{padding:8px;border-radius:var(--radius-md);text-decoration:none;color:var(--color-text-muted);transition:all .2s;display:flex;align-items:center;gap:.75rem;width:100%;text-align:left;border:none;background:transparent;font-size:1rem;cursor:pointer;font-family:inherit}.nav-icon-wrapper{width:27px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.nav-icon{flex-shrink:0;width:20px;height:20px;transition:transform .2s}.nav-label{flex:1;font-weight:500}.nav-item:hover{background:var(--color-bg-dark);color:var(--color-text)}.nav-item:hover .nav-icon{transform:scale(1.1)}.nav-item.active{background:var(--color-primary);color:#fff}.nav-item.active .nav-icon{transform:scale(1.05)}.main-layout{display:flex;min-height:100vh;background:var(--color-bg-dark);max-width:100vw}.main-content{flex:1;margin-left:250px;transition:margin-left .3s;max-width:calc(100vw - 250px);box-sizing:border-box}.main-layout.sidebar-compact .main-content{margin-left:60px;max-width:calc(100vw - 60px)}.app-container{display:flex;flex-direction:column;height:100%}.app-header{padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-border);background:var(--color-surface);display:flex;align-items:center;gap:1rem}.app-header h1{font-size:1.5rem;color:var(--color-text);margin:0}.back-link{color:var(--color-text-muted);text-decoration:none;transition:color .2s}.back-link:hover{color:var(--color-primary)}.app-header-content{display:flex;justify-content:space-between;align-items:center}.app-logo{font-size:var(--font-xl);font-weight:800;text-decoration:none;color:var(--color-text);display:flex;align-items:center;gap:var(--spacing-xs)}.app-main{flex:1;display:flex;padding:var(--spacing-lg);gap:var(--spacing-lg)}.input-section{flex:1;display:flex;flex-direction:column;gap:var(--spacing-md)}.input-container{background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--spacing-lg);transition:all var(--transition-base)}.input-container:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px #63e4d81a}.input-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.input-title{font-size:var(--font-lg);font-weight:600;color:var(--color-text)}.char-count{font-size:var(--font-sm);color:var(--color-text-muted)}.main-textarea{width:100%;min-height:200px;padding:var(--spacing-md);font-size:var(--font-base);font-family:inherit;color:var(--color-text);background:transparent;border:none;resize:vertical;outline:none}.main-textarea::placeholder{color:var(--color-text-muted)}.submit-btn-container{display:flex;justify-content:center}.result-section{flex:1}.result-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);overflow:hidden}.result-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);border-bottom:1px solid var(--color-border)}.result-title{font-size:var(--font-lg);font-weight:600;display:flex;align-items:center;gap:var(--spacing-xs)}.save-btn{background:transparent;border:none;font-size:var(--font-xl);cursor:pointer;transition:transform var(--transition-base);padding:var(--spacing-xs)}.save-btn:hover{transform:scale(1.2)}.save-btn.saved{filter:grayscale(0)}.result-content{padding:var(--spacing-lg);max-height:600px;overflow-y:auto}.result-section-item{margin-bottom:var(--spacing-xl)}.result-section-item:last-child{margin-bottom:0}.result-section-title{font-size:var(--font-lg);font-weight:600;margin-bottom:var(--spacing-sm);display:flex;align-items:center;gap:var(--spacing-xs);color:var(--color-text)}.result-section-divider{width:60px;height:2px;background:var(--gradient-primary);margin-bottom:var(--spacing-sm)}.result-text{color:var(--color-text);line-height:1.8;margin-bottom:var(--spacing-sm)}.result-list{list-style:none;padding-left:0}.result-list li{padding-left:var(--spacing-lg);margin-bottom:var(--spacing-xs);position:relative;color:var(--color-text);line-height:1.7}.result-list li:before{content:"•";position:absolute;left:0;color:var(--color-primary);font-weight:700;font-size:var(--font-xl)}.related-tags{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.related-tag{padding:.5rem 1rem;background:#63e4d81a;border:1px solid rgba(99,228,216,.3);border-radius:var(--radius-full);color:var(--color-text);font-size:var(--font-sm);transition:all var(--transition-base)}.related-tag:hover{background:#63e4d833;border-color:var(--color-primary)}.favorites-sidebar{width:320px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--spacing-lg);height:fit-content;max-height:calc(100vh - 140px);overflow-y:auto;position:sticky;top:100px}.favorites-header{font-size:var(--font-lg);font-weight:600;margin-bottom:var(--spacing-md);display:flex;align-items:center;gap:var(--spacing-xs);color:var(--color-text)}.favorites-list{list-style:none;padding:0}.favorite-item{padding:var(--spacing-sm);margin-bottom:var(--spacing-xs);background:var(--color-bg-dark);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);display:flex;align-items:center;gap:var(--spacing-xs)}.favorite-item:hover{background:var(--color-surface-light);border-color:var(--color-primary)}.favorite-item-text{flex:1;color:var(--color-text);font-size:var(--font-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.delete-favorite{background:transparent;border:none;color:var(--color-text-muted);cursor:pointer;padding:.25rem;font-size:var(--font-sm);transition:color var(--transition-base)}.delete-favorite:hover{color:#ef4444}@media (max-width: 1024px){.app-main{flex-direction:column}.favorites-sidebar{width:100%;position:static;max-height:400px}}@media (max-width: 768px){.app-main{padding:var(--spacing-md);gap:var(--spacing-md)}.input-container,.result-card{border-radius:var(--radius-lg)}.main-textarea{min-height:150px}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:0 20px 60px #0000004d;max-height:90vh;overflow-y:auto;animation:modalSlideIn .2s ease-out}.modal-small{width:90%;max-width:400px}.modal-medium{width:90%;max-width:600px}.modal-large{width:90%;max-width:800px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--color-border)}.modal-header h2{margin:0;font-size:1.5rem;color:var(--color-text)}.modal-close{background:transparent;border:none;font-size:2rem;color:var(--color-text-muted);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all .2s}.modal-close:hover{background:var(--color-bg-dark);color:var(--color-text)}.modal-body{padding:1.5rem}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.widget{background:transparent;border-radius:8px;padding:1.5rem;border:1px solid var(--color-border);margin:-1px 0 0 -1px;transition:all .2s;position:relative;overflow:hidden}.widget:hover{box-shadow:0 4px 16px #0000001f}.widget-header-link{text-decoration:none;color:inherit;display:block}.widget-title{font-size:.875rem;font-weight:500;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:1px;margin:0 0 .75rem}.courses-widget{display:flex;flex-direction:column;padding-top:24px}.courses-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,1fr);gap:1rem;flex:1;align-items:start}.course-item{background:transparent;border:none;padding:0;display:flex;flex-direction:column;align-items:center;gap:.5rem;cursor:pointer;text-decoration:none;transition:all .2s}.course-item:hover .course-icon-box{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.course-icon-box{width:100%;aspect-ratio:1;background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;transition:all .2s;position:relative;box-shadow:0 2px 6px #00000014}.course-icon-text{font-size:2rem;font-weight:700;text-align:center}.course-label{font-size:.75rem;font-weight:600;color:var(--color-text);text-align:center;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.add-course-item{background:transparent}.add-course-icon-box{border-style:dashed;border-color:var(--color-border)}.add-course-item:hover .add-course-icon-box{border-color:var(--color-primary);background:#667eea0d}.add-icon{font-size:2rem;color:var(--color-text-muted);transition:all .2s}.add-course-item:hover .add-icon{color:var(--color-primary);transform:scale(1.1)}.add-course-form{display:flex;flex-direction:column;gap:1.25rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.875rem;font-weight:600;color:var(--color-text)}.form-group input,.form-group textarea{width:100%;padding:.75rem 1rem;font-size:1rem;font-family:inherit;color:var(--color-text);background:var(--color-bg-dark);border:2px solid var(--color-border);border-radius:var(--radius-md);transition:all .2s}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea1a}.color-picker{display:flex;gap:.75rem;flex-wrap:wrap}.color-option{width:40px;height:40px;border-radius:var(--radius-md);border:3px solid transparent;cursor:pointer;transition:all .2s}.color-option:hover{transform:scale(1.1)}.color-option.selected{border-color:var(--color-text);box-shadow:0 0 0 2px var(--color-surface)}.form-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:.5rem}.btn{padding:.75rem 1.5rem;font-size:1rem;font-weight:600;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all .2s}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover{background:#5568d3;transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.btn-secondary{background:var(--color-bg-dark);color:var(--color-text);border:2px solid var(--color-border)}.btn-secondary:hover{background:var(--color-surface)}.study-modes-widget{display:flex;flex-direction:column;padding-top:24px}.study-modes-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,1fr);gap:1rem;flex:1;align-items:start}.study-mode-item{background:transparent;border:none;padding:0;display:flex;flex-direction:column;align-items:center;gap:.5rem;cursor:pointer;transition:all .2s}.study-mode-item:hover .mode-icon-box{transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.mode-icon-box{width:100%;aspect-ratio:1;background:var(--color-surface);border:2px solid var(--color-primary);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;transition:all .2s;color:var(--color-primary)}.mode-label{font-size:.75rem;font-weight:600;color:var(--color-text);text-align:center;line-height:1.2;white-space:normal;overflow:hidden;text-overflow:ellipsis;max-width:100%;word-wrap:break-word}.welcome-widget{display:flex;flex-direction:column;align-items:center;text-align:center;padding:1.5rem}.welcome-header{margin-bottom:1rem}.welcome-title{font-size:.875rem;font-weight:700;color:var(--color-text-muted);margin:0;letter-spacing:1px}.welcome-name{font-size:1.5rem;font-weight:700;margin:.25rem 0 0;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.welcome-avatar{margin:1rem 0}.stick-figure{width:60px;height:80px;position:relative}.stick-head{width:20px;height:20px;border-radius:50%;background:var(--color-primary);position:absolute;top:0;left:20px}.stick-body{width:2px;height:30px;background:var(--color-primary);position:absolute;top:20px;left:29px}.stick-arms{width:40px;height:2px;background:var(--color-primary);position:absolute;top:30px;left:10px}.stick-legs{width:30px;height:2px;background:var(--color-primary);position:absolute;top:50px;left:15px;transform:rotate(15deg)}.stick-legs:after{content:"";width:30px;height:2px;background:var(--color-primary);position:absolute;transform:rotate(-30deg)}.welcome-nav{display:flex;flex-direction:column;gap:.5rem;width:100%;margin-top:1rem}.welcome-link{padding:.5rem;text-decoration:none;color:var(--color-text);font-size:.875rem;font-weight:600;display:flex;align-items:center;justify-content:space-between;border-radius:var(--radius-sm);transition:all .2s}.welcome-link:hover{background:var(--color-bg-dark);color:var(--color-primary)}.arrow{font-size:1.25rem;color:var(--color-text-muted);transition:transform .2s}.welcome-link:hover .arrow{transform:translate(4px);color:var(--color-primary)}.weekly-goals-widget{display:flex;flex-direction:column}.goals-content{display:flex;flex-direction:column;gap:1rem;flex:1;margin-bottom:1rem}.goal-item{display:flex;flex-direction:column;gap:.5rem}.goal-label{font-size:.75rem;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.goal-progress-bar{height:8px;background:var(--color-bg-dark);border-radius:999px;overflow:hidden;position:relative}.goal-progress-fill{height:100%;background:var(--gradient-primary);border-radius:999px;transition:width .3s ease}.goal-stats{font-size:.75rem;color:var(--color-text-muted);text-align:right}.change-goals-link{text-decoration:none;color:var(--color-primary);font-size:.875rem;font-weight:600;display:flex;align-items:center;justify-content:center;gap:.25rem;padding:.5rem;border-radius:var(--radius-sm);transition:all .2s}.change-goals-link:hover{background:#667eea1a}.change-goals-link .arrow{color:var(--color-primary)}.path-widget{display:flex;flex-direction:column;height:100%}.path-timeline{position:relative;flex:1;display:flex;align-items:center;justify-content:center;padding:2rem 0}.path-line{position:absolute;top:0;left:50%;transform:translate(-50%);width:100px;height:100%;opacity:.3}.path-nodes{position:relative;display:flex;flex-direction:column;justify-content:space-between;height:100%;z-index:1}.path-node{display:flex;flex-direction:column;align-items:center;gap:.5rem}.node-circle{width:40px;height:40px;border-radius:50%;background:var(--color-bg-dark);border:3px solid var(--color-border);display:flex;align-items:center;justify-content:center;transition:all .3s;position:relative}.path-node.active .node-circle{border-color:var(--color-primary);background:#667eea1a}.path-node.current .node-circle{background:var(--color-primary);border-color:var(--color-primary);box-shadow:0 0 0 4px #667eea33;animation:pulse 2s infinite}.node-check{color:var(--color-primary);font-size:1.25rem;font-weight:700}.path-node.current .node-check{color:#fff}.node-label{font-size:.875rem;font-weight:600;color:var(--color-text-muted);transition:color .3s}.path-node.active .node-label{color:var(--color-text)}.path-node.current .node-label{color:var(--color-primary);font-weight:700}.start-studying-btn{width:100%;padding:.875rem;background:var(--gradient-primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;transition:all .2s;box-shadow:0 4px 12px #667eea4d}.start-studying-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}@keyframes pulse{0%,to{box-shadow:0 0 0 4px #667eea33}50%{box-shadow:0 0 0 8px #667eea1a}}.dashboard-main{flex:1;padding:8px 2rem 2rem;overflow-y:auto}.dashboard-header{padding-left:24px;padding-right:24px}.dashboard-header h1{font-size:1.5rem;font-weight:600;margin-bottom:10px;color:var(--color-text)}.dashboard-header .subtitle{color:var(--color-text-muted);font-size:1rem}.dashboard-container{display:grid;grid-template-columns:1fr 300px;gap:24px;max-width:1400px}.widgets-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;grid-template-rows:repeat(2,1fr)}@media (max-width: 1024px){.dashboard-container{grid-template-columns:1fr}.study-path-widget{grid-row:1}}@media (max-width: 768px){.widgets-grid{grid-template-columns:1fr}.dashboard-main{padding:1rem}}.action-bar{position:fixed;bottom:2rem;left:50%;transform:translate(-50%);z-index:9999;display:flex;align-items:center;gap:0;background:var(--color-surface);border:2px solid var(--color-primary);border-radius:9999px;padding:.5rem;max-width:450px;width:450px;box-shadow:0 8px 32px #0003;animation:slideUp .3s ease-out;transition:all .3s cubic-bezier(.4,0,.2,1)}.action-bar.no-animation{animation:none;transition:none}.action-bar-compact{width:60px!important;height:60px;max-width:60px!important;padding:0!important;justify-content:center;left:auto!important;right:2rem!important;transform:none!important}.action-bar.morphing{transition:all .3s cubic-bezier(.4,0,.2,1)!important}.compact-toggle-btn{width:48px;height:48px;border-radius:50%;background:transparent;border:none;color:var(--color-text);display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:1;transition:all .2s,opacity .2s ease-in-out}.compact-toggle-btn:hover{background:var(--color-bg-dark);color:var(--color-primary)}.compact-menu{position:absolute;bottom:calc(100% + .75rem);right:0;background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:.5rem;min-width:200px;box-shadow:0 8px 24px #00000026;animation:slideUpMenuRight .2s ease-out}@keyframes slideUpMenuRight{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.compact-menu-item{width:100%;display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:transparent;border:none;border-radius:var(--radius-md);color:var(--color-text);font-size:.9375rem;font-weight:500;text-align:left;cursor:pointer;transition:all .2s}.compact-menu-item:hover{background:var(--color-bg-dark);color:var(--color-primary)}.compact-menu-item svg{flex-shrink:0}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.action-bar-divider{width:2px;height:32px;background:var(--color-border);flex-shrink:0;opacity:1;transition:opacity .2s ease-in-out}.action-bar-btn{flex-shrink:0;width:44px;height:44px;border-radius:50%;border:none;background:transparent;color:var(--color-primary);display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:1;transition:all .2s}.action-bar-btn:hover{transform:scale(1.1)}.action-bar-btn:active{transform:scale(.95)}.action-bar-center{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0 1rem;min-width:0;text-align:center;opacity:1;transition:opacity .2s ease-in-out}.action-bar-center .course-code{font-size:.75rem;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.action-bar-center .course-name{font-size:.875rem;font-weight:600;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.action-bar-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9998;background:#0000004d;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.course-dropdown{position:absolute;bottom:calc(100% + 1rem);left:0;right:0;background:var(--color-surface);border:2px solid var(--color-primary);border-radius:var(--radius-lg);box-shadow:0 8px 32px #0003;animation:slideUpDropdown .2s ease-out;max-height:400px;overflow:hidden;display:flex;flex-direction:column}@keyframes slideUpDropdown{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.course-dropdown-header{padding:1rem 1.25rem;border-bottom:2px solid var(--color-border);font-size:.875rem;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;background:var(--color-bg-dark)}.course-dropdown-list{overflow-y:auto;max-height:320px}.course-dropdown-list::-webkit-scrollbar{width:8px}.course-dropdown-list::-webkit-scrollbar-track{background:var(--color-bg-dark)}.course-dropdown-list::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:4px}.course-dropdown-list::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}.course-dropdown-item{width:100%;padding:1rem 1.25rem;border:none;background:transparent;text-align:left;cursor:pointer;transition:all .2s;border-bottom:1px solid var(--color-border)}.course-dropdown-item:last-child{border-bottom:none}.course-dropdown-item:hover{background:var(--color-bg-dark)}.course-dropdown-item.active{background:#667eea1a;border-left:4px solid var(--color-primary)}.course-item-code{font-size:.75rem;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.25rem}.course-item-title{font-size:.875rem;font-weight:600;color:var(--color-text)}@media (max-width: 768px){.action-bar{bottom:1rem;width:calc(100vw - 4rem);max-width:calc(100vw - 4rem)}.action-bar-compact{right:1rem!important;left:auto!important;width:60px!important;transform:none!important}.action-bar-center .course-name{font-size:.8125rem}.action-bar-btn{width:40px;height:40px}.course-dropdown{max-height:300px}.course-dropdown-list{max-height:240px}}@media (max-width: 480px){.action-bar-center{padding:0 .5rem}.action-bar-center .course-name{font-size:.75rem}}.courses-page{max-width:1400px;margin:0 auto}.courses-header{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;margin-bottom:2rem}.search-bar{flex:1;max-width:500px;position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:1rem;color:var(--color-text-muted);pointer-events:none}.search-input{width:100%;padding:.875rem 1rem .875rem 3rem;font-size:1rem;font-family:inherit;color:var(--color-text);background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-lg);transition:all .2s}.search-input:not(:disabled):hover{border-color:var(--color-primary)}.search-input:not(:disabled):focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea1a}.search-input:disabled{opacity:.5;cursor:not-allowed}.header-actions{display:flex;gap:.75rem}.action-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.action-btn:not(:disabled):hover{background:var(--color-bg-dark);border-color:var(--color-primary);color:var(--color-primary)}.action-btn:disabled{opacity:.5;cursor:not-allowed}.action-btn-primary{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.action-btn-primary:not(:disabled):hover{background:#5568d3;border-color:#5568d3;color:#fff;transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.courses-grid-page{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,220px));gap:1.5rem;justify-content:start}.course-book{background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;transition:all .2s;cursor:pointer;display:flex;flex-direction:row;aspect-ratio:3 / 4;min-height:260px;position:relative}.course-book:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f}.course-book-spine{width:12px;flex-shrink:0;transition:width .2s}.course-book:hover .course-book-spine{width:16px}.course-book-content{flex:1;padding:4rem 1rem 1rem;display:flex;flex-direction:column;justify-content:flex-start;gap:.5rem;position:relative}.course-book-icon{font-size:1.5rem;position:absolute;top:.75rem;right:.75rem}.course-book-code{font-size:.75rem;font-weight:600;color:var(--color-text-muted);margin:0;text-transform:uppercase;letter-spacing:.5px}.course-book-title{font-size:1rem;font-weight:700;color:var(--color-text);margin:0;line-height:1.2;word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.add-course-book{border-style:dashed;border-color:var(--color-border);background:transparent}.add-course-book:hover{border-color:var(--color-primary);background:#667eea0d}.add-course-spine{background:var(--color-border)}.add-course-book:hover .add-course-spine{background:var(--color-primary)}.add-course-content{align-items:center;justify-content:center;text-align:center}.add-course-icon{font-size:3rem;color:var(--color-text-muted);transition:all .2s;margin-bottom:.5rem}.add-course-book:hover .add-course-icon{color:var(--color-primary);transform:scale(1.1)}.add-course-text{font-size:1rem;font-weight:600;color:var(--color-text-muted);margin:0;transition:color .2s}.add-course-book:hover .add-course-text{color:var(--color-primary)}@media (max-width: 768px){.courses-header{flex-direction:column;align-items:stretch}.search-bar{max-width:100%}.header-actions{justify-content:flex-end}.courses-grid-page{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.course-book{min-height:240px}}.chapter-content{max-width:1400px;margin:0 auto;padding:2rem 1rem}.chapter-content-empty{text-align:center;padding:4rem 2rem;color:var(--color-text-muted);font-size:1.125rem}.chapter-header{max-width:900px;margin:0 auto 3rem;padding-bottom:2rem;border-bottom:2px solid var(--color-border)}.chapter-number{display:inline-block;padding:.375rem .75rem;background:var(--color-primary);color:#fff;border-radius:var(--radius-sm);font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-bottom:1rem}.chapter-title{font-size:2.5rem;font-weight:700;color:var(--color-text);margin:1rem 0;line-height:1.2}.chapter-abstract{margin-top:1.5rem;padding:1.5rem;background:var(--color-bg-dark);border-left:8px solid var(--color-primary);border-radius:0}.chapter-abstract p{font-size:1.0625rem;line-height:1.7;color:var(--color-text-muted);margin:0}.chapter-layout{max-width:900px;margin:0 auto}.chapter-main{min-width:0}.chapter-text{font-size:1.0625rem;line-height:1.8;color:var(--color-text);margin-bottom:60px}.chapter-text h2{font-size:1.875rem;font-weight:700;margin:2.5rem 0 1rem;color:var(--color-text);scroll-margin-top:2rem}.chapter-text h3{font-size:1.5rem;font-weight:600;margin:2rem 0 .75rem;color:var(--color-text);scroll-margin-top:2rem}.chapter-text p{margin:1rem 0}.chapter-text ul,.chapter-text ol{margin:1rem 0;padding-left:2rem}.chapter-text li{margin:.5rem 0}.chapter-text code{background:var(--color-bg-dark);padding:.2rem .5rem;border-radius:var(--radius-sm);font-family:Monaco,Courier New,monospace;font-size:.9375rem;color:var(--color-primary)}.chapter-text strong{font-weight:600;color:var(--color-text)}.definition-ref{position:relative;cursor:pointer;border-bottom:2px dotted var(--color-primary);font-weight:600;transition:all .2s ease}.definition-ref:hover{color:var(--color-primary);border-bottom-style:solid}.definition-ref.clickable{cursor:pointer}.formula-ref{position:relative;cursor:pointer;border-bottom:2px dotted var(--color-primary);font-weight:600;transition:border .2s ease}.formula-ref:hover{border-bottom-style:solid}.formula-ref code{font-family:inherit;background:transparent;color:var(--color-text);padding:0;font-size:inherit;text-decoration:none}.example-ref{color:var(--color-primary);text-decoration:none;font-weight:500;padding:.125rem .375rem;border-radius:var(--radius-sm);background:var(--color-bg-dark);transition:all .2s ease;font-size:.9375rem;white-space:nowrap}.example-ref:hover{background:var(--color-primary);color:#fff}.section-heading{font-size:1.75rem;font-weight:700;margin:3rem 0 1.5rem;padding-bottom:.75rem;border-bottom:2px solid var(--color-border);color:var(--color-text)}.section-header-container{display:flex;justify-content:space-between;align-items:center;margin:1.5rem 0 0;padding-bottom:.5rem;border-bottom:2px solid var(--color-border)}.additional-section-header{font-size:1.75rem;font-weight:700;margin:0;padding:0;border:none;color:var(--color-text)}.toggle-all-button{padding:.5rem 1rem;background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-muted);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.toggle-all-button:hover{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.examples-section{margin-top:36px}.example-card{background:var(--color-bg);border:0;border-radius:0;margin-bottom:0;overflow:hidden;transition:all .2s ease;scroll-margin-top:2rem}.example-header{width:100%;display:flex;justify-content:flex-start;align-items:center;gap:.75rem;padding:1rem 0;background:var(--color-bg-dark);border:none;cursor:pointer;transition:background .2s ease;color:var(--color-text)}.example-header:hover{background:var(--color-bg)}.example-title{font-size:1.125rem;font-weight:600;color:var(--color-text);text-align:left}.example-content{padding:0 1.25rem 1.25rem;line-height:1.7;color:var(--color-text-muted);animation:slideDown .3s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.definitions-section{margin-top:36px}.definition-card{background:var(--color-bg);border:0;border-radius:0;margin-bottom:0;overflow:hidden;transition:all .2s ease;scroll-margin-top:2rem}.definition-header{width:100%;display:flex;justify-content:flex-start;align-items:center;gap:.75rem;padding:1rem 0;background:var(--color-bg-dark);border:none;cursor:pointer;transition:background .2s ease;color:var(--color-text)}.definition-header:hover{background:var(--color-bg)}.definition-title{font-size:1.0625rem;font-weight:600;color:var(--color-text);text-align:left}.definition-content{padding:0 1.25rem 1.25rem;line-height:1.7;color:var(--color-text-muted);animation:slideDown .3s ease}.definition-content p{margin:0}.formulas-section{margin-top:36px}.formula-card{background:var(--color-bg);border:0;border-radius:0;margin-bottom:0;overflow:hidden;transition:all .2s ease;scroll-margin-top:2rem}.formula-header{width:100%;display:flex;justify-content:flex-start;align-items:center;gap:.75rem;padding:1rem 0;background:var(--color-bg-dark);border:none;cursor:pointer;transition:background .2s ease;color:var(--color-text)}.formula-header:hover{background:var(--color-bg)}.formula-title{font-size:1.0625rem;font-weight:600;color:var(--color-text);text-align:left}.formula-content{padding:0 1.25rem 1.25rem;line-height:1.7;color:var(--color-text-muted);animation:slideDown .3s ease}.formula-display{display:block;background:var(--color-bg-dark);padding:1rem;border-radius:var(--radius-md);font-family:Monaco,Courier New,monospace;font-size:1rem;color:var(--color-primary);margin:0;border:1px solid var(--color-border);overflow-x:auto}.summary-section{margin-top:36px}.summary-content{font-size:1.0625rem;line-height:1.8;color:var(--color-text);padding:0;margin:0}.definition-lookup-tooltip{position:fixed;z-index:1000;background:var(--color-surface);border:2px solid var(--color-primary);border-radius:var(--radius-md);padding:1rem;max-width:400px;box-shadow:0 8px 24px #00000026;pointer-events:none}.definition-lookup-tooltip.bottom{transform:translate(-50%);margin-top:8px;animation:tooltipFadeInBottom .2s ease}@keyframes tooltipFadeInBottom{0%{opacity:0;transform:translate(-50%) translateY(-10px) scale(.95)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}.definition-lookup-tooltip.bottom:after{content:"";position:absolute;top:-8px;left:50%;transform:translate(calc(-50% + var(--arrow-offset, 0px)));width:0;height:0;border-left:8px solid transparent;border-right:8px solid transparent;border-bottom:8px solid var(--color-primary)}.definition-lookup-tooltip.top{transform:translate(-50%) translateY(-100%);margin-top:-8px;animation:tooltipFadeInTop .2s ease}@keyframes tooltipFadeInTop{0%{opacity:0;transform:translate(-50%) translateY(-100%) scale(.95)}to{opacity:1;transform:translate(-50%) translateY(-100%) scale(1)}}.definition-lookup-tooltip.top:after{content:"";position:absolute;bottom:-8px;left:50%;transform:translate(calc(-50% + var(--arrow-offset, 0px)));width:0;height:0;border-left:8px solid transparent;border-right:8px solid transparent;border-top:8px solid var(--color-primary)}.tooltip-term{font-size:1rem;font-weight:600;color:var(--color-primary);margin-bottom:.5rem;line-height:1.3}.tooltip-definition{font-size:.9375rem;line-height:1.6;color:var(--color-text)}.reader-navigation{position:sticky;top:50vh;transform:translateY(-50%);pointer-events:none;margin-top:50vh;opacity:0;transition:opacity .4s ease-in-out}.reader-navigation.visible{opacity:1}.reader-nav-dots{pointer-events:all}.reader-nav-background{display:flex;flex-direction:column;gap:0;background:transparent;padding:1rem;border-radius:var(--radius-md);position:relative}.reader-nav-week-arrow-container{position:relative;display:flex;align-items:center;justify-content:center}.reader-nav-week-arrow-container:first-child{margin-bottom:16px}.reader-nav-week-arrow-container:last-child{margin-top:8px}.reader-nav-week-arrow{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:none;border-radius:50%;color:var(--color-text);cursor:pointer;transition:all .2s ease;padding:0;flex-shrink:0}.reader-nav-week-arrow:hover:not(:disabled){background:var(--color-primary);border-color:var(--color-primary);color:#fff;transform:scale(1.1)}.reader-nav-week-arrow:disabled{opacity:.3;cursor:not-allowed}.reader-nav-week-arrow-container .reader-nav-label{left:40px}.reader-nav-background:before{content:"";position:absolute;top:0;left:0;bottom:0;width:100%;background:transparent;border-radius:var(--radius-md);transition:background .3s ease,border .3s ease,width .3s ease;pointer-events:none;z-index:-1;border:2px solid transparent}.reader-nav-background.expanded:before{background:var(--color-bg-dark);width:260px;border:2px solid var(--color-border);border-radius:var(--radius-md)}.reader-nav-chapter-group{display:flex;flex-direction:column;align-items:center;gap:1.5rem;margin-top:8px;margin-bottom:16px}.reader-nav-dot-item{position:relative;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.reader-nav-dot{width:10px;height:10px;border-radius:50%;background:var(--color-border);transition:all .2s ease}.reader-nav-dot-item.active .reader-nav-dot{background:var(--color-primary);transform:scale(1.2)}.reader-nav-label{position:absolute;left:20px;opacity:0;transform:translate(-10px);transition:all .15s ease;font-size:.875rem;font-weight:500;color:var(--color-text-muted);pointer-events:none;white-space:nowrap;padding:.25rem .5rem;border-radius:var(--radius-sm);background:transparent;max-width:200px;overflow:hidden;text-overflow:ellipsis}.reader-nav-background.expanded .reader-nav-label{opacity:1;transform:translate(0);pointer-events:all;transition:all .4s ease}.reader-nav-dot-item:hover .reader-nav-label{color:var(--color-primary)}.reader-nav-dot-chapter .reader-nav-dot{width:10px;height:10px}.reader-nav-sections{display:flex;flex-direction:column;align-items:center;gap:1.25rem;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.reader-nav-dot-section .reader-nav-dot{width:6px;height:6px}.reader-nav-dot-section .reader-nav-label{font-size:.75rem}.reader-nav-dot-section:hover .reader-nav-dot{transform:scale(1.4)}@media (max-width: 1024px){.reader-navigation{display:none}}.course-page-wrapper{width:100%;max-width:100vw}.course-section-container{width:100%;position:relative}.course-section-container-reader{position:relative;padding-top:4.3rem;min-height:100vh}.reader-nav-sidebar{position:absolute;left:0;top:0;width:80px;height:100%;pointer-events:none;z-index:100}.course-tabs-sticky{position:-webkit-sticky!important;position:sticky!important;top:0!important;z-index:90;background-color:var(--color-bg-dark);border-bottom:1px solid var(--color-border);box-shadow:0 2px 8px #0000000d;height:57px}.course-tabs{display:flex;gap:.5rem;max-width:1200px;margin:0 auto;padding:0 2rem;height:100%;align-items:center;justify-content:center;width:100%;box-sizing:border-box}.course-page{padding:2rem;margin:0 auto;overflow-x:hidden;width:100%;box-sizing:border-box}.course-page-wrapper .course-header{margin-bottom:1.5rem}.course-page-wrapper .course-title-section{display:flex;flex-direction:column;gap:.25rem}.course-page-wrapper .course-code{font-size:.875rem;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:1px}.course-page-wrapper .course-title{font-size:2.5rem;font-weight:700;color:var(--color-text);margin:0;line-height:1.2}.course-tab{background:transparent;border:none;border-bottom:3px solid transparent;padding:0 1.5rem;height:100%;color:var(--color-text-muted);font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;transition:all .2s;display:flex;align-items:center}.course-tab:hover{color:var(--color-text);background:var(--color-bg-dark)}.course-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.course-tab-content{min-height:400px;overflow-x:hidden;padding-top:8px}.materials-tab-content{max-width:1000px;margin:0 auto}.course-page-wrapper .material-card{display:flex;gap:var(--spacing-md);background:var(--surface-color);border:1px solid transparent;border-radius:8px;padding:.75rem;transition:all var(--transition-base)}.course-page-wrapper .material-card:hover{border-color:var(--color-primary)}.course-page-wrapper .material-time{font-size:.875rem;color:var(--text-muted)}.course-page-wrapper .material-content{display:flex;align-items:center;gap:var(--spacing-md);flex:1;min-width:0}.course-page-wrapper .material-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border:2px solid var(--color-border);border-radius:8px;color:var(--primary-color);flex-shrink:0}.course-page-wrapper .material-info{flex:1;min-width:0;display:flex;flex-direction:column}.course-page-wrapper .material-header{margin-bottom:.375rem}.course-page-wrapper .material-title-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.course-page-wrapper .material-title{font-size:1rem;font-weight:600;color:var(--text-color);margin:0}.course-page-wrapper .material-name{font-size:1rem;font-weight:600;color:var(--text-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.course-page-wrapper .material-badges{display:flex;gap:.5rem;flex-wrap:wrap}.course-page-wrapper .material-type-badge,.course-page-wrapper .material-week-badge{display:inline-block;padding:2px .625rem;border-radius:9999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.course-page-wrapper .material-type-badge{background:#667eea1a;color:var(--primary-color);border:1px solid rgba(102,126,234,.2)}.course-page-wrapper .material-week-badge{background:#63e4d81a;color:var(--secondary-color);border:1px solid rgba(99,228,216,.2)}.course-page-wrapper .material-meta{display:flex;align-items:center;gap:var(--spacing-xs);font-size:.875rem;color:var(--text-muted);flex-wrap:wrap}.course-page-wrapper .material-course{font-weight:600;color:var(--primary-color);text-transform:uppercase}.course-page-wrapper .meta-separator{color:var(--border-color)}.course-page-wrapper .material-actions{display:flex;align-items:flex-start;gap:var(--spacing-xs);flex-shrink:0}.course-page-wrapper .action-button{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--border-radius-md);background:var(--surface-color);color:var(--text-color);font-size:.875rem;font-weight:500;cursor:pointer;transition:all var(--transition-fast);text-decoration:none}.course-page-wrapper .action-button:hover{border-color:var(--primary-color);color:var(--primary-color)}.course-page-wrapper .action-button-icon{padding:var(--spacing-xs)}.tab-placeholder{padding:3rem;text-align:center;color:var(--color-text-muted);font-size:1rem}.course-page-wrapper .course-section{margin-bottom:3rem}.course-page-wrapper .course-section-reader{margin-bottom:0}.course-page-wrapper .section-title{font-size:.875rem;font-weight:500;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:1px;margin:0 0 .75rem}.course-page-wrapper .section-divider{height:1px;background:var(--color-border);margin:2rem 0}.course-page-wrapper .page-wide-divider{width:100%;height:1px;background:var(--color-border);margin:0}.course-page-wrapper .study-tab-modes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:1rem;max-width:1200px}.course-page-wrapper .study-tab-modes-grid .study-mode-item{background:transparent;border:none;padding:0;display:flex;flex-direction:column;align-items:center;gap:.5rem;cursor:pointer;transition:all .2s}.course-page-wrapper .study-tab-modes-grid .study-mode-item:hover .mode-icon-box{transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.course-page-wrapper .study-tab-modes-grid .mode-icon-box{width:100%;aspect-ratio:1;background:var(--color-surface);border:2px solid var(--color-primary);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;transition:all .2s;color:var(--color-primary)}.course-page-wrapper .study-tab-modes-grid .mode-label{font-size:.75rem;font-weight:600;color:var(--color-text);text-align:center;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.course-page-wrapper .materials-list{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.course-page-wrapper .material-item{background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-md);padding:1rem 1.25rem;display:flex;align-items:center;gap:1rem;cursor:pointer;transition:all .2s;text-align:left;width:100%}.course-page-wrapper .material-item:hover{border-color:var(--color-primary);background:var(--color-bg-dark)}.course-page-wrapper .material-item.completed{opacity:.7}.course-page-wrapper .material-status{font-size:1.25rem;font-weight:700;color:var(--color-primary);width:24px;text-align:center;flex-shrink:0}.course-page-wrapper .material-item.completed .material-status{color:var(--color-success, #43e97b)}.course-page-wrapper .material-info{flex:1}.course-page-wrapper .material-title{font-size:1rem;font-weight:600;color:var(--color-text)}.course-page-wrapper .material-type{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--color-text-muted);flex-shrink:0}.course-page-wrapper .material-icon{font-size:1.25rem}.course-page-wrapper .material-type-text{font-weight:600}.course-page-wrapper .add-material-btn{background:transparent;border:2px dashed var(--color-border);border-radius:var(--radius-md);padding:1rem;width:100%;color:var(--color-text-muted);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.course-page-wrapper .add-material-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background:#667eea0d}.course-page-wrapper .activity-list{display:flex;flex-direction:column;gap:.75rem}.course-page-wrapper .activity-item{font-size:.875rem;color:var(--color-text);display:flex;align-items:baseline;gap:.5rem;padding:.5rem 0;flex-wrap:wrap}.course-page-wrapper .activity-bullet{color:var(--color-primary);font-size:1.25rem;line-height:1}.course-page-wrapper .activity-type{font-weight:600;color:var(--color-text)}.course-page-wrapper .activity-title{color:var(--color-text)}.course-page-wrapper .activity-score{color:var(--color-primary);font-weight:600}.course-page-wrapper .activity-time{color:var(--color-text-muted)}.course-page-wrapper .next-up-list{display:flex;flex-direction:column;gap:1rem}.course-page-wrapper .next-up-item{display:flex;align-items:center;gap:.75rem;font-size:.875rem}.course-page-wrapper .next-up-icon{font-size:1.5rem}.course-page-wrapper .next-up-label{font-weight:700;color:var(--color-text-muted)}.course-page-wrapper .next-up-action{color:var(--color-text);font-weight:600}.course-page-wrapper .course-not-found{text-align:center;padding:4rem 2rem}.course-page-wrapper .course-not-found h2{color:var(--color-text);margin-bottom:1.5rem}.no-chapters-placeholder{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - 8.3rem);text-align:center}.no-chapters-placeholder p{font-size:1rem;color:var(--color-text-muted);margin:0}@media (max-width: 768px){.course-page{padding:1rem}.course-page-wrapper .course-header{flex-direction:column;padding:1.5rem}.course-page-wrapper .course-header-main{flex-direction:column;align-items:center;text-align:center}.course-page-wrapper .course-title-large{font-size:1.5rem}.course-page-wrapper .course-stats{flex-direction:column;gap:.25rem}.course-page-wrapper .stat-divider{display:none}.course-page-wrapper .edit-course-btn{width:100%;justify-content:center}.course-page-wrapper .study-tab-modes-grid{grid-template-columns:repeat(3,1fr)}}.course-page-wrapper .activity-section{margin-bottom:1.25rem;overflow-x:hidden}.course-page-wrapper .activity-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.course-page-wrapper .activity-section-title{display:flex;align-items:center;gap:.75rem}.course-page-wrapper .activity-icon-small{width:36px;height:36px;border:2px solid var(--color-primary);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:var(--color-primary);flex-shrink:0}.course-page-wrapper .activity-section-title h3{font-size:1.25rem;font-weight:700;color:var(--color-text);margin:0}.course-page-wrapper .view-all-btn{background:transparent;border:2px solid var(--color-border);padding:.5rem 1rem;border-radius:var(--radius-md);font-size:.875rem;font-weight:600;color:var(--color-text);cursor:pointer;transition:all .2s}.course-page-wrapper .view-all-btn:hover{background:var(--color-bg-dark);border-color:var(--color-primary);color:var(--color-primary)}.course-page-wrapper .activity-cards-container{display:flex;gap:1rem;overflow-x:auto;padding-bottom:1rem;padding-top:.25rem;scroll-behavior:smooth}.course-page-wrapper .activity-cards-container::-webkit-scrollbar{height:8px}.course-page-wrapper .activity-cards-container::-webkit-scrollbar-track{background:var(--color-bg-dark);border-radius:4px}.course-page-wrapper .activity-cards-container::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:4px}.course-page-wrapper .activity-cards-container::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}.course-page-wrapper .activity-card{min-width:200px;max-width:200px;aspect-ratio:1;background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:1.25rem;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;justify-content:space-between;text-align:left}.course-page-wrapper .activity-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000001a;border-color:var(--color-primary)}.course-page-wrapper .activity-card-content{display:flex;flex-direction:column;gap:.75rem}.course-page-wrapper .activity-card-title{font-size:1rem;font-weight:700;color:var(--color-text);margin:0;line-height:1.3;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.course-page-wrapper .activity-difficulty{display:inline-block;padding:.25rem .625rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;text-transform:capitalize;width:fit-content}.course-page-wrapper .activity-difficulty.easy{background:#e8f5e9;color:#2e7d32}.course-page-wrapper .activity-difficulty.medium{background:#fff3e0;color:#f57c00}.course-page-wrapper .activity-difficulty.hard{background:#ffebee;color:#c62828}.course-page-wrapper .activity-card-meta{display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;gap:0}.course-page-wrapper .meta-item{font-size:.8125rem;color:var(--color-text-muted)}.course-page-wrapper .meta-separator{color:var(--color-text-muted);opacity:.5}@media (max-width: 768px){.course-page-wrapper .activity-card{min-width:160px;max-width:160px}}.course-page-wrapper .coursebook-hero{margin-bottom:1.5rem}.course-page-wrapper .course-structure{margin-bottom:1.5rem;width:100%;max-width:100%;overflow:hidden}.course-page-wrapper .course-structure-weeks{display:flex;gap:.75rem;overflow-x:auto;padding-bottom:.5rem;scroll-behavior:smooth;width:100%;max-width:100%}.course-page-wrapper .course-structure-weeks::-webkit-scrollbar{height:6px}.course-page-wrapper .course-structure-weeks::-webkit-scrollbar-track{background:var(--color-bg-dark);border-radius:3px}.course-page-wrapper .course-structure-weeks::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}.course-page-wrapper .course-structure-weeks::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}.course-page-wrapper .week-label{background:transparent;border:2px solid var(--color-border);border-radius:var(--radius-md);padding:.625rem 10px;font-size:.875rem;font-weight:600;color:var(--color-text);cursor:pointer;transition:all .2s;white-space:nowrap;flex-shrink:0}.course-page-wrapper .week-label:hover{border-color:var(--color-primary);background:var(--color-bg-dark)}.course-page-wrapper .week-label.active{background:var(--color-surface);border-color:var(--color-primary);color:var(--color-text)}.course-page-wrapper .week-content-overview{margin-bottom:2rem}.course-page-wrapper .week-summary{font-size:1rem;line-height:1.7;color:var(--color-text);margin:0 0 1.5rem}.course-page-wrapper .week-chapters{margin-top:1.5rem}.course-page-wrapper .week-chapters-title{font-size:.875rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;margin:0 0 .75rem}.course-page-wrapper .week-chapters-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.course-page-wrapper .week-chapter-item{font-size:.9375rem;color:var(--color-text);padding:.625rem 1rem;background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-md);transition:all .2s;cursor:pointer}.course-page-wrapper .week-chapter-item:hover{border-color:var(--color-primary);background:var(--color-bg-dark)}.course-page-wrapper .two-column-layout{display:flex;gap:1.5rem;margin-bottom:2rem}.course-page-wrapper .left-column{flex:2;display:flex;flex-direction:column;gap:.75rem;min-width:0;overflow:hidden}.course-page-wrapper .right-column{flex:1;display:flex;flex-direction:column;gap:.75rem;max-width:300px}.course-page-wrapper .right-column .section-title{margin-bottom:0}.course-page-wrapper .study-now-widget{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.course-page-wrapper .study-now-item{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem;background:transparent;border:2px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.course-page-wrapper .study-now-item:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-bg-dark)}.study-now-item svg{flex-shrink:0}.course-page-wrapper .my-studysets-widget{display:flex;flex-direction:column;gap:.75rem}.course-page-wrapper .studyset-badge{display:flex;align-items:center;gap:.75rem;padding:.875rem;background:transparent;border:2px solid var(--color-border);border-radius:var(--radius-md);transition:all .2s}.course-page-wrapper .studyset-badge:hover{border-color:var(--color-primary);background:var(--color-bg-dark)}.course-page-wrapper .studyset-badge-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.5rem;cursor:pointer}.course-page-wrapper .studyset-badge-btn{background:var(--color-surface);border:2px solid transparent;border-radius:var(--radius-sm);width:32px;height:32px;display:flex;align-items:center;justify-content:center;color:var(--color-primary);cursor:pointer;transition:all .2s;flex-shrink:0}.course-page-wrapper .studyset-badge-btn:hover{border-color:var(--color-primary);transform:scale(1.05)}.course-page-wrapper .studyset-badge-title{font-size:.875rem;font-weight:600;color:var(--color-text);margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.course-page-wrapper .studyset-badge-activities{display:flex;gap:.5rem;align-items:center}.course-page-wrapper .studyset-activity-icon{display:flex;align-items:center;justify-content:center;color:var(--color-text-muted);transition:all .2s;width:24px;height:24px;flex-shrink:0;background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;padding:0}.course-page-wrapper .studyset-activity-icon:hover{color:var(--color-primary);background:var(--color-bg-dark)}.course-page-wrapper .course-info-block{padding:0}.course-page-wrapper .course-description{font-size:1rem;line-height:1.6;color:var(--color-text);margin:0}.course-page-wrapper .widgets-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;margin-bottom:2rem}.course-page-wrapper .widget-container{display:flex;flex-direction:column;gap:0}.widget-container .section-title{margin-bottom:.75rem}.course-page-wrapper .pick-up-widget{display:flex;flex-direction:column;gap:.75rem}.course-page-wrapper .pick-up-badge{display:flex;align-items:center;gap:.75rem;padding:.875rem;background:transparent;border:2px solid var(--color-border);border-radius:var(--radius-md);transition:all .2s}.course-page-wrapper .pick-up-badge:hover{border-color:var(--color-primary);background:var(--color-bg-dark)}.course-page-wrapper .pick-up-row-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;color:var(--color-primary);width:40px;height:40px}.course-page-wrapper .pick-up-row-info{flex:1;min-width:0}.course-page-wrapper .pick-up-row-title{font-size:.875rem;font-weight:600;color:var(--color-text);margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.course-page-wrapper .pick-up-row-meta{font-size:.75rem;color:var(--color-text-muted);margin:0}.course-page-wrapper .pick-up-continue-btn{background:var(--color-surface);border:2px solid transparent;border-radius:var(--radius-sm);width:32px;height:32px;display:flex;align-items:center;justify-content:center;color:var(--color-primary);cursor:pointer;transition:all .2s;flex-shrink:0}.course-page-wrapper .pick-up-continue-btn:hover{border-color:var(--color-primary);transform:scale(1.05)}.course-page-wrapper .placeholder-widget{background:var(--color-surface);border:2px dashed var(--color-border);border-radius:var(--radius-md);padding:2rem;display:flex;align-items:center;justify-content:center;min-height:200px}.course-page-wrapper .placeholder-text{color:var(--color-text-muted);font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin:0}.course-page-wrapper .section-header-with-action{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.section-header-with-action .section-title{margin-bottom:0;line-height:1}.add-studyset-btn,.course-page-wrapper .upload-btn{background:transparent;border:2px solid var(--color-border);border-radius:var(--radius-md);padding:.375rem .875rem;font-size:.8125rem;font-weight:600;color:var(--color-text);cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:.5rem;height:33px}.course-page-wrapper .add-studyset-btn:hover:not(:disabled),.course-page-wrapper .upload-btn:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary);background:#667eea0d}.course-page-wrapper .add-studyset-btn:disabled,.course-page-wrapper .upload-btn:disabled{opacity:.5;cursor:not-allowed}.course-page-wrapper .studysets-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.course-page-wrapper .studyset-card{background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:1.25rem;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;gap:1rem}.course-page-wrapper .studyset-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000001a;border-color:var(--color-primary)}.course-page-wrapper .studyset-card-header{flex:1}.course-page-wrapper .studyset-card-title{font-size:1.125rem;font-weight:700;color:var(--color-text);margin:0 0 .5rem;line-height:1.3}.course-page-wrapper .studyset-card-description{font-size:.875rem;color:var(--color-text-muted);margin:0;line-height:1.5;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.course-page-wrapper .studyset-card-meta{display:flex;justify-content:space-between;align-items:center;padding-top:.75rem;border-top:1px solid var(--color-border)}.course-page-wrapper .studyset-term-count{font-size:.875rem;color:var(--color-text-muted);font-weight:600}.course-page-wrapper .studyset-progress-indicator{display:flex;align-items:center;gap:.375rem;font-size:.875rem;color:var(--color-text-muted)}.course-page-wrapper .progress-circle{font-size:1.125rem;color:var(--color-border)}.course-page-wrapper .progress-text{font-weight:600}.course-page-wrapper .studyset-activities{display:flex;gap:.5rem;align-items:center}.course-page-wrapper .activity-icon-small{font-size:1.25rem}.course-page-wrapper .activity-icon-more{font-size:.75rem;color:var(--color-text-muted);font-weight:600}.course-page-wrapper .materials-list-new{display:flex;flex-direction:column;gap:.75rem}.course-page-wrapper .material-item-new{background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-md);padding:1rem;display:flex;align-items:center;gap:1rem;transition:all .2s}.course-page-wrapper .material-item-new:hover{border-color:var(--color-primary);background:var(--color-bg-dark)}.course-page-wrapper .material-icon-type{font-size:2rem;flex-shrink:0}.course-page-wrapper .material-info-new{flex:1;min-width:0}.course-page-wrapper .material-name{font-size:.9375rem;font-weight:600;color:var(--color-text);margin:0 0 .25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.course-page-wrapper .material-metadata{font-size:.8125rem;color:var(--color-text-muted);margin:0}.course-page-wrapper .material-actions{display:flex;gap:.5rem;flex-shrink:0}.course-page-wrapper .material-action-btn{background:transparent;border:2px solid var(--color-border);border-radius:var(--radius-sm);padding:.5rem;color:var(--color-text-muted);cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.course-page-wrapper .material-action-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.course-page-wrapper .material-action-delete:hover{border-color:#f5576c;color:#f5576c}.course-page-wrapper .study-history-filters{display:flex;gap:.75rem;margin-bottom:1.5rem;flex-wrap:wrap}.course-page-wrapper .history-filter{background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-md);padding:.5rem 1rem;font-size:.875rem;font-weight:600;color:var(--color-text);cursor:pointer;transition:all .2s}.course-page-wrapper .history-filter:hover:not(:disabled){border-color:var(--color-primary)}.course-page-wrapper .history-filter:disabled{opacity:.5;cursor:not-allowed}.course-page-wrapper .study-history-list{display:flex;flex-direction:column;gap:1.5rem}.course-page-wrapper .history-date-group{display:flex;flex-direction:column;gap:.75rem}.course-page-wrapper .history-date-label{font-size:.875rem;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;margin:0}.course-page-wrapper .history-item{background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-md);padding:1rem;display:flex;align-items:center;gap:1rem;transition:all .2s}.course-page-wrapper .history-item:hover{border-color:var(--color-primary);background:var(--color-bg-dark)}.course-page-wrapper .history-icon{font-size:1.75rem;flex-shrink:0}.course-page-wrapper .history-details{flex:1;min-width:0}.course-page-wrapper .history-activity-name{font-size:1rem;font-weight:600;color:var(--color-text);margin:0 0 .25rem}.course-page-wrapper .history-metadata{font-size:.8125rem;color:var(--color-text-muted);margin:0}.course-page-wrapper .load-more-btn{background:transparent;border:2px dashed var(--color-border);border-radius:var(--radius-md);padding:.875rem;width:100%;color:var(--color-text-muted);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;margin-top:1rem}.course-page-wrapper .load-more-btn:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary);background:#667eea0d}.course-page-wrapper .load-more-btn:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.course-page-wrapper .two-column-layout{flex-direction:column}.course-page-wrapper .widgets-row,.course-page-wrapper .studysets-grid{grid-template-columns:1fr}.course-page-wrapper .study-history-filters{flex-direction:column}.course-page-wrapper .history-filter{width:100%}}.my-materials-page{padding:32px;max-width:1200px;margin:0 auto}.page-header{margin-bottom:var(--spacing-lg)}.page-header h1{font-size:2rem;font-weight:700;color:var(--text-color);margin:0}.upload-zone{background:var(--surface-color);border:2px dashed var(--color-border);border-radius:var(--border-radius-lg);padding:var(--spacing-2xl);text-align:center;cursor:pointer;transition:all var(--transition-base)}.upload-zone:hover{border-color:var(--primary-color);background:#63e4d80d}.upload-zone.dragging{border-color:var(--primary-color);background:#63e4d81a;transform:scale(1.02)}.upload-icon{color:var(--primary-color);margin-bottom:var(--spacing-md)}.upload-zone h3{font-size:1.25rem;font-weight:600;color:var(--text-color);margin:0 0 var(--spacing-xs) 0}.upload-zone p{color:var(--text-muted);margin:0;font-size:.875rem}.section-divider{width:100%;height:1px;background:var(--color-border);margin-top:var(--spacing-xl)}.timeline-header{display:flex;justify-content:space-between;align-items:flex-start;padding:var(--spacing-lg) 0;flex-wrap:wrap;gap:var(--spacing-lg)}.timeline-title{font-size:1.75rem;font-weight:700;color:var(--text-color);margin:0}.timeline-controls{display:flex;gap:var(--spacing-lg);align-items:center;flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;gap:.375rem}.filter-group label{font-size:.75rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;padding-left:.25rem}.custom-select{position:relative;padding:.625rem 1rem;background:var(--color-surface);border:none;border-radius:8px;color:var(--text-color);font-size:.9375rem;font-weight:600;cursor:pointer;transition:all var(--transition-base);min-width:160px;box-shadow:0 2px 8px #00000026;display:flex;align-items:center;justify-content:space-between;gap:.5rem}.select-value{flex:1}.select-icon{color:var(--secondary-color);transition:transform var(--transition-base);flex-shrink:0}.select-icon.open{transform:rotate(180deg)}.select-dropdown{position:absolute;top:calc(100% + .5rem);left:0;right:0;background:var(--color-surface);border:none;border-radius:8px;box-shadow:0 8px 24px #0003;z-index:1000;overflow:hidden;animation:dropdownSlide .2s ease-out}@keyframes dropdownSlide{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.select-option{padding:.75rem 1rem;cursor:pointer;transition:all var(--transition-fast);border:none;font-weight:500}.select-option:hover{background:#63e4d826;color:var(--secondary-color);padding-left:1.25rem}.select-option.selected{background:linear-gradient(135deg,#667eea26,#63e4d826);color:var(--secondary-color);font-weight:700}.materials-timeline{margin-top:0}.timeline-group{margin-bottom:24px}.timeline-group-title{font-size:1.5rem;font-weight:600;color:var(--text-color);margin:0;padding-bottom:var(--spacing-sm);border-bottom:2px solid var(--border-color)}.timeline-items{display:flex;flex-direction:column;gap:.75rem}.material-card{display:flex;gap:var(--spacing-md);background:var(--surface-color);border:1px solid transparent;border-radius:8px;padding:.75rem;transition:all var(--transition-base)}.material-card:hover{border-color:var(--color-primary)}.material-time{font-size:.875rem;color:var(--text-muted)}.material-content{display:flex;align-items:center;gap:var(--spacing-md);flex:1;min-width:0}.material-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border:2px solid var(--color-border);border-radius:8px;color:var(--primary-color);flex-shrink:0}.material-info{flex:1;min-width:0;display:flex;flex-direction:column}.material-header{margin-bottom:.375rem}.material-title-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.material-title{font-size:1rem;font-weight:600;color:var(--text-color);margin:0}.material-name{font-size:1rem;font-weight:600;color:var(--text-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.material-badges{display:flex;gap:.5rem;flex-wrap:wrap}.material-type-badge,.material-week-badge{display:inline-block;padding:2px .625rem;border-radius:9999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.material-type-badge{background:#667eea1a;color:var(--primary-color);border:1px solid rgba(102,126,234,.2)}.material-week-badge{background:#63e4d81a;color:var(--secondary-color);border:1px solid rgba(99,228,216,.2)}.material-meta{display:flex;align-items:center;gap:var(--spacing-xs);font-size:.875rem;color:var(--text-muted);flex-wrap:wrap}.material-course{font-weight:600;color:var(--primary-color);text-transform:uppercase}.meta-separator{color:var(--border-color)}.material-status{display:flex;align-items:center;gap:var(--spacing-xs);font-size:.875rem;font-weight:500}.material-status-ready{color:var(--success-color)}.material-status-failed{color:#ef4444}.material-status-processing{color:var(--text-muted);flex-direction:column;align-items:flex-start}.progress-bar{width:100%;height:4px;background:var(--surface-light);border-radius:var(--border-radius-full);overflow:hidden;margin-bottom:var(--spacing-xs)}.progress-fill{height:100%;background:var(--primary-color);transition:width var(--transition-base)}.status-text{display:flex;align-items:center;gap:var(--spacing-xs)}.spinner{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.material-actions{display:flex;align-items:flex-start;gap:var(--spacing-xs);flex-shrink:0}.action-button{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--border-radius-md);background:var(--surface-color);color:var(--text-color);font-size:.875rem;font-weight:500;cursor:pointer;transition:all var(--transition-fast);text-decoration:none}.action-button:hover{border-color:var(--primary-color);color:var(--primary-color)}.action-button-primary{background:var(--primary-color);border-color:var(--primary-color);color:var(--background-dark)}.action-button-primary:hover{background:var(--secondary-color);border-color:var(--secondary-color);color:var(--background-dark)}.action-button-secondary{background:transparent}.action-button-icon{padding:var(--spacing-xs)}.no-materials{text-align:center;padding:var(--spacing-2xl);color:var(--text-muted)}@media (max-width: 768px){.my-materials-page{padding:var(--spacing-md)}.upload-zone{padding:var(--spacing-xl)}.material-card{flex-direction:column}.timeline-header{flex-direction:column;align-items:flex-start}.timeline-controls{width:100%;flex-direction:column;align-items:stretch}.filter-group,.filter-group select{width:100%}.material-time{min-width:auto}.material-content{flex-direction:column}.material-actions{flex-direction:column;width:100%}.action-button{width:100%;justify-content:center}}.studyset-page{padding:2rem 2rem 6rem;max-width:1200px;margin:0 auto}.studyset-page .studyset-not-found{text-align:center;padding:4rem 2rem}.studyset-page .studyset-header{margin-bottom:3rem}.studyset-page .studyset-header-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.studyset-page .back-btn{display:flex;align-items:center;gap:.5rem;background:transparent;border:none;color:var(--color-text);font-size:.875rem;font-weight:600;cursor:pointer;padding:.5rem;border-radius:var(--radius-md);transition:all .2s}.studyset-page .back-btn:hover{background:var(--color-bg-dark);color:var(--color-primary)}.studyset-page .studyset-actions{display:flex;gap:.5rem}.studyset-page .action-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);cursor:pointer;transition:all .2s}.studyset-page .action-btn:hover{background:var(--color-bg-dark);border-color:var(--color-primary);color:var(--color-primary)}.studyset-page .studyset-info{max-width:900px}.studyset-page .studyset-title{font-size:2.5rem;font-weight:700;color:var(--color-text);margin:0 0 .75rem;line-height:1.2}.studyset-page .studyset-description{font-size:1.125rem;color:var(--color-text-muted);margin:0 0 1rem;line-height:1.6}.studyset-page .studyset-meta{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;font-size:.875rem;color:var(--color-text-muted);margin-bottom:1rem}.studyset-page .meta-item{font-weight:500}.studyset-page .meta-divider{opacity:.5}.studyset-page .studyset-tags{display:flex;flex-wrap:wrap;gap:.5rem}.studyset-page .tag{padding:.375rem .75rem;background:var(--color-bg-dark);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:.8125rem;color:var(--color-text);font-weight:500}.studyset-page .studyset-section{margin-bottom:3rem}.studyset-page .section-title{font-size:.875rem;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:1px;margin:0 0 1.5rem}.studyset-page .study-mode-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1.25rem}.studyset-page .study-mode-card-btn{background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:2rem 1.5rem;display:flex;flex-direction:column;align-items:center;gap:.75rem;cursor:pointer;transition:all .2s;text-align:center}.studyset-page .study-mode-card-btn:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f;border-color:var(--color-primary)}.studyset-page .mode-icon-large{width:80px;height:80px;border:3px solid;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;transition:all .2s}.studyset-page .study-mode-card-btn:hover .mode-icon-large{transform:scale(1.05)}.studyset-page .mode-name{font-size:1.125rem;font-weight:700;color:var(--color-text);margin:0}.studyset-page .mode-description{font-size:.8125rem;color:var(--color-text-muted);margin:0}.studyset-page .terms-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.studyset-page .terms-controls{display:flex;gap:1rem;align-items:center}.studyset-page .search-box{display:flex;align-items:center;gap:.5rem;background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-md);padding:.5rem .75rem;min-width:250px}.studyset-page .search-box svg{color:var(--color-text-muted);flex-shrink:0}.studyset-page .search-box input{flex:1;border:none;background:transparent;color:var(--color-text);font-size:.875rem;outline:none}.studyset-page .search-box input::placeholder{color:var(--color-text-muted)}.studyset-page .view-toggle{display:flex;gap:.25rem;background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-md);padding:.25rem}.studyset-page .view-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--color-text-muted);font-size:1.125rem;cursor:pointer;transition:all .2s}.studyset-page .view-btn:hover{background:var(--color-bg-dark);color:var(--color-text)}.studyset-page .view-btn.active{background:var(--color-primary);color:#fff}.studyset-page .terms-list{display:flex;flex-direction:column;gap:1rem}.studyset-page .terms-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.studyset-page .term-card{background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:1.5rem;display:flex;gap:1rem;transition:all .2s}.studyset-page .term-card:hover{border-color:var(--color-primary);box-shadow:0 4px 12px #00000014}.studyset-page .term-number{flex-shrink:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--color-bg-dark);border-radius:var(--radius-md);font-size:.875rem;font-weight:700;color:var(--color-text-muted)}.studyset-page .term-content{flex:1;min-width:0}.studyset-page .term-title{font-size:1.125rem;font-weight:700;color:var(--color-text);margin:0 0 .75rem}.studyset-page .term-divider{width:100%;height:2px;background:var(--color-border);margin-bottom:.75rem}.studyset-page .term-definition{font-size:.9375rem;color:var(--color-text);line-height:1.6;margin:0}.studyset-page .terms-empty{text-align:center;padding:3rem;color:var(--color-text-muted)}@media (max-width: 768px){.studyset-page{padding:1rem}.studyset-page .studyset-title{font-size:2rem}.studyset-page .studyset-description{font-size:1rem}.studyset-page .study-mode-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:1rem}.studyset-page .mode-icon-large{width:64px;height:64px}.studyset-page .terms-section-header{flex-direction:column;align-items:flex-start}.studyset-page .terms-controls{width:100%;flex-direction:column}.studyset-page .search-box{width:100%}.studyset-page .terms-grid{grid-template-columns:1fr}.studyset-page .term-card{flex-direction:column}}.search-sets-wrapper{position:relative;max-width:900px;margin:0 auto var(--spacing-lg);z-index:100}.search-sets-card{background:transparent;border:1px solid var(--color-border);border-radius:9999px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transition:box-shadow var(--transition-base);overflow:hidden;position:relative;z-index:100}.search-sets-card:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.search-sets-container{display:flex;align-items:center;position:relative;height:64px}.search-sets-bg-gray{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--surface-light);border-radius:9999px;z-index:0}.search-sets-pill-hover{position:absolute;top:0;bottom:0;background:var(--surface-light);border-radius:9999px;transition:all .3s ease-out;z-index:5}.search-sets-pill-active{position:absolute;top:0;bottom:0;background:var(--color-surface);border-radius:9999px;transition:all .3s ease-out;z-index:10;box-shadow:0 1px 3px #0000001a}.search-sets-section{position:relative;z-index:20;min-width:0}.search-sets-section-search{flex:5}.search-sets-section-course{flex:4}.search-sets-section-tags{flex:3}.search-sets-section-content{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;width:100%;height:64px;padding:0 40px;cursor:pointer;background:transparent;position:relative}.search-sets-filter-btn{width:100%;height:64px;display:flex;align-items:center;justify-content:space-between;text-align:left;padding:0 32px;background:transparent;border:none;cursor:pointer;color:var(--text-color);position:relative}.search-sets-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;color:var(--text-color)}.search-sets-input{width:100%;background:transparent;border:none;outline:none;color:var(--text-color);font-size:.875rem;padding:0;margin:0;box-shadow:none}.search-sets-input:focus{outline:none;box-shadow:none}.search-sets-input::placeholder{color:var(--text-muted);opacity:.5}.search-sets-value{font-size:.875rem;color:var(--text-color);font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-sets-placeholder{font-size:.875rem;color:var(--text-muted);font-weight:400;opacity:.5}.search-sets-clear-btn{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:transparent;border:none;cursor:pointer;color:var(--text-muted);padding:4px;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);z-index:30;opacity:.6}.search-sets-clear-btn:hover{color:var(--color-primary);opacity:1;transform:translateY(-50%) scale(1.1)}.search-sets-button-wrapper{position:relative;z-index:20;flex-shrink:0;width:128px;display:flex;justify-content:flex-end;padding-right:8px}.search-sets-search-btn{display:flex;align-items:center;justify-content:center;background:var(--color-primary);color:var(--color-bg-dark);border:none;border-radius:9999px;cursor:pointer;transition:all .3s ease-out;font-weight:600;width:48px;height:48px;padding:12px;box-shadow:0 0 15px #63e4d866}.search-sets-search-btn:hover{background:var(--color-accent-light);box-shadow:0 0 20px #63e4d899;transform:scale(1.02)}.search-sets-search-btn.expanded{width:100%;height:48px;padding:12px 24px;gap:8px}.search-sets-search-btn span{transition:opacity .3s}.search-sets-dropdown-container{position:absolute;top:100%;left:0;right:0;margin-top:8px;z-index:99999}.search-sets-dropdown{background:var(--color-surface);border:1px solid var(--border-color);border-radius:16px;box-shadow:0 10px 40px #0000004d;width:384px;max-height:500px;overflow-y:auto;transition:transform .3s ease-out,opacity .15s ease-out;position:relative;z-index:99999}.search-sets-dropdown-content{padding:12px;background:var(--color-surface);border-radius:16px}.dropdown-section-title{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:8px;padding-left:12px;padding-right:12px}.dropdown-empty{padding:var(--spacing-lg);text-align:center;color:var(--text-muted);font-size:.875rem}.dropdown-options{display:flex;flex-direction:column;gap:4px}.dropdown-option{display:flex;align-items:center;justify-content:space-between;padding:12px;background:transparent;border:none;border-radius:6px;cursor:pointer;text-align:left;color:var(--text-color);transition:background var(--transition-fast);width:100%}.dropdown-option:hover{background:var(--surface-light)}.dropdown-option.active{background:#63e4d81a}.dropdown-option .course-code{font-weight:600;font-size:.875rem;color:var(--primary-color);text-transform:uppercase}.dropdown-option .course-title{font-size:.95rem;color:var(--text-muted);margin-top:2px}.checkmark{color:var(--primary-color);font-weight:600}.dropdown-tags{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.tag-chip{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;background:var(--surface-light);border:1px solid var(--border-color);border-radius:var(--border-radius-full);font-size:.875rem;color:var(--text-color);cursor:pointer;transition:all var(--transition-fast)}.tag-chip:hover{border-color:var(--primary-color);background:#63e4d81a}.tag-chip.active{background:var(--primary-color);border-color:var(--primary-color);color:var(--background-dark)}.search-sets-dropdown::-webkit-scrollbar{width:8px}.search-sets-dropdown::-webkit-scrollbar-track{background:var(--color-surface)}.search-sets-dropdown::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:var(--border-radius-md)}.search-sets-dropdown::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@media (max-width: 768px){.search-sets-wrapper{max-width:100%}.search-sets-section-content{padding:0 20px}.search-sets-filter-btn{padding:0 16px}.search-sets-dropdown{width:100%}}.study-sets-page{padding:32px;max-width:1400px;margin:0 auto}.browse-section{padding-top:16px;margin:0}.section-header{display:flex;justify-content:space-between;align-items:center}.section-header h2{font-size:1.25rem;font-weight:600;color:var(--text-color);margin:0}.section-header-actions{display:flex;align-items:center;gap:.5rem}.section-header-actions .see-all-link{margin-left:.5rem}.see-all-link{color:var(--primary-color);text-decoration:none;font-weight:500;transition:color var(--transition-fast)}.see-all-link:hover{color:var(--secondary-color)}.carousel-wrapper{position:relative;padding:0}.carousel-container{display:flex;gap:var(--spacing-md);overflow-x:auto;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;padding:var(--spacing-sm) 0}.carousel-container::-webkit-scrollbar{display:none}.carousel-button{background:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--border-radius-md);width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-color);transition:all var(--transition-fast)}.carousel-button:hover{background:var(--surface-light);border-color:var(--primary-color);color:var(--primary-color)}.study-sets-page .studyset-card{flex:0 0 250px;height:250px;background:var(--surface-color);border:1px solid var(--color-border);border-radius:8px;padding:var(--spacing-md);text-decoration:none;color:var(--text-color);transition:all var(--transition-base);display:flex;flex-direction:column}.study-sets-page .studyset-card:hover{border-color:var(--primary-color);transform:translateY(-4px);box-shadow:0 8px 24px #63e4d833}.study-sets-page .studyset-card-compact{flex:0 0 200px;height:200px;padding:12px}.study-sets-page .studyset-card-header{margin-bottom:8px}.study-sets-page .studyset-title{font-size:1rem;font-weight:600;color:var(--text-color);margin:0;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.study-sets-page .studyset-card-body{display:flex;flex-direction:column;gap:var(--spacing-xs);flex:1}.study-sets-page .studyset-course{display:flex;justify-content:space-between;align-items:center;font-size:.875rem;font-weight:500;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;opacity:1}.study-sets-page .studyset-meta{display:none}.study-sets-page .meta-separator{color:var(--border-color)}.study-sets-page .studyset-rating{display:flex;align-items:center;gap:4px;color:var(--color-text-muted);font-weight:500}.study-sets-page .studyset-badge-activities{display:flex;gap:.5rem;align-items:center;margin-top:auto;padding-top:var(--spacing-sm)}.study-sets-page .studyset-activity-icon{display:flex;align-items:center;justify-content:center;color:var(--color-text-muted);transition:all .2s;width:24px;height:24px;flex-shrink:0;background:transparent;border:none;border-radius:var(--border-radius-sm);cursor:pointer;padding:0}.study-sets-page .studyset-activity-icon:hover{color:var(--color-primary);background:var(--color-bg-dark)}.study-sets-page .studyset-activity-more{font-size:.75rem;color:var(--color-text-muted);font-weight:600}.study-sets-page .studyset-description{font-size:.875rem;color:var(--text-muted);margin:var(--spacing-xs) 0;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.study-sets-page .studyset-tags{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin-top:auto}.study-sets-page .tag{padding:2px var(--spacing-xs);background:#63e4d81a;color:var(--primary-color);border-radius:var(--border-radius-sm);font-size:.75rem;font-weight:500}.study-sets-page .studyset-footer{display:flex;justify-content:space-between;align-items:center;margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--border-color);font-size:.875rem}.study-sets-page .studyset-users{color:var(--text-muted)}.study-sets-page .course-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:var(--spacing-md)}.study-sets-page .course-card{background:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);padding:var(--spacing-lg);text-decoration:none;color:var(--text-color);transition:all var(--transition-base);display:flex;flex-direction:column;min-height:140px}.study-sets-page .course-card:hover{border-color:var(--primary-color);transform:translateY(-4px);box-shadow:0 8px 24px #63e4d833}.study-sets-page .course-card-content{display:flex;flex-direction:column;gap:var(--spacing-xs)}.study-sets-page .course-code{font-size:.75rem;font-weight:700;color:var(--primary-color);text-transform:uppercase;letter-spacing:.05em}.study-sets-page .course-title{font-size:1rem;font-weight:500;color:var(--text-color)}.study-sets-page .course-count{font-size:.875rem;color:var(--text-muted);margin-top:auto;padding-top:var(--spacing-sm)}.tag-cloud{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.tag-button{padding:var(--spacing-xs) var(--spacing-md);background:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--border-radius-full);color:var(--text-color);font-size:.875rem;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.tag-button:hover{background:var(--primary-color);border-color:var(--primary-color);color:var(--background-dark);transform:scale(1.05)}.search-results{margin-top:var(--spacing-xl)}.search-results h2{font-size:1.5rem;font-weight:600;color:var(--text-color);margin-bottom:var(--spacing-md)}.studyset-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-md)}.no-results{text-align:center;padding:var(--spacing-2xl);color:var(--text-muted)}@media (max-width: 768px){.study-sets-page{padding:var(--spacing-md)}.carousel-wrapper{padding:0 var(--spacing-md)}.carousel-button{width:32px;height:32px}.studyset-card{flex:0 0 220px}.studyset-card-compact{flex:0 0 180px}.course-grid,.studyset-grid{grid-template-columns:1fr}}.quiz-activity{max-width:800px;margin:0 auto;padding:2rem 2rem 8rem}.quiz-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:3rem}.back-btn{display:flex;align-items:center;gap:.5rem;background:transparent;border:none;color:var(--color-text);font-size:.875rem;font-weight:600;cursor:pointer;padding:.5rem;border-radius:var(--radius-md);transition:all .2s}.back-btn:hover{background:var(--color-bg-dark);color:var(--color-primary)}.quiz-progress{font-size:.875rem;font-weight:600;color:var(--color-text-muted)}.quiz-content{display:flex;flex-direction:column;gap:2rem;width:100%}.quiz-question{font-size:1.75rem;font-weight:700;color:var(--color-text);margin:0;line-height:1.3;text-align:center}.quiz-options{display:flex;flex-direction:column;gap:1rem}.quiz-option{display:flex;align-items:center;gap:1rem;padding:1.25rem 1.5rem;background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;transition:border-color .2s,background .2s,box-shadow .2s;text-align:left;font-size:1rem;color:var(--color-text);min-height:70px;width:100%}.quiz-option:hover:not(:disabled){border-color:var(--color-primary);box-shadow:0 2px 8px #00000014}.quiz-option:disabled{cursor:default}.quiz-option.correct{border-color:#10b981;background:#10b9811a}.quiz-option.incorrect{border-color:#ef4444;background:#ef44441a}.quiz-option.correct-answer{border-color:#10b981;background:#10b9810d}.option-id{flex-shrink:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--color-bg-dark);border-radius:var(--radius-md);font-weight:700;font-size:.875rem;color:var(--color-text)}.quiz-option.correct .option-id{background:#10b981;color:#fff}.quiz-option.incorrect .option-id{background:#ef4444;color:#fff}.option-text{flex:1;line-height:1.5}.option-icon{flex-shrink:0;color:inherit}.quiz-feedback{display:flex;flex-direction:column;align-items:center;gap:1.5rem;margin-top:1rem}.feedback{display:flex;align-items:center;gap:.75rem;padding:1rem 1.5rem;border-radius:var(--radius-lg);font-weight:600;font-size:1rem}.feedback.correct{background:#10b9811a;color:#10b981}.feedback.incorrect{background:#ef44441a;color:#ef4444}.next-btn{padding:.875rem 2rem;background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-lg);font-size:1rem;font-weight:600;cursor:pointer;transition:opacity .2s,box-shadow .2s}.next-btn:hover{box-shadow:0 4px 12px #00000026;opacity:.9}.quiz-results{display:flex;flex-direction:column;align-items:center;gap:3rem;padding:2rem 0}.results-title{font-size:2.5rem;font-weight:700;color:var(--color-text);margin:0;text-align:center}.results-score{display:flex;flex-direction:column;align-items:center;gap:1rem}.circular-progress{filter:drop-shadow(0 4px 12px rgba(0,0,0,.1))}.progress-bg{opacity:.2}.progress-fill{transition:stroke-dashoffset 1s ease-out}.results-summary{font-size:1.125rem;font-weight:600;color:var(--color-text-muted);margin:0}.answer-review{width:100%;display:flex;flex-direction:column;gap:2rem}.review-title{font-size:1.5rem;font-weight:700;color:var(--color-text);margin:0;text-align:center}.review-question{background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.review-question-header{display:flex;justify-content:space-between;align-items:center}.review-question-number{font-size:.875rem;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.review-badge{display:flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border-radius:var(--radius-md);font-size:.8125rem;font-weight:600}.review-badge.correct{background:#10b9811a;color:#10b981}.review-badge.incorrect{background:#ef44441a;color:#ef4444}.review-question-text{font-size:1.25rem;font-weight:600;color:var(--color-text);margin:0;line-height:1.4}.review-options{display:flex;flex-direction:column;gap:.75rem}.review-option{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;background:var(--color-bg-dark);border:2px solid transparent;border-radius:var(--radius-md)}.review-option.selected-correct{border-color:#10b981;background:#10b9811a}.review-option.selected-incorrect{border-color:#ef4444;background:#ef44441a}.review-option.correct-answer{border-color:#10b981;background:#10b9810d}.review-option .option-id{width:32px;height:32px;font-size:.8125rem}.review-option.selected-correct .option-id{background:#10b981;color:#fff}.review-option.selected-incorrect .option-id{background:#ef4444;color:#fff}.review-option .option-text{flex:1;font-size:.9375rem}.option-badge{flex-shrink:0;padding:.25rem .625rem;background:var(--color-primary);color:#fff;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}@media (max-width: 768px){.quiz-activity{padding:1rem}.quiz-question{font-size:1.375rem}.results-title{font-size:2rem}.circular-progress{width:160px;height:160px}.review-question-text{font-size:1.125rem}}:root{--color-primary: #63e4d8;--color-primary-dark: #027783;--color-secondary: #4fd1c5;--color-accent: #38b2ac;--color-accent-light: #81e6d9;--color-warning: #f6ad55;--color-success: #48bb78;--color-bg-dark: #0a2a2e;--color-surface: #144a52;--color-surface-light: #1a6370;--color-text: #f0fdfa;--color-text-muted: #99c9c4;--color-border: #2a5f68;--gradient-primary: linear-gradient(135deg, #63e4d8, #027783);--gradient-secondary: linear-gradient(135deg, #4fd1c5, #38b2ac);--gradient-accent: linear-gradient(135deg, #81e6d9, #4fd1c5);--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 1.5rem;--spacing-lg: 2rem;--spacing-xl: 3rem;--spacing-2xl: 4rem;--spacing-3xl: 6rem;--font-xs: .75rem;--font-sm: .875rem;--font-base: 1rem;--font-lg: 1.125rem;--font-xl: 1.25rem;--font-2xl: 1.5rem;--font-3xl: 1.875rem;--font-4xl: 2.25rem;--font-5xl: 3rem;--font-6xl: 3.75rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1);--shadow-glow: 0 0 20px rgb(99 228 216 / .3);--transition-fast: .15s ease-in-out;--transition-base: .2s ease-in-out;--transition-slow: .3s ease-in-out;--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal: 1040;--z-popover: 1050;--z-tooltip: 1060}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;background-color:var(--color-bg-dark);color:var(--color-text);line-height:1.6;overflow-x:hidden}#root{min-height:100vh}::-webkit-scrollbar{display:none;width:0;height:0}*{scrollbar-width:none;-ms-overflow-style:none}::selection{background:var(--color-primary);color:var(--color-text)}*:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--spacing-md)}.gradient-text{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.section{padding:var(--spacing-3xl) 0}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.animate-fadeIn{animation:fadeIn .6s ease-out}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-base);font-weight:600;border:none;border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-base);text-decoration:none;white-space:nowrap;font-family:inherit}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--gradient-primary);color:var(--color-text);box-shadow:var(--shadow-md)}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-lg),var(--shadow-glow)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-secondary{background:transparent;color:var(--color-text);border:2px solid var(--color-border)}.btn-secondary:hover:not(:disabled){border-color:var(--color-primary);background:#63e4d81a}.btn-lg{padding:var(--spacing-md) var(--spacing-xl);font-size:var(--font-lg)}.btn-icon{padding:var(--spacing-sm);border-radius:var(--radius-full)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--spacing-lg);box-shadow:var(--shadow-md);transition:all var(--transition-base)}.card:hover{box-shadow:var(--shadow-lg);border-color:var(--color-surface-light)}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border)}.card-title{font-size:var(--font-xl);font-weight:700;color:var(--color-text)}.card-content{color:var(--color-text)}.input-group{margin-bottom:var(--spacing-md)}.input-label{display:block;margin-bottom:var(--spacing-xs);font-size:var(--font-sm);font-weight:500;color:var(--color-text-muted)}.input,.textarea{width:100%;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-base);font-family:inherit;color:var(--color-text);background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-lg);transition:all var(--transition-base)}.input:focus,.textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #63e4d81a}.textarea{resize:vertical;min-height:120px;line-height:1.6}.input::placeholder,.textarea::placeholder{color:var(--color-text-muted)}.loading-spinner{display:inline-block;width:20px;height:20px;border:3px solid var(--color-surface-light);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl);text-align:center}.loading-text{margin-top:var(--spacing-md);color:var(--color-text-muted);font-size:var(--font-lg)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-3xl) var(--spacing-md);text-align:center}.empty-state-icon{font-size:4rem;margin-bottom:var(--spacing-md);opacity:.5}.empty-state-title{font-size:var(--font-2xl);font-weight:600;margin-bottom:var(--spacing-sm);color:var(--color-text)}.empty-state-description{font-size:var(--font-base);color:var(--color-text-muted);max-width:400px}.badge{display:inline-flex;align-items:center;padding:.25rem .75rem;font-size:var(--font-xs);font-weight:600;border-radius:var(--radius-full);background:#63e4d833;color:var(--color-primary)}
