*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;transition:background-color .3s ease,color .3s ease}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--primary-gradient:linear-gradient(90deg,#ed0331,#87021c);--primary-color:#ed0331;--secondary-color:#87021c;--text-primary:#000;--text-secondary:#666;--text-color:#000;--bg-primary:#fff;--bg-secondary:#f5f5f5;--card-bg:#fff;--input-bg:#fff;--border-color:#e0e0e0;--shadow:#0000001a}[data-theme=dark]{--text-primary:#fff;--text-secondary:#b0b0b0;--text-color:#fff;--bg-primary:#1a1a1a;--bg-secondary:#2a2a2a;--card-bg:#1a1a1a;--input-bg:#2a2a2a;--border-color:#404040;--shadow:#0000004d;--sql-task-bg:linear-gradient(135deg,#2a2a2a,#1f1f1f);--sql-task-label-bg:#ed033126;--sql-task-label-border:#ed033159;--sql-result-success-bg:#1b3320;--sql-result-success-border:#2e7d32;--sql-result-nomatch-bg:#3d3000;--sql-result-nomatch-border:#ff8f00;--sql-result-error-bg:#3d2020;--sql-result-error-border:#c62828;--sql-result-loading-bg:#1a2835;--sql-result-loading-border:#1976d2;--sql-feedback-correct-bg:#2e7d3240;--sql-feedback-correct-text:#81c784;--sql-feedback-incorrect-bg:#ff8f0033;--sql-feedback-incorrect-text:#ffb74d;--sql-table-row-hover:#ffffff0f;--sql-error-text:#ef9a9a}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.text-success{color:#28a745;font-weight:600}.text-warning{color:#ffc107;font-weight:600}.text-danger{color:#dc3545;font-weight:600}.question-type-badge{color:#fff;font-size:.75em;font-weight:700;padding:6px 14px}.question-type-badge.mcq{background:linear-gradient(135deg,#28a745,#1e7e34)}.question-type-badge.mixed{background:linear-gradient(135deg,#6c757d,#545b62)}.table-container{animation:fadeInUp .5s ease}.btn-sm{padding:6px 12px}.btn-sm,.status-badge{font-size:.875em}.status-badge.active{box-shadow:0 2px 8px #28a7454d}.navbar{animation:fadeInDown .5s ease;background-color:var(--bg-secondary);border-bottom:2px solid;border-image:var(--primary-gradient) 1;box-shadow:0 2px 8px #00000014;padding:12px 0;position:-webkit-sticky;position:sticky;top:0;transition:all .3s ease;z-index:1000}.navbar-container{align-items:center;box-sizing:border-box;display:flex;flex-direction:row;flex-wrap:nowrap;gap:16px;margin:0 auto;max-width:100%;min-width:0;padding:0 20px;width:100%}.navbar-brand{color:var(--text-primary);flex-shrink:0;font-size:1.35rem;font-weight:700;text-decoration:none;transition:all .3s ease;white-space:nowrap}.navbar-brand:hover{transform:scale(1.05)}.navbar-menu{align-items:center;display:flex;flex:1 1 auto;flex-direction:row;flex-wrap:nowrap;gap:20px;justify-content:flex-start;min-width:0}.navbar-link{border-radius:8px;color:var(--text-primary);flex-shrink:0;font-size:1.05rem;font-weight:500;overflow:hidden;padding:10px 18px;position:relative;text-decoration:none;transition:all .3s ease;white-space:nowrap}.navbar-link-button{background:none;border:none;cursor:pointer;font-size:1em}.navbar-link:before{background:var(--primary-gradient);bottom:0;content:"";height:2px;left:50%;position:absolute;transform:translateX(-50%);transition:width .3s ease;width:0}.navbar-link:hover{background-color:var(--bg-primary);box-shadow:0 4px 8px #0000001a;color:var(--text-primary);transform:translateY(-2px)}.navbar-link:hover:before{width:80%}.navbar-user{align-items:center;display:flex;flex-direction:row;flex-shrink:0;gap:12px;margin-left:auto}.navbar-user .user-name{font-size:1.05rem;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.navbar-dropdown{position:relative}.navbar-dropdown-menu{grid-gap:6px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 12px 24px #00000026;display:grid;gap:6px;left:0;margin-top:4px;min-width:220px;padding:8px;position:absolute;top:100%;z-index:1200}.navbar-dropdown-item{border-radius:8px;color:var(--text-primary);font-size:1rem;padding:8px 12px;text-decoration:none;transition:all .2s ease}.navbar-dropdown-item:hover{background:var(--bg-primary);transform:translateX(2px)}.user-name{font-weight:500;gap:5px}.logout-btn,.theme-toggle,.user-name{align-items:center;color:var(--text-primary);display:flex}.logout-btn,.theme-toggle{background:none;border:none;border-radius:6px;cursor:pointer;font-size:1.05rem;gap:6px;padding:10px 14px;transition:all .3s ease}.logout-btn:hover,.theme-toggle:hover{background-color:var(--bg-primary);box-shadow:0 4px 8px #0000001a;transform:translateY(-2px) scale(1.05)}@media (max-width:992px){.navbar-brand{font-size:1.25rem}.navbar-link{font-size:1rem;padding:8px 12px}.navbar-menu{gap:14px}.navbar-container{gap:14px;padding:0 16px}.navbar-user .user-name{font-size:1rem;max-width:100px}}@media (max-width:768px){.navbar-container{flex-wrap:wrap;gap:10px;padding:10px 14px}.navbar-brand{font-size:18px}.navbar-menu{flex-wrap:wrap;gap:8px;justify-content:center;order:2;width:100%}.navbar-link{font-size:.9rem;padding:6px 10px}.navbar-user{gap:8px;margin-left:auto;order:1}.navbar-user .user-name{font-size:.9rem;max-width:80px}.logout-btn,.theme-toggle{font-size:14px;padding:6px 10px}.navbar-dropdown-menu{left:0;min-width:200px;right:auto}.navbar-dropdown-item{background:var(--bg-primary)}}.auth-container{align-items:center;display:flex;justify-content:center;min-height:calc(100vh - 80px);overflow:hidden;padding:20px;position:relative}.auth-container:before{animation:pulse 8s ease-in-out infinite;height:200%;left:-50%;top:-50%;width:200%}.auth-container:after,.auth-container:before{background:radial-gradient(circle,#00000003 0,#0000 70%);content:"";pointer-events:none;position:absolute}.auth-container:after{animation:pulse 10s ease-in-out infinite;bottom:-30%;height:600px;right:-30%;width:600px}.auth-card{animation:fadeInUp .6s ease;background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;box-shadow:0 8px 24px #0000001a;max-width:450px;padding:40px;position:relative;transition:all .3s ease;width:100%;z-index:1}.auth-card:hover{box-shadow:0 12px 32px #0000001f;transform:translateY(-4px)}.auth-card:before{border-radius:16px 16px 0 0;content:"";height:4px;left:0;position:absolute;right:0;top:0}.auth-card:before,.auth-title{background:var(--primary-gradient)}.auth-title{-webkit-text-fill-color:#0000;animation:fadeInDown .6s ease;-webkit-background-clip:text;background-clip:text;font-size:32px;font-weight:700;text-align:center}.auth-title,.page-title{margin-bottom:30px}.stats-grid{grid-gap:20px;animation:fadeInUp .6s ease;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:40px}.stat-card{animation:fadeInUp .5s ease;background-color:var(--bg-secondary);border:2px solid var(--border-color);border-radius:12px;box-shadow:0 2px 8px var(--shadow);color:var(--text-primary);overflow:hidden;padding:25px;position:relative;text-align:center;transition:all .3s ease}.stat-card:hover{box-shadow:0 8px 20px #0000001f;transform:translateY(-6px)}.stat-card h3{color:var(--text-secondary);font-size:16px;font-weight:500;letter-spacing:.5px;margin-bottom:12px;text-transform:uppercase}.stat-number{color:var(--text-primary);font-size:42px;font-weight:700;line-height:1.2;transition:all .3s ease}.stat-card:hover .stat-number{transform:scale(1.1)}.action-buttons{align-items:center;display:flex;flex-wrap:wrap;gap:15px;margin-top:40px}.action-buttons .btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:15px;font-weight:500;justify-content:center;min-width:140px;padding:12px 24px;text-decoration:none;transition:all .3s ease}.action-buttons .btn-primary{background:var(--primary-gradient);box-shadow:0 2px 6px #00000026;color:#fff}.action-buttons .btn-primary:hover{box-shadow:0 4px 12px #0003;opacity:.95;transform:translateY(-2px)}.action-buttons .btn-secondary{background-color:var(--bg-primary);border:2px solid var(--border-color);color:var(--text-primary)}.action-buttons .btn-secondary:hover{background-color:var(--bg-secondary);box-shadow:0 2px 8px var(--shadow);transform:translateY(-2px)}@media (max-width:768px){.stats-grid{gap:15px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.stat-card{padding:20px}.stat-number{font-size:32px}.action-buttons{flex-direction:column}.action-buttons .btn{width:100%}}.page-header{animation:fadeInDown .5s ease}.page-header-actions{align-items:center;display:flex;gap:12px}.status-badge{box-shadow:0 2px 4px #0000001a;font-size:14px;transition:all .3s ease}.status-badge:hover{box-shadow:0 4px 8px #0003;transform:translateY(-2px)}.status-badge.inactive{background:linear-gradient(135deg,#dc3545,#c82333)}.error{background:linear-gradient(135deg,#dc35451a,#c823330d);border:2px solid #dc3545;border-radius:12px;color:#dc3545}.success{background:linear-gradient(135deg,#28a7451a,#1e7e340d);border:2px solid #28a745;border-radius:12px;color:#28a745;white-space:pre-line}.container{max-width:1400px}.page-header{flex-wrap:wrap;gap:15px}.page-title{animation:fadeInDown .5s ease;color:var(--text-primary);font-size:32px;font-weight:700;margin:0}.page-subtitle{margin:5px 0 0}.btn{align-items:center;border-radius:8px;display:inline-flex;font-size:15px;gap:8px;justify-content:center;padding:12px 24px;white-space:nowrap}.btn-primary{box-shadow:0 2px 6px #00000026}.btn-primary:hover:not(:disabled){box-shadow:0 6px 16px #0003;opacity:.95;transform:translateY(-3px) scale(1.02)}.btn-secondary{border:2px solid var(--border-color)}.btn-secondary:hover:not(:disabled){box-shadow:0 2px 8px var(--shadow);transform:translateY(-2px)}.btn-danger{border:2px solid #dc3545}.btn-danger:hover:not(:disabled){background:linear-gradient(135deg,#c82333,#a71e2a);border-color:#c82333;box-shadow:0 6px 12px #dc35454d;transform:translateY(-3px)}.btn:disabled{transform:none!important}.btn-group{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.btn-group .btn{margin:0}.card{margin-bottom:20px;overflow:visible;padding:25px;z-index:1}.card:before{height:3px;transform:scaleX(0);transition:transform .3s ease;z-index:0}.card:hover{z-index:2}.card:hover:before{transform:scaleX(1)}.card-header{align-items:center;border-bottom:2px solid var(--border-color);margin-bottom:20px;padding-bottom:15px}.card-header h2{color:var(--text-primary);font-size:1.5em;margin:0}.table-container{border:1px solid var(--border-color);border-radius:8px;overflow-x:auto}.table{background-color:var(--bg-primary)}.table thead{background-color:var(--bg-secondary)}.table thead th{color:var(--text-primary);font-size:.85em;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.table th{border-bottom:2px solid var(--border-color);font-size:.9em;padding:15px;text-align:left}.table td{border-bottom:1px solid var(--border-color);color:var(--text-primary);padding:15px}.table tbody tr{position:relative;z-index:1}.table tbody tr:hover{transform:scale(1.005);z-index:2}.table tbody tr:last-child td{border-bottom:none}.status-badge{border-radius:20px;display:inline-block;font-size:.85em;font-weight:600;padding:6px 12px}.status-badge.active{background:linear-gradient(135deg,#28a745,#1e7e34);border:1px solid #28a745;color:#fff;font-weight:600}.status-badge.inactive{background:linear-gradient(135deg,#6c757d,#545b62);border:1px solid #6c757d;color:#fff;font-weight:600}.form-input,.form-select,.form-textarea{border-radius:8px;font-family:inherit;font-size:1em;padding:12px 15px}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.form-textarea{min-height:100px}.empty-state-icon{opacity:.5}.loading{align-items:center;display:flex;font-size:1.1em;justify-content:center;min-height:400px}.error-message,.success-message{align-items:center;border-radius:8px;display:flex;gap:10px;margin-bottom:20px;padding:15px 20px}.error-message{background-color:#dc35451a;border:1px solid #dc35454d;color:#dc3545}.success-message{background:linear-gradient(135deg,#28a74526,#1e7e341a);border:2px solid #28a745;color:#155724;font-weight:500;position:relative;z-index:10}[data-theme=dark] .success-message{background:linear-gradient(135deg,#28a74533,#1e7e3426);color:#90ee90}@media (max-width:768px){.container{padding:15px}.page-header{align-items:stretch;flex-direction:column}.page-title{font-size:24px}.btn-group{flex-direction:column;width:100%}.btn-group .btn{width:100%}.form-actions{flex-direction:column}.form-actions .btn{width:100%}.table-container{overflow-x:scroll}}.credits-note{color:var(--text-secondary);line-height:1.5;margin:0 0 20px}.credits-empty-state{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:16px;padding:32px;text-align:center}.credits-empty-state p{color:var(--text-secondary);line-height:1.5;margin:0 0 16px}.interview-credits .credits-table{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:16px;overflow-x:auto;padding:16px}.interview-credits .table{border-collapse:collapse;width:100%}.interview-credits .table td,.interview-credits .table th{border-bottom:1px solid var(--border-color);padding:12px 16px;text-align:left}.interview-credits .table th{color:var(--text-secondary);font-weight:600}.credits-action{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.credits-action input,.credits-input{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:1rem;padding:8px 12px;width:100px}.credits-action .btn{white-space:nowrap}.interview-ai-settings .ai-settings-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.ai-settings-card{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:16px;display:flex;flex-direction:column;gap:10px;padding:18px}.ai-settings-card p{color:var(--text-secondary);margin:0}.coming-soon-badge{align-self:flex-start;font-size:.8em;padding:4px 10px}.vendor-dashboard{animation:fadeIn .5s ease}.vendor-dashboard .page-title{-webkit-text-fill-color:#0000;animation:fadeInDown .5s ease;background:linear-gradient(135deg,#007bff,#0056b3);-webkit-background-clip:text;background-clip:text;font-size:36px;font-weight:800;margin-bottom:40px}.stats-grid-vendor{grid-gap:24px;animation:fadeInUp .6s ease;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-bottom:50px}.test-type-section{margin-bottom:40px}.test-type-section .section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.test-type-section h2{color:var(--text-primary);font-size:1.6em;font-weight:700;margin:0}.test-type-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.test-type-card{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:18px;display:flex;flex-direction:column;gap:14px;padding:20px;transition:all .3s ease}.test-type-card:hover{border-color:#007bff;box-shadow:0 12px 24px #0000001f;transform:translateY(-6px)}.test-type-card.coming-soon{opacity:.7}.test-type-card-header{align-items:center;display:flex;gap:12px}.test-type-icon{font-size:1.8em}.test-type-card-header h3{color:var(--text-primary);font-size:1.1em;margin:0}.coming-soon-badge{background:#ffe4c7;border-radius:12px;color:#8a4b00;display:inline-block;font-size:.7em;font-weight:600;margin-top:4px;padding:2px 8px}.test-type-description{color:var(--text-secondary);font-size:.9em;line-height:1.5;margin:0}.test-type-actions{display:flex;flex-wrap:wrap;gap:10px}.stat-card-vendor{animation:fadeInUp .6s ease;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:20px;overflow:visible;padding:32px 24px;position:relative;text-align:center;transition:all .4s cubic-bezier(.16,1,.3,1);z-index:1}.stat-card-vendor:before{background:linear-gradient(90deg,#007bff,#6f42c1);content:"";height:5px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .4s ease;z-index:0}.stat-card-vendor:hover{border-color:#007bff;box-shadow:0 20px 40px #007bff26;transform:translateY(-8px) scale(1.03);z-index:2}.stat-card-vendor:hover:before{transform:scaleX(1)}.stat-card-vendor.tests{background:linear-gradient(135deg,#007bff0d,#0056b305)}.stat-card-vendor.students{background:linear-gradient(135deg,#28a7450d,#1e7e3405)}.stat-card-vendor.results{background:linear-gradient(135deg,#6f42c10d,#5a32a305)}.stat-card-vendor.completed{background:linear-gradient(135deg,#117ab80d,#0d6efd05)}.stat-card-vendor h3{color:var(--text-secondary);font-size:.9em;font-weight:600;letter-spacing:1px;margin:0 0 16px;text-transform:uppercase}.stat-number-vendor{font-size:3em;font-weight:800;line-height:1.2;margin:0;transition:all .3s ease}.stat-card-vendor.tests .stat-number-vendor,.stat-number-vendor{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#007bff,#0056b3);-webkit-background-clip:text;background-clip:text}.stat-card-vendor.students .stat-number-vendor{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#28a745,#1e7e34);-webkit-background-clip:text;background-clip:text}.stat-card-vendor.results .stat-number-vendor{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#6f42c1,#5a32a3);-webkit-background-clip:text;background-clip:text}.stat-card-vendor:hover .stat-number-vendor{transform:scale(1.1)}.action-buttons-vendor{grid-gap:20px;animation:fadeInUp .8s ease;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:40px}.action-card{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:16px;color:inherit;display:block;overflow:visible;padding:24px;position:relative;text-align:center;text-decoration:none;transition:all .4s cubic-bezier(.16,1,.3,1);z-index:1}.action-card:before{background:linear-gradient(90deg,#007bff,#6f42c1);content:"";height:4px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .4s ease;z-index:0}.action-card:hover{border-color:#007bff;box-shadow:0 12px 28px #00000026;color:inherit;text-decoration:none;transform:translateY(-6px) scale(1.02);z-index:2}.action-card:hover:before{transform:scaleX(1)}.action-card-primary{background:linear-gradient(135deg,#007bff0d,#0056b305);border-color:#007bff}.action-card-primary:before{background:linear-gradient(90deg,#007bff,#0056b3)}.action-card-icon{display:block;font-size:2.5em;margin-bottom:12px}.action-card-title{color:var(--text-primary);font-size:1.1em;font-weight:700;margin:0}.action-card-primary .action-card-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#007bff,#0056b3);-webkit-background-clip:text;background-clip:text}@media (max-width:768px){.stats-grid-vendor{grid-template-columns:repeat(2,1fr)}.action-buttons-vendor{grid-template-columns:1fr}}.form-row{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:20px}.questions-section{background:#f5f5f5;background:var(--bg-secondary,#f5f5f5);border-radius:8px;margin:40px 0;padding:20px}.section-header h2{color:#333;color:var(--text-primary,#333)}.question-stats{color:#666;color:var(--text-secondary,#666);display:flex;font-size:14px;gap:15px}.question-stats span{background:#fff;background:var(--bg-primary,#fff);border-radius:5px;padding:5px 10px}.search-bar{margin-bottom:20px}.search-input{border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:5px;font-size:16px;padding:12px;width:100%}.question-tabs{border-bottom:2px solid #ddd;border-bottom:2px solid var(--border-color,#ddd);display:flex;gap:10px;margin-bottom:20px}.tab-btn{background:#0000;border:none;border-bottom:3px solid #0000;color:#666;color:var(--text-secondary,#666);cursor:pointer;font-size:16px;font-weight:600;padding:12px 24px;position:relative;transition:all .3s ease}.tab-btn:after{background:var(--primary-gradient);bottom:-3px;content:"";height:3px;left:0;position:absolute;transition:width .3s ease;width:0}.tab-btn:hover{transform:translateY(-2px)}.tab-btn.active,.tab-btn:hover{color:#ed0331;color:var(--primary-color,#ed0331)}.tab-btn.active:after{width:100%}.questions-grid{min-height:400px}.question-list{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.question-card{animation:fadeInUp .5s ease;background:#fff;background:var(--bg-primary,#fff);border:2px solid #ddd;border:2px solid var(--border-color,#ddd);overflow:hidden;padding:24px;position:relative;transition:all .3s ease}.question-card:before{background:linear-gradient(90deg,#007bff,#0056b3);content:"";height:3px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s ease}.question-card:hover{border-color:#007bff;box-shadow:0 8px 20px #0000001f;transform:translateY(-4px)}.question-card:hover:before{transform:scaleX(1)}.question-header{align-items:start;margin-bottom:10px}.question-header h4{color:#333;color:var(--text-primary,#333);flex:1 1;font-size:16px;margin:0}.difficulty-badge{box-shadow:0 2px 4px #0000001a;font-size:12px;font-weight:600;padding:4px 12px;padding:6px 14px;text-transform:uppercase;transition:all .3s ease}.difficulty-badge.easy{background:linear-gradient(135deg,#28a745,#1e7e34)}.difficulty-badge.medium{background:linear-gradient(135deg,#ffc107,#e0a800);color:#fff}.difficulty-badge.hard{background:linear-gradient(135deg,#dc3545,#c82333)}.difficulty-badge:hover{box-shadow:0 4px 8px #0003;transform:translateY(-2px)}.question-preview{font-size:14px;line-height:1.5}.question-meta,.question-preview{color:#666;color:var(--text-secondary,#666);margin:10px 0}.question-meta{display:flex;font-size:12px;gap:15px}.btn-sm{font-size:14px}.selected-questions-section{background:#f5f5f5;background:var(--bg-secondary,#f5f5f5);border-radius:8px;margin:40px 0;padding:20px}.selected-questions-section h2{color:#333;color:var(--text-primary,#333);margin-bottom:20px}.selected-questions-list{display:flex;flex-direction:column;gap:15px}.selected-question-item{align-items:center;animation:slideInRight .5s ease;background:#fff;background:var(--bg-primary,#fff);border:2px solid #ddd;border:2px solid var(--border-color,#ddd);border-radius:12px;display:flex;justify-content:space-between;overflow:hidden;padding:20px;position:relative;transition:all .3s ease}.selected-question-item:before{background:linear-gradient(180deg,#28a745,#1e7e34);bottom:0;content:"";left:0;position:absolute;top:0;transform:scaleY(0);transition:transform .3s ease;width:4px}.selected-question-item:hover{border-color:#28a745;box-shadow:0 4px 12px #0000001a;transform:translateX(4px)}.selected-question-item:hover:before{transform:scaleY(1)}.question-info{align-items:center;display:flex;flex:1 1;gap:15px}.question-number{align-items:center;animation:pulse 2s ease-in-out infinite;background:var(--primary-gradient);border-radius:50%;box-shadow:0 4px 8px #ed033133;color:#fff;display:flex;font-size:18px;font-weight:700;height:44px;justify-content:center;transition:all .3s ease;width:44px}.question-number:hover{box-shadow:0 6px 12px #ed03314d;transform:scale(1.1) rotate(5deg)}.question-details{flex:1 1}.question-details h4{color:#333;color:var(--text-primary,#333);margin:0 0 5px}.question-type-badge{border-radius:5px;font-size:12px;padding:4px 10px;transition:all .3s ease}.question-type-badge.coding{background:linear-gradient(135deg,#007bff,#0056b3);box-shadow:0 2px 4px #007bff33;color:#fff}.question-type-badge.mcq{background:linear-gradient(135deg,#6f42c1,#5a32a3);box-shadow:0 2px 4px #6f42c133;color:#fff}.question-type-badge.aptitude{background:linear-gradient(135deg,#2e7d32,#1b5e20);box-shadow:0 2px 4px #2e7d3233;color:#fff}.question-type-badge:hover{box-shadow:0 4px 8px #0003;transform:translateY(-2px)}.question-controls{gap:10px}.points-input,.question-controls{align-items:center;display:flex}.points-input label{color:#666;color:var(--text-secondary,#666);font-size:14px;margin-right:5px}.points-input input{border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:4px;padding:6px}.move-buttons{display:flex;flex-direction:column;gap:2px}.move-buttons button{min-width:30px;padding:4px 8px}.form-actions{border-top:1px solid #ddd;border-top:1px solid var(--border-color,#ddd);margin-top:30px}.empty-state,.no-questions{color:#666;color:var(--text-secondary,#666);padding:40px;text-align:center}.empty-state{padding:20px}[data-theme=dark] .question-card,[data-theme=dark] .selected-question-item{background:#2a2a2a;border-color:#444}[data-theme=dark] .questions-section,[data-theme=dark] .selected-questions-section{background:#1e1e1e}[data-theme=dark] .search-input{background:#2a2a2a;border-color:#444;color:#fff}[data-theme=dark] .tab-btn{color:#aaa}[data-theme=dark] .tab-btn.active{color:#ed0331}.test-list-page{animation:fadeIn .5s ease}.tests-grid-modern{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));margin-top:30px}.test-card-list{animation:fadeInUp .6s ease;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:20px;display:flex;flex-direction:column;gap:20px;overflow:visible;padding:28px;position:relative;transition:all .4s cubic-bezier(.16,1,.3,1);z-index:1}.test-card-list:before{background:linear-gradient(90deg,#007bff,#6f42c1);content:"";height:5px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .4s ease;z-index:0}.test-card-list:hover{border-color:#007bff;box-shadow:0 20px 40px #00000026;transform:translateY(-8px) scale(1.01);z-index:2}.test-card-list:hover:before{transform:scaleX(1)}.test-card-header-list{align-items:flex-start;display:flex;gap:15px;justify-content:space-between}.test-title-list{flex:1 1}.test-title-list h3{color:var(--text-primary);font-size:1.4em;font-weight:700;line-height:1.3;margin:0 0 12px}.test-type-badge-modern.theory{background:linear-gradient(135deg,#6c757d,#495057)}.test-type-filter-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));margin:20px 0 10px}.test-type-filter-card{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:14px;cursor:pointer;display:flex;flex-direction:column;gap:6px;padding:16px;text-align:left;transition:all .3s ease}.test-type-filter-card:hover{border-color:#007bff;transform:translateY(-4px)}.test-type-filter-card.active{border-color:#007bff;box-shadow:0 10px 20px #007bff26}.filter-title{color:var(--text-secondary);font-size:.85em;font-weight:700}.filter-count{color:var(--text-primary);font-size:1.5em;font-weight:800}.status-badge-modern.active{background:linear-gradient(135deg,#28a745,#1e7e34);color:#fff}.status-badge-modern.inactive{background:linear-gradient(135deg,#6c757d,#545b62);color:#fff}.status-badge-modern:hover{box-shadow:0 4px 8px #0003;transform:translateY(-2px)}.test-meta-list{border-top:2px solid var(--border-color);display:flex;flex-wrap:wrap;gap:16px;margin-top:16px;padding-top:16px}.test-meta-item-list{align-items:center;color:var(--text-secondary);display:flex;font-size:.9em;gap:8px}.test-meta-item-list strong{color:var(--text-primary);font-weight:600}.test-actions-list{border-top:2px solid var(--border-color);display:flex;flex-wrap:wrap;gap:10px;margin-top:auto;padding-top:16px}.test-action-btn-list{border-radius:10px;flex:1 1;font-size:.9em;font-weight:600;min-width:100px;padding:10px 16px;text-align:center;text-decoration:none;transition:all .3s ease}.test-action-btn-list.btn-primary{background:linear-gradient(135deg,#007bff,#0056b3);box-shadow:0 4px 8px #007bff33;color:#fff}.test-action-btn-list.btn-primary:hover{box-shadow:0 6px 16px #007bff4d;transform:translateY(-2px)}.test-action-btn-list.btn-secondary{background:var(--bg-primary);border:2px solid var(--border-color);color:var(--text-primary)}.test-action-btn-list.btn-secondary:hover{background:var(--bg-secondary);box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.test-action-btn-list.btn-danger{background:linear-gradient(135deg,#dc3545,#c82333);border:none;color:#fff}.test-action-btn-list.btn-danger:hover{box-shadow:0 6px 16px #dc35454d;transform:translateY(-2px)}.empty-state-modern{animation:fadeInUp .6s ease;background:linear-gradient(135deg,var(--bg-secondary) 0,var(--bg-primary) 100%);border:3px dashed var(--border-color);border-radius:24px;overflow:hidden;padding:80px 40px;position:relative;text-align:center}.empty-state-modern:before{animation:pulse 8s ease-in-out infinite;background:radial-gradient(circle,#007bff08 0,#0000 70%);content:"";height:200%;left:-50%;position:absolute;top:-50%;width:200%}.empty-state-icon-modern{animation:pulse 3s ease-in-out infinite;font-size:5em;margin-bottom:24px;opacity:.6;position:relative;z-index:1}.empty-state-modern h2{color:var(--text-primary);font-size:1.8em;font-weight:700;margin-bottom:12px;position:relative;z-index:1}.empty-state-modern p{color:var(--text-secondary);font-size:1.1em;margin-bottom:24px;position:relative;z-index:1}@media (max-width:768px){.tests-grid-modern{grid-template-columns:1fr}.test-card-list{padding:20px}.test-actions-list{flex-direction:column}.test-action-btn-list{width:100%}}.student-management-page{animation:fadeIn .5s ease}.filter-section-modern{align-items:center;animation:fadeInDown .5s ease;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:16px;display:flex;flex-wrap:wrap;gap:20px;margin-bottom:30px;padding:24px}.filter-section-modern label{align-items:center;color:var(--text-primary);display:flex;font-weight:600;gap:8px}.filter-section-modern select{background:var(--bg-primary);border:2px solid var(--border-color);border-radius:10px;color:var(--text-primary);cursor:pointer;font-size:1em;padding:10px 16px;transition:all .3s ease}.filter-section-modern select:hover{border-color:#007bff}.filter-section-modern select:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff1a;outline:none}.action-buttons-student{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px}.form-card-modern{animation:fadeInUp .6s ease;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:20px;margin-bottom:30px;overflow:hidden;padding:28px;position:relative}.form-card-modern:before{background:linear-gradient(90deg,#007bff,#6f42c1);content:"";height:5px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s ease}.form-card-modern:hover:before{transform:scaleX(1)}.form-card-modern h2{border-bottom:2px solid var(--border-color);color:var(--text-primary);font-size:1.6em;font-weight:700;margin-bottom:24px;margin-top:0;padding-bottom:16px}.students-table-card{animation:fadeInUp .8s ease;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:20px;overflow:hidden;padding:28px;position:relative}.students-table-card:before{background:linear-gradient(90deg,#007bff,#6f42c1);content:"";height:5px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.students-table-card:hover:before{opacity:1}.student-table-modern{border-collapse:initial;border-spacing:0;width:100%}.student-table-modern thead th{background-color:var(--bg-primary);border-bottom:2px solid var(--border-color);color:var(--text-primary);font-size:.85em;font-weight:600;letter-spacing:.5px;padding:16px;text-transform:uppercase}.student-table-modern tbody tr{transition:all .2s ease}.student-table-modern tbody tr:hover{background-color:var(--bg-secondary);transform:scale(1.01)}.student-table-modern tbody td{border-bottom:1px solid var(--border-color);padding:16px}.classroom-badges{display:flex;flex-wrap:wrap;gap:6px}.classroom-badge-item{background:linear-gradient(135deg,#007bff,#0056b3);border-radius:8px;color:#fff;font-size:.8em;font-weight:600;padding:4px 10px}@media (max-width:768px){.filter-section-modern{align-items:stretch;flex-direction:column}.action-buttons-student{flex-direction:column}.students-table-card{overflow-x:auto}}.modal-overlay{animation:fadeIn .3s ease;background-color:#000000b3;bottom:0;left:0;right:0;top:0}[data-theme=dark] .modal-overlay{background-color:#000000d9}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{animation:slideUp .4s cubic-bezier(.16,1,.3,1);background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:16px;box-shadow:0 12px 40px #00000026;max-height:85vh;max-width:600px;overflow-y:auto;position:relative;width:90%}.modal-content:before{background:var(--primary-gradient);border-radius:16px 16px 0 0;content:"";height:4px;left:0;position:absolute;right:0;top:0}@keyframes slideUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.modal-header{align-items:center;animation:fadeInDown .4s ease;background-color:var(--bg-secondary);border-bottom:2px solid var(--border-color);border-radius:16px 16px 0 0;display:flex;justify-content:space-between;padding:20px 25px}.modal-header h3{color:var(--text-primary);font-size:1.4em;font-weight:700;margin:0}.modal-close{align-items:center;background:none;border:none;border-radius:6px;color:var(--text-secondary);cursor:pointer;display:flex;font-size:28px;height:32px;justify-content:center;line-height:1;padding:0;transition:all .2s;width:32px}.modal-close:hover{background-color:var(--bg-secondary);box-shadow:0 4px 8px #0000001a;transform:rotate(90deg) scale(1.1)}.modal-body{background-color:var(--bg-primary);color:var(--text-primary);font-size:1em;line-height:1.8;padding:25px}.modal-footer{background-color:var(--bg-secondary);border-radius:0 0 12px 12px;border-top:2px solid var(--border-color);display:flex;gap:10px;justify-content:flex-end;padding:15px 25px}.modal-info{border-left:4px solid #007bff}.modal-info .modal-header{background:linear-gradient(135deg,#007bff1a,#007bff0d);border-left-color:#007bff}.modal-success{border-left:4px solid #28a745}.modal-success .modal-header{background:linear-gradient(135deg,#28a7451a,#28a7450d);border-left-color:#28a745}.modal-success .modal-header h3{color:#28a745}.modal-error{border-left:4px solid #dc3545}.modal-error .modal-header{background:linear-gradient(135deg,#dc35451a,#dc35450d);border-left-color:#dc3545}.modal-error .modal-header h3{color:#dc3545}.modal-warning{border-left:4px solid #ffc107}.modal-warning .modal-header{background:linear-gradient(135deg,#ffc1071a,#ffc1070d);border-left-color:#ffc107}.modal-warning .modal-header h3{color:#856404}.modal-body pre{overflow-x:auto;padding:12px 15px}.modal-body .code-output,.modal-body pre{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-family:Courier New,Monaco,Consolas,monospace;font-size:.9em;margin:10px 0}.modal-body .code-output{word-wrap:break-word;padding:15px;white-space:pre-wrap}.modal-body .error-output{background-color:#dc35451a;border:1px solid #dc35454d;border-radius:6px;color:#dc3545}.modal-body .error-output,.modal-body .success-output{word-wrap:break-word;font-family:Courier New,Monaco,Consolas,monospace;font-size:.9em;margin:10px 0;padding:15px;white-space:pre-wrap}.modal-body .success-output{background-color:#28a7451a;border:1px solid #28a7454d;border-radius:6px;color:#28a745}.modal-body .test-result-summary{background-color:var(--bg-secondary);border:2px solid var(--border-color);border-radius:8px;box-shadow:0 2px 8px #0000001a;margin:15px 0;padding:20px}.modal-body .test-result-summary.success{background:linear-gradient(135deg,#28a74526,#28a74514);border-color:#28a74566;color:var(--text-primary)}.modal-body .test-result-summary.warning{background:linear-gradient(135deg,#ffc10726,#ffc10714);border-color:#ffc10766;color:var(--text-primary)}.modal-body .test-result-summary.error{background:linear-gradient(135deg,#dc354526,#dc354514);border-color:#dc354566;color:var(--text-primary)}.modal-body .test-result-stats{align-items:center;border-top:1px solid var(--border-color);display:flex;flex-wrap:wrap;gap:20px;margin-top:15px;padding-top:15px}.modal-body .test-result-stats .stat-item{align-items:center;background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);display:flex;font-size:1em;font-weight:600;gap:8px;padding:8px 12px}.modal-body .test-result-stats .stat-item[style*="color: #28a745"]{color:#28a745!important}.modal-body .test-result-stats .stat-item[style*="color: #dc3545"]{color:#dc3545!important}.modal-body .test-result-stats .stat-icon{font-size:1.2em;font-weight:700}.modal-body .test-result-summary p{color:var(--text-secondary);margin:0;opacity:.9}.modal-body p{color:var(--text-primary);margin:10px 0}.modal-body strong{color:var(--text-primary);font-weight:600}[data-theme=dark] .modal-body .error-output{background-color:#dc354533;border-color:#dc354580;color:#f48771}[data-theme=dark] .modal-body .success-output{background-color:#28a74533;border-color:#28a74580;color:#71f487}[data-theme=dark] .modal-body .code-output{background-color:var(--bg-secondary);border-color:var(--border-color);color:var(--text-primary)}[data-theme=dark] .modal-body .test-result-summary.success{background:linear-gradient(135deg,#28a74533,#28a7451a);border-color:#28a74580}[data-theme=dark] .modal-body .test-result-summary.warning{background:linear-gradient(135deg,#ffc10733,#ffc1071a);border-color:#ffc10780}[data-theme=dark] .modal-body .test-result-summary.error{background:linear-gradient(135deg,#dc354533,#dc35451a);border-color:#dc354580}[data-theme=dark] .modal-body .test-result-stats .stat-item{background-color:var(--bg-primary);border-color:var(--border-color)}[data-theme=dark] .modal-info .modal-header{background:linear-gradient(135deg,#007bff33,#007bff1a)}[data-theme=dark] .modal-success .modal-header{background:linear-gradient(135deg,#28a74533,#28a7451a)}[data-theme=dark] .modal-error .modal-header{background:linear-gradient(135deg,#dc354533,#dc35451a)}[data-theme=dark] .modal-warning .modal-header{background:linear-gradient(135deg,#ffc10733,#ffc1071a)}.create-coding-question{margin:0 auto;max-width:1200px;padding:20px}.form-section{animation:fadeInUp .5s ease;overflow:hidden;position:relative}.form-section:before{background:linear-gradient(90deg,#007bff,#0056b3);content:"";height:3px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.form-section:hover:before{opacity:1}.section-description{font-size:.9em;margin-bottom:20px}.form-row{grid-template-columns:1fr 1fr}.language-checkboxes{display:flex;flex-wrap:wrap;gap:20px}.language-checkbox{align-items:center;background:var(--bg-primary);border:2px solid var(--border-color);border-radius:10px;cursor:pointer;display:flex;gap:10px;padding:12px 18px;transition:all .3s ease}.language-checkbox:hover{background:linear-gradient(135deg,#007bff1a,#0056b30d);border-color:#007bff;box-shadow:0 4px 8px #007bff26;transform:translateY(-2px)}.language-checkbox input[type=checkbox]{accent-color:var(--primary-color);cursor:pointer;height:18px;width:18px}.language-checkbox input[type=checkbox]:checked+.language-label{color:var(--primary-color);font-weight:600}.language-label{color:var(--text-primary);font-size:.95em;-webkit-user-select:none;user-select:none}.checkbox-label{align-items:center;cursor:pointer;display:flex;font-weight:400;gap:8px}.checkbox-label input[type=checkbox]{accent-color:var(--primary-color);cursor:pointer;height:18px;width:18px}.test-cases-container{display:flex;flex-direction:column;gap:20px}.test-case-card{animation:fadeInUp .5s ease;background-color:var(--bg-primary);border:2px solid var(--border-color);border-radius:12px;overflow:hidden;padding:24px;position:relative;transition:all .3s ease}.test-case-card:before{background:var(--border-color);bottom:0;content:"";left:0;position:absolute;top:0;transition:all .3s ease;width:4px}.test-case-card.test-case-passed{background:linear-gradient(135deg,#28a74514,#1e7e340d);border-color:#28a745}.test-case-card.test-case-passed:before{background:linear-gradient(180deg,#28a745,#1e7e34)}.test-case-card.test-case-failed{background:linear-gradient(135deg,#dc354514,#c823330d);border-color:#dc3545}.test-case-card.test-case-failed:before{background:linear-gradient(180deg,#dc3545,#c82333)}.test-case-card:hover{box-shadow:0 6px 16px #0000001a;transform:translateY(-2px)}.test-case-header{border-bottom:1px solid var(--border-color);margin-bottom:15px;padding-bottom:15px}.test-case-header h3{color:var(--text-primary);font-size:1.1em;margin:0}.test-case-actions{align-items:center;display:flex;gap:10px}.test-status-badge{border-radius:12px;font-size:.85em;font-weight:700;padding:4px 12px}.test-status-badge.passed{background-color:#28a745;color:#fff}.test-status-badge.failed{background-color:#dc3545;color:#fff}.test-case-content{gap:15px}.test-result-box{border:2px solid;border-radius:6px;margin-top:15px;padding:15px}.test-result-box.result-passed{background-color:#28a7451a;border-color:#28a745}.test-result-box.result-failed{background-color:#dc35451a;border-color:#dc3545}.test-result-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.test-status{border-radius:12px;font-size:.85em;font-weight:700;padding:4px 12px}.test-status.passed{background-color:#28a745;color:#fff}.test-status.failed{background-color:#dc3545;color:#fff}.test-result-details{display:flex;flex-direction:column;font-size:.9em;gap:10px}.test-result-details pre{background-color:var(--input-bg);border-radius:4px;font-family:Courier New,Courier,monospace;font-size:.9em;margin-top:5px;overflow-x:auto;padding:10px;white-space:pre-wrap;word-break:break-all}.test-error{color:#dc3545}.test-execution-time{color:var(--text-secondary);font-size:.85em;margin-top:10px}.test-code-section{background:linear-gradient(135deg,#ed03310d,#87021c0d);border:2px solid var(--primary-color)}.test-code-container{display:flex;flex-direction:column;gap:20px}.code-editor-wrapper{border:1px solid var(--border-color);border-radius:6px;overflow:hidden}.test-actions{display:flex;gap:10px}.starter-code-container{display:flex;flex-direction:column;gap:25px}.starter-code-item{display:flex;flex-direction:column;gap:10px}.starter-code-label{color:var(--text-primary);font-size:1em;font-weight:600}.empty-state{border-radius:8px;padding:40px}@media (max-width:768px){.form-row{grid-template-columns:1fr}.language-checkboxes,.test-case-header{flex-direction:column}.test-case-header{align-items:flex-start;gap:10px}.form-actions{flex-direction:column}.form-actions .btn{width:100%}}.create-mcq-question{margin:0 auto;max-width:1000px;padding:20px}.question-form{display:flex;flex-direction:column;gap:30px}.form-section{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:25px}.section-title{color:var(--text-primary);font-size:1.5em;font-weight:600;margin:0 0 10px}.form-row{grid-gap:20px;gap:20px}.form-group.full-width{grid-column:1/-1}.form-group label{margin-bottom:8px}.form-input,.form-select,.form-textarea{background-color:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:.95em;padding:10px 12px;transition:all .2s ease;width:100%}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #ed03311a;outline:none}.form-textarea{font-family:inherit}.options-container{display:flex;flex-direction:column;gap:15px}.option-card{animation:fadeInUp .5s ease;background-color:var(--bg-primary);border:2px solid var(--border-color);border-radius:12px;overflow:hidden;padding:24px;position:relative;transition:all .3s ease}.option-card:before{background:var(--border-color);bottom:0;content:"";left:0;position:absolute;top:0;transition:all .3s ease;width:4px}.option-card.option-correct{background:linear-gradient(135deg,#28a7451a,#1e7e340d);border-color:#28a745}.option-card.option-correct:before{background:linear-gradient(180deg,#28a745,#1e7e34)}.option-card:hover{box-shadow:0 6px 16px #0000001a;transform:translateY(-2px)}.option-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;margin-bottom:15px;padding-bottom:15px}.option-number{color:var(--text-primary);font-size:1em;font-weight:600}.option-actions{align-items:center;display:flex;gap:15px}.correct-checkbox{align-items:center;border-radius:6px;cursor:pointer;display:flex;gap:8px;padding:6px 12px;transition:all .2s ease}.correct-checkbox:hover{background-color:#28a7451a}.correct-checkbox input[type=checkbox]{accent-color:#28a745;cursor:pointer;height:18px;width:18px}.correct-label{color:var(--text-primary);font-size:.9em;font-weight:500;-webkit-user-select:none;user-select:none}.correct-checkbox input[type=checkbox]:checked+.correct-label{color:#28a745;font-weight:600}.btn-icon{border-radius:4px}.option-content{display:flex;flex-direction:column}.option-textarea{min-height:80px;width:100%}@media (max-width:768px){.form-row{grid-template-columns:1fr}.option-header{align-items:flex-start;flex-direction:column;gap:10px}.option-actions{justify-content:space-between;width:100%}.form-actions{flex-direction:column}.form-actions .btn{width:100%}}.create-aptitude-question .question-form{display:flex;flex-direction:column;gap:20px}.create-aptitude-question .form-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:20px}.create-aptitude-question .section-title{color:var(--text-primary);font-size:18px;margin-bottom:16px}.create-aptitude-question .form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:16px}.create-aptitude-question .form-group{display:flex;flex-direction:column;gap:8px}.create-aptitude-question .form-group.full-width{grid-column:1/-1}.create-aptitude-question .form-input,.create-aptitude-question .form-select,.create-aptitude-question .form-textarea{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:14px;padding:10px 12px}.create-aptitude-question .options-container{display:flex;flex-direction:column;gap:12px}.create-aptitude-question .option-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:12px}.create-aptitude-question .option-card.option-correct{background:#4caf5014;border-color:#4caf50}.create-aptitude-question .option-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.create-aptitude-question .option-actions{align-items:center;display:flex;gap:12px}.create-aptitude-question .correct-checkbox,.create-aptitude-question .correct-radio{align-items:center;color:var(--text-secondary);display:flex;font-size:13px;gap:6px}.create-aptitude-question .option-textarea{min-height:70px}.create-aptitude-question .form-actions{display:flex;gap:12px;justify-content:flex-end}.question-list-page{animation:fadeIn .5s ease}.question-list-header{margin-bottom:8px}.questions-page-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:14px;margin-bottom:20px;padding:20px 24px}.questions-page-section .section-heading{color:var(--text-primary);font-size:1.05em;font-weight:700;margin:0 0 6px}.questions-page-section .section-desc{color:var(--text-secondary);font-size:.88em;line-height:1.4;margin:0 0 14px}.questions-page-section.create-section .create-question-row{margin-top:4px}.questions-page-section .tabs-container-modern{margin-bottom:0}.create-question-row{align-items:center;display:flex;flex-direction:row;flex-wrap:wrap;gap:10px}.create-question-btn{align-items:center;background:var(--bg-primary);border:2px solid var(--border-color);border-radius:10px;box-shadow:0 1px 3px #0000000f;color:var(--text-primary);display:inline-flex;font-size:.9em;font-weight:600;gap:8px;padding:10px 14px;text-decoration:none;transition:all .2s ease;white-space:nowrap}.create-question-btn:hover{background:linear-gradient(135deg,#007bff14,#6f42c10f);border-color:#007bff;box-shadow:0 4px 12px #007bff26;transform:translateY(-2px)}.create-question-icon{font-size:1.1em;line-height:1}.create-question-text{line-height:1}.tabs-container-modern{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:30px}.tab-button-modern{background:var(--bg-primary);border:2px solid var(--border-color);border-radius:12px;color:var(--text-primary);cursor:pointer;font-size:1em;font-weight:600;overflow:hidden;padding:14px 28px;position:relative;transition:all .3s ease}.tab-button-modern:before{background:linear-gradient(90deg,#007bff,#6f42c1);content:"";height:4px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s ease}.tab-button-modern:hover{border-color:#007bff;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.tab-button-modern.active{background:linear-gradient(135deg,#007bff,#0056b3);border-color:#0000;box-shadow:0 4px 12px #007bff33;color:#fff}.tab-button-modern.active:before{display:none}.questions-table-card{animation:fadeInUp .6s ease;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:20px;margin-top:30px;overflow:visible;padding:28px;position:relative;transition:all .3s ease;z-index:1}.questions-table-card:before{background:linear-gradient(90deg,#007bff,#6f42c1);content:"";height:5px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.questions-table-card:hover:before{opacity:1}.question-table-modern{border-collapse:initial;border-spacing:0;width:100%}.question-table-modern thead th{background-color:var(--bg-primary);border-bottom:2px solid var(--border-color);color:var(--text-primary);font-size:.85em;font-weight:600;letter-spacing:.5px;padding:16px;text-transform:uppercase}.question-table-modern tbody tr{transition:all .2s ease}.question-table-modern tbody tr:hover{background-color:var(--bg-secondary);transform:scale(1.01)}.question-table-modern tbody td{border-bottom:1px solid var(--border-color);padding:16px}.difficulty-badge-table{border-radius:12px;display:inline-block;font-size:.8em;font-weight:700;padding:6px 14px;text-transform:uppercase}.difficulty-badge-table.easy{background:linear-gradient(135deg,#28a745,#1e7e34);color:#fff}.difficulty-badge-table.medium{background:linear-gradient(135deg,#ffc107,#e0a800);color:#fff}.difficulty-badge-table.hard{background:linear-gradient(135deg,#dc3545,#c82333);color:#fff}.languages-list{display:flex;flex-wrap:wrap;gap:6px}.language-tag{background:linear-gradient(135deg,#007bff1a,#0056b30d);border:1px solid #007bff4d;border-radius:8px;color:#007bff;font-size:.8em;font-weight:600;padding:4px 10px}.read-only-badge{background:linear-gradient(135deg,#6c757d1a,#545b620d);border:1px solid #6c757d4d;border-radius:10px;color:var(--text-secondary);font-size:.85em;font-weight:600;padding:6px 12px}@media (max-width:768px){.questions-page-section{padding:16px}.create-question-row{width:100%}.create-question-btn{font-size:.85em;padding:10px 12px}.source-tabs,.type-tabs{flex-direction:column}.source-tabs .tab-button-modern,.type-tabs .tab-button-modern{width:100%}.tabs-container-modern{flex-direction:column}.tab-button-modern{width:100%}.questions-table-card{overflow-x:auto}}.analytics-page{max-width:1600px}.charts-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fit,minmax(500px,1fr));margin-bottom:30px}.chart-card{min-height:400px}.classrooms-grid{grid-gap:20px;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-top:20px}.classroom-card{background-color:var(--bg-primary);border-radius:12px;cursor:pointer;padding:20px}.classroom-card:hover{border-color:var(--primary-color);box-shadow:0 8px 24px #00000026;transform:translateY(-5px)}.classroom-card-header h3{color:var(--text-primary);font-size:1.3em;margin:0 0 8px}.classroom-description{margin:0 0 15px}.classroom-stats{flex-direction:column;gap:10px;margin-bottom:15px}.classroom-stats .stat-item{align-items:center;background-color:var(--bg-secondary);border-radius:6px;display:flex;justify-content:space-between;padding:8px 12px}.classroom-stats .stat-label{color:var(--text-secondary);font-size:.9em}.classroom-stats .stat-value{color:var(--text-primary);font-size:1em;font-weight:600}.classroom-stats .stat-value.highlight{color:var(--primary-color);font-size:1.1em}.student-details-modal{max-width:100%}.modal-stats{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:20px}.stat-box{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:15px;text-align:center}.stat-box .stat-label{color:var(--text-secondary);display:block;font-size:.85em;margin-bottom:8px}.stat-box .stat-value-large{color:var(--primary-color);display:block;font-size:1.8em;font-weight:700}.status-badge.warning{background-color:#ffc1071a;border:1px solid #ffc1074d;color:#ffc107}@media (max-width:768px){.charts-grid,.classrooms-grid{grid-template-columns:1fr}.modal-stats{grid-template-columns:repeat(2,1fr)}}.settings-page{animation:fadeIn .5s ease}.settings-card-modern{animation:fadeInUp .6s ease;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:20px;margin-bottom:30px;overflow:hidden;padding:28px;position:relative}.settings-card-modern:before{background:linear-gradient(90deg,#007bff,#6f42c1);content:"";height:5px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s ease}.settings-card-modern:hover:before{transform:scaleX(1)}.settings-card-modern h2{border-bottom:2px solid var(--border-color);color:var(--text-primary);font-size:1.6em;font-weight:700;margin-bottom:24px;margin-top:0;padding-bottom:16px}.logo-preview{background:var(--bg-primary);border:2px solid var(--border-color);border-radius:12px;margin-bottom:20px;max-height:200px;max-width:200px;padding:8px;transition:all .3s ease}.logo-preview:hover{box-shadow:0 8px 20px #00000026;transform:scale(1.05)}.color-input-group{align-items:center;background:var(--bg-primary);border:2px solid var(--border-color);border-radius:12px;display:flex;gap:16px;margin-bottom:20px;padding:16px}.color-input-group label{color:var(--text-primary);font-weight:600;min-width:150px}.color-input-group input[type=color]{border:2px solid var(--border-color);border-radius:8px;cursor:pointer;height:40px;transition:all .3s ease;width:60px}.color-input-group input[type=color]:hover{box-shadow:0 4px 12px #00000026;transform:scale(1.1)}.color-preview{border-radius:8px;color:#fff;font-weight:600;padding:8px 16px;text-shadow:0 1px 2px #0003}@media (max-width:768px){.color-input-group{align-items:flex-start;flex-direction:column}}.assign-test-page{animation:fadeIn .5s ease}.assign-card-modern{animation:fadeInUp .6s ease;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:20px;overflow:hidden;padding:28px;position:relative}.assign-card-modern:before{background:linear-gradient(90deg,#007bff,#6f42c1);content:"";height:5px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s ease}.assign-card-modern:hover:before{transform:scaleX(1)}.assign-card-modern h2{border-bottom:2px solid var(--border-color);color:var(--text-primary);font-size:1.6em;font-weight:700;margin-bottom:24px;margin-top:0;padding-bottom:16px}.assign-table-modern{border-collapse:initial;border-spacing:0;margin-bottom:24px;width:100%}.assign-table-modern thead th{background-color:var(--bg-primary);border-bottom:2px solid var(--border-color);color:var(--text-primary);font-size:.85em;font-weight:600;letter-spacing:.5px;padding:16px;text-transform:uppercase}.assign-table-modern tbody tr{transition:all .2s ease}.assign-table-modern tbody tr:hover{background-color:var(--bg-secondary);transform:scale(1.01)}.assign-table-modern tbody td{border-bottom:1px solid var(--border-color);padding:16px}.checkbox-modern{accent-color:var(--primary-color);cursor:pointer;height:20px;width:20px}.action-buttons-assign{border-top:2px solid var(--border-color);display:flex;flex-wrap:wrap;gap:12px;margin-top:24px;padding-top:24px}.selected-count{background:linear-gradient(135deg,#007bff1a,#0056b30d);border:2px solid #007bff;border-radius:10px;color:#007bff;display:inline-block;margin-bottom:20px;padding:8px 16px}@media (max-width:768px){.assign-card-modern{overflow-x:auto}.action-buttons-assign{flex-direction:column}.action-buttons-assign .btn{width:100%}}.test-results-page{animation:fadeIn .5s ease}.results-table-card{animation:fadeInUp .6s ease;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:20px;margin-bottom:30px;overflow:hidden;padding:28px;position:relative}.results-table-card:before{background:linear-gradient(90deg,#007bff,#6f42c1);content:"";height:5px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.results-table-card:hover:before{opacity:1}.results-table-modern{border-collapse:initial;border-spacing:0;width:100%}.results-table-modern thead th{background-color:var(--bg-primary);border-bottom:2px solid var(--border-color);color:var(--text-primary);font-size:.85em;font-weight:600;letter-spacing:.5px;padding:16px;text-transform:uppercase}.results-table-modern tbody tr{transition:all .2s ease}.results-table-modern tbody tr:hover{background-color:var(--bg-secondary);transform:scale(1.01)}.results-table-modern tbody td{border-bottom:1px solid var(--border-color);padding:16px}.score-badge-result{border-radius:10px;display:inline-block;font-size:.9em;font-weight:700;padding:6px 12px}.score-badge-result.excellent{background:linear-gradient(135deg,#28a745,#1e7e34);color:#fff}.score-badge-result.good{background:linear-gradient(135deg,#ffc107,#e0a800);color:#fff}.score-badge-result.poor{background:linear-gradient(135deg,#dc3545,#c82333);color:#fff}.stats-card-modern{animation:fadeInUp .8s ease;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:20px;padding:28px}.stats-grid-results{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:24px}.stat-card-result{background:var(--bg-primary);border:2px solid var(--border-color);border-radius:16px;padding:24px;text-align:center;transition:all .3s ease}.stat-card-result:hover{box-shadow:0 8px 20px #0000001a;transform:translateY(-4px)}.stat-card-result h3{color:var(--text-secondary);font-size:.9em;font-weight:600;letter-spacing:1px;margin:0 0 12px;text-transform:uppercase}.stat-number-result{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#007bff,#0056b3);-webkit-background-clip:text;background-clip:text;font-size:2.5em;font-weight:800;margin:0}.english-section-analytics-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-top:24px}.english-section-analytics-card{background:var(--bg-primary);border:2px solid var(--border-color);border-radius:14px;padding:20px;transition:all .3s ease}.english-section-analytics-card:hover{box-shadow:0 6px 16px #00000014;transform:translateY(-3px)}.english-section-analytics-card h3{color:var(--text-primary);font-size:1em;font-weight:700;margin:0 0 14px}.section-analytics-bar-wrap{background:var(--border-color);border-radius:5px;height:10px;margin-bottom:12px;overflow:hidden}.section-analytics-bar{border-radius:5px;height:100%;transition:width .6s ease}.section-analytics-bar.excellent{background:linear-gradient(90deg,#28a745,#20c997)}.section-analytics-bar.good{background:linear-gradient(90deg,#ffc107,#fd7e14)}.section-analytics-bar.poor{background:linear-gradient(90deg,#dc3545,#e83e8c)}.section-analytics-stats{color:var(--text-secondary);display:flex;font-size:.85em;justify-content:space-between}.section-analytics-stats strong{color:var(--text-primary)}@media (max-width:768px){.results-table-card{overflow-x:auto}.stats-grid-results{grid-template-columns:repeat(2,1fr)}.english-section-analytics-grid{grid-template-columns:1fr}}.speaking-analytics-overview{display:flex;flex-wrap:wrap;gap:20px;margin-top:16px}.sa-stat{align-items:center;background:var(--bg-primary);border:2px solid var(--border-color);border-radius:14px;display:flex;flex-direction:column;min-width:120px;padding:16px 24px}.sa-stat-value{color:var(--text-primary);font-size:1.8em;font-weight:800}.sa-stat-label{color:var(--text-secondary);font-size:.78em;font-weight:600;letter-spacing:.5px;margin-top:4px;text-transform:uppercase}.sa-skills-grid{display:flex;flex-direction:column;gap:8px;margin-top:12px}.sa-skill-row{align-items:center;display:flex;gap:12px}.sa-skill-label{color:var(--text-secondary);font-size:.85em;font-weight:600;min-width:100px}.sa-skill-bar-wrap{background:var(--border-color);border-radius:4px;flex:1 1;height:8px;overflow:hidden}.sa-skill-bar{border-radius:4px;height:100%;transition:width .6s ease}.sa-skill-bar.excellent{background:linear-gradient(90deg,#28a745,#20c997)}.sa-skill-bar.good{background:linear-gradient(90deg,#ffc107,#fd7e14)}.sa-skill-bar.poor{background:linear-gradient(90deg,#dc3545,#e83e8c)}.sa-skill-value{font-size:.85em;font-weight:700;min-width:40px;text-align:right}.sa-distribution{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px}.sa-dist-item{align-items:center;border-radius:10px;display:flex;font-size:.85em;font-weight:600;gap:8px;padding:8px 16px}.sa-dist-item.excellent{background:#28a7451a;color:#28a745}.sa-dist-item.good{background:#ffc1071a;color:#f57f17}.sa-dist-item.average{background:#ff98001a;color:#e65100}.sa-dist-item.poor{background:#dc35451a;color:#dc3545}.sa-dist-count{font-size:1.1em;font-weight:800}.sa-top-list{display:flex;flex-direction:column;gap:8px;margin-top:12px}.sa-top-item{align-items:center;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;display:flex;gap:12px;padding:10px 16px}.sa-top-rank{color:var(--text-secondary);font-size:.9em;font-weight:800;min-width:30px}.sa-top-name{color:var(--text-primary);flex:1 1;font-weight:600}.sa-top-score{color:var(--text-primary);font-size:.9em;font-weight:700}.result-details-page{animation:fadeIn .5s ease}.info-card-modern{animation:fadeInUp .6s ease;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:20px;margin-bottom:30px;overflow:hidden;padding:28px;position:relative}.info-card-modern:before{background:linear-gradient(90deg,#007bff,#6f42c1);content:"";height:5px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s ease}.info-card-modern:hover:before{transform:scaleX(1)}.info-card-modern h2{border-bottom:2px solid var(--border-color);color:var(--text-primary);font-size:1.6em;font-weight:700;margin-bottom:24px;margin-top:0;padding-bottom:16px}.info-item{align-items:center;border-bottom:1px solid var(--border-color);display:flex;gap:12px;padding:12px 0}.info-item:last-child{border-bottom:none}.info-item strong{color:var(--text-secondary);font-weight:600;min-width:140px}.info-item span{color:var(--text-primary);font-weight:500}.score-summary-modern{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:24px}.question-breakdown-card{animation:slideInRight .6s ease;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:16px;margin-bottom:20px;overflow:visible;padding:24px;position:relative;transition:all .3s ease;z-index:1}.question-breakdown-card:hover{z-index:2}.question-breakdown-card:before{background:var(--border-color);bottom:0;content:"";left:0;position:absolute;top:0;transition:all .3s ease;width:5px}.question-breakdown-card.correct:before{background:linear-gradient(180deg,#28a745,#1e7e34)}.question-breakdown-card.incorrect:before{background:linear-gradient(180deg,#dc3545,#c82333)}.question-breakdown-card:hover{box-shadow:0 8px 20px #0000001f;transform:translateX(8px)}.question-breakdown-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:16px}.question-breakdown-header h4{color:var(--text-primary);font-size:1.3em;font-weight:700;margin:0}.question-type-badge-detail{border-radius:12px;font-size:.75em;font-weight:700;letter-spacing:.5px;padding:6px 14px;text-transform:uppercase}.question-type-badge-detail.coding{background:linear-gradient(135deg,#007bff,#0056b3);color:#fff}.question-type-badge-detail.mcq{background:linear-gradient(135deg,#6f42c1,#5a32a3);color:#fff}.question-type-badge-detail.aptitude{background:linear-gradient(135deg,#2e7d32,#1b5e20);color:#fff}.breakdown-details{border-top:2px solid var(--border-color);display:flex;flex-wrap:wrap;gap:16px;margin-top:16px;padding-top:16px}.detail-item{align-items:center;background:var(--bg-primary);border:2px solid var(--border-color);border-radius:10px;gap:8px;padding:8px 14px}.detail-item strong{color:var(--text-primary);font-weight:600}.code-block{background:var(--bg-primary);border:2px solid var(--border-color);border-radius:12px;margin-top:16px;overflow-x:auto;padding:16px}.code-block strong{color:var(--text-primary);display:block;font-weight:600;margin-bottom:8px}.code-block pre{background:#0000000d;border-radius:8px;font-family:Courier New,monospace;font-size:.9em;line-height:1.5;margin:0;overflow-x:auto;padding:12px}[data-theme=dark] .code-block pre{background:#ffffff0d}.question-type-badge-detail.english_grammar{background:linear-gradient(135deg,#e91e63,#c2185b);color:#fff}.question-type-badge-detail.english_vocabulary{background:linear-gradient(135deg,#9c27b0,#7b1fa2);color:#fff}.question-type-badge-detail.english_reading{background:linear-gradient(135deg,#2196f3,#1565c0);color:#fff}.question-type-badge-detail.english_essay{background:linear-gradient(135deg,#ff9800,#e65100);color:#fff}.question-type-badge-detail.english_speaking{background:linear-gradient(135deg,#4caf50,#2e7d32);color:#fff}.question-type-badge-detail.english_listening{background:linear-gradient(135deg,#00bcd4,#00838f);color:#fff}.english-section-scores-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-top:20px}.english-section-score-card{background:var(--bg-primary);border:2px solid var(--border-color);border-radius:14px;padding:18px}.english-section-score-card h4{color:var(--text-primary);font-size:.95em;font-weight:700;margin:0 0 12px}.section-score-bar-wrap{background:var(--border-color);border-radius:4px;height:8px;margin-bottom:8px;overflow:hidden}.section-score-bar{border-radius:4px;height:100%;transition:width .6s ease}.section-score-bar.excellent{background:linear-gradient(90deg,#28a745,#20c997)}.section-score-bar.good{background:linear-gradient(90deg,#ffc107,#fd7e14)}.section-score-bar.poor{background:linear-gradient(90deg,#dc3545,#e83e8c)}.section-score-label{color:var(--text-secondary);font-size:.85em;font-weight:600;text-align:right}.english-answer-content{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;margin-top:14px;padding:14px}.sub-answers-list{gap:8px}.sub-answer-item{align-items:center;background:var(--bg-secondary);border-left:3px solid var(--border-color);border-radius:8px;display:flex;gap:10px;padding:8px 12px}.sub-answer-item.correct{border-left-color:#28a745}.sub-answer-item.incorrect{border-left-color:#dc3545}.sub-q-num{color:var(--text-secondary);font-size:.85em;font-weight:700;min-width:30px}.sub-answer-text{flex:1 1;font-size:.9em}.sub-answer-badge{font-size:.9em;font-weight:700}.sub-answer-badge.correct{color:#28a745}.sub-answer-badge.incorrect{color:#dc3545}.sub-answer-pts{color:var(--text-secondary);font-size:.8em;font-weight:600}.essay-content-preview,.essay-text{margin-top:8px}.essay-text{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;font-size:.92em;line-height:1.7;max-height:300px;overflow-y:auto;padding:14px}.essay-word-count{color:var(--text-secondary);font-size:.83em;font-weight:600;margin-top:8px}.speaking-audio-preview{display:flex;flex-direction:column;gap:10px}.speaking-audio-preview audio{border-radius:8px;width:100%}.english-ai-eval-panel{background:#f0f7ff;border:1px solid #b3d4fc;border-radius:10px;margin-top:14px;padding:16px}[data-theme=dark] .english-ai-eval-panel{background:#2196f314;border-color:#2196f333}.eval-score-row{align-items:center;display:flex;font-size:.88em;gap:12px;margin-top:10px}.eval-score-row>span:first-child{color:var(--text-secondary);font-weight:600;min-width:100px}.eval-bar-wrap{background:var(--border-color);border-radius:4px;flex:1 1;height:8px;overflow:hidden}.eval-bar{background:linear-gradient(90deg,#2196f3,#1976d2);border-radius:4px;height:100%;transition:width .5s ease}.eval-pct{color:var(--text-primary);font-size:.9em;font-weight:700;min-width:40px;text-align:right}.eval-transcription{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;font-size:.88em;margin-top:14px;padding:10px}.eval-transcription p{color:var(--text-secondary);font-style:italic;margin:6px 0 0}.eval-feedback-text{font-size:.9em;margin-top:12px}.eval-feedback-text p{color:var(--text-primary);line-height:1.6;margin:4px 0 0}.eval-suggestions{font-size:.88em;margin-top:10px}.eval-suggestions ul{margin:6px 0 0 18px;padding:0}.eval-suggestions li{color:var(--text-secondary);margin-bottom:4px}.manual-override-panel{background:#fff8e1;border:1px solid #ffecb3;border-radius:10px;margin-top:14px;padding:14px}[data-theme=dark] .manual-override-panel{background:#ffc10714;border-color:#ffc10733}.manual-override-controls{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.manual-score-input{width:120px}.manual-feedback-input{flex:1 1;min-width:200px}.manual-override-timestamp{color:var(--text-secondary);font-size:.85em;margin-top:6px}.detail-item.flagged{background:#fff3cd;border-color:#ffc107;color:#856404}.plagiarism-panel{border:1px solid var(--border-color);border-radius:10px;margin-top:14px;padding:14px 16px}.plagiarism-panel.low,.plagiarism-panel.none{background:#e8f5e9;border-color:#a5d6a7}.plagiarism-panel.medium{background:#fff8e1;border-color:#ffe082}.plagiarism-panel.high{background:#ffebee;border-color:#ef9a9a}[data-theme=dark] .plagiarism-panel.low,[data-theme=dark] .plagiarism-panel.none{background:#4caf5014;border-color:#4caf5033}[data-theme=dark] .plagiarism-panel.medium{background:#ffc10714;border-color:#ffc10733}[data-theme=dark] .plagiarism-panel.high{background:#f4433614;border-color:#f4433633}.plagiarism-details{display:flex;flex-wrap:wrap;gap:16px;margin-top:10px}.plagiarism-score-row{align-items:center;display:flex;font-size:.88em;gap:6px}.plagiarism-score-row span{color:var(--text-secondary)}.suspicion-low,.suspicion-none{color:#2e7d32}.suspicion-medium{color:#f57f17}.suspicion-high{color:#c62828;font-weight:700}.plagiarism-indicators{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.indicator-tag{background:#0000000f;border-radius:6px;color:var(--text-secondary);font-size:.8em;padding:3px 10px}[data-theme=dark] .indicator-tag{background:#ffffff0f}.plagiarism-feedback{color:var(--text-secondary);font-size:.88em;line-height:1.5;margin-top:8px}@media (max-width:768px){.score-summary-modern{grid-template-columns:1fr}.question-breakdown-header{align-items:flex-start;flex-direction:column}.english-section-scores-grid{grid-template-columns:1fr}.manual-override-controls{flex-direction:column}.manual-feedback-input,.manual-score-input{width:100%}}.student-analysis-page{animation:fadeIn .5s ease}.student-analysis-page .page-title{-webkit-text-fill-color:#0000;animation:fadeInDown .5s ease;background:linear-gradient(135deg,#007bff,#0056b3);-webkit-background-clip:text;background-clip:text;font-size:36px;font-weight:800;margin-bottom:10px}.student-info-subtitle{animation:fadeInDown .6s ease;color:var(--text-secondary);font-size:1.1em;margin-top:8px}.stats-grid-modern{grid-gap:24px;animation:fadeInUp .6s ease;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:40px}.stat-card-analysis{animation:fadeInUp .6s ease;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:20px;overflow:visible;padding:32px 24px;position:relative;text-align:center;transition:all .4s cubic-bezier(.16,1,.3,1);z-index:1}.stat-card-analysis:before{background:linear-gradient(90deg,#007bff,#6f42c1);content:"";height:5px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .4s ease;z-index:0}.stat-card-analysis:hover{border-color:#007bff;box-shadow:0 20px 40px #007bff26;transform:translateY(-8px) scale(1.03);z-index:2}.stat-card-analysis:hover:before{transform:scaleX(1)}.stat-card-analysis.tests{background:linear-gradient(135deg,#007bff0d,#0056b305)}.stat-card-analysis.average{background:linear-gradient(135deg,#6f42c10d,#5a32a305)}.stat-card-analysis.total{background:linear-gradient(135deg,#28a7450d,#1e7e3405)}.stat-card-analysis.status{background:linear-gradient(135deg,#117ab80d,#0d6efd05)}.stat-card-analysis.interviews{background:linear-gradient(135deg,#28a7450d,#1e7e3405)}.stat-card-analysis.interviews .stat-number-analysis{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#28a745,#1e7e34);-webkit-background-clip:text;background-clip:text}.stat-card-analysis h3{color:var(--text-secondary);font-size:.9em;font-weight:600;letter-spacing:1px;margin:0 0 16px;text-transform:uppercase}.stat-number-analysis{font-size:2.5em;font-weight:800;line-height:1.2;margin:0}.stat-card-analysis.tests .stat-number-analysis,.stat-number-analysis{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#007bff,#0056b3);-webkit-background-clip:text;background-clip:text}.stat-card-analysis.average .stat-number-analysis{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#6f42c1,#5a32a3);-webkit-background-clip:text;background-clip:text}.stat-card-analysis.total .stat-number-analysis{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#28a745,#1e7e34);-webkit-background-clip:text;background-clip:text}.performance-section{animation:fadeInUp .8s ease;margin-top:40px}.section-title-analysis{border-bottom:3px solid var(--border-color);color:var(--text-primary);font-size:1.8em;font-weight:700;margin-bottom:24px;padding-bottom:16px}.performance-table-card{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:20px;margin-bottom:30px;overflow:hidden;padding:28px;position:relative;transition:all .3s ease}.performance-table-card:before{background:linear-gradient(90deg,#007bff,#6f42c1);content:"";height:5px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.performance-table-card:hover:before{opacity:1}.performance-table{border-collapse:initial;border-spacing:0;width:100%}.performance-table thead th{background-color:var(--bg-primary);border-bottom:2px solid var(--border-color);color:var(--text-primary);font-size:.85em;font-weight:600;letter-spacing:.5px;padding:16px;text-transform:uppercase}.performance-table tbody tr{transition:all .2s ease}.performance-table tbody tr:hover{background-color:var(--bg-secondary);transform:scale(1.01)}.performance-table tbody td{border-bottom:1px solid var(--border-color);padding:16px}.question-type-badge{border-radius:8px;display:inline-block;font-size:.85em;font-weight:600;padding:6px 12px}.question-type-badge.interview{background:linear-gradient(135deg,#28a745,#1e7e34);color:#fff}.score-badge{border-radius:10px;display:inline-block;font-size:.9em;font-weight:700;padding:6px 12px}.score-badge.excellent{background:linear-gradient(135deg,#28a745,#1e7e34);color:#fff}.score-badge.good{background:linear-gradient(135deg,#ffc107,#e0a800);color:#fff}.score-badge.poor{background:linear-gradient(135deg,#dc3545,#c82333);color:#fff}.empty-state-analysis{animation:fadeInUp .6s ease;background:linear-gradient(135deg,var(--bg-secondary) 0,var(--bg-primary) 100%);border:3px dashed var(--border-color);border-radius:20px;padding:60px 40px;text-align:center}.empty-state-analysis p{color:var(--text-secondary);font-size:1.1em;margin:0}@media (max-width:768px){.stats-grid-modern{grid-template-columns:repeat(2,1fr)}.performance-table-card{overflow-x:auto}}.classroom-list{margin:0 auto;max-width:1400px;padding:20px}.empty-state{background-color:var(--bg-secondary);border:2px dashed var(--border-color);border-radius:12px;padding:60px 20px}.empty-state-icon{font-size:4em;margin-bottom:20px}.empty-state h2{margin-bottom:10px}.empty-state p{margin-bottom:30px}.classrooms-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.classroom-card{animation:fadeInUp .5s ease;background-color:var(--bg-secondary);border:2px solid var(--border-color);border-radius:16px;display:flex;flex-direction:column;overflow:hidden;padding:28px;position:relative;transition:all .3s ease}.classroom-card:before{background:linear-gradient(90deg,#007bff,#6f42c1);content:"";height:4px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s ease}.classroom-card:hover{border-color:#007bff;box-shadow:0 12px 28px #00000026;transform:translateY(-6px)}.classroom-card:hover:before{transform:scaleX(1)}.classroom-card-header{align-items:flex-start;border-bottom:2px solid var(--border-color);display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.classroom-title-section h3{color:var(--text-primary);font-size:1.4em;font-weight:600;margin:0 0 8px}.classroom-description{color:var(--text-secondary);font-size:.9em;line-height:1.5;margin:0}.classroom-actions{display:flex;gap:8px}.btn-icon{font-size:1.3em;padding:6px}.btn-icon:hover:not(:disabled){background-color:var(--bg-primary);transform:scale(1.1)}.classroom-stats{background-color:var(--bg-primary);border-radius:8px;display:flex;gap:30px;margin-bottom:20px;padding:15px}.stat-item{gap:8px}.stat-icon{font-size:1.3em}.stat-label{font-size:.9em}.stat-value{color:var(--text-primary);font-size:1.1em;font-weight:600}.stat-sublabel{color:var(--text-secondary);font-size:.75em;font-weight:400;margin-left:2px}.classroom-card-footer{border-top:1px solid var(--border-color);display:flex;gap:10px;margin-top:auto;padding-top:15px}.classroom-card-footer .btn{flex:1 1;text-align:center}@media (max-width:768px){.classrooms-grid{grid-template-columns:1fr}.page-header{align-items:stretch}.classroom-card-header,.page-header{flex-direction:column;gap:15px}.classroom-card-footer{flex-direction:column}}.create-classroom{margin:0 auto;max-width:800px;padding:20px}.page-header{align-items:center}.card{border-radius:16px;padding:32px}.card:before{background:linear-gradient(90deg,#007bff,#6f42c1);content:"";height:4px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.card:hover:before{opacity:1}.classroom-form{gap:25px}.classroom-form,.form-group{display:flex;flex-direction:column}.form-group{gap:8px}.form-group label{font-size:.95em}.form-input,.form-textarea{background-color:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-family:inherit;font-size:1em;padding:12px 15px;transition:all .2s ease;width:100%}.form-input:focus,.form-textarea:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #ed03311a;outline:none}.form-textarea{resize:vertical}.form-actions{border-top:2px solid var(--border-color);gap:15px;margin-top:10px;padding-top:20px}@media (max-width:768px){.page-header{align-items:stretch;gap:15px}.form-actions,.page-header{flex-direction:column}.form-actions .btn{width:100%}}.manage-classroom-students{margin:0 auto;max-width:1400px;padding:20px}.selected-count{animation:pulse 2s ease-in-out infinite;background:var(--primary-gradient);border-radius:12px;box-shadow:0 2px 6px #ed033133;color:#fff;font-size:.85em;font-weight:600;padding:6px 14px}.students-list{display:flex;flex-direction:column;gap:10px;margin-bottom:20px;max-height:500px;overflow-y:auto}.student-item{align-items:center;animation:slideInRight .5s ease;background-color:var(--bg-primary);border:2px solid var(--border-color);border-radius:12px;display:flex;justify-content:space-between;overflow:hidden;padding:14px 18px;position:relative;transition:all .3s ease}.student-item:before{background:var(--border-color);bottom:0;content:"";left:0;position:absolute;top:0;transition:all .3s ease;width:4px}.student-item:hover{border-color:#007bff;box-shadow:0 4px 12px #0000001a;transform:translateX(4px)}.student-item:hover:before{background:linear-gradient(180deg,#007bff,#0056b3)}.student-item.checkbox-item{cursor:pointer}.student-item.checkbox-item:hover{background-color:var(--bg-secondary)}.student-item.checkbox-item input[type=checkbox]{accent-color:var(--primary-color);cursor:pointer;height:18px;margin-right:12px;width:18px}.student-info{display:flex;flex:1 1;flex-direction:column}.student-name{color:var(--text-primary);font-weight:500;margin-bottom:4px}.student-email{color:var(--text-secondary);font-size:.9em}.btn-icon:disabled{cursor:not-allowed;opacity:.5}.section-actions{border-top:1px solid var(--border-color);padding-top:20px}.btn{width:100%}@media (max-width:768px){.page-header{flex-direction:column;gap:15px}}.assign-test-classroom{margin:0 auto;max-width:1400px;padding:20px}.assign-section{margin-bottom:36px}.section-title-page{color:var(--text-primary);font-size:1.25em;font-weight:700;margin:0 0 16px;padding-bottom:8px}.test-type-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.filter-chip{background:var(--bg-primary);border:2px solid var(--border-color);border-radius:20px;color:var(--text-primary);cursor:pointer;font-size:.9em;font-weight:500;padding:8px 16px;transition:all .2s ease}.filter-chip:hover{background:var(--bg-secondary);border-color:#007bff;border-color:var(--primary,#007bff)}.filter-chip.active{background:linear-gradient(135deg,#007bff,#6f42c1);background:var(--primary-gradient,linear-gradient(135deg,#007bff,#6f42c1));border-color:#0000;color:#fff}.test-type-badge{border-radius:8px;font-size:.8em;font-weight:600;padding:6px 12px}.test-type-badge.coding{background:#0d6efd;color:#fff}.test-type-badge.mcq{background:#198754;color:#fff}.test-type-badge.aptitude{background:#fd7e14;color:#fff}.test-type-badge.theory{background:#6f42c1;color:#fff}.test-type-badge.mixed{background:#6c757d;color:#fff}.test-type-badge.interview{background:linear-gradient(135deg,#e91e63,#9c27b0);color:#fff}.interview-item .test-type-badge.interview{margin-right:8px}.page-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:30px}.page-subtitle{color:var(--text-secondary);font-size:.95em;margin-top:5px}.content-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:1fr 1fr}.section-card{animation:fadeInUp .5s ease;background-color:var(--bg-secondary);border:1px solid var(--border-color);overflow:hidden;position:relative;transition:all .3s ease}.section-card:before{background:linear-gradient(90deg,#007bff,#6f42c1);content:"";height:4px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.section-card:hover:before{opacity:1}.section-header{border-bottom:2px solid var(--border-color);margin-bottom:20px;padding-bottom:15px}.section-header h2{color:var(--text-primary);font-size:1.3em;font-weight:700;margin:0}.tests-list{display:flex;flex-direction:column;gap:15px;max-height:600px;overflow-y:auto}.test-item{align-items:center;animation:slideInRight .5s ease;background-color:var(--bg-primary);border:2px solid var(--border-color);border-radius:12px;display:flex;justify-content:space-between;overflow:hidden;padding:18px;position:relative;transition:all .3s ease}.test-item:before{background:var(--border-color);bottom:0;content:"";left:0;position:absolute;top:0;transition:all .3s ease;width:4px}.test-item:hover{border-color:#007bff;box-shadow:0 4px 12px #0000001a;transform:translateX(4px)}.test-item:hover:before{background:linear-gradient(180deg,#007bff,#0056b3)}.test-item.assigned{background:linear-gradient(135deg,#28a74514,#1e7e340d);border-color:#28a745}.test-item.assigned:before{background:linear-gradient(180deg,#28a745,#1e7e34)}.test-info{flex:1 1}.test-info h4{color:var(--text-primary);font-size:1.1em;margin:0 0 8px}.test-meta{gap:15px;margin-bottom:8px}.test-type{background:var(--primary-gradient);border-radius:8px;color:#fff;font-size:.8em;font-weight:600;padding:6px 12px;text-transform:uppercase}.test-description,.test-duration{color:var(--text-secondary);font-size:.9em}.test-description{line-height:1.4;margin:8px 0 0}.assignment-date{font-size:.85em;font-style:italic;margin-top:8px}.assignment-date,.btn-icon{color:var(--text-secondary)}.btn-icon{background:none;border:none;border-radius:6px;cursor:pointer;font-size:1.5em;line-height:1;padding:5px 10px;transition:all .2s ease}.btn-icon:hover:not(:disabled){background-color:#dc35451a;color:#dc3545}.btn-sm{font-size:.9em;padding:8px 16px}.empty-state-small{color:var(--text-secondary);padding:40px 20px;text-align:center}.btn{border-radius:6px;font-size:1em;transition:all .2s ease}.btn-primary:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.btn-secondary{background-color:var(--bg-primary)}.btn-secondary:hover:not(:disabled){background-color:var(--bg-secondary)}.btn:disabled{cursor:not-allowed;opacity:.6}@media (max-width:1024px){.content-grid{grid-template-columns:1fr}}@media (max-width:768px){.page-header{flex-direction:column;gap:15px}.test-item{align-items:stretch;flex-direction:column;gap:10px}}.dataset-template-list .page-header-row{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:12px}.dataset-template-list .page-description{color:#666;color:var(--text-secondary,#666);margin-bottom:24px}.dataset-template-list .template-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.dataset-template-list .template-card{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:12px;padding:20px}.dataset-template-list .template-card-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:8px}.dataset-template-list .template-card-header h3{font-size:1.15rem;margin:0}.dataset-template-list .domain-badge{background:linear-gradient(135deg,#667eea,#764ba2);background:var(--primary-gradient,linear-gradient(135deg,#667eea 0,#764ba2 100%));border-radius:6px;color:#fff;font-size:12px;padding:4px 8px}.dataset-template-list .template-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#666;color:var(--text-secondary,#666);display:-webkit-box;font-size:14px;margin:0 0 16px;overflow:hidden}.dataset-template-list .template-actions{display:flex;gap:8px}.dataset-template-list .empty-state{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-radius:12px;padding:48px 24px;text-align:center}.dataset-template-list .empty-state p{color:#666;color:var(--text-secondary,#666);margin-bottom:16px}.create-dataset-template .page-header-row{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:12px}.create-dataset-template .page-description{color:#666;color:var(--text-secondary,#666);margin-bottom:24px}.create-dataset-template .dataset-template-form{max-width:900px}.create-dataset-template .form-group{margin-bottom:20px}.create-dataset-template .form-group label{color:#333;color:var(--text-primary,#333);display:block;font-weight:600;margin-bottom:8px}.create-dataset-template .form-group input,.create-dataset-template .form-group select{border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:8px;font-size:15px;padding:10px 12px;width:100%}.create-dataset-template .sql-textarea{border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:8px;font-family:Monaco,Menlo,Consolas,monospace;font-size:13px;line-height:1.5;padding:12px;width:100%}.create-dataset-template .form-actions{display:flex;gap:12px;margin-top:24px}.create-dataset-template .error-message{background:#fff0f0;border-radius:8px;color:#c00;margin-bottom:16px;padding:12px}.create-sql-test .page-header-row{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:12px}.create-sql-test .page-description{color:#666;color:var(--text-secondary,#666);margin-bottom:24px}.create-sql-test .sql-test-form{max-width:640px}.create-sql-test .form-group{margin-bottom:20px}.create-sql-test .form-group label{color:#333;color:var(--text-primary,#333);display:block;font-weight:600;margin-bottom:8px}.create-sql-test .form-group input,.create-sql-test .form-group select{border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:8px;font-size:15px;padding:10px 12px;width:100%}.create-sql-test .form-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.create-sql-test .form-actions{display:flex;gap:12px;margin-top:24px}.create-sql-test .error-message{background:#fff0f0;border-radius:8px;color:#c00;margin-bottom:16px;padding:12px}.create-sql-test .info-banner{background:#e8f4fd;border-radius:8px;color:#333;color:var(--text-primary,#333);margin-bottom:20px;padding:16px}.create-sql-test .info-banner a{color:#667eea;color:var(--primary-color,#667eea);font-weight:600}.sql-test-questions .page-header-row{align-items:flex-start;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:24px}.sql-test-questions .page-meta{color:#666;color:var(--text-secondary,#666);font-size:14px;margin-top:4px}.sql-test-questions .header-actions{display:flex;flex-wrap:wrap;gap:10px}.sql-test-questions .validate-result{border-radius:8px;margin-bottom:20px;padding:16px}.sql-test-questions .validate-result.valid{background:#e8f5e9;border:1px solid #a5d6a7}.sql-test-questions .validate-result.invalid{background:#ffebee;border:1px solid #ef9a9a}.sql-test-questions .validate-result ul{margin:8px 0 0;padding-left:20px}.sql-test-questions .questions-toolbar{margin-bottom:20px}.sql-test-questions .questions-list{display:flex;flex-direction:column;gap:16px}.sql-test-questions .question-card{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:12px;padding:16px}.sql-test-questions .question-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.sql-test-questions .q-num{color:#667eea;color:var(--primary-color,#667eea);font-weight:700}.sql-test-questions .q-marks{color:#666;color:var(--text-secondary,#666);font-size:14px}.sql-test-questions .question-text{color:#333;color:var(--text-primary,#333);margin:0 0 12px;white-space:pre-wrap}.sql-test-questions .question-actions{display:flex;gap:8px}.sql-test-questions .empty-state{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-radius:12px;color:#666;color:var(--text-secondary,#666);padding:32px;text-align:center}.sql-test-questions .modal-overlay{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.sql-test-questions .sql-question-modal{background:#fff;background:var(--bg-primary,#fff);border-radius:12px;max-height:90vh;max-width:720px;overflow-y:auto;padding:24px;width:90%}.sql-test-questions .sql-question-modal h3{margin-bottom:20px;margin-top:0}.sql-test-questions .sql-question-modal .form-group{margin-bottom:16px}.sql-test-questions .sql-question-modal .form-group label{display:block;font-weight:600;margin-bottom:6px}.sql-test-questions .sql-question-modal .form-group input,.sql-test-questions .sql-question-modal .form-group textarea{border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:8px;padding:10px;width:100%}.sql-test-questions .sql-question-modal .sql-textarea{font-family:Monaco,Menlo,Consolas,monospace;font-size:13px}.sql-test-questions .btn-run-query{margin-top:10px}.sql-test-questions .vendor-query-output{border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:8px;margin-top:16px;padding:14px}.sql-test-questions .vendor-query-output.success{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa)}.sql-test-questions .vendor-query-output.error{background:#fff5f5;background:var(--vendor-query-error-bg,#fff5f5);border-color:#feb2b2;border-color:var(--vendor-query-error-border,#feb2b2)}[data-theme=dark] .sql-test-questions .vendor-query-output.success{background:var(--bg-secondary);border-color:var(--border-color)}[data-theme=dark] .sql-test-questions .vendor-query-output.error{background:#dc26261f;border-color:#f8717180}.sql-test-questions .vendor-query-table-wrap{max-height:240px;overflow-x:auto;overflow-y:auto}.sql-test-questions .vendor-query-table{border-collapse:collapse;color:var(--text-primary);font-size:13px;width:100%}.sql-test-questions .vendor-query-table td,.sql-test-questions .vendor-query-table th{border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);padding:6px 10px;text-align:left}.sql-test-questions .vendor-query-table th{background:#e9ecef;background:var(--vendor-query-th-bg,#e9ecef);color:var(--text-primary);font-weight:600}[data-theme=dark] .sql-test-questions .vendor-query-table th{background:#ffffff14;border-color:var(--border-color)}.sql-test-questions .vendor-query-table td{background:#fff;background:var(--bg-primary,#fff)}[data-theme=dark] .sql-test-questions .vendor-query-table td{background:var(--bg-primary);border-color:var(--border-color)}.sql-test-questions .vendor-query-table tbody tr:nth-child(2n) td{background:#00000008}[data-theme=dark] .sql-test-questions .vendor-query-table tbody tr:nth-child(2n) td{background:#ffffff0a}.sql-test-questions .vendor-query-empty{color:#666;color:var(--text-secondary,#666);font-size:14px;margin:0}[data-theme=dark] .sql-test-questions .vendor-query-empty{color:var(--text-secondary)}.sql-test-questions .vendor-query-error{color:#c53030;color:var(--vendor-query-error-text,#c53030);font-size:14px;margin:0}[data-theme=dark] .sql-test-questions .vendor-query-error{color:#fca5a5}.sql-test-questions .sql-question-modal .form-actions{display:flex;gap:12px;margin-top:20px}.sql-test-questions .error-message{background:#fff0f0;border-radius:8px;color:#c00;font-size:14px;margin-bottom:12px;padding:10px}.interview-list-page{animation:fadeIn .5s ease}.interview-results-section-header{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:12px;margin-bottom:20px;padding:16px 20px}.interview-results-section-header h2{color:var(--text-primary);font-size:1.25rem;margin:0 0 8px}.interview-results-section-header p{color:var(--text-secondary);font-size:.95rem;margin:0}.interview-results-btn{white-space:nowrap}.interview-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.interview-card{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:18px;display:flex;flex-direction:column;gap:16px;padding:20px;transition:all .3s ease}.interview-card:hover{border-color:#007bff;box-shadow:0 12px 24px #0000001f;transform:translateY(-6px)}.interview-card-header{display:flex;gap:16px;justify-content:space-between}.interview-meta{color:var(--text-secondary);display:flex;flex-wrap:wrap;gap:16px}.interview-actions{display:flex;flex-wrap:wrap;gap:8px}.create-interview .interview-form{display:flex;flex-direction:column;gap:20px}.create-interview .form-section{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:16px;display:flex;flex-direction:column;gap:12px;padding:20px}.create-interview input,.create-interview select,.create-interview textarea{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);padding:10px 12px}.create-interview .form-row{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.create-interview .section-header{display:flex;flex-direction:column;gap:8px}.create-interview .form-hint{color:var(--text-secondary);font-size:.9em;line-height:1.4;margin:0}.toggle-row{grid-gap:10px;color:var(--text-secondary);display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.question-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.question-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;padding:12px}.selected-list{display:flex;flex-direction:column;gap:8px}.interview-question-list .question-table-card{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:16px;padding:16px}.create-interview-question .question-form{display:flex;flex-direction:column;gap:20px}.create-interview-question .form-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:20px}.create-interview-question .section-title{margin:0 0 12px}.create-interview-question .form-row{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.create-interview-question input,.create-interview-question select,.create-interview-question textarea{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);padding:10px 12px;width:100%}.rubric-card{grid-gap:10px;display:grid;gap:10px;grid-template-columns:2fr 3fr 1fr auto}.rubric-card,.section-header{align-items:center;margin-bottom:10px}.section-header{display:flex;justify-content:space-between}.interview-results .table{background:var(--bg-secondary);border-radius:12px;overflow:hidden}.interview-result-details .vendor-result-student,.interview-result-details.vendor-result-student{color:var(--text-secondary);font-size:.95em;margin-top:8px}.interview-result-details .answer-card{border-bottom:1px solid var(--border-color);padding:12px 0}.interview-result-details .answer-card:last-child{border-bottom:none}.interview-feedback{animation:fadeIn .4s ease;background-color:var(--bg-primary);display:flex;flex-direction:column;gap:24px;min-height:calc(100vh - 80px);padding:0}.interview-feedback,.interview-feedback .feedback-answers h2,.interview-feedback .feedback-panel h2,.interview-feedback .feedback-resources h2,.interview-feedback .feedback-skill-radar h2,.interview-feedback .feedback-summary-text h2{color:var(--text-primary)}.feedback-header{align-items:center;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:18px;display:flex;justify-content:space-between;padding:20px 24px}.feedback-header h1{color:var(--text-primary);font-size:2em;font-weight:800;margin:0}.feedback-header p{color:var(--text-secondary);margin:6px 0 0}.feedback-header .feedback-subtitle{font-size:.95em;margin-top:4px;opacity:.9}.feedback-summary{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.summary-card{padding:18px}.summary-value{font-size:2em;font-weight:800;margin-top:6px}.feedback-panels{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.feedback-panel{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:16px;padding:18px}.feedback-panel ul{color:var(--text-secondary);margin:10px 0 0;padding-left:18px}.feedback-answers{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:18px;padding:20px}.answer-card{border-bottom:1px solid var(--border-color);padding:16px 0}.answer-card:last-child{border-bottom:none}.answer-score{color:var(--text-secondary);display:flex;flex-wrap:wrap;gap:12px;margin:8px 0}.answer-feedback{color:var(--text-secondary);line-height:1.5;margin-top:8px}.verdict-card.pass .verdict-value{color:#22c55e}.verdict-card.needs-improvement .verdict-value{color:#f59e0b}.feedback-skill-radar{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:18px;padding:20px}.feedback-skill-radar h2{margin:0 0 16px}.skill-radar-grid{display:flex;flex-direction:column;gap:14px}.skill-radar-item{grid-gap:12px;align-items:center;display:grid;gap:12px;grid-template-columns:140px 1fr 44px}.skill-radar-label{color:var(--text-primary);font-size:.95em}.skill-radar-bar-wrap{background:var(--bg-primary);border-radius:10px;height:20px;overflow:hidden}.skill-radar-bar{background:var(--primary-gradient);border-radius:10px;height:100%;transition:width .4s ease}.skill-radar-value{color:var(--text-primary);font-weight:700;text-align:right}.feedback-resources ul,.feedback-summary-text p{color:var(--text-secondary);line-height:1.5;margin:10px 0 0;padding-left:18px}@media (max-width:768px){.feedback-header{align-items:flex-start;flex-direction:column}.feedback-header .btn{margin-top:10px;width:100%}}.rich-text-display{color:var(--text-primary);font-size:15px;line-height:1.6}.rich-text-display.plain{display:inline}.rich-text-display h1,.rich-text-display h2,.rich-text-display h3,.rich-text-display h4{font-weight:600;line-height:1.3;margin:1em 0 .5em}.rich-text-display h1{font-size:1.5em}.rich-text-display h2{font-size:1.3em}.rich-text-display h3{font-size:1.15em}.rich-text-display h4{font-size:1.05em}.rich-text-display h1:first-child,.rich-text-display h2:first-child,.rich-text-display h3:first-child,.rich-text-display h4:first-child{margin-top:0}.rich-text-display p{margin:.5em 0}.rich-text-display p:first-child{margin-top:0}.rich-text-display ol,.rich-text-display ul{margin:.5em 0;padding-left:1.5em}.rich-text-display li{margin:.25em 0}.rich-text-display b,.rich-text-display strong{font-weight:600}.rich-text-display em,.rich-text-display i{font-style:italic}.rich-text-display a{color:var(--primary-color);text-decoration:underline}.rich-text-display a:hover{opacity:.85}.rich-text-display blockquote{border-left:3px solid var(--border-color);color:var(--text-secondary);margin:.75em 0;padding-left:1em}.rich-text-display code,.rich-text-display pre{background:var(--bg-secondary);border-radius:4px;font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace;font-size:.9em;padding:.2em .4em}.rich-text-display pre{margin:.5em 0;overflow-x:auto;padding:12px}.assignment-list-container{animation:fadeIn .5s ease;margin:0 auto;max-width:1400px;padding:20px}.assignment-list-header{align-items:center;animation:fadeInDown .5s ease;display:flex;justify-content:space-between;margin-bottom:30px}.assignment-list-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;color:var(--text-primary);font-size:32px;font-weight:700;margin:0}.create-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;box-shadow:0 4px 16px #667eea66;color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:14px 28px;transition:all .3s ease}.create-button:hover{box-shadow:0 6px 20px #667eea80;transform:translateY(-2px)}.filters-section{animation:fadeInUp .6s ease;background:var(--card-bg);border:2px solid var(--border-color);border-radius:14px;box-shadow:0 4px 12px var(--shadow);display:flex;flex-wrap:wrap;gap:24px;margin-bottom:24px;padding:20px}.filter-group{align-items:center;display:flex;gap:10px}.filter-group label{color:var(--text-primary);font-size:14px;font-weight:600}.filter-group select{background:var(--input-bg);border:2px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;font-size:14px;font-weight:500;min-width:160px;padding:10px 16px;transition:all .3s ease}.filter-group select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.empty-state p{font-size:18px;font-weight:500;margin-bottom:24px}.empty-state button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;box-shadow:0 4px 16px #667eea66;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:14px 32px;transition:all .3s ease}.empty-state button:hover{box-shadow:0 6px 20px #667eea80;transform:translateY(-2px)}.assignment-card:before{height:4px}.assignment-card-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:14px}.assignment-card-header h3{color:var(--text-primary);flex:1 1;font-size:19px;font-weight:700;line-height:1.4;margin:0}.status-badge{border-radius:12px;font-weight:500;padding:4px 12px}.assignment-meta{grid-gap:14px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;display:grid;gap:14px;grid-template-columns:repeat(2,1fr);margin-bottom:18px;padding:18px}[data-theme=dark] .assignment-meta{background:#2a2a2a99}.meta-item{display:flex;flex-direction:column;gap:6px}.meta-label{color:var(--text-secondary);font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.meta-value{color:var(--text-primary);font-size:15px;font-weight:600;text-transform:capitalize}.meta-value.difficulty{font-weight:700}.assignment-stats{background:linear-gradient(135deg,#667eea0d,#764ba208);border:1px solid var(--border-color);border-radius:10px;display:flex;justify-content:space-around;margin-bottom:18px;padding:18px}[data-theme=dark] .assignment-stats{background:linear-gradient(135deg,#8b9ef71a,#9f7aea0d)}.stat-item{align-items:center;display:flex;flex-direction:column;gap:6px}.stat-value{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:26px;font-weight:800}.stat-label{color:var(--text-secondary);font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.assignment-deadline{background:linear-gradient(135deg,#ff98001a,#f57c000d);border:2px solid #ff98004d;border-radius:8px;color:#ff9800;font-size:13px;font-weight:600;margin-bottom:18px;padding:10px 14px;text-align:center}[data-theme=dark] .assignment-deadline{background:linear-gradient(135deg,#ffb74d26,#ffa7261a);border-color:#ffb74d66;color:#ffb74d}.assignment-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}.action-button{border-radius:8px;box-shadow:0 2px 6px #0000001a;font-size:13px;min-width:110px;padding:10px 14px}.action-button.view:hover{box-shadow:0 4px 12px #667eea66}.action-button.edit{background:linear-gradient(135deg,#17a2b8,#138496);color:#fff}.action-button.edit:hover{box-shadow:0 4px 12px #17a2b866;transform:translateY(-2px)}.action-button.activate{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff}.action-button.activate:hover{box-shadow:0 4px 12px #4caf5066;transform:translateY(-2px)}.action-button.assign{background:linear-gradient(135deg,#9c27b0,#7b1fa2);color:#fff}.action-button.assign:hover{box-shadow:0 4px 12px #9c27b066;transform:translateY(-2px)}.action-button.submissions{background:linear-gradient(135deg,#ff9800,#f57c00);color:#fff}.action-button.submissions:hover{box-shadow:0 4px 12px #ff980066;transform:translateY(-2px)}.action-button.delete{background:linear-gradient(135deg,#f44336,#d32f2f);color:#fff}.action-button.delete:hover{box-shadow:0 4px 12px #f4433666;transform:translateY(-2px)}@media (max-width:768px){.assignment-list-container{padding:12px}.assignment-list-header{align-items:stretch;flex-direction:column;gap:16px}.create-button{width:100%}.assignments-grid{grid-template-columns:1fr}.filters-section{flex-direction:column}.filter-group{width:100%}.filter-group select{flex:1 1}.assignment-meta{grid-template-columns:1fr}}

/*!
 * Quill Editor v1.3.7
 * https://quilljs.com/
 * Copyright (c) 2014, Jason Chen
 * Copyright (c) 2013, salesforce.com
 */.ql-container{box-sizing:border-box;font-family:Helvetica,Arial,sans-serif;font-size:13px;height:100%;margin:0;position:relative}.ql-container.ql-disabled .ql-tooltip{visibility:hidden}.ql-container.ql-disabled .ql-editor ul[data-checked]>li:before{pointer-events:none}.ql-clipboard{height:1px;left:-100000px;overflow-y:hidden;position:absolute;top:50%}.ql-clipboard p{margin:0;padding:0}.ql-editor{word-wrap:break-word;box-sizing:border-box;height:100%;line-height:1.42;outline:none;overflow-y:auto;padding:12px 15px;tab-size:4;-moz-tab-size:4;text-align:left;white-space:pre-wrap}.ql-editor>*{cursor:text}.ql-editor blockquote,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6,.ql-editor ol,.ql-editor p,.ql-editor pre,.ql-editor ul{counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;margin:0;padding:0}.ql-editor ol,.ql-editor ul{padding-left:1.5em}.ql-editor ol>li,.ql-editor ul>li{list-style-type:none}.ql-editor ul>li:before{content:"\2022"}.ql-editor ul[data-checked=false],.ql-editor ul[data-checked=true]{pointer-events:none}.ql-editor ul[data-checked=false]>li *,.ql-editor ul[data-checked=true]>li *{pointer-events:all}.ql-editor ul[data-checked=false]>li:before,.ql-editor ul[data-checked=true]>li:before{color:#777;cursor:pointer;pointer-events:all}.ql-editor ul[data-checked=true]>li:before{content:"\2611"}.ql-editor ul[data-checked=false]>li:before{content:"\2610"}.ql-editor li:before{display:inline-block;white-space:nowrap;width:1.2em}.ql-editor li:not(.ql-direction-rtl):before{margin-left:-1.5em;margin-right:.3em;text-align:right}.ql-editor li.ql-direction-rtl:before{margin-left:.3em;margin-right:-1.5em}.ql-editor ol li:not(.ql-direction-rtl),.ql-editor ul li:not(.ql-direction-rtl){padding-left:1.5em}.ql-editor ol li.ql-direction-rtl,.ql-editor ul li.ql-direction-rtl{padding-right:1.5em}.ql-editor ol li{counter-increment:list-0;counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li:before{content:counter(list-0,decimal) ". "}.ql-editor ol li.ql-indent-1{counter-increment:list-1}.ql-editor ol li.ql-indent-1:before{content:counter(list-1,lower-alpha) ". "}.ql-editor ol li.ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-2{counter-increment:list-2}.ql-editor ol li.ql-indent-2:before{content:counter(list-2,lower-roman) ". "}.ql-editor ol li.ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-3{counter-increment:list-3}.ql-editor ol li.ql-indent-3:before{content:counter(list-3,decimal) ". "}.ql-editor ol li.ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-4{counter-increment:list-4}.ql-editor ol li.ql-indent-4:before{content:counter(list-4,lower-alpha) ". "}.ql-editor ol li.ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-5{counter-increment:list-5}.ql-editor ol li.ql-indent-5:before{content:counter(list-5,lower-roman) ". "}.ql-editor ol li.ql-indent-5{counter-reset:list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-6{counter-increment:list-6}.ql-editor ol li.ql-indent-6:before{content:counter(list-6,decimal) ". "}.ql-editor ol li.ql-indent-6{counter-reset:list-7 list-8 list-9}.ql-editor ol li.ql-indent-7{counter-increment:list-7}.ql-editor ol li.ql-indent-7:before{content:counter(list-7,lower-alpha) ". "}.ql-editor ol li.ql-indent-7{counter-reset:list-8 list-9}.ql-editor ol li.ql-indent-8{counter-increment:list-8}.ql-editor ol li.ql-indent-8:before{content:counter(list-8,lower-roman) ". "}.ql-editor ol li.ql-indent-8{counter-reset:list-9}.ql-editor ol li.ql-indent-9{counter-increment:list-9}.ql-editor ol li.ql-indent-9:before{content:counter(list-9,decimal) ". "}.ql-editor .ql-indent-1:not(.ql-direction-rtl){padding-left:3em}.ql-editor li.ql-indent-1:not(.ql-direction-rtl){padding-left:4.5em}.ql-editor .ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:3em}.ql-editor li.ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:4.5em}.ql-editor .ql-indent-2:not(.ql-direction-rtl){padding-left:6em}.ql-editor li.ql-indent-2:not(.ql-direction-rtl){padding-left:7.5em}.ql-editor .ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:6em}.ql-editor li.ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:7.5em}.ql-editor .ql-indent-3:not(.ql-direction-rtl){padding-left:9em}.ql-editor li.ql-indent-3:not(.ql-direction-rtl){padding-left:10.5em}.ql-editor .ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:9em}.ql-editor li.ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:10.5em}.ql-editor .ql-indent-4:not(.ql-direction-rtl){padding-left:12em}.ql-editor li.ql-indent-4:not(.ql-direction-rtl){padding-left:13.5em}.ql-editor .ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:12em}.ql-editor li.ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:13.5em}.ql-editor .ql-indent-5:not(.ql-direction-rtl){padding-left:15em}.ql-editor li.ql-indent-5:not(.ql-direction-rtl){padding-left:16.5em}.ql-editor .ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:15em}.ql-editor li.ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:16.5em}.ql-editor .ql-indent-6:not(.ql-direction-rtl){padding-left:18em}.ql-editor li.ql-indent-6:not(.ql-direction-rtl){padding-left:19.5em}.ql-editor .ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:18em}.ql-editor li.ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:19.5em}.ql-editor .ql-indent-7:not(.ql-direction-rtl){padding-left:21em}.ql-editor li.ql-indent-7:not(.ql-direction-rtl){padding-left:22.5em}.ql-editor .ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:21em}.ql-editor li.ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:22.5em}.ql-editor .ql-indent-8:not(.ql-direction-rtl){padding-left:24em}.ql-editor li.ql-indent-8:not(.ql-direction-rtl){padding-left:25.5em}.ql-editor .ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:24em}.ql-editor li.ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:25.5em}.ql-editor .ql-indent-9:not(.ql-direction-rtl){padding-left:27em}.ql-editor li.ql-indent-9:not(.ql-direction-rtl){padding-left:28.5em}.ql-editor .ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:27em}.ql-editor li.ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:28.5em}.ql-editor .ql-video{display:block;max-width:100%}.ql-editor .ql-video.ql-align-center{margin:0 auto}.ql-editor .ql-video.ql-align-right{margin:0 0 0 auto}.ql-editor .ql-bg-black{background-color:#000}.ql-editor .ql-bg-red{background-color:#e60000}.ql-editor .ql-bg-orange{background-color:#f90}.ql-editor .ql-bg-yellow{background-color:#ff0}.ql-editor .ql-bg-green{background-color:#008a00}.ql-editor .ql-bg-blue{background-color:#06c}.ql-editor .ql-bg-purple{background-color:#93f}.ql-editor .ql-color-white{color:#fff}.ql-editor .ql-color-red{color:#e60000}.ql-editor .ql-color-orange{color:#f90}.ql-editor .ql-color-yellow{color:#ff0}.ql-editor .ql-color-green{color:#008a00}.ql-editor .ql-color-blue{color:#06c}.ql-editor .ql-color-purple{color:#93f}.ql-editor .ql-font-serif{font-family:Georgia,Times New Roman,serif}.ql-editor .ql-font-monospace{font-family:Monaco,Courier New,monospace}.ql-editor .ql-size-small{font-size:.75em}.ql-editor .ql-size-large{font-size:1.5em}.ql-editor .ql-size-huge{font-size:2.5em}.ql-editor .ql-direction-rtl{direction:rtl;text-align:inherit}.ql-editor .ql-align-center{text-align:center}.ql-editor .ql-align-justify{text-align:justify}.ql-editor .ql-align-right{text-align:right}.ql-editor.ql-blank:before{color:#0009;content:attr(data-placeholder);font-style:italic;left:15px;pointer-events:none;position:absolute;right:15px}.ql-snow .ql-toolbar:after,.ql-snow.ql-toolbar:after{clear:both;content:"";display:table}.ql-snow .ql-toolbar button,.ql-snow.ql-toolbar button{background:none;border:none;cursor:pointer;display:inline-block;float:left;height:24px;padding:3px 5px;width:28px}.ql-snow .ql-toolbar button svg,.ql-snow.ql-toolbar button svg{float:left;height:100%}.ql-snow .ql-toolbar button:active:hover,.ql-snow.ql-toolbar button:active:hover{outline:none}.ql-snow .ql-toolbar input.ql-image[type=file],.ql-snow.ql-toolbar input.ql-image[type=file]{display:none}.ql-snow .ql-toolbar .ql-picker-item.ql-selected,.ql-snow .ql-toolbar .ql-picker-item:hover,.ql-snow .ql-toolbar .ql-picker-label.ql-active,.ql-snow .ql-toolbar .ql-picker-label:hover,.ql-snow .ql-toolbar button.ql-active,.ql-snow .ql-toolbar button:focus,.ql-snow .ql-toolbar button:hover,.ql-snow.ql-toolbar .ql-picker-item.ql-selected,.ql-snow.ql-toolbar .ql-picker-item:hover,.ql-snow.ql-toolbar .ql-picker-label.ql-active,.ql-snow.ql-toolbar .ql-picker-label:hover,.ql-snow.ql-toolbar button.ql-active,.ql-snow.ql-toolbar button:focus,.ql-snow.ql-toolbar button:hover{color:#06c}.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:focus .ql-fill,.ql-snow .ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover .ql-fill,.ql-snow .ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:focus .ql-fill,.ql-snow.ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:hover .ql-fill,.ql-snow.ql-toolbar button:hover .ql-stroke.ql-fill{fill:#06c}.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow .ql-toolbar button.ql-active .ql-stroke,.ql-snow .ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar button:focus .ql-stroke,.ql-snow .ql-toolbar button:focus .ql-stroke-miter,.ql-snow .ql-toolbar button:hover .ql-stroke,.ql-snow .ql-toolbar button:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow.ql-toolbar button.ql-active .ql-stroke,.ql-snow.ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar button:focus .ql-stroke,.ql-snow.ql-toolbar button:focus .ql-stroke-miter,.ql-snow.ql-toolbar button:hover .ql-stroke,.ql-snow.ql-toolbar button:hover .ql-stroke-miter{stroke:#06c}@media (pointer:coarse){.ql-snow .ql-toolbar button:hover:not(.ql-active),.ql-snow.ql-toolbar button:hover:not(.ql-active){color:#444}.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill{fill:#444}.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter{stroke:#444}}.ql-snow,.ql-snow *{box-sizing:border-box}.ql-snow .ql-hidden{display:none}.ql-snow .ql-out-bottom,.ql-snow .ql-out-top{visibility:hidden}.ql-snow .ql-tooltip{position:absolute;transform:translateY(10px)}.ql-snow .ql-tooltip a{cursor:pointer;text-decoration:none}.ql-snow .ql-tooltip.ql-flip{transform:translateY(-10px)}.ql-snow .ql-formats{display:inline-block;vertical-align:middle}.ql-snow .ql-formats:after{clear:both;content:"";display:table}.ql-snow .ql-stroke{fill:none;stroke:#444;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.ql-snow .ql-stroke-miter{fill:none;stroke:#444;stroke-miterlimit:10;stroke-width:2}.ql-snow .ql-fill,.ql-snow .ql-stroke.ql-fill{fill:#444}.ql-snow .ql-empty{fill:none}.ql-snow .ql-even{fill-rule:evenodd}.ql-snow .ql-stroke.ql-thin,.ql-snow .ql-thin{stroke-width:1}.ql-snow .ql-transparent{opacity:.4}.ql-snow .ql-direction svg:last-child{display:none}.ql-snow .ql-direction.ql-active svg:last-child{display:inline}.ql-snow .ql-direction.ql-active svg:first-child{display:none}.ql-snow .ql-editor h1{font-size:2em}.ql-snow .ql-editor h2{font-size:1.5em}.ql-snow .ql-editor h3{font-size:1.17em}.ql-snow .ql-editor h4{font-size:1em}.ql-snow .ql-editor h5{font-size:.83em}.ql-snow .ql-editor h6{font-size:.67em}.ql-snow .ql-editor a{text-decoration:underline}.ql-snow .ql-editor blockquote{border-left:4px solid #ccc;margin-bottom:5px;margin-top:5px;padding-left:16px}.ql-snow .ql-editor code,.ql-snow .ql-editor pre{background-color:#f0f0f0;border-radius:3px}.ql-snow .ql-editor pre{margin-bottom:5px;margin-top:5px;padding:5px 10px;white-space:pre-wrap}.ql-snow .ql-editor code{font-size:85%;padding:2px 4px}.ql-snow .ql-editor pre.ql-syntax{background-color:#23241f;color:#f8f8f2;overflow:visible}.ql-snow .ql-editor img{max-width:100%}.ql-snow .ql-picker{color:#444;display:inline-block;float:left;font-size:14px;font-weight:500;height:24px;position:relative;vertical-align:middle}.ql-snow .ql-picker-label{cursor:pointer;display:inline-block;height:100%;padding-left:8px;padding-right:2px;position:relative;width:100%}.ql-snow .ql-picker-label:before{display:inline-block;line-height:22px}.ql-snow .ql-picker-options{background-color:#fff;display:none;min-width:100%;padding:4px 8px;position:absolute;white-space:nowrap}.ql-snow .ql-picker-options .ql-picker-item{cursor:pointer;display:block;padding-bottom:5px;padding-top:5px}.ql-snow .ql-picker.ql-expanded .ql-picker-label{color:#ccc;z-index:2}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-fill{fill:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-stroke{stroke:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-options{display:block;margin-top:-1px;top:100%;z-index:1}.ql-snow .ql-color-picker,.ql-snow .ql-icon-picker{width:28px}.ql-snow .ql-color-picker .ql-picker-label,.ql-snow .ql-icon-picker .ql-picker-label{padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-label svg,.ql-snow .ql-icon-picker .ql-picker-label svg{right:4px}.ql-snow .ql-icon-picker .ql-picker-options{padding:4px 0}.ql-snow .ql-icon-picker .ql-picker-item{height:24px;padding:2px 4px;width:24px}.ql-snow .ql-color-picker .ql-picker-options{padding:3px 5px;width:152px}.ql-snow .ql-color-picker .ql-picker-item{border:1px solid #0000;float:left;height:16px;margin:2px;padding:0;width:16px}.ql-snow .ql-picker:not(.ql-color-picker):not(.ql-icon-picker) svg{margin-top:-9px;position:absolute;right:0;top:50%;width:18px}.ql-snow .ql-picker.ql-font .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-label]:not([data-label=""]):before{content:attr(data-label)}.ql-snow .ql-picker.ql-header{width:98px}.ql-snow .ql-picker.ql-header .ql-picker-item:before,.ql-snow .ql-picker.ql-header .ql-picker-label:before{content:"Normal"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="1"]:before{content:"Heading 1"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="2"]:before{content:"Heading 2"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="3"]:before{content:"Heading 3"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="4"]:before{content:"Heading 4"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="5"]:before{content:"Heading 5"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="6"]:before{content:"Heading 6"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{font-size:2em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{font-size:1.5em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{font-size:1.17em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{font-size:1em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{font-size:.83em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{font-size:.67em}.ql-snow .ql-picker.ql-font{width:108px}.ql-snow .ql-picker.ql-font .ql-picker-item:before,.ql-snow .ql-picker.ql-font .ql-picker-label:before{content:"Sans Serif"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=serif]:before{content:"Serif"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=monospace]:before{content:"Monospace"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{font-family:Georgia,Times New Roman,serif}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{font-family:Monaco,Courier New,monospace}.ql-snow .ql-picker.ql-size{width:98px}.ql-snow .ql-picker.ql-size .ql-picker-item:before,.ql-snow .ql-picker.ql-size .ql-picker-label:before{content:"Normal"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=small]:before{content:"Small"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=large]:before{content:"Large"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=huge]:before{content:"Huge"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{font-size:10px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{font-size:18px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{font-size:32px}.ql-snow .ql-color-picker.ql-background .ql-picker-item{background-color:#fff}.ql-snow .ql-color-picker.ql-color .ql-picker-item{background-color:#000}.ql-toolbar.ql-snow{border:1px solid #ccc;box-sizing:border-box;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;padding:8px}.ql-toolbar.ql-snow .ql-formats{margin-right:15px}.ql-toolbar.ql-snow .ql-picker-label{border:1px solid #0000}.ql-toolbar.ql-snow .ql-picker-options{border:1px solid #0000;box-shadow:0 2px 8px #0003}.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label,.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options{border-color:#ccc}.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item.ql-selected,.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item:hover{border-color:#000}.ql-toolbar.ql-snow+.ql-container.ql-snow{border-top:0}.ql-snow .ql-tooltip{background-color:#fff;border:1px solid #ccc;box-shadow:0 0 5px #ddd;color:#444;padding:5px 12px;white-space:nowrap}.ql-snow .ql-tooltip:before{content:"Visit URL:";line-height:26px;margin-right:8px}.ql-snow .ql-tooltip input[type=text]{border:1px solid #ccc;display:none;font-size:13px;height:26px;margin:0;padding:3px 5px;width:170px}.ql-snow .ql-tooltip a.ql-preview{display:inline-block;max-width:200px;overflow-x:hidden;text-overflow:ellipsis;vertical-align:top}.ql-snow .ql-tooltip a.ql-action:after{border-right:1px solid #ccc;content:"Edit";margin-left:16px;padding-right:8px}.ql-snow .ql-tooltip a.ql-remove:before{content:"Remove";margin-left:8px}.ql-snow .ql-tooltip a{line-height:26px}.ql-snow .ql-tooltip.ql-editing a.ql-preview,.ql-snow .ql-tooltip.ql-editing a.ql-remove{display:none}.ql-snow .ql-tooltip.ql-editing input[type=text]{display:inline-block}.ql-snow .ql-tooltip.ql-editing a.ql-action:after{border-right:0;content:"Save";padding-right:0}.ql-snow .ql-tooltip[data-mode=link]:before{content:"Enter link:"}.ql-snow .ql-tooltip[data-mode=formula]:before{content:"Enter formula:"}.ql-snow .ql-tooltip[data-mode=video]:before{content:"Enter video:"}.ql-snow a{color:#06c}.ql-container.ql-snow{border:1px solid #ccc}.rich-text-editor-wrapper{background:#fff;background:var(--input-bg,var(--bg-primary,#fff));border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.rich-text-editor-wrapper .ql-toolbar{background:var(--bg-secondary);border:none;border-bottom:1px solid var(--border-color);padding:8px 12px}.rich-text-editor-wrapper .ql-container{background:#fff;background:var(--input-bg,var(--bg-primary,#fff));border:none;font-size:15px;line-height:1.6}.rich-text-editor-wrapper .ql-editor{color:var(--text-primary);min-height:inherit;padding:12px 16px}.rich-text-editor-wrapper .ql-editor.ql-blank:before{color:var(--text-secondary);font-style:normal}.rich-text-editor-wrapper .ql-editor strong{font-weight:700}.rich-text-editor-wrapper .ql-editor ol,.rich-text-editor-wrapper .ql-editor ul{margin:.5em 0;padding-left:1.5em}[data-theme=dark] .rich-text-editor-wrapper .ql-stroke{stroke:#b0b0b0;stroke:var(--text-secondary,#b0b0b0)}[data-theme=dark] .rich-text-editor-wrapper .ql-fill{fill:#b0b0b0;fill:var(--text-secondary,#b0b0b0)}[data-theme=dark] .rich-text-editor-wrapper .ql-picker-label{color:#fff;color:var(--text-primary,#fff)}[data-theme=dark] .rich-text-editor-wrapper .ql-picker-label:hover .ql-stroke,[data-theme=dark] .rich-text-editor-wrapper .ql-toolbar button:hover .ql-stroke{stroke:#ed0331;stroke:var(--primary-color,#ed0331)}[data-theme=dark] .rich-text-editor-wrapper .ql-picker-label:hover .ql-fill,[data-theme=dark] .rich-text-editor-wrapper .ql-toolbar button:hover .ql-fill{fill:#ed0331;fill:var(--primary-color,#ed0331)}[data-theme=dark] .rich-text-editor-wrapper .ql-toolbar button.ql-active .ql-stroke{stroke:#ed0331;stroke:var(--primary-color,#ed0331)}[data-theme=dark] .rich-text-editor-wrapper .ql-toolbar button.ql-active .ql-fill{fill:#ed0331;fill:var(--primary-color,#ed0331)}[data-theme=dark] .rich-text-editor-wrapper .ql-picker-options{background:#2a2a2a!important;background:var(--bg-secondary,#2a2a2a)!important;border-color:#404040!important;border-color:var(--border-color,#404040)!important}[data-theme=dark] .rich-text-editor-wrapper .ql-picker-item{color:#fff!important;color:var(--text-primary,#fff)!important}[data-theme=dark] .rich-text-editor-wrapper .ql-picker-item.ql-selected,[data-theme=dark] .rich-text-editor-wrapper .ql-picker-item:hover{color:#ed0331!important;color:var(--primary-color,#ed0331)!important}[data-theme=dark] .rich-text-editor-wrapper .ql-picker-label{border-color:#0000!important}[data-theme=dark] .rich-text-editor-wrapper .ql-snow .ql-tooltip{background:#2a2a2a;background:var(--bg-secondary,#2a2a2a);border-color:#404040;border-color:var(--border-color,#404040);box-shadow:0 4px 12px #0006;color:#fff;color:var(--text-primary,#fff)}[data-theme=dark] .rich-text-editor-wrapper .ql-snow .ql-tooltip input[type=text]{background:#1a1a1a;background:var(--bg-primary,#1a1a1a);border-color:#404040;border-color:var(--border-color,#404040);color:#fff;color:var(--text-primary,#fff)}[data-theme=dark] .rich-text-editor-wrapper .ql-snow .ql-tooltip a{color:#b0b0b0;color:var(--text-secondary,#b0b0b0)}[data-theme=dark] .ql-snow .ql-picker-options{background:#2a2a2a!important;background:var(--bg-secondary,#2a2a2a)!important;border-color:#404040!important;border-color:var(--border-color,#404040)!important}[data-theme=dark] .ql-snow .ql-picker-item{color:#fff!important;color:var(--text-primary,#fff)!important}[data-theme=dark] .ql-snow .ql-picker-item.ql-selected,[data-theme=dark] .ql-snow .ql-picker-item:hover{color:#ed0331!important;color:var(--primary-color,#ed0331)!important}[data-theme=dark] .ql-snow .ql-tooltip{background:#2a2a2a!important;background:var(--bg-secondary,#2a2a2a)!important;box-shadow:0 4px 12px #0006!important}[data-theme=dark] .ql-snow .ql-tooltip,[data-theme=dark] .ql-snow .ql-tooltip input[type=text]{border-color:#404040!important;border-color:var(--border-color,#404040)!important;color:#fff!important;color:var(--text-primary,#fff)!important}[data-theme=dark] .ql-snow .ql-tooltip input[type=text]{background:#1a1a1a!important;background:var(--bg-primary,#1a1a1a)!important}[data-theme=dark] .ql-snow .ql-tooltip a.ql-action,[data-theme=dark] .ql-snow .ql-tooltip a.ql-remove{color:#b0b0b0!important;color:var(--text-secondary,#b0b0b0)!important}.create-assignment-container{animation:fadeIn .5s ease;margin:0 auto;max-width:1200px;padding:20px}.create-assignment-header{align-items:center;animation:fadeInDown .5s ease;display:flex;gap:20px;margin-bottom:30px}.create-assignment-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;color:var(--text-primary);font-size:28px;font-weight:700;margin:0}.create-assignment-form{animation:fadeInUp .6s ease;display:flex;flex-direction:column;gap:30px}.form-section{background:var(--card-bg);border:2px solid var(--border-color);border-radius:16px;box-shadow:0 4px 12px var(--shadow);padding:28px;transition:all .3s ease}.form-section:hover{border-color:#667eea4d;box-shadow:0 6px 20px var(--shadow)}.form-section h2{color:var(--text-primary);font-size:22px;font-weight:700;margin-bottom:10px}.section-description{color:var(--text-secondary);font-size:14px;line-height:1.6;margin-bottom:24px}.form-group input[type=datetime-local],.form-group input[type=number],.form-group input[type=text],.form-group select,.form-group textarea{background:var(--input-bg);border:2px solid var(--border-color);border-radius:10px;color:var(--text-primary);font-family:inherit;font-size:14px;padding:12px 16px;transition:all .3s ease;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{background:var(--card-bg);border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}[data-theme=dark] .form-group input,[data-theme=dark] .form-group select,[data-theme=dark] .form-group textarea{background:var(--input-bg);border-color:var(--border-color)}[data-theme=dark] .form-group input:focus,[data-theme=dark] .form-group select:focus,[data-theme=dark] .form-group textarea:focus{border-color:#8b9ef7;box-shadow:0 0 0 3px #8b9ef733}.form-group input[type=checkbox]{accent-color:#667eea;cursor:pointer;height:18px;margin-right:8px;width:auto}[data-theme=dark] .form-group input[type=checkbox]{accent-color:#8b9ef7;filter:brightness(1.2)}.form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.form-group.flex-2{grid-column:span 2}.tech-stack-input{display:flex;gap:10px}.tech-stack-input input{flex:1 1}.add-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;box-shadow:0 4px 12px #667eea4d;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .3s ease;white-space:nowrap}.add-button:hover{box-shadow:0 6px 16px #667eea66;transform:translateY(-2px)}.tech-stack-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.tech-tag{align-items:center;background:linear-gradient(135deg,#667eea26,#764ba21a);border:2px solid #667eea4d;border-radius:20px;color:#667eea;display:inline-flex;font-size:13px;font-weight:600;gap:8px;padding:8px 14px;transition:all .3s ease}[data-theme=dark] .tech-tag{background:linear-gradient(135deg,#8b9ef733,#9f7aea26);border-color:#8b9ef766;color:#8b9ef7}.tech-tag:hover{box-shadow:0 4px 8px #667eea33;transform:translateY(-2px)}.tech-tag button{background:none;border:none;color:inherit;cursor:pointer;font-size:18px;line-height:1;padding:0;transition:transform .2s ease}.tech-tag button:hover{transform:scale(1.2)}.feature-header{align-items:center;margin-bottom:16px}.feature-header h4{color:var(--text-primary);font-weight:600;margin:0}.remove-button{background:linear-gradient(135deg,#ff5252,#e53935);border:none;border-radius:8px;box-shadow:0 2px 8px #ff52524d;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:all .3s ease}.remove-button:hover{box-shadow:0 4px 12px #ff525266;transform:translateY(-2px)}.checkbox-group{align-items:center;display:flex;padding-top:28px}.checkbox-group label{align-items:center;display:flex;gap:6px;margin:0}.add-feature-button{background:var(--bg-secondary);border:2px dashed var(--border-color);border-radius:10px;color:var(--text-secondary);cursor:pointer;font-size:14px;font-weight:600;padding:14px;transition:all .3s ease;width:100%}.add-feature-button:hover{background:#667eea1a;border-color:#667eea;border-style:solid;color:#667eea}[data-theme=dark] .add-feature-button:hover{background:#8b9ef726;border-color:#8b9ef7;color:#8b9ef7}.marks-summary{background:linear-gradient(135deg,#667eea1a,#764ba20d);border:2px solid #667eea4d;border-radius:10px;color:#667eea;font-weight:600;margin-top:16px;padding:14px 18px}[data-theme=dark] .marks-summary{background:linear-gradient(135deg,#8b9ef726,#9f7aea1a);border-color:#8b9ef766;color:#8b9ef7}.marks-summary .warning{color:#ff9800;font-weight:700;margin-left:8px}[data-theme=dark] .marks-summary .warning{color:#ffb74d}.weights-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:16px}.weight-item label{color:#666;display:block;font-size:13px;font-weight:400;margin-bottom:6px}.weight-input{align-items:center;display:flex;gap:8px}.weight-input input{border:1px solid #ddd;border-radius:6px;flex:1 1;font-size:14px;padding:8px 12px}.weight-input span{color:#666;font-size:14px;font-weight:500}.weights-total{background:linear-gradient(135deg,#4caf501a,#2e7d320d);border:2px solid #4caf504d;border-radius:10px;color:#4caf50;font-weight:600;padding:14px 18px;text-align:center}[data-theme=dark] .weights-total{background:linear-gradient(135deg,#81c78426,#66bb6a1a);border-color:#81c78466;color:#81c784}.weights-total .warning{color:#ff9800;font-weight:700;margin-left:8px}[data-theme=dark] .weights-total .warning{color:#ffb74d}.rules-checkboxes{display:flex;flex-direction:column;gap:12px}.rules-checkboxes label{align-items:center;color:#333;cursor:pointer;display:flex;font-weight:400;gap:10px}.rules-checkboxes input[type=checkbox]{cursor:pointer;height:18px;width:18px}.form-actions{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;justify-content:flex-end;padding:20px}.cancel-button,.submit-button{padding:14px 36px}.submit-button{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 16px #667eea66}.submit-button:hover{box-shadow:0 6px 20px #667eea80}@media (max-width:768px){.create-assignment-container{padding:12px}.form-section{padding:16px}.form-row{grid-template-columns:1fr}.form-group.flex-2{grid-column:span 1}.weights-grid{grid-template-columns:1fr}}.assignment-details-container{animation:fadeIn .5s ease;margin:0 auto;max-width:900px;padding:20px}.assignment-details-header{margin-bottom:32px}.assignment-details-header .back-button{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:10px;color:var(--text-primary);cursor:pointer;font-size:14px;font-weight:500;margin-bottom:20px;padding:10px 20px;transition:all .3s ease}.assignment-details-header .back-button:hover{background:var(--border-color);border-color:#667eea}.assignment-details-header h1{color:var(--text-primary);font-size:28px;font-weight:700;margin:0 0 16px}.assignment-meta-row{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.assignment-meta-row .meta-chip,.assignment-meta-row .status-badge{border-radius:20px;font-size:13px;font-weight:600;padding:6px 14px;text-transform:capitalize}.assignment-meta-row .meta-chip{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-primary)}.assignment-meta-row .meta-chip.difficulty{border:none;color:#fff}.assignment-details-content{background:var(--card-bg);border:2px solid var(--border-color);border-radius:16px;box-shadow:0 4px 12px var(--shadow);padding:28px}.detail-section{margin-bottom:28px}.detail-section:last-of-type{margin-bottom:0}.detail-section h2{border-bottom:1px solid var(--border-color);color:var(--text-primary);font-size:18px;font-weight:600;margin:0 0 12px;padding-bottom:8px}.detail-section .rich-content{color:var(--text-primary);line-height:1.6}.feature-list{list-style:disc;margin:0;padding-left:24px}.feature-list li{line-height:1.6;margin-bottom:14px}.feature-list .feature-marks{color:var(--text-secondary);font-size:.95em}.feature-list .required-badge{background:#ff980033;border-radius:4px;color:#e65100;font-size:12px;font-weight:600;margin-left:8px;padding:2px 8px}[data-theme=dark] .feature-list .required-badge{background:#ffb74d33;color:#ffb74d}.feature-list .feature-description{color:var(--text-secondary);font-size:14px;margin-left:0;margin-top:8px;padding-left:0}.detail-actions{border-top:1px solid var(--border-color);display:flex;flex-wrap:wrap;gap:12px;margin-top:32px;padding-top:24px}.action-btn{border:2px solid #0000;border-radius:10px;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .3s ease}.action-btn.primary{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#0000;color:#fff}.action-btn.primary:hover{box-shadow:0 4px 16px #667eea66;transform:translateY(-2px)}.action-btn.secondary{background:var(--bg-secondary);border-color:var(--border-color);color:var(--text-primary)}.action-btn.secondary:hover{background:var(--border-color)}.action-btn.edit{background:linear-gradient(135deg,#17a2b8,#138496);border-color:#0000;color:#fff}.action-btn.edit:hover{box-shadow:0 4px 16px #17a2b866;transform:translateY(-2px)}.sd-list-container{margin:0 auto;max-width:1400px;padding:24px}.sd-list-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.sd-list-header h1{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:1.6rem;font-weight:700;margin:0}.sd-create-btn{background:linear-gradient(90deg,#ed0331,#87021c);background:var(--primary-gradient,linear-gradient(to right,#ed0331,#87021c));border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;padding:10px 22px;transition:all .2s ease}.sd-create-btn:hover{box-shadow:0 4px 12px #ed033140;opacity:.9;transform:translateY(-1px)}.sd-filters{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:24px}.sd-filters .filter-group{align-items:center;display:flex;gap:8px}.sd-filters label{color:#666;color:var(--text-secondary,#666);font-size:.9rem;font-weight:500}.sd-filters select{background:#fff;background:var(--input-bg,var(--bg-primary,#fff));border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:8px;color:#333;color:var(--text-primary,#333);font-size:.9rem;padding:8px 14px;transition:border-color .2s ease}.sd-filters select:focus{border-color:#ed0331;border-color:var(--primary-color,#ed0331);outline:none}.sd-empty{color:#666;color:var(--text-secondary,#666);padding:60px 20px;text-align:center}.sd-empty button{background:linear-gradient(90deg,#ed0331,#87021c);background:var(--primary-gradient,linear-gradient(to right,#ed0331,#87021c));border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;margin-top:16px;padding:10px 24px;transition:all .2s ease}.sd-empty button:hover{opacity:.9;transform:translateY(-1px)}.sd-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(380px,1fr))}.sd-card{background:#fff;background:var(--card-bg,var(--bg-primary,#fff));border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:12px;box-shadow:0 2px 8px #0000000f;box-shadow:0 2px 8px var(--shadow,#0000000f);padding:22px;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.sd-card:hover{border-color:#ed0331;border-color:var(--primary-color,#ed0331);box-shadow:0 6px 20px #0000001f;box-shadow:0 6px 20px var(--shadow,#0000001f);transform:translateY(-3px)}.sd-card-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.sd-card-header h3{color:#1a1a2e;color:var(--text-primary,#1a1a2e);flex:1 1;font-size:1.08rem;font-weight:700;line-height:1.35;margin:0}.sd-card-badges{display:flex;flex-shrink:0;gap:6px}.sd-badge{border-radius:12px;font-size:.75rem;font-weight:600;padding:4px 10px;text-transform:capitalize}.sd-badge.difficulty{color:#fff}.sd-badge.category{background:#f0f0f0;background:var(--bg-secondary,#f0f0f0);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);color:#ed0331;color:var(--primary-color,#ed0331)}.sd-card-desc{color:#666;color:var(--text-secondary,#666);font-size:.88rem;line-height:1.5;margin-bottom:12px;min-height:40px}.sd-card-meta{align-items:center;color:#888;color:var(--text-secondary,#888);display:flex;font-size:.85rem;justify-content:space-between;margin-bottom:16px}.sd-active-badge{border-radius:8px;font-size:.75rem;font-weight:600;padding:3px 10px}.sd-active-badge.active{background:#27ae601f;border:1px solid #27ae604d;color:#27ae60}.sd-active-badge.inactive{background:#f5f5f5;background:var(--bg-secondary,#f5f5f5);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);color:#999;color:var(--text-secondary,#999)}.sd-card-stats{border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border-color,#e0e0e0);border-top:1px solid #e0e0e0;border-top:1px solid var(--border-color,#e0e0e0);display:flex;justify-content:space-around;margin-bottom:16px;padding:14px 0}.sd-stat{text-align:center}.sd-stat-val{color:#333;color:var(--text-primary,#333);display:block;font-size:1.15rem;font-weight:700}.sd-stat-label{color:#888;color:var(--text-secondary,#888);font-size:.75rem;letter-spacing:.02em;text-transform:uppercase}.sd-card-actions{display:flex;flex-wrap:wrap;gap:8px}.sd-action-btn{border:1px solid #0000;border-radius:8px;cursor:pointer;font-size:.82rem;font-weight:600;padding:7px 14px;transition:all .2s ease}.sd-action-btn:hover{transform:translateY(-1px)}.sd-action-btn.edit{background:#f5f5f5;background:var(--bg-secondary,#f5f5f5);border-color:#e67e22;color:#e67e22}.sd-action-btn.edit:hover{background:#e67e22;color:#fff}.sd-action-btn.assign{background:#f5f5f5;background:var(--bg-secondary,#f5f5f5);border-color:#2196f3;color:#2196f3}.sd-action-btn.assign:hover{background:#2196f3;color:#fff}.sd-action-btn.subs{background:#f5f5f5;background:var(--bg-secondary,#f5f5f5);border-color:#5c6bc0;color:#5c6bc0}.sd-action-btn.subs:hover{background:#5c6bc0;color:#fff}.sd-action-btn.delete{background:#0000;border-color:#e53935;color:#e53935}.sd-action-btn.delete:hover{background:#e53935;color:#fff}.sd-status-pill{border-radius:12px;color:#fff;display:inline-block;font-size:.78rem;font-weight:600;padding:4px 12px;text-transform:capitalize}.sd-score-cell{font-size:1.02rem;font-weight:700}.sd-grade-cell{font-size:1.05rem;font-weight:700}.sd-grade-cell.grade-pass{color:#27ae60}.sd-grade-cell.grade-avg{color:#f39c12}.sd-grade-cell.grade-fail{color:#e74c3c}.sd-violation{color:#e74c3c;font-weight:600}.sd-submissions-table{background:var(--card-bg,var(--bg-primary,#fff));border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-collapse:initial;border-radius:12px;border-spacing:0}.sd-submissions-table thead{background:#f5f5f5;background:var(--bg-secondary,#f5f5f5)}.sd-submissions-table th{font-weight:700;letter-spacing:.03em;text-transform:uppercase}.sd-submissions-table td,.sd-submissions-table th{border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border-color,#e0e0e0);padding:14px 16px}.sd-submissions-table td{vertical-align:middle}.sd-submissions-table tbody tr:last-child td{border-bottom:none}.sd-submissions-table tbody tr:hover{background:#f5f5f5;background:var(--bg-secondary,#f5f5f5)}.sd-submissions-table td small{color:#888;color:var(--text-secondary,#888)}@media (max-width:768px){.sd-list-container{padding:16px}.sd-list-header{align-items:flex-start;flex-direction:column;gap:12px}.sd-grid{grid-template-columns:1fr}.sd-filters{flex-direction:column}}.csd-container{margin:0 auto;max-width:1200px;padding:28px}.csd-header{align-items:center;border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border-color,#e0e0e0);display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:20px}.csd-header h1{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:1.6rem;font-weight:700;margin:0}.csd-header-actions{display:flex;gap:10px}.csd-btn{border:none;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:600;padding:10px 22px;transition:all .2s ease}.csd-btn.primary{background:linear-gradient(90deg,#ed0331,#87021c);background:var(--primary-gradient,linear-gradient(to right,#ed0331,#87021c));color:#fff}.csd-btn.primary:hover{box-shadow:0 4px 12px #ed033140;opacity:.9;transform:translateY(-1px)}.csd-btn.primary:disabled{box-shadow:none;cursor:not-allowed;opacity:.5;transform:none}.csd-btn.secondary{background:#f0f0f0;background:var(--bg-secondary,#f0f0f0);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);color:#333;color:var(--text-primary,#333)}.csd-btn.secondary:hover{background:#e0e0e0;background:var(--border-color,#e0e0e0);transform:translateY(-1px)}.csd-btn-small{background:#f5f5f5;background:var(--bg-secondary,#f5f5f5);border:1px dashed #e0e0e0;border:1px dashed var(--border-color,#e0e0e0);border-radius:6px;color:#ed0331;color:var(--primary-color,#ed0331);cursor:pointer;font-size:.85rem;font-weight:600;margin-top:10px;padding:7px 16px;transition:all .2s ease}.csd-btn-small:hover{background:#e0e0e0;background:var(--border-color,#e0e0e0);border-style:solid}.csd-error{background:#fff5f5;background:var(--bg-secondary,#fff5f5);border:1px solid #e53935;border-radius:8px;color:#e53935;font-size:.9rem;font-weight:500;margin-bottom:16px;padding:12px 16px}.csd-tabs{border-bottom:2px solid #e0e0e0;border-bottom:2px solid var(--border-color,#e0e0e0);display:flex;gap:0;margin-bottom:28px;overflow-x:auto}.csd-tab{background:none;border:none;border-bottom:3px solid #0000;color:#666;color:var(--text-secondary,#666);cursor:pointer;font-size:.9rem;font-weight:600;margin-bottom:-2px;padding:12px 20px;position:relative;transition:all .2s ease;white-space:nowrap}.csd-tab:hover{background:#f5f5f5;background:var(--bg-secondary,#f5f5f5);color:#333;color:var(--text-primary,#333)}.csd-tab.active{border-bottom-color:#ed0331;border-bottom-color:var(--primary-color,#ed0331);color:#ed0331;color:var(--primary-color,#ed0331)}.csd-content{background:#fff;background:var(--card-bg,var(--bg-primary,#fff));border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:12px;box-shadow:0 2px 8px #0000000f;box-shadow:0 2px 8px var(--shadow,#0000000f);padding:28px}.csd-info{background:#f5f5f5;background:var(--bg-secondary,#f5f5f5);border-left:4px solid #ed0331;border-left:4px solid var(--primary-color,#ed0331);border-radius:8px;color:#888;color:var(--text-secondary,#888);font-size:.9rem;line-height:1.5;margin-bottom:24px;padding:14px 18px}.csd-field{margin-bottom:18px}.csd-field label{color:#333;color:var(--text-primary,#333);display:block;font-size:.88rem;font-weight:600;letter-spacing:.01em;margin-bottom:7px}.csd-field input[type=number],.csd-field input[type=text],.csd-field select,.csd-field textarea{background:#fff;background:var(--input-bg,var(--bg-primary,#fff));border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:8px;box-sizing:border-box;color:#333;color:var(--text-primary,#333);font-size:.9rem;padding:10px 14px;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.csd-field textarea{font-family:inherit;line-height:1.5;resize:vertical}.csd-field input:focus,.csd-field select:focus,.csd-field textarea:focus{border-color:#ed0331;border-color:var(--primary-color,#ed0331);box-shadow:0 0 0 3px #ed03311a;outline:none}.csd-field select option{background:#fff;background:var(--bg-primary,#fff);color:#333;color:var(--text-primary,#333)}.csd-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.csd-row .csd-field{margin-bottom:16px}.csd-checkbox-label{align-items:center;cursor:pointer;display:flex!important;font-weight:500!important;gap:10px}.csd-checkbox-label input[type=checkbox]{accent-color:#ed0331;accent-color:var(--primary-color,#ed0331);cursor:pointer;height:18px;width:18px}.csd-section h3{border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border-color,#e0e0e0);color:#333;color:var(--text-primary,#333);font-size:1rem;font-weight:700;margin:24px 0 14px;padding-bottom:8px}.csd-section h3:first-child{margin-top:0}.csd-weight-total{background:#f5f5f5;background:var(--bg-secondary,#f5f5f5);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:10px;font-size:1rem;font-weight:700;margin-bottom:20px;padding:12px;text-align:center}.csd-weights-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.csd-weight-item{background:#f5f5f5;background:var(--bg-secondary,#f5f5f5);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:10px;padding:14px 18px;transition:border-color .2s ease}.csd-weight-item:hover{border-color:#ed0331;border-color:var(--primary-color,#ed0331)}.csd-weight-item label{color:#333;color:var(--text-primary,#333);display:block;font-size:.85rem;font-weight:600;margin-bottom:8px}.csd-weight-input-wrap{align-items:center;display:flex;gap:12px}.csd-weight-input-wrap input[type=range]{accent-color:#ed0331;accent-color:var(--primary-color,#ed0331);cursor:pointer;flex:1 1;height:6px}.csd-weight-value{color:#ed0331;color:var(--primary-color,#ed0331);font-size:1rem;font-weight:700;min-width:42px;text-align:right}.csd-ref-section{background:#f5f5f5;background:var(--bg-secondary,#f5f5f5);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:10px;margin-bottom:16px;padding:18px;transition:border-color .2s ease}.csd-ref-section:hover{border-color:#ed0331;border-color:var(--primary-color,#ed0331)}.csd-ref-section h3{border-bottom:none!important;color:#ed0331;color:var(--primary-color,#ed0331);font-size:.92rem;margin:0 0 12px!important;padding-bottom:0!important}.csd-hint-section{background:#f5f5f5;background:var(--bg-secondary,#f5f5f5);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:10px;margin-bottom:16px;padding:18px}.csd-hint-section h3{border-bottom:none!important;color:#ed0331;color:var(--primary-color,#ed0331);font-size:.92rem;margin:0 0 14px!important;padding-bottom:0!important}.csd-hint-item{background:#fff;background:var(--bg-primary,#fff);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:10px;margin-bottom:14px;padding:14px}.csd-hint-editor-row{display:flex;flex-direction:column;gap:10px}.csd-hint-editor-wrap{width:100%}.csd-hint-controls{align-items:center;border-top:1px solid #e0e0e0;border-top:1px solid var(--border-color,#e0e0e0);display:flex;gap:12px;justify-content:space-between;padding-top:8px}.csd-hint-penalty-wrap{align-items:center;display:flex;font-size:.85rem;font-weight:500;gap:5px;white-space:nowrap}.csd-hint-penalty-wrap,.csd-hint-penalty-wrap label{color:#666;color:var(--text-secondary,#666)}.csd-hint-penalty{background:#fff;background:var(--input-bg,var(--bg-primary,#fff));border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:8px;color:#333;color:var(--text-primary,#333);font-size:.88rem;padding:7px 6px;text-align:center;transition:border-color .2s ease;width:54px}.csd-hint-penalty:focus{border-color:#ed0331;border-color:var(--primary-color,#ed0331);box-shadow:0 0 0 3px #ed03311a;outline:none}.csd-hint-remove{background:#0000;border:1px solid #e53935;border-radius:8px;color:#e53935;cursor:pointer;font-size:.8rem;font-weight:600;padding:8px 12px;transition:all .2s ease;white-space:nowrap}.csd-hint-remove:hover{background:#e53935;color:#fff}.csd-scenario-row{align-items:center;display:flex;gap:10px;margin-bottom:10px}.csd-scenario-row input{background:#fff;background:var(--input-bg,var(--bg-primary,#fff));border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:8px;color:#333;color:var(--text-primary,#333);flex:1 1;font-size:.88rem;padding:9px 12px;transition:border-color .2s ease}.csd-scenario-row input:focus{border-color:#ed0331;border-color:var(--primary-color,#ed0331);box-shadow:0 0 0 3px #ed03311a;outline:none}.csd-hint-item .rich-text-editor-wrapper,.csd-ref-section .rich-text-editor-wrapper,.csd-section .rich-text-editor-wrapper{background:#fff;background:var(--input-bg,var(--bg-primary,#fff));border-color:#e0e0e0;border-color:var(--border-color,#e0e0e0)}.csd-hint-item .rich-text-editor-wrapper .ql-toolbar,.csd-ref-section .rich-text-editor-wrapper .ql-toolbar,.csd-section .rich-text-editor-wrapper .ql-toolbar{background:#f5f5f5;background:var(--bg-secondary,#f5f5f5);border-color:#e0e0e0;border-color:var(--border-color,#e0e0e0)}[data-theme=dark] .csd-container .ql-toolbar .ql-stroke{stroke:#b0b0b0;stroke:var(--text-secondary,#b0b0b0)}[data-theme=dark] .csd-container .ql-toolbar .ql-fill{fill:#b0b0b0;fill:var(--text-secondary,#b0b0b0)}[data-theme=dark] .csd-container .ql-toolbar .ql-picker-label{color:#fff;color:var(--text-primary,#fff)}[data-theme=dark] .csd-container .ql-toolbar .ql-picker-label:hover .ql-stroke,[data-theme=dark] .csd-container .ql-toolbar button:hover .ql-stroke{stroke:#ed0331;stroke:var(--primary-color,#ed0331)}[data-theme=dark] .csd-container .ql-toolbar .ql-picker-label:hover .ql-fill,[data-theme=dark] .csd-container .ql-toolbar button:hover .ql-fill{fill:#ed0331;fill:var(--primary-color,#ed0331)}[data-theme=dark] .csd-container .ql-toolbar button.ql-active .ql-stroke{stroke:#ed0331;stroke:var(--primary-color,#ed0331)}[data-theme=dark] .csd-container .ql-toolbar button.ql-active .ql-fill{fill:#ed0331;fill:var(--primary-color,#ed0331)}[data-theme=dark] .csd-container .ql-picker-options{background:#2a2a2a!important;background:var(--bg-secondary,#2a2a2a)!important;border-color:#404040!important;border-color:var(--border-color,#404040)!important}[data-theme=dark] .csd-container .ql-picker-item{color:#fff!important;color:var(--text-primary,#fff)!important}[data-theme=dark] .csd-container .ql-picker-item:hover{color:#ed0331!important;color:var(--primary-color,#ed0331)!important}[data-theme=dark] .csd-container .ql-picker-label{border-color:#0000!important}[data-theme=dark] .csd-container .ql-container{background:#2a2a2a;background:var(--input-bg,#2a2a2a)}[data-theme=dark] .csd-container .ql-editor{color:#fff;color:var(--text-primary,#fff)}[data-theme=dark] .csd-container .ql-editor.ql-blank:before{color:#888;color:var(--text-secondary,#888)}[data-theme=dark] .csd-container .ql-snow .ql-tooltip{background:#2a2a2a;background:var(--bg-secondary,#2a2a2a);border-color:#404040;border-color:var(--border-color,#404040);box-shadow:0 4px 12px #0006;color:#fff;color:var(--text-primary,#fff)}[data-theme=dark] .csd-container .ql-snow .ql-tooltip input[type=text]{background:#1a1a1a;background:var(--bg-primary,#1a1a1a);border-color:#404040;border-color:var(--border-color,#404040);color:#fff;color:var(--text-primary,#fff)}[data-theme=dark] .csd-container .ql-snow .ql-tooltip a{color:#b0b0b0;color:var(--text-secondary,#b0b0b0)}@media (max-width:768px){.csd-container{padding:16px}.csd-content{padding:18px}.csd-header{align-items:flex-start;flex-direction:column;gap:12px}.csd-row,.csd-weights-grid{grid-template-columns:1fr}.csd-hint-controls{flex-wrap:wrap}.csd-tabs{gap:0}.csd-tab{font-size:.82rem;padding:10px 14px}}.english-question-list{margin:0 auto;max-width:1200px;padding:20px}.english-question-list .page-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.english-question-list .header-actions{display:flex;gap:10px}.question-type-tabs{display:flex;gap:8px;margin-bottom:16px;overflow-x:auto;padding-bottom:4px}.type-tab{align-items:center;background-color:var(--bg-secondary);border:2px solid var(--border-color);border-radius:10px;color:var(--text-primary);cursor:pointer;display:flex;font-size:.9em;font-weight:500;gap:8px;padding:10px 18px;transition:all .2s ease;white-space:nowrap}.type-tab:hover{background-color:var(--bg-primary)}.type-tab.active,.type-tab:hover{border-color:var(--primary-color)}.type-tab.active{background:var(--primary-gradient);color:#fff}.tab-icon{font-size:.85em;font-weight:700;opacity:.8}.tab-count{background-color:#fff3;border-radius:10px;font-size:.8em;font-weight:600;padding:2px 8px}.type-tab:not(.active) .tab-count{background-color:var(--bg-primary);color:var(--text-secondary)}.source-tabs{border-bottom:2px solid var(--border-color);display:flex;gap:4px;margin-bottom:20px;padding-bottom:0}.source-tab{background:none;border:none;border-bottom:3px solid #0000;color:var(--text-secondary);cursor:pointer;font-size:.95em;font-weight:500;margin-bottom:-2px;padding:10px 20px;transition:all .2s ease}.source-tab:hover{color:var(--text-primary)}.source-tab.active{border-bottom-color:var(--primary-color);color:var(--primary-color)}.questions-grid{grid-gap:12px;align-items:start;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.question-card-eng{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;display:flex;flex-direction:column;overflow:hidden;transition:all .2s ease}.question-card-eng:hover{box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.qcard-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;flex-shrink:0;justify-content:space-between;padding:8px 14px}.qcard-type-badge{background-color:var(--bg-primary);border-radius:6px;color:var(--text-secondary);font-size:.8em;font-weight:500;padding:4px 10px}.qcard-difficulty{font-size:.8em;font-weight:600;text-transform:capitalize}.qcard-body{flex:1 1 auto;min-height:0;padding:10px 14px}.qcard-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--text-primary);display:-webkit-box;font-size:.9em;font-weight:500;line-height:1.35;margin:0;overflow:hidden}.qcard-footer{align-items:center;border-top:1px solid var(--border-color);display:flex;flex-shrink:0;justify-content:space-between;padding:8px 14px}.qcard-points{color:var(--text-secondary);font-size:.85em;font-weight:600}.qcard-actions{display:flex;gap:6px}.qcard-actions .btn-sm{font-size:.8em;padding:4px 12px}.qcard-actions .btn-danger{background-color:initial;border:1px solid #dc3545;color:#dc3545}.qcard-actions .btn-danger:hover{background-color:#dc3545;color:#fff}.english-question-list .empty-state{color:var(--text-secondary);padding:60px 20px;text-align:center}.english-question-list .empty-state-icon{font-size:3em;margin-bottom:16px;opacity:.5}.english-question-list .empty-state h2{color:var(--text-primary);margin-bottom:8px}.english-question-list .empty-state p{margin-bottom:20px}@media (max-width:768px){.question-type-tabs{flex-wrap:nowrap}.type-tab .tab-label{display:none}.questions-grid{grid-template-columns:1fr}.english-question-list .page-header{align-items:flex-start;flex-direction:column;gap:10px}}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.bulk-import-modal{background:var(--bg-secondary);border-radius:16px;box-shadow:0 20px 60px #0003;max-width:560px;padding:32px;width:90%}.bulk-import-modal h2{font-size:1.4em;margin:0 0 8px}.bulk-info{font-size:.92em}.bulk-format-guide,.bulk-info{color:var(--text-secondary);margin-bottom:16px}.bulk-format-guide{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;font-size:.85em;line-height:1.6;padding:12px 16px}.bulk-file-input{margin-bottom:16px}.bulk-file-input input{width:100%}.bulk-result{border-radius:10px;font-size:.9em;margin-bottom:16px;padding:14px}.bulk-result.success{background:#e8f5e9;border:1px solid #4caf50}.bulk-result.error{background:#ffebee;border:1px solid #f44336}[data-theme=dark] .bulk-result.success{background:#4caf501a;border-color:#4caf504d}[data-theme=dark] .bulk-result.error{background:#f443361a;border-color:#f443364d}.bulk-errors{margin-top:8px;max-height:150px;overflow-y:auto}.bulk-error-item{border-bottom:1px solid var(--border-color);color:#c62828;font-size:.83em;padding:4px 0}.bulk-actions{display:flex;gap:12px;justify-content:flex-end}.create-english-question{margin:0 auto;max-width:1000px;padding:20px}.create-english-question .page-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.create-english-question .question-form{display:flex;flex-direction:column;gap:24px}.create-english-question .form-section{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:24px}.create-english-question .section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.create-english-question .section-title{color:var(--text-primary);font-size:1.4em;font-weight:600;margin:0 0 10px}.create-english-question .section-desc{color:var(--text-secondary);font-size:.9em;margin-bottom:15px}.create-english-question .form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.create-english-question .form-group{margin-bottom:16px}.create-english-question .form-group.full-width{grid-column:1/-1}.create-english-question .form-group label{color:var(--text-primary);display:block;font-size:.9em;font-weight:500;margin-bottom:6px}.create-english-question .form-input,.create-english-question .form-select,.create-english-question .form-textarea{background-color:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;box-sizing:border-box;color:var(--text-primary);font-size:.95em;padding:10px 12px;transition:border-color .2s ease;width:100%}.create-english-question .form-input:focus,.create-english-question .form-select:focus,.create-english-question .form-textarea:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #ed03311a;outline:none}.create-english-question .form-textarea{font-family:inherit;resize:vertical}.create-english-question .mono-text{font-family:Courier New,monospace;font-size:.85em}.create-english-question .options-container{display:flex;flex-direction:column;gap:12px}.create-english-question .option-card{background-color:var(--bg-primary);border:2px solid var(--border-color);border-radius:10px;padding:16px;transition:all .2s ease}.create-english-question .option-card.option-correct{background:linear-gradient(135deg,#28a74514,#1e7e3408);border-color:#28a745}.create-english-question .option-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.create-english-question .option-number{color:var(--text-primary);font-size:.9em;font-weight:600}.create-english-question .option-actions{align-items:center;display:flex;gap:12px}.create-english-question .correct-checkbox{align-items:center;cursor:pointer;display:flex;gap:6px}.create-english-question .correct-checkbox input[type=checkbox]{accent-color:#28a745;height:16px;width:16px}.create-english-question .correct-label{color:var(--text-primary);font-size:.85em;font-weight:500}.create-english-question .btn-icon{background:none;border:none;border-radius:4px;color:var(--text-secondary);cursor:pointer;font-size:1.3em;padding:4px 8px;transition:all .2s ease}.create-english-question .btn-icon:hover:not(:disabled){background-color:#dc35451a;color:#dc3545}.create-english-question .btn-icon:disabled{cursor:not-allowed;opacity:.4}.create-english-question .sentence-row{align-items:center;display:flex;gap:10px;margin-bottom:10px}.create-english-question .sentence-number{color:var(--text-secondary);font-weight:600;min-width:24px}.create-english-question .sub-question-card{background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;margin-bottom:16px;padding:20px}.create-english-question .sub-question-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.create-english-question .sub-question-header h3{color:var(--text-primary);font-size:1.1em;margin:0}.create-english-question .sub-options{margin-top:12px}.create-english-question .sub-options-header{align-items:center;color:var(--text-secondary);display:flex;font-size:.9em;font-weight:500;justify-content:space-between;margin-bottom:10px}.create-english-question .sub-option-row{align-items:center;display:flex;gap:10px;margin-bottom:8px}.create-english-question .sub-option-row .form-input{flex:1 1}.create-english-question .word-count{color:var(--text-secondary);font-size:.85em;margin-top:4px;text-align:right}.create-english-question .weights-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.create-english-question .weight-item label{color:var(--text-secondary);display:block;font-size:.85em;font-weight:500;margin-bottom:4px}.create-english-question .image-preview{border:1px solid var(--border-color);border-radius:8px;margin-top:10px;max-height:200px;max-width:300px}.create-english-question .audio-preview{margin-top:10px}.create-english-question .audio-preview audio{max-width:500px;width:100%}.create-english-question .checkbox-label-inline{align-items:center;cursor:pointer;display:flex!important;gap:8px;padding-top:28px}.create-english-question .checkbox-label-inline input[type=checkbox]{accent-color:var(--primary-color);height:18px;width:18px}.create-english-question .form-actions{border-top:2px solid var(--border-color);display:flex;gap:12px;justify-content:flex-end;padding-top:16px}.create-english-question .btn{border:none;border-radius:6px;cursor:pointer;font-size:1em;font-weight:500;padding:10px 20px;transition:all .2s ease}.create-english-question .btn-primary{background:var(--primary-gradient);color:#fff}.create-english-question .btn-primary:hover:not(:disabled){opacity:.9}.create-english-question .btn-secondary{background-color:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-primary)}.create-english-question .btn-sm{font-size:.85em;padding:6px 14px}.create-english-question .btn-danger{color:#dc3545}.create-english-question .btn:disabled{cursor:not-allowed;opacity:.5}@media (max-width:768px){.create-english-question .form-row{grid-template-columns:1fr}.create-english-question .page-header{align-items:flex-start;flex-direction:column;gap:10px}.create-english-question .form-actions{flex-direction:column}.create-english-question .form-actions .btn{width:100%}}.create-english-test{margin:0 auto;max-width:1400px;padding:20px}.create-english-test .page-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.test-builder-layout{grid-gap:24px;align-items:start;display:grid;gap:24px;grid-template-columns:1fr 300px}.test-builder-main{display:flex;flex-direction:column;gap:20px}.create-english-test .form-section{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:24px}.create-english-test .section-title{color:var(--text-primary);font-size:1.3em;font-weight:600;margin:0 0 16px}.create-english-test .subsection-title{color:var(--text-primary);font-size:1em;font-weight:600;margin:16px 0 12px}.create-english-test .form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.create-english-test .form-group{margin-bottom:14px}.create-english-test .form-group label{color:var(--text-primary);display:block;font-size:.9em;font-weight:500;margin-bottom:6px}.create-english-test .form-input,.create-english-test .form-select,.create-english-test .form-textarea{background-color:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;box-sizing:border-box;color:var(--text-primary);font-size:.95em;padding:10px 12px;width:100%}.create-english-test .form-input:focus,.create-english-test .form-textarea:focus{border-color:var(--primary-color);outline:none}.checkbox-inline{align-items:center;color:var(--text-primary);cursor:pointer;display:flex;font-size:.9em;gap:8px}.checkbox-inline input[type=checkbox]{accent-color:var(--primary-color);height:16px;width:16px}.add-sections-bar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.add-section-btn{background:#0000;border:2px dashed var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;font-size:.85em;font-weight:500;padding:8px 16px;transition:all .2s ease}.add-section-btn:hover:not(:disabled){border-color:var(--primary-color);color:var(--primary-color)}.add-section-btn.added{background-color:#28a74514;border-color:#28a745;border-style:solid;color:#28a745;cursor:default}.empty-sections{color:var(--text-secondary);padding:40px;text-align:center}.sections-list{display:flex;flex-direction:column;gap:8px}.section-card{background-color:var(--bg-primary);border-radius:10px;cursor:pointer;padding:14px 18px;transition:all .2s ease}.section-card.active,.section-card:hover{border-color:var(--primary-color)}.section-card.active{box-shadow:0 0 0 3px #ed03311a}.section-card-header{align-items:center;display:flex;justify-content:space-between}.section-card-info{align-items:center;display:flex;gap:12px}.section-order{align-items:center;background:var(--primary-gradient);border-radius:50%;color:#fff;display:flex;font-size:.85em;font-weight:700;height:28px;justify-content:center;width:28px}.section-name{color:var(--text-primary);font-weight:600}.section-meta{color:var(--text-secondary);font-size:.8em}.section-card-actions{display:flex;gap:6px}.btn-icon-sm{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-secondary);cursor:pointer;display:flex;font-size:.85em;font-weight:700;height:28px;justify-content:center;transition:all .2s ease;width:28px}.btn-icon-sm:hover:not(:disabled){background-color:var(--bg-primary);color:var(--text-primary)}.btn-icon-sm.btn-danger:hover:not(:disabled){background-color:#dc35451a;border-color:#dc3545;color:#dc3545}.btn-icon-sm:disabled{cursor:not-allowed;opacity:.3}.section-editor{border-color:var(--primary-color)}.question-picker{border:1px solid var(--border-color);border-radius:8px;max-height:400px;overflow-y:auto}.question-pick-item{align-items:center;border-bottom:1px solid var(--border-color);cursor:pointer;display:flex;gap:12px;padding:12px 16px;transition:background-color .15s ease}.question-pick-item:last-child{border-bottom:none}.question-pick-item:hover{background-color:var(--bg-secondary)}.question-pick-item.selected{background-color:#28a74514}.pick-checkbox{align-items:center;border:2px solid var(--border-color);border-radius:4px;color:#28a745;display:flex;flex-shrink:0;font-size:.85em;font-weight:700;height:24px;justify-content:center;width:24px}.question-pick-item.selected .pick-checkbox{background-color:#28a74526;border-color:#28a745}.pick-info{display:flex;flex-direction:column;gap:2px;min-width:0}.pick-title{color:var(--text-primary);font-size:.9em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pick-meta{color:var(--text-secondary);font-size:.75em;text-transform:capitalize}.empty-questions{color:var(--text-secondary);padding:30px;text-align:center}.empty-questions a{color:var(--primary-color)}.test-builder-sidebar{display:flex;flex-direction:column;gap:16px;position:-webkit-sticky;position:sticky;top:80px}.sidebar-card{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:20px}.sidebar-card h3{color:var(--text-primary);font-size:1.1em;margin:0 0 16px}.summary-item{color:var(--text-secondary);display:flex;font-size:.9em;justify-content:space-between;padding:6px 0}.summary-item strong{color:var(--text-primary)}.sidebar-card hr{border:none;border-top:1px solid var(--border-color);margin:12px 0}.summary-section{color:var(--text-secondary);display:flex;font-size:.8em;justify-content:space-between;padding:4px 0}.btn-full{font-size:1.05em;padding:14px;width:100%}.create-english-test .btn{border:none;border-radius:6px;cursor:pointer;font-size:1em;font-weight:500;padding:10px 20px;transition:all .2s ease}.create-english-test .btn-primary{background:var(--primary-gradient);color:#fff}.create-english-test .btn-primary:disabled{cursor:not-allowed;opacity:.5}.create-english-test .btn-secondary{background-color:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-primary)}@media (max-width:960px){.test-builder-layout{grid-template-columns:1fr}.test-builder-sidebar{position:static}}.student-dashboard{animation:fadeIn .5s ease}.student-dashboard .page-title{-webkit-text-fill-color:#0000;animation:fadeInDown .5s ease;background:linear-gradient(135deg,#007bff,#0056b3);-webkit-background-clip:text;background-clip:text;font-size:36px;font-weight:800;margin-bottom:40px}.tests-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));margin-bottom:30px}.test-card-modern{animation:fadeInUp .6s ease;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:20px;display:flex;flex-direction:column;gap:20px;overflow:visible;padding:28px;position:relative;transition:all .4s cubic-bezier(.16,1,.3,1);z-index:1}.test-card-modern:before{background:linear-gradient(90deg,#007bff,#6f42c1);content:"";height:5px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .4s cubic-bezier(.16,1,.3,1);z-index:0}.test-card-modern:hover{border-color:#007bff;box-shadow:0 20px 40px #00000026;transform:translateY(-8px) scale(1.01);z-index:2}.test-card-modern:hover:before{transform:scaleX(1)}.test-card-header{align-items:flex-start;display:flex;gap:15px;justify-content:space-between}.test-title-section h3{color:var(--text-primary);font-size:1.4em;font-weight:700;line-height:1.3;margin:0 0 8px}.test-type-badge-modern{border-radius:12px;box-shadow:0 2px 6px #00000026;display:inline-block;font-size:.75em;font-weight:700;letter-spacing:.5px;padding:6px 14px;text-transform:uppercase}.test-type-badge-modern.coding{background:linear-gradient(135deg,#007bff,#0056b3);color:#fff}.test-type-badge-modern.mcq{background:linear-gradient(135deg,#6f42c1,#5a32a3);color:#fff}.test-type-badge-modern.aptitude{background:linear-gradient(135deg,#2e7d32,#1b5e20);color:#fff}.test-type-badge-modern.mixed{background:linear-gradient(135deg,#17a2b8,#138496);color:#fff}.test-type-badge-modern.interview{background:linear-gradient(135deg,#e91e63,#9c27b0);color:#fff}.test-type-badge-modern.project{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.test-type-badge-modern.sql{background:linear-gradient(135deg,#ff9800,#f57c00);color:#fff}.test-type-badge-modern.theory{background:linear-gradient(135deg,#607d8b,#455a64);color:#fff}.test-type-badge-modern.system{background:linear-gradient(135deg,#ff6f00,#e65100);color:#fff}.dashboard-summary{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:30px}.summary-card{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:16px;display:flex;flex-direction:column;gap:10px;padding:20px}.summary-card h3{color:var(--text-secondary);font-size:1em;margin:0}.summary-value{color:var(--text-primary);font-size:1.8em;font-weight:700}.summary-subtext{color:var(--text-secondary);font-size:.85em}.test-section{margin-bottom:30px}.test-section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.test-section-title{color:var(--text-primary);font-size:1.3em;font-weight:700}.test-section-badge{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;color:var(--text-secondary);font-size:.8em;padding:4px 10px}.test-type-nav{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:30px}.test-type-nav-card{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:16px;color:inherit;display:flex;flex-direction:column;gap:6px;padding:18px;text-decoration:none;transition:all .3s ease}.test-type-nav-card:hover{border-color:#007bff;box-shadow:0 10px 20px #007bff1f;transform:translateY(-4px)}.test-type-nav-title{align-items:center;color:var(--text-secondary);display:flex;font-size:.95em;font-weight:700;gap:8px}.test-type-nav-icon{font-size:1.1em}.test-type-nav-count{color:var(--text-primary);font-size:1.6em;font-weight:800}.test-type-nav-cta,.test-type-nav-subtext{color:var(--text-secondary);font-size:.85em}.test-type-nav-subtext{line-height:1.4}.test-meta{display:flex;flex-wrap:wrap;gap:20px;margin-top:12px}.test-meta-item{align-items:center;color:var(--text-secondary);display:flex;font-size:.9em;gap:8px}.test-meta-item strong{color:var(--text-primary);font-weight:600}.test-status-section{align-items:center;border-top:2px solid var(--border-color);display:flex;flex-wrap:wrap;gap:12px;margin-top:16px;padding-top:16px}.test-action-buttons{display:flex;flex-wrap:wrap;gap:10px;margin-left:auto}.test-action-buttons .test-action-btn{margin-left:0}.status-badge-modern{border-radius:12px;box-shadow:0 2px 6px #0000001a;display:inline-block;font-size:.875em;font-weight:700;padding:8px 16px;transition:all .3s ease}.status-badge-modern.assigned{background:linear-gradient(135deg,#007bff,#0056b3);color:#fff}.status-badge-modern.in_progress{background:linear-gradient(135deg,#ffc107,#e0a800);color:#fff}.status-badge-modern.completed{background:linear-gradient(135deg,#28a745,#1e7e34);color:#fff}.status-badge-modern.submitted{background:linear-gradient(135deg,#9c27b0,#7b1fa2);color:#fff}.status-badge-modern.evaluated{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff}.status-badge-modern.overdue{background:linear-gradient(135deg,#ff5252,#d32f2f);color:#fff}.test-action-btn{align-items:center;border-radius:12px;box-shadow:0 4px 8px #0000001a;display:inline-flex;font-size:.9em;font-weight:600;gap:6px;justify-content:center;margin-left:auto;padding:10px 20px;text-decoration:none;transition:all .3s ease;white-space:nowrap}.test-action-btn.btn-primary{background:linear-gradient(135deg,#007bff,#0056b3);color:#fff}.test-action-btn.btn-primary:hover{box-shadow:0 6px 16px #007bff4d;transform:translateY(-2px)}.test-action-btn.btn-secondary{background:var(--bg-primary);border:2px solid var(--border-color);color:var(--text-primary)}.test-action-btn.btn-secondary:hover{background:var(--bg-secondary);box-shadow:0 6px 16px #00000026;transform:translateY(-2px)}.test-action-btn.btn-info{background:linear-gradient(135deg,#17a2b8,#138496);color:#fff;cursor:default;pointer-events:none}.empty-state{animation:fadeInUp .6s ease;background:linear-gradient(135deg,var(--bg-secondary) 0,var(--bg-primary) 100%);border:3px dashed var(--border-color);border-radius:24px;overflow:hidden;padding:80px 40px;position:relative}.empty-state:before{animation:pulse 8s ease-in-out infinite;background:radial-gradient(circle,#007bff08 0,#0000 70%);content:"";height:200%;left:-50%;position:absolute;top:-50%;width:200%}.empty-state-icon{animation:pulse 3s ease-in-out infinite;font-size:5em;margin-bottom:24px;opacity:.6;position:relative;z-index:1}.empty-state h2{color:var(--text-primary);font-size:1.8em;font-weight:700;margin-bottom:12px;position:relative;z-index:1}.empty-state p{color:var(--text-secondary);font-size:1.1em;margin-bottom:8px;position:relative;z-index:1}@media (max-width:768px){.tests-grid{grid-template-columns:1fr}.test-card-modern{padding:20px}.test-meta{flex-direction:column;gap:10px}}.english-trends-widget{animation:fadeInUp .6s ease;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:16px;margin-bottom:30px;padding:24px}.trends-widget-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.trends-widget-header h2{font-size:1.3em;font-weight:700;margin:0}.trends-stats-row{display:flex;gap:24px;margin-bottom:20px}.trend-stat{align-items:center;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;display:flex;flex-direction:column;min-width:100px;padding:12px 20px}.trend-stat-value{color:var(--text-primary);font-size:1.6em;font-weight:800}.trend-stat-value.positive{color:#28a745}.trend-stat-value.negative{color:#dc3545}.trend-stat-label{color:var(--text-secondary);font-size:.8em;font-weight:600;margin-top:4px}.section-averages-grid{display:flex;flex-direction:column;gap:10px}.section-avg-item{align-items:center;display:flex;gap:12px}.section-avg-label{color:var(--text-secondary);font-size:.85em;font-weight:600;min-width:80px}.section-avg-bar-wrap{background:var(--border-color);border-radius:4px;flex:1 1;height:8px;overflow:hidden}.section-avg-bar{border-radius:4px;height:100%;transition:width .6s ease}.section-avg-bar.excellent{background:linear-gradient(90deg,#28a745,#20c997)}.section-avg-bar.good{background:linear-gradient(90deg,#ffc107,#fd7e14)}.section-avg-bar.poor{background:linear-gradient(90deg,#dc3545,#e83e8c)}.section-avg-value{color:var(--text-primary);font-size:.85em;font-weight:700;min-width:40px;text-align:right}@media (max-width:600px){.trends-stats-row{flex-wrap:wrap;gap:12px}.trend-stat{flex:1 1;min-width:80px}}.test-taking-container{background-color:var(--bg-primary);display:flex;flex-direction:column;min-height:calc(100vh - 80px);overflow:hidden}.test-header{animation:fadeInDown .5s ease;border-bottom:2px solid var(--border-color);box-shadow:0 2px 8px #ed03311a;flex-shrink:0;padding:15px 25px}.test-header-left{gap:15px}.test-header-left h2{color:var(--text-primary);font-size:1.5em;margin:0}.test-type-badge{background:var(--primary-gradient);border-radius:12px;color:#fff;font-size:.75em;font-weight:700;padding:4px 12px;text-transform:uppercase}.test-header-right{gap:15px}.timer{align-items:center;animation:pulse 2s ease-in-out infinite;background:var(--primary-gradient);border-radius:10px;box-shadow:0 4px 8px #00000026;color:#fff;display:flex;font-size:18px;gap:8px;padding:10px 18px;transition:all .3s ease}.timer:hover{box-shadow:0 6px 12px #0003;transform:scale(1.05)}.timer.timer-expired{animation:pulse-warning 1s ease-in-out infinite;background:linear-gradient(135deg,#ff9800,#f57c00)}@keyframes pulse-warning{0%,to{opacity:1}50%{opacity:.7}}.timer-icon{font-size:1.2em}.violations-indicator{align-items:center;border-radius:8px;display:flex;font-size:14px;font-weight:700;gap:8px;padding:8px 15px;transition:all .3s ease}.test-content{grid-gap:0;display:grid;flex:1 1;gap:0;grid-template-columns:250px 1fr;min-height:0;overflow:hidden}.question-sidebar{border-right:2px solid var(--border-color);height:calc(100vh - 140px);padding:20px;top:0}.question-sidebar h3{border-bottom:2px solid var(--border-color);color:var(--text-primary);font-size:1.1em;margin-bottom:20px;margin-top:0;padding-bottom:10px}.section-group{margin-bottom:25px}.section-title{border-left:3px solid var(--primary-color);border-radius:6px;color:var(--text-secondary);font-size:.85em;font-weight:700;margin-bottom:12px;padding:8px 12px}.question-nav-btn,.section-title{background-color:var(--bg-primary)}.question-nav-btn{align-items:center;border:1px solid var(--border-color);border-radius:6px;cursor:pointer;display:flex;font-size:.95em;justify-content:space-between;margin-bottom:8px;padding:12px 15px;text-align:left;transition:all .2s ease;width:100%}.question-nav-btn:hover{background-color:var(--bg-secondary);box-shadow:0 2px 4px #0000001a;transform:translateX(5px)}.question-nav-btn.active{animation:pulse 2s ease-in-out infinite;background:var(--primary-gradient);border-color:#0000;box-shadow:0 4px 12px #ed03314d;color:#fff;transform:translateX(5px) scale(1.02)}.question-nav-btn.attempted{border-left:4px solid #28a745;padding-left:11px}.question-nav-btn.active.attempted{border-left:4px solid #ffffff80}.question-number{font-weight:600}.question-status-indicator{color:#28a745;font-size:1.1em;font-weight:700}.question-nav-btn.active .question-status-indicator{color:#fff}.main-content-wrapper{display:flex;flex:1 1;gap:0;min-height:0;overflow:hidden;position:relative}.question-panel{background-color:var(--bg-primary);border-right:2px solid var(--border-color);flex-shrink:0;height:calc(100vh - 140px);max-width:70%;min-width:300px;overflow-y:auto;padding:25px}.question-panel.full-width{grid-column:1/-1}.question-header{align-items:center;border-bottom:2px solid var(--border-color);display:flex;justify-content:space-between;margin-bottom:25px;padding-bottom:15px}.question-header h3{color:var(--text-primary);font-size:1.3em;margin:0}.difficulty-badge{border-radius:12px;font-size:.85em;font-weight:700;padding:6px 15px;text-transform:capitalize}.difficulty-badge.easy{background-color:#28a745;color:#fff}.difficulty-badge.medium{background-color:#ffc107;color:#000}.difficulty-badge.hard{background-color:#dc3545;color:#fff}.question-description{color:var(--text-secondary);line-height:1.8}.question-description h4{color:var(--text-primary);font-size:1.4em;margin-bottom:15px;margin-top:0}.description-content{color:var(--text-secondary);line-height:1.8;margin-bottom:20px}.constraints-section{background-color:var(--bg-secondary);border-left:4px solid var(--primary-color);border-radius:6px;margin-top:20px;padding:15px}.constraints-section strong{color:var(--primary-color);display:block;margin-bottom:8px}.constraints-content{color:var(--text-secondary);line-height:1.6}.examples-section{margin-top:25px}.examples-section strong{color:var(--text-primary);display:block;font-size:1.1em;margin-bottom:15px}.example-box{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;margin-bottom:20px;padding:15px}.example-header{align-items:center;color:var(--text-primary);display:flex;font-weight:700;justify-content:space-between;margin-bottom:12px}.example-explanation{color:var(--text-secondary);font-size:.9em;font-style:italic;font-weight:400}.example-content{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr 1fr}.example-item{display:flex;flex-direction:column}.example-item strong{margin-bottom:8px}.example-item pre,.example-item strong{color:var(--text-primary);font-size:.9em}.example-item pre{background-color:var(--input-bg);border:1px solid var(--border-color);border-radius:4px;font-family:Courier New,Courier,monospace;margin:0;overflow-x:auto;padding:12px;white-space:pre-wrap;word-break:break-all}.test-cases-section{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;margin-top:25px;padding:20px}.test-cases-section strong{color:var(--text-primary);display:block;font-size:1.1em;margin-bottom:15px}.test-cases-list{display:flex;flex-direction:column;gap:15px}.test-case-box{background-color:var(--bg-primary);border:2px solid var(--border-color);border-radius:6px;padding:15px;transition:all .3s ease}.test-case-box.test-case-passed{background-color:#28a7450d;border-color:#28a745}.test-case-box.test-case-failed{background-color:#dc35450d;border-color:#dc3545}.test-case-header{align-items:center;color:var(--text-primary);display:flex;font-weight:700;justify-content:space-between;margin-bottom:12px}.test-case-status{border-radius:12px;font-size:.85em;font-weight:700;padding:4px 12px}.test-case-status.passed{background-color:#28a745;color:#fff}.test-case-status.failed{background-color:#dc3545;color:#fff}.test-case-content{gap:12px}.test-case-content,.test-case-item{display:flex;flex-direction:column}.test-case-item strong{color:var(--text-primary);font-size:.9em;margin-bottom:6px}.test-case-item pre{background-color:var(--input-bg);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-family:Courier New,Courier,monospace;font-size:.85em;margin:0;overflow-x:auto;padding:10px;white-space:pre-wrap;word-break:break-all}.test-case-item.error{color:#dc3545}.test-case-item.error pre{background-color:#dc35451a;border-color:#dc3545}.output-correct{background-color:#28a7451a!important;border-color:#28a745!important;color:#28a745!important}.output-incorrect{background-color:#dc35451a!important;border-color:#dc3545!important;color:#dc3545!important}.hidden-test-cases-note{align-items:center;background-color:#ffc1071a;border-left:4px solid #ffc107;border-radius:4px;color:var(--text-secondary);display:flex;font-size:.9em;gap:10px;margin-top:15px;padding:12px}.info-icon{font-size:1.2em}.custom-test-case-section{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;margin-top:25px;padding:20px}.custom-test-case-section strong{color:var(--text-primary);display:block;font-size:1.1em;margin-bottom:15px}.custom-test-case-inputs{display:flex;flex-direction:column;gap:15px}.custom-input-group{display:flex;flex-direction:column;gap:8px}.custom-input-group label{color:var(--text-primary);font-size:.9em;font-weight:500}.custom-test-input{background-color:var(--input-bg);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-family:Courier New,Courier,monospace;font-size:.9em;padding:10px;resize:vertical;width:100%}.custom-test-result{border:2px solid;border-radius:6px;margin-top:15px;padding:15px}.custom-test-result.passed{background-color:#28a7450d;border-color:#28a745}.custom-test-result.failed{background-color:#dc35450d;border-color:#dc3545}.custom-test-result-header{align-items:center;color:var(--text-primary);display:flex;font-weight:700;justify-content:space-between;margin-bottom:12px}.custom-test-result-content{display:flex;flex-direction:column;gap:10px}.custom-test-result-content pre{background-color:var(--input-bg);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-family:Courier New,Courier,monospace;font-size:.85em;margin:0;overflow-x:auto;padding:10px;white-space:pre-wrap;word-break:break-all}.resizer{background-color:var(--border-color);cursor:col-resize;flex-shrink:0;position:relative;transition:background-color .2s ease;width:4px;z-index:10}.resizer:hover{background-color:var(--primary-color)}.resizer:before{background-color:initial;bottom:0;content:"";left:-2px;position:absolute;right:-2px;top:0}.editor-panel{background-color:var(--bg-secondary);display:flex;flex-direction:column;flex-shrink:0;max-width:70%;min-width:300px;overflow:hidden}.code-editor-section{display:flex;flex:1 1;flex-direction:column;overflow:hidden}.editor-header{align-items:center;background-color:var(--bg-primary);border-bottom:2px solid var(--border-color);display:flex;flex-shrink:0;justify-content:space-between;padding:12px 15px}.language-select{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);cursor:pointer;font-weight:500;padding:8px 15px}.editor-actions{display:flex;gap:10px}.btn-run{background:linear-gradient(135deg,#28a745,#1e7e34);border:none;border-radius:8px;box-shadow:0 4px 8px #28a74533;color:#fff;cursor:pointer;font-weight:600;padding:10px 24px;transition:all .3s ease}.btn-run:hover:not(:disabled){background:linear-gradient(135deg,#34d399,#28a745);box-shadow:0 6px 12px #28a7454d;transform:translateY(-3px)}.btn-submit{background:var(--primary-gradient);border:none;border-radius:8px;box-shadow:0 4px 8px #ed033133;color:#fff;cursor:pointer;padding:10px 24px;transition:all .3s ease}.btn-submit:hover:not(:disabled){animation:pulse 2s ease-in-out infinite;box-shadow:0 6px 16px #ed03314d;opacity:.95;transform:translateY(-3px) scale(1.02)}.editor-wrapper{flex:1 1;min-height:0;overflow:hidden}.mcq-options{margin-bottom:25px}.mcq-option{align-items:flex-start;background-color:var(--bg-secondary);border-radius:8px;margin-bottom:12px;padding:18px}.mcq-option:hover{background-color:var(--bg-primary);transform:translateX(5px)}.mcq-option.selected{background-color:#ed03311a;border-width:2px}.mcq-option input[type=checkbox],.mcq-option input[type=radio]{cursor:pointer;margin-right:12px;margin-top:2px;transform:scale(1.2)}.question-badges{display:flex;flex-wrap:wrap;gap:10px}.section-badge{background:#e3f2fd;border-radius:20px;color:#1976d2;font-size:12px;padding:4px 10px}.case-study-block{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;margin-bottom:20px;padding:15px}.case-study-block h4{margin-bottom:8px}.numeric-answer{display:flex;flex-direction:column;gap:8px;margin-top:10px}.numeric-input{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:14px;max-width:240px;padding:10px 12px}.numeric-hint{color:var(--text-secondary);font-size:12px}.option-text{color:var(--text-primary);flex:1 1;line-height:1.6}.question-actions{gap:12px;justify-content:flex-end;margin-top:25px}.question-actions,.test-footer{border-top:2px solid var(--border-color)}.test-footer{background-color:var(--bg-secondary);box-shadow:0 -2px 4px #0000001a;flex-shrink:0;padding:15px 25px}.footer-actions{align-items:center;display:flex;justify-content:space-between}.submission-summary{max-height:70vh;overflow-y:auto;padding:10px 0}.submission-summary h3{color:var(--text-primary);margin-bottom:20px;margin-top:0}.test-case-group{margin-bottom:20px}.test-case-group h4{color:var(--text-primary);font-size:1em;margin-bottom:12px}.test-case-results-list{display:flex;flex-direction:column;gap:10px;max-height:300px;overflow-y:auto}.test-case-result-item{border:2px solid;border-radius:6px;padding:12px}.test-case-result-item.passed{background-color:#28a7450d;border-color:#28a745}.test-case-result-item.failed{background-color:#dc35450d;border-color:#dc3545}.test-case-result-header{align-items:center;color:var(--text-primary);display:flex;font-weight:600;justify-content:space-between}.test-case-result-details{display:flex;flex-direction:column;font-size:.9em;gap:8px;margin-top:10px}.test-case-result-details pre{background-color:var(--input-bg);border-radius:4px;font-size:.85em;margin-top:4px;padding:8px}.summary-total{background-color:var(--bg-secondary);border-radius:6px;color:var(--text-primary);font-size:1.1em;margin-top:20px;padding:15px;text-align:center}.error-output,.success-output{margin-top:10px}.error-output strong,.success-output strong{color:var(--text-primary);display:block;margin-bottom:8px}.error-output pre,.success-output pre{background-color:var(--input-bg);border:1px solid var(--border-color);border-radius:4px;font-family:Courier New,Courier,monospace;font-size:.9em;margin:0;overflow-x:auto;padding:12px;white-space:pre-wrap;word-break:break-all}.error-output pre{background-color:#dc35451a;border-color:#dc3545;color:#dc3545}@media (max-width:1200px){.main-content-wrapper{grid-template-columns:1fr}.editor-panel{border-top:2px solid var(--border-color)}.question-panel{height:auto;max-height:50vh}.editor-wrapper{height:400px}}@media (max-width:1024px){.test-content{grid-template-columns:200px 1fr}.example-content{grid-template-columns:1fr}}@media (max-width:768px){.test-content{grid-template-columns:1fr}.question-sidebar{border-right:none;border-top:2px solid var(--border-color);height:auto;max-height:300px;order:2}.main-content-wrapper{order:1}.question-panel{height:auto;max-height:50vh}.test-header{align-items:flex-start;flex-direction:column;gap:15px}.test-header-right{justify-content:space-between;width:100%}.example-content{grid-template-columns:1fr}.editor-header{align-items:stretch;flex-direction:column;gap:10px}.editor-actions{justify-content:stretch;width:100%}.editor-actions button{flex:1 1}.editor-wrapper{height:400px}}.sql-test-single-screen{display:flex;flex:1 1;min-height:0;overflow:hidden;width:100%}.sql-left-panel{background:var(--bg-primary);border-right:2px solid var(--border-color);display:flex;flex-direction:column;height:100%;min-width:0;overflow:hidden}.sql-question-block{background:linear-gradient(135deg,#f8f9fa,#e9ecef);background:var(--sql-task-bg,linear-gradient(135deg,#f8f9fa 0,#e9ecef 100%));border-bottom:1px solid var(--border-color);border-left:4px solid var(--primary-color);flex-shrink:0;margin:0;padding:0}.sql-task-label{align-items:center;background:#ed033114;background:var(--sql-task-label-bg,#ed033114);border-bottom:1px solid #ed033133;border-bottom:1px solid var(--sql-task-label-border,#ed033133);color:var(--primary-color);display:flex;font-size:12px;font-weight:700;gap:8px;letter-spacing:.05em;padding:10px 14px;text-transform:uppercase}.sql-task-icon{font-size:14px}.sql-question-text-wrap{min-height:44px;padding:14px}.sql-question-text{color:var(--text-primary);font-size:14px;font-weight:500;line-height:1.6;margin:0;white-space:pre-wrap}.schema-panel-compact{border:none;border-radius:0;border-top:1px solid var(--border-color);display:flex;flex:1 1;flex-direction:column;margin:0;min-height:0;overflow:hidden;padding:10px 12px}.schema-panel-compact h4{color:var(--text-primary);flex-shrink:0;font-size:12px;font-weight:600;margin:0 0 6px}.schema-panel-compact .schema-sql-fallback,.schema-panel-compact .schema-sql-readonly{background:#0000;color:var(--text-primary);flex:1 1;font-size:11px;line-height:1.4;max-height:none;min-height:0;overflow:auto}.schema-diagram-wrap{background:#f0f4f8;background:var(--schema-canvas-bg,#f0f4f8);border:1px solid #dde1e6;border:1px solid var(--schema-canvas-border,#dde1e6);border-radius:10px;flex:1 1;min-height:0;overflow:auto;padding:20px;position:relative}[data-theme=dark] .schema-diagram-wrap{background:#1e232d99;background:var(--schema-canvas-bg,#1e232d99);border-color:var(--schema-canvas-border)}.schema-diagram-tables{grid-gap:36px 40px;align-content:start;display:grid;gap:36px 40px;grid-template-columns:repeat(2,minmax(180px,1fr));position:relative;z-index:1}@media (max-width:520px){.schema-diagram-tables{grid-template-columns:1fr}}.schema-er-table{background:#fff;background:var(--schema-table-bg,#fff);border:2px solid #2c3e50;border:2px solid var(--schema-table-border,#2c3e50);border-radius:10px;box-shadow:0 2px 10px #0000000f;min-width:0}[data-theme=dark] .schema-er-table{background:var(--schema-table-bg);border-color:var(--schema-table-border);box-shadow:0 2px 12px #0000004d}.schema-er-table-header{background:#2c3e50;background:var(--schema-header-bg,#2c3e50);border-radius:6px 6px 0 0;color:#fff;color:var(--schema-header-fg,#fff);font-size:14px;font-weight:700;padding:10px 14px;text-align:center}[data-theme=dark] .schema-er-table-header{background:var(--schema-header-bg);color:var(--schema-header-fg)}.schema-er-table-body{padding:6px 0}.schema-er-column{align-items:center;border-bottom:1px solid #e8eaed;border-bottom:1px solid var(--schema-divider,#e8eaed);display:flex;font-size:12px;gap:12px;justify-content:space-between;line-height:1.4;padding:5px 14px}.schema-er-column:last-child{border-bottom:none}[data-theme=dark] .schema-er-column{border-bottom-color:var(--schema-divider)}.schema-er-col-name{color:var(--text-primary);font-weight:600}.schema-er-col-type{color:#5f6368;color:var(--text-secondary,#5f6368);font-size:10px;letter-spacing:.04em;text-transform:uppercase}[data-theme=dark] .schema-er-col-type{color:var(--text-secondary)}.schema-diagram-arrows{height:100%;left:0;overflow:visible;pointer-events:none;position:absolute;top:0;width:100%}.schema-relation-line{fill:none;stroke:#64748b;stroke:var(--schema-arrow,#64748b);stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round}[data-theme=dark] .schema-relation-line{stroke:#64748b;stroke:var(--schema-arrow,#64748b)}.sql-right-panel{background:var(--bg-primary);display:flex;flex-direction:column;height:100%;min-width:0;overflow:hidden}.sql-editor-block{border-bottom:2px solid var(--border-color);display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden}.sql-editor-header{flex-shrink:0;padding:8px 12px}.sql-editor-wrapper{flex:1 1;min-height:140px;overflow:hidden}.sql-editor-wrapper .monaco-editor{height:100%!important}.sql-result-block{max-height:50%;min-height:120px}.sql-output-panel,.sql-result-block{display:flex;flex:1 1;flex-direction:column;overflow:hidden}.sql-output-panel{border:none;border-radius:0;margin:0;min-height:0;padding:10px 12px}.sql-output-panel.match{background:#e8f5e9;background:var(--sql-result-success-bg,#e8f5e9);border-top:3px solid #2e7d32;border-top:3px solid var(--sql-result-success-border,#2e7d32);color:var(--text-primary)}.sql-output-panel.no-match{background:#fff8e1;background:var(--sql-result-nomatch-bg,#fff8e1);border-top:3px solid #ff8f00;border-top:3px solid var(--sql-result-nomatch-border,#ff8f00);color:var(--text-primary)}.sql-output-panel.error{background:#ffebee;background:var(--sql-result-error-bg,#ffebee);border-top:3px solid #c62828;border-top:3px solid var(--sql-result-error-border,#c62828);color:var(--text-primary)}.sql-output-panel.loading{background:#e3f2fd;background:var(--sql-result-loading-bg,#e3f2fd);border-top:2px solid #90caf9;border-top:2px solid var(--sql-result-loading-border,#90caf9);color:var(--text-primary)}.sql-output-panel.empty{background:var(--bg-secondary);border-top:2px solid var(--border-color);color:var(--text-primary)}.sql-feedback-banner{align-items:center;border-radius:0;display:flex;font-size:14px;gap:12px;line-height:1.4;margin:-10px -12px 12px;padding:12px 14px}.sql-feedback-correct{background:#2e7d3233;background:var(--sql-feedback-correct-bg,#2e7d3233);border-bottom:2px solid #2e7d32;border-bottom:2px solid var(--sql-result-success-border,#2e7d32);color:#1b5e20;color:var(--sql-feedback-correct-text,#1b5e20)}.sql-feedback-correct .sql-feedback-icon{color:#2e7d32;flex-shrink:0;font-size:22px}.sql-feedback-incorrect{background:#ff8f0026;background:var(--sql-feedback-incorrect-bg,#ff8f0026);border-bottom:2px solid #ff8f00;border-bottom:2px solid var(--sql-result-nomatch-border,#ff8f00);color:#e65100;color:var(--sql-feedback-incorrect-text,#e65100)}.sql-feedback-incorrect .sql-feedback-icon{color:#e65100;flex-shrink:0;font-size:22px}.sql-output-header{align-items:center;display:flex;flex-shrink:0;flex-wrap:wrap;gap:10px;margin-bottom:8px}.sql-output-header h4{color:var(--text-primary);font-size:13px;font-weight:600;margin:0}.sql-result-badge{border-radius:4px;font-size:11px;font-weight:600;padding:2px 8px}.sql-result-badge.match{background:#2e7d32;color:#fff}.sql-result-badge.no-match{background:#e65100;color:#fff}.sql-result-badge.error{background:#c62828;color:#fff}.sql-run-count{color:var(--text-secondary);font-size:11px;margin:0}.sql-loading{font-style:italic}.sql-loading,.sql-no-rows,.sql-placeholder{color:var(--text-secondary);font-size:13px;margin:0}.sql-result-table-wrap{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;flex:1 1;min-height:0;overflow:auto}.sql-result-table{border-collapse:collapse;font-size:12px;width:100%}.sql-result-table td,.sql-result-table th{border-bottom:1px solid var(--border-color);color:var(--text-primary);padding:6px 10px;text-align:left}.sql-result-table th{background:var(--bg-secondary);font-weight:600;position:-webkit-sticky;position:sticky;top:0;z-index:1}.sql-result-table td,.sql-result-table th{color:var(--text-primary)}.sql-result-table tbody tr:hover{background:#00000008;background:var(--sql-table-row-hover,#00000008)}.sql-error{color:#c62828;color:var(--sql-error-text,#c62828);flex:1 1;font-size:12px;margin:0;min-height:0;overflow:auto;white-space:pre-wrap}.q-marks-badge{color:var(--text-secondary);font-size:12px}.test-result-page{animation:fadeIn .5s ease}.test-result-page .page-title{-webkit-text-fill-color:#0000;animation:fadeInDown .5s ease;background:linear-gradient(135deg,#007bff,#0056b3);-webkit-background-clip:text;background-clip:text;font-size:36px;font-weight:800;margin-bottom:40px}.result-summary-modern{grid-gap:24px;animation:fadeInUp .6s ease;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:40px}.stat-card-modern{animation:fadeInUp .6s ease;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:20px;overflow:visible;padding:32px 24px;position:relative;text-align:center;transition:all .4s cubic-bezier(.16,1,.3,1);z-index:1}.stat-card-modern:before{background:linear-gradient(90deg,#007bff,#6f42c1);content:"";height:5px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .4s ease;z-index:0}.stat-card-modern:hover{border-color:#007bff;box-shadow:0 20px 40px #007bff26;transform:translateY(-8px) scale(1.03);z-index:2}.stat-card-modern:hover:before{transform:scaleX(1)}.stat-card-modern.score{background:linear-gradient(135deg,#007bff0d,#0056b305)}.stat-card-modern.percentage{background:linear-gradient(135deg,#6f42c10d,#5a32a305)}.stat-card-modern.time{background:linear-gradient(135deg,#28a7450d,#1e7e3405)}.stat-card-modern h3{color:var(--text-secondary);font-size:.9em;font-weight:600;letter-spacing:1px;margin:0 0 16px;text-transform:uppercase}.stat-number-modern{font-size:3em;font-weight:800;line-height:1.2;margin:0}.stat-card-modern.percentage .stat-number-modern,.stat-number-modern{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#007bff,#0056b3);-webkit-background-clip:text;background-clip:text}.stat-card-modern.time .stat-number-modern{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#28a745,#1e7e34);-webkit-background-clip:text;background-clip:text}.questions-results-section{animation:fadeInUp .8s ease;margin-top:40px}.section-title-modern{border-bottom:3px solid var(--border-color);color:var(--text-primary);font-size:1.8em;font-weight:700;margin-bottom:24px;padding-bottom:16px}.question-result-card{animation:slideInRight .6s ease;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:16px;margin-bottom:20px;overflow:hidden;padding:24px;position:relative;transition:all .3s ease}.question-result-card:before{background:var(--border-color);bottom:0;content:"";left:0;position:absolute;top:0;transition:all .3s ease;width:5px}.question-result-card.correct:before{background:linear-gradient(180deg,#28a745,#1e7e34)}.question-result-card.incorrect:before{background:linear-gradient(180deg,#dc3545,#c82333)}.question-result-card:hover{box-shadow:0 8px 20px #0000001f;transform:translateX(8px)}.question-result-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:16px}.question-result-header h4{color:var(--text-primary);font-size:1.3em;font-weight:700;margin:0}.question-type-badge-result{border-radius:12px;font-size:.75em;font-weight:700;letter-spacing:.5px;padding:6px 14px;text-transform:uppercase}.question-type-badge-result.coding{background:linear-gradient(135deg,#007bff,#0056b3);color:#fff}.question-type-badge-result.mcq{background:linear-gradient(135deg,#6f42c1,#5a32a3);color:#fff}.question-type-badge-result.aptitude{background:linear-gradient(135deg,#2e7d32,#1b5e20);color:#fff}.points-display{border-top:2px solid var(--border-color);display:flex;flex-wrap:wrap;gap:20px;margin-top:16px;padding-top:16px}.points-item{align-items:center;background:var(--bg-primary);border:2px solid var(--border-color);border-radius:10px;display:flex;gap:8px;padding:10px 16px}.points-item strong{color:var(--text-primary);font-weight:600}.points-item.correct{background:linear-gradient(135deg,#28a7451a,#1e7e340d);border-color:#28a745}.points-item.incorrect{background:linear-gradient(135deg,#dc35451a,#c823330d);border-color:#dc3545}.test-cases-info{background:var(--bg-primary);border-left:4px solid #007bff;border-radius:12px;margin-top:16px;padding:16px}.test-cases-info strong{color:var(--text-primary);display:block;margin-bottom:8px}.status-indicator{align-items:center;border-radius:8px;display:inline-flex;font-size:.9em;font-weight:600;gap:6px;padding:6px 12px}.status-indicator.correct{background:linear-gradient(135deg,#28a745,#1e7e34);color:#fff}.status-indicator.incorrect{background:linear-gradient(135deg,#dc3545,#c82333);color:#fff}.error-message-modern{animation:fadeInDown .5s ease;background:linear-gradient(135deg,#dc35451a,#c823330d);border:2px solid #dc3545;border-radius:16px;color:#dc3545;padding:24px;text-align:center}.error-message-modern h3{font-size:1.5em;font-weight:700;margin:0 0 12px}.error-message-modern p{color:var(--text-secondary);margin:8px 0}.back-btn-modern{background:linear-gradient(135deg,#007bff,#0056b3);border-radius:12px;box-shadow:0 4px 8px #007bff33;color:#fff;display:inline-block;font-weight:600;margin-top:24px;padding:12px 28px;text-decoration:none;transition:all .3s ease}.back-btn-modern:hover{box-shadow:0 6px 16px #007bff4d;transform:translateY(-2px)}.theory-reference{background:#e8f5e9;border:1px solid #4caf50;border-radius:5px;margin-top:12px;padding:10px}.theory-reference strong{color:#2e7d32}.theory-evaluation{background:#f5f5f5}.theory-evaluation,.theory-manual{border-radius:8px;margin-top:12px;padding:12px}.theory-manual{background:#fff3cd;border:1px solid #ffc107}.theory-evaluation p,.theory-manual p,.theory-reference p{margin-bottom:0;margin-top:6px;white-space:pre-wrap}.theory-evaluation-grid{grid-gap:6px;display:grid;gap:6px;margin-top:8px}.theory-feedback,.theory-missing,.theory-strengths{margin-top:8px}[data-theme=dark] .theory-reference{background:#1f2a1f;border-color:#2e7d32}[data-theme=dark] .theory-reference strong{color:#81c784}[data-theme=dark] .theory-reference p{color:var(--text-secondary)}[data-theme=dark] .theory-evaluation{background:#2a2a2a;color:var(--text-primary)}[data-theme=dark] .theory-manual{background:#3a2f16;border-color:#ffc107;color:var(--text-primary)}@media (max-width:768px){.result-summary-modern{grid-template-columns:1fr}.question-result-header{align-items:flex-start;flex-direction:column}.points-display{flex-direction:column}}.tests-by-type-hero{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:18px;box-shadow:0 12px 24px #00000014;margin-bottom:24px;padding:20px 24px}.tests-by-type-header{align-items:center;display:flex;gap:20px;justify-content:space-between}.tests-by-type-title{align-items:center;display:flex;gap:16px}.tests-by-type-icon{align-items:center;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:14px;display:inline-flex;font-size:2.2em;justify-content:center;padding:12px}.tests-by-type-header .btn{border-radius:10px;min-width:180px;padding:10px 18px}.tests-by-type-header h1{color:var(--text-primary);font-size:2.1em;font-weight:800;margin:0}.tests-by-type-subtext{color:var(--text-secondary);font-size:.95em;margin:6px 0 0}@media (max-width:768px){.tests-by-type-header{flex-direction:column}.tests-by-type-header,.tests-by-type-title{align-items:flex-start}.tests-by-type-header .btn{text-align:center;width:100%}}.interview-room{animation:fadeIn .4s ease;background-color:var(--bg-primary);color:var(--text-primary);display:flex;flex-direction:column;gap:20px;min-height:calc(100vh - 80px);padding:20px}.interview-room-error-state,.interview-room-loading{align-items:center;display:flex;flex-direction:column;gap:20px;justify-content:center;min-height:60vh}.interview-room-error-state p,.interview-room-loading p{color:var(--text-secondary);margin:0}.loading-spinner{animation:spin .8s linear infinite;border:4px solid var(--border-color);border-radius:50%;border-top-color:var(--primary-color);height:52px;width:52px}@keyframes spin{to{transform:rotate(1turn)}}.interview-room-error-state h2{color:var(--text-primary);font-size:1.5rem;margin:0}.interview-room-header{align-items:center;animation:fadeInDown .5s ease;background-color:var(--bg-secondary);border:2px solid var(--border-color);border-radius:16px;box-shadow:0 2px 8px var(--shadow);display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;padding:16px 24px}.interview-header-info h1{color:var(--text-primary);font-size:1.5rem;font-weight:700;margin:0}.interview-header-info p{color:var(--text-secondary);font-size:.9rem;margin:6px 0 0}.interview-header-actions{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.interview-timer{background:var(--primary-gradient);border-radius:12px;box-shadow:0 4px 8px var(--shadow);color:#fff;font-size:1.1rem;font-weight:700;min-width:80px;padding:10px 18px;text-align:center}.interview-progress-badge{background:var(--bg-primary);border:2px solid var(--border-color);border-radius:10px;color:var(--text-primary);font-size:.9rem;font-weight:600;padding:8px 14px}.btn-end,.btn-start{font-weight:600;padding:10px 20px}.interview-room-body{grid-gap:24px;display:grid;flex:1 1;gap:24px;grid-template-columns:320px 1fr;min-height:0}.interviewer-section{align-items:center;background-color:var(--bg-secondary);border:2px solid var(--border-color);border-radius:20px;box-shadow:0 2px 8px var(--shadow);display:flex;flex-direction:column;gap:14px;padding:28px 24px;text-align:center}.interviewer-avatar{align-items:center;display:flex;flex-shrink:0;height:160px;justify-content:center;position:relative;width:160px}.interviewer-avatar-svg{border-radius:50%;filter:drop-shadow(0 6px 16px var(--shadow));height:100%;overflow:visible;width:100%}.avatar-ear,.avatar-head,.avatar-neck{fill:#e8d5c4;fill:var(--avatar-skin,#e8d5c4);stroke:var(--border-color);stroke-width:1}.avatar-eye{fill:var(--bg-primary);stroke:var(--text-primary);stroke-width:2}.avatar-pupil{fill:var(--text-primary)}.avatar-mouth{fill:none;stroke:var(--text-primary);stroke-width:3;transition:d .2s ease,opacity .2s ease}.avatar-mouth.listening{stroke:#28a745;opacity:1}.avatar-wave{fill:none;stroke:#28a745;stroke-width:2;opacity:.5;pointer-events:none}.avatar-wave.wave-1{animation:listenWave 1.2s ease-in-out infinite}.avatar-wave.wave-2{animation:listenWave 1.2s ease-in-out .15s infinite}.avatar-wave.wave-3{animation:listenWave 1.4s ease-in-out .3s infinite}.avatar-wave.wave-4{animation:listenWave 1.4s ease-in-out .45s infinite}@keyframes listenWave{0%,to{opacity:.25;transform:scale(1)}50%{opacity:.7;transform:scale(1.08)}}.avatar-ring{border:2px solid var(--border-color);border-radius:50%;inset:-6px;pointer-events:none;position:absolute}.interviewer-avatar.speaking .avatar-ring{animation:avatarPulse 1.4s ease-in-out infinite;border-color:var(--primary-color)}.interviewer-avatar.listening{border-radius:50%;box-shadow:0 0 0 4px #28a74533}.interviewer-avatar.listening .interviewer-avatar-svg{animation:avatarListenFocus 2.5s ease-in-out infinite}.interviewer-avatar.listening .avatar-pupil{animation:avatarBlink 4s ease-in-out infinite}@keyframes avatarListenFocus{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes avatarBlink{0%,45%,55%,to{opacity:1}50%{opacity:.3}}@keyframes avatarPulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}.interviewer-name{color:var(--text-primary);font-size:1.2rem;font-weight:600;margin:0}.interviewer-hint{color:var(--text-secondary);font-size:.85rem;line-height:1.4;margin:0;max-width:260px}.interviewer-status{background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:20px;color:var(--text-secondary);font-size:.9rem;font-weight:500;padding:8px 16px}.interviewer-status.asking{background:var(--bg-primary);border-color:var(--primary-color);color:var(--text-primary)}.interviewer-status.listening{background:var(--bg-primary);border-color:#28a745;color:#28a745}.mic-indicator{border:1px solid var(--border-color);border-radius:12px;font-size:.85rem;font-weight:500;padding:6px 12px}.mic-indicator.on{background-color:#28a74526;border-color:#28a745;color:#28a745}.mic-indicator.off{background-color:var(--bg-primary);color:var(--text-secondary)}.content-section{display:flex;flex-direction:column;gap:20px;min-height:0}.question-card{background-color:var(--bg-secondary);border:2px solid var(--border-color);border-radius:16px;box-shadow:0 2px 8px var(--shadow);padding:20px 24px}.question-label{color:var(--text-secondary);display:block;font-size:.8rem;font-weight:600;letter-spacing:.05em;margin-bottom:8px;text-transform:uppercase}.question-text{font-size:1.15rem;line-height:1.55;margin:0}.answer-area{background-color:var(--bg-secondary);border:2px solid var(--border-color);border-radius:14px;box-shadow:0 2px 8px var(--shadow);display:flex;flex-direction:column;gap:12px;min-height:140px;padding:16px 20px}.answer-label{color:var(--text-secondary);font-size:.85rem;font-weight:600}.answer-captions{color:var(--text-primary);flex:1 1;font-size:1rem;line-height:1.5;min-height:60px}.waveform-bars{grid-gap:6px;align-items:flex-end;display:grid;gap:6px;grid-template-columns:repeat(10,1fr);height:36px;opacity:.5}.waveform-bars span{animation:waveIdle 1.2s ease-in-out infinite;background:var(--primary-gradient);border-radius:4px;display:block;height:8px}.waveform-bars.active{opacity:1}.waveform-bars.active span{animation:waveActive .8s ease-in-out infinite}.waveform-bars span:first-child{animation-delay:0s}.waveform-bars span:nth-child(2){animation-delay:.1s}.waveform-bars span:nth-child(3){animation-delay:.2s}.waveform-bars span:nth-child(4){animation-delay:.3s}.waveform-bars span:nth-child(5){animation-delay:.4s}.waveform-bars span:nth-child(6){animation-delay:.5s}.waveform-bars span:nth-child(7){animation-delay:.6s}.waveform-bars span:nth-child(8){animation-delay:.7s}.waveform-bars span:nth-child(9){animation-delay:.8s}.waveform-bars span:nth-child(10){animation-delay:.9s}@keyframes waveIdle{0%,to{height:8px;opacity:.5}50%{height:18px;opacity:.8}}@keyframes waveActive{0%,to{height:8px}50%{height:28px}}.answer-actions{display:flex;justify-content:flex-start}.btn-submit{font-weight:600;min-width:200px;padding:12px 20px}@media (max-width:900px){.interview-room-body{grid-template-columns:1fr}.interview-room-header{align-items:flex-start;flex-direction:column}.interview-header-actions{justify-content:space-between;width:100%}.interviewer-section{order:1}.interviewer-avatar{height:120px;width:120px}}.assignment-dashboard-container{animation:fadeIn .5s ease;margin:0 auto;max-width:1400px;padding:20px}.dashboard-header{animation:fadeInDown .5s ease;margin-bottom:36px;text-align:center}.dashboard-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;color:var(--text-primary);font-size:36px;font-weight:800;margin:0 0 10px}.dashboard-subtitle{color:var(--text-secondary);font-size:17px;font-weight:500;margin:0}.loading{color:#666;font-size:16px}.filter-tabs{animation:fadeInUp .6s ease;background:var(--card-bg);border-radius:14px;box-shadow:0 4px 12px var(--shadow);display:flex;flex-wrap:wrap;gap:12px;margin-bottom:28px;padding:18px}.filter-tabs,.filter-tabs button{border:2px solid var(--border-color)}.filter-tabs button{background:var(--bg-secondary);border-radius:10px;color:var(--text-secondary);cursor:pointer;flex:1 1;font-size:14px;font-weight:600;min-width:130px;padding:12px 20px;transition:all .3s ease}.filter-tabs button:hover{background:#667eea1a;border-color:#667eea;color:#667eea}[data-theme=dark] .filter-tabs button:hover{background:#8b9ef726;border-color:#8b9ef7;color:#8b9ef7}.filter-tabs button.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#0000;box-shadow:0 4px 12px #667eea66;color:#fff}.empty-state{background:var(--card-bg);border:2px solid var(--border-color);border-radius:16px;box-shadow:0 4px 12px var(--shadow);color:var(--text-secondary);font-size:18px;font-weight:500;padding:80px 20px;text-align:center}.assignments-grid{grid-gap:24px;animation:fadeInUp .7s ease;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(380px,1fr))}.assignment-card{background:var(--card-bg);border:2px solid var(--border-color);border-left:5px solid #667eea;border-radius:16px;box-shadow:0 4px 12px var(--shadow);display:flex;flex-direction:column;overflow:hidden;padding:26px;position:relative;transition:all .4s cubic-bezier(.16,1,.3,1)}.assignment-card:before{background:linear-gradient(90deg,#667eea,#764ba2);content:"";height:3px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .4s ease}.assignment-card:hover{border-color:#667eea80;box-shadow:0 8px 24px var(--shadow);transform:translateY(-4px)}.assignment-card:hover:before{transform:scaleX(1)}.assignment-card.overdue{border-left-color:#ff5252;opacity:.9}[data-theme=dark] .assignment-card{background:#2a2a2acc;border-color:var(--border-color)}.card-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.card-header h3{color:var(--text-primary);flex:1 1;font-size:19px;font-weight:700;line-height:1.4;margin:0}.status-badge{border-radius:14px;box-shadow:0 2px 8px #0003;color:#fff;font-size:12px;font-weight:700;padding:6px 14px;text-transform:capitalize;white-space:nowrap}.card-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.meta-chip{border-radius:12px;color:#fff;font-size:12px;font-weight:500;padding:4px 10px}.meta-chip.category{background:#9c27b0}.meta-chip.difficulty{text-transform:capitalize}.meta-chip.marks{background:#607d8b}.assignment-description{color:var(--text-secondary);font-size:14px;line-height:1.7;margin-bottom:18px}.assignment-details{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;margin-bottom:14px;padding:14px}[data-theme=dark] .assignment-details{background:#2a2a2a99}.detail-item{display:flex;font-size:13px;justify-content:space-between;padding:7px 0}.detail-label{color:var(--text-secondary);font-size:12px;font-weight:600;letter-spacing:.3px;text-transform:uppercase}.detail-value{color:var(--text-primary);font-weight:600}.detail-value.overdue-text{color:#f44336}.detail-value.time-remaining{color:#ff9800;font-weight:600}.evaluated-info,.progress-info,.submitted-info{align-items:center;background:linear-gradient(135deg,#2196f31a,#1976d20d);border:2px solid #2196f34d;border-radius:10px;color:#2196f3;display:flex;font-size:13px;font-weight:600;gap:10px;margin-bottom:14px;padding:12px 16px}[data-theme=dark] .progress-info{background:linear-gradient(135deg,#42a5f526,#2196f31a);border-color:#42a5f566;color:#64b5f6}.submitted-info{background:linear-gradient(135deg,#9c27b01a,#7b1fa20d);border-color:#9c27b04d;color:#9c27b0;flex-wrap:wrap}[data-theme=dark] .submitted-info{background:linear-gradient(135deg,#ba68c826,#ab47bc1a);border-color:#ba68c866;color:#ba68c8}.evaluated-info{background:linear-gradient(135deg,#4caf501a,#2e7d320d);border-color:#4caf504d;color:#4caf50}[data-theme=dark] .evaluated-info{background:linear-gradient(135deg,#81c78426,#66bb6a1a);border-color:#81c78466;color:#81c784}.evaluated-icon,.progress-icon,.submitted-icon{font-size:16px}.evaluation-pending{font-weight:500;margin-top:4px;width:100%}.card-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}.action-button{border:none;border-radius:10px;box-shadow:0 2px 8px #0000001a;cursor:pointer;flex:1 1;font-size:14px;font-weight:600;min-width:130px;padding:12px 18px;transition:all .3s ease}.action-button.view{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.action-button.view:hover{box-shadow:0 4px 14px #667eea66;transform:translateY(-2px)}.action-button.start{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff}.action-button.start:hover{box-shadow:0 4px 14px #4caf5066;transform:translateY(-2px)}.action-button.submit{background:linear-gradient(135deg,#ff9800,#f57c00);color:#fff}.action-button.submit:hover{box-shadow:0 4px 14px #ff980066;transform:translateY(-2px)}.action-button.status{background:linear-gradient(135deg,#9c27b0,#7b1fa2);color:#fff}.action-button.status:hover{box-shadow:0 4px 14px #9c27b066;transform:translateY(-2px)}.action-button.results{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff}.action-button.results:hover{box-shadow:0 4px 14px #4caf5066;transform:translateY(-2px)}.overdue-message{background:linear-gradient(135deg,#ff52521a,#e539350d);border:2px solid #ff52524d;border-radius:10px;color:#ff5252;font-size:13px;font-weight:600;padding:12px 16px;text-align:center;width:100%}[data-theme=dark] .overdue-message{background:linear-gradient(135deg,#ff8a8026,#ef53501a);border-color:#ff8a8066;color:#ff8a80}@media (max-width:768px){.assignment-dashboard-container{padding:12px}.dashboard-header h1{font-size:24px}.assignments-grid{grid-template-columns:1fr}.filter-tabs{flex-direction:column}.filter-tabs button{width:100%}.card-actions{flex-direction:column}.action-button{width:100%}}.submit-assignment-container{animation:fadeIn .5s ease;margin:0 auto;max-width:900px;padding:20px}.submit-header{align-items:center;animation:fadeInDown .5s ease;display:flex;gap:20px;margin-bottom:28px}.submit-header h1{color:var(--text-primary);font-size:30px;font-weight:700;margin:0}.back-button:hover{border-color:var(--primary-color)}.start-assignment-card{background:var(--card-bg);border:2px solid var(--border-color);border-radius:16px;box-shadow:0 4px 20px var(--shadow);padding:40px;text-align:center}.start-assignment-card h2{color:var(--text-primary);font-size:24px;font-weight:700;margin:0 0 12px}.start-assignment-meta{color:var(--text-secondary);font-size:15px;margin:0 0 24px;text-transform:capitalize}.start-assignment-duration{color:var(--text-primary);font-size:16px;line-height:1.6;margin:0 0 16px}.start-assignment-warning{color:var(--text-secondary);font-size:14px;font-style:italic;margin:0 0 28px}.start-assignment-button{background:var(--primary-gradient);border:none;border-radius:12px;box-shadow:0 4px 16px var(--shadow);color:#fff;cursor:pointer;font-size:18px;font-weight:600;padding:16px 40px;transition:all .3s ease}.start-assignment-button:hover:not(:disabled){box-shadow:0 6px 24px var(--shadow);opacity:.95;transform:translateY(-2px)}.start-assignment-button:disabled{cursor:not-allowed;opacity:.7}.assignment-timer{align-items:center;background:linear-gradient(135deg,#2e7d3226,#2e7d3214);border:2px solid #2e7d3280;border-radius:12px;color:var(--text-primary);display:flex;font-size:18px;font-weight:600;gap:12px;margin-bottom:24px;padding:16px 24px}.assignment-timer.expired{background:linear-gradient(135deg,#f4433626,#f4433614);border-color:#f4433680}[data-theme=dark] .assignment-timer{background:#2e7d3233;border-color:#2e7d3299}[data-theme=dark] .assignment-timer.expired{background:#f4433633;border-color:#f4433699}.assignment-timer .timer-icon{font-size:24px}.assignment-timer .timer-label{flex:1 1}.assignment-timer .timer-value{font-family:Monaco,Menlo,monospace;font-size:22px;min-width:120px;text-align:right}.time-expired-message{background:#f443361a;border-left:4px solid #c62828;border-radius:8px;color:#c62828;font-size:14px;font-weight:500;margin-top:12px;padding:12px}[data-theme=dark] .time-expired-message{background:#f4433626;border-left-color:#ef5350;color:#ef9a9a}.already-submitted-card{background:var(--card-bg);border:2px solid var(--border-color);border-radius:16px;margin-top:24px;padding:32px;text-align:center}.already-submitted-card h3{color:var(--text-primary);font-size:20px;margin:0 0 12px}.already-submitted-card p{color:var(--text-secondary);margin:0 0 12px}.already-submitted-card .evaluation-timing,.already-submitted-card .update-repo-note{font-size:14px}.already-submitted-card .submission-actions{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.already-submitted-card .submission-actions .cancel-button,.already-submitted-card .submission-actions .submit-button{border-radius:12px;flex:0 0 auto;font-size:.95em;font-weight:600;min-width:160px;padding:12px 24px;white-space:nowrap}.update-repo-form{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;margin-top:16px;padding:16px}.submission-policy-card{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:12px;margin:20px 0;padding:20px}.submission-policy-card h4{color:var(--text-primary);font-size:16px;font-weight:600;margin:0 0 12px}.submission-policy-card ul{margin:0;padding-left:20px}.submission-policy-card li{color:var(--text-primary);font-size:14px;line-height:1.5;margin-bottom:8px}.assignment-info-card{animation:fadeInUp .6s ease;background:var(--card-bg);border:2px solid var(--border-color);border-radius:16px;box-shadow:0 4px 16px var(--shadow);margin-bottom:28px;padding:28px}.assignment-info-card h2{color:var(--text-primary);font-size:26px;font-weight:700;margin:0 0 10px}.assignment-category{color:var(--text-secondary);font-size:14px;font-weight:600;margin:0 0 14px;text-transform:capitalize}.assignment-desc{font-size:15px;line-height:1.7;margin:0}.assignment-additional-instructions .rich-text-display,.assignment-desc,.assignment-desc .rich-text-display,.assignment-features .rich-text-display{color:var(--text-primary)}.assignment-additional-instructions .rich-text-display a,.assignment-desc .rich-text-display a,.assignment-features .rich-text-display a{color:var(--primary-color);text-decoration:underline;text-underline-offset:2px}.assignment-additional-instructions,.assignment-features{border-top:1px solid var(--border-color);margin-top:20px;padding-top:16px}.assignment-additional-instructions h4,.assignment-features h4{color:var(--text-primary);font-size:16px;font-weight:600;margin:0 0 12px}.assignment-features ul{list-style:disc;margin:0;padding-left:20px}.assignment-features li{color:var(--text-primary);line-height:1.6;margin-bottom:12px}.assignment-features .feature-marks{color:var(--text-secondary);font-size:.9em}.assignment-features .feature-description{color:var(--text-secondary);font-size:14px;margin-left:0;margin-top:6px}.important-notice{animation:fadeInUp .7s ease;background:var(--bg-secondary);border:2px solid var(--border-color);border-left:5px solid #ff9800;border-radius:12px;margin-bottom:28px;padding:22px}[data-theme=dark] .important-notice{background:#2a2a2a80;border-color:var(--border-color);border-left-color:#ffb74d}.important-notice h3{color:#e65100;font-size:19px;font-weight:700;margin:0 0 14px}[data-theme=dark] .important-notice h3{color:#ffb74d}.important-notice ul{margin:0;padding-left:22px}.important-notice li{color:var(--text-primary);font-weight:500;line-height:1.7;margin-bottom:10px}.error-message{animation:fadeIn .3s ease;padding:14px 18px}.form-section,.submit-form-section{animation:fadeInUp .8s ease;background:var(--card-bg);border:2px solid var(--border-color);border-radius:16px;box-shadow:0 4px 12px var(--shadow);margin-bottom:24px;padding:28px}.form-section h3,.submit-form-section h3{color:var(--text-primary);font-size:20px;font-weight:700;margin:0 0 20px}.field-help{color:var(--text-secondary);font-size:13px;line-height:1.5;margin-top:6px}.evaluation-info{animation:fadeInUp .85s ease;background:var(--card-bg);border:2px solid var(--border-color);border-radius:16px;box-shadow:0 4px 12px var(--shadow);margin-bottom:24px;padding:28px}.evaluation-info h3{color:var(--text-primary);font-size:20px;font-weight:700;margin:0 0 20px}.info-steps{display:flex;flex-direction:column;gap:12px}.info-step{align-items:flex-start;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;display:flex;gap:16px;padding:16px 20px;transition:border-color .2s ease,box-shadow .2s ease}.info-step:hover{border-color:var(--primary-color);box-shadow:0 2px 12px var(--shadow)}[data-theme=dark] .info-step{background:#2a2a2a80}[data-theme=dark] .info-step:hover{border-color:#ed033199}.info-step .step-number{align-items:center;background:var(--primary-color);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:14px;font-weight:700;height:32px;justify-content:center;width:32px}.step-content h4{color:var(--text-primary);font-size:16px;font-weight:600;margin:0 0 6px}.step-content p{line-height:1.6;margin:0}.evaluation-note,.step-content p{color:var(--text-secondary);font-size:14px}.evaluation-note{background:var(--bg-secondary);border-left:4px solid var(--primary-color);border-radius:8px;margin:16px 0 0;padding:12px 16px}[data-theme=dark] .evaluation-note{background:#2a2a2a80}.form-group{margin-bottom:22px}.form-group label{font-size:14px;font-weight:600;letter-spacing:.3px;margin-bottom:10px}.form-group label .required{color:#ff5252;margin-left:4px}[data-theme=dark] .form-group label .required{color:#ff8a80}.form-group input,.form-group textarea{background:var(--input-bg);border:2px solid var(--border-color);border-radius:10px;color:var(--text-primary);font-family:inherit;font-size:14px;padding:12px 16px;transition:all .3s ease;width:100%}.form-group input:focus,.form-group textarea:focus{background:var(--card-bg);border-color:var(--primary-color);box-shadow:0 0 0 3px #ed033126;outline:none}[data-theme=dark] .form-group input,[data-theme=dark] .form-group textarea{background:var(--input-bg);border-color:var(--border-color)}[data-theme=dark] .form-group input:focus,[data-theme=dark] .form-group textarea:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #ed033133}.form-group textarea{min-height:120px}.help-text{color:var(--text-secondary);font-size:13px;font-weight:500;margin-top:8px}.form-actions{background:var(--card-bg);border:2px solid var(--border-color);border-radius:16px;box-shadow:0 4px 12px var(--shadow);display:flex;gap:16px;margin-top:28px;padding:24px 28px}.cancel-button,.submit-button{border:none;border-radius:10px;cursor:pointer;flex:1 1;font-size:16px;font-weight:600;padding:14px 32px;transition:all .3s ease}.cancel-button{background:var(--bg-secondary);border:2px solid var(--border-color);color:var(--text-primary)}.cancel-button:hover{background:var(--border-color);transform:translateY(-2px)}.submit-button{background:var(--primary-gradient);box-shadow:0 4px 16px var(--shadow);color:#fff}.submit-button:hover{box-shadow:0 6px 20px var(--shadow);opacity:.95;transform:translateY(-2px)}.cancel-button:disabled,.submit-button:disabled{cursor:not-allowed;opacity:.5;transform:none}@media (max-width:768px){.assignment-info-card,.evaluation-info,.form-actions,.form-section,.start-assignment-card,.submit-form-section{padding:20px}.submit-header h1{font-size:24px}.form-actions{flex-direction:column}.cancel-button,.submit-button{width:100%}.info-step{padding:12px 16px}}.evaluation-result-container{animation:fadeIn .5s ease;margin:0 auto;max-width:1200px;padding:20px}.result-header{animation:fadeInDown .5s ease;gap:20px;margin-bottom:32px}.result-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;color:var(--text-primary);font-size:32px;font-weight:700}.back-button{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:10px;color:var(--text-primary);cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .3s ease}.back-button:hover{background:var(--border-color);border-color:#667eea;transform:translateX(-4px)}.loading{font-size:17px;font-weight:500;padding:60px 20px}.error-message{background:#ff52521a;border-left:4px solid #ff5252;border-radius:10px;color:#ff5252;font-weight:500;margin-bottom:20px;padding:16px 20px}[data-theme=dark] .error-message{background:#ff525226;border-left-color:#ff8a80;color:#ff8a80}.score-card{animation:fadeInUp .6s ease;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;box-shadow:0 12px 32px #667eea66;color:#fff;gap:40px;margin-bottom:28px;padding:36px}.score-card,.score-card-left{align-items:center;display:flex}.score-card-left{flex-direction:column;gap:14px}.grade-circle{align-items:center;background:#fff;border:7px solid #fff;border-radius:50%;box-shadow:0 8px 24px #00000026;display:flex;height:130px;justify-content:center;width:130px}.grade-text{font-size:52px;font-weight:800}.grade-text.A{background:linear-gradient(135deg,#4caf50,#45a049);-webkit-background-clip:text;background-clip:text}.grade-text.A,.grade-text.B{-webkit-text-fill-color:#0000}.grade-text.B{background:linear-gradient(135deg,#2196f3,#1976d2);-webkit-background-clip:text;background-clip:text}.grade-text.C{background:linear-gradient(135deg,#ff9800,#f57c00);-webkit-background-clip:text;background-clip:text}.grade-text.C,.grade-text.D{-webkit-text-fill-color:#0000}.grade-text.D{background:linear-gradient(135deg,#ff5252,#d32f2f);-webkit-background-clip:text;background-clip:text}.grade-text.F{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#c62828,#b71c1c);-webkit-background-clip:text;background-clip:text}.performance-level{font-size:17px;font-weight:600;opacity:.95}.score-card-right{flex:1 1}.score-card-right h2{font-size:26px;font-weight:700;margin:0 0 18px}.score-details{display:flex;flex-wrap:wrap;gap:40px}.score-item{display:flex;flex-direction:column;gap:6px}.score-label{font-size:13px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.score-value{font-size:32px}.section-card{animation:fadeInUp .6s ease;background:var(--card-bg);border:2px solid var(--border-color);border-radius:16px;box-shadow:0 4px 12px var(--shadow);margin-bottom:24px;padding:28px}.section-card h3{color:var(--text-primary);font-size:20px;font-weight:700;margin:0 0 20px}.categories-grid{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.analysis-summary{color:var(--text-primary);line-height:1.7}.analysis-section,.analysis-summary{margin-bottom:20px}.analysis-section h4{color:var(--text-primary);font-size:16px;margin:0 0 10px}.analysis-list{margin:0;padding-left:20px}.analysis-list li{color:var(--text-primary);line-height:1.6;margin-bottom:8px}.category-performance{animation:fadeInUp .7s ease;background:var(--card-bg);border:2px solid var(--border-color);border-radius:16px;box-shadow:0 4px 12px var(--shadow);margin-bottom:24px;padding:28px}.category-performance h2{color:var(--text-primary);font-size:22px;font-weight:700;margin:0 0 20px}.category-grid{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.category-item{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:12px;padding:18px;transition:all .3s ease}.category-item:hover{border-color:#667eea80;box-shadow:0 4px 12px var(--shadow)}[data-theme=dark] .category-item{background:#2a2a2a99}.category-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.category-name{color:var(--text-primary);font-size:14px;font-weight:700;text-transform:capitalize}.category-score{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:24px;font-weight:800}.category-bar{background:var(--border-color);border-radius:4px;height:8px;overflow:hidden}.category-bar-fill{background:linear-gradient(90deg,#667eea,#764ba2);border-radius:4px;height:100%;transition:width 1s ease-out}.feature-evaluation{animation:fadeInUp .8s ease;background:var(--card-bg);border:2px solid var(--border-color);border-radius:16px;box-shadow:0 4px 12px var(--shadow);margin-bottom:24px;padding:28px}.feature-evaluation h2{color:var(--text-primary);font-size:22px;font-weight:700;margin:0 0 20px}.feature-item{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:12px;margin-bottom:16px;padding:20px;transition:all .3s ease}.feature-item:hover{border-color:#667eea80;box-shadow:0 4px 12px var(--shadow)}[data-theme=dark] .feature-item{background:#2a2a2a99}.feature-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:14px}.feature-name{color:var(--text-primary);flex:1 1;font-size:16px;font-weight:700}.feature-status{align-items:center;border-radius:14px;display:inline-flex;font-size:13px;font-weight:700;gap:6px;padding:6px 14px;white-space:nowrap}.feature-status.implemented{background:linear-gradient(135deg,#4caf5026,#45a0491a);border:2px solid #4caf5066;color:#4caf50}[data-theme=dark] .feature-status.implemented{background:linear-gradient(135deg,#81c78433,#66bb6a26);border-color:#81c78480;color:#81c784}.feature-status.partial{background:linear-gradient(135deg,#ff980026,#f57c001a);border:2px solid #ff980066;color:#ff9800}[data-theme=dark] .feature-status.partial{background:linear-gradient(135deg,#ffb74d33,#ffa72626);border-color:#ffb74d80;color:#ffb74d}.feature-status.missing{background:linear-gradient(135deg,#ff525226,#e539351a);border:2px solid #ff525266;color:#ff5252}[data-theme=dark] .feature-status.missing{background:linear-gradient(135deg,#ff8a8033,#ef535026);border-color:#ff8a8080;color:#ff8a80}.feature-score{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:20px;font-weight:800}.feature-analysis,.feature-suggestion{margin-top:12px}.feature-analysis p,.feature-suggestion p{color:var(--text-secondary);font-size:14px;line-height:1.7;margin:6px 0 0}.feature-analysis strong,.feature-suggestion strong{color:var(--text-primary);font-size:14px;font-weight:700}.code-quality,.documentation-quality,.git-analysis,.overall-feedback,.security-issues{animation:fadeInUp .9s ease;background:var(--card-bg);border:2px solid var(--border-color);border-radius:16px;box-shadow:0 4px 12px var(--shadow);margin-bottom:24px;padding:28px}.code-quality h2,.documentation-quality h2,.git-analysis h2,.overall-feedback h2,.security-issues h2{color:var(--text-primary);font-size:22px;font-weight:700;margin:0 0 18px}.issue-item{background:var(--bg-secondary);border:2px solid var(--border-color);border-left:4px solid #ff9800;border-radius:10px;margin-bottom:12px;padding:16px 18px}[data-theme=dark] .issue-item{background:#2a2a2a99;border-left-color:#ffb74d}.issue-severity{font-size:13px;font-weight:700;letter-spacing:.5px;margin-bottom:6px;text-transform:uppercase}.issue-severity.high{color:#ff5252}[data-theme=dark] .issue-severity.high{color:#ff8a80}.issue-severity.medium{color:#ff9800}[data-theme=dark] .issue-severity.medium{color:#ffb74d}.issue-severity.low{color:#ffc107}[data-theme=dark] .issue-severity.low{color:#ffd54f}.issue-description{color:var(--text-primary);font-size:14px;font-weight:500;margin-bottom:8px}.issue-location{background:var(--input-bg);border-radius:6px;color:var(--text-secondary);display:inline-block;font-family:Courier New,monospace;font-size:13px;margin-top:6px;padding:6px 10px}.feedback-list{list-style:none;margin:0;padding:0}.feedback-list li{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:10px;color:var(--text-primary);font-size:14px;line-height:1.7;margin-bottom:10px;padding:14px 18px}[data-theme=dark] .feedback-list li{background:#2a2a2a99}.feedback-list.strengths li{border-left:4px solid #4caf50}.feedback-list.weaknesses li{border-left:4px solid #ff9800}.feedback-list.next-steps li{border-left:4px solid #667eea}.commit-analysis-card.has-penalty{border-left:4px solid #ff9800}.commit-analysis-summary{display:flex;flex-direction:column;gap:20px}.commit-stats-row{display:flex;flex-wrap:wrap;gap:24px}.commit-stat{display:flex;flex-direction:column;gap:4px}.commit-stat-label{color:var(--text-secondary);font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.commit-stat-value{color:var(--text-primary);font-size:15px;font-weight:600}.last-commit-detail{background:var(--bg-secondary);border-radius:8px;color:var(--text-primary);font-family:Monaco,Menlo,monospace;font-size:14px;padding:12px}.last-commit-detail code{background:var(--input-bg);border-radius:4px;font-size:13px;padding:2px 6px}.commit-message-preview{color:var(--text-secondary);font-family:inherit;font-style:italic}.commit-penalty-box{border:2px solid var(--border-color);border-radius:12px;padding:20px}.commit-penalty-box.ok{background:#4caf501a;border-color:#4caf5066}.commit-penalty-box.penalty{background:#ff98001a;border-color:#ff980080}.commit-penalty-box h4{font-size:16px;margin:0 0 12px}.commit-penalty-box p{color:var(--text-primary);line-height:1.6;margin:0 0 12px}.penalty-detail{color:var(--text-primary);font-size:14px;margin-bottom:8px}.late-commits-list{border-top:1px solid var(--border-color);margin-top:16px;padding-top:16px}.late-commits-list h5{color:var(--text-primary);font-size:14px;margin:0 0 12px}.late-commit-item{align-items:baseline;background:var(--bg-secondary);border-radius:8px;display:flex;flex-wrap:wrap;font-size:13px;gap:12px;margin-bottom:8px;padding:10px 14px}.late-commit-hash{color:var(--primary-color);font-family:Monaco,Menlo,monospace;font-weight:600}.late-commit-msg{color:var(--text-primary);flex:1 1}.late-commit-time{color:var(--text-secondary);font-size:12px}.feedback-card-detailed{padding:28px 32px}.feedback-summary-block{border-bottom:1px solid var(--border-color);margin-bottom:24px;padding-bottom:24px}.feedback-summary-block h4{color:var(--text-primary);font-size:16px;margin:0 0 10px}.feedback-summary-block .feedback-summary{color:var(--text-primary);line-height:1.7;margin:0;white-space:pre-wrap}.feedback-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:24px}.feedback-section{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:12px;padding:20px}.feedback-strengths{border-left:4px solid #4caf50}.feedback-improvements{border-left:4px solid #ff9800}.feedback-next-steps{margin-bottom:20px}.feedback-resources{border-left:4px solid #2196f3}.feedback-section h4{color:var(--text-primary);font-size:16px;font-weight:600;margin:0 0 14px}.feedback-list-detailed{list-style:none;margin:0;padding:0}.feedback-list-detailed li{border-bottom:1px solid var(--border-color);color:var(--text-primary);font-size:14px;line-height:1.6;padding:10px 0 10px 24px;position:relative}.feedback-list-detailed li:last-child{border-bottom:none}.feedback-list-detailed .bullet{color:var(--primary-color);font-weight:700;left:0;position:absolute}.feedback-list-ordered{margin:0;padding-left:20px}.feedback-list-ordered li{color:var(--text-primary);font-size:14px;line-height:1.6;padding:10px 0}.back-dashboard-button{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;color:#fff;cursor:pointer;display:inline-flex;font-size:15px;font-weight:600;gap:8px;margin-top:12px;padding:12px 28px;transition:all .3s ease}.back-dashboard-button:hover{box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.back-dashboard-button:active{transform:translateY(0)}.eval-status-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;margin-bottom:24px;padding:60px 30px;text-align:center}.eval-status-icon{font-size:56px;margin-bottom:16px}.eval-status-title{color:var(--text-primary);font-size:24px;font-weight:700;margin:0 0 12px}.eval-status-message{color:var(--text-secondary);font-size:16px;line-height:1.6;margin:0 auto;max-width:500px}@media (max-width:768px){.score-card{flex-direction:column;padding:24px}.score-details{flex-direction:column;gap:20px}.result-header h1{font-size:24px}.category-grid{grid-template-columns:1fr}}.sds-container{margin:0 auto;max-width:1400px;padding:24px}.sds-loading{color:#888;color:var(--text-secondary,#888);padding:60px;text-align:center}.sds-header{margin-bottom:28px}.sds-title{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:1.8rem;margin:0 0 4px}.sds-subtitle{color:#888;color:var(--text-secondary,#888);font-size:1rem;margin:0 0 16px}.sds-filter-tabs{display:flex;flex-wrap:wrap;gap:8px}.sds-filter-tab{background:#fff;background:var(--bg-primary,#fff);border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:20px;color:#666;color:var(--text-secondary,#666);cursor:pointer;font-size:.85rem;padding:8px 16px;transition:all .2s}.sds-filter-tab.active{background:#6c5ce7;border-color:#6c5ce7;color:#fff}.sds-empty{padding:80px 20px;text-align:center}.sds-empty-icon{font-size:3.5rem;margin-bottom:12px}.sds-empty h2{color:#333;color:var(--text-primary,#333);margin:0 0 8px}.sds-empty p{color:#888;color:var(--text-secondary,#888)}.sds-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.sds-card{background:#fff;background:var(--bg-primary,#fff);border:1px solid #eee;border:1px solid var(--border-color,#eee);border-radius:14px;box-shadow:0 2px 10px #0000000f;cursor:pointer;display:flex;flex-direction:column;padding:20px;transition:all .25s}.sds-card:hover{border-color:#d4cef5;box-shadow:0 8px 24px #6c5ce726;transform:translateY(-3px)}.sds-card-top{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.sds-card-icon{font-size:2rem}.sds-card-badges{display:flex;gap:6px}.sds-difficulty-badge{border-radius:12px;color:#fff;font-size:.75rem;font-weight:700;padding:3px 12px;text-transform:capitalize}.sds-card-title{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:1.1rem;font-weight:700;margin:0 0 4px}.sds-card-category{color:#6c5ce7;font-size:.85rem;font-weight:500;margin:0 0 12px}.sds-card-info{color:#888;color:var(--text-secondary,#888);display:flex;font-size:.82rem;gap:16px;margin-bottom:16px}.sds-card-bottom{align-items:center;display:flex;justify-content:space-between;margin-bottom:14px}.sds-status-badge{border-radius:12px;color:#fff;font-size:.75rem;font-weight:600;padding:4px 12px}.sds-score{color:#6c5ce7;font-size:1.3rem;font-weight:800}.sds-action-btn{background:#0000;border:2px solid;border-radius:10px;cursor:pointer;font-size:.9rem;font-weight:600;margin-top:auto;padding:10px;transition:all .2s;width:100%}.sds-action-btn:hover{opacity:.8}.sd-submissions-table{background:#fff;background:var(--bg-primary,#fff);border-collapse:collapse;border-radius:10px;box-shadow:0 1px 4px #0000000f;overflow:hidden;width:100%}.sd-submissions-table th{background:#f8f8f8;background:var(--bg-secondary,#f8f8f8);border-bottom:2px solid #eee;border-bottom:2px solid var(--border-color,#eee);color:#666;color:var(--text-secondary,#666);font-size:.82rem;font-weight:600;padding:12px 16px;text-align:left}.sd-submissions-table td{border-bottom:1px solid #f0f0f0;border-bottom:1px solid var(--border-color,#f0f0f0);color:#333;color:var(--text-primary,#333);font-size:.9rem;padding:12px 16px}.sd-submissions-table tr:hover{background:#fafafa;background:var(--bg-secondary,#fafafa)}[data-theme=dark] .sds-filter-tab.active{background:#6c5ce7;border-color:#6c5ce7;color:#fff}[data-theme=dark] .sds-card:hover{border-color:#6c5ce780;box-shadow:0 8px 24px #6c5ce740}[data-theme=dark] .sds-card-category,[data-theme=dark] .sds-score{color:#a29bfe}[data-theme=dark] .sds-action-btn{border-color:currentColor}.react-flow{--xy-edge-stroke-default:#b1b1b7;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#555;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#ffffff80;--xy-minimap-background-color-default:#fff;--xy-minimap-mask-background-color-default:#f0f0f099;--xy-minimap-mask-stroke-color-default:#0000;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#e2e2e2;--xy-minimap-node-stroke-color-default:#0000;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:#0000;--xy-background-pattern-dots-color-default:#91919a;--xy-background-pattern-lines-color-default:#eee;--xy-background-pattern-cross-color-default:#e2e2e2;--xy-node-color-default:inherit;--xy-node-border-default:1px solid #1a192b;--xy-node-background-color-default:#fff;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #00000014;--xy-node-boxshadow-selected-default:0 0 0 0.5px #1a192b;--xy-node-border-radius-default:3px;--xy-handle-background-color-default:#1a192b;--xy-handle-border-color-default:#fff;--xy-selection-background-color-default:#0059dc14;--xy-selection-border-default:1px dotted #0059dccc;--xy-controls-button-background-color-default:#fefefe;--xy-controls-button-background-color-hover-default:#f4f4f4;--xy-controls-button-color-default:inherit;--xy-controls-button-color-hover-default:inherit;--xy-controls-button-border-color-default:#eee;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#fff;--xy-edge-label-color-default:inherit;--xy-resize-background-color-default:#3367d9;background-color:var(--xy-background-color-default);background-color:var(--xy-background-color,var(--xy-background-color-default));direction:ltr}.react-flow.dark{--xy-edge-stroke-default:#3e3e3e;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#727272;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#96969640;--xy-minimap-background-color-default:#141414;--xy-minimap-mask-background-color-default:#3c3c3c99;--xy-minimap-mask-stroke-color-default:#0000;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#2b2b2b;--xy-minimap-node-stroke-color-default:#0000;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:#141414;--xy-background-pattern-dots-color-default:#777;--xy-background-pattern-lines-color-default:#777;--xy-background-pattern-cross-color-default:#777;--xy-node-color-default:#f8f8f8;--xy-node-border-default:1px solid #3c3c3c;--xy-node-background-color-default:#1e1e1e;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #ffffff14;--xy-node-boxshadow-selected-default:0 0 0 0.5px #999;--xy-handle-background-color-default:#bebebe;--xy-handle-border-color-default:#1e1e1e;--xy-selection-background-color-default:#c8c8dc14;--xy-selection-border-default:1px dotted #c8c8dccc;--xy-controls-button-background-color-default:#2b2b2b;--xy-controls-button-background-color-hover-default:#3e3e3e;--xy-controls-button-color-default:#f8f8f8;--xy-controls-button-color-hover-default:#fff;--xy-controls-button-border-color-default:#5b5b5b;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#141414;--xy-edge-label-color-default:#f8f8f8}.react-flow__background{background-color:var(--xy-background-color-default);background-color:var(--xy-background-color-props,var(--xy-background-color,var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{height:100%;left:0;position:absolute;top:0;width:100%}.react-flow__pane{z-index:1}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{pointer-events:none;transform-origin:0 0;z-index:2}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke-default);stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width-default);stroke-width:var(--xy-edge-stroke-width,var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke-default);stroke:var(--xy-connectionline-stroke,var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width-default);stroke-width:var(--xy-connectionline-stroke-width,var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{overflow:visible;pointer-events:none;position:absolute}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path,.react-flow__edge.selected .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected-default);stroke:var(--xy-edge-stroke-selected,var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke-default);stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke-default);fill:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}svg.react-flow__connectionline{overflow:visible;position:absolute;z-index:1001}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{box-sizing:border-box;cursor:default;pointer-events:all;position:absolute;transform-origin:0 0;-webkit-user-select:none;user-select:none}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{pointer-events:none;transform-origin:left top;z-index:3}.react-flow__nodesselection-rect{cursor:grab;pointer-events:all;position:absolute}.react-flow__handle{background-color:var(--xy-handle-background-color-default);background-color:var(--xy-handle-background-color,var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color,var(--xy-handle-border-color-default));border-radius:100%;height:6px;min-height:5px;min-width:5px;pointer-events:none;position:absolute;width:6px}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{cursor:crosshair;pointer-events:all}.react-flow__handle-bottom{bottom:0;left:50%;top:auto;transform:translate(-50%,50%)}.react-flow__handle-top{left:50%;top:0;transform:translate(-50%,-50%)}.react-flow__handle-left{left:0;top:50%;transform:translate(-50%,-50%)}.react-flow__handle-right{right:0;top:50%;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{margin:15px;position:absolute;z-index:5}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.bottom.center,.react-flow__panel.top.center{left:50%;transform:translateX(-15px) translateX(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px) translateY(-50%)}.react-flow__attribution{background:var(--xy-attribution-background-color-default);background:var(--xy-attribution-background-color,var(--xy-attribution-background-color-default));font-size:10px;margin:0;padding:2px 3px}.react-flow__attribution a{color:#999;text-decoration:none}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{pointer-events:none}.react-flow__edgelabel-renderer,.react-flow__viewport-portal{height:100%;left:0;position:absolute;top:0;-webkit-user-select:none;user-select:none;width:100%}.react-flow__minimap{background:var(--xy-minimap-background-color-default);background:var(
    --xy-minimap-background-color-props,var(--xy-minimap-background-color,var(--xy-minimap-background-color-default))
  )}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var(--xy-minimap-mask-background-color-default);fill:var(
      --xy-minimap-mask-background-color-props,var(--xy-minimap-mask-background-color,var(--xy-minimap-mask-background-color-default))
    );stroke:var(--xy-minimap-mask-stroke-color-default);stroke:var(
      --xy-minimap-mask-stroke-color-props,var(--xy-minimap-mask-stroke-color,var(--xy-minimap-mask-stroke-color-default))
    );stroke-width:var(--xy-minimap-mask-stroke-width-default);stroke-width:var(
      --xy-minimap-mask-stroke-width-props,var(--xy-minimap-mask-stroke-width,var(--xy-minimap-mask-stroke-width-default))
    )}.react-flow__minimap-node{fill:var(--xy-minimap-node-background-color-default);fill:var(
      --xy-minimap-node-background-color-props,var(--xy-minimap-node-background-color,var(--xy-minimap-node-background-color-default))
    );stroke:var(--xy-minimap-node-stroke-color-default);stroke:var(
      --xy-minimap-node-stroke-color-props,var(--xy-minimap-node-stroke-color,var(--xy-minimap-node-stroke-color-default))
    );stroke-width:var(--xy-minimap-node-stroke-width-default);stroke-width:var(
      --xy-minimap-node-stroke-width-props,var(--xy-minimap-node-stroke-width,var(--xy-minimap-node-stroke-width-default))
    )}.react-flow__background-pattern.dots{fill:var(--xy-background-pattern-dots-color-default);fill:var(
      --xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-dots-color-default))
    )}.react-flow__background-pattern.lines{stroke:var(--xy-background-pattern-lines-color-default);stroke:var(
      --xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-lines-color-default))
    )}.react-flow__background-pattern.cross{stroke:var(--xy-background-pattern-cross-color-default);stroke:var(
      --xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-cross-color-default))
    )}.react-flow__controls{box-shadow:var(--xy-controls-box-shadow-default);box-shadow:var(--xy-controls-box-shadow,var(--xy-controls-box-shadow-default));display:flex;flex-direction:column}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{align-items:center;background:var(--xy-controls-button-background-color-default);background:var(--xy-controls-button-background-color,var(--xy-controls-button-background-color-default));border:none;border-bottom:1px solid var(
        --xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default))
      );color:var(--xy-controls-button-color-default);color:var(
      --xy-controls-button-color-props,var(--xy-controls-button-color,var(--xy-controls-button-color-default))
    );cursor:pointer;display:flex;height:26px;justify-content:center;padding:4px;-webkit-user-select:none;user-select:none;width:26px}.react-flow__controls-button svg{fill:currentColor;max-height:12px;max-width:12px;width:100%}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-default,.react-flow__node-group,.react-flow__node-input,.react-flow__node-output{background-color:var(--xy-node-background-color-default);background-color:var(--xy-node-background-color,var(--xy-node-background-color-default));border:var(--xy-node-border,var(--xy-node-border-default));border-radius:var(--xy-node-border-radius-default);border-radius:var(--xy-node-border-radius,var(--xy-node-border-radius-default));color:var(--xy-node-color-default);color:var(--xy-node-color,var(--xy-node-color-default));font-size:12px;padding:10px;text-align:center;width:150px}.react-flow__node-default.selectable:hover,.react-flow__node-group.selectable:hover,.react-flow__node-input.selectable:hover,.react-flow__node-output.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover-default);box-shadow:var(--xy-node-boxshadow-hover,var(--xy-node-boxshadow-hover-default))}.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible,.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected-default);box-shadow:var(--xy-node-boxshadow-selected,var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color-default);background-color:var(--xy-node-group-background-color,var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color-default);background:var(--xy-selection-background-color,var(--xy-selection-background-color-default));border:var(--xy-selection-border,var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var(--xy-controls-button-background-color-hover-default);background:var(
        --xy-controls-button-background-color-hover-props,var(--xy-controls-button-background-color-hover,var(--xy-controls-button-background-color-hover-default))
      );color:var(--xy-controls-button-color-hover-default);color:var(
        --xy-controls-button-color-hover-props,var(--xy-controls-button-color-hover,var(--xy-controls-button-color-hover-default))
      )}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var(
        --xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default))
      )}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.bottom,.react-flow__resize-control.top{cursor:ns-resize}.react-flow__resize-control.bottom.right,.react-flow__resize-control.top.left{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{background-color:var(--xy-resize-background-color-default);background-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border:1px solid #fff;border-radius:1px;height:5px;translate:-50% -50%;width:5px}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.bottom.left,.react-flow__resize-control.handle.top.left{left:0}.react-flow__resize-control.handle.bottom.right,.react-flow__resize-control.handle.top.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border-style:solid;border-width:0}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{height:100%;top:0;transform:translate(-50%);width:1px}.react-flow__resize-control.line.left{border-left-width:1px;left:0}.react-flow__resize-control.line.right{border-right-width:1px;left:100%}.react-flow__resize-control.line.bottom,.react-flow__resize-control.line.top{height:1px;left:0;transform:translateY(-50%);width:100%}.react-flow__resize-control.line.top{border-top-width:1px;top:0}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color-default);fill:var(--xy-edge-label-background-color,var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color-default);fill:var(--xy-edge-label-color,var(--xy-edge-label-color-default))}.arch-builder{display:flex;flex-direction:column;gap:12px}.arch-toolbar{align-items:center;display:flex;gap:10px}.arch-template-select{background:#fff;background:var(--bg-primary,#fff);border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:6px;color:#333;color:var(--text-primary,#333);font-size:.85rem;padding:6px 12px}.arch-clear-btn{background:#fce4ec;border:none;border-radius:6px;color:#e53935;cursor:pointer;font-size:.82rem;font-weight:500;padding:6px 14px}.arch-workspace{border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:10px;display:flex;gap:0;height:500px;overflow:hidden}.arch-palette{background:#f8f8fa;background:var(--bg-secondary,#f8f8fa);border-right:1px solid #eee;border-right:1px solid var(--border-color,#eee);flex-shrink:0;overflow-y:auto;padding:12px;width:200px}.arch-palette-title{color:#333;color:var(--text-primary,#333);font-size:.9rem;font-weight:700;margin:0 0 12px}.arch-palette-category h4{color:#888;color:var(--text-secondary,#888);font-size:.72rem;letter-spacing:.5px;margin:10px 0 6px;text-transform:uppercase}.arch-palette-items{display:flex;flex-direction:column;gap:4px}.arch-palette-item{align-items:center;background:#fff;background:var(--bg-primary,#fff);border:1px solid #e8e8e8;border:1px solid var(--border-color,#e8e8e8);border-radius:6px;color:#333;color:var(--text-primary,#333);cursor:grab;display:flex;font-size:.8rem;gap:8px;padding:6px 8px;transition:all .15s}.arch-palette-item:hover{background:#f8f7ff;border-color:#6c5ce7}.arch-palette-item:active{cursor:grabbing}.arch-palette-icon{font-size:1rem}.arch-palette-label{font-weight:500}.arch-canvas-wrap{flex:1 1;height:100%;min-height:0;position:relative}.arch-canvas-wrap .react-flow{height:100%;width:100%}.arch-canvas-wrap .react-flow,.arch-custom-node{background:#fff;background:var(--bg-primary,#fff)}.arch-custom-node{border:2px solid #6c5ce7;border-radius:10px;box-shadow:0 2px 8px #6c5ce726;min-width:100px;padding:10px 16px;text-align:center}.arch-custom-node:hover{border-color:#5a4bd1;box-shadow:0 4px 12px #6c5ce740}.arch-node-icon{font-size:1.6rem;margin-bottom:4px}.arch-node-label{color:#333;color:var(--text-primary,#333);font-size:.82rem;font-weight:600}.arch-node-subtitle{color:#888;color:var(--text-secondary,#888);font-size:.7rem;margin-top:2px}.arch-handle{background:#6c5ce7;border:2px solid #fff;border:2px solid var(--bg-primary,#fff);border-radius:50%;height:8px;opacity:0;transition:opacity .2s;width:8px}.arch-custom-node:hover .arch-handle{opacity:1}.arch-handle:hover{background:#5a4bd1;height:10px;opacity:1;width:10px}.react-flow__edge-path{stroke:#6c5ce7;stroke-width:2}.react-flow__edge.selected .react-flow__edge-path{stroke:#5a4bd1;stroke-width:3}.react-flow__edge-path:hover{stroke:#5a4bd1}.react-flow__connectionline{stroke:#6c5ce7;stroke-width:2;stroke-dasharray:5 5}.arch-warnings{display:flex;flex-direction:column;gap:6px}.arch-warning{align-items:center;background:#fff8e1;border:1px solid #ffe082;border-radius:8px;display:flex;font-size:.82rem;gap:8px;padding:8px 14px}.arch-warning-icon{font-size:1rem}.arch-warning-text{color:#f57f17;flex:1 1}.arch-warning-dismiss{background:none;border:1px solid #ffe082;border-radius:4px;color:#f57f17;cursor:pointer;font-size:.75rem;padding:3px 8px}.arch-text-section label{color:#444;color:var(--text-primary,#444);display:block;font-size:.85rem;font-weight:600;margin-bottom:6px}.arch-text-section textarea{background:#fff;background:var(--bg-primary,#fff);border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:8px;box-sizing:border-box;color:#333;color:var(--text-primary,#333);font-family:inherit;font-size:.9rem;padding:10px 12px;resize:vertical;width:100%}.arch-text-section textarea:focus{border-color:#6c5ce7;outline:none}[data-theme=dark] .arch-palette-item:hover{background:#6c5ce71a;border-color:#6c5ce7}[data-theme=dark] .arch-custom-node{background:var(--bg-primary);border-color:#6c5ce7;box-shadow:0 2px 8px #6c5ce740}[data-theme=dark] .arch-custom-node:hover{border-color:#7c6ff0;box-shadow:0 4px 12px #6c5ce759}[data-theme=dark] .arch-warning{background:#ffc1071a;border-color:#ffe0824d}[data-theme=dark] .arch-warning-text{color:#fdd835}[data-theme=dark] .arch-warning-dismiss{border-color:#ffe0824d;color:#fdd835}[data-theme=dark] .arch-clear-btn{background:#e5393526;color:#ef5350}[data-theme=dark] .arch-canvas-wrap .react-flow{background:var(--bg-primary)}[data-theme=dark] .arch-handle{border-color:var(--bg-primary)}[data-theme=dark] .arch-text-section textarea:focus{border-color:#6c5ce7}[data-theme=dark] .react-flow__controls{background:var(--bg-secondary);border-color:var(--border-color);box-shadow:0 2px 8px #0000004d}[data-theme=dark] .react-flow__controls-button{fill:var(--text-primary);background:var(--bg-secondary);border-color:var(--border-color);color:var(--text-primary)}[data-theme=dark] .react-flow__controls-button:hover{background:var(--bg-primary)}[data-theme=dark] .react-flow__controls-button svg{fill:var(--text-primary)}[data-theme=dark] .react-flow__minimap{background:var(--bg-secondary);border-color:var(--border-color)}[data-theme=dark] .react-flow__attribution{background:#0000}[data-theme=dark] .react-flow__attribution a{color:var(--text-secondary)}.sdt-loading{align-items:center;color:#888;color:var(--text-secondary,#888);display:flex;font-size:1.1rem;height:60vh;justify-content:center}.sdt-container{display:flex;flex-direction:column;height:calc(100vh - 64px);overflow:hidden}.sdt-topbar{align-items:center;background:#fff;background:var(--bg-primary,#fff);border-bottom:1px solid #eee;border-bottom:1px solid var(--border-color,#eee);display:flex;flex-shrink:0;justify-content:space-between;padding:10px 20px}.sdt-topbar-left{flex:1 1}.sdt-problem-title{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:1.1rem;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sdt-topbar-center{flex:1 1;text-align:center}.sdt-save-indicator{border-radius:12px;font-size:.8rem;padding:4px 10px}.sdt-save-indicator.saving{background:#fff3e0;color:#e67e22}.sdt-save-indicator.saved{background:#e8f5e9;color:#27ae60}.sdt-topbar-right{align-items:center;display:flex;flex-shrink:0;gap:12px}.sdt-violation-badge{border-radius:8px;font-size:.82rem;font-weight:700;padding:6px 14px}.sdt-violation-badge.safe{background:#e8f5e9;color:#27ae60}.sdt-violation-badge.warn{background:#fff3e0;color:#e65100}.sdt-violation-badge.danger{animation:pulse 1s infinite;background:#fce4ec;color:#c62828}.sdt-fullscreen-btn{background:#f0f0f0;background:var(--bg-secondary,#f0f0f0);border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:8px;color:#333;color:var(--text-primary,#333);cursor:pointer;font-size:1rem;padding:6px 12px}.sdt-fullscreen-btn:hover{background:#fff;background:var(--bg-primary,#fff)}.sdt-violation-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0009;display:flex;inset:0;justify-content:center;position:fixed;z-index:9999}.sdt-violation-modal{background:#fff;background:var(--bg-primary,#fff);border-radius:16px;box-shadow:0 8px 32px #0003;max-width:440px;padding:32px 36px;text-align:center;width:90%}.sdt-violation-modal-icon{font-size:2.8rem;margin-bottom:12px}.sdt-violation-modal h3{color:#333;color:var(--text-primary,#333);font-size:1.3rem;margin:0 0 10px}.sdt-violation-modal p{color:#666;color:var(--text-secondary,#666);font-size:.95rem;line-height:1.6;margin:0 0 20px}.sdt-violation-modal.warning{border-top:4px solid #f39c12}.sdt-violation-modal.error{border-top:4px solid #e53935}.sdt-violation-modal-close{background:#6c5ce7;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;padding:10px 28px}.sdt-violation-modal-close:hover{background:#5a4bd1}.sdt-hint-toggle{background:#fff8e1;border:1px solid #ffe082;cursor:pointer;font-size:.85rem}.sdt-hint-toggle,.sdt-timer{border-radius:8px;padding:6px 14px}.sdt-timer{background:#f5f5f5;background:var(--bg-secondary,#f5f5f5);color:#333;color:var(--text-primary,#333);font-family:monospace;font-size:1.2rem;font-weight:700}.sdt-timer.warning{animation:pulse 1s infinite;background:#fce4ec;color:#e53935}.sdt-main{display:flex;flex:1 1;overflow:hidden}.sdt-sidebar{background:#f8f8fa;background:var(--bg-secondary,#f8f8fa);border-right:1px solid #eee;border-right:1px solid var(--border-color,#eee);flex-shrink:0;overflow-y:auto;padding:8px;width:240px}.sdt-step-btn{align-items:center;background:#0000;border:none;border-radius:8px;color:#666;color:var(--text-secondary,#666);cursor:pointer;display:flex;font-size:.85rem;gap:10px;margin-bottom:2px;padding:10px 12px;text-align:left;transition:all .2s;width:100%}.sdt-step-btn:hover{background:#fff;background:var(--bg-primary,#fff)}.sdt-step-btn.active{background:#6c5ce7;color:#fff;font-weight:600}.sdt-step-btn.complete{color:#333;color:var(--text-primary,#333)}.sdt-step-icon{font-size:1.1rem;text-align:center;width:24px}.sdt-step-label{flex:1 1}.sdt-step-check{color:#27ae60;font-weight:700}.sdt-step-btn.active .sdt-step-check{color:#a8e6cf}.sdt-content{flex:1 1;overflow-y:auto;padding:28px 32px;position:relative}.sdt-step-content h2{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:1.5rem;margin:0 0 20px}.sdt-step-content h3{color:#333;color:var(--text-primary,#333);font-size:1.1rem;margin:16px 0 10px}.sdt-step-desc{color:#888;color:var(--text-secondary,#888);font-size:.9rem;margin-bottom:16px}.sdt-problem-statement{color:#333;color:var(--text-primary,#333);line-height:1.7;margin-bottom:20px}.sdt-problem-statement img{max-width:100%}.sdt-context-box{background:#f0edff;border-left:4px solid #6c5ce7;border-radius:10px;margin-bottom:20px;padding:16px 20px}.sdt-context-box h3{color:#6c5ce7;margin:0 0 8px}.sdt-context-box p{margin:0}.sdt-context-box p,.sdt-rich-content{color:#333;color:var(--text-primary,#333)}.sdt-rich-content{line-height:1.7;word-break:break-word}.sdt-rich-content p{margin:0 0 8px}.sdt-rich-content p:last-child{margin-bottom:0}.sdt-rich-content ol,.sdt-rich-content ul{margin:4px 0 8px 20px;padding:0}.sdt-rich-content li{margin-bottom:4px}.sdt-rich-content strong{font-weight:700}.sdt-rich-content em{font-style:italic}.sdt-rich-content code{border-radius:4px;font-family:monospace;padding:1px 5px}.sdt-rich-content code,.sdt-rich-content pre{background:#f0f0f0;background:var(--bg-secondary,#f0f0f0);font-size:.88em}.sdt-rich-content pre{border-radius:6px;margin:8px 0;overflow-x:auto;padding:10px 14px}.sdt-rich-content pre code{background:none;padding:0}.sdt-rich-content blockquote{border-left:3px solid #6c5ce7;color:#666;color:var(--text-secondary,#666);margin:8px 0;padding:4px 12px}.sdt-rich-content h1,.sdt-rich-content h2,.sdt-rich-content h3{color:#333;color:var(--text-primary,#333);margin:12px 0 6px}.sdt-rich-content img{border-radius:6px;max-width:100%}.sdt-constraints-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));margin-bottom:24px}.sdt-constraint{background:#f8f8f8;background:var(--bg-secondary,#f8f8f8);border:1px solid #eee;border:1px solid var(--border-color,#eee);border-radius:10px;padding:14px 16px}.sdt-constraint label{color:#6c5ce7;display:block;font-size:.75rem;font-weight:600;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.sdt-constraint span{color:#333;color:var(--text-primary,#333);font-size:.95rem;font-weight:500}.sdt-next-btn{background:#6c5ce7;border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:20px;padding:12px 28px}.sdt-next-btn:hover{background:#5a4bd1}.sdt-add-btn{background:#f0edff;border:1px dashed #b8b0e0;border-radius:8px;color:#6c5ce7;cursor:pointer;font-size:.85rem;font-weight:500;margin-top:10px;padding:8px 16px}.sdt-add-btn.small{font-size:.78rem;padding:5px 10px}.sdt-remove-btn{align-items:center;background:#fce4ec;border:none;border-radius:6px;color:#e53935;cursor:pointer;display:flex;flex-shrink:0;font-size:1rem;height:28px;justify-content:center;width:28px}.sdt-remove-btn.small{font-size:.8rem;height:22px;width:22px}.sdt-dynamic-row{align-items:center;display:flex;gap:10px;margin-bottom:8px}.sdt-dynamic-row .sdt-row-label{color:#6c5ce7;font-size:.85rem;font-weight:700;min-width:35px}.sdt-dynamic-row input{background:#fff;background:var(--bg-primary,#fff);border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:8px;color:#333;color:var(--text-primary,#333);flex:1 1;font-size:.9rem;padding:10px 12px}.sdt-nfr-field{margin-bottom:14px}.sdt-nfr-field label{color:#444;color:var(--text-primary,#444);display:block;font-size:.85rem;font-weight:600;margin-bottom:5px}.sdt-nfr-field input,.sdt-nfr-field textarea{background:#fff;background:var(--bg-primary,#fff);border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:8px;box-sizing:border-box;color:#333;color:var(--text-primary,#333);font-family:inherit;font-size:.9rem;padding:10px 12px;resize:vertical;width:100%}.sdt-nfr-field input:focus,.sdt-nfr-field textarea:focus{border-color:#6c5ce7;box-shadow:0 0 0 3px #6c5ce71a;outline:none}.sdt-calc-helper{background:#f0f7ff;border-radius:10px;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px;padding:12px 16px}.sdt-calc-chip{background:#fff;border:1px solid #d0e4ff;border-radius:6px;color:#2980b9;font-family:monospace;font-size:.78rem;font-weight:500;padding:4px 10px}.sdt-entities-list{display:flex;flex-direction:column;gap:16px}.sdt-entity-card{background:#f8f8f8;background:var(--bg-secondary,#f8f8f8);border:1px solid #e8e8e8;border:1px solid var(--border-color,#e8e8e8);border-radius:10px;padding:16px}.sdt-entity-header{display:flex;gap:10px;margin-bottom:12px}.sdt-entity-name{background:#fff;background:var(--bg-primary,#fff);border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:6px;color:#333;color:var(--text-primary,#333);flex:1 1;font-size:1rem;font-weight:600;padding:8px 12px}.sdt-entity-fields label{color:#666;color:var(--text-secondary,#666);display:block;font-size:.8rem;font-weight:600;margin-bottom:6px}.sdt-field-row{display:flex;gap:8px;margin-bottom:6px}.sdt-field-row input{flex:1 1;padding:6px 10px}.sdt-entity-notes,.sdt-field-row input{background:#fff;background:var(--bg-primary,#fff);border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:6px;color:#333;color:var(--text-primary,#333);font-size:.85rem}.sdt-entity-notes{box-sizing:border-box;margin-top:10px;padding:8px 10px;resize:vertical;width:100%}.sdt-api-list{display:flex;flex-direction:column;gap:14px}.sdt-api-row{background:#f8f8f8;background:var(--bg-secondary,#f8f8f8);border:1px solid #eee;border:1px solid var(--border-color,#eee);border-radius:10px;padding:14px}.sdt-api-top{align-items:center;display:flex;gap:8px;margin-bottom:10px}.sdt-api-method{font-size:.85rem;font-weight:700;padding:8px;width:100px}.sdt-api-endpoint,.sdt-api-method{background:#fff;background:var(--bg-primary,#fff);border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:6px}.sdt-api-endpoint{color:#333;color:var(--text-primary,#333);flex:1 1;font-family:monospace;font-size:.9rem;padding:8px 10px}.sdt-api-detail-row{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr;margin-bottom:8px}.sdt-api-detail-col label{color:#666;color:var(--text-secondary,#666);display:block;font-size:.78rem;font-weight:600;margin-bottom:4px}.sdt-api-detail-col textarea{padding:6px 8px;resize:vertical}.sdt-api-desc,.sdt-api-detail-col textarea{background:#fff;background:var(--bg-primary,#fff);border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:6px;box-sizing:border-box;color:#333;color:var(--text-primary,#333);width:100%}.sdt-api-desc{font-size:.85rem;padding:8px 10px}.sdt-step-content.sdt-architecture-step{overflow:visible}.sdt-flow-card{background:#f8f8f8;background:var(--bg-secondary,#f8f8f8);border:1px solid #eee;border:1px solid var(--border-color,#eee);border-radius:10px;margin-bottom:16px;padding:16px}.sdt-flow-header{display:flex;gap:10px;margin-bottom:12px}.sdt-flow-scenario{background:#fff;background:var(--bg-primary,#fff);border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:6px;color:#333;color:var(--text-primary,#333);flex:1 1;font-weight:600;padding:8px 12px}.sdt-flow-steps{border-left:2px solid #d4cef5;margin-left:8px;padding-left:16px}.sdt-flow-step{align-items:center;display:flex;gap:10px;margin-bottom:8px;position:relative}.sdt-flow-step:before{background:#6c5ce7;border-radius:50%;content:"";height:10px;left:-22px;position:absolute;width:10px}.sdt-flow-step-num{color:#6c5ce7;font-size:.85rem;font-weight:700;min-width:24px;text-align:center}.sdt-flow-step input{background:#fff;background:var(--bg-primary,#fff);border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:6px;color:#333;color:var(--text-primary,#333);flex:1 1;font-size:.85rem;padding:8px 10px}.sdt-db-card{background:#f8f8f8;background:var(--bg-secondary,#f8f8f8);border:1px solid #eee;border:1px solid var(--border-color,#eee);border-radius:10px;margin-bottom:16px;padding:16px}.sdt-db-header{display:flex;gap:10px;margin-bottom:12px}.sdt-db-entity{flex:1 1;font-weight:600;padding:8px 12px}.sdt-db-entity,.sdt-db-type{background:#fff;background:var(--bg-primary,#fff);border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:6px;color:#333;color:var(--text-primary,#333)}.sdt-db-type{padding:8px;width:160px}.sdt-scaling-list{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-bottom:20px}.sdt-scaling-card{background:#fff;background:var(--bg-primary,#fff);border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:10px;padding:14px;transition:all .2s}.sdt-scaling-card.selected{background:#f8f7ff;border-color:#6c5ce7}.sdt-scaling-header{align-items:center;color:#333;color:var(--text-primary,#333);cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:10px}.sdt-scaling-card textarea{background:#fff;background:var(--bg-primary,#fff);border:1px solid #d4cef5;border-radius:6px;box-sizing:border-box;color:#333;color:var(--text-primary,#333);font-size:.85rem;margin-top:10px;padding:8px 10px;resize:vertical;width:100%}.sdt-topic-grid{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.sdt-topic-btn{background:#fff;background:var(--bg-primary,#fff);border:2px solid #ddd;border:2px solid var(--border-color,#ddd);border-radius:10px;color:#333;color:var(--text-primary,#333);cursor:pointer;font-size:.9rem;padding:10px 18px;transition:all .2s}.sdt-topic-btn.selected{background:#f0edff;border-color:#6c5ce7;color:#6c5ce7;font-weight:600}.sdt-tradeoff-card{background:#f8f8f8;background:var(--bg-secondary,#f8f8f8);border:1px solid #eee;border:1px solid var(--border-color,#eee);border-radius:10px;margin-bottom:16px;padding:16px}.sdt-tradeoff-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.sdt-tradeoff-num{color:#6c5ce7;font-size:.9rem;font-weight:700}.sdt-tradeoff-row{align-items:center;display:flex;gap:12px;margin-bottom:12px}.sdt-tradeoff-col{flex:1 1}.sdt-tradeoff-col label{color:#666;color:var(--text-secondary,#666);display:block;font-size:.78rem;font-weight:600;margin-bottom:4px}.sdt-tradeoff-col input{background:#fff;background:var(--bg-primary,#fff);border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:6px;box-sizing:border-box;color:#333;color:var(--text-primary,#333);font-size:.9rem;padding:8px 10px;width:100%}.sdt-tradeoff-vs{color:#e74c3c;font-size:.85rem;font-weight:700;padding-top:18px}.sdt-review-list{display:flex;flex-direction:column;gap:8px;margin-bottom:24px}.sdt-review-item{align-items:center;background:#f8f8f8;background:var(--bg-secondary,#f8f8f8);border-radius:8px;display:flex;gap:12px;padding:12px 16px}.sdt-review-item.complete{border-left:3px solid #27ae60}.sdt-review-item.incomplete{border-left:3px solid #f39c12}.sdt-review-icon{font-size:1.1rem}.sdt-review-label{color:#333;color:var(--text-primary,#333);flex:1 1;font-weight:500}.sdt-review-status{color:#888;color:var(--text-secondary,#888);font-size:.82rem;font-weight:600}.sdt-review-jump{background:#f0edff;border:none;border-radius:6px;color:#6c5ce7;cursor:pointer;font-size:.8rem;font-weight:500;padding:4px 12px}.sdt-hint-summary{background:#fff3e0;border-radius:8px;color:#e67e22;font-weight:500;margin-bottom:20px;padding:12px 16px}.sdt-submit-btn{background:#6c5ce7;border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:700;padding:14px 36px;width:100%}.sdt-submit-btn:hover{background:#5a4bd1}.sdt-submit-btn:disabled{background:#b8b0e0;cursor:not-allowed}.sdt-step-nav{border-top:1px solid #eee;border-top:1px solid var(--border-color,#eee);display:flex;justify-content:space-between;margin-top:28px;padding-top:20px}.sdt-nav-btn{border:none;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:600;padding:10px 20px}.sdt-nav-btn.prev{background:#f0f0f0;background:var(--bg-secondary,#f0f0f0);color:#333;color:var(--text-primary,#333)}.sdt-nav-btn.next{background:#6c5ce7;color:#fff}.sdt-hint-drawer{background:#fff;background:var(--bg-primary,#fff);border-left:1px solid #eee;border-left:1px solid var(--border-color,#eee);box-shadow:-4px 0 16px #00000014;height:100%;overflow-y:auto;padding:20px;position:absolute;right:0;top:0;width:320px;z-index:10}.sdt-hint-drawer-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.sdt-hint-drawer-header h3{margin:0}.sdt-hint-drawer-header button{background:none;border:none;color:#666;color:var(--text-secondary,#666);cursor:pointer;font-size:1.2rem}.sdt-hint-empty{color:#888;color:var(--text-secondary,#888);font-style:italic}.sdt-hint-item{margin-bottom:12px}.sdt-hint-item.revealed{background:#f0fff4;border:1px solid #a8e6cf;border-radius:8px;padding:12px}.sdt-hint-text{color:#333;color:var(--text-primary,#333);font-size:.9rem;margin:0}.sdt-hint-unlock{background:#fff8e1;border:1px dashed #ffc107;border-radius:8px;color:#f57f17;cursor:pointer;font-size:.85rem;padding:10px 16px;text-align:left;width:100%}[data-theme=dark] .sdt-save-indicator.saving{background:#e67e2226;color:#f0a04b}[data-theme=dark] .sdt-save-indicator.saved,[data-theme=dark] .sdt-violation-badge.safe{background:#27ae6026;color:#6bcf8e}[data-theme=dark] .sdt-violation-badge.warn{background:#e67e2226;color:#f0a04b}[data-theme=dark] .sdt-violation-badge.danger{background:#e5393526;color:#ef5350}[data-theme=dark] .sdt-violation-modal{border-color:var(--border-color)}[data-theme=dark] .sdt-hint-toggle{background:#ffe0821a;border-color:#ffe0824d;color:var(--text-primary)}[data-theme=dark] .sdt-timer.warning{background:#e5393526;color:#ef5350}[data-theme=dark] .sdt-step-btn.active{background:#6c5ce7;color:#fff}[data-theme=dark] .sdt-step-btn:hover{background:var(--bg-primary)}[data-theme=dark] .sdt-step-btn.active .sdt-step-check{color:#a8e6cf}[data-theme=dark] .sdt-context-box{background:#6c5ce71f;border-left-color:#6c5ce7}[data-theme=dark] .sdt-context-box h3{color:#a29bfe}[data-theme=dark] .sdt-context-box p{color:var(--text-primary)}[data-theme=dark] .sdt-constraint label{color:#a29bfe}[data-theme=dark] .sdt-rich-content code,[data-theme=dark] .sdt-rich-content pre{background:var(--bg-secondary)}[data-theme=dark] .sdt-rich-content blockquote{border-left-color:#a29bfe;color:var(--text-secondary)}[data-theme=dark] .sdt-next-btn{background:#6c5ce7}[data-theme=dark] .sdt-next-btn:hover{background:#7c6ff0}[data-theme=dark] .sdt-add-btn{background:#6c5ce71f;border-color:#6c5ce74d;color:#a29bfe}[data-theme=dark] .sdt-remove-btn{background:#e5393526;color:#ef5350}[data-theme=dark] .sdt-nav-btn.next,[data-theme=dark] .sdt-submit-btn{background:#6c5ce7}[data-theme=dark] .sdt-submit-btn:disabled{background:#6c5ce759}[data-theme=dark] .sdt-dynamic-row .sdt-row-label{color:#a29bfe}[data-theme=dark] .sdt-nfr-field input:focus,[data-theme=dark] .sdt-nfr-field textarea:focus{border-color:#6c5ce7;box-shadow:0 0 0 3px #6c5ce726}[data-theme=dark] .sdt-calc-helper{background:#2980b91a}[data-theme=dark] .sdt-calc-chip{background:var(--bg-secondary);border-color:#2980b940;color:#5dade2}[data-theme=dark] .sdt-api-method{color:var(--text-primary)}[data-theme=dark] .sdt-flow-steps{border-left-color:#6c5ce759}[data-theme=dark] .sdt-flow-step:before{background:#6c5ce7}[data-theme=dark] .sdt-flow-step-num{color:#a29bfe}[data-theme=dark] .sdt-scaling-card.selected{background:#6c5ce71a;border-color:#6c5ce7}[data-theme=dark] .sdt-scaling-card textarea{border-color:#6c5ce74d}[data-theme=dark] .sdt-topic-btn.selected{background:#6c5ce71f;border-color:#6c5ce7;color:#a29bfe}[data-theme=dark] .sdt-tradeoff-num{color:#a29bfe}[data-theme=dark] .sdt-tradeoff-vs{color:#ef5350}[data-theme=dark] .sdt-review-jump{background:#6c5ce71f;color:#a29bfe}[data-theme=dark] .sdt-hint-summary{background:#e67e221f;color:#f0a04b}[data-theme=dark] .sdt-review-item.complete{border-left-color:#27ae60}[data-theme=dark] .sdt-review-item.incomplete{border-left-color:#f39c12}[data-theme=dark] .sdt-hint-item.revealed{background:#27ae601a;border-color:#27ae604d}[data-theme=dark] .sdt-hint-unlock{background:#ffc1071a;border-color:#ffc1074d;color:#fdd835}.sdfu-container{margin:0 auto;max-width:800px;padding:32px 24px}.sdfu-loading{color:#888;color:var(--text-secondary,#888);padding:60px;text-align:center}.sdfu-header{margin-bottom:32px;text-align:center}.sdfu-header h1{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:1.6rem;margin:0 0 8px}.sdfu-desc{color:#888;color:var(--text-secondary,#888);margin:0 0 20px}.sdfu-progress{gap:10px}.sdfu-progress,.sdfu-progress-dot{display:flex;justify-content:center}.sdfu-progress-dot{align-items:center;background:#eee;background:var(--bg-secondary,#eee);border:2px solid #0000;border-radius:50%;color:#888;color:var(--text-secondary,#888);font-size:.85rem;font-weight:700;height:36px;transition:all .3s;width:36px}.sdfu-progress-dot.current{background:#f0edff;border-color:#6c5ce7;color:#6c5ce7}.sdfu-progress-dot.answered{background:#6c5ce7;color:#fff}.sdfu-question-card{background:#f8f7ff;background:var(--bg-secondary,#f8f7ff);border:1px solid #d4cef5;border-radius:12px;margin-bottom:20px;padding:24px}.sdfu-question-num{color:#6c5ce7;font-size:.78rem;font-weight:600;letter-spacing:.5px;margin-bottom:10px;text-transform:uppercase}.sdfu-question-text{font-size:1.1rem;line-height:1.6;margin:0}.sdfu-answer-input,.sdfu-question-text{color:#333;color:var(--text-primary,#333)}.sdfu-answer-input{background:#fff;background:var(--bg-primary,#fff);border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:10px;box-sizing:border-box;font-family:inherit;font-size:.95rem;line-height:1.5;margin-bottom:12px;padding:14px 16px;resize:vertical;width:100%}.sdfu-answer-input:focus{border-color:#6c5ce7;box-shadow:0 0 0 3px #6c5ce71a;outline:none}.sdfu-submit-btn{background:#6c5ce7;border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 28px}.sdfu-submit-btn:disabled{background:#b8b0e0;cursor:not-allowed}.sdfu-feedback-card{background:#fff;background:var(--bg-primary,#fff);border:1px solid #eee;border:1px solid var(--border-color,#eee);border-radius:12px;box-shadow:0 2px 8px #0000000d;margin-top:20px;padding:20px}.sdfu-your-answer{background:#f8f8f8;background:var(--bg-secondary,#f8f8f8);border-radius:8px;font-size:.9rem;line-height:1.5;margin-bottom:12px;padding:12px}.sdfu-score,.sdfu-your-answer{color:#333;color:var(--text-primary,#333)}.sdfu-score{font-size:1rem;margin-bottom:10px}.sdfu-score-val{font-size:1.2rem;font-weight:700}.sdfu-score-val.good{color:#27ae60}.sdfu-score-val.ok{color:#f39c12}.sdfu-score-val.poor{color:#e74c3c}.sdfu-feedback-text{color:#555;color:var(--text-secondary,#555);line-height:1.5;margin:0 0 14px}.sdfu-next-btn{background:#6c5ce7;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:10px 20px}.sdfu-complete{padding:40px 20px;text-align:center}.sdfu-complete-icon{font-size:3rem;margin-bottom:12px}.sdfu-complete h2{color:#333;color:var(--text-primary,#333)}.sdfu-complete p{color:#888;color:var(--text-secondary,#888)}.sdfu-results-btn{background:#6c5ce7;border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:16px;padding:12px 28px}.sdfu-evaluating{padding:60px 20px;text-align:center}.sdfu-evaluating-icon{animation:sdfu-bounce 2s ease-in-out infinite;font-size:4rem;margin-bottom:16px}@keyframes sdfu-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.sdfu-evaluating h2{color:#333;color:var(--text-primary,#333);font-size:1.5rem;margin:0 0 10px}.sdfu-evaluating p{color:#888;color:var(--text-secondary,#888);line-height:1.6;margin:0 auto 8px;max-width:500px}.sdfu-evaluating-spinner{animation:sdfu-spin 1s linear infinite;border:4px solid #eee;border:4px solid var(--border-color,#eee);border-radius:50%;border-top:4px solid #6c5ce7;height:48px;margin:28px auto;width:48px}@keyframes sdfu-spin{to{transform:rotate(1turn)}}.sdfu-evaluating-hint{color:#aaa;color:var(--text-secondary,#aaa);font-size:.85rem;margin-top:8px}[data-theme=dark] .sdfu-progress-dot.current{background:#6c5ce726;border-color:#6c5ce7;color:#a29bfe}[data-theme=dark] .sdfu-progress-dot.answered{background:#6c5ce7;color:#fff}[data-theme=dark] .sdfu-question-card{background:#6c5ce714;border-color:#6c5ce740}[data-theme=dark] .sdfu-question-num{color:#a29bfe}[data-theme=dark] .sdfu-answer-input:focus{border-color:#6c5ce7;box-shadow:0 0 0 3px #6c5ce726}[data-theme=dark] .sdfu-submit-btn{background:#6c5ce7}[data-theme=dark] .sdfu-submit-btn:disabled{background:#6c5ce759}[data-theme=dark] .sdfu-next-btn,[data-theme=dark] .sdfu-results-btn{background:#6c5ce7}[data-theme=dark] .sdfu-score-val.good{color:#6bcf8e}[data-theme=dark] .sdfu-score-val.ok{color:#f0a04b}[data-theme=dark] .sdfu-score-val.poor{color:#ef5350}.sdr-container{margin:0 auto;max-width:1100px;padding:24px}.sdr-loading{color:#888;color:var(--text-secondary,#888);padding:60px;text-align:center}.sdr-back-btn{background:#f0f0f0;background:var(--bg-secondary,#f0f0f0);border:none;border-radius:8px;color:#333;color:var(--text-primary,#333);cursor:pointer;font-size:.9rem;margin-bottom:20px;padding:8px 16px}.sdr-score-header{align-items:center;background:#fff;background:var(--bg-primary,#fff);border-radius:16px;box-shadow:0 2px 12px #0000000f;display:flex;gap:24px;margin-bottom:24px;padding:28px}.sdr-score-circle{align-items:center;border:5px solid;border-radius:50%;display:flex;flex-direction:column;flex-shrink:0;height:110px;justify-content:center;width:110px}.sdr-score-pct{color:#333;color:var(--text-primary,#333);font-size:1.8rem;font-weight:800}.sdr-score-grade{font-size:1rem;font-weight:700}.sdr-score-info{flex:1 1}.sdr-score-info h1{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:1.4rem;margin:0 0 8px}.sdr-score-meta{color:#666;color:var(--text-secondary,#666);display:flex;flex-wrap:wrap;font-size:.9rem;gap:16px}.sdr-penalty{color:#e67e22;font-weight:600}.sdr-charts-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));margin-bottom:24px}.sdr-chart-card{background:#fff;background:var(--bg-primary,#fff);border:1px solid #eee;border:1px solid var(--border-color,#eee);border-radius:12px;box-shadow:0 1px 6px #0000000a;padding:20px}.sdr-chart-card h3{color:#333;color:var(--text-primary,#333);font-size:1rem;margin:0 0 12px}.sdr-overall-feedback{background:#f8f7ff;border:1px solid #d4cef5;border-radius:12px;margin-bottom:24px;padding:20px}.sdr-overall-feedback h3{color:#6c5ce7;margin:0 0 10px}.sdr-overall-feedback p{color:#333;color:var(--text-primary,#333);line-height:1.7;margin:0}.sdr-section-title{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:1.3rem;margin:0 0 16px}.sdr-sections{display:flex;flex-direction:column;gap:10px;margin-bottom:30px}.sdr-section-card{background:#fff;background:var(--bg-primary,#fff);border:1px solid #eee;border:1px solid var(--border-color,#eee);border-radius:10px;overflow:hidden}.sdr-section-header{align-items:center;cursor:pointer;display:flex;gap:12px;padding:14px 18px;transition:background .15s}.sdr-section-header:hover{background:#fafafa;background:var(--bg-secondary,#fafafa)}.sdr-section-icon{font-size:1.2rem}.sdr-section-name{color:#333;color:var(--text-primary,#333);flex:1 1;font-size:.95rem;font-weight:600}.sdr-section-score-bar{background:#eee;background:var(--bg-secondary,#eee);border-radius:4px;height:8px;overflow:hidden;width:120px}.sdr-score-bar-fill{border-radius:4px;height:100%;transition:width .5s}.sdr-section-score{font-size:.95rem;font-weight:700;min-width:42px;text-align:right}.sdr-expand-icon{color:#aaa;color:var(--text-secondary,#aaa);font-size:.7rem}.sdr-section-body{border-top:1px solid #f0f0f0;border-top:1px solid var(--border-color,#f0f0f0);padding:0 18px 18px}.sdr-feedback{color:#444;color:var(--text-primary,#444);line-height:1.6;margin:14px 0}.sdr-chips-row{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.sdr-chips label{color:#888;color:var(--text-secondary,#888);font-weight:600}.sdr-chip,.sdr-chips label{font-size:.78rem;margin-right:6px}.sdr-chip{border-radius:12px;display:inline-block;font-weight:500;margin-bottom:4px;padding:3px 10px}.sdr-chip.green{background:#e8f5e9;color:#2e7d32}.sdr-chip.orange{background:#fff3e0;color:#e65100}.sdr-chip.red{background:#fce4ec;color:#c62828}.sdr-compare-btn{background:#f0edff;border:1px solid #d4cef5;border-radius:6px;color:#6c5ce7;cursor:pointer;font-size:.82rem;font-weight:500;margin-top:8px;padding:6px 14px}.sdr-comparison{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr;margin-top:12px}.sdr-compare-col{background:#f8f8f8;background:var(--bg-secondary,#f8f8f8);border-radius:8px;padding:12px}.sdr-compare-col.reference{background:#f0fff4;border:1px solid #a8e6cf}.sdr-compare-col h4{color:#666;color:var(--text-secondary,#666);font-size:.85rem;margin:0 0 8px}.sdr-compare-content{color:#333;color:var(--text-primary,#333);font-size:.78rem;margin:0;max-height:200px;overflow-y:auto;white-space:pre-wrap;word-break:break-word}.sdr-rich-content{line-height:1.6;white-space:normal}.sdr-rich-content p{margin:0 0 6px}.sdr-rich-content p:last-child{margin-bottom:0}.sdr-rich-content ol,.sdr-rich-content ul{margin:4px 0 6px 18px;padding:0}.sdr-rich-content li{margin-bottom:3px}.sdr-rich-content strong{font-weight:700}.sdr-rich-content code{border-radius:3px;font-family:monospace;padding:1px 4px}.sdr-rich-content code,.sdr-rich-content pre{background:#fff;background:var(--bg-primary,#fff);font-size:.88em}.sdr-rich-content pre{border-radius:5px;margin:6px 0;overflow-x:auto;padding:8px 12px}.sdr-rich-content pre code{background:none;padding:0}.sdr-rich-content blockquote{border-left:3px solid #6c5ce7;color:#666;color:var(--text-secondary,#666);margin:6px 0;padding:3px 10px}.sdr-rich-content img{border-radius:4px;max-width:100%}.sdr-followup-section{margin-top:10px}.sdr-followup-section h2{color:#333;color:var(--text-primary,#333);font-size:1.3rem;margin-bottom:16px}.sdr-followup-card{background:#fff;background:var(--bg-primary,#fff);border:1px solid #eee;border:1px solid var(--border-color,#eee);border-radius:10px;margin-bottom:12px;padding:16px}.sdr-followup-q{color:#333;color:var(--text-primary,#333);font-size:.95rem;line-height:1.5;margin-bottom:8px}.sdr-followup-a{background:#f8f8f8;background:var(--bg-secondary,#f8f8f8);border-radius:6px;color:#555;color:var(--text-secondary,#555);font-size:.9rem;margin-bottom:8px;padding:10px}.sdr-followup-score{color:#333;color:var(--text-primary,#333);font-size:.9rem}.sdr-followup-feedback{color:#666;color:var(--text-secondary,#666)}[data-theme=dark] .sdr-overall-feedback{background:#6c5ce71a;border-color:#6c5ce740}[data-theme=dark] .sdr-overall-feedback h3{color:#a29bfe}[data-theme=dark] .sdr-overall-feedback p{color:var(--text-primary)}[data-theme=dark] .sdr-compare-btn{background:#6c5ce71f;border-color:#6c5ce74d;color:#a29bfe}[data-theme=dark] .sdr-compare-col.reference{background:#27ae601a;border-color:#27ae604d}[data-theme=dark] .sdr-chip.green{background:#2e7d3226;color:#6bcf8e}[data-theme=dark] .sdr-chip.orange{background:#e6510026;color:#f0a04b}[data-theme=dark] .sdr-chip.red{background:#c6282826;color:#ef5350}[data-theme=dark] .sdr-penalty{color:#f0a04b}[data-theme=dark] .sdr-score-header{box-shadow:0 2px 12px #0003}.english-test-taking{background-color:var(--bg-primary);min-height:100vh}.english-test-loading{align-items:center;color:var(--text-secondary);display:flex;font-size:1.2em;justify-content:center;min-height:60vh}.test-header{background-color:var(--bg-secondary);border-bottom:1px solid var(--border-color);justify-content:space-between;padding:12px 24px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.test-header,.test-header-left{align-items:center;display:flex}.test-header-left{gap:16px}.test-title{font-size:1.1em;margin:0}.section-badge{background:var(--primary-gradient);border-radius:16px;color:#fff;font-size:.8em;font-weight:600;padding:4px 12px}.test-header-right{align-items:center;display:flex;gap:16px}.timer{color:var(--text-primary);font-family:monospace;font-size:1.4em;font-weight:700}.timer.warning{color:#ffc107}.timer.danger{animation:pulse 1s infinite;color:#dc3545}.violations-indicator{color:var(--text-secondary);font-size:.8em}.test-progress{border-bottom:1px solid var(--border-color);display:flex;overflow-x:auto}.progress-section{border-right:1px solid var(--border-color);flex:1 1;font-size:.8em;font-weight:500;padding:8px 16px;text-align:center;white-space:nowrap}.progress-section.current{background:var(--primary-gradient);color:#fff}.progress-section.completed{background-color:#28a74526;color:#28a745}.progress-section.upcoming{color:var(--text-secondary)}.test-body{display:grid;grid-template-columns:220px 1fr;min-height:calc(100vh - 120px)}.question-sidebar{background-color:var(--bg-secondary);border-right:1px solid var(--border-color);height:calc(100vh - 120px);overflow-y:auto;padding:16px;position:-webkit-sticky;position:sticky;top:60px}.question-sidebar h4{font-size:.95em;margin:0 0 12px}.question-nav-grid{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(5,1fr)}.q-nav-btn{background:var(--bg-primary);border:2px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;font-size:.85em;font-weight:600;height:36px;transition:all .15s ease;width:36px}.q-nav-btn.active{border-color:var(--primary-color);box-shadow:0 0 0 2px #ed033133}.q-nav-btn.answered{background-color:#28a745;border-color:#28a745;color:#fff}.q-nav-btn.flagged{background-color:#ffc10726;border-color:#ffc107}.q-nav-btn.answered.flagged{background-color:#ffc107;color:#000}.nav-legend{color:var(--text-secondary);display:flex;flex-direction:column;font-size:.75em;gap:6px;margin-top:16px}.legend-dot{border:2px solid var(--border-color);border-radius:3px;display:inline-block;height:10px;margin-right:6px;vertical-align:middle;width:10px}.legend-dot.answered{background-color:#28a745;border-color:#28a745}.legend-dot.flagged{background-color:#ffc1074d;border-color:#ffc107}.question-main{display:flex;flex-direction:column;padding:24px}.question-number-bar{align-items:center;color:var(--text-secondary);display:flex;font-size:.9em;justify-content:space-between;margin-bottom:20px}.question-points{color:var(--text-primary);font-weight:600}.flag-btn{background:#0000;border:1px solid var(--border-color);border-radius:6px;color:var(--text-secondary);cursor:pointer;font-size:.85em;padding:6px 14px;transition:all .2s ease}.flag-btn.active{background-color:#ffc10726;border-color:#ffc107;color:#ffc107}.question-content{flex:1 1;min-height:300px}.question-text{font-size:1.1em;line-height:1.6}.blank-sentence,.question-text{color:var(--text-primary);margin-bottom:20px}.blank-sentence{background:var(--bg-secondary);border-left:4px solid var(--primary-color);border-radius:8px;font-size:1.15em;font-style:italic;padding:16px}.mcq-options{display:flex;flex-direction:column;gap:10px}.mcq-options.compact{gap:8px}.mcq-option{align-items:center;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:10px;cursor:pointer;display:flex;gap:14px;padding:14px 18px;transition:all .2s ease}.mcq-option:hover{border-color:var(--primary-color);transform:translateX(4px)}.mcq-option.selected{background:linear-gradient(135deg,#ed033114,#87021c0a);border-color:var(--primary-color)}.option-letter{align-items:center;background:var(--bg-primary);border:2px solid var(--border-color);border-radius:50%;display:flex;flex-shrink:0;font-size:.85em;font-weight:700;height:32px;justify-content:center;width:32px}.mcq-option.selected .option-letter{background:var(--primary-gradient);border-color:#0000;color:#fff}.fill-blank-input,.short-answer-input,.subjective-textarea{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:8px;box-sizing:border-box;color:var(--text-primary);font-family:inherit;font-size:1em;padding:12px;resize:vertical;width:100%}.fill-blank-input:focus,.short-answer-input:focus,.subjective-textarea:focus{border-color:var(--primary-color);outline:none}.parajumble-sentences{display:flex;flex-direction:column;gap:8px}.parajumble-item{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;display:flex;gap:12px;padding:14px}.pj-number{color:var(--primary-color);font-size:1.1em;font-weight:700;min-width:24px}.pj-text{color:var(--text-primary);flex:1 1;line-height:1.5;margin:0}.pj-actions{display:flex;gap:4px}.pj-btn{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-secondary);cursor:pointer;font-size:.8em;padding:4px 10px}.pj-btn:hover:not(:disabled){border-color:var(--primary-color);color:var(--primary-color)}.pj-btn:disabled{cursor:not-allowed;opacity:.3}.error-detect-words{display:flex;flex-wrap:wrap;gap:8px}.error-word{border:2px solid var(--border-color);border-radius:6px;cursor:pointer;font-size:1em;padding:8px 12px;transition:all .2s ease}.error-word:hover{border-color:#dc3545}.error-word.selected{background-color:#dc35451a;border-color:#dc3545;color:#dc3545;font-weight:600}.vocab-word-display{margin-bottom:12px}.vocab-label{color:var(--text-secondary);font-size:.85em;margin-right:8px}.vocab-word{color:var(--text-primary);font-size:1.8em;font-weight:700}.vocab-context{background:var(--bg-secondary);border-left:3px solid var(--primary-color);border-radius:8px;color:var(--text-secondary);font-style:italic;margin-bottom:16px;padding:12px}.reading-layout{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr;min-height:500px}.reading-passage-panel{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;max-height:600px;overflow-y:auto}.passage-header{border-bottom:1px solid var(--border-color);padding:16px}.passage-header h3{margin:0 0 4px}.passage-meta{color:var(--text-secondary);font-size:.8em}.passage-content{color:var(--text-primary);line-height:1.8;padding:16px}.passage-source{color:var(--text-secondary);font-size:.8em;font-style:italic;padding:0 16px 16px}.reading-questions-panel{display:flex;flex-direction:column;gap:16px}.reading-questions-panel h3{margin:0}.reading-sub-question{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;padding:16px}.sub-q-text{color:var(--text-primary);font-weight:500;margin-bottom:10px}.essay-prompt-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;margin-bottom:16px;padding:20px}.essay-prompt-card h3{color:var(--text-secondary);font-size:1em;margin:0 0 8px}.essay-prompt-text{color:var(--text-primary);font-size:1.1em;line-height:1.6;margin-bottom:8px}.essay-instructions{color:var(--text-secondary);font-size:.9em}.essay-meta-row{color:var(--text-secondary);display:flex;font-size:.8em;gap:20px;margin-top:12px;text-transform:capitalize}.format-guide{margin-bottom:16px}.format-guide summary{color:var(--primary-color);cursor:pointer;font-weight:500;padding:8px 0}.format-guide pre{background:var(--bg-secondary);border-radius:8px;color:var(--text-secondary);font-size:.85em;padding:16px;white-space:pre-wrap}.essay-editor-wrapper{position:relative}.essay-editor-wrapper .ql-container{font-size:1em;min-height:300px}.essay-editor-wrapper .ql-editor{min-height:280px}.word-counter{font-size:.85em;font-weight:500;padding:6px 12px;text-align:right}.word-counter.under{color:#ffc107}.word-counter.over{color:#dc3545}.word-counter.ok{color:#28a745}.audio-player-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;margin-bottom:16px;padding:20px;text-align:center}.audio-player-card audio{max-width:500px;width:100%}.replay-info{color:var(--text-secondary);font-size:.85em;margin-top:8px}.replay-limit{color:#dc3545;font-weight:500}.listen-first-msg{color:var(--text-secondary);font-style:italic;padding:40px;text-align:center}.listening-questions-list{display:flex;flex-direction:column;gap:16px}.listening-sub-question{padding:16px}.listening-sub-question,.speaking-prompt-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px}.speaking-prompt-card{margin-bottom:20px;padding:20px}.speaking-type-badge{background:var(--primary-gradient);border-radius:6px;color:#fff;display:inline-block;font-size:.75em;font-weight:600;margin-bottom:10px;padding:4px 10px;text-transform:capitalize}.speaking-prompt{color:var(--text-primary);font-size:1.1em;line-height:1.6}.read-aloud-text{background:var(--bg-primary);border-left:4px solid var(--primary-color);font-size:1.05em;line-height:1.8;padding:16px}.read-aloud-text,.speaking-image{border-radius:8px;margin-top:12px}.speaking-image{max-height:300px;max-width:400px}.recording-controls{text-align:center}.waveform-canvas{background:var(--bg-secondary);border-radius:8px;height:80px;margin-bottom:12px;max-width:500px;width:100%}.speak-timer{color:var(--primary-color);font-family:monospace;font-size:1.2em;font-weight:700;margin-bottom:12px}.recording-buttons{display:flex;gap:12px;justify-content:center;margin-bottom:12px}.record-btn,.stop-btn{background:#dc3545!important}.recording-playback{align-items:center;display:flex;flex-direction:column;gap:10px}.recording-playback audio{max-width:400px;width:100%}.attempts-info{color:var(--text-secondary);font-size:.85em}.question-actions{align-items:center;border-top:1px solid var(--border-color);display:flex;justify-content:space-between;margin-top:auto;padding-top:20px}.action-right{display:flex;gap:10px}.english-test-taking .btn{border:none;border-radius:6px;cursor:pointer;font-size:.95em;font-weight:500;padding:10px 20px;transition:all .2s ease}.english-test-taking .btn-primary{background:var(--primary-gradient);color:#fff}.english-test-taking .btn-primary:hover:not(:disabled){opacity:.9}.english-test-taking .btn-secondary{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-primary)}.english-test-taking .btn-danger{background:#dc3545;color:#fff}.english-test-taking .btn:disabled{cursor:not-allowed;opacity:.4}.section-transition{align-items:center;display:flex;justify-content:center;min-height:80vh}.transition-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;max-width:500px;padding:60px;text-align:center}.transition-card h2{color:var(--text-secondary);font-size:1em;margin-bottom:8px}.transition-card h1{margin-bottom:16px}.transition-instructions{color:var(--text-secondary);font-style:italic;margin:16px 0}.review-panel{margin:40px auto;max-width:800px;padding:30px}.review-section{margin-bottom:24px}.review-section h3{margin-bottom:12px}.review-questions{display:flex;flex-wrap:wrap;gap:8px}.review-item{align-items:center;border:2px solid var(--border-color);border-radius:8px;cursor:pointer;display:flex;font-size:.85em;font-weight:600;height:40px;justify-content:center;position:relative;transition:all .2s ease;width:40px}.review-item.answered{background:#28a745;border-color:#28a745;color:#fff}.review-item.flagged{border-color:#ffc107}.review-item .flag-icon{align-items:center;background:#ffc107;border-radius:50%;color:#000;display:flex;font-size:.6em;height:14px;justify-content:center;position:absolute;right:-4px;top:-4px;width:14px}.review-actions{display:flex;gap:16px;justify-content:center;margin-top:30px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@media (max-width:960px){.test-body{grid-template-columns:1fr}.question-sidebar{border-bottom:1px solid var(--border-color);border-right:none;height:auto;position:static}.question-nav-grid{grid-template-columns:repeat(10,1fr)}.reading-layout{grid-template-columns:1fr}}.practice-mode-badge{background:linear-gradient(135deg,#7c4dff,#536dfe);border-radius:20px;color:#fff;font-size:.85em;font-weight:700;letter-spacing:.5px;padding:6px 16px}.practice-check-btn-wrap{margin-top:16px;text-align:center}.practice-check-btn{border-radius:10px;font-weight:600;padding:8px 28px}.practice-feedback-panel{animation:fadeIn .3s ease;border-radius:12px;margin-top:16px;padding:16px 20px}.practice-feedback-panel.correct{background:#e8f5e9;border:2px solid #4caf50}.practice-feedback-panel.incorrect{background:#ffebee;border:2px solid #f44336}[data-theme=dark] .practice-feedback-panel.correct{background:#4caf501f;border-color:#4caf5066}[data-theme=dark] .practice-feedback-panel.incorrect{background:#f443361f;border-color:#f4433666}.practice-feedback-icon{font-size:1.1em;font-weight:700;margin-bottom:6px}.practice-feedback-panel.correct .practice-feedback-icon{color:#2e7d32}.practice-feedback-panel.incorrect .practice-feedback-icon{color:#c62828}.practice-correct-answer{color:var(--text-primary);font-size:.92em;font-weight:600;margin-bottom:6px}.practice-explanation{border-top:1px solid var(--border-color);color:var(--text-secondary);font-size:.88em;line-height:1.6;padding-top:8px}.word-target-indicator{margin-top:12px}.word-target-label{color:var(--text-secondary);font-size:.85em;margin-bottom:6px}.word-target-bar-wrap{background:var(--border-color);border-radius:3px;height:6px;overflow:hidden}.word-target-bar{background:linear-gradient(90deg,#2196f3,#1976d2);border-radius:3px;height:100%;transition:width .4s ease}.question-note-area{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;margin-top:20px;padding:14px}.question-note-area label{color:var(--text-secondary);display:block;font-size:.85em;font-weight:600;margin-bottom:8px}.question-note-area textarea{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:.9em;min-height:60px;padding:10px 12px;resize:vertical;width:100%}@media (max-width:600px){.test-header{flex-direction:column;gap:8px;padding:8px 16px}.question-main{padding:16px}.mcq-option{padding:10px 14px}}.english-test-result{animation:fadeIn .4s ease;margin:0 auto;max-width:1200px;padding:24px}.english-test-result .page-title{color:var(--text-primary);font-size:1.75rem;font-weight:700;margin-bottom:8px}.english-test-result .result-summary-modern{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));margin-bottom:24px}.english-test-result .stat-card-modern{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:16px;padding:24px 20px;text-align:center;transition:all .3s ease}.english-test-result .stat-card-modern:hover{border-color:#007bff;border-color:var(--primary-color,#007bff);box-shadow:0 12px 24px #00000014;transform:translateY(-4px)}.english-test-result .stat-card-modern h3{color:var(--text-secondary);font-size:.8rem;font-weight:600;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.english-test-result .stat-card-modern .stat-number-modern{color:var(--text-primary);font-size:2rem;font-weight:800;margin:0}.english-test-result .stat-card-modern.score .stat-number-modern{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#007bff,#0056b3);-webkit-background-clip:text;background-clip:text}.english-test-result .stat-card-modern.percentage .stat-number-modern{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#6f42c1,#5a32a3);-webkit-background-clip:text;background-clip:text}.english-test-result .stat-card-modern.time .stat-number-modern{color:#28a745}.english-test-result .stat-card-modern.grade-card .stat-grade{font-size:2rem;font-weight:800;margin:0}.english-test-result .stat-grade-A,.english-test-result .stat-grade-Aplus{color:#28a745}.english-test-result .stat-grade-Bplus{color:#20c997}.english-test-result .stat-grade-B{color:#17a2b8}.english-test-result .stat-grade-C{color:#ffc107}.english-test-result .stat-grade-D{color:#fd7e14}.english-test-result .stat-grade-F{color:#dc3545}.english-test-result .peer-comparison-banner{align-items:center;background:#007bff0f;border:1px solid #007bff33;border-radius:12px;display:flex;font-size:.95rem;gap:10px;justify-content:center;margin-bottom:28px;padding:14px 20px}.english-test-result .peer-label{color:var(--text-secondary)}.english-test-result .peer-value{color:#007bff;font-weight:600}.english-test-result .section-title-modern{border-bottom:2px solid var(--border-color);color:var(--text-primary);font-size:1.25rem;font-weight:700;margin-bottom:16px;padding-bottom:10px}.english-test-result .questions-results-section{margin-top:32px}.english-test-result .questions-results-section .section-title-modern{margin-bottom:24px}.english-test-result .section-detail-block{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:14px;margin-bottom:32px;padding:20px}.english-test-result .section-detail-heading{border-bottom:1px solid var(--border-color);color:var(--text-primary);font-size:1.1rem;font-weight:600;margin:0 0 16px;padding-bottom:10px}.english-test-result .question-preview,.english-test-result .your-answer-preview{background:var(--bg-primary);border-radius:8px;color:var(--text-secondary);font-size:.9rem;line-height:1.5;margin:0 16px 12px;padding:10px 16px}.english-test-result .your-answer-preview{border-left:3px solid #007bff}.english-test-result .no-answers-msg{color:var(--text-secondary);margin:0;padding:16px}.english-test-result .result-submitted-message{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;margin-top:24px;padding:32px 24px;text-align:center}.english-test-result .result-submitted-message p{color:var(--text-primary);margin:0 0 12px}.english-test-result .result-submitted-message .btn{margin-top:16px}.english-test-result .answer-section-badge{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-secondary);font-size:.75rem;font-weight:600;margin-left:10px;padding:2px 8px;text-transform:uppercase}.english-test-result .all-answers-list{display:flex;flex-direction:column;gap:16px}.english-result-loading{align-items:center;color:var(--text-secondary);display:flex;font-size:1.1em;justify-content:center;min-height:60vh}.result-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.result-header h1{margin:0}.result-subtitle{color:var(--text-secondary);font-size:.9em;margin-top:4px}.result-overview{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr 1fr;margin-bottom:30px}.score-card-main{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;gap:32px;padding:32px}.score-card-main,.score-circle{align-items:center;display:flex}.score-circle{background:var(--primary-gradient);border-radius:50%;color:#fff;flex-direction:column;flex-shrink:0;height:120px;justify-content:center;width:120px}.score-value{font-size:2em;font-weight:800;line-height:1}.score-label{font-size:.8em;margin-top:2px;opacity:.9}.score-details{flex:1 1}.detail-row{border-bottom:1px solid var(--border-color);display:flex;font-size:.95em;justify-content:space-between;padding:8px 0}.detail-row:last-child{border-bottom:none}.detail-row span{color:var(--text-secondary)}.grade{color:var(--primary-color);font-size:1.2em}.status{text-transform:capitalize}.status.completed{color:#28a745}.radar-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;padding:24px}.radar-card h3{font-size:1.1em;margin:0 0 16px}.section-scores-wrap{margin-bottom:28px}.section-scores-wrap .section-title-modern{margin-bottom:14px}.section-scores-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.section-score-card{align-items:center;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:12px;cursor:pointer;display:flex;gap:12px;padding:16px;transition:all .2s ease}.section-score-card:hover{border-color:var(--primary-color);transform:translateY(-2px)}.section-score-card.active{border-color:var(--primary-color);box-shadow:0 0 0 3px #ed03311a}.ss-icon{align-items:center;background:var(--bg-primary);border-radius:10px;color:var(--text-secondary);display:flex;font-size:.85em;font-weight:700;height:40px;justify-content:center;width:40px}.ss-info{display:flex;flex:1 1;flex-direction:column}.ss-name{font-size:.9em;font-weight:600;text-transform:capitalize}.ss-score{color:var(--text-secondary);font-size:.8em}.ss-pct{font-size:1.1em;font-weight:700}.ss-pct.good{color:#28a745}.ss-pct.avg{color:#ffc107}.ss-pct.poor{color:#dc3545}.section-detail-panel{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;margin-bottom:24px;padding:24px}.section-detail-panel h2{margin:0 0 20px}.section-detail{display:flex;flex-direction:column;gap:16px}.answer-card{border-left:1px solid var(--border-color);border:1px solid var(--border-color);border-left-width:4px;border-radius:10px;overflow:hidden}.answer-card.correct{border-left-color:#28a745}.answer-card.partial{border-left-color:#ffc107}.answer-card.incorrect{border-left-color:#dc3545}.answer-header{background:var(--bg-primary);display:flex;font-weight:500;justify-content:space-between;padding:12px 16px}.answer-score{font-weight:700}.ai-feedback-panel{padding:16px}.ai-feedback-panel h4{color:var(--primary-color);font-size:1em;margin:0 0 12px}.english-test-result .writing-result-card .answer-header{margin-bottom:4px}.english-test-result .writing-only-feedback{margin-top:8px}.score-bar-row{align-items:center;display:flex;gap:10px;margin-bottom:8px}.score-bar-label{color:var(--text-secondary);font-size:.85em;text-align:right;width:100px}.score-bar-track{background:var(--bg-primary);border-radius:4px;flex:1 1;height:8px;overflow:hidden}.score-bar-fill{border-radius:4px;height:100%;transition:width .5s ease}.score-bar-value{font-size:.85em;font-weight:600;width:40px}.feedback-text{background:var(--bg-primary);border-radius:8px;margin-top:12px;padding:12px}.feedback-text h5{color:var(--text-primary);font-size:.9em;margin:0 0 6px}.feedback-text p{color:var(--text-secondary);font-size:.9em;line-height:1.6;margin:0}.suggestions-list{margin-top:12px}.suggestions-list h5{font-size:.9em;margin:0 0 8px}.suggestions-list ul{margin:0;padding-left:20px}.suggestions-list li{line-height:1.6;margin-bottom:4px}.suggestions-list li,.word-count-result{color:var(--text-secondary);font-size:.85em}.word-count-result{margin-top:8px}.no-feedback{color:var(--text-secondary);font-style:italic;padding:16px}.playback-section{margin-bottom:12px}.playback-section audio{max-width:400px;width:100%}.transcription-box{background:var(--bg-primary);border-left:3px solid var(--primary-color);border-radius:8px;margin-bottom:12px;padding:12px}.transcription-box h5{font-size:.85em;margin:0 0 4px}.transcription-box p{color:var(--text-primary);font-size:.9em;line-height:1.6;margin:0}.speaking-metrics{background:var(--bg-primary);border-radius:8px;color:var(--text-secondary);display:flex;flex-wrap:wrap;font-size:.8em;gap:16px;margin-top:12px;padding:12px}.sub-answers-list{display:flex;flex-direction:column;gap:6px;padding:12px 16px}.sub-answer{border-radius:6px;display:flex;font-size:.85em;justify-content:space-between;padding:6px 10px}.sub-answer.correct{background:#28a7451a;color:#28a745}.sub-answer.incorrect{background:#dc35451a;color:#dc3545}.english-test-result .btn{border:none;border-radius:6px;cursor:pointer;font-size:.95em;font-weight:500;padding:10px 20px}.english-test-result .btn-secondary{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-primary)}.plagiarism-info{border-radius:10px;font-size:.9em;margin-top:14px;padding:12px 16px}.plagiarism-info.low,.plagiarism-info.none{background:#4caf5014;border:1px solid #4caf5033}.plagiarism-info.medium{background:#ffc10714;border:1px solid #ffc10733}.plagiarism-info.high{background:#f4433614;border:1px solid #f4433633}.plagiarism-info h5{font-size:.95em;margin:0 0 6px}.percentile-row{margin-top:8px}.percentile-badge{color:#1976d2;font-size:.95em}.sample-answer-panel{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;margin-top:16px;padding:14px}.sample-answer-panel h5{font-size:.95em;margin:0 0 8px}.sample-answer-text{color:var(--text-secondary);font-size:.9em;line-height:1.6;white-space:pre-wrap}.answer-note{background:#e3f2fd;border-left:4px solid #2196f3;border-radius:8px;font-size:.9em;margin-bottom:12px;padding:10px 14px}[data-theme=dark] .answer-note{background:#2196f31f}.sub-answer-reference{color:var(--text-secondary);font-size:.85em;font-style:italic;margin-top:4px}.sub-answer-feedback{background:var(--bg-primary);border-left:3px solid #007bff;border-radius:6px;color:var(--text-primary);font-size:.85em;margin-top:6px;padding:8px 10px}.english-test-result .ai-feedback-inline{margin-top:12px}.english-test-result .ai-feedback-inline h5{font-size:.95em;margin:0 0 6px}.english-test-result .suggestions-inline{margin:8px 0 0;padding-left:20px}.english-test-result .suggestions-inline li{color:var(--text-secondary);font-size:.9em;margin-bottom:4px}.wrong-answer-review{background:#fff3e0;border:1px solid #ffcc80;border-radius:10px;margin-top:14px;padding:14px}.wrong-answer-review h5{font-size:.95em;margin:0 0 8px}.wrong-answer-review p{font-size:.9em;line-height:1.5;margin:6px 0 0}[data-theme=dark] .wrong-answer-review{background:#ff98001a;border-color:#ff98004d}@media (max-width:768px){.english-test-result .result-summary-modern,.section-scores-grid{grid-template-columns:1fr 1fr}}.App{background-color:var(--bg-primary);color:var(--text-primary);min-height:100vh;overflow-x:hidden;position:relative}.App:before{animation:pulse 8s ease-in-out infinite;background:radial-gradient(circle,#00000003 0,#0000 70%);content:"";height:200%;pointer-events:none;position:fixed;right:-50%;top:-50%;width:200%;z-index:0}.container{margin:0 auto;max-width:1200px;padding:20px}.btn{border:none;border-radius:5px;cursor:pointer;display:inline-block;font-size:16px;font-weight:500;padding:10px 20px;text-decoration:none;transition:all .3s ease}.btn-primary{background:var(--primary-gradient);color:#fff}.btn-primary:hover{box-shadow:0 6px 12px #00000026;opacity:.95;transform:translateY(-3px) scale(1.02)}.btn-primary:active{transform:translateY(-1px) scale(.98)}.btn-secondary{background-color:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-primary)}.btn-secondary:hover{background-color:var(--border-color);box-shadow:0 4px 8px var(--shadow);transform:translateY(-2px)}.btn-danger{background-color:#dc3545;color:#fff}.btn-danger:hover{background:linear-gradient(135deg,#c82333,#a71e2a);box-shadow:0 6px 12px #dc35454d;transform:translateY(-3px)}.card{animation:fadeInUp .5s ease;background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 2px 8px var(--shadow);margin-bottom:24px;overflow:hidden;padding:24px;position:relative;transition:all .3s ease}.card:hover{box-shadow:0 8px 16px #0000001a;transform:translateY(-4px)}.form-group{margin-bottom:20px}.form-group label{color:var(--text-primary);display:block;font-weight:500;margin-bottom:5px}.form-group input,.form-group select,.form-group textarea{background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:5px;color:var(--text-primary);font-size:16px;padding:10px;transition:border-color .3s ease;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--border-color);box-shadow:0 0 0 3px #0000000d;outline:none;transform:translateY(-1px)}.form-group textarea{min-height:100px;resize:vertical}.table{border-collapse:collapse;margin-top:20px;width:100%}.table td,.table th{border-bottom:1px solid var(--border-color);padding:12px;text-align:left}.table th{background-color:var(--bg-secondary);color:var(--text-primary);font-size:.85em;font-weight:600;letter-spacing:.5px;position:-webkit-sticky;position:sticky;text-transform:uppercase;top:0;z-index:10}.table tbody tr{transition:all .2s ease}.table tbody tr:hover{background-color:var(--bg-secondary);box-shadow:0 2px 4px #0000001a;transform:scale(1.01)}.loading{animation:fadeIn .5s ease;color:var(--text-secondary);padding:40px;text-align:center}.loading:after{animation:pulse 1.5s infinite;content:"..."}.error{background:linear-gradient(135deg,#fee,#fdd);border:2px solid #fcc;border-radius:10px;box-shadow:0 4px 8px #dc35451a;color:#c33}.error,.success{align-items:center;animation:fadeInDown .5s ease;display:flex;gap:10px;margin-bottom:20px;padding:16px 20px}.success{background:linear-gradient(135deg,#efe,#dfd);border:2px solid #cfc;border-radius:10px;box-shadow:0 4px 8px #28a7451a;color:#3c3}.gradient-text{-webkit-text-fill-color:#0000;background:var(--primary-gradient);-webkit-background-clip:text;background-clip:text}
/*# sourceMappingURL=main.1300bb80.css.map*/