.sidebar{border-right:1px solid var(--border-color);-webkit-backdrop-filter:blur(14px);z-index:100;background:#0f172a66;flex-direction:column;width:260px;height:100vh;transition:width .3s cubic-bezier(.4,0,.2,1);display:flex;position:sticky;top:0}.sidebar.collapsed{width:80px}.sidebar-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:1.5rem;display:flex;position:relative}.sidebar.collapsed .sidebar-header{flex-direction:column;justify-content:center;gap:1rem;padding:1.5rem .5rem}.sidebar-logo{color:var(--text-primary);align-items:center;gap:.75rem;text-decoration:none;transition:opacity .2s;display:flex}.sidebar-logo:hover{opacity:.95}.logo-img{mix-blend-mode:multiply;flex-shrink:0;height:32px}@media (prefers-color-scheme:dark){.logo-img{filter:invert()hue-rotate(180deg);mix-blend-mode:screen}}.logo-text{letter-spacing:-.03em;background:linear-gradient(135deg, var(--text-primary) 30%, var(--primary-color) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:1.45rem;font-weight:800}.collapse-btn{background:var(--surface-color);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;z-index:101;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;transition:all .2s;display:flex;position:absolute;top:24px;right:-12px;box-shadow:0 4px 10px #0000004d}.collapse-btn:hover{background-color:var(--primary-color);color:#fff;border-color:var(--primary-color);transform:scale(1.1)}.sidebar.collapsed .collapse-btn{right:-12px}.sidebar-content{flex-direction:column;flex:1;padding:1.75rem 1.25rem;display:flex;overflow-y:auto}.sidebar.collapsed .sidebar-content{padding:1.5rem .5rem}.nav-section{margin-bottom:2.25rem}.nav-section-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);white-space:nowrap;margin-bottom:.85rem;padding-left:.75rem;font-size:.725rem;font-weight:700;display:block}.nav-item{color:var(--text-secondary);border-radius:var(--radius-md);white-space:nowrap;border-left:3.5px solid #0000;align-items:center;gap:.75rem;margin-bottom:.35rem;padding:.75rem 1rem;font-size:.925rem;font-weight:600;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;overflow:hidden}.sidebar.collapsed .nav-item{border-left:none;justify-content:center;padding:.75rem}.nav-item:hover{color:var(--text-primary);background:#ffffff0a;padding-left:1.15rem}.sidebar.collapsed .nav-item:hover{padding-left:.75rem}.nav-item.active{color:var(--primary-color);border-left:3.5px solid var(--primary-color);background:#3b82f61f;border-top-left-radius:0;border-bottom-left-radius:0;box-shadow:inset 5px 0 10px -5px #3b82f61a}.sidebar.collapsed .nav-item.active{color:var(--primary-color);border-radius:var(--radius-md);background:#3b82f61f;border-left:none;box-shadow:0 0 12px #3b82f626}.nav-icon{color:inherit;flex-shrink:0;transition:transform .2s}.nav-item:hover .nav-icon{transform:scale(1.05)}.nav-item.active .nav-icon{color:var(--primary-color)}.sidebar-footer{border-top:1px solid var(--border-color);padding:1.5rem 1.25rem}.sidebar.collapsed .sidebar-footer{justify-content:center;padding:1.5rem .5rem;display:flex}.user-card{border-radius:var(--radius-md);border:1px solid var(--border-color);background:#0f172a40;align-items:center;gap:.75rem;padding:.5rem;transition:all .2s;display:flex}.user-card:hover{background:#0f172a59;border-color:#94a3b833}.sidebar.collapsed .user-card{background:0 0;border:none;justify-content:center;padding:.25rem}.user-avatar{border:1px solid var(--border-color);border-radius:50%;flex-shrink:0;width:36px;height:36px;transition:transform .2s,border-color .2s}.user-avatar:hover{border-color:var(--primary-color);transform:scale(1.05)}.user-info{white-space:nowrap;flex-direction:column;display:flex;overflow:hidden}.user-name{color:var(--text-primary);text-overflow:ellipsis;font-size:.875rem;font-weight:700;text-decoration:none;transition:color .2s;overflow:hidden}.user-name:hover{color:var(--primary-color)}.logout-btn{color:var(--text-secondary);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;margin-top:.25rem;padding:0;font-size:.75rem;font-weight:600;transition:color .2s;display:flex}.logout-btn:hover{color:var(--error-color)}.logout-icon-btn-collapsed{border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;background:#0f172a4d;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;transition:all .2s;display:flex}.logout-icon-btn-collapsed:hover{color:var(--error-color);border-color:var(--error-color);background:#ef44441a;transform:scale(1.05)}.login-btn{width:100%;color:var(--primary-color);border:1.5px solid var(--primary-color);border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;background:0 0;justify-content:center;align-items:center;padding:.75rem;font-size:.875rem;font-weight:700;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;overflow:hidden}.sidebar.collapsed .login-btn{aspect-ratio:1;border-radius:50%;width:40px;height:40px;padding:.75rem}.login-btn:hover{background:var(--primary-color);color:#0f172a;box-shadow:0 4px 12px #3b82f633}.app-layout{background-color:var(--bg-color);width:100vw;height:100vh;display:flex;overflow:hidden}.main-content{flex-direction:column;flex:1;min-height:100vh;display:flex;position:relative;overflow-y:auto}.app-layout.no-sidebar .main-content{height:100vh;min-height:100vh;overflow:hidden}@media (width<=768px){.app-layout{flex-direction:column}.sidebar{border-right:none;border-bottom:1px solid var(--border-color);width:100%;height:auto;position:static}}.home-dashboard{width:100%;max-width:1280px;min-height:calc(100vh - 60px);margin:0 auto;padding:2rem 2.5rem;position:relative}.home-dashboard .glow-effect{z-index:0;pointer-events:none;background:radial-gradient(circle,#3b82f60f 0%,#3b82f600 70%);width:600px;height:600px;position:absolute;top:-120px;right:15%}.dashboard-loading{height:50vh;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:1rem;font-size:1.25rem;display:flex}.home-guest{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:70vh;padding:2rem;display:flex;position:relative;overflow:hidden}.guest-glow{z-index:0;pointer-events:none;background:radial-gradient(circle,#3b82f61a 0%,#3b82f600 70%);width:400px;height:400px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.guest-icon{color:var(--primary-color);opacity:.8;z-index:1;margin-bottom:1.5rem}.home-guest h1{color:var(--text-primary);z-index:1;margin-bottom:.75rem;font-size:2.5rem;font-weight:800}.home-guest p{color:var(--text-secondary);z-index:1;max-width:480px;margin-bottom:2rem;font-size:1.1rem;line-height:1.6}.dashboard-welcome-banner{border-radius:var(--radius-lg);border:1px solid var(--border-color);z-index:1;background:linear-gradient(135deg,#1e293bb3 0%,#0f172acc 100%);justify-content:space-between;align-items:center;margin-bottom:2.5rem;padding:2.25rem 2.5rem;display:flex;position:relative;overflow:hidden}.welcome-tag{color:var(--primary-color);border-radius:var(--radius-lg);background:#3b82f61a;border:1px solid #3b82f626;align-items:center;gap:.5rem;margin-bottom:.85rem;padding:.3rem .75rem;font-size:.75rem;font-weight:600;display:inline-flex}.banner-details h1{color:var(--text-primary);letter-spacing:-.02em;margin:0 0 .5rem;font-size:2.25rem;font-weight:800}.banner-details p{color:var(--text-secondary);max-width:580px;margin:0;font-size:1.05rem;line-height:1.5}.banner-stats{gap:2rem;display:flex}.banner-stat-box{border:1px solid var(--border-color);border-radius:var(--radius-md);background:#0f172a66;flex-direction:column;justify-content:center;align-items:center;min-width:110px;padding:1rem 1.75rem;display:flex}.banner-stat-box .stat-num{color:var(--text-primary);margin-bottom:.25rem;font-size:1.75rem;font-weight:800;line-height:1.1}.banner-stat-box .glow-number{color:var(--primary-color);text-shadow:0 0 10px #3b82f666}.banner-stat-box .stat-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:700}.dashboard-layout{z-index:1;grid-template-columns:1fr 320px;align-items:flex-start;gap:2rem;display:grid;position:relative}.dashboard-main-content{flex-direction:column;gap:2.5rem;display:flex}.dashboard-sidebar{flex-direction:column;gap:1.5rem;display:flex;position:sticky;top:2rem}.sidebar-widget{border-radius:var(--radius-lg);border:1px solid var(--border-color);background:#1e293b4d;padding:1.5rem}.widget-header{align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.widget-icon{color:var(--text-secondary)}.widget-icon.primary{color:var(--primary-color)}.widget-icon.award{color:#eab308}.widget-header h3{color:var(--text-primary);margin:0;font-size:1.1rem;font-weight:700}.widget-subtitle{color:var(--text-secondary);margin:0 0 1.25rem;font-size:.8rem}.activity-stats-grid{grid-template-columns:repeat(3,1fr);gap:.5rem;display:grid}.activity-stat-card{border-radius:var(--radius-md);border:1px solid var(--border-color);text-align:center;background:#0f172a33;flex-direction:column;justify-content:center;align-items:center;padding:.75rem .5rem;display:flex}.activity-stat-card .activity-stat-val{color:var(--text-primary);font-size:1.35rem;font-weight:800;line-height:1.2}.activity-stat-card .activity-stat-val.in-progress{color:#10b981}.activity-stat-card .activity-stat-val.completed{color:#3b82f6}.activity-stat-card .activity-stat-lbl{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-top:.25rem;font-size:.65rem;font-weight:700}.milestones-list{flex-direction:column;gap:1rem;margin-bottom:1.25rem;display:flex}.milestone-item{align-items:flex-start;gap:.75rem;display:flex}.milestone-check{color:#eab308;flex-shrink:0;margin-top:.15rem}.milestone-item h4{color:var(--text-primary);margin:0 0 .15rem;font-size:.875rem;font-weight:700}.milestone-item p{color:var(--text-secondary);margin:0;font-size:.775rem;line-height:1.35}.streak-tracker{border-radius:var(--radius-md);background:#eab3080d;border:1px solid #eab3081a;align-items:center;gap:.65rem;padding:.75rem 1rem;display:flex}.streak-flame{font-size:1.2rem}.streak-quote{color:#eab308;margin:0;font-size:.775rem;font-weight:600;line-height:1.3}.sidebar-browse-card{border-radius:var(--radius-lg);border:1px solid var(--border-color);color:var(--primary-color);background:#3b82f60d;justify-content:space-between;align-items:center;padding:1.15rem 1.5rem;font-size:.95rem;font-weight:700;text-decoration:none;transition:all .2s;display:flex}.sidebar-browse-card:hover{background:var(--primary-color);color:#fff;transform:translateY(-2px);box-shadow:0 4px 15px #3b82f633}.subject-group-section{border-radius:var(--radius-lg);border:1px solid var(--border-color);background:#1e293b4d;padding:1.75rem;position:relative}.subject-group-section:hover{border-color:rgba(var(--primary-color-rgb), .2)}.subject-group-header{border-bottom:1.5px solid var(--border-color);justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:.75rem;display:flex}.subject-header-title-row{align-items:center;gap:.75rem;display:flex}.subject-indicator{border-radius:50%;width:10px;height:10px}.subject-group-title{color:var(--text-primary);margin:0;font-size:1.35rem;font-weight:800}.browse-btn-sm{color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;background:#0f172a66;padding:.5rem 1rem;font-size:.8rem;font-weight:700;transition:all .2s}.browse-btn-sm:hover{background:var(--subject-accent,var(--primary-color));color:#0f172a;border-color:var(--subject-accent,var(--primary-color))}.home-dashboard .test-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem;display:grid}.home-dashboard .test-card{border-radius:var(--radius-md);border:1px solid var(--border-color);border-left:4.5px solid var(--subject-accent,var(--primary-color));background:#0f172a40;flex-direction:column;gap:.85rem;min-height:200px;padding:1.5rem 1.25rem;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex}.home-dashboard .test-card:hover{border-color:var(--subject-accent,var(--primary-color));transform:translateY(-3px);box-shadow:0 10px 20px -10px #0006}.home-dashboard .test-card.resume-card{border-left-color:#10b981}.home-dashboard .test-card.new-card{border-left-color:var(--subject-accent,var(--primary-color))}.home-dashboard .test-card-header{justify-content:space-between;align-items:center;display:flex}.home-dashboard .exam-type-badge{color:var(--text-secondary);border:1.5px solid var(--border-color);text-transform:uppercase;letter-spacing:.02em;background:#0f172a80;border-radius:4px;padding:.25rem .55rem;font-size:.675rem;font-weight:700}.home-dashboard .test-status{text-transform:uppercase;letter-spacing:.05em;font-size:.675rem;font-weight:800}.home-dashboard .test-status.resume{color:#10b981}.home-dashboard .test-status.new{color:var(--subject-accent,var(--primary-color))}.home-dashboard .test-card h3{color:var(--text-primary);margin:0;font-size:1.15rem;font-weight:700;line-height:1.3}.home-dashboard .test-meta{color:var(--text-secondary);align-items:center;gap:.5rem;margin-top:auto;font-size:.8rem;display:flex}.home-dashboard .test-card-footer{width:100%;margin-top:.5rem;padding-top:0}.home-dashboard .resume-btn,.home-dashboard .start-btn{border-radius:var(--radius-md);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;width:100%;padding:.7rem 1.15rem;font-size:.875rem;font-weight:700;transition:all .2s;display:flex}.home-dashboard .resume-btn{color:#0f172a;background:#10b981}.home-dashboard .resume-btn:hover{background:#059669;box-shadow:0 4px 12px #10b98133}.home-dashboard .start-btn{color:var(--subject-accent,var(--primary-color));border-color:var(--subject-accent,var(--primary-color));background:0 0}.home-dashboard .start-btn:hover{background:var(--subject-accent,var(--primary-color));color:#0f172a;box-shadow:0 4px 12px rgba(var(--primary-color-rgb), .15)}.button-arrow{transition:transform .2s}.resume-btn:hover .button-arrow,.start-btn:hover .button-arrow{transform:translate(3px)}.home-dashboard .empty-state{text-align:center;border-radius:var(--radius-lg);border:1px solid var(--border-color);flex-direction:column;justify-content:center;align-items:center;padding:4rem 2rem;display:flex}.home-dashboard .empty-icon{color:var(--text-secondary);opacity:.6;margin-bottom:1.25rem}.home-dashboard .empty-state h3{color:var(--text-primary);margin:0 0 .5rem;font-size:1.25rem;font-weight:700}.home-dashboard .empty-state p{color:var(--text-secondary);max-width:360px;margin:0 0 2rem;font-size:.95rem}.browse-link-btn{background:var(--primary-color);color:#fff;border-radius:var(--radius-md);border:none;padding:.75rem 1.5rem;font-size:.9rem;font-weight:700;text-decoration:none;transition:all .2s}.browse-link-btn:hover{background:var(--primary-hover);transform:scale(1.02)}.discover-section{border-top:1px solid var(--border-color);margin-top:1rem;padding-top:2rem}.discover-section h2{color:var(--text-primary);margin-bottom:.5rem;font-size:1.25rem;font-weight:700}@media (width<=1024px){.dashboard-layout{grid-template-columns:1fr}.dashboard-sidebar{width:100%;position:static}}@media (width<=768px){.home-dashboard{padding:1.5rem 1rem}.dashboard-welcome-banner{flex-direction:column;align-items:flex-start;gap:1.5rem;padding:1.5rem}.banner-stats{justify-content:flex-start;width:100%}}.browse-page{width:100%;max-width:1280px;min-height:calc(100vh - 60px);margin:0 auto;padding:2rem 2.5rem;position:relative}.glow-effect{z-index:0;pointer-events:none;background:radial-gradient(circle,#3b82f614 0%,#3b82f600 70%);width:500px;height:500px;position:absolute;top:-150px;right:10%}.browse-loading{height:50vh;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:1rem;font-size:1.25rem;display:flex}.loading-spinner{border:3px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;width:40px;height:40px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.browse-header{z-index:1;margin-bottom:2.5rem;position:relative}.header-badge{color:var(--primary-color);border-radius:var(--radius-lg);background:#3b82f61a;border:1px solid #3b82f626;align-items:center;gap:.5rem;margin-bottom:.75rem;padding:.35rem .85rem;font-size:.8rem;font-weight:600;display:inline-flex}.browse-header h1{color:var(--text-primary);letter-spacing:-.025em;background:linear-gradient(135deg, var(--text-primary) 50%, var(--text-secondary) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin:0 0 .5rem;font-size:2.75rem;font-weight:800}.browse-header p{color:var(--text-secondary);max-width:600px;margin:0;font-size:1.15rem}.directory-toolbar{border-radius:var(--radius-lg);z-index:2;justify-content:space-between;align-items:center;gap:1.5rem;margin-bottom:3rem;padding:1.25rem;display:flex;position:relative}.toolbar-search{flex:1;align-items:center;max-width:480px;display:flex;position:relative}.toolbar-search .search-icon{color:var(--text-secondary);pointer-events:none;position:absolute;left:1rem}.toolbar-search input{border:1px solid var(--border-color);border-radius:var(--radius-md);width:100%;color:var(--text-primary);background:#0f172a33;outline:none;padding:.75rem 1rem .75rem 2.75rem;font-size:.95rem;transition:all .2s}.toolbar-search input:focus{border-color:var(--primary-color);background:#0f172a66;box-shadow:0 0 0 3px #3b82f626}.clear-search-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:.25rem;font-size:1.25rem;display:flex;position:absolute;right:.75rem}.clear-search-btn:hover{color:var(--text-primary)}.toolbar-filters{align-items:center;gap:1rem;display:flex}.filter-label{color:var(--text-secondary);align-items:center;gap:.5rem;font-size:.9rem;font-weight:500;display:flex}.filter-tabs{border-radius:var(--radius-md);border:1px solid var(--border-color);background:#0f172a4d;padding:.25rem;display:flex}.filter-tab-btn{color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;padding:.5rem 1.25rem;font-size:.9rem;font-weight:600;transition:all .2s}.filter-tab-btn:hover{color:var(--text-primary)}.filter-tab-btn.active{background:var(--primary-color);color:#fff;box-shadow:var(--shadow-sm)}.courses-list-container{z-index:1;flex-direction:column;gap:4rem;display:flex;position:relative}.course-section-wrapper{flex-direction:column;gap:2rem;display:flex}.course-section-header{border-bottom:1px solid var(--border-color);align-items:center;gap:.75rem;padding-bottom:.75rem;display:flex}.course-icon{color:var(--primary-color)}.course-section-title{color:var(--text-primary);letter-spacing:-.01em;margin:0;font-size:1.5rem;font-weight:700}.course-badge{color:var(--text-secondary);background:#94a3b81a;border-radius:20px;padding:.25rem .65rem;font-size:.8rem;font-weight:600}.groups-container{flex-direction:column;gap:2.5rem;display:flex}.group-column{flex-direction:column;gap:1.25rem;display:flex}.group-heading{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;align-items:center;gap:.5rem;margin:0;font-size:1.05rem;font-weight:700;display:flex}.indicator-dot{border-radius:50%;width:8px;height:8px;display:inline-block}.indicator-dot.g1{background-color:var(--primary-color)}.indicator-dot.g2{background-color:#f97316}.subject-card{border-radius:var(--radius-lg);border:1px solid var(--border-color);background:#1e293b66;flex-direction:column;height:100%;min-height:280px;padding:2rem 1.75rem;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.subject-card:hover{transform:translateY(-4px);box-shadow:0 12px 30px -10px #00000080}.theme-dt{--accent:#f97316}.theme-idt{--accent:#10b981}.theme-fr{--accent:#8b5cf6}.theme-audit{--accent:#ec4899}.theme-afm{--accent:#eab308}.theme-accounting{--accent:#3b82f6}.theme-default{--accent:#64748b}.subject-card:hover{border-color:var(--accent);box-shadow:0 10px 25px -10px rgba(var(--primary-color-rgb), .1), 0 0 15px -3px rgba(var(--accent-rgb,100, 116, 139), .15)}.subject-card.theme-dt:hover{box-shadow:0 12px 30px -10px #f9731626}.subject-card.theme-idt:hover{box-shadow:0 12px 30px -10px #10b98126}.subject-card.theme-fr:hover{box-shadow:0 12px 30px -10px #8b5cf626}.subject-card.theme-audit:hover{box-shadow:0 12px 30px -10px #ec489926}.subject-card.theme-afm:hover{box-shadow:0 12px 30px -10px #eab30826}.subject-card.theme-accounting:hover{box-shadow:0 12px 30px -10px #3b82f626}.card-subscribe-action-btn{border-radius:var(--radius-md);width:100%;color:var(--text-secondary);border:1px solid var(--border-color);cursor:pointer;background:#0f172a33;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.25rem;font-size:.875rem;font-weight:600;transition:all .2s;display:flex}.card-subscribe-action-btn:hover{border-color:var(--accent);color:var(--accent);background:#0f172a66}.card-subscribe-action-btn.subscribed{color:#10b981;background:#10b9810d;border-color:#10b9814d}.card-subscribe-action-btn.subscribed:hover{color:#ef4444;background:#ef44441a;border-color:#ef444466}.subject-icon-wrapper{margin-bottom:1.5rem}.subject-avatar{border-radius:var(--radius-md);border:1.5px solid var(--accent);width:48px;height:48px;color:var(--accent);box-shadow:0 0 12px rgba(var(--accent-rgb,100, 116, 139), .1);letter-spacing:-.02em;background:linear-gradient(135deg,#1e293bcc 0%,#0f172ae6 100%);justify-content:center;align-items:center;font-size:1.1rem;font-weight:800;display:flex}.subject-info-container{flex-direction:column;flex-grow:1;gap:.5rem;margin-bottom:1.5rem;display:flex}.card-badge-row{flex-wrap:wrap;gap:.5rem;display:flex}.badge-tag{text-transform:uppercase;letter-spacing:.02em;border-radius:4px;padding:.2rem .55rem;font-size:.725rem;font-weight:700}.group-badge{color:var(--text-secondary);background:#94a3b81a;border:1px solid #94a3b826}.subscribed-badge{color:#10b981;background:#10b9811a;border:1px solid #10b98126}.subject-card-title{color:var(--text-primary);margin:.25rem 0 0;font-size:1.2rem;font-weight:700;line-height:1.35}.subject-card-desc{color:var(--text-secondary);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:.875rem;line-height:1.5;display:-webkit-box;overflow:hidden}.subject-card-footer{flex-direction:column;gap:.75rem;width:100%;margin-top:auto;display:flex}.browse-subject-action-btn{border-radius:var(--radius-md);width:100%;color:var(--accent);border:1.5px solid var(--accent);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:.5rem;padding:.85rem 1.25rem;font-size:.925rem;font-weight:700;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.browse-subject-action-btn:hover{background:var(--accent);color:#0f172a;box-shadow:0 4px 15px -3px rgba(var(--accent-rgb,59, 130, 246), .3)}.slide-arrow{transition:transform .2s}.browse-subject-action-btn:hover .slide-arrow{transform:translate(4px)}.empty-results{text-align:center;border-radius:var(--radius-lg);border:1px solid var(--border-color);flex-direction:column;justify-content:center;align-items:center;max-width:600px;margin:2rem auto;padding:4rem 2rem;display:flex}.empty-icon{color:var(--text-secondary);opacity:.6;margin-bottom:1.5rem}.empty-results h3{color:var(--text-primary);margin:0 0 .5rem;font-size:1.35rem;font-weight:700}.empty-results p{color:var(--text-secondary);max-width:400px;margin:0 0 2rem;font-size:.95rem;line-height:1.5}.reset-btn{background:var(--primary-color);color:#fff;border-radius:var(--radius-md);cursor:pointer;border:none;padding:.75rem 1.5rem;font-weight:600;transition:all .2s}.reset-btn:hover{background:var(--primary-hover);transform:scale(1.02)}@media (width<=900px){.directory-toolbar{flex-direction:column;align-items:stretch}.toolbar-search{max-width:100%}.toolbar-filters{justify-content:space-between}}@media (width<=640px){.browse-page{padding:1.5rem 1rem}.browse-header h1{font-size:2.25rem}.toolbar-filters{flex-direction:column;align-items:flex-start;gap:.5rem}.filter-tabs{width:100%;overflow-x:auto}.filter-tab-btn{text-align:center;flex:1;padding:.5rem .75rem}}.cascading-selector{flex-direction:column;gap:1.25rem;display:flex}.cascading-selector__grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}@media (width<=768px){.cascading-selector__grid{grid-template-columns:1fr}}.cascading-level{border-radius:var(--radius-md);background:var(--surface-color);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);transition:opacity .3s,box-shadow .3s,border-color .3s;position:relative;overflow:hidden}.cascading-level:hover:not(.cascading-level--disabled){box-shadow:var(--shadow-md);border-color:var(--primary-color)}.cascading-level--disabled{opacity:.55;pointer-events:none}.cascading-level__header{background:linear-gradient(135deg, color-mix(in srgb, var(--primary-color) 12%, var(--surface-color)), color-mix(in srgb, var(--primary-color) 4%, var(--surface-color)));border-bottom:1px solid var(--border-color);align-items:center;gap:.5rem;padding:.5rem .875rem;display:flex}.cascading-level__label{letter-spacing:.06em;text-transform:uppercase;color:var(--primary-color);font-size:.7rem;font-weight:700}.cascading-level__step{color:var(--surface-color);background:var(--primary-color);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:1.25rem;height:1.25rem;font-size:.6rem;font-weight:600;display:flex}.cascading-level__body{padding:.75rem .875rem}.cascading-level__select-wrapper{position:relative}.cascading-level__select{appearance:none;width:100%;font-size:.875rem;font-family:var(--font-sans);color:var(--text-primary);background-color:var(--bg-color);border:1.5px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;outline:none;padding:.5rem 2rem .5rem .75rem;transition:border-color .2s,box-shadow .2s}.cascading-level__select:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary-color) 20%, transparent)}.cascading-level__select:disabled{cursor:not-allowed;color:var(--text-secondary)}.cascading-level__select-wrapper:after{content:"";border-left:4px solid #0000;border-right:4px solid #0000;border-top:5px solid var(--text-secondary);pointer-events:none;width:0;height:0;position:absolute;top:50%;right:.75rem;transform:translateY(-50%)}.cascading-level__add-btn{color:var(--primary-color);font-size:.75rem;font-weight:500;font-family:var(--font-sans);cursor:pointer;background:0 0;border:none;align-items:center;gap:.25rem;margin-top:.5rem;padding:0;transition:color .2s;display:inline-flex;position:relative}.cascading-level__add-btn:after{content:"";background:var(--primary-color);width:0;height:1px;transition:width .25s;position:absolute;bottom:-1px;left:0}.cascading-level__add-btn:hover:after{width:100%}.cascading-level__add-btn:hover{color:var(--primary-hover)}.cascading-level__add-form{animation:.25s forwards cascadingSlideDown;overflow:hidden}@keyframes cascadingSlideDown{0%{opacity:0;max-height:0;transform:translateY(-6px)}to{opacity:1;max-height:120px;transform:translateY(0)}}.cascading-level__add-form-inner{align-items:center;gap:.5rem;margin-top:.5rem;display:flex}.cascading-level__add-input{font-size:.8125rem;font-family:var(--font-sans);color:var(--text-primary);background-color:var(--bg-color);border:1.5px solid var(--border-color);border-radius:var(--radius-sm);outline:none;flex:1;padding:.4rem .625rem;transition:border-color .2s,box-shadow .2s}.cascading-level__add-input:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary-color) 20%, transparent)}.cascading-level__save-btn,.cascading-level__cancel-btn{font-size:.75rem;font-weight:600;font-family:var(--font-sans);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;border:none;padding:.35rem .625rem;transition:background-color .2s,transform .1s}.cascading-level__save-btn{background:var(--primary-color);color:#fff}.cascading-level__save-btn:hover{background:var(--primary-hover)}.cascading-level__save-btn:active{transform:scale(.96)}.cascading-level__cancel-btn{color:var(--text-secondary);border:1px solid var(--border-color);background:0 0}.cascading-level__cancel-btn:hover{background:var(--bg-color);color:var(--text-primary)}.cascading-selector__path{background:var(--bg-color);border:1px solid var(--border-color);border-radius:var(--radius-md);flex-wrap:wrap;align-items:center;gap:.375rem;min-height:2.75rem;padding:.75rem 1rem;display:flex}.cascading-selector__path-empty{color:var(--text-secondary);font-size:.8125rem;font-style:italic}.cascading-selector__path-pill{color:var(--primary-color);background:color-mix(in srgb, var(--primary-color) 10%, transparent);white-space:nowrap;border-radius:999px;align-items:center;padding:.25rem .625rem;font-size:.8125rem;font-weight:500;animation:.3s forwards pillFadeIn;display:inline-flex}@keyframes pillFadeIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.cascading-selector__path-sep{color:var(--text-secondary);-webkit-user-select:none;user-select:none;font-size:.75rem}.tag-input-wrapper{width:100%;position:relative}.tag-input-container{border:1px solid var(--border-color);border-radius:var(--radius-md);background-color:var(--surface-color);cursor:text;flex-wrap:wrap;align-items:center;gap:.375rem;padding:.5rem .75rem;transition:border-color .2s,box-shadow .2s;display:flex}.tag-input-container:focus-within{border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(var(--primary-color-rgb), .1)}.tag-input-field{min-width:80px;color:var(--text-primary);background:0 0;border:none;outline:none;flex:80px;padding:.25rem 0;font-size:.875rem}.tag-input-field::placeholder{color:var(--text-secondary)}.tag-chip{color:var(--primary-color);background:rgba(var(--primary-color-rgb), .1);border:1px solid rgba(var(--primary-color-rgb), .3);border-radius:var(--radius-md);white-space:nowrap;-webkit-user-select:none;user-select:none;align-items:center;gap:.25rem;padding:.2rem .5rem;font-size:.8rem;line-height:1.4;display:inline-flex}.tag-chip-remove{color:var(--primary-color);cursor:pointer;opacity:.6;background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:1rem;line-height:1;transition:opacity .15s;display:inline-flex}.tag-chip-remove:hover{opacity:1}.tag-suggestions{background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--radius-md);max-height:180px;box-shadow:var(--shadow-md);z-index:20;margin:0;padding:.25rem 0;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.tag-suggestion-item{color:var(--text-primary);cursor:pointer;padding:.5rem .75rem;font-size:.85rem;transition:background-color .15s}.tag-suggestion-item:hover{background-color:var(--surface-hover)}.card{background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:1.5rem;transition:box-shadow .3s}.card:hover{box-shadow:var(--shadow-md)}.input-container{flex-direction:column;margin-bottom:1rem;display:flex}.input-full{width:100%}.input-label{color:var(--text-primary);margin-bottom:.5rem;font-size:.875rem;font-weight:500}.input-field{border:1px solid var(--border-color);border-radius:var(--radius-md);background-color:var(--surface-color);color:var(--text-primary);outline:none;padding:.75rem 1rem;font-family:inherit;font-size:1rem;transition:border-color .2s,box-shadow .2s}.input-field:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #3b82f61a}.input-error{border-color:var(--error-color)}.input-field:disabled{background-color:var(--bg-color);cursor:not-allowed;opacity:.7}.input-error-msg{color:var(--error-color);margin-top:.25rem;font-size:.75rem}textarea.input-field{resize:vertical;min-height:100px}.btn{border-radius:var(--radius-md);cursor:pointer;border:none;justify-content:center;align-items:center;font-weight:500;transition:all .2s;display:inline-flex}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background-color:var(--primary-color);color:var(--btn-primary-text,white)}.btn-primary:hover:not(:disabled){background-color:var(--primary-hover);color:var(--btn-primary-text,white)}.btn-secondary{background-color:var(--surface-color);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover:not(:disabled){background-color:var(--border-color)}.btn-success{background-color:var(--success-color);color:#fff}.btn-sm{padding:.5rem .75rem;font-size:.875rem}.btn-md{padding:.75rem 1.5rem;font-size:1rem}.btn-lg{padding:1rem 2rem;font-size:1.125rem}.btn-full{width:100%}.spreadsheet-cell{border:1px solid var(--border-color);background-color:var(--surface-color);-webkit-user-select:none;user-select:none;vertical-align:top;min-width:80px;height:auto;min-height:30px;padding:0;transition:box-shadow .1s;position:relative}.spreadsheet-cell:focus,.cell-active{box-shadow:inset 0 0 0 2px var(--primary-color);z-index:10;outline:none}.spreadsheet-cell[draggable=true]{cursor:grab}.spreadsheet-cell[draggable=true]:active{cursor:grabbing}.cell-drag-wrapper[draggable=true]{cursor:grab}.cell-drag-wrapper[draggable=true]:active{cursor:grabbing}.cell-content{word-break:break-word;white-space:pre-wrap;box-sizing:border-box;padding:6px 8px;line-height:1.4;display:block;overflow:visible}.cell-number .cell-content{text-align:right;color:#2196f3;font-weight:700}.cell-error .cell-content{color:var(--error-color);font-weight:700}.cell-input{width:100%;height:100%;font-family:inherit;font-size:inherit;background-color:var(--surface-color);color:var(--text-primary);box-shadow:inset 0 0 0 2px var(--primary-color);border:none;outline:none;padding:4px 8px}.cell-editing-formula .cell-input{box-shadow:inset 0 0 0 2px var(--success-color)}.cell-drag-over{background-color:#4caf501a!important;border:2px dashed #4caf50!important}.cell-textarea{width:100%;height:100%;min-height:28px;font-family:inherit;font-size:inherit;background-color:var(--surface-color);color:var(--text-primary);box-shadow:inset 0 0 0 2px var(--primary-color);resize:none;box-sizing:border-box;border:none;outline:none;padding:6px 8px;line-height:1.4;display:block;overflow:hidden}.cell-editing-formula .cell-textarea{box-shadow:inset 0 0 0 2px var(--success-color)}.col-resize-handle{cursor:col-resize;z-index:20;background-color:#0000;width:6px;height:100%;position:absolute;top:0;right:-3px}.col-resize-handle:hover{background-color:var(--primary-color)}@keyframes ctx-menu-pop{0%{opacity:0;transform:scale(.92)translateY(-4px)}to{opacity:1;transform:scale(1)translateY(0)}}.cell-context-menu{z-index:99999;background:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--radius-md);-webkit-user-select:none;user-select:none;min-width:180px;padding:.35rem;animation:.12s both ctx-menu-pop;position:fixed;box-shadow:0 8px 24px #00000029,0 2px 8px #0000001a}.cell-context-item{border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;white-space:nowrap;align-items:center;gap:.55rem;padding:.45rem .75rem;font-size:.82rem;font-weight:500;transition:background-color .12s,color .12s;display:flex}.cell-context-item:hover{color:#dc2626;background-color:#ef44441a}.cell-context-item:active{background-color:#ef444433}.context-item-icon{opacity:.7;flex-shrink:0;font-size:.95rem}@media (prefers-color-scheme:dark){.cell-context-menu{box-shadow:0 8px 24px #0006,0 2px 8px #0000004d}.cell-context-item:hover{color:#f87171;background-color:#ef44442e}.cell-context-item--neutral:hover{color:#60a5fa!important;background-color:#3b82f62e!important}}.cell-selected{box-shadow:inset 0 0 0 1px #3b82f659;background-color:#3b82f61f!important}.cell-context-separator{background-color:var(--border-color);height:1px;margin:.25rem .5rem}.cell-context-item--neutral:hover{color:var(--primary-color)!important;background-color:#3b82f61a!important}.cell-context-item--neutral:active{background-color:#3b82f633!important}.cell-context-item--neutral.ctx-active{color:var(--primary-color);font-weight:600}.ctx-fmt-icon{text-align:center;width:1rem;font-family:serif;font-size:1rem}.cell-context-section-title{text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);-webkit-user-select:none;user-select:none;padding:.25rem .75rem;font-size:.7rem;font-weight:600}.cell-has-explanation:after{content:"";border-style:solid;border-width:0 8px 8px 0;border-color:transparent var(--warning-color,#f59e0b) transparent transparent;z-index:5;width:0;height:0;position:absolute;top:0;right:0}.cell-explanation-tooltip{background:var(--surface-color);color:var(--text-primary);border:1px solid var(--border-color);border-left:3px solid var(--warning-color,#f59e0b);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);white-space:pre-wrap;pointer-events:none;text-align:left;box-sizing:border-box;width:max-content;min-width:240px;max-width:450px;padding:.5rem .75rem;font-size:.8rem;font-weight:400;line-height:1.4;animation:.15s both tooltip-fade-in}.cell-explanation-tooltip-header{text-transform:uppercase;color:var(--text-secondary);margin-bottom:.25rem;font-size:.7rem;font-weight:600}.cell-explanation-tooltip-body{word-break:break-word}.cell-explain-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:999999;background-color:#0006;justify-content:center;align-items:center;animation:.2s both modal-fade-in;display:flex;position:fixed;inset:0}.cell-explain-modal{background:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);flex-direction:column;gap:1rem;width:90%;max-width:480px;padding:1.5rem;animation:.2s cubic-bezier(.16,1,.3,1) both modal-slide-up;display:flex}.cell-explain-modal-header{justify-content:space-between;align-items:center;display:flex}.cell-explain-modal-header h3{color:var(--text-primary);margin:0;font-size:1.2rem;font-weight:600}.cell-explain-modal-close{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;font-size:1.5rem;line-height:1}.cell-explain-modal-subtitle{color:var(--text-secondary);font-size:.82rem}.cell-explain-textarea{border:1px solid var(--border-color);border-radius:var(--radius-md);background-color:var(--bg-color);width:100%;color:var(--text-primary);resize:vertical;box-sizing:border-box;outline:none;padding:.75rem;font-family:inherit;font-size:.9rem;box-shadow:inset 0 1px 2px #0000000d}.cell-explain-textarea:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px #3b82f633,inset 0 1px 2px #0000000d}.cell-explain-modal-footer{justify-content:flex-end;gap:.5rem;display:flex}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-slide-up{0%{transform:translateY(10px)scale(.98)}to{transform:translateY(0)scale(1)}}.spreadsheet-container{border:1px solid var(--border-color);border-radius:var(--radius-sm);background-color:var(--surface-color);max-width:100%;margin-bottom:1rem;display:block;overflow-x:auto}.spreadsheet-body-wrapper{vertical-align:top;flex-direction:column;min-width:100%;display:inline-flex}.spreadsheet-table-row{flex-direction:row;display:flex}.spreadsheet-table{border-collapse:collapse;width:max-content}.spreadsheet-table th{background-color:var(--bg-color);border:1px solid var(--border-color);color:var(--text-secondary);text-align:center;-webkit-user-select:none;user-select:none;padding:4px 8px;font-size:.75rem;font-weight:500}.row-header-corner{min-width:40px}.row-header{background-color:var(--bg-color);border-right:1px solid var(--border-color);width:40px}.add-row-btn{background-color:var(--bg-color);border:1px solid var(--border-color);cursor:pointer;width:100%;height:24px;color:var(--text-secondary);border-top:none;justify-content:center;align-items:center;font-size:.75rem;transition:background-color .2s;display:flex}.add-row-btn:hover{color:var(--primary-color);background-color:#3b82f61a}.add-col-btn{background-color:var(--bg-color);border:1px solid var(--border-color);cursor:pointer;width:24px;color:var(--text-secondary);border-left:none;flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;transition:background-color .2s;display:flex}.add-col-btn:hover{color:var(--primary-color);background-color:#3b82f61a}.rich-text-container{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-color);flex-direction:column;display:flex;position:relative;overflow:visible}.rich-text-container.read-only{background:0 0;border:none}.toolbar{border-bottom:1px solid var(--border-color);border-top-left-radius:var(--radius-md);border-top-right-radius:var(--radius-md);background-color:#00000005;padding:.5rem}.editor-content-wrapper{cursor:text;min-height:150px;padding:1rem}.rich-text-container.read-only .editor-content-wrapper{cursor:default;padding:0}.template-dropdown{background:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:1000;flex-direction:column;min-width:256px;max-height:380px;margin-top:.5rem;padding:.75rem;display:flex;position:absolute;top:100%;left:0;overflow-y:auto}.template-dropdown::-webkit-scrollbar{width:6px}.template-dropdown::-webkit-scrollbar-track{background:0 0}.template-dropdown::-webkit-scrollbar-thumb{background-color:var(--border-color);border-radius:var(--radius-sm)}.template-dropdown::-webkit-scrollbar-thumb:hover{background-color:var(--text-secondary)}.grid-picker-container{flex-direction:column;align-items:center;display:flex}.grid-picker-title{color:var(--text-secondary);text-align:center;width:100%;margin-bottom:.5rem;font-size:.75rem;font-weight:600}.grid-picker-grid{grid-template-rows:repeat(8,18px);grid-template-columns:repeat(10,18px);justify-content:center;gap:3px;display:grid}.grid-picker-cell{border:1px solid var(--border-color);border-radius:var(--radius-sm);background-color:var(--bg-color);cursor:pointer;width:18px;height:18px;transition:all .1s}.grid-picker-cell.active{background-color:rgba(var(--primary-color-rgb), .3);border-color:var(--primary-color)}.grid-picker-cell:hover{box-shadow:0 0 4px rgba(var(--primary-color-rgb), .5);transform:scale(1.1)}.dropdown-divider{background-color:var(--border-color);height:1px;margin:.75rem 0}.templates-dropdown-list{flex-direction:column;gap:.75rem;max-height:200px;display:flex;overflow-y:auto}.templates-dropdown-list::-webkit-scrollbar{width:5px}.templates-dropdown-list::-webkit-scrollbar-track{background:0 0}.templates-dropdown-list::-webkit-scrollbar-thumb{background-color:var(--border-color);border-radius:var(--radius-sm)}.templates-dropdown-list::-webkit-scrollbar-thumb:hover{background-color:var(--text-secondary)}.template-dropdown-section{flex-direction:column;gap:.25rem;display:flex}.dropdown-section-title{text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);margin-bottom:.15rem;padding:0 .25rem;font-size:.65rem;font-weight:700}.template-dropdown-item{border-radius:var(--radius-sm);cursor:pointer;background-color:#0000;justify-content:space-between;align-items:center;padding:.4rem .5rem;font-size:.8rem;transition:background-color .2s;display:flex}.template-dropdown-item:hover{background-color:var(--surface-hover)}.template-dropdown-item span:first-child{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;max-width:150px;font-weight:550;overflow:hidden}.template-item-size{color:var(--text-secondary);background-color:var(--bg-color);border:1px solid var(--border-color);border-radius:3px;padding:.05rem .25rem;font-size:.65rem}.no-templates-notice{color:var(--text-secondary);text-align:center;padding:.5rem;font-size:.8rem}.keyboard-toggle-btn{background:var(--surface-color);border:1px solid var(--border-color);cursor:pointer;opacity:.5;z-index:100;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;transition:opacity .2s,background-color .2s;display:flex;position:absolute;bottom:1rem;right:1rem;box-shadow:0 2px 8px #0000001a}.keyboard-toggle-btn:hover,.keyboard-toggle-btn.active{opacity:1}.keyboard-toggle-btn.active{background:var(--primary-color)}.ProseMirror{outline:none;min-height:100px}.ProseMirror>*+*{margin-top:.75em}.ProseMirror table{border-collapse:collapse;table-layout:fixed;width:100%;margin:0;overflow:hidden}.ProseMirror td,.ProseMirror th{border:1px solid var(--border-color);vertical-align:top;box-sizing:border-box;min-width:1em;padding:3px 5px;position:relative}.ProseMirror th{text-align:left;background-color:#00000005;font-weight:700}.ProseMirror .column-resize-handle{background-color:var(--primary-color);pointer-events:none;width:4px;position:absolute;top:0;bottom:-2px;right:-2px}.ProseMirror p.is-editor-empty:first-child:before{color:#adb5bd;content:attr(data-placeholder);float:left;pointer-events:none;height:0}@keyframes insert-btn-slide-in{0%{opacity:0;transform:translateY(-4px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.insert-context-btn{border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;border:1px solid #0000;align-items:center;gap:.2rem;padding:.25rem .6rem;font-size:.78rem;font-weight:600;transition:background-color .15s,border-color .15s,transform .1s;animation:.18s both insert-btn-slide-in;display:inline-flex}@media (prefers-color-scheme:dark){.insert-row-btn{color:#34d399;background-color:#10b98126;border-color:#10b98159}.insert-row-btn:hover{background-color:#10b98147}.insert-col-btn{color:#60a5fa;background-color:#3b82f626;border-color:#3b82f659}.insert-col-btn:hover{background-color:#3b82f647}}.border-dropdown{background:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:1000;flex-direction:column;gap:.25rem;min-width:160px;margin-top:.5rem;padding:.5rem;display:flex;position:absolute;top:100%;left:0}.border-dropdown-item{border-radius:var(--radius-sm);cursor:pointer;color:var(--text-primary);background-color:#0000;align-items:center;gap:.5rem;padding:.4rem .5rem;font-size:.8rem;transition:background-color .2s;display:flex}.border-dropdown-item:hover{background-color:var(--surface-hover)}.border-dropdown-item.active{color:var(--primary-color);font-weight:600}.framing-page-root{background-color:var(--bg-color);flex-direction:column;height:100%;display:flex;position:relative;overflow:hidden}.framing-page-root .glow-effect{z-index:0;pointer-events:none;background:radial-gradient(circle,#3b82f60d 0%,#3b82f600 70%);width:600px;height:600px;position:absolute;top:-120px;right:15%}.framing-workspace-body{z-index:1;flex:1;display:flex;position:relative;overflow:hidden}.framing-sidebar{-webkit-backdrop-filter:blur(16px);border-right:1px solid var(--border-color);background:#1e293b73;flex-direction:column;flex-shrink:0;width:320px;height:100%;transition:width .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:visible}.framing-sidebar.collapsed{width:48px}.framing-sidebar.collapsed .sidebar-toggle-bar{overflow:hidden;background:0 0!important;border-bottom:none!important;height:0!important;padding:0!important}.sidebar-breadcrumbs-container{border-bottom:1px solid var(--border-color);margin-bottom:.5rem;padding:1rem}.sidebar-header-title{color:var(--text-primary);letter-spacing:-.01em;font-size:1.15rem;font-weight:800}.sidebar-toggle-bar{border-bottom:1px solid var(--border-color);flex-shrink:0;justify-content:space-between;align-items:center;height:52px;padding:.75rem 1rem;display:flex}.sidebar-toggle-title{align-items:center;gap:.5rem;display:flex}.sidebar-toggle-title h3{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;margin:0;font-size:.8rem;font-weight:700}.settings-icon{color:var(--text-secondary)}.sidebar-scrollable-content{flex-direction:column;flex:1;gap:1.5rem;padding:1.25rem;display:flex;overflow-y:auto}.sidebar-group{flex-direction:column;gap:.5rem;display:flex}.type-toggle-vertical{flex-direction:column;gap:.55rem;display:flex}.type-toggle-vertical button{text-align:center;letter-spacing:.01em;font-size:.875rem;font-weight:700;border-radius:var(--radius-md)!important;padding:.75rem 1rem!important;transition:all .25s cubic-bezier(.4,0,.2,1)!important}.type-toggle-vertical button.btn-primary{background:linear-gradient(135deg, var(--primary-color) 0%, var(--primary-hover) 100%)!important;color:#fff!important;border:1px solid #ffffff1a!important;box-shadow:0 0 12px #3b82f64d!important}.type-toggle-vertical button.btn-secondary{border:1px solid var(--border-color)!important;color:var(--text-secondary)!important;background:#0f172a33!important}.type-toggle-vertical button.btn-secondary:hover{color:var(--text-primary)!important;background:#0f172a66!important;border-color:#3b82f64d!important}.framing-main-content{background-color:var(--bg-color);flex-direction:column;flex:1;height:100%;padding:.75rem 1rem;display:flex;overflow:hidden}.framing-mcq-container{width:100%;max-width:100%;height:100%;padding-bottom:2rem;overflow-y:auto}.framing-split-layout{grid-template-columns:1fr 1fr;gap:1rem;height:100%;display:grid;overflow:hidden}.framing-pane{flex-direction:column;height:100%;display:flex;overflow:hidden}.framing-mcq-container .card,.framing-pane .pane-card{-webkit-backdrop-filter:blur(14px);border-radius:var(--radius-lg);flex-direction:column;flex:1;gap:1rem;height:100%;margin-bottom:0;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;overflow-y:auto;box-shadow:0 4px 15px #00000026;border:1px solid var(--border-color)!important;background:#1e293b4d!important;padding:1.25rem 0!important}.framing-mcq-container .card:hover,.framing-pane .pane-card:hover{box-shadow:0 12px 30px -10px #0006,0 0 20px -3px #3b82f61a;border-color:#3b82f640!important}.framing-mcq-container .card .input-field,.framing-pane .pane-card .input-field{border:1px solid var(--border-color)!important;border-radius:var(--radius-md)!important;width:100%!important}.framing-mcq-container .card .rich-text-container,.framing-pane .pane-card .rich-text-container{border:1px solid var(--border-color)!important;border-radius:var(--radius-md)!important;width:calc(100% - 2.5rem)!important;margin-left:1.25rem!important;margin-right:1.25rem!important}.framing-mcq-container .card .input-container,.framing-pane .pane-card .input-container{margin-left:1.25rem;margin-right:1.25rem}.framing-page-root .input-label,.framing-page-root .alert,.framing-page-root h3,.framing-page-root p.text-secondary,.framing-page-root .form-actions-container{padding-left:1.25rem!important;padding-right:1.25rem!important}.form-group{flex-direction:column;margin-bottom:.75rem;display:flex}.input-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem;font-size:.75rem;font-weight:700;display:block}.options-section{border:1px solid var(--border-color);background-color:#0f172a33;margin-top:.5rem;margin-bottom:1rem;border-left:none!important;border-right:none!important;border-radius:0!important;padding:1.25rem 0!important}.options-section>.input-label,.options-section>div:first-child{padding-left:1.25rem;padding-right:1.25rem}.options-section>p.text-secondary{padding-left:1.25rem!important;padding-right:1.25rem!important}.option-row{align-items:flex-start;gap:1rem;margin-bottom:.75rem;padding-left:1.25rem;padding-right:1.25rem;display:flex}.option-row:last-child{margin-bottom:0}.radio-btn{width:1.25rem;height:1.25rem;accent-color:var(--primary-color);cursor:pointer;margin-top:1rem}.add-sub-btn{align-items:center;gap:.35rem;font-size:.75rem;font-weight:700;display:inline-flex;color:var(--primary-color)!important;border-radius:var(--radius-sm)!important;background:#3b82f61a!important;border:1px solid #3b82f633!important;padding:.4rem .75rem!important;transition:all .2s!important}.add-sub-btn:hover{background:var(--primary-color)!important;color:#fff!important;box-shadow:0 0 10px #3b82f640!important}.sub-question-item{border:1px solid var(--border-color);background:#0f172a40;flex-direction:column;gap:1rem;margin-top:1rem;margin-bottom:1rem;transition:all .25s;display:flex;border-left:3px solid var(--primary-color)!important;border-right:none!important;border-radius:0!important;margin-left:0!important;margin-right:0!important;padding:1.25rem!important}.sub-question-item:hover{background:#0f172a59;border-color:#3b82f640;box-shadow:0 4px 12px #00000026}.sub-question-item.descriptive-sub{flex-direction:row;align-items:flex-start;gap:.75rem}.remove-sub-btn{flex-shrink:0;min-width:32px!important;height:32px!important;color:var(--error-color)!important;border-radius:var(--radius-sm)!important;background:#ef444414!important;border:1px solid #ef444426!important;justify-content:center!important;align-items:center!important;padding:.5rem!important;display:flex!important}.remove-sub-btn:hover{background:var(--error-color)!important;color:#fff!important;box-shadow:0 0 10px #ef444433!important}.alert{border-radius:var(--radius-md);margin-bottom:1.5rem;padding:1rem;font-weight:500}.alert-success{color:var(--success-color);background-color:#10b9811a;border:1px solid #10b98133}.alert-error{color:var(--error-color);background-color:#ef44441a;border:1px solid #ef444433}.framing-card{max-width:100%}.framing-page-root .cascading-level{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-color)!important;background:#1e293b59!important}.framing-page-root .cascading-level:hover:not(.cascading-level--disabled){border-color:#3b82f640!important;box-shadow:0 4px 15px #0003!important}.framing-page-root .cascading-level__header{border-bottom:1px solid var(--border-color)!important;background:linear-gradient(135deg,#3b82f614 0%,#3b82f605 100%)!important}.framing-page-root .cascading-level__select{border:1.5px solid var(--border-color)!important;color:var(--text-primary)!important;background-color:#0f172a4d!important}.framing-page-root .cascading-level__select:focus{border-color:var(--primary-color)!important;box-shadow:0 0 10px #3b82f626!important}.framing-page-root .cascading-selector__path{border:1px solid var(--border-color)!important;background:#0f172a33!important}.framing-page-root .cascading-selector__path-pill{color:var(--primary-color)!important;background:#3b82f61f!important;border:1px solid #3b82f633!important}@media (width<=1200px){.app-layout.no-sidebar .main-content{height:100vh!important;overflow-y:auto!important}.framing-page-root{height:auto;overflow:visible}.framing-workspace-body{flex-direction:column;height:auto;overflow:visible}.framing-sidebar{border-right:none;border-bottom:1px solid var(--border-color);height:auto;width:100%!important}.framing-sidebar.collapsed{height:48px}.framing-main-content{height:auto;padding:1rem .5rem;overflow:visible}.framing-split-layout{grid-template-columns:1fr;height:auto;overflow:visible}.framing-pane{height:auto;margin-bottom:1rem;overflow:visible}.framing-pane .pane-card{height:auto;overflow:visible}}.framing-page-root .input-field,.framing-page-root .ProseMirror,.framing-page-root select,.framing-page-root .ProseMirror td,.framing-page-root .ProseMirror th{font-size:.875rem!important}.my-questions-page .auth-prompt{text-align:center;background:var(--surface-color);border-radius:var(--radius-lg);border:1px solid var(--border-color);padding:3rem}.my-questions-page .auth-prompt h2{margin-bottom:.5rem}.my-questions-page .auth-prompt p{color:var(--text-secondary);margin-bottom:1.5rem}.filter-bar{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.filter-group{align-items:center;gap:.75rem;display:flex}.filter-select{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-color);color:var(--text-primary);cursor:pointer;outline:none;padding:.5rem .75rem;font-size:.875rem;transition:border-color .2s}.filter-select:focus{border-color:var(--primary-color)}.questions-table-container{background:var(--surface-color);border-radius:var(--radius-lg);border:1px solid var(--border-color);width:100%;box-shadow:var(--shadow-md);margin-bottom:2.5rem;overflow-x:auto}.questions-table{border-collapse:collapse;text-align:left;width:100%;min-width:900px}.questions-table th{text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);background:var(--surface-color);border-bottom:2px solid var(--border-color);padding:1rem 1.25rem;font-size:.8rem;font-weight:600}.questions-table td{border-bottom:1px solid var(--border-color);vertical-align:middle;color:var(--text-primary);padding:.85rem 1.25rem;font-size:.9rem}.question-table-row{transition:background-color .2s}.question-table-row:hover{background-color:var(--surface-hover)}.question-table-row:last-child td{border-bottom:none}.index-cell{color:var(--text-secondary);font-weight:500}.title-cell{white-space:nowrap;text-overflow:ellipsis;max-width:320px;overflow:hidden}.question-title-link{color:var(--text-primary);cursor:pointer;font-weight:500;transition:color .15s}.question-title-link:hover{color:var(--primary-color);text-decoration:underline}.classification-cell{white-space:nowrap;text-overflow:ellipsis;max-width:250px;overflow:hidden}.path-text{color:var(--text-secondary);font-size:.825rem}.type-badge{border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.02em;padding:.25rem .6rem;font-size:.75rem;font-weight:600;display:inline-block}.badge-mcq{color:var(--success-color);background-color:#10b9811a}.badge-descriptive{color:var(--primary-color);background-color:#3b82f61a}.marks-badge{color:var(--text-primary);background-color:var(--bg-color);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:.25rem .5rem;font-size:.775rem;font-weight:600;display:inline-block}.tags-container{flex-wrap:wrap;align-items:center;gap:.25rem;display:flex}.table-tag-chip{color:var(--primary-color);background-color:rgba(var(--primary-color-rgb), .08);border:1px solid rgba(var(--primary-color-rgb), .15);border-radius:var(--radius-sm);padding:.15rem .45rem;font-size:.725rem;font-weight:500;display:inline-block}.table-tag-more{color:var(--text-secondary);background-color:var(--bg-color);border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:help;padding:.15rem .4rem;font-size:.725rem;font-weight:500;display:inline-block}.date-cell{color:var(--text-secondary);white-space:nowrap;font-size:.85rem}.actions-cell{text-align:right;justify-content:flex-end;gap:.5rem;display:flex}.action-btn{margin:0}.delete-btn{color:var(--error-color)!important;background-color:#0000!important;border-color:#ef444433!important}.delete-btn:hover{background-color:var(--error-color)!important;border-color:var(--error-color)!important;color:#fff!important}.empty-state,.loading-state{text-align:center;color:var(--text-secondary);padding:3rem}.empty-state h3{color:var(--text-primary);margin-bottom:.5rem}.empty-state p{margin-bottom:1rem}.syllabus-dashboard{max-width:1000px;margin:0 auto}.dashboard-header{border-bottom:1px solid var(--border-color);align-items:center;gap:1rem;margin-bottom:3rem;padding-bottom:1rem;display:flex}.dashboard-header.with-back{flex-direction:column;align-items:flex-start;gap:.5rem}.dashboard-header h2{color:var(--text-primary);margin:0;font-size:2rem}.course-selector{border:1px solid var(--border-color);border-radius:var(--radius-md);background-color:var(--surface-color);color:var(--primary-color);cursor:pointer;outline:none;padding:.5rem 1rem;font-size:1.25rem;font-weight:600}.btn-back{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;align-items:center;padding:0;font-weight:500;transition:color .2s;display:flex}.btn-back:hover{color:var(--primary-color)}.subject-group{margin-bottom:3rem}.group-title{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:1rem;font-size:1.25rem}.subject-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;display:grid}.subject-card{cursor:pointer;flex-direction:column;padding:1.5rem;transition:transform .2s,box-shadow .2s;display:flex;position:relative}.subject-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.subject-title{flex-grow:1;margin-bottom:1.5rem;font-size:1.25rem}.progress-container{margin-bottom:1.5rem}.progress-bar{background-color:var(--border-color);border-radius:3px;height:6px;margin-bottom:.5rem;overflow:hidden}.progress-fill{background-color:var(--success-color);border-radius:3px;height:100%;transition:width .4s}.progress-text{color:var(--text-secondary);justify-content:space-between;font-size:.875rem;font-weight:500;display:flex}.exam-types-container{flex-direction:column;gap:1rem;display:flex}.exam-type-section{background:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden}.exam-type-header{cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:1rem;width:100%;padding:1.25rem 1.5rem;transition:background-color .2s;display:flex}.exam-type-header:hover{background-color:#00000005}.exam-type-header h3{color:var(--text-primary);flex-grow:1;margin:0;font-size:1.125rem}.exam-type-header .chevron{color:var(--text-secondary);width:16px;font-size:.875rem}.exam-type-header .test-count{color:var(--text-secondary);background:var(--border-color);border-radius:999px;padding:.25rem .5rem;font-size:.875rem}.tests-list{border-top:1px solid var(--border-color);background-color:var(--bg-color)}.no-tests{text-align:center;color:var(--text-secondary);padding:1.5rem;font-style:italic}.test-item{border-bottom:1px solid var(--border-color);cursor:pointer;align-items:center;gap:1rem;padding:1rem 1.5rem;transition:background-color .2s;display:flex}.test-item:last-child{border-bottom:none}.test-item:hover{background-color:#3b82f60d}.test-icon{font-size:1.5rem}.test-info{flex-grow:1}.test-info h4{color:var(--text-primary);margin:0;font-size:1rem}.calculator-widget{background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--radius-lg);z-index:1000;touch-action:none;flex-direction:column;display:flex;position:fixed;overflow:hidden;box-shadow:0 10px 25px #0003}.calculator-header{background-color:var(--surface-hover);cursor:grab;border-bottom:1px solid var(--border-color);-webkit-user-select:none;user-select:none;align-items:center;padding:.5rem;display:flex}.calculator-header:active{cursor:grabbing}.drag-handle{color:var(--text-secondary);margin-right:.5rem;padding:0 .25rem;font-size:1.2rem}.header-title{color:var(--text-primary);flex:1;font-size:.9rem;font-weight:600}.header-controls{gap:.25rem;display:flex}.resize-btn,.close-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;padding:0 .25rem;font-size:1.2rem;line-height:1;transition:color .2s}.resize-btn:hover,.close-btn:hover{color:var(--text-primary)}.close-btn:hover{color:var(--error-color)}.calculator-body{flex-direction:column;gap:.75rem;padding:.75rem;display:flex}.calculator-display-wrapper{align-items:stretch;gap:.5rem;display:flex}.calculator-drag-btn{background-color:var(--surface-hover);border:1px solid var(--border-color);border-radius:var(--radius-md);width:32px;color:var(--text-secondary);cursor:grab;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:all .2s;display:flex}.calculator-drag-btn:active{cursor:grabbing;background-color:var(--border-color)}.calculator-drag-btn:hover{color:var(--text-primary);background-color:var(--border-color)}.calculator-display-input{box-sizing:border-box;background-color:var(--bg-color);border:1px solid var(--border-color);border-radius:var(--radius-md);text-align:right;width:100%;color:var(--text-primary);cursor:grab;-webkit-user-select:none;user-select:none;outline:none;padding:.75rem;font-family:monospace;font-size:1.5rem;box-shadow:inset 0 2px 4px #0000000d}.calculator-display-input:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px rgba(var(--primary-color-rgb), .2);cursor:text;-webkit-user-select:text;user-select:text}.calculator-keypad{gap:.5rem;display:flex}.numpad{flex:1;grid-template-columns:repeat(3,1fr);gap:.5rem;display:grid}.operators{flex-direction:column;gap:.5rem;width:50px;display:flex}.calculator-widget button{background-color:var(--bg-color);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;color:var(--text-primary);padding:.5rem;font-size:1rem;font-weight:500;transition:background-color .1s}.calculator-widget button:hover{background-color:var(--surface-hover)}.calculator-widget button:active{background-color:var(--border-color)}.calculator-widget .btn-clear{color:#c62828;background-color:#ffebee;border-color:#ffcdd2}.calculator-widget .btn-clear:hover{background-color:#ffcdd2}.calculator-widget .btn-equals{background-color:var(--primary-color);color:var(--btn-primary-text,white);border-color:var(--primary-hover);flex:1}.calculator-widget .btn-equals:hover{background-color:var(--primary-hover)}.standard-mode{width:240px}.mini-mode{width:140px}.mini-mode .calculator-body{gap:.5rem;padding:.5rem}.mini-mode .calculator-display-input{padding:.5rem;font-size:1.2rem}.mini-mode .calculator-keypad{flex-direction:column}.mini-mode .operators{grid-template-columns:repeat(3,1fr);gap:.25rem;width:100%;display:grid}.calculator-widget.mini-mode button{padding:.4rem}.drag-over{background-color:#4caf501a!important;border:2px dashed #4caf50!important}.breadcrumbs{flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.875rem;line-height:1.5;display:flex}.breadcrumbs__back{color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;justify-content:center;align-items:center;padding:.25rem;font-size:1rem;transition:color .2s,background-color .2s;display:inline-flex}.breadcrumbs__back:hover{color:var(--primary-color);background-color:color-mix(in srgb, var(--primary-color) 8%, transparent)}.breadcrumbs__sep{color:var(--text-secondary);-webkit-user-select:none;user-select:none;opacity:.7;font-size:.8125rem}.breadcrumbs__item{white-space:nowrap}.breadcrumbs__link{color:var(--primary-color);cursor:pointer;font-family:var(--font-sans);font-size:inherit;background:0 0;border:none;padding:0;text-decoration:none;transition:color .2s}.breadcrumbs__link:hover{color:var(--primary-hover);text-decoration:underline}.breadcrumbs__current{color:var(--text-primary);font-weight:600}.test-summary-container{box-sizing:border-box;z-index:1;flex-direction:column;gap:1.5rem;max-width:1200px;height:100%;margin:0 auto;padding:2rem 1.5rem;display:flex;position:relative;overflow-y:auto}@media (width>=769px){.test-summary-container{grid-template-rows:auto 1fr;grid-template-columns:280px 1fr;align-items:start;display:grid}}.test-summary-container .glow-effect,.detailed-eval-container .glow-effect{z-index:0;pointer-events:none;background:radial-gradient(circle,#3b82f60f 0%,#3b82f600 70%);width:500px;height:500px;position:absolute;top:-150px;right:10%}.summary-score-card,.summary-breakdown-card{-webkit-backdrop-filter:blur(14px);z-index:1;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;box-shadow:0 8px 32px #0003;border:1px solid var(--border-color)!important;background:#1e293b4d!important}.summary-score-card:hover,.summary-breakdown-card:hover{box-shadow:0 12px 40px -10px #0006,0 0 20px -3px #3b82f614;border-color:#3b82f640!important}@media (width>=769px){.summary-score-card{grid-area:1/1}.summary-actions{grid-area:2/1;flex-direction:column!important;align-items:stretch!important;gap:.75rem!important;padding:.5rem 0!important}.summary-actions button{width:100%!important}.summary-breakdown-card{grid-area:1/2/span 2;height:100%}}.summary-score-card{text-align:center;padding:1.5rem!important}.summary-score-header h2{letter-spacing:-.01em;background:linear-gradient(135deg, var(--text-primary) 50%, var(--text-secondary) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin:0 0 1rem;font-size:1.5rem;font-weight:800}.summary-score-ring{width:110px;height:110px;margin:0 auto 1rem;position:relative}.score-ring-svg{width:100%;height:100%;transform:rotate(-90deg)}.score-ring-bg{fill:none;stroke:#ffffff0a;stroke-width:6px}.score-ring-fill{fill:none;stroke:var(--primary-color);stroke-width:8px;stroke-linecap:round;filter:drop-shadow(0 0 6px rgba(var(--primary-color-rgb), .5));transition:stroke-dashoffset 1.2s cubic-bezier(.4,0,.2,1)}.score-ring-label{justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.score-ring-value{color:var(--primary-color);text-shadow:0 0 10px rgba(var(--primary-color-rgb), .4);font-size:1.5rem;font-weight:800}.summary-score-detail{border:1px solid var(--border-color);background:#0f172a4d;border-radius:9999px;justify-content:center;align-items:baseline;gap:.2rem;width:fit-content;margin-top:.25rem;padding:.4rem 1rem;display:inline-flex;box-shadow:inset 0 2px 4px #0000001a}.score-earned{color:var(--primary-color);text-shadow:0 0 10px rgba(var(--primary-color-rgb), .4);font-size:1.75rem;font-weight:800;line-height:1}.score-divider{color:var(--text-secondary);margin:0 .1rem;font-size:1.25rem}.score-total-marks{color:var(--text-primary);font-size:1.25rem;font-weight:600}.score-unit{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-left:.15rem;font-size:.75rem}.summary-breakdown-card{padding:1.5rem 0 0!important}.breakdown-title{color:var(--text-primary);letter-spacing:-.01em;margin:0 0 1rem;padding-left:1.5rem;padding-right:1.5rem;font-size:1.15rem;font-weight:700}.breakdown-table-wrapper{width:100%;overflow-x:auto}.breakdown-table{border-collapse:collapse;width:100%;font-size:.875rem}.breakdown-table th{text-align:left;border-bottom:2px solid var(--border-color);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;padding:.65rem .5rem;font-size:.75rem;font-weight:700}.breakdown-table td{vertical-align:middle;border-bottom:1px solid #ffffff08;padding:.5rem}.breakdown-row{transition:background-color .2s}.breakdown-row:hover{background-color:#ffffff04}.breakdown-row:last-child td{border-bottom:none}.breakdown-table th:first-child,.breakdown-table td:first-child{padding-left:1.5rem}.breakdown-table th:last-child,.breakdown-table td:last-child{padding-right:1.5rem}.col-num{width:40px;color:var(--text-secondary);font-weight:700}.col-title{white-space:nowrap;text-overflow:ellipsis;max-width:200px;color:var(--text-primary);font-weight:600;overflow:hidden}.col-type,.col-status{width:110px}.col-score{width:70px}.col-action{width:90px}.type-badge{text-transform:uppercase;letter-spacing:.01em;border-radius:9999px;align-items:center;padding:.15rem .5rem;font-size:.7rem;font-weight:700;display:inline-flex}.type-mcq{color:var(--primary-color);background:#3b82f614;border:1px solid #3b82f626}.type-desc{color:#a78bfa;background:#8b5cf614;border:1px solid #8b5cf626}.status-badge{text-transform:uppercase;letter-spacing:.01em;border-radius:9999px;align-items:center;padding:.15rem .5rem;font-size:.7rem;font-weight:700;display:inline-flex}.status-correct{color:var(--success-color);background:#10b98114;border:1px solid #10b98126;box-shadow:0 0 8px #10b9810d}.status-partial{color:#fbbf24;background:#eab30814;border:1px solid #eab30826;box-shadow:0 0 8px #eab3080d}.status-incorrect{color:var(--error-color);background:#ef444414;border:1px solid #ef444426;box-shadow:0 0 8px #ef44440d}.status-unattempted{color:#94a3b8;background:#94a3b814;border:1px solid #94a3b826}.score-fraction{font-variant-numeric:tabular-nums;color:var(--text-primary);font-weight:700}.evaluate-btn{border:1.5px solid var(--primary-color);color:var(--primary-color);border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;background:0 0;padding:.25rem .65rem;font-size:.75rem;font-weight:700;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 0 8px #3b82f60d}.evaluate-btn:hover{background:var(--primary-color);color:var(--btn-primary-text,white);transform:translateY(-1px);box-shadow:0 0 12px #3b82f64d}.summary-actions{z-index:1;justify-content:center;gap:1rem;padding:1rem 0;display:flex}.detailed-eval-container{z-index:1;flex-direction:column;gap:1rem;height:100%;padding:1.5rem;display:flex;position:relative}.eval-top-bar{-webkit-backdrop-filter:blur(14px);border:1px solid var(--border-color);border-radius:var(--radius-lg);flex-shrink:0;justify-content:space-between;align-items:center;padding:.85rem 1.25rem;display:flex;box-shadow:0 4px 15px #00000026;background:#1e293b4d!important}.eval-back-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;padding:0;font-size:.9rem;font-weight:700;transition:all .2s}.eval-back-btn:hover{color:var(--primary-color);transform:translate(-2px)}.eval-nav{align-items:center;gap:1.25rem;display:flex}.eval-counter{color:var(--text-secondary);font-size:.9rem;font-weight:700}.eval-nav-buttons{gap:.5rem;display:flex}.collapsed-panes-bar{flex-wrap:wrap;flex-shrink:0;gap:.5rem;display:flex}.collapsed-pane-toggle{-webkit-backdrop-filter:blur(10px);border:1px dashed var(--border-color);border-radius:var(--radius-md);cursor:pointer;color:var(--text-secondary);background:#1e293b4d;padding:.5rem .85rem;font-size:.8rem;font-weight:600;transition:all .2s}.collapsed-pane-toggle:hover{border-color:var(--primary-color);color:var(--primary-color);background:#3b82f614}.eval-panes{flex:1;gap:1rem;min-height:0;display:grid;overflow:hidden}.eval-pane{-webkit-backdrop-filter:blur(14px);border-radius:var(--radius-lg);flex-direction:column;min-height:0;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;overflow:hidden;box-shadow:0 4px 15px #00000026;border:1px solid var(--border-color)!important;background:#1e293b4d!important}.eval-pane:hover{box-shadow:0 12px 30px -10px #0006,0 0 20px -3px #3b82f614;border-color:#3b82f640!important}.eval-pane-header{border-bottom:1px solid var(--border-color);background:#0f172a40;flex-shrink:0;align-items:center;gap:.65rem;padding:.85rem 1.25rem;display:flex}.eval-pane-icon{font-size:1.1rem}.eval-pane-title{letter-spacing:-.01em;color:var(--text-primary);flex:1;margin:0;font-size:.95rem;font-weight:700}.eval-pane-collapse-btn{cursor:pointer;color:var(--text-secondary);border-radius:var(--radius-sm);background:0 0;border:none;justify-content:center;align-items:center;padding:.25rem;font-size:.85rem;line-height:1;transition:all .2s;display:flex}.eval-pane-collapse-btn:hover{color:var(--error-color);background:#ef44441a}.eval-pane-body{flex:1;overflow-y:auto;padding:1.25rem 0!important}.eval-question-title,.eval-question-desc,.eval-answer-label,.eval-no-answer,.eval-explanation,.eval-sub-questions-ref h4,.eval-sq-item>div:first-child{padding-left:1.25rem!important;padding-right:1.25rem!important}.eval-question-title{color:var(--text-primary);margin:0 0 .85rem;font-size:1.15rem;font-weight:700;line-height:1.45}.eval-question-desc{color:var(--text-secondary);margin:0 0 1.25rem;font-size:.875rem;line-height:1.5}.eval-options-list{flex-direction:column;gap:.75rem;margin-top:1rem;display:flex}.eval-option-item{background:#1e293b33;align-items:flex-start;gap:.85rem;display:flex;border-top:1px solid var(--border-color)!important;border-bottom:1px solid var(--border-color)!important;border-left:none!important;border-right:none!important;border-radius:0!important;width:100%!important;margin-left:0!important;margin-right:0!important;padding:.85rem 1.25rem!important}.eval-option-letter{border:1.5px solid var(--border-color);width:26px;height:26px;color:var(--text-secondary);background:#ffffff0d;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.85rem;font-weight:800;display:flex}.eval-option-text{color:var(--text-primary);flex:1;font-size:.875rem;line-height:1.5}.eval-mcq-answer{flex-direction:column;gap:.85rem;display:flex}.eval-answer-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);margin-bottom:.5rem;font-size:.75rem;font-weight:700}.eval-mcq-option{align-items:center;gap:.85rem;display:flex;border-top:2px solid var(--border-color)!important;border-bottom:2px solid var(--border-color)!important;border-left:none!important;border-right:none!important;border-radius:0!important;width:100%!important;margin-left:0!important;margin-right:0!important;padding:.85rem 1.25rem!important}.eval-mcq-option.eval-mcq-correct{color:var(--success-color);text-shadow:0 0 8px #10b98133;border-color:var(--success-color)!important;background:#10b98114!important}.eval-mcq-option.eval-mcq-correct .eval-option-letter{border-color:var(--success-color);color:var(--success-color);background:#10b9811a}.eval-mcq-option.eval-mcq-incorrect{color:var(--error-color);text-shadow:0 0 8px #ef444433;border-color:var(--error-color)!important;background:#ef444414!important}.eval-mcq-option.eval-mcq-incorrect .eval-option-letter{border-color:var(--error-color);color:var(--error-color);background:#ef44441a}.eval-mcq-verdict{margin-left:auto;font-size:.85rem;font-weight:800}.eval-no-answer{color:var(--text-secondary);justify-content:center;align-items:center;gap:.65rem;font-size:.875rem;font-style:italic;display:flex;padding:2.5rem 1.25rem!important}.eval-no-answer-icon{font-size:1.35rem}.eval-desc-answer{flex-direction:column;gap:1.25rem;display:flex}.eval-rich-content{width:100%;margin-bottom:.5rem}.eval-rich-content .rich-text-container{border-left:none!important;border-right:none!important;border-radius:0!important;width:100%!important}.eval-sub-answers{flex-direction:column;gap:.75rem;display:flex}.eval-sub-answer-row{box-sizing:border-box;align-items:flex-start;gap:.65rem;font-size:.875rem;display:flex;border-top:1px solid var(--border-color)!important;border-bottom:1px solid var(--border-color)!important;border-left:none!important;border-right:none!important;border-radius:0!important;width:100%!important;margin-left:0!important;margin-right:0!important;padding:.85rem 1.25rem!important}.eval-sub-answer-row.correct{background:#10b9810a!important;border-color:#10b9814d!important}.eval-sub-answer-row.incorrect{background:#ef44440a!important;border-color:#ef44444d!important}.eval-sq-num{color:var(--text-secondary);min-width:1.5rem;font-weight:800}.eval-sq-text{color:var(--text-primary);flex:1;font-weight:600;line-height:1.45}.eval-sq-marks{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.02em;font-size:.75rem;font-weight:700}.eval-sub-value{font-variant-numeric:tabular-nums;border-radius:var(--radius-sm);background:#00000026;border:1px solid #ffffff08;padding:.2rem .65rem;font-size:.85rem;font-weight:700}.val-correct{color:var(--success-color);box-shadow:0 0 8px #10b98126}.val-incorrect{color:var(--error-color);box-shadow:0 0 8px #ef444426}.eval-sub-verdict{text-align:center;width:1.5rem;font-size:1.1rem;font-weight:800}.eval-sub-answer-row.correct .eval-sub-verdict{color:var(--success-color)}.eval-sub-answer-row.incorrect .eval-sub-verdict{color:var(--error-color)}.eval-explanation{border:1px solid var(--border-color);box-sizing:border-box;background:#0f172a33;width:calc(100% - 2.5rem);margin-top:1rem;padding:1rem;border-radius:var(--radius-md)!important;margin-left:1.25rem!important;margin-right:1.25rem!important}.eval-explanation p{color:var(--text-primary);margin:0;font-size:.875rem;line-height:1.55}.eval-sub-questions-ref{border-top:1px solid var(--border-color);margin-top:1.5rem;padding-top:1rem}.eval-sub-questions-ref h4{text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);margin:0 0 .85rem;font-size:.85rem;font-weight:700}.eval-sq-item{align-items:stretch;gap:.5rem;padding:.5rem 0;font-size:.875rem;display:flex}.eval-pane input,.eval-pane select,.eval-pane .ProseMirror,.eval-pane .ProseMirror td,.eval-pane .ProseMirror th{font-size:.875rem!important}@media (width<=768px){.eval-panes{overflow-y:auto;grid-template-columns:1fr!important}.eval-pane{min-height:300px}.eval-top-bar{flex-direction:column;align-items:flex-start;gap:.75rem}}.drawing-canvas-scroll-container{width:100%;position:relative;overflow:auto hidden}.drawing-content-wrapper{box-sizing:border-box;position:relative}.drawing-overlay-canvas{pointer-events:none;z-index:10;width:100%;height:100%;position:absolute;top:0;left:0}.drawing-inner-content{z-index:1;pointer-events:auto;position:relative}.center-content{text-align:center;justify-content:center;align-items:center;min-height:50vh;display:flex}.text-error{color:var(--error-color);font-weight:500}.solving-card{max-width:700px;margin:0 auto 4rem}.progress-bar{background-color:var(--border-color);border-radius:3px;width:100%;height:6px;margin-bottom:1.5rem;overflow:hidden}.progress-fill{background-color:var(--primary-color);height:100%;transition:width .3s}.question-meta{text-transform:uppercase;letter-spacing:.05em;justify-content:space-between;align-items:center;margin-bottom:1rem;font-size:.85rem;font-weight:700;display:flex}.question-topic{color:var(--primary-color);background-color:#3b82f61a;border:1px solid #3b82f626;border-radius:9999px;padding:.25rem .75rem}.question-counter{color:var(--text-secondary)}.question-title{color:var(--text-primary);letter-spacing:-.02em;margin-bottom:.75rem;font-size:1.5rem;font-weight:800;line-height:1.3}.question-desc{color:var(--text-secondary);margin-bottom:2rem;font-size:.95rem;line-height:1.5}.options-grid{flex-direction:column;gap:.75rem;margin-bottom:2rem;display:flex}.solve-option{text-align:left;color:var(--text-primary);cursor:pointer;padding:1rem 1.25rem;transition:all .2s;border:1px solid var(--border-color)!important;border-radius:var(--radius-md)!important;background-color:#1e293b33!important;width:calc(100% - 2.5rem)!important;margin-left:1.25rem!important;margin-right:1.25rem!important}.solve-option:hover:not(:disabled){border-color:var(--primary-color)!important;background-color:#3b82f614!important}.solve-option.selected{border-color:var(--primary-color)!important;border-left:4px solid var(--primary-color)!important;background-color:#3b82f626!important}.solve-option.correct{font-weight:700;border-color:var(--success-color)!important;border-left:4px solid var(--success-color)!important;color:var(--success-color)!important;background-color:#10b9811a!important}.solve-option.incorrect{border-color:var(--error-color)!important;border-left:4px solid var(--error-color)!important;color:var(--error-color)!important;background-color:#ef44441a!important}.explanation-box{border:1px solid var(--border-color);border-radius:var(--radius-md);background-color:#0f172a4d;margin-bottom:2rem;padding:1.25rem}.split-pane-layout{flex:1;grid-template-columns:1fr 1fr;gap:1rem;min-height:0;margin-bottom:0;display:grid;overflow:hidden}@media (width<=1024px){.split-pane-layout{grid-template-columns:1fr;height:auto;overflow:visible}}.pane{flex-direction:column;height:100%;display:flex;overflow:hidden}.solving-page-root .card,.solving-page-root .pane-card{-webkit-backdrop-filter:blur(14px);border-radius:var(--radius-lg);flex-direction:column;flex:1;height:100%;margin-bottom:0;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;overflow-y:auto;box-shadow:0 4px 15px #00000026;border:1px solid var(--border-color)!important;background:#1e293b4d!important;padding:1.25rem 0!important}.solving-page-root .card:hover,.solving-page-root .pane-card:hover{box-shadow:0 12px 30px -10px #0006,0 0 20px -3px #3b82f61a;border-color:#3b82f640!important}.workspace-card{overflow:hidden}.solving-page-root .input-field,.solving-page-root .drop-input,.solving-page-root .question-content-readonly,.solving-page-root .workspace-editor-wrapper{border:1px solid var(--border-color)!important;border-radius:var(--radius-md)!important;width:calc(100% - 2.5rem)!important;margin-left:1.25rem!important;margin-right:1.25rem!important}.workspace-editor-wrapper{border:1px solid var(--border-color);flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.workspace-editor-wrapper .rich-text-container{border:none;border-radius:0;flex-direction:column;flex:1;height:100%;min-height:0;display:flex}.workspace-editor-wrapper .editor-content-wrapper{flex:1;min-width:0;min-height:0;overflow-y:auto}.question-content-readonly{background-color:#0f172a33;margin-bottom:1.5rem;padding:1.25rem!important}.drop-input{border:1.5px dashed var(--border-color);color:var(--text-primary);background-color:#0f172a33;outline:none;flex:1;padding:.75rem 1.25rem;font-family:inherit;transition:border-color .2s,background-color .2s;border-radius:var(--radius-md)!important}.drop-input:focus{border-color:var(--primary-color);background-color:#0f172a59;border-style:solid}.drop-input:disabled{opacity:.7;cursor:not-allowed}.solving-page-root .question-title,.solving-page-root .question-desc,.solving-page-root .question-meta,.solving-page-root .sub-questions-section h3,.solving-page-root .sub-questions-section label,.solving-page-root .sub-questions-section>div>label,.solving-page-root .action-row,.solving-page-root .results-card h2,.solving-page-root .results-card p,.solving-page-root .results-card div{padding-left:1.25rem!important;padding-right:1.25rem!important}.solving-page-root .results-card button{margin-left:1.25rem!important}.solving-page-root input,.solving-page-root select,.solving-page-root .input-field,.solving-page-root .drop-input,.solving-page-root .ProseMirror,.solving-page-root .ProseMirror td,.solving-page-root .ProseMirror th{font-size:.875rem!important}.results-card{text-align:center;padding:3rem 2rem}.score-display{margin:2rem 0}.score-number{color:var(--primary-color);font-size:4rem;font-weight:800}.score-total{color:var(--text-secondary);margin-left:.5rem;font-size:1.5rem}.test-workspace-container{flex-direction:column;height:100%;display:flex}.workspace-sidebar{-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:#1e293b73;flex-direction:column;width:250px;transition:width .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:visible;box-shadow:0 4px 15px #00000026}.workspace-sidebar.collapsed{width:50px}.workspace-sidebar.collapsed .sidebar-header{overflow:hidden;background:0 0!important;border-bottom:none!important;height:0!important;padding:0!important}.sidebar-breadcrumbs-container{border-bottom:1px solid var(--border-color);padding:1rem}.sidebar-back-button{color:var(--primary-color);cursor:pointer;text-transform:uppercase;letter-spacing:.03em;background:0 0;border:none;align-items:center;gap:.35rem;margin-bottom:.65rem;padding:0;font-size:.8rem;font-weight:700;transition:all .2s;display:flex}.sidebar-back-button:hover{color:var(--primary-hover);text-shadow:0 0 8px #3b82f64d;transform:translate(-2px)}.sidebar-hierarchy-path{flex-direction:column;gap:.25rem;display:flex}.sidebar-course-subject{color:var(--text-primary);letter-spacing:-.01em;font-size:.85rem;font-weight:800}.sidebar-exam-test{color:var(--text-secondary);font-size:.725rem;font-style:italic}.q-badge{cursor:pointer;color:#fff;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:.875rem;font-weight:700;transition:opacity .2s;display:flex}.q-badge:hover{opacity:.8}.q-badge-solved{background-color:var(--success-color)}.q-badge-active{background-color:#eab308}.q-badge-untouched{background-color:var(--border-color);color:var(--text-secondary)}.sidebar-header{border-bottom:1px solid var(--border-color);background:#0000000d;justify-content:space-between;align-items:center;display:flex;padding:1rem!important}.sidebar-title-wrapper h3{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;margin:0;font-size:.8rem;font-weight:700}.sidebar-collapse-btn{background:var(--surface-color)!important;border:1px solid var(--border-color)!important;width:24px!important;min-width:24px!important;height:24px!important;color:var(--text-secondary)!important;z-index:101!important;border-radius:50%!important;justify-content:center!important;align-items:center!important;margin:0!important;padding:0!important;transition:all .2s!important;display:flex!important;position:absolute!important;top:24px!important;right:-12px!important;box-shadow:0 4px 10px #0000004d!important}.sidebar-collapse-btn:hover{background-color:var(--primary-color)!important;color:#fff!important;border-color:var(--primary-color)!important;transform:scale(1.1)!important}.question-list{flex:1;padding:.5rem;overflow-y:auto}.q-list-item{cursor:pointer;text-align:left;background:0 0;border:none;border-left:3px solid #0000;border-radius:0;align-items:center;gap:.75rem;width:100%;margin-bottom:.25rem;padding:.75rem;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.q-list-item:hover{background:#0f172a33;border-left-color:#3b82f633}.q-list-item.active{color:var(--primary-color);border-left-color:var(--primary-color);background:#3b82f614;font-weight:700}.q-list-item.solved{color:var(--success-color)}.q-icon{align-items:center;display:flex}.q-icon-untouched{color:var(--text-secondary)}.q-icon-solved{color:var(--success-color);filter:drop-shadow(0 0 4px #10b9814d)}.q-icon-active{color:var(--primary-color);filter:drop-shadow(0 0 4px #3b82f64d)}.q-label{flex:1;font-size:.875rem}.q-marks{color:var(--text-secondary);font-size:.725rem}.sidebar-footer{border-top:1px solid var(--border-color);background:#0000000d;padding:1rem!important}.workspace-full{flex-direction:column;height:100%;display:flex}.subject-page{z-index:1;width:100%;max-width:1200px;min-height:calc(100vh - 60px);margin:0 auto;padding:2rem 2.5rem;position:relative}.subject-page .glow-effect{z-index:0;pointer-events:none;background:radial-gradient(circle,#3b82f614 0%,#3b82f600 70%);width:500px;height:500px;position:absolute;top:-150px;right:15%}.subject-loading,.subject-empty{height:50vh;color:var(--text-secondary);justify-content:center;align-items:center;font-size:1.25rem;display:flex}.subject-header{z-index:1;margin-bottom:2.5rem;position:relative}.back-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;align-items:center;margin-bottom:1rem;padding:0;font-size:.9rem;font-weight:700;transition:all .2s;display:inline-flex}.back-btn:hover{color:var(--primary-color);transform:translate(-3px)}.subject-header h1{color:var(--text-primary);letter-spacing:-.025em;background:linear-gradient(135deg, var(--text-primary) 50%, var(--text-secondary) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin:0 0 .5rem;font-size:2.5rem;font-weight:800}.subject-header p{color:var(--text-secondary);margin:0;font-size:1.1rem}.exam-type-section{z-index:1;background:0 0;border:none;margin-bottom:3rem;padding:0;position:relative}.exam-type-title{color:var(--text-primary);border-bottom:1px solid var(--border-color);letter-spacing:-.01em;margin-bottom:1.25rem;padding-bottom:.5rem;font-size:1.25rem;font-weight:700}.test-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;width:100%;display:grid}.test-card{-webkit-backdrop-filter:blur(14px);border-radius:var(--radius-lg);flex-direction:column;min-height:200px;padding:1.5rem;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;box-shadow:0 4px 15px #00000026;border:1px solid var(--border-color)!important;background:#1e293b4d!important}.test-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px -10px #0006,0 0 20px -3px #3b82f61a;border-color:#3b82f640!important}.test-card-header{margin-bottom:.75rem}.exam-type-badge{color:var(--primary-color);text-transform:uppercase;letter-spacing:.02em;background:#3b82f614;border:1px solid #3b82f626;border-radius:9999px;align-items:center;padding:.25rem .6rem;font-size:.7rem;font-weight:700;display:inline-flex}.test-card h3{color:var(--text-primary);letter-spacing:-.01em;margin:0 0 .85rem;font-size:1.15rem;font-weight:700;line-height:1.4}.test-meta{color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1.5rem;font-size:.8rem;display:flex}.meta-item{align-items:center;gap:.35rem;display:flex}.meta-icon{color:var(--primary-color);opacity:.8}.test-card-footer{width:100%;margin-top:auto}.start-btn{background:var(--primary-color);width:100%;color:var(--btn-primary-text,white);border-radius:var(--radius-md);cursor:pointer;text-align:center;border:none;padding:.65rem 1rem;font-size:.85rem;font-weight:700;transition:all .25s;box-shadow:0 4px 10px #3b82f626}.start-btn:hover{background:var(--primary-hover);transform:translateY(-1px);box-shadow:0 6px 15px #3b82f659}.empty-state{text-align:center;border-radius:var(--radius-lg);color:var(--text-secondary);padding:3rem;font-size:1.1rem}.stat-card{border-radius:var(--radius-lg);border:1px solid var(--border-color);background:#1e293b66;align-items:center;gap:1.25rem;padding:1.75rem 1.5rem;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;box-shadow:0 4px 15px #00000026}.stat-card:hover{border-color:var(--accent-color,var(--primary-color));box-shadow:0 12px 30px -10px #0006, 0 0 15px -3px rgba(var(--accent-rgb,59, 130, 246), .15);transform:translateY(-3px)}.stat-card.theme-completed{--accent-color:#10b981;--accent-rgb:16, 185, 129}.stat-card.theme-score{--accent-color:#eab308;--accent-rgb:234, 179, 8}.stat-card.theme-time{--accent-color:#3b82f6;--accent-rgb:59, 130, 246}.stat-icon-wrapper{flex-shrink:0}.stat-icon{border-radius:var(--radius-md);background:rgba(var(--accent-rgb,59, 130, 246), .1);width:48px;height:48px;color:var(--accent-color,var(--primary-color));border:1.5px solid rgba(var(--accent-rgb,59, 130, 246), .15);box-shadow:0 0 12px rgba(var(--accent-rgb,59, 130, 246), .05);justify-content:center;align-items:center;transition:all .2s;display:flex}.stat-card:hover .stat-icon{background:var(--accent-color,var(--primary-color));color:#0f172a;border-color:var(--accent-color,var(--primary-color));box-shadow:0 0 15px rgba(var(--accent-rgb,59, 130, 246), .25);transform:scale(1.05)}.stat-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;margin:0;font-size:.725rem;font-weight:700}.stat-value{color:var(--text-primary);align-items:baseline;gap:.75rem;margin:.25rem 0 0;font-size:1.85rem;font-weight:800;line-height:1.2;display:flex}.stat-trend{text-transform:uppercase;letter-spacing:.02em;border-radius:4px;padding:.2rem .5rem;font-size:.725rem;font-weight:700}.stat-trend.positive{color:#10b981;background:#10b9811f;border:1px solid #10b98126}.stat-trend.negative{color:var(--error-color);background:#ef44441f;border:1px solid #ef444426}.profile-container{grid-template-columns:320px 1fr;align-items:start;gap:2.5rem;width:100%;max-width:1280px;min-height:calc(100vh - 60px);margin:0 auto;padding:2rem 2.5rem;display:grid;position:relative}@media (width<=1024px){.profile-container{grid-template-columns:1fr;gap:2rem;padding:1.5rem 1rem}}.profile-container .glow-effect{z-index:0;pointer-events:none;background:radial-gradient(circle,#3b82f60f 0%,#3b82f600 70%);width:600px;height:600px;position:absolute;top:-120px;right:15%}.profile-sidebar{z-index:1;flex-direction:column;gap:1.75rem;display:flex;position:sticky;top:2rem}@media (width<=1024px){.profile-sidebar{width:100%;position:static}}.identity-card{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);padding:2.5rem 1.75rem;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 15px #00000026;border:1px solid var(--border-color)!important;background:#1e293b4d!important}.identity-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px -10px #0006,0 0 20px -3px #3b82f626;border-color:#3b82f640!important}.avatar-container{justify-content:center;align-items:center;width:110px;height:110px;margin:0 auto 1.5rem;display:flex;position:relative}.profile-avatar{object-fit:cover;background:#0f172a99;border:3px solid #3b82f633;border-radius:50%;width:100%;height:100%;padding:4px;transition:all .3s;box-shadow:0 0 20px #3b82f61a}.identity-card:hover .profile-avatar{border-color:var(--primary-color);transform:scale(1.02);box-shadow:0 0 25px #3b82f659}.guest-badge{background:var(--primary-color);color:#fff;border-radius:var(--radius-sm);letter-spacing:.08em;text-transform:uppercase;border:1px solid #ffffff1a;padding:.25rem .65rem;font-size:.65rem;font-weight:800;position:absolute;bottom:-4px;box-shadow:0 2px 8px #3b82f666}.identity-card h2{color:var(--text-primary);letter-spacing:-.01em;margin-bottom:.25rem;font-size:1.35rem;font-weight:800}.user-email-text{color:var(--text-secondary);word-break:break-all;font-size:.85rem}.guest-promo{border-top:1px solid var(--border-color);text-align:left;margin-top:2rem;padding-top:1.75rem}.guest-promo p{color:var(--text-secondary);margin-bottom:1.25rem;font-size:.8rem;line-height:1.5}.guest-promo button{letter-spacing:.01em;font-size:.875rem;font-weight:700}.leaderboard-card{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 15px #00000026;border:1px solid var(--border-color)!important;background:#1e293b4d!important;padding:1.75rem 1.5rem!important}.leaderboard-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px -10px #0006,0 0 20px -3px #eab3081a;border-color:#eab30840!important}.leaderboard-header{align-items:center;gap:.65rem;margin-bottom:1.25rem;display:flex}.leaderboard-header h3{color:var(--text-primary);margin:0;font-size:1.1rem;font-weight:700}.trophy-icon{color:#eab308;filter:drop-shadow(0 0 5px #eab30866)}.leaderboard-list{flex-direction:column;gap:.65rem;margin-bottom:1rem;display:flex}.leaderboard-item{border-radius:var(--radius-md);border:1px solid var(--border-color);background:#0f172a33;align-items:center;gap:.75rem;padding:.75rem 1rem;transition:all .2s;display:flex}.leaderboard-item:hover{background:#0f172a59;border-color:#ffffff14}.leaderboard-item.is-me{border:1px solid #3b82f633;border-left:4px solid var(--primary-color);background:#3b82f60f}.lb-rank{justify-content:center;width:24px;font-size:1.1rem;font-weight:800;display:flex}.lb-name{color:var(--text-primary);flex:1;font-size:.875rem;font-weight:600}.leaderboard-item.is-me .lb-name{color:var(--primary-color)}.lb-score{color:var(--text-secondary);font-size:.875rem;font-weight:700}.leaderboard-item.is-me .lb-score{color:var(--primary-color);text-shadow:0 0 8px #3b82f640}.leaderboard-update-sub{color:var(--text-secondary);text-align:center;opacity:.8;margin-top:1rem;font-size:.725rem;font-style:italic}.profile-main{z-index:1;flex-direction:column;gap:2rem;display:flex}.profile-main .dashboard-header h2{color:var(--text-primary);letter-spacing:-.02em;margin-bottom:.35rem;font-size:2.25rem;font-weight:800}.profile-main .dashboard-header p{color:var(--text-secondary);margin:0;font-size:1.05rem}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;display:grid}.activity-card{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 15px #00000026;border:1px solid var(--border-color)!important;background:#1e293b4d!important;padding:2rem!important}.activity-card:hover{box-shadow:0 8px 25px -5px #0000004d;border-color:#3b82f626!important}.activity-title{color:var(--text-primary);border-bottom:1px solid var(--border-color);align-items:center;gap:.65rem;margin:0 0 1.75rem;padding-bottom:.85rem;font-size:1.2rem;font-weight:700;display:flex}.activity-header-icon{color:var(--primary-color);filter:drop-shadow(0 0 5px #3b82f666)}.activity-feed{padding-left:2rem;position:relative}.activity-feed:before{content:"";background:linear-gradient(to bottom, var(--primary-color) 0%, var(--border-color) 100%);opacity:.6;width:2px;position:absolute;top:8px;bottom:8px;left:7px}.activity-item{margin-bottom:1.75rem;position:relative}.activity-item:last-child{margin-bottom:0}.activity-marker{background:var(--bg-color);border:4px solid var(--primary-color);z-index:2;border-radius:50%;width:16px;height:16px;transition:all .3s;position:absolute;top:.25rem;left:-2rem;box-shadow:0 0 10px #3b82f680}.activity-item:hover .activity-marker{background:var(--primary-color);box-shadow:0 0 14px var(--primary-color);transform:scale(1.2)}.activity-content{border-radius:var(--radius-md);background:#0f172a26;border:1px solid #ffffff08;padding:1rem 1.25rem;transition:all .2s}.activity-item:hover .activity-content{background:#0f172a40;border-color:#ffffff0d;transform:translate(3px)}.activity-content h4{color:var(--text-primary);margin:0 0 .35rem;font-size:.95rem;font-weight:700}.activity-content p{color:var(--text-secondary);margin:0;font-size:.85rem;line-height:1.4}.activity-content strong{color:var(--text-primary)}.onboarding-page{background:var(--bg-color);justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex}.onboarding-loading{min-height:100vh;color:var(--text-secondary);justify-content:center;align-items:center;font-size:1.25rem;display:flex}.onboarding-container{border-radius:var(--radius-lg);flex-direction:column;gap:2rem;width:100%;max-width:800px;padding:3rem;display:flex}.onboarding-title{color:var(--text-primary);text-align:center;margin:0;font-size:2.5rem;font-weight:800}.onboarding-subtitle{color:var(--text-secondary);text-align:center;margin:0 0 1rem;font-size:1.1rem}.courses-list{flex-direction:column;gap:2.5rem;display:flex}.course-title{color:var(--text-primary);border-bottom:1px solid var(--border-color);margin-bottom:1rem;padding-bottom:.5rem;font-size:1.25rem;font-weight:600}.subjects-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;display:grid}.subject-card{background:var(--surface-color);border:2px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;text-align:center;flex-direction:column;align-items:center;gap:.75rem;padding:1.5rem 1rem;transition:all .2s;display:flex}.subject-card:hover{box-shadow:var(--shadow-md);border-color:var(--primary-color);transform:translateY(-2px)}.subject-card.selected{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.subject-card.selected .subject-name{color:#fff}.subject-icon{opacity:.8;font-size:1.5rem;font-weight:700}.subject-name{color:var(--text-primary);font-size:1rem;font-weight:600}.onboarding-footer{border-top:1px solid var(--border-color);justify-content:flex-end;margin-top:2rem;padding-top:2rem;display:flex}.finish-btn{background:var(--primary-color);color:#fff;border-radius:var(--radius-md);cursor:pointer;border:none;padding:1rem 2rem;font-size:1.1rem;font-weight:600;transition:opacity .2s}.finish-btn:disabled{opacity:.5;cursor:not-allowed}.finish-btn:not(:disabled):hover{opacity:.9}.template-editor-page{background-color:var(--bg-color);height:100vh;color:var(--text-primary);flex-direction:column;display:flex;overflow:hidden}.template-editor-header{border-bottom:1px solid var(--border-color);background:var(--surface-color);flex-shrink:0;justify-content:space-between;align-items:center;padding:.75rem 1.5rem;display:flex}.template-editor-header .back-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;align-items:center;gap:.5rem;padding:0;font-size:.95rem;font-weight:600;display:flex}.template-editor-header .back-btn:hover{color:var(--primary-color)}.template-editor-header h2{color:var(--text-primary);font-size:1.15rem;font-weight:600}.template-editor-body{flex:1;display:flex;overflow:hidden}.template-sidebar{background-color:var(--surface-color);border-right:1px solid var(--border-color);flex-direction:column;flex-shrink:0;width:320px;display:flex;overflow:hidden}.sidebar-search-area{border-bottom:1px solid var(--border-color);flex-direction:column;gap:.75rem;padding:1rem;display:flex}.sidebar-search-area input{border:1px solid var(--border-color);border-radius:var(--radius-md);background-color:var(--bg-color);color:var(--text-primary);width:100%;padding:.5rem .75rem;font-size:.9rem}.sidebar-search-area input:focus{border-color:var(--primary-color);outline:none}.templates-scroll-list{flex-direction:column;flex:1;gap:1.25rem;padding:1rem;display:flex;overflow-y:auto}.template-group-section{flex-direction:column;gap:.5rem;display:flex}.group-title{text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);margin-bottom:.25rem;font-size:.75rem;font-weight:700}.template-list-item{border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;background-color:var(--surface-color);padding:.75rem;transition:all .2s}.template-list-item:hover{background-color:var(--surface-hover);border-color:var(--primary-color)}.template-list-item.active{background-color:rgba(var(--primary-color-rgb), .08);border-color:var(--primary-color)}.item-name{color:var(--text-primary);margin-bottom:.2rem;font-size:.9rem;font-weight:600}.item-meta{color:var(--text-secondary);justify-content:space-between;font-size:.75rem;display:flex}.item-badge{background-color:var(--bg-color);border:1px solid var(--border-color);border-radius:4px;padding:.1rem .4rem}.template-workspace{flex-direction:column;flex:1;padding:.5rem;display:flex;overflow:hidden}.workspace-empty{height:100%;color:var(--text-secondary);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:1rem;display:flex}.workspace-empty .icon{font-size:4rem}.workspace-form-card{flex-direction:column;gap:.5rem;height:100%;padding:.5rem;display:flex;overflow:hidden}.workspace-form-header{border-bottom:1px solid var(--border-color);flex-shrink:0;justify-content:space-between;align-items:center;gap:1rem;padding-bottom:.5rem;display:flex}.form-fields-container{flex-wrap:wrap;flex:1;align-items:center;gap:.75rem;display:flex}.form-fields-container .form-field{flex-direction:row;align-items:center;gap:.35rem;display:flex}.form-fields-container .form-field label{color:var(--text-secondary);white-space:nowrap;font-size:.8rem;font-weight:600}.form-fields-container .form-field input,.form-fields-container .form-field select{border:1px solid var(--border-color);border-radius:var(--radius-md);background-color:var(--bg-color);color:var(--text-primary);padding:.35rem .5rem;font-size:.85rem}.form-fields-container .form-field input:focus,.form-fields-container .form-field select:focus{border-color:var(--primary-color);outline:none}.dimension-inputs{gap:.35rem;display:flex}.dimension-inputs input{text-align:center;width:45px;padding:.35rem .2rem!important}.form-field-checkbox{align-items:center;gap:.35rem;display:flex}.form-field-checkbox input{cursor:pointer;margin:0}.form-field-checkbox label{color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;font-size:.8rem;font-weight:600}.workspace-header-actions{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.template-status-banner{border-radius:var(--radius-md);background-color:rgba(var(--primary-color-rgb), .05);border:1px dashed rgba(var(--primary-color-rgb), .3);color:var(--text-secondary);flex-shrink:0;justify-content:space-between;align-items:center;padding:.4rem .75rem;font-size:.78rem;display:flex}.workspace-editor-canvas{border:1px solid var(--border-color);border-radius:var(--radius-md);background-color:var(--surface-color);flex-direction:column;flex:1;display:flex;overflow:hidden}.workspace-editor-canvas .spreadsheet-container{height:100%;overflow:auto}.insert-context-btn{border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;border:1px solid #0000;align-items:center;gap:.2rem;height:32px;padding:0 .6rem;font-size:.78rem;font-weight:600;transition:background-color .15s,border-color .15s,transform .1s;display:inline-flex}.insert-row-btn{color:#059669;background-color:#10b9811f;border-color:#10b9814d}.insert-row-btn:hover{background-color:#10b98138;border-color:#10b9818c;transform:translateY(-1px)}.insert-row-btn:active{background-color:#10b98159;transform:translateY(0)}.insert-col-btn{color:#2563eb;background-color:#3b82f61f;border-color:#3b82f64d}.insert-col-btn:hover{background-color:#3b82f638;border-color:#3b82f68c;transform:translateY(-1px)}.insert-col-btn:active{background-color:#3b82f659;transform:translateY(0)}@media (prefers-color-scheme:dark){.insert-row-btn{color:#34d399;background-color:#10b98126;border-color:#10b98159}.insert-row-btn:hover{background-color:#10b98147}.insert-col-btn{color:#60a5fa;background-color:#3b82f626;border-color:#3b82f659}.insert-col-btn:hover{background-color:#3b82f647}}.system-badge-indicator{text-transform:uppercase;color:var(--success-color);background-color:#10b9811a;border:1px solid #10b98133;border-radius:4px;padding:.1rem .35rem;font-size:.7rem;font-weight:700;display:inline-block}.personal-badge-indicator{text-transform:uppercase;color:var(--primary-color);background-color:rgba(var(--primary-color-rgb), .1);border:1px solid rgba(var(--primary-color-rgb), .2);border-radius:4px;padding:.1rem .35rem;font-size:.7rem;font-weight:700;display:inline-block}.template-spreadsheet-toolbar{background-color:var(--surface-color);border-bottom:1px solid var(--border-color);border-top-left-radius:var(--radius-md);border-top-right-radius:var(--radius-md);flex-shrink:0;align-items:center;gap:.5rem;padding:.5rem 1.25rem;display:flex}.template-spreadsheet-toolbar .toolbar-divider{background-color:var(--border-color);width:1px;height:20px;margin:0 .25rem}.template-spreadsheet-toolbar button.active-tool{background-color:var(--primary-color)!important;color:#fff!important;border-color:var(--primary-color)!important}.active-cell-indicator-badge{color:var(--text-secondary);background-color:rgba(var(--primary-color-rgb), .08);border-radius:var(--radius-sm);border:1px solid rgba(var(--primary-color-rgb), .15);align-items:center;gap:.25rem;padding:.25rem .5rem;font-size:.78rem;display:inline-flex}.active-cell-indicator-badge strong{color:var(--primary-color)}:root{--bg-color:#f8fafc;--surface-color:#fff;--text-primary:#0f172a;--text-secondary:#64748b;--primary-color:#3b82f6;--primary-color-rgb:59, 130, 246;--primary-hover:#2563eb;--btn-primary-text:#fff;--success-color:#10b981;--error-color:#ef4444;--border-color:#e2e8f0;--surface-hover:#f1f5f9;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--radius-sm:.375rem;--radius-md:.5rem;--radius-lg:1rem;--font-sans:"Inter", system-ui, -apple-system, sans-serif}@media (prefers-color-scheme:dark){:root{--bg-color:#0f172a;--surface-color:#1e293b;--text-primary:#f8fafc;--text-secondary:#94a3b8;--primary-color:#3b82f6;--primary-color-rgb:59, 130, 246;--primary-hover:#2563eb;--btn-primary-text:#fff;--border-color:#334155;--surface-hover:#2d3a4f;--shadow-sm:0 1px 2px 0 #0000004d;--shadow-md:0 4px 6px -1px #0000004d, 0 2px 4px -2px #0000004d;--shadow-lg:0 10px 15px -3px #0000004d, 0 4px 6px -4px #0000004d}}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-color);color:var(--text-primary);-webkit-font-smoothing:antialiased;line-height:1.5;transition:background-color .3s,color .3s}a{color:inherit;text-decoration:none}button,input,textarea{font-family:inherit}.glass{background:rgba(var(--surface-color), .7);-webkit-backdrop-filter:blur(10px);border:1px solid var(--border-color)}.fade-in{animation:.4s forwards fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.container{max-width:1200px;margin:0 auto;padding:0 1.5rem}body.presentation-mode{font-size:125%}body.presentation-mode .container{max-width:100%;padding:0 2rem}body.presentation-mode button,body.presentation-mode input,body.presentation-mode select{padding:.75em 1em;font-size:1.1em}body.presentation-mode .spreadsheet-cell input{padding:.5rem;font-size:1.2rem}body.presentation-mode .nav-links{gap:1.5rem}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0;margin:.5rem 0}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:var(--radius-md)}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}
