:root{font-family:Cairo,IBM Plex Sans Arabic,system-ui,-apple-system,sans-serif;font-size:15px;line-height:1.6;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--bg-primary: #f8fafc;--bg-secondary: #ffffff;--bg-header: #ffffff;--text-primary: #0f172a;--text-secondary: #475569;--border-color: #e2e8f0;--border-dark: #cbd5e1;--input-bg: #f8fafc;--input-border: #e2e8f0;--card-shadow: 0 4px 6px -1px rgba(0, 0, 0, .05), 0 2px 4px -1px rgba(0, 0, 0, .03);--today-bg: #f0f7ff;--stat-icon-bg-sessions: linear-gradient(135deg, #dbeafe 0%, #bfdbfe 100%);--stat-icon-bg-materials: linear-gradient(135deg, #fef3c7 0%, #fde68a 100%);--stat-icon-bg-assessments: linear-gradient(135deg, #dcfce7 0%, #bbf7d0 100%);--stat-icon-bg-completed: linear-gradient(135deg, #f3e8ff 0%, #e9d5ff 100%);--glass-bg: rgba(255, 255, 255, .7);--glass-border: rgba(255, 255, 255, .5);--primary-color: #667eea;--header-gradient: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--sidebar-bg: #1a1a2e;--sidebar-text: #ffffff;--card-bg: #ffffff;--btn-primary: #667eea;--btn-primary-text: #ffffff;color:var(--text-primary);background-color:var(--bg-primary)}[data-theme=dark]{--bg-primary: #020617;--bg-secondary: #0f172a;--bg-header: #0f172a;--text-primary: #f8fafc;--text-secondary: #94a3b8;--border-color: #1e293b;--border-dark: #334155;--input-bg: #020617;--input-border: #1e293b;--card-bg: #0f172a;--card-shadow: 0 10px 25px -5px rgba(0, 0, 0, .5);--today-bg: rgba(99, 102, 241, .1);--stat-icon-bg-sessions: linear-gradient(135deg, rgba(37, 99, 235, .2) 0%, rgba(37, 99, 235, .05) 100%);--stat-icon-bg-materials: linear-gradient(135deg, rgba(217, 119, 6, .2) 0%, rgba(217, 119, 6, .05) 100%);--stat-icon-bg-assessments: linear-gradient(135deg, rgba(22, 163, 74, .2) 0%, rgba(22, 163, 74, .05) 100%);--stat-icon-bg-completed: linear-gradient(135deg, rgba(147, 51, 234, .2) 0%, rgba(147, 51, 234, .05) 100%);--glass-bg: rgba(15, 23, 42, .7);--glass-border: rgba(30, 41, 59, .5);--sidebar-bg: #020617;--sidebar-text: #f8fafc;--header-gradient: linear-gradient(135deg, #818cf8 0%, #c084fc 100%);--btn-primary: #667eea;color:var(--text-primary);background-color:var(--bg-primary)}a{font-weight:500;color:#667eea;text-decoration:inherit}a:hover{color:#5568d3}body{margin:0;min-width:320px;min-height:100vh;background:var(--bg-primary);color:var(--text-primary)}h1,h2,h3,h4,h5,h6{font-family:inherit;font-weight:600;line-height:1.3;color:var(--text-primary);margin-top:0;margin-bottom:.5em}h1{font-size:1.25rem}h2{font-size:1.125rem}h3{font-size:1rem}h4{font-size:16px;font-weight:500}strong,b{font-weight:600}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);cursor:pointer;transition:border-color .25s}button:hover{border-color:#667eea}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}.card{padding:2em;background-color:var(--card-bg);box-shadow:var(--card-shadow);border-radius:12px;border:1px solid var(--border-color)}#app{margin:0 auto;padding:0;width:100%}html[dir=rtl],html[dir=rtl] body,html[dir=rtl] input,html[dir=rtl] textarea,html[dir=rtl] select{direction:rtl}html[dir=rtl] input[type=number],html[dir=rtl] input[type=tel]{direction:ltr;text-align:left}html[dir=rtl] .flex-row,html[dir=rtl] .flex-between{flex-direction:row-reverse}html[dir=rtl] .ml-auto{margin-left:0;margin-right:auto}html[dir=rtl] .mr-auto{margin-right:0;margin-left:auto}html[dir=rtl] .pl-4{padding-left:0;padding-right:1rem}html[dir=rtl] .pr-4{padding-right:0;padding-left:1rem}html[dir=rtl] button svg{transform:scaleX(-1)}html[dir=rtl] .gap-2{gap:.5rem}html[dir=rtl] .sidebar{transform:translate(100%);left:auto;right:0}html[dir=rtl] .sidebar.open{transform:translate(0)}@media(min-width:1025px){html[dir=rtl] .sidebar{transform:translate(0)}}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}body{font-family:Cairo,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;line-height:1.5;color:var(--text-primary, #1a1a2e);background-color:var(--bg-primary, #f0f4f8);min-height:100vh;overflow-x:hidden}:focus-visible{outline:2px solid #667eea;outline-offset:2px}button{font-family:inherit;font-size:inherit;cursor:pointer}input,select,textarea{font-family:inherit;font-size:inherit}a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-primary, #f1f1f1);border-radius:4px}::-webkit-scrollbar-thumb{background:var(--border-color, #c1c1c1);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary, #a1a1a1)}*{scrollbar-width:thin;scrollbar-color:var(--border-color, #c1c1c1) var(--bg-primary, #f1f1f1)}img{max-width:100%;height:auto;display:block}table{border-collapse:collapse;width:100%}a{color:inherit;text-decoration:none}#app{min-height:100vh}@media(max-width:767px){html{font-size:14px}}@media(max-width:479px){html{font-size:13px}}@media print{body{background:#fff}}.language-switcher[data-v-a116a4ca]{display:flex;align-items:center}.language-toggle-btn[data-v-a116a4ca]{display:flex;align-items:center;gap:6px;padding:8px 12px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;font-size:13px;font-weight:600;color:var(--text-primary);transition:all .3s ease}.language-toggle-btn[data-v-a116a4ca]:hover{background:var(--border-color)}.language-toggle-btn[data-v-a116a4ca]:active{transform:scale(.98)}.language-code[data-v-a116a4ca]{white-space:nowrap}svg[data-v-a116a4ca]{width:18px;height:18px}.theme-toggle-btn[data-v-9e982c99]{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;border:1px solid transparent;background:transparent;color:var(--text-secondary);cursor:pointer;transition:all .2s ease;padding:0;flex-shrink:0}.theme-toggle-btn[data-v-9e982c99]:hover{background:var(--bg-secondary);color:var(--text-primary);border-color:var(--border-color)}[data-v-b3c6bc9b]{margin:0;padding:0;box-sizing:border-box}.login-page[data-v-b3c6bc9b]{min-height:100vh;background:var(--bg-primary, #f8fafc)}.login-container[data-v-b3c6bc9b]{display:flex;min-height:100vh}.login-branding[data-v-b3c6bc9b]{flex:1;background:radial-gradient(circle at 20% 50%,#1e1b4b,#020617);display:flex;align-items:center;justify-content:center;padding:3rem;position:relative;overflow:hidden}.login-branding[data-v-b3c6bc9b]:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(99,102,241,.15) 0%,transparent 40%),radial-gradient(circle at 80% 20%,rgba(168,85,247,.15) 0%,transparent 40%);animation:pulse-b3c6bc9b 15s ease-in-out infinite}@keyframes pulse-b3c6bc9b{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.branding-content[data-v-b3c6bc9b]{position:relative;z-index:1;text-align:center;color:#fff;max-width:400px}.branding-logo[data-v-b3c6bc9b]{width:100px;height:100px;margin-bottom:1.5rem;filter:drop-shadow(0 4px 20px rgba(102,126,234,.3))}.branding-title[data-v-b3c6bc9b]{font-size:2.75rem;font-weight:800;margin-bottom:.75rem;background:linear-gradient(135deg,#fff,#c7d2fe,#a855f7);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:0 4px 20px rgba(168,85,247,.3)}.branding-subtitle[data-v-b3c6bc9b]{font-size:1.1rem;color:#ffffffb3;margin-bottom:2.5rem;line-height:1.6}.branding-features[data-v-b3c6bc9b]{display:flex;flex-direction:column;gap:1rem}.feature-item[data-v-b3c6bc9b]{display:flex;align-items:center;gap:1rem;padding:1.25rem;background:#ffffff08;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;border:1px solid rgba(255,255,255,.08);box-shadow:0 4px 20px #0000001a;transition:all .4s cubic-bezier(.4,0,.2,1)}.feature-item[data-v-b3c6bc9b]:hover{background:#ffffff14;transform:translateY(-5px) scale(1.02);border-color:#6366f14d;box-shadow:0 10px 30px #6366f133}.feature-item svg[data-v-b3c6bc9b]{color:#a855f7;filter:drop-shadow(0 0 8px rgba(168,85,247,.4));transition:transform .3s ease}.feature-item:hover svg[data-v-b3c6bc9b]{transform:scale(1.1) rotate(5deg)}.feature-item span[data-v-b3c6bc9b]{font-size:1.05rem;font-weight:500;color:#fffffff2}.login-form-container[data-v-b3c6bc9b]{flex:1;display:flex;align-items:center;justify-content:center;padding:2rem;background:var(--bg-primary, #f8fafc);position:relative;overflow:hidden}.login-form-container[data-v-b3c6bc9b]:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 20%,rgba(99,102,241,.15) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(168,85,247,.15) 0%,transparent 50%);pointer-events:none}.login-box[data-v-b3c6bc9b]{width:100%;max-width:440px;padding:3.5rem 2.5rem;background:var(--glass-bg, rgba(255, 255, 255, .9));-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--glass-border, rgba(255, 255, 255, .6));border-radius:24px;box-shadow:var(--glass-shadow, 0 20px 40px rgba(0, 0, 0, .08), 0 1px 3px rgba(0,0,0,.05));position:relative;z-index:10}.login-language[data-v-b3c6bc9b]{position:absolute;top:1rem;right:1rem;display:flex;align-items:center}html[dir=rtl] .login-language[data-v-b3c6bc9b]{right:auto;left:1rem}.login-logo-mobile[data-v-b3c6bc9b]{display:none;width:60px;height:60px;margin:0 auto 1rem}.login-header[data-v-b3c6bc9b]{text-align:center;margin-bottom:2rem}.login-header h2[data-v-b3c6bc9b]{font-size:1.75rem;font-weight:700;color:var(--text-primary, #1a1a2e);margin-bottom:.5rem}.login-header p[data-v-b3c6bc9b]{color:var(--text-secondary, #6c757d);font-size:.95rem}.login-form[data-v-b3c6bc9b]{display:flex;flex-direction:column;gap:1.25rem}.form-group[data-v-b3c6bc9b]{display:flex;flex-direction:column;gap:.5rem}.form-group label[data-v-b3c6bc9b]{font-size:.875rem;font-weight:600;color:var(--text-primary, #374151)}.input-wrapper[data-v-b3c6bc9b]{position:relative;display:flex;align-items:center}.input-icon[data-v-b3c6bc9b]{position:absolute;left:1rem;color:var(--text-secondary, #9ca3af);pointer-events:none}.input-wrapper input[data-v-b3c6bc9b]{width:100%;padding:1rem 1rem 1rem 2.75rem;border:2px solid var(--border-color, #e2e8f0);border-radius:14px;font-size:1.05rem;transition:all .3s cubic-bezier(.4,0,.2,1);background:var(--input-bg, #f8fafc);color:var(--text-primary);box-shadow:inset 0 2px 4px #00000005}.input-wrapper input[data-v-b3c6bc9b]:focus{outline:none;border-color:#6366f1;background:var(--card-bg, white);box-shadow:0 0 0 4px #6366f126,inset 0 2px 4px #00000003;transform:translateY(-1px)}html[dir=rtl] .input-wrapper input[data-v-b3c6bc9b]{padding:1rem 2.75rem 1rem 1rem}html[dir=rtl] .input-icon[data-v-b3c6bc9b]{left:auto;right:1rem}.input-wrapper input[data-v-b3c6bc9b]::placeholder{color:var(--text-secondary, #9ca3af)}.input-wrapper input[data-v-b3c6bc9b]:disabled{opacity:.7;cursor:not-allowed}.error-message[data-v-b3c6bc9b]{display:flex;align-items:center;gap:.5rem;padding:.875rem 1rem;background:var(--error-bg, #fef2f2);border:1px solid var(--error-border, #fecaca);border-radius:10px;color:#dc2626;font-size:.875rem}.btn-login[data-v-b3c6bc9b]{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:1.125rem;background:linear-gradient(135deg,#6366f1,#8b5cf6,#a855f7);background-size:200% auto;color:#fff;border:none;border-radius:14px;font-size:1.1rem;font-weight:700;letter-spacing:.5px;cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);margin-top:1rem;box-shadow:0 4px 15px #6366f14d}.btn-login[data-v-b3c6bc9b]:hover:not(:disabled){background-position:right center;transform:translateY(-3px);box-shadow:0 12px 25px #8b5cf666}.btn-login[data-v-b3c6bc9b]:disabled{opacity:.7;cursor:not-allowed}.loading-spinner[data-v-b3c6bc9b]{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin-b3c6bc9b .8s linear infinite}@keyframes spin-b3c6bc9b{to{transform:rotate(360deg)}}.login-help[data-v-b3c6bc9b]{margin-top:1.5rem;text-align:center}.login-help p[data-v-b3c6bc9b]{color:var(--text-secondary, #6c757d);font-size:.875rem}@media(max-width:968px){.login-branding[data-v-b3c6bc9b]{display:none}.login-form-container[data-v-b3c6bc9b]{background:var(--header-gradient)}.login-logo-mobile[data-v-b3c6bc9b]{display:block}}@media(max-width:480px){.login-form-container[data-v-b3c6bc9b]{padding:1rem}.login-box[data-v-b3c6bc9b]{padding:1.5rem;border-radius:16px}.login-footer[data-v-b3c6bc9b]{margin-top:1.5rem;padding-top:1rem}}[data-theme=dark]{background:#0b0f19}[data-theme=dark]{background:radial-gradient(circle at 20% 20%,rgba(99,102,241,.2) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(168,85,247,.2) 0%,transparent 50%)}[data-theme=dark]{--glass-bg: rgba(30, 41, 59, .7);--glass-border: rgba(255, 255, 255, .05);--glass-shadow: 0 20px 40px rgba(0, 0, 0, .5), inset 0 1px 0 rgba(255,255,255,.05)}[data-theme=dark]{background:#0f172a99;border-color:#ffffff1a;color:#f1f5f9}[data-theme=dark]{background:#0f172ae6;border-color:#8b5cf6;box-shadow:0 0 0 4px #8b5cf626}[data-theme=dark]{background:transparent}[data-v-c14ef160]:root,.app-layout[data-v-c14ef160]{--sidebar-width: 260px;--sidebar-collapsed-width: 0px;--header-height: 64px;--primary-color: var(--primary-color, #667eea);--primary-dark: #5568d3;--primary-light: #f0f4ff;--secondary-color: #764ba2;--sidebar-bg-local: #0f2f24;--sidebar-bg-gradient: linear-gradient(180deg, #0f2f24 0%, #0d3b2e 100%);--sidebar-hover: rgba(255, 255, 255, .08);--sidebar-active: rgba(16, 185, 129, .2);--text-sidebar: #ffffff;--text-sidebar-secondary: rgba(255, 255, 255, .7);--danger-color: #ef4444;--danger-dark: #dc2626;--success-color: #10b981;--warning-color: #f59e0b;--info-color: #3b82f6;--content-bg: var(--bg-primary, #f0f4f8);--card-bg-local: var(--card-bg, #ffffff);--overlay-bg: rgba(0, 0, 0, .5);--modal-bg: rgba(0, 0, 0, .5);--border-color-local: var(--border-color, #e5e7eb);--border-light: #f3f4f6;--border-dark-local: var(--border-dark, #e9ecef);--sidebar-border: rgba(255, 255, 255, .1);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .05);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .08);--shadow-md: 0 4px 12px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 25px rgba(0, 0, 0, .15);--shadow-xl: 0 20px 60px rgba(0, 0, 0, .2);--header-shadow: 0 1px 3px rgba(0, 0, 0, .08);--modal-shadow: 0 20px 60px rgba(0, 0, 0, .2);--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 999px;--transition-fast: .2s ease;--transition-normal: .3s ease;--transition-slow: .5s ease;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem}[data-theme=dark]{--content-bg: #0f172a;--card-bg-local: #1e293b;--border-color-local: #334155;--border-light: #1e293b;--border-dark-local: #475569;--sidebar-bg-local: #0f172a;--sidebar-bg-gradient: linear-gradient(180deg, #0f172a 0%, #0f172a 100%);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .3);--shadow-md: 0 4px 12px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 25px rgba(0, 0, 0, .5);--shadow-xl: 0 20px 60px rgba(0, 0, 0, .6);--header-shadow: 0 1px 3px rgba(0, 0, 0, .3);--modal-shadow: 0 20px 60px rgba(0, 0, 0, .5);--modal-bg: rgba(0, 0, 0, .7);--glass-bg: rgba(15, 23, 42, .6);--glass-border: rgba(255, 255, 255, .05)}[data-v-c14ef160]{margin:0;padding:0;box-sizing:border-box}.app-layout[data-v-c14ef160]{display:flex;min-height:100vh;background:var(--content-bg);color:var(--text-primary)}.sidebar[data-v-c14ef160]{width:var(--sidebar-width);background:var(--sidebar-bg-gradient);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-inline-end:1px solid var(--sidebar-border);display:flex;flex-direction:column;position:fixed;top:0;inset-inline-start:0;height:100vh;height:100dvh;z-index:100;transition:transform var(--transition-normal)}.sidebar-header[data-v-c14ef160]{display:flex;align-items:center;gap:.75rem;padding:1.25rem 1rem;border-bottom:1px solid rgba(255,255,255,.1)}.sidebar-logo[data-v-c14ef160]{width:42px;height:42px}.sidebar-brand[data-v-c14ef160]{display:flex;flex-direction:column}.brand-name[data-v-c14ef160]{font-size:1.125rem;font-weight:700;color:var(--text-sidebar)}.brand-subtitle[data-v-c14ef160]{font-size:.75rem;color:#fff9}.sidebar-nav[data-v-c14ef160]{flex:1;padding:1rem .75rem;display:flex;flex-direction:column;gap:.25rem;overflow-y:auto}.nav-item[data-v-c14ef160]{display:flex;align-items:center;gap:.75rem;padding:.625rem 1rem;color:#ffffffb3;text-decoration:none;border-radius:10px;transition:all .2s ease;font-size:.9375rem}.nav-item[data-v-c14ef160]:hover{background:#ffffff14;color:#fff}.nav-item.router-link-active[data-v-c14ef160]{background:var(--sidebar-active);color:#fff;font-weight:600;border-radius:999px}.nav-item svg[data-v-c14ef160]{flex-shrink:0}.sidebar-footer[data-v-c14ef160]{padding:1rem;padding-bottom:calc(1rem + env(safe-area-inset-bottom));border-top:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:space-between;gap:.5rem}.user-info[data-v-c14ef160]{display:flex;align-items:center;gap:.75rem;flex:1;min-width:0;padding:.25rem;border-radius:8px;transition:background .2s ease}.user-info[data-v-c14ef160]:hover{background:#ffffff0d}.user-avatar[data-v-c14ef160]{width:40px;height:40px;border-radius:10px;background:var(--header-gradient);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:.875rem;flex-shrink:0;overflow:hidden}.user-avatar.has-image[data-v-c14ef160]{background:transparent}.avatar-image[data-v-c14ef160]{width:100%;height:100%;object-fit:cover}.user-details[data-v-c14ef160]{display:flex;flex-direction:column;min-width:0}.user-name[data-v-c14ef160]{color:#fff;font-size:.875rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-code[data-v-c14ef160]{color:#ffffff80;font-size:.6875rem;font-family:monospace}.user-actions[data-v-c14ef160]{display:flex;gap:.375rem}.edit-btn[data-v-c14ef160],.logout-btn[data-v-c14ef160]{width:32px;height:32px;border:none;background:#ffffff14;border-radius:8px;color:#ffffffb3;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.edit-btn[data-v-c14ef160]:hover{background:rgba(var(--primary-color-rgb, 102, 126, 234),.3);color:var(--primary-color)}.logout-btn[data-v-c14ef160]:hover{background:#ef444433;color:#ef4444}.sidebar-overlay[data-v-c14ef160]{display:none;position:fixed;inset:0;background:#00000080;z-index:99}.main-content[data-v-c14ef160]{flex:1;margin-inline-start:var(--sidebar-width);display:flex;flex-direction:column;min-height:100vh;transition:margin-inline-start var(--transition-normal)}.top-header[data-v-c14ef160]{height:var(--header-height);background:var(--glass-bg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--glass-border);display:flex;align-items:center;justify-content:space-between;padding:0 var(--spacing-lg);position:sticky;top:0;z-index:90}.header-left[data-v-c14ef160]{display:flex;align-items:center;gap:1rem}.menu-toggle[data-v-c14ef160]{display:none;width:40px;height:40px;border:none;background:transparent;border-radius:var(--radius-lg);color:var(--text-secondary);cursor:pointer;align-items:center;justify-content:center;transition:background var(--transition-fast)}.menu-toggle[data-v-c14ef160]:hover{background:var(--border-light)}.header-logo-mobile[data-v-c14ef160]{display:none;align-items:center;gap:.375rem}.header-logo-img[data-v-c14ef160]{width:36px;height:36px}.header-brand-text-mobile[data-v-c14ef160]{font-size:1.125rem;font-weight:700;color:var(--primary-color)}.page-title[data-v-c14ef160]{font-size:1.25rem;font-weight:600;color:var(--text-primary)}.header-right[data-v-c14ef160]{display:flex;align-items:center;gap:1.5rem}.header-datetime[data-v-c14ef160]{display:flex;flex-direction:column;align-items:flex-end;padding:.375rem 1rem;background:var(--bg-secondary);border-radius:10px;border:1px solid var(--border-color)}.datetime-date[data-v-c14ef160]{font-size:.75rem;color:var(--text-secondary);font-weight:500}.datetime-time[data-v-c14ef160]{font-size:1rem;font-weight:700;color:var(--text-primary);font-family:SF Mono,Consolas,monospace;letter-spacing:.5px}.header-user-info[data-v-c14ef160]{display:flex;align-items:center;gap:.75rem}.header-user-name[data-v-c14ef160]{font-weight:500;color:var(--text-primary);font-size:.875rem}.header-brand[data-v-c14ef160]{display:flex;align-items:center;gap:.5rem;flex-shrink:0;margin-left:1rem;margin-right:1rem}.header-brand-logo[data-v-c14ef160]{height:2rem;width:auto}.header-brand-text[data-v-c14ef160]{font-size:1.25rem;font-weight:700;color:var(--primary-color)}.content-area[data-v-c14ef160]{flex:1;padding:var(--spacing-lg);width:100%;max-width:1400px;margin:0 auto}.main-content[data-v-c14ef160]{flex:1;display:flex;flex-direction:column;min-width:0;max-width:100vw;overflow-x:hidden}.modal-overlay[data-v-c14ef160]{position:fixed;inset:0;background:var(--modal-bg);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-out}.modal[data-v-c14ef160]{background:var(--card-bg-local);border-radius:var(--radius-xl);width:90%;max-width:440px;box-shadow:var(--modal-shadow);overflow:hidden;animation:slideUp-c14ef160 .3s ease-out}@keyframes slideUp-c14ef160{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header[data-v-c14ef160]{padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-color-local)}.modal-header h3[data-v-c14ef160]{font-size:1.125rem;font-weight:600;color:var(--text-primary)}.modal-body[data-v-c14ef160]{padding:1.5rem;display:flex;flex-direction:column;gap:1.25rem}.profile-modal-body[data-v-c14ef160]{max-height:60vh;overflow-y:auto}.profile-image-section[data-v-c14ef160]{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--border-color-local)}.profile-image-preview[data-v-c14ef160]{width:100px;height:100px;border-radius:50%;background:var(--header-gradient);display:flex;align-items:center;justify-content:center;overflow:hidden;border:4px solid var(--card-bg-local);box-shadow:var(--shadow-md)}.profile-image-preview img[data-v-c14ef160]{width:100%;height:100%;object-fit:cover}.preview-initials[data-v-c14ef160]{font-size:2rem;font-weight:700;color:#fff}.profile-image-actions[data-v-c14ef160]{display:flex;gap:.75rem}.btn-upload[data-v-c14ef160]{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem 1rem;background:var(--header-gradient);color:#fff;border-radius:var(--radius-md);font-size:.8125rem;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.btn-upload[data-v-c14ef160]:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-remove[data-v-c14ef160]{padding:.5rem 1rem;background:#fee2e2;color:var(--danger-dark);border:none;border-radius:var(--radius-md);font-size:.8125rem;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.btn-remove[data-v-c14ef160]:hover:not(:disabled){background:#fecaca}.btn-remove[data-v-c14ef160]:disabled{opacity:.5;cursor:not-allowed}.image-hint[data-v-c14ef160]{font-size:.75rem;color:var(--text-secondary)}.form-group[data-v-c14ef160]{display:flex;flex-direction:column;gap:.375rem}.form-group label[data-v-c14ef160]{font-size:.875rem;font-weight:500;color:var(--text-primary)}.form-group input[data-v-c14ef160]{padding:.75rem 1rem;border:2px solid var(--border-color-local);border-radius:var(--radius-lg);font-size:.9375rem;transition:all var(--transition-fast)}.form-group input[data-v-c14ef160]:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 4px #667eea1a}.form-group input[data-v-c14ef160]:disabled,.input-disabled[data-v-c14ef160]{background:var(--content-bg);color:var(--text-secondary);cursor:not-allowed}.field-hint[data-v-c14ef160]{font-size:.75rem;color:var(--text-secondary);margin-top:.125rem}.error-message[data-v-c14ef160]{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--error-bg, #fef2f2);border:1px solid var(--error-border, #fecaca);border-radius:var(--radius-lg);color:var(--danger-dark);font-size:.875rem}.success-message[data-v-c14ef160]{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--success-bg, #f0fdf4);border:1px solid var(--success-border, #bbf7d0);border-radius:var(--radius-lg);color:var(--success-color);font-size:.875rem}.modal-footer[data-v-c14ef160]{display:flex;justify-content:flex-end;gap:.75rem;padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--border-color-local);background:var(--content-bg)}.profile-modal-footer[data-v-c14ef160]{flex-direction:column;align-items:center;gap:1rem}.footer-actions-main[data-v-c14ef160]{display:flex;width:100%;gap:.75rem}.footer-actions-main .btn-save[data-v-c14ef160]{flex:2;justify-content:center}.footer-actions-main .btn-cancel[data-v-c14ef160]{flex:1;text-align:center}.btn-logout[data-v-c14ef160]{display:flex;align-items:center;justify-content:center;width:100%;gap:.5rem;padding:.75rem 1.25rem;background:#fee2e2;color:var(--danger-dark);border:none;border-radius:var(--radius-md);font-size:.9375rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.btn-logout[data-v-c14ef160]:hover{background:#fecaca}.btn-cancel[data-v-c14ef160]{padding:.625rem 1.25rem;background:var(--card-bg-local);border:1px solid var(--border-color-local);border-radius:var(--radius-md);color:var(--text-secondary);font-size:.9375rem;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.btn-cancel[data-v-c14ef160]:hover:not(:disabled){background:var(--border-light)}.btn-cancel[data-v-c14ef160]:disabled{opacity:.5;cursor:not-allowed}.btn-save[data-v-c14ef160]{display:flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;background:linear-gradient(135deg,var(--primary-color) 0%,var(--secondary-color) 100%);border:none;border-radius:var(--radius-md);color:#fff;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.btn-save[data-v-c14ef160]:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-save[data-v-c14ef160]:disabled{opacity:.7;cursor:not-allowed}.loading-spinner[data-v-c14ef160]{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin-c14ef160 .8s linear infinite}@keyframes spin-c14ef160{to{transform:rotate(360deg)}}@media(max-width:1024px){.sidebar[data-v-c14ef160]{transform:translate(-100%)}.sidebar.open[data-v-c14ef160]{transform:translate(0)}.sidebar-overlay[data-v-c14ef160]{display:block;position:fixed;inset:0;background:var(--overlay-bg);z-index:99}.main-content[data-v-c14ef160]{margin-inline-start:0}.menu-toggle[data-v-c14ef160],.header-logo-mobile[data-v-c14ef160]{display:flex}.page-title[data-v-c14ef160],.header-brand[data-v-c14ef160]{display:none}.bottom-nav[data-v-c14ef160]{display:flex;position:fixed;bottom:0;left:0;width:100%;background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--glass-border);justify-content:space-around;align-items:center;padding-bottom:env(safe-area-inset-bottom);z-index:100}.bottom-nav-item[data-v-c14ef160]{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:6px 4px;min-height:48px;color:var(--text-secondary);text-decoration:none;font-size:.65rem;font-weight:500;flex:1;background:transparent;border:none;cursor:pointer;transition:transform .2s cubic-bezier(.4,0,.2,1),color .2s}.bottom-nav-item[data-v-c14ef160]:active{transform:scale(.97)}.bottom-nav-item.active[data-v-c14ef160]{color:var(--primary-color);font-weight:600}.bottom-nav-item.active[data-v-c14ef160]:before{content:"";position:absolute;top:-1px;left:50%;transform:translate(-50%);width:24px;height:3px;border-radius:0 0 3px 3px;background-color:var(--primary-color)}.bottom-nav-item svg[data-v-c14ef160]{margin-bottom:2px}.icon-wrapper[data-v-c14ef160]{position:relative;display:inline-flex}.nav-badge[data-v-c14ef160]{position:absolute;top:-4px;right:-8px;background:var(--danger-color, #ef4444);color:#fff;font-size:.6rem;font-weight:700;height:16px;min-width:16px;padding:0 4px;border-radius:8px;display:flex;align-items:center;justify-content:center}.user-avatar-sm[data-v-c14ef160]{width:24px;height:24px;border-radius:50%;background:var(--header-gradient);display:flex;align-items:center;justify-content:center;color:#fff;font-size:.65rem;font-weight:700;overflow:hidden}.user-avatar-sm.has-image[data-v-c14ef160]{background:transparent}.user-avatar-sm img[data-v-c14ef160]{width:100%;height:100%;object-fit:cover}}@media(min-width:1025px){.bottom-nav[data-v-c14ef160]{display:none}}@media(max-width:640px){.content-area[data-v-c14ef160]{padding:var(--spacing-md);padding-bottom:calc(70px + env(safe-area-inset-bottom))}.app-layout.assessment-mode .content-area[data-v-c14ef160]{padding-bottom:var(--spacing-md)}.top-header[data-v-c14ef160]{padding:0 var(--spacing-md)}.header-right[data-v-c14ef160]{gap:.5rem}.header-user-name[data-v-c14ef160],.header-datetime[data-v-c14ef160]{display:none}.datetime-date[data-v-c14ef160]{font-size:.6875rem}.datetime-time[data-v-c14ef160]{font-size:.875rem}.modal[data-v-c14ef160]{max-width:100%;margin:.5rem}}html[dir=rtl]{align-items:flex-start}html[dir=rtl]{text-align:right}.fade-enter-active[data-v-c14ef160],.fade-leave-active[data-v-c14ef160]{transition:opacity .3s ease}.fade-enter-from[data-v-c14ef160],.fade-leave-to[data-v-c14ef160]{opacity:0}.scale-enter-active[data-v-c14ef160],.scale-leave-active[data-v-c14ef160]{transition:all .3s cubic-bezier(.34,1.56,.64,1)}.scale-enter-from[data-v-c14ef160],.scale-leave-to[data-v-c14ef160]{opacity:0;transform:scale(.9)}.unified-modal[data-v-c14ef160]{background:var(--card-bg-local);width:100%;max-width:480px;height:85vh;height:85dvh;border-radius:20px;display:flex;flex-direction:column;overflow:hidden;box-shadow:var(--modal-shadow);animation:modalIn-c14ef160 .4s cubic-bezier(.16,1,.3,1)}@keyframes modalIn-c14ef160{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header-premium[data-v-c14ef160]{padding:16px 20px;background:linear-gradient(135deg,#0f2f24,#0d3b2e);color:#fff;position:relative;text-align:center}.btn-close-modal[data-v-c14ef160]{position:absolute;top:12px;inset-inline-start:12px;background:#ffffff1a;border:none;border-radius:50%;width:32px;height:32px;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10;transition:all .2s ease}.btn-close-modal[data-v-c14ef160]:hover{background:#fff3}.header-main-info[data-v-c14ef160]{display:flex;flex-direction:column;align-items:center;gap:8px}.avatar-container-modal[data-v-c14ef160]{position:relative;cursor:pointer}.avatar-wrapper-modal[data-v-c14ef160]{width:80px;height:80px;border-radius:22px;background:#ffffff1a;border:3px solid rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;overflow:hidden;transition:all .3s ease}.avatar-wrapper-modal[data-v-c14ef160]:hover{transform:scale(1.05);border-color:var(--primary-color)}.profile-img-modal[data-v-c14ef160]{width:100%;height:100%;object-fit:cover}.initials-placeholder-modal[data-v-c14ef160]{font-size:2rem;font-weight:700;color:#fff}.edit-overlay-modal[data-v-c14ef160]{position:absolute;bottom:-4px;right:-4px;background:var(--primary-color);width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;border:2px solid #0f2f24;color:#fff;z-index:2}.modal-user-name[data-v-c14ef160]{font-size:1.25rem;font-weight:700;margin:0}.modal-user-phone[data-v-c14ef160]{font-size:.9375rem;opacity:.8;margin:0}.modal-scroll-area[data-v-c14ef160]{flex:1;overflow-y:auto;padding:20px 24px;display:flex;flex-direction:column;gap:20px}.modal-settings-section[data-v-c14ef160]{display:flex;flex-direction:column;gap:16px}.modal-section-title[data-v-c14ef160]{font-size:1rem;font-weight:700;color:var(--text-primary);margin-bottom:0}.modal-form[data-v-c14ef160]{display:flex;flex-direction:column;gap:16px}.modal-field-item[data-v-c14ef160]{display:flex;flex-direction:column;gap:4px}.modal-field-label[data-v-c14ef160]{font-size:.8125rem;font-weight:600;color:var(--text-secondary)}.modal-field-value[data-v-c14ef160]{font-size:.9375rem;font-weight:500;padding:10px 14px;background:var(--border-light);border-radius:8px;color:var(--text-primary)}.modal-field-item.read-only[data-v-c14ef160]{opacity:.85}.modal-input-wrapper[data-v-c14ef160]{position:relative}.modal-modern-input[data-v-c14ef160]{width:100%;padding:12px 40px 12px 14px;background:var(--card-bg-local);border:2px solid var(--border-color-local);border-radius:10px;font-size:.9375rem;font-family:inherit;transition:all .2s ease;color:var(--text-primary)}.modal-modern-input[data-v-c14ef160]:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 4px #667eea1a}.modal-input-icon[data-v-c14ef160]{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--text-secondary)}[dir=rtl] .modal-input-icon[data-v-c14ef160]{right:auto;left:12px}[dir=rtl] .modal-modern-input[data-v-c14ef160]{padding:12px 14px 12px 40px}.modal-status[data-v-c14ef160]{padding:10px;border-radius:8px;font-size:.8125rem;font-weight:500}.modal-status.error[data-v-c14ef160]{background:#fef2f2;color:#dc2626;border:1px solid #fee2e2}.modal-status.success[data-v-c14ef160]{background:#f0fdf4;color:#16a34a;border:1px solid #dcfce7}.modal-btn-primary[data-v-c14ef160]{width:100%;padding:14px;background:var(--primary-color);color:#fff;border:none;border-radius:10px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.modal-btn-primary[data-v-c14ef160]:active{transform:scale(.98)}.modal-btn-primary[data-v-c14ef160]:disabled{opacity:.6;cursor:not-allowed}.modal-danger-zone[data-v-c14ef160]{margin-top:10px;padding-top:10px}.modal-btn-logout[data-v-c14ef160]{width:100%;padding:14px;background:#fff1f2;color:#e11d48;border:1px solid #fecdd3;border-radius:12px;font-size:.9375rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s ease}.modal-btn-logout[data-v-c14ef160]:hover{background:#ffe4e6;border-color:#fda4af}.modal-spinner[data-v-c14ef160]{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin-c14ef160 .8s linear infinite}.hidden-input-file[data-v-c14ef160]{position:absolute;top:0;left:0;width:0;height:0;opacity:0;pointer-events:none;visibility:hidden}.modal-actions[data-v-c14ef160]{margin-top:8px}.modal-btn-primary[data-v-c14ef160]{width:100%;padding:16px;background:#e2e8f0;color:#64748b;border:none;border-radius:14px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;gap:10px}.modal-btn-primary.has-changes[data-v-c14ef160]{background:var(--primary-color, #667eea);color:#fff!important;box-shadow:0 8px 20px #667eea59}.modal-btn-primary[data-v-c14ef160]:active:not(:disabled){transform:scale(.96)}.image-pending-badge[data-v-c14ef160]{position:absolute;top:-8px;right:-8px;background:var(--success-color, #10b981);color:#fff;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 10px #10b98166;z-index:5;border:2px solid #0f2f24;animation:pulse-c14ef160 2s infinite}@keyframes pulse-c14ef160{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}.modal-btn-primary .btn-icon[data-v-c14ef160]{margin-inline-end:4px}.confirm-overlay[data-v-c14ef160]{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1100;display:flex;align-items:center;justify-content:center;padding:24px}.confirm-modal[data-v-c14ef160]{background:var(--card-bg-local);width:100%;max-width:360px;border-radius:28px;padding:32px 24px;text-align:center;box-shadow:0 25px 50px -12px #00000040;animation:confirmIn-c14ef160 .3s cubic-bezier(.34,1.56,.64,1)}@keyframes confirmIn-c14ef160{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.confirm-modal h3[data-v-c14ef160]{margin-bottom:8px;font-size:1.25rem;color:var(--text-primary)}.confirm-modal p[data-v-c14ef160]{color:var(--text-secondary);margin-bottom:28px;line-height:1.5}.confirm-actions[data-v-c14ef160]{display:flex;flex-direction:column;gap:12px}.btn-confirm[data-v-c14ef160]{width:100%;padding:16px;background:#e11d48;color:#fff;border:none;border-radius:14px;font-weight:700;transition:all .2s ease}.btn-confirm[data-v-c14ef160]:active{transform:scale(.97)}.btn-cancel[data-v-c14ef160]{width:100%;padding:16px;background:var(--border-light);color:var(--text-primary);border:none;border-radius:14px;font-weight:600}@media(max-width:600px){.unified-modal[data-v-c14ef160]{height:100vh;height:100dvh;border-radius:0}}.dashboard[data-v-39532cc6]{width:100%}.welcome-section[data-v-39532cc6]{background:var(--header-gradient);border-radius:16px;padding:2rem;margin-bottom:1.5rem;color:#fff}.welcome-content h2[data-v-39532cc6]{font-size:1.5rem;font-weight:700;margin-bottom:.5rem}.welcome-content p[data-v-39532cc6]{font-size:1rem;opacity:.9}.stats-grid[data-v-39532cc6]{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.5rem}.stat-card[data-v-39532cc6]{display:flex;align-items:center;gap:1.25rem;padding:1.5rem;background:var(--card-bg, #ffffff);border-radius:16px;border:1px solid var(--border-color, #f1f5f9);box-shadow:var(--card-shadow);text-decoration:none;color:inherit;transition:all .3s cubic-bezier(.4,0,.2,1);cursor:pointer}.stat-card[data-v-39532cc6]:hover{transform:scale(.97);box-shadow:0 4px 6px -1px #0000000d;border-color:rgba(var(--primary-color-rgb, 102, 126, 234),.3)}.stat-card.completed-card[data-v-39532cc6]:hover{border-color:#9333ea4d}.stat-card:hover .stat-icon[data-v-39532cc6]{transform:none}.stat-icon[data-v-39532cc6]{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .3s ease}.stat-icon.sessions[data-v-39532cc6]{background:var(--stat-icon-bg-sessions, linear-gradient(135deg, #dbeafe 0%, #bfdbfe 100%));color:#2563eb}.stat-icon.materials[data-v-39532cc6]{background:var(--stat-icon-bg-materials, linear-gradient(135deg, #fef3c7 0%, #fde68a 100%));color:#d97706}.stat-icon.assessments[data-v-39532cc6]{background:var(--stat-icon-bg-assessments, linear-gradient(135deg, #dcfce7 0%, #bbf7d0 100%));color:#16a34a}.stat-icon.completed[data-v-39532cc6]{background:var(--stat-icon-bg-completed, linear-gradient(135deg, #f3e8ff 0%, #e9d5ff 100%));color:#9333ea}.stat-details[data-v-39532cc6]{display:flex;flex-direction:column}.stat-value[data-v-39532cc6]{font-size:1.5rem;font-weight:700;color:var(--text-primary, #1a1a2e)}.stat-label[data-v-39532cc6]{font-size:.8125rem;color:var(--text-secondary, #6b7280)}.content-grid[data-v-39532cc6]{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.content-card[data-v-39532cc6]{background:var(--card-bg, white);border-radius:16px;box-shadow:var(--card-shadow);border:1px solid var(--border-color, #f1f5f9);overflow:hidden;transition:all .3s ease;display:flex;flex-direction:column}.clickable-card[data-v-39532cc6]{text-decoration:none;color:inherit;display:flex;flex:1}.clickable-card[data-v-39532cc6]:hover{background:#f8fafc;border-color:#cbd5e1;transform:translateY(-1px);box-shadow:0 4px 6px -1px #0000000d}.content-card[data-v-39532cc6]:hover{box-shadow:0 10px 15px -3px #0000000d,0 4px 6px -2px #00000008}.content-card.full-width[data-v-39532cc6]{grid-column:span 2}.card-header[data-v-39532cc6]{padding:1rem 1.25rem;border-bottom:1px solid var(--border-color, #e5e7eb)}.card-header[data-v-39532cc6]{display:flex;align-items:center;justify-content:space-between}.card-header h3[data-v-39532cc6]{display:flex;align-items:center;gap:.5rem;font-size:1rem;font-weight:600;color:var(--text-primary, #1a1a2e)}.card-header h3 svg[data-v-39532cc6]{color:var(--primary-color)}.view-all-link[data-v-39532cc6]{display:flex;align-items:center;gap:.25rem;font-size:.8125rem;font-weight:500;color:var(--primary-color);text-decoration:none;transition:all .2s ease}.view-all-link[data-v-39532cc6]:hover{color:#5a6fd6}.card-body[data-v-39532cc6]{padding:1rem 1.25rem}.loading-state[data-v-39532cc6],.empty-state[data-v-39532cc6]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;color:#9ca3af;text-align:center}.loading-spinner[data-v-39532cc6]{width:32px;height:32px;border:3px solid #e5e7eb;border-top-color:var(--primary-color);border-radius:50%;animation:spin-39532cc6 .8s linear infinite;margin-bottom:.75rem}@keyframes spin-39532cc6{to{transform:rotate(360deg)}}.empty-state svg[data-v-39532cc6]{margin-bottom:.75rem;opacity:.5}.empty-state p[data-v-39532cc6]{font-size:.875rem}.next-session-card[data-v-39532cc6]{display:flex;align-items:center;gap:1.25rem;padding:1.25rem;background:linear-gradient(135deg,#f0f4ff,#f8f4ff);border-radius:12px;border:1px solid #e5e7eb}.next-session-date[data-v-39532cc6]{width:80px;height:90px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;flex-shrink:0;box-shadow:0 4px 6px #667eea33}.next-session-date .date-day[data-v-39532cc6]{font-size:2rem;font-weight:700;line-height:1}.next-session-date .date-month[data-v-39532cc6]{font-size:.875rem;font-weight:600;text-transform:uppercase}.next-session-date .date-weekday[data-v-39532cc6]{font-size:.6875rem;opacity:.9;margin-top:.25rem}.next-session-details[data-v-39532cc6]{flex:1;min-width:0}.next-session-details h4[data-v-39532cc6]{font-size:1.125rem;font-weight:600;color:#1a1a2e;margin-bottom:.75rem}.session-meta[data-v-39532cc6]{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:.5rem}.session-meta .session-time[data-v-39532cc6],.session-meta .session-group[data-v-39532cc6]{display:flex;align-items:center;gap:.375rem;font-size:.875rem;color:#6b7280}.session-meta svg[data-v-39532cc6]{color:var(--primary-color)}.session-description[data-v-39532cc6]{font-size:.875rem;color:#6b7280;line-height:1.5;margin-top:.5rem;display:-webkit-box;line-clamp:2;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.next-session-action[data-v-39532cc6]{display:flex;align-items:center;justify-content:center;padding-left:1rem;border-left:1px solid #e5e7eb;margin-left:auto}.btn-attend[data-v-39532cc6]{display:inline-flex;align-items:center;gap:.5rem;padding:.875rem 1.5rem;background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;border:none;border-radius:10px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.btn-attend[data-v-39532cc6]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #22c55e66}.btn-attend[data-v-39532cc6]:disabled{opacity:.7;cursor:not-allowed}.attendance-done[data-v-39532cc6]{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:#dcfce7;color:#16a34a;border-radius:10px;font-weight:600;font-size:.875rem}.attendance-info[data-v-39532cc6]{padding:.75rem 1rem;background:#f3f4f6;color:#6b7280;border-radius:8px;font-size:.8125rem;text-align:center}.attendance-checking[data-v-39532cc6]{padding:.75rem}.loading-spinner.small[data-v-39532cc6]{width:20px;height:20px;border-width:2px}.loading-spinner.white[data-v-39532cc6]{border-color:#ffffff4d;border-top-color:#fff}.sessions-list[data-v-39532cc6]{display:flex;flex-direction:column;gap:.75rem}.session-item[data-v-39532cc6]{display:flex;align-items:center;gap:1rem;padding:.75rem;background:#f9fafb;border-radius:10px;transition:background .2s ease}.session-item[data-v-39532cc6]:hover{background:#f3f4f6}.session-date[data-v-39532cc6]{width:50px;height:50px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.date-day[data-v-39532cc6]{font-size:1.125rem;font-weight:700;line-height:1}.date-month[data-v-39532cc6]{font-size:.6875rem;text-transform:uppercase}.session-info[data-v-39532cc6]{flex:1;min-width:0}.session-info h4[data-v-39532cc6]{font-size:.9375rem;font-weight:600;color:#1a1a2e;margin-bottom:.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session-time[data-v-39532cc6]{display:flex;align-items:center;gap:.25rem;font-size:.8125rem;color:#6b7280;margin-bottom:.125rem}.session-group[data-v-39532cc6]{font-size:.75rem;color:#9ca3af}.assessments-list[data-v-39532cc6]{display:flex;flex-direction:column;gap:.75rem}.assessment-item[data-v-39532cc6]{display:flex;align-items:center;gap:1rem;padding:.75rem;background:#f9fafb;border-radius:10px;transition:background .2s ease}.clickable-card.assessment-item[data-v-39532cc6]{display:flex;text-decoration:none;color:inherit}.assessment-item[data-v-39532cc6]:hover{background:#f3f4f6}.assessment-icon[data-v-39532cc6]{width:44px;height:44px;background:#dcfce7;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#16a34a;flex-shrink:0}.assessment-info[data-v-39532cc6]{flex:1;min-width:0}.assessment-info h4[data-v-39532cc6]{font-size:.9375rem;font-weight:600;color:#1a1a2e;margin-bottom:.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.assessment-details[data-v-39532cc6]{font-size:.8125rem;color:#6b7280}.btn-start[data-v-39532cc6]{padding:.5rem 1rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-start[data-v-39532cc6]:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.materials-grid[data-v-39532cc6]{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.material-card[data-v-39532cc6]{display:flex;flex-direction:column;padding:1rem;background:#f9fafb;border-radius:10px;transition:all .2s ease;cursor:pointer}.material-card[data-v-39532cc6]:hover{background:#f3f4f6;transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.material-icon[data-v-39532cc6]{width:48px;height:48px;border-radius:10px;display:flex;align-items:center;justify-content:center;margin-bottom:.75rem}.material-icon.pdf[data-v-39532cc6]{background:#fee2e2;color:#dc2626}.material-icon.video[data-v-39532cc6]{background:#dbeafe;color:#2563eb}.material-icon.link[data-v-39532cc6]{background:#d1fae5;color:#059669}.material-icon.document[data-v-39532cc6]{background:#fef3c7;color:#d97706}.material-info[data-v-39532cc6]{flex:1}.material-info h4[data-v-39532cc6]{font-size:.9375rem;font-weight:600;color:#1a1a2e;margin-bottom:.25rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.material-info p[data-v-39532cc6]{font-size:.8125rem;color:#6b7280;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:.5rem}.material-type-badge[data-v-39532cc6]{display:inline-block;padding:.125rem .5rem;background:#fff;border:1px solid #e5e7eb;border-radius:4px;font-size:.6875rem;font-weight:500;color:#6b7280}.results-list[data-v-39532cc6]{display:flex;flex-direction:column;gap:.75rem}.result-item[data-v-39532cc6]{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:#f8f9fa;border-radius:8px;text-decoration:none;transition:all .2s ease}.result-item[data-v-39532cc6]:hover{background:#e9ecef}.result-info h4[data-v-39532cc6]{margin:0 0 .25rem;font-size:.9375rem;font-weight:600;color:#1a1a2e}.result-date[data-v-39532cc6]{font-size:.75rem;color:#6c757d}.result-score[data-v-39532cc6]{display:flex;align-items:baseline;gap:.125rem;padding:.375rem .75rem;border-radius:8px;background:#e9ecef}.result-score .score[data-v-39532cc6]{font-size:1.125rem;font-weight:700}.result-score .total[data-v-39532cc6]{font-size:.75rem;color:#6c757d}.result-score.excellent[data-v-39532cc6]{background:#d4edda;color:#155724}.result-score.excellent .total[data-v-39532cc6]{color:#28a745}.result-score.good[data-v-39532cc6]{background:#cce5ff;color:#004085}.result-score.good .total[data-v-39532cc6]{color:#0056b3}.result-score.average[data-v-39532cc6]{background:#fff3cd;color:#856404}.result-score.average .total[data-v-39532cc6]{color:#a47f00}.result-score.needs-improvement[data-v-39532cc6]{background:#f8d7da;color:#721c24}.result-score.needs-improvement .total[data-v-39532cc6]{color:#bd2130}.btn-download[data-v-39532cc6]{display:inline-flex;align-items:center;justify-content:center;gap:.375rem;padding:.5rem .75rem;background:#fff;border:1px solid #e5e7eb;border-radius:8px;color:#374151;font-size:.8125rem;font-weight:500;text-decoration:none;transition:all .2s ease}.btn-download[data-v-39532cc6]:hover{background:#667eea;border-color:#667eea;color:#fff}@media(max-width:1024px){.stats-grid[data-v-39532cc6]{grid-template-columns:repeat(2,1fr)}.content-grid[data-v-39532cc6]{grid-template-columns:1fr}.content-card.full-width[data-v-39532cc6]{grid-column:span 1}.materials-grid[data-v-39532cc6]{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.next-session-card[data-v-39532cc6]{flex-direction:column;align-items:stretch}.next-session-date[data-v-39532cc6]{width:100%;height:auto;padding:1rem;flex-direction:row;gap:.75rem}.next-session-date .date-day[data-v-39532cc6]{font-size:1.5rem}.session-meta[data-v-39532cc6]{flex-direction:column;gap:.5rem}.next-session-action[data-v-39532cc6]{border-left:none;border-top:1px solid #e5e7eb;padding:1rem 0 0;margin-top:1rem;margin-left:0;justify-content:center}.btn-attend[data-v-39532cc6]{width:100%;justify-content:center}}.btn-secondary[data-v-39532cc6]{background:#f59e0b;color:#fff}.btn-secondary[data-v-39532cc6]:hover:not(:disabled){background:#d97706}.btn-disabled[data-v-39532cc6]{background:#e5e7eb;color:#9ca3af;cursor:not-allowed}@media(max-width:640px){.stats-grid[data-v-39532cc6],.materials-grid[data-v-39532cc6]{grid-template-columns:1fr}.welcome-section[data-v-39532cc6]{padding:1.5rem}.welcome-content h2[data-v-39532cc6]{font-size:1.25rem}.welcome-action[data-v-39532cc6]{margin-top:1rem}.btn-start-quick[data-v-39532cc6]{padding:.625rem 1rem;font-size:.875rem}}[data-theme=dark]{background:linear-gradient(135deg,#1e293b,#020617);border:1px solid rgba(255,255,255,.05)}[data-theme=dark]{background:linear-gradient(135deg,#1e293bb3,#0f172acc)!important;border:1px solid rgba(255,255,255,.08)!important;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 10px 25px -5px #0006!important}[data-theme=dark]{background:linear-gradient(135deg,#1e293be6,#0f172ae6)!important;border-color:#ffffff26!important;transform:translateY(-4px)}[data-theme=dark]{background:#0f172a99!important;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.05)!important}[data-theme=dark]{background:#ffffff08;border:1px solid rgba(255,255,255,.05)}[data-theme=dark]{background:#ffffff05;border:1px solid rgba(255,255,255,.05)}[data-theme=dark]{background:#ffffff0d;border-color:#ffffff1a}.student-progress-widget[data-v-39532cc6]{background:var(--card-bg, #ffffff);border-radius:16px;padding:1.5rem;box-shadow:var(--card-shadow);border:1px solid var(--border-color, #e2e8f0);margin-bottom:1.5rem}.progress-header[data-v-39532cc6]{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.progress-header h3[data-v-39532cc6]{font-size:1.125rem;color:var(--text-primary);margin:0}.progress-percent[data-v-39532cc6]{font-weight:700;color:var(--primary-color, #667eea);font-size:1.125rem}.progress-bar-container[data-v-39532cc6]{width:100%;height:8px;background:var(--border-color, #e2e8f0);border-radius:999px;overflow:hidden;margin-bottom:.75rem}.progress-bar-fill[data-v-39532cc6]{height:100%;background:linear-gradient(90deg,#10b981,#059669);border-radius:999px;transition:width 1s ease-out}.progress-hint[data-v-39532cc6]{font-size:.8125rem;color:var(--text-secondary, #6b7280);margin:0}[data-theme=dark]{background:#1e293b;border-color:#334155}.assessment-page[data-v-6b22b188]{width:100%;max-width:900px;margin:0 auto}.loading-container[data-v-6b22b188],.error-container[data-v-6b22b188]{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;text-align:center;color:#6b7280}.loading-spinner[data-v-6b22b188]{border:3px solid #e5e7eb;border-top-color:#667eea;border-radius:50%;animation:spin-6b22b188 .8s linear infinite}.loading-spinner.large[data-v-6b22b188]{width:48px;height:48px;margin-bottom:1rem}.loading-spinner.small[data-v-6b22b188]{width:16px;height:16px;border-width:2px}@keyframes spin-6b22b188{to{transform:rotate(360deg)}}.error-container svg[data-v-6b22b188]{color:#ef4444;margin-bottom:1rem}.error-container h3[data-v-6b22b188]{font-size:1.125rem;color:#374151;margin-bottom:1rem}.btn-back[data-v-6b22b188]{padding:.75rem 1.5rem;background:#667eea;color:#fff;border:none;border-radius:8px;font-size:.9375rem;cursor:pointer}.assessment-header[data-v-6b22b188]{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:1rem}.header-info[data-v-6b22b188]{display:flex;align-items:center;gap:1rem}.btn-exit[data-v-6b22b188]{display:flex;align-items:center;gap:.375rem;padding:.5rem .75rem;background:#f3f4f6;border:none;border-radius:8px;color:#6b7280;font-size:.875rem;cursor:pointer;transition:all .2s ease}.btn-exit[data-v-6b22b188]:hover{background:#e5e7eb;color:#374151}.header-info h2[data-v-6b22b188]{font-size:1.25rem;font-weight:600;color:#1a1a2e}.header-stats[data-v-6b22b188]{display:flex;align-items:center;gap:1.5rem}.stat[data-v-6b22b188]{text-align:center}.stat-label[data-v-6b22b188]{display:block;font-size:.75rem;color:#9ca3af;margin-bottom:.125rem}.stat-value[data-v-6b22b188]{font-size:1rem;font-weight:600;color:#1a1a2e}.stat.timer .stat-value[data-v-6b22b188]{color:#16a34a}.stat.timer.warning .stat-value[data-v-6b22b188]{color:#dc2626}.progress-bar[data-v-6b22b188]{height:6px;background:#e5e7eb;border-radius:3px;margin-bottom:1.5rem;overflow:hidden}.progress-fill[data-v-6b22b188]{height:100%;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:3px;transition:width .3s ease}.question-container[data-v-6b22b188]{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.question-card[data-v-6b22b188]{padding:1.5rem}.question-header[data-v-6b22b188]{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.question-number[data-v-6b22b188]{font-size:.875rem;font-weight:600;color:#667eea}.question-marks[data-v-6b22b188]{font-size:.8125rem;color:#6b7280;background:#f3f4f6;padding:.25rem .75rem;border-radius:20px}.question-text[data-v-6b22b188]{font-size:1.125rem;color:#1a1a2e;line-height:1.6;margin-bottom:1.5rem}.options-list[data-v-6b22b188]{display:flex;flex-direction:column;gap:.75rem}.option-item[data-v-6b22b188]{display:flex;align-items:center;gap:.75rem;padding:1rem;background:#f9fafb;border:2px solid transparent;border-radius:10px;cursor:pointer;transition:all .2s ease}.option-item[data-v-6b22b188]:hover{background:#f3f4f6}.option-item.selected[data-v-6b22b188]{background:#eef2ff;border-color:#667eea}.option-item input[data-v-6b22b188]{display:none}.option-marker[data-v-6b22b188]{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#fff;border:2px solid #e5e7eb;border-radius:8px;font-weight:600;color:#6b7280;flex-shrink:0}.option-item.selected .option-marker[data-v-6b22b188]{background:#667eea;border-color:#667eea;color:#fff}.option-text[data-v-6b22b188]{font-size:1rem;color:#374151}.answer-input textarea[data-v-6b22b188]{width:100%;padding:1rem;border:2px solid #e5e7eb;border-radius:10px;font-size:1rem;resize:vertical;transition:border-color .2s ease}.answer-input textarea[data-v-6b22b188]:focus{outline:none;border-color:#667eea}.question-navigation[data-v-6b22b188]{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-top:1px solid #e5e7eb;background:#f9fafb}.btn-nav[data-v-6b22b188]{display:flex;align-items:center;gap:.375rem;padding:.625rem 1rem;border:none;border-radius:8px;font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-prev[data-v-6b22b188]{background:#fff;color:#6b7280;border:1px solid #e5e7eb}.btn-prev[data-v-6b22b188]:hover:not(:disabled){background:#f3f4f6}.btn-prev[data-v-6b22b188]:disabled{opacity:.5;cursor:not-allowed}.btn-next[data-v-6b22b188]{background:#667eea;color:#fff}.btn-next[data-v-6b22b188]:hover{background:#5a6fd6}.btn-submit[data-v-6b22b188]{background:linear-gradient(135deg,#16a34a,#15803d);color:#fff}.btn-submit[data-v-6b22b188]:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #16a34a66}.btn-submit[data-v-6b22b188]:disabled{opacity:.7;cursor:not-allowed}.desktop-dots[data-v-6b22b188]{flex:1;display:flex;justify-content:center}.mobile-grid-toggle[data-v-6b22b188]{display:none}.question-dots[data-v-6b22b188]{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.nav-buttons-row[data-v-6b22b188]{display:flex;align-items:center;gap:.75rem}.dot[data-v-6b22b188]{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#fff;border:2px solid #e5e7eb;border-radius:8px;font-size:.8125rem;font-weight:500;color:#6b7280;cursor:pointer;transition:all .2s ease}.dot[data-v-6b22b188]:hover{border-color:#667eea;color:#667eea}.dot.active[data-v-6b22b188]{background:#667eea;border-color:#667eea;color:#fff}.dot.answered[data-v-6b22b188]{background:#dcfce7;border-color:#16a34a;color:#16a34a}.dot.active.answered[data-v-6b22b188]{background:#667eea;border-color:#667eea;color:#fff}.modal-overlay[data-v-6b22b188]{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal[data-v-6b22b188]{background:#fff;border-radius:16px;width:100%;max-width:400px;overflow:hidden}.modal-header[data-v-6b22b188]{padding:1.25rem 1.5rem;border-bottom:1px solid #e5e7eb}.modal-header h3[data-v-6b22b188]{font-size:1.125rem;font-weight:600;color:#1a1a2e}.modal-body[data-v-6b22b188]{padding:1.5rem}.modal-body p[data-v-6b22b188]{color:#6b7280;margin-bottom:.75rem}.modal-body p[data-v-6b22b188]:last-child{margin-bottom:0}.warning-text[data-v-6b22b188]{color:#dc2626!important;font-weight:500}.modal-footer[data-v-6b22b188]{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #e5e7eb;background:#f9fafb}.btn-cancel[data-v-6b22b188]{padding:.625rem 1rem;background:#fff;border:1px solid #e5e7eb;border-radius:8px;color:#6b7280;font-size:.9375rem;cursor:pointer}.btn-cancel[data-v-6b22b188]:hover{background:#f3f4f6}.btn-primary[data-v-6b22b188]{display:flex;align-items:center;gap:.375rem;padding:.625rem 1rem;background:#667eea;border:none;border-radius:8px;color:#fff;font-size:.9375rem;font-weight:500;cursor:pointer}.btn-primary[data-v-6b22b188]:hover:not(:disabled){background:#5a6fd6}.btn-primary[data-v-6b22b188]:disabled{opacity:.7;cursor:not-allowed}.btn-danger[data-v-6b22b188]{padding:.625rem 1rem;background:#ef4444;border:none;border-radius:8px;color:#fff;font-size:.9375rem;font-weight:500;cursor:pointer}.btn-danger[data-v-6b22b188]:hover{background:#dc2626}@media(max-width:640px){.assessment-header[data-v-6b22b188]{flex-direction:column;gap:1rem;align-items:flex-start}.header-stats[data-v-6b22b188]{width:100%;justify-content:space-between}.question-container[data-v-6b22b188]{margin-bottom:80px}.question-navigation[data-v-6b22b188]{position:fixed;bottom:0;left:0;width:100%;background:#fff;box-shadow:0 -8px 20px #0000001a;z-index:100;padding:1rem;padding-bottom:calc(1rem + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:.5rem;border-top:1px solid #e5e7eb}.nav-buttons-row[data-v-6b22b188]{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem}.btn-nav[data-v-6b22b188]{flex:1;height:54px;border-radius:14px;font-size:1rem;font-weight:700;display:flex;align-items:center;justify-content:center;gap:.5rem;box-shadow:0 4px 6px -1px #0000001a}.btn-prev[data-v-6b22b188]{background:#f3f4f6;color:#4b5563;border:none}.btn-next[data-v-6b22b188]{background:var(--primary-color, #667eea);color:#fff;border:none;box-shadow:0 4px 12px #667eea4d}.btn-submit[data-v-6b22b188]{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;box-shadow:0 4px 12px #10b9814d}.mobile-question-counter[data-v-6b22b188]{display:flex;align-items:center;justify-content:center;gap:4px;background:#f9fafb;padding:.5rem .75rem;border-radius:10px;border:1px solid #e5e7eb;min-width:60px;cursor:pointer}.mobile-question-counter .curr[data-v-6b22b188]{color:var(--primary-color, #667eea);font-weight:800;font-size:1.125rem}.mobile-question-counter .sep[data-v-6b22b188]{color:#9ca3af;font-size:.875rem}.mobile-question-counter .total[data-v-6b22b188]{color:#6b7280;font-weight:600;font-size:.875rem}.desktop-dots[data-v-6b22b188]{display:none;width:100%;max-height:180px;overflow-y:auto;background:#f9fafb;border-radius:12px;padding:.75rem;margin-bottom:.5rem;border:1px solid #e5e7eb;box-shadow:inset 0 2px 4px #0000000d}.desktop-dots.show-mobile[data-v-6b22b188]{display:flex}.dot[data-v-6b22b188]{width:38px;height:38px;font-size:.9rem}}[data-theme=dark]{background:var(--card-bg, #1e293b);border-bottom-color:#334155}[data-theme=dark]{background:#334155;color:var(--text-primary, #f1f5f9)}[data-theme=dark]{border-color:#667eea;background:#667eea1a}.results-page[data-v-8c09412c]{width:100%}.page-header[data-v-8c09412c]{margin-bottom:1.5rem}.page-header-content p[data-v-8c09412c]{color:var(--text-secondary, #6c757d);font-size:.9375rem}.loading-container[data-v-8c09412c]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;color:#6b7280}.loading-spinner[data-v-8c09412c]{width:40px;height:40px;border:3px solid #e5e7eb;border-top-color:#667eea;border-radius:50%;animation:spin-8c09412c .8s linear infinite;margin-bottom:1rem}@keyframes spin-8c09412c{to{transform:rotate(360deg)}}.alert[data-v-8c09412c]{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;border-radius:10px;margin-bottom:1.5rem}.alert-error[data-v-8c09412c]{background:#fef2f2;border:1px solid #fecaca;color:#dc2626}.empty-state[data-v-8c09412c]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;background:var(--card-bg, white);border-radius:12px;box-shadow:var(--card-shadow);border:1px solid var(--border-color, #e5e7eb)}.empty-state svg[data-v-8c09412c]{color:#d1d5db;margin-bottom:1rem}.empty-state h3[data-v-8c09412c]{font-size:1.25rem;font-weight:600;color:#374151;margin-bottom:.5rem}.empty-state p[data-v-8c09412c]{color:#6b7280;margin-bottom:1.5rem}.btn-primary[data-v-8c09412c]{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:.9375rem;font-weight:500;text-decoration:none;cursor:pointer;transition:all .2s ease}.btn-primary[data-v-8c09412c]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.results-grid[data-v-8c09412c]{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.5rem}.result-card[data-v-8c09412c]{background:var(--card-bg, white);border-radius:12px;box-shadow:var(--card-shadow);border:1px solid var(--border-color, #e5e7eb);padding:1.5rem;cursor:pointer;transition:all .2s ease}.result-card[data-v-8c09412c]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.result-header[data-v-8c09412c]{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:1.25rem}.result-header h3[data-v-8c09412c]{font-size:1.0625rem;font-weight:600;color:var(--text-primary, #1a1a2e);flex:1;margin-right:1rem}.result-date[data-v-8c09412c]{font-size:.8125rem;color:#9ca3af;white-space:nowrap}.result-score[data-v-8c09412c]{display:flex;align-items:center;gap:1rem;margin-bottom:1.25rem}.score-circle[data-v-8c09412c]{width:72px;height:72px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.score-circle.excellent[data-v-8c09412c]{background:linear-gradient(135deg,#10b981,#059669)}.score-circle.good[data-v-8c09412c]{background:linear-gradient(135deg,#3b82f6,#2563eb)}.score-circle.average[data-v-8c09412c]{background:linear-gradient(135deg,#f59e0b,#d97706)}.score-circle.low[data-v-8c09412c]{background:linear-gradient(135deg,#ef4444,#dc2626)}.score-value[data-v-8c09412c]{font-size:1.25rem;font-weight:700;color:#fff}.score-details[data-v-8c09412c]{display:flex;flex-direction:column;gap:.375rem}.score-marks[data-v-8c09412c]{font-size:1rem;font-weight:600;color:var(--text-primary, #374151)}.score-status[data-v-8c09412c]{font-size:.8125rem;padding:.25rem .625rem;border-radius:20px;display:inline-block;width:fit-content}.score-status.graded[data-v-8c09412c]{background:#dcfce7;color:#16a34a}.score-status.pending[data-v-8c09412c]{background:#fef3c7;color:#d97706}.score-status.submitted[data-v-8c09412c]{background:#dbeafe;color:#2563eb}.result-footer[data-v-8c09412c]{display:flex;align-items:center;justify-content:space-between;padding-top:1rem;border-top:1px solid var(--border-color, #f3f4f6)}.result-group[data-v-8c09412c]{font-size:.8125rem;color:#6b7280}.tabs-container[data-v-8c09412c]{display:flex;gap:.5rem;margin-bottom:2rem;border-bottom:none}.tab-btn[data-v-8c09412c]{padding:.625rem 1.25rem;background:transparent;border:1px solid var(--border-color, #e5e7eb);border-radius:999px;font-size:.9375rem;font-weight:500;color:#6b7280;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem}.tab-btn[data-v-8c09412c]:hover{border-color:#667eea;color:#667eea}.tab-btn.active[data-v-8c09412c]{background:#667eea;color:#fff;border-color:#667eea;font-weight:600}.tab-badge[data-v-8c09412c]{background:#ef4444;color:#fff;font-size:.75rem;padding:.125rem .375rem;border-radius:99px;min-width:1.25rem;text-align:center}.assessment-card[data-v-8c09412c]{border-left:4px solid #667eea}.assessment-details[data-v-8c09412c]{margin-bottom:1.5rem}.detail-row[data-v-8c09412c]{display:flex;justify-content:space-between;margin-bottom:.5rem;font-size:.875rem}.detail-label[data-v-8c09412c]{color:#6b7280}.detail-value[data-v-8c09412c]{font-weight:500;color:var(--text-primary, #1a1a2e)}.btn-start[data-v-8c09412c]{display:inline-flex;align-items:center;gap:.25rem;padding:.5rem 1rem;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;color:#fff;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-start[data-v-8c09412c]:hover{transform:translateY(-1px);box-shadow:0 4px 6px #667eea40}.btn-view[data-v-8c09412c]{display:inline-flex;align-items:center;gap:.25rem;padding:.5rem .75rem;background:#f3f4f6;border:none;border-radius:6px;color:#667eea;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-view[data-v-8c09412c]:hover{background:#667eea;color:#fff}.btn-secondary[data-v-8c09412c]{background:#f59e0b;color:#fff}.btn-secondary[data-v-8c09412c]:hover:not(:disabled){background:#d97706}.btn-disabled[data-v-8c09412c]{background:#e5e7eb;color:#9ca3af;cursor:not-allowed}.btn-start[data-v-8c09412c]:disabled{opacity:.7;cursor:not-allowed}@media(max-width:640px){.results-grid[data-v-8c09412c]{grid-template-columns:1fr}}[data-theme=dark]{background:#ffffff0d;color:#f1f5f9}[data-theme=dark]{color:#60a5fa}[data-theme=dark]{background:#60a5fa}[data-theme=dark]{border-top-color:#ffffff0d}[data-theme=dark]{background:#ffffff08;border-color:#ffffff0d}.sessions-page[data-v-0aa633a1]{width:100%;max-width:100%;overflow-x:hidden}.page-header[data-v-0aa633a1]{margin-bottom:1rem}.page-header p[data-v-0aa633a1]{color:#6b7280;font-size:.9375rem}.week-navigation[data-v-0aa633a1]{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;background:var(--card-bg, white);padding:1rem 1.5rem;border-radius:12px;box-shadow:var(--card-shadow);border:1px solid var(--border-color, #e5e7eb);width:100%;box-sizing:border-box}.nav-btn[data-v-0aa633a1]{width:40px;height:40px;border:none;background:var(--bg-secondary, #f3f4f6);border-radius:10px;color:var(--text-secondary, #374151);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.nav-btn[data-v-0aa633a1]:hover{background:var(--border-color, #e5e7eb);color:var(--text-primary, #1a1a2e)}.week-title[data-v-0aa633a1]{display:flex;align-items:center;gap:1rem}.week-title h2[data-v-0aa633a1]{font-size:1.125rem;font-weight:600;color:var(--text-primary, #1a1a2e)}.btn-today[data-v-0aa633a1]{padding:.375rem .75rem;background:var(--primary-color);color:#fff;border:none;border-radius:6px;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-today[data-v-0aa633a1]:hover{background:#5a6fd6}.loading-container[data-v-0aa633a1]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;background:var(--card-bg, white);border-radius:12px}.loading-spinner[data-v-0aa633a1]{width:40px;height:40px;border:3px solid #e5e7eb;border-top-color:var(--primary-color);border-radius:50%;animation:spin-0aa633a1 .8s linear infinite;margin-bottom:1rem}@keyframes spin-0aa633a1{to{transform:rotate(360deg)}}.week-calendar[data-v-0aa633a1]{display:flex;background:var(--card-bg, white);border-radius:12px;box-shadow:var(--card-shadow);border:1px solid var(--border-color, #e5e7eb);overflow:hidden;width:100%;box-sizing:border-box}.time-column[data-v-0aa633a1]{width:60px;flex-shrink:0;border-right:1px solid var(--border-color, #e5e7eb)}.time-header[data-v-0aa633a1]{height:60px;border-bottom:1px solid var(--border-color, #e5e7eb)}.time-slot[data-v-0aa633a1]{height:50px;padding:.25rem .5rem .25rem .25rem;font-size:.6875rem;color:#9ca3af;text-align:right}.day-column[data-v-0aa633a1]{flex:1;min-width:0;border-right:1px solid var(--border-color, #f3f4f6)}.day-column[data-v-0aa633a1]:last-child{border-right:none}.day-column.today[data-v-0aa633a1]{background:var(--today-bg, #f0f7ff)}.day-header[data-v-0aa633a1]{height:60px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-bottom:1px solid var(--border-color, #e5e7eb);padding:.5rem}.day-name[data-v-0aa633a1]{font-size:.6875rem;font-weight:500;color:#6b7280;text-transform:uppercase}.day-date[data-v-0aa633a1]{font-size:1.25rem;font-weight:600;color:#1a1a2e;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%}.day-date.is-today[data-v-0aa633a1]{background:var(--primary-color);color:#fff}.day-body[data-v-0aa633a1]{position:relative;height:900px}.current-time-line[data-v-0aa633a1]{position:absolute;left:0;right:0;height:2px;background:#ef4444;z-index:20;pointer-events:none}.current-time-line[data-v-0aa633a1]:before{content:"";position:absolute;left:-6px;top:-4px;width:10px;height:10px;background:#ef4444;border-radius:50%}.current-time-label[data-v-0aa633a1]{position:absolute;left:8px;top:-8px;background:#ef4444;color:#fff;font-size:.6875rem;font-weight:600;padding:1px 6px;border-radius:4px;white-space:nowrap}.session-block[data-v-0aa633a1]{position:absolute;left:2px;right:2px;padding:.375rem;border-radius:6px;cursor:pointer;overflow:hidden;transition:all .2s ease;border-left:3px solid}.session-block[data-v-0aa633a1]:hover{transform:scale(1.02);z-index:10;box-shadow:0 4px 12px #00000026}.session-block.can-attend[data-v-0aa633a1]{box-shadow:0 0 0 2px #22c55e80}.attend-indicator[data-v-0aa633a1]{position:absolute;top:4px;right:4px;z-index:5}.pulse-dot[data-v-0aa633a1]{display:block;width:10px;height:10px;background:#22c55e;border-radius:50%;animation:pulse-0aa633a1 1.5s infinite}@keyframes pulse-0aa633a1{0%{box-shadow:0 0 #22c55eb3}70%{box-shadow:0 0 0 8px #22c55e00}to{box-shadow:0 0 #22c55e00}}.session-block.color-1[data-v-0aa633a1]{background:#dbeafe;border-color:#3b82f6}.session-block.color-2[data-v-0aa633a1]{background:#dcfce7;border-color:#22c55e}.session-block.color-3[data-v-0aa633a1]{background:#fef3c7;border-color:#f59e0b}.session-block.color-4[data-v-0aa633a1]{background:#fce7f3;border-color:#ec4899}.session-block.color-5[data-v-0aa633a1]{background:#f3e8ff;border-color:#a855f7}.session-time[data-v-0aa633a1]{font-size:.625rem;font-weight:600;color:#374151;margin-bottom:.125rem}.session-title[data-v-0aa633a1]{font-size:.75rem;font-weight:600;color:#1a1a2e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session-group[data-v-0aa633a1]{font-size:.625rem;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.modal-overlay[data-v-0aa633a1]{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:200;padding:1rem}.modal[data-v-0aa633a1]{background:#fff;border-radius:16px;width:100%;max-width:480px;box-shadow:0 20px 60px #0003}.modal-header[data-v-0aa633a1]{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid #e5e7eb}.modal-header h3[data-v-0aa633a1]{font-size:1.125rem;font-weight:600;color:#1a1a2e}.btn-close[data-v-0aa633a1]{width:36px;height:36px;border:none;background:#f3f4f6;border-radius:8px;font-size:1.5rem;color:#6b7280;cursor:pointer}.btn-close[data-v-0aa633a1]:hover{background:#e5e7eb}.modal-body[data-v-0aa633a1]{padding:1.5rem}.session-detail-header[data-v-0aa633a1]{display:flex;gap:1rem;margin-bottom:1.5rem}.detail-date[data-v-0aa633a1]{width:64px;height:64px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.detail-date .date-day[data-v-0aa633a1]{font-size:1.5rem;font-weight:700;line-height:1}.detail-date .date-month[data-v-0aa633a1]{font-size:.75rem;text-transform:uppercase}.detail-info h2[data-v-0aa633a1]{font-size:1.25rem;font-weight:600;color:#1a1a2e;margin-bottom:.375rem}.detail-group[data-v-0aa633a1]{display:flex;align-items:center;gap:.375rem;font-size:.875rem;color:#6b7280}.detail-rows[data-v-0aa633a1]{display:flex;flex-direction:column;gap:.75rem;padding:1rem;background:#f9fafb;border-radius:10px;margin-bottom:1rem}.detail-row[data-v-0aa633a1]{display:flex;align-items:center;justify-content:space-between}.detail-label[data-v-0aa633a1]{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#6b7280}.detail-value[data-v-0aa633a1]{font-size:.9375rem;font-weight:500;color:#1a1a2e}.status-badge[data-v-0aa633a1]{padding:.25rem .75rem;border-radius:20px;font-size:.8125rem}.status-badge.scheduled[data-v-0aa633a1]{background:#dbeafe;color:#2563eb}.status-badge.completed[data-v-0aa633a1]{background:#dcfce7;color:#16a34a}.status-badge.cancelled[data-v-0aa633a1]{background:#fee2e2;color:#dc2626}.detail-description[data-v-0aa633a1]{padding:1rem;background:#f9fafb;border-radius:10px}.detail-description h4[data-v-0aa633a1]{font-size:.8125rem;font-weight:600;color:#6b7280;margin-bottom:.5rem}.detail-description p[data-v-0aa633a1]{font-size:.9375rem;color:#374151;line-height:1.6}.modal-footer[data-v-0aa633a1]{display:flex;justify-content:flex-end;padding:1rem 1.5rem;border-top:1px solid #e5e7eb;background:#f9fafb}.btn-cancel[data-v-0aa633a1]{padding:.625rem 1.25rem;background:#fff;border:1px solid #e5e7eb;border-radius:8px;color:#6b7280;font-size:.9375rem;cursor:pointer}.btn-cancel[data-v-0aa633a1]:hover{background:#f3f4f6}.attendance-section[data-v-0aa633a1]{margin-top:1.5rem;padding:1rem;background:#f9fafb;border-radius:10px}.attendance-section h4[data-v-0aa633a1]{font-size:.8125rem;font-weight:600;color:#6b7280;margin-bottom:.75rem}.attendance-loading[data-v-0aa633a1]{display:flex;align-items:center;gap:.5rem;color:#6b7280;font-size:.875rem}.loading-spinner.small[data-v-0aa633a1]{width:18px;height:18px;border-width:2px}.loading-spinner.white[data-v-0aa633a1]{border-color:#ffffff4d;border-top-color:#fff}.attendance-marked[data-v-0aa633a1]{display:flex;flex-direction:column;gap:.5rem}.attendance-badge[data-v-0aa633a1]{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:8px;font-weight:600;font-size:.9375rem;width:fit-content}.attendance-badge.present[data-v-0aa633a1]{background:#dcfce7;color:#16a34a}.attendance-badge.late[data-v-0aa633a1]{background:#fef3c7;color:#d97706}.attendance-badge.absent[data-v-0aa633a1]{background:#fee2e2;color:#dc2626}.attendance-badge.excused[data-v-0aa633a1]{background:#dbeafe;color:#2563eb}.attendance-time[data-v-0aa633a1]{font-size:.8125rem;color:#6b7280}.attendance-available[data-v-0aa633a1]{display:flex;flex-direction:column;gap:.75rem}.late-warning[data-v-0aa633a1]{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#fef3c7;color:#92400e;border-radius:6px;font-size:.8125rem}.btn-attend[data-v-0aa633a1]{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;border:none;border-radius:8px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s ease;width:fit-content}.btn-attend[data-v-0aa633a1]:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #22c55e66}.btn-attend[data-v-0aa633a1]:disabled{opacity:.7;cursor:not-allowed}.attendance-unavailable[data-v-0aa633a1]{color:#6b7280}.attendance-unavailable p[data-v-0aa633a1]{display:flex;align-items:center;gap:.5rem;font-size:.875rem}.attendance-error[data-v-0aa633a1]{margin-top:.5rem;padding:.5rem .75rem;background:#fee2e2;color:#dc2626;border-radius:6px;font-size:.8125rem}@media(max-width:768px){.week-calendar[data-v-0aa633a1]{overflow-x:auto}.day-column[data-v-0aa633a1]{min-width:80px}}@media(max-width:640px){.week-navigation[data-v-0aa633a1]{flex-wrap:wrap;gap:.75rem;padding:.75rem}.week-title[data-v-0aa633a1]{flex-wrap:wrap;justify-content:center}.week-title h2[data-v-0aa633a1]{font-size:.9375rem;text-align:center}.btn-today[data-v-0aa633a1]{padding:.25rem .5rem}}[data-theme=dark]{background:#1e293b;color:var(--text-primary, #f1f5f9);border-color:#334155}[data-theme=dark]{background:#334155}[data-theme=dark]{border-bottom-color:#334155;color:var(--text-secondary, #94a3b8)}[data-theme=dark]{background:#667eea26}[data-theme=dark]{border-color:#334155}[data-theme=dark]{color:var(--text-secondary, #94a3b8);border-right-color:#334155}[data-theme=dark]{border-color:#334155;border-top-color:var(--primary-color)}[data-theme=dark]{background:#0f172a}.page-title[data-v-0aa633a1]{display:none}.week-title h2[data-v-0aa633a1]{color:var(--text-primary, #1a1a2e)}.day-name[data-v-0aa633a1]{color:var(--text-secondary, #6b7280)}.day-date[data-v-0aa633a1]{color:var(--text-primary, #1a1a2e)}[data-theme=dark]{background:var(--glass-bg)!important;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--glass-border)!important}[data-theme=dark]{background:#ffffff0d!important;color:#94a3b8!important;border:1px solid rgba(255,255,255,.05)!important}[data-theme=dark]{background:#ffffff1a!important;color:#f1f5f9!important}[data-theme=dark]{background:transparent!important;border-right-color:#ffffff0d!important}[data-theme=dark]{background:transparent!important;border-right-color:#ffffff08!important}[data-theme=dark]{background:rgba(var(--primary-color-rgb, 102, 126, 234),.1)!important}[data-theme=dark]{border-bottom-color:#ffffff0d!important}[data-theme=dark]{color:#f1f5f9!important}[data-theme=dark]{background:#0f172a!important;border:1px solid rgba(255,255,255,.1)!important}[data-theme=dark]{background:#1e293b!important;border-bottom-color:#ffffff0d!important}[data-theme=dark]{color:#f8fafc!important}[data-theme=dark]{background:#1e293b!important;border-top-color:#ffffff0d!important}[data-theme=dark]{color:#94a3b8!important}[data-theme=dark]{background:#1e293b!important;color:#94a3b8!important}.materials-page[data-v-77ad8b70]{width:100%;max-width:1200px;margin:0 auto;overflow-x:hidden}.page-header[data-v-77ad8b70]{margin-bottom:1.5rem}.page-header h1[data-v-77ad8b70]{margin:0 0 .25rem;font-size:1.5rem;font-weight:600;color:var(--text-primary, #1a1a2e);word-break:break-word}.page-header p[data-v-77ad8b70]{margin:0;color:var(--text-secondary, #6c757d)}.filters-bar[data-v-77ad8b70]{display:flex;flex-direction:column;gap:1.25rem;margin-bottom:2rem}.search-wrapper[data-v-77ad8b70]{position:relative;width:100%;max-width:500px}.search-wrapper svg[data-v-77ad8b70]{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:#adb5bd}.search-wrapper input[data-v-77ad8b70]{width:100%;box-sizing:border-box;padding:.875rem 1rem .875rem 2.75rem;border:1px solid var(--border-color, #e2e8f0);border-radius:12px;font-size:.9375rem;background:var(--input-bg, white);color:var(--text-primary);transition:all .2s ease;box-shadow:0 2px 4px #00000005}.search-wrapper input[data-v-77ad8b70]:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea26}.tabs-group[data-v-77ad8b70]{display:flex;width:100%;max-width:100%;gap:.5rem;overflow-x:auto;padding-bottom:.5rem;-webkit-overflow-scrolling:touch;scrollbar-width:none}.tabs-group[data-v-77ad8b70]::-webkit-scrollbar{display:none}.tab-btn[data-v-77ad8b70]{padding:.5rem 1.25rem;border:1px solid var(--border-color, #e2e8f0);background:var(--card-bg, white);border-radius:20px;font-size:.875rem;font-weight:500;color:var(--text-secondary, #64748b);cursor:pointer;white-space:nowrap;transition:all .2s ease}.tab-btn[data-v-77ad8b70]:hover{background:#f8fafc;color:#334155}.tab-btn.active[data-v-77ad8b70]{background:#667eea;border-color:#667eea;color:#fff;box-shadow:0 2px 8px #667eea4d}.loading-container[data-v-77ad8b70]{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:4rem;color:#6c757d}.loading-spinner[data-v-77ad8b70]{width:32px;height:32px;border:3px solid #e9ecef;border-top-color:#667eea;border-radius:50%;animation:spin-77ad8b70 .8s linear infinite}@keyframes spin-77ad8b70{to{transform:rotate(360deg)}}.empty-state[data-v-77ad8b70]{text-align:center;padding:4rem 2rem;color:#6c757d}.empty-state svg[data-v-77ad8b70]{margin-bottom:1rem;opacity:.5}.empty-state h3[data-v-77ad8b70]{margin:0 0 .5rem;color:#495057}.empty-state p[data-v-77ad8b70]{margin:0}.material-type-section[data-v-77ad8b70]{margin-bottom:3rem}.section-title[data-v-77ad8b70]{display:flex;align-items:center;gap:.75rem;margin:0 0 1.5rem;font-size:1.25rem;font-weight:600;color:#1e293b}.section-icon[data-v-77ad8b70]{width:24px;height:24px}.section-icon.article[data-v-77ad8b70]{color:#3b82f6}.section-icon.video[data-v-77ad8b70]{color:#ec4899}.section-icon.file[data-v-77ad8b70]{color:#f97316}.section-icon.external_link[data-v-77ad8b70]{color:#22c55e}.section-icon.homework[data-v-77ad8b70]{color:#a855f7}.section-icon.revision[data-v-77ad8b70]{color:#06b6d4}.count-badge[data-v-77ad8b70]{background:var(--bg-secondary, #f1f5f9);color:var(--text-secondary, #64748b);padding:.125rem .5rem;border-radius:12px;font-size:.875rem;font-weight:500}.materials-grid[data-v-77ad8b70]{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.material-card[data-v-77ad8b70]{display:flex;align-items:flex-start;gap:1.25rem;padding:1.5rem;background:var(--card-bg, white);border-radius:16px;box-shadow:var(--card-shadow);border:1px solid var(--border-color, rgba(226, 232, 240, .8));cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);text-decoration:none;color:inherit;position:relative;overflow:hidden}.material-card[data-v-77ad8b70]:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:transparent;transition:background .3s ease}.material-card[data-v-77ad8b70]:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;transform:translateY(-4px);border-color:transparent}.material-card.article[data-v-77ad8b70]:hover:before{background:#3b82f6}.material-card.video[data-v-77ad8b70]:hover:before{background:#ec4899}.material-card.file[data-v-77ad8b70]:hover:before{background:#f97316}.material-card.external_link[data-v-77ad8b70]:hover:before{background:#22c55e}.material-card.homework[data-v-77ad8b70]:hover:before{background:#a855f7}.material-card.revision[data-v-77ad8b70]:hover:before{background:#06b6d4}.material-card.overdue[data-v-77ad8b70]{border-color:#ef4444}.material-card.overdue[data-v-77ad8b70]:before{background:#ef4444}.card-icon[data-v-77ad8b70]{display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:14px;flex-shrink:0;transition:transform .3s ease}.material-card:hover .card-icon[data-v-77ad8b70]{transform:scale(1.05)}.card-icon.article[data-v-77ad8b70]{background:#eff6ff;color:#3b82f6}.card-icon.video[data-v-77ad8b70]{background:#fdf2f8;color:#ec4899}.card-icon.file[data-v-77ad8b70]{background:#fff7ed;color:#f97316}.card-icon.external_link[data-v-77ad8b70]{background:#f0fdf4;color:#22c55e}.card-icon.homework[data-v-77ad8b70]{background:#faf5ff;color:#a855f7}.card-icon.revision[data-v-77ad8b70]{background:#ecfeff;color:#06b6d4}.card-body[data-v-77ad8b70]{flex:1;min-width:0}.card-type[data-v-77ad8b70]{display:inline-block;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#64748b;margin-bottom:.5rem}.card-title[data-v-77ad8b70]{margin:0 0 .5rem;font-size:1.125rem;font-weight:600;color:#1e293b;line-height:1.4;transition:color .2s ease}.material-card:hover .card-title[data-v-77ad8b70]{color:#667eea}.card-description[data-v-77ad8b70]{margin:0 0 1rem;font-size:.875rem;color:#475569;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-meta[data-v-77ad8b70]{display:flex;flex-wrap:wrap;gap:1rem;margin-top:auto}.meta-item[data-v-77ad8b70]{display:flex;align-items:center;gap:.375rem;font-size:.8125rem;color:#64748b;font-weight:500}.meta-item.due-date.overdue[data-v-77ad8b70]{color:#ef4444;font-weight:600;background:#fef2f2;padding:.25rem .5rem;border-radius:6px;margin-left:-.5rem}.card-action[data-v-77ad8b70]{color:#cbd5e1;transition:all .3s ease;transform:translate(0)}.material-card:hover .card-action[data-v-77ad8b70]{color:#667eea;transform:translate(4px)}.modal-overlay[data-v-77ad8b70]{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-container[data-v-77ad8b70]{background:#fff;border-radius:16px;width:100%;max-width:800px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 25px 50px #00000040}.modal-header[data-v-77ad8b70]{display:flex;justify-content:space-between;align-items:flex-start;padding:1.5rem;background:#f8f9fa;border-bottom:1px solid #e9ecef}.modal-title-section[data-v-77ad8b70]{flex:1}.type-badge[data-v-77ad8b70]{display:inline-block;padding:.25rem .75rem;border-radius:20px;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem}.type-badge.article[data-v-77ad8b70]{background:#e3f2fd;color:#1976d2}.type-badge.video[data-v-77ad8b70]{background:#fce4ec;color:#c2185b}.type-badge.file[data-v-77ad8b70]{background:#fff3e0;color:#e65100}.type-badge.external_link[data-v-77ad8b70]{background:#e8f5e9;color:#388e3c}.type-badge.homework[data-v-77ad8b70]{background:#f3e5f5;color:#7b1fa2}.type-badge.revision[data-v-77ad8b70]{background:#e0f7fa;color:#00838f}.modal-header h2[data-v-77ad8b70]{margin:0;font-size:1.25rem;font-weight:600;color:#1a1a2e;line-height:1.4}.modal-description[data-v-77ad8b70]{margin:.5rem 0 0;font-size:.875rem;color:#6c757d}.close-btn[data-v-77ad8b70]{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:none;border-radius:8px;background:#e9ecef;color:#495057;cursor:pointer;transition:all .2s ease;flex-shrink:0;margin-left:1rem}.close-btn[data-v-77ad8b70]:hover{background:#dee2e6;color:#212529}.modal-body[data-v-77ad8b70]{flex:1;overflow-y:auto;padding:1.5rem}.modal-footer[data-v-77ad8b70]{padding:1rem 1.5rem;background:#f8f9fa;border-top:1px solid #e9ecef}.modal-meta[data-v-77ad8b70]{display:flex;gap:1rem;font-size:.8125rem;color:#6c757d}.article-content[data-v-77ad8b70],.revision-content[data-v-77ad8b70],.homework-instructions[data-v-77ad8b70]{font-size:16px;line-height:1.8;color:#212529}.article-content[data-v-77ad8b70] h1,.revision-content[data-v-77ad8b70] h1,.homework-instructions[data-v-77ad8b70] h1{font-size:1.75em;font-weight:700;margin:1.5em 0 .75em;color:#1a1a2e}.article-content[data-v-77ad8b70] h2,.revision-content[data-v-77ad8b70] h2,.homework-instructions[data-v-77ad8b70] h2{font-size:1.5em;font-weight:600;margin:1.25em 0 .5em;color:#1a1a2e}.article-content[data-v-77ad8b70] h3,.revision-content[data-v-77ad8b70] h3,.homework-instructions[data-v-77ad8b70] h3{font-size:1.25em;font-weight:600;margin:1em 0 .5em;color:#1a1a2e}.article-content[data-v-77ad8b70] p,.revision-content[data-v-77ad8b70] p,.homework-instructions[data-v-77ad8b70] p{margin:.75em 0}.article-content[data-v-77ad8b70] ul,.article-content[data-v-77ad8b70] ol,.revision-content[data-v-77ad8b70] ul,.revision-content[data-v-77ad8b70] ol,.homework-instructions[data-v-77ad8b70] ul,.homework-instructions[data-v-77ad8b70] ol{margin:.75em 0;padding-left:1.5em}.article-content[data-v-77ad8b70] li,.revision-content[data-v-77ad8b70] li,.homework-instructions[data-v-77ad8b70] li{margin:.25em 0}.article-content[data-v-77ad8b70] blockquote,.revision-content[data-v-77ad8b70] blockquote,.homework-instructions[data-v-77ad8b70] blockquote{border-left:4px solid #667eea;padding:1em 1.25em;margin:1.5em 0;background:#f8f9fa;border-radius:0 8px 8px 0;font-style:italic;color:#495057}.article-content[data-v-77ad8b70] img,.revision-content[data-v-77ad8b70] img,.homework-instructions[data-v-77ad8b70] img{max-width:100%;height:auto;border-radius:8px;margin:1.5em 0}.article-content[data-v-77ad8b70] pre,.revision-content[data-v-77ad8b70] pre,.homework-instructions[data-v-77ad8b70] pre{background:#1a1a2e;color:#f8f9fa;padding:1em;border-radius:8px;overflow-x:auto;font-size:.9em}.article-content[data-v-77ad8b70] code,.revision-content[data-v-77ad8b70] code,.homework-instructions[data-v-77ad8b70] code{background:#f8f9fa;padding:.2em .4em;border-radius:4px;font-size:.9em}.article-content[data-v-77ad8b70] pre code,.revision-content[data-v-77ad8b70] pre code,.homework-instructions[data-v-77ad8b70] pre code{background:none;padding:0}.article-content[data-v-77ad8b70] hr,.revision-content[data-v-77ad8b70] hr,.homework-instructions[data-v-77ad8b70] hr{border:none;border-top:2px solid #e9ecef;margin:2em 0}.video-container[data-v-77ad8b70]{background:#000;border-radius:12px;overflow:hidden}.video-embed[data-v-77ad8b70]{position:relative;padding-bottom:56.25%;height:0}.video-embed iframe[data-v-77ad8b70]{position:absolute;top:0;left:0;width:100%;height:100%}.video-upload video[data-v-77ad8b70]{width:100%;display:block}.file-content[data-v-77ad8b70]{display:flex;flex-direction:column;align-items:center;gap:1.5rem;padding:2rem;background:#f8f9fa;border-radius:12px;text-align:center}.file-info[data-v-77ad8b70]{display:flex;flex-direction:column;align-items:center;gap:.75rem}.file-icon[data-v-77ad8b70]{display:flex;align-items:center;justify-content:center;width:80px;height:80px;border-radius:16px;background:#e9ecef;font-size:.75rem;font-weight:700;color:#495057}.file-icon.pdf[data-v-77ad8b70]{background:#f8d7da;color:#dc3545}.file-icon.doc[data-v-77ad8b70],.file-icon.docx[data-v-77ad8b70]{background:#cce5ff;color:#004085}.file-icon.ppt[data-v-77ad8b70],.file-icon.pptx[data-v-77ad8b70]{background:#fff3cd;color:#856404}.file-icon.xls[data-v-77ad8b70],.file-icon.xlsx[data-v-77ad8b70]{background:#d4edda;color:#155724}.file-details[data-v-77ad8b70]{display:flex;flex-direction:column;gap:.25rem}.file-name[data-v-77ad8b70]{font-weight:500;color:#1a1a2e}.file-size[data-v-77ad8b70]{font-size:.8125rem;color:#6c757d}.download-btn[data-v-77ad8b70]{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:500;text-decoration:none;cursor:pointer;transition:all .2s ease}.download-btn[data-v-77ad8b70]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.link-content[data-v-77ad8b70]{display:flex;flex-direction:column;align-items:center;gap:1.5rem;padding:2rem;text-align:center}.link-preview[data-v-77ad8b70]{display:flex;flex-direction:column;align-items:center;gap:1rem;color:#6c757d}.link-url[data-v-77ad8b70]{font-size:.8125rem;word-break:break-all;max-width:100%}.open-link-btn[data-v-77ad8b70]{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:linear-gradient(135deg,#28a745,#218838);color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:500;text-decoration:none;cursor:pointer;transition:all .2s ease}.open-link-btn[data-v-77ad8b70]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #28a74566}.homework-content[data-v-77ad8b70]{display:flex;flex-direction:column;gap:1.5rem}.homework-due[data-v-77ad8b70]{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#d4edda;color:#155724;border-radius:8px;font-size:.875rem;font-weight:500;width:fit-content}.homework-due.overdue[data-v-77ad8b70]{background:#f8d7da;color:#721c24}@media(max-width:640px){.filters-bar[data-v-77ad8b70]{flex-direction:column}.search-wrapper[data-v-77ad8b70]{max-width:100%;width:100%}.tabs-group[data-v-77ad8b70]{max-width:100vw}.materials-grid[data-v-77ad8b70]{grid-template-columns:1fr}.material-card[data-v-77ad8b70]{padding:1rem}.modal-container[data-v-77ad8b70]{max-height:100vh;border-radius:0}}[data-theme=dark]{background:#1e293b;border-color:#334155;color:var(--text-primary, #f1f5f9)}[data-theme=dark]{background:var(--card-bg, #1e293b);border-color:#334155}[data-theme=dark]{border-color:#667eea;background:#1e293b}[data-theme=dark]{background:#334155;color:var(--text-secondary, #94a3b8)}[data-theme=dark]{border-color:#334155;border-top-color:#667eea}[data-theme=dark]{background:#000000b3}[data-theme=dark]{background:var(--card-bg, #1e293b)}[data-theme=dark]{background:#0f172a;border-color:#334155;color:var(--text-primary, #f1f5f9)}[data-theme=dark]{background:#ffffff0d;border-color:#ffffff1a;color:#f8fafc}[data-theme=dark]{background:#ffffff08;border-color:#ffffff0d;color:#94a3b8}[data-theme=dark]{background:#ffffff14;color:#f1f5f9}[data-theme=dark]{background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--glass-border)}[data-theme=dark]{color:#94a3b8}[data-theme=dark]{background:#0f172a;border:1px solid rgba(255,255,255,.1)}[data-theme=dark]{background:#1e293b;border-bottom-color:#ffffff0d}[data-theme=dark]{color:#cbd5e1}[data-theme=dark]{color:#f8fafc}.material-detail-page[data-v-09a72034]{max-width:900px;margin:0 auto;padding:1.5rem}.loading-container[data-v-09a72034],.error-container[data-v-09a72034]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;min-height:300px;color:#6c757d}.error-container[data-v-09a72034]{color:#dc3545}.material-header[data-v-09a72034]{margin-bottom:2rem}.back-link[data-v-09a72034]{display:inline-flex;align-items:center;gap:.5rem;color:#6c757d;text-decoration:none;font-size:.875rem;margin-bottom:1rem;transition:color .2s ease}.back-link[data-v-09a72034]:hover{color:#3498db}.header-content[data-v-09a72034]{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000000f}.header-meta[data-v-09a72034]{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem;flex-wrap:wrap}.type-badge[data-v-09a72034]{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase}.type-badge.article[data-v-09a72034]{background:#e3f2fd;color:#1565c0}.type-badge.video[data-v-09a72034]{background:#fce4ec;color:#c62828}.type-badge.file[data-v-09a72034]{background:#fff3e0;color:#e65100}.type-badge.external_link[data-v-09a72034]{background:#e8f5e9;color:#2e7d32}.type-badge.homework[data-v-09a72034]{background:#f3e5f5;color:#7b1fa2}.type-badge.revision[data-v-09a72034]{background:#e0f2f1;color:#00695c}.preview-badge[data-v-09a72034]{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;background:#e8f0fe;color:#1a73e8}.group-name[data-v-09a72034]{color:#6c757d;font-size:.875rem}.material-title[data-v-09a72034]{margin:0 0 .5rem;font-size:1.75rem;font-weight:700;color:#1a1a2e;line-height:1.3}.material-description[data-v-09a72034]{margin:0 0 1rem;color:#6c757d;font-size:1rem;line-height:1.5}.header-info[data-v-09a72034]{display:flex;flex-wrap:wrap;gap:1rem}.info-item[data-v-09a72034]{display:flex;align-items:center;gap:.375rem;color:#6c757d;font-size:.875rem}.info-item svg[data-v-09a72034]{color:#adb5bd}.summary-section[data-v-09a72034]{background:linear-gradient(135deg,#e8f4fd,#f0f7ff);border:1px solid #bbdefb;border-radius:12px;margin-bottom:2rem;overflow:hidden}.summary-section .section-header[data-v-09a72034]{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;cursor:pointer;transition:background .2s ease}.summary-section .section-header[data-v-09a72034]:hover{background:#ffffff80}.section-title[data-v-09a72034]{display:flex;align-items:center;gap:.5rem;margin:0;font-size:1rem;font-weight:600;color:#1565c0}.section-title svg[data-v-09a72034]{color:#1976d2}.expand-btn[data-v-09a72034]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:none;color:#1565c0;cursor:pointer;transition:transform .3s ease}.expand-btn svg.rotated[data-v-09a72034]{transform:rotate(180deg)}.summary-content[data-v-09a72034]{padding:0 1.25rem 1.25rem;color:#1a1a2e}.main-content-section[data-v-09a72034]{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000000f;margin-bottom:2rem}.prose[data-v-09a72034]{font-size:1rem;line-height:1.75;color:#1a1a2e}.prose[data-v-09a72034] h1,.prose[data-v-09a72034] h2,.prose[data-v-09a72034] h3,.prose[data-v-09a72034] h4,.prose[data-v-09a72034] h5{margin-top:1.5em;margin-bottom:.75em;font-weight:600;line-height:1.3;color:#1a1a2e}.prose[data-v-09a72034] h4{font-size:1.125rem}.prose[data-v-09a72034] h5{font-size:1rem}.prose[data-v-09a72034] p{margin-bottom:1em}.prose[data-v-09a72034] ul,.prose[data-v-09a72034] ol{margin:1em 0;padding-left:1.5em}.prose[data-v-09a72034] li{margin:.5em 0}.prose[data-v-09a72034] img{max-width:100%;height:auto;border-radius:8px;margin:1.5em 0}.prose[data-v-09a72034] blockquote{border-left:4px solid #3498db;padding-left:1rem;margin:1.5em 0;color:#6c757d;font-style:italic}.video-wrapper[data-v-09a72034]{position:relative;padding-bottom:56.25%;height:0;overflow:hidden;border-radius:8px}.video-wrapper iframe[data-v-09a72034],.video-wrapper video[data-v-09a72034]{position:absolute;top:0;left:0;width:100%;height:100%}.file-card[data-v-09a72034],.link-card[data-v-09a72034]{display:flex;align-items:center;gap:1.5rem;padding:1.5rem;background:#f8f9fa;border-radius:12px}.file-icon[data-v-09a72034]{color:#6c757d}.file-info[data-v-09a72034],.link-info[data-v-09a72034]{flex:1}.file-info h3[data-v-09a72034],.link-info h3[data-v-09a72034]{margin:0 0 .25rem;font-size:1.125rem;color:#1a1a2e}.file-info p[data-v-09a72034],.link-info p[data-v-09a72034]{margin:0;color:#6c757d;font-size:.875rem}.link-url[data-v-09a72034]{word-break:break-all}.link-preview-image[data-v-09a72034]{width:120px;height:80px;object-fit:cover;border-radius:8px}.due-date-banner[data-v-09a72034]{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#e8f5e9;color:#2e7d32;border-radius:8px;margin-bottom:1.5rem;font-weight:500}.due-date-banner.overdue[data-v-09a72034]{background:#ffebee;color:#c62828}.related-assessment-section[data-v-09a72034]{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000000f}.related-assessment-section .section-title[data-v-09a72034]{margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #e9ecef;font-size:1.125rem;color:#1a1a2e}.assessment-cards[data-v-09a72034]{display:flex;flex-direction:column;gap:1rem}.assessment-card[data-v-09a72034]{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem;background:#f8f9fa;border-radius:8px}.assessment-info h3[data-v-09a72034]{margin:0 0 .25rem;font-size:1rem;color:#1a1a2e}.assessment-desc[data-v-09a72034]{margin:0 0 .5rem;color:#6c757d;font-size:.875rem}.assessment-meta[data-v-09a72034]{display:flex;gap:1rem}.meta-item[data-v-09a72034]{display:flex;align-items:center;gap:.25rem;color:#6c757d;font-size:.8125rem}.assessment-status[data-v-09a72034]{display:flex;align-items:center;gap:1rem}.status-badge[data-v-09a72034]{padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:500}.status-badge.available[data-v-09a72034]{background:#d4edda;color:#155724}.status-badge.in_progress[data-v-09a72034]{background:#fff3cd;color:#856404}.status-badge.completed[data-v-09a72034]{background:#cce5ff;color:#004085}.status-badge.locked[data-v-09a72034]{background:#e9ecef;color:#6c757d}.status-badge.expired[data-v-09a72034]{background:#f8d7da;color:#721c24}.locked-text[data-v-09a72034],.expired-text[data-v-09a72034]{color:#6c757d;font-size:.8125rem}.btn[data-v-09a72034]{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;border-radius:8px;font-size:.875rem;font-weight:500;text-decoration:none;cursor:pointer;transition:all .2s ease;border:none}.btn-primary[data-v-09a72034]{background:#3498db;color:#fff}.btn-primary[data-v-09a72034]:hover{background:#2980b9}.btn-outline[data-v-09a72034]{background:#fff;color:#3498db;border:1px solid #3498db}.btn-outline[data-v-09a72034]:hover{background:#f0f7ff}.btn-disabled[data-v-09a72034]{opacity:.6;cursor:not-allowed;pointer-events:none}@media(max-width:768px){.material-detail-page[data-v-09a72034]{padding:1rem}.material-title[data-v-09a72034]{font-size:1.5rem}.file-card[data-v-09a72034],.link-card[data-v-09a72034],.assessment-card[data-v-09a72034]{flex-direction:column;text-align:center}.assessment-status[data-v-09a72034]{flex-direction:column}}[data-theme=dark]{background:var(--bg-primary, #0f172a)}[data-theme=dark]{background:var(--card-bg, #1e293b);border-color:var(--border-color, #334155)}[data-theme=dark]{color:var(--text-primary, #f1f5f9)}[data-theme=dark]{color:var(--text-secondary, #94a3b8)}[data-theme=dark]{background:#0f172a;border-color:#334155}[data-theme=dark]{background:#3498db0d;border-color:#334155}[data-theme=dark]{color:#3498db}[data-theme=dark]{color:#f1f5f9}[data-theme=dark]{background:#2e7d321a;color:#81c784}[data-theme=dark]{background:#c628281a;color:#e57373}[data-theme=dark]{background:#334155;color:#94a3b8}[data-theme=dark]{background:#3498db33;color:#3498db}[data-theme=dark]{background:transparent;border-color:#3498db;color:#3498db}[data-theme=dark]{border-bottom-color:#334155}
