@import "https://fonts.googleapis.com/css2?family=Google+Sans:wght@400;500;700&family=Inter:wght@400;500;600;700&display=swap";:root{--primary:0 84% 60%;--primary-foreground:0 0% 100%;--background:0 0% 100%;--foreground:0 0% 10%;--card:0 0% 100%;--card-foreground:0 0% 10%;--popover:0 0% 100%;--popover-foreground:0 0% 10%;--secondary:0 0% 96%;--secondary-foreground:0 0% 10%;--muted:0 0% 96%;--muted-foreground:0 0% 45%;--accent:0 0% 96%;--accent-foreground:0 0% 10%;--success:142 71% 45%;--success-foreground:0 0% 100%;--warning:38 92% 50%;--warning-foreground:0 0% 100%;--destructive:0 84% 60%;--destructive-foreground:0 0% 100%;--border:0 0% 90%;--input:0 0% 90%;--ring:0 84% 60%;--radius:1.5rem;--radius-lg:var(--radius);--radius-md:calc(var(--radius) - 2px);--radius-sm:calc(var(--radius) - 4px);--radius-pill:9999px;--font-primary:"Inter", "Google Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--transition:.15s ease-in-out;--shadow-1:0 2px 8px -2px #0000000d, 0 4px 12px -2px #0000000d;--shadow-2:0 4px 20px -4px #00000014, 0 8px 30px -4px #00000014;--shadow-3:0 12px 40px -6px #0000001f, 0 16px 50px -6px #0000001f;--blue-50:hsl(var(--primary) / .06);--blue-100:hsl(var(--primary) / .12);--blue-200:hsl(var(--primary) / .25);--blue-300:hsl(var(--primary) / .5);--blue-400:hsl(var(--primary) / .7);--blue-500:hsl(var(--primary) / .85);--blue-600:hsl(var(--primary));--blue-700:hsl(var(--primary) / .9);--blue-800:hsl(var(--primary) / .95);--blue-900:hsl(var(--primary));--grey-50:hsl(var(--background));--grey-100:hsl(var(--muted));--grey-200:hsl(var(--border));--grey-300:hsl(var(--border) / 1.25);--grey-400:hsl(var(--muted-foreground) / .6);--grey-500:hsl(var(--muted-foreground) / .8);--grey-600:hsl(var(--muted-foreground));--grey-700:hsl(var(--foreground) / .7);--grey-800:hsl(var(--foreground) / .85);--grey-900:hsl(var(--foreground));--green-500:hsl(var(--success));--green-600:hsl(var(--success) / .9);--red-500:hsl(var(--destructive));--red-600:hsl(var(--destructive) / .9);--yellow-500:hsl(var(--warning));--orange-500:hsl(var(--warning) / .9)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--background:0 0% 5%;--foreground:0 0% 98%;--card:0 0% 8%;--card-foreground:0 0% 98%;--popover:0 0% 8%;--popover-foreground:0 0% 98%;--secondary:0 0% 12%;--secondary-foreground:0 0% 98%;--muted:0 0% 12%;--muted-foreground:0 0% 60%;--accent:0 0% 12%;--accent-foreground:0 0% 98%;--border:0 0% 15%;--input:0 0% 15%;--shadow-1:0 2px 8px -2px #0006, 0 4px 12px -2px #0006;--shadow-2:0 4px 20px -4px #00000080, 0 8px 30px -4px #00000080;--shadow-3:0 12px 40px -6px #0009, 0 16px 50px -6px #0009}}:root[data-theme=dark]{--background:0 0% 5%;--foreground:0 0% 98%;--card:0 0% 8%;--card-foreground:0 0% 98%;--popover:0 0% 8%;--popover-foreground:0 0% 98%;--secondary:0 0% 12%;--secondary-foreground:0 0% 98%;--muted:0 0% 12%;--muted-foreground:0 0% 60%;--accent:0 0% 12%;--accent-foreground:0 0% 98%;--border:0 0% 15%;--input:0 0% 15%;--shadow-1:0 2px 8px -2px #0006, 0 4px 12px -2px #0006;--shadow-2:0 4px 20px -4px #00000080, 0 8px 30px -4px #00000080;--shadow-3:0 12px 40px -6px #0009, 0 16px 50px -6px #0009}:root[data-theme=light]{--primary:0 84% 60%;--primary-foreground:0 0% 100%;--background:0 0% 100%;--foreground:0 0% 10%;--card:0 0% 100%;--card-foreground:0 0% 10%;--popover:0 0% 100%;--popover-foreground:0 0% 10%;--secondary:0 0% 96%;--secondary-foreground:0 0% 10%;--muted:0 0% 96%;--muted-foreground:0 0% 45%;--accent:0 0% 96%;--accent-foreground:0 0% 10%;--success:142 71% 45%;--success-foreground:0 0% 100%;--warning:38 92% 50%;--warning-foreground:0 0% 100%;--destructive:0 84% 60%;--destructive-foreground:0 0% 100%;--border:0 0% 90%;--input:0 0% 90%;--ring:0 84% 60%;--shadow-1:0 2px 8px -2px #0000000d, 0 4px 12px -2px #0000000d;--shadow-2:0 4px 20px -4px #00000014, 0 8px 30px -4px #00000014;--shadow-3:0 12px 40px -6px #0000001f, 0 16px 50px -6px #0000001f}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{font-family:var(--font-primary);background-color:var(--grey-50);color:var(--grey-900);min-height:100vh;line-height:1.5}.btn-primary{background:hsl(var(--primary));color:hsl(var(--primary-foreground));border-radius:var(--radius-md);font-family:var(--font-primary);letter-spacing:.25px;cursor:pointer;transition:all var(--transition);min-height:40px;box-shadow:var(--shadow-1);border:none;justify-content:center;align-items:center;gap:8px;padding:10px 24px;font-size:14px;font-weight:600;display:inline-flex}.btn-primary:hover:not(:disabled){opacity:.9;box-shadow:var(--shadow-2);transform:translateY(-1px)}.btn-primary:active:not(:disabled){box-shadow:var(--shadow-1);transform:translateY(1px)}.btn-primary:disabled{background:hsl(var(--muted));color:hsl(var(--muted-foreground));box-shadow:none;cursor:not-allowed}.btn-outline{background:hsl(var(--card));color:hsl(var(--foreground));border:1.5px solid hsl(var(--border));border-radius:var(--radius-md);font-family:var(--font-primary);letter-spacing:.25px;cursor:pointer;transition:all var(--transition);justify-content:center;align-items:center;gap:8px;min-height:40px;padding:10px 24px;font-size:14px;font-weight:600;display:inline-flex}.btn-outline:hover{background:hsl(var(--accent));border-color:hsl(var(--border) / 1.5);color:hsl(var(--accent-foreground))}.btn-outline:active{transform:translateY(.5px)}.btn-icon{width:40px;height:40px;color:hsl(var(--muted-foreground));cursor:pointer;transition:background var(--transition), color var(--transition);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.btn-icon:hover{background:hsl(var(--accent));color:hsl(var(--foreground))}.btn-loading{align-items:center;gap:8px;display:inline-flex}.spinner{border:2.5px solid hsl(var(--primary-foreground) / .3);border-top-color:hsl(var(--primary-foreground));border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin}.spinner.large{border-color:hsl(var(--border));border-top-color:hsl(var(--primary));width:36px;height:36px}@keyframes spin{to{transform:rotate(360deg)}}.login-container{background:linear-gradient(135deg, hsl(var(--primary) / .04) 0%, hsl(var(--background)) 50%, hsl(var(--primary) / .04) 100%);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex;position:relative}.login-theme-toggle{z-index:10;position:absolute;top:24px;right:24px}.login-card{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius-lg);width:100%;max-width:420px;box-shadow:var(--shadow-2);padding:48px 40px;animation:.4s cubic-bezier(.16,1,.3,1) fadeUp}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.login-header{text-align:center;margin-bottom:32px}.login-logo{margin-bottom:20px;display:inline-flex}.login-title{letter-spacing:-.5px;color:hsl(var(--foreground));margin-bottom:8px;font-size:24px;font-weight:700}.login-subtitle{color:hsl(var(--muted-foreground));font-size:14px}.login-form{flex-direction:column;gap:20px;display:flex}.input-group{flex-direction:column;gap:6px;display:flex}.input-group label{color:hsl(var(--foreground) / .85);padding-left:4px;font-size:13px;font-weight:600}.input-group input{border:1.5px solid hsl(var(--border));border-radius:var(--radius-sm);font-family:var(--font-primary);color:hsl(var(--foreground));transition:all var(--transition);background:hsl(var(--background));outline:none;padding:12px 20px;font-size:14px}.input-group input:focus{border-color:hsl(var(--primary));background:hsl(var(--background));box-shadow:0 0 0 3px hsl(var(--primary) / .15)}.input-group input::placeholder{color:hsl(var(--muted-foreground) / .8)}.login-btn{margin-top:4px;padding:12px 24px;font-size:15px}.login-error{background:hsl(var(--destructive) / .1);color:hsl(var(--destructive));border:1px solid hsl(var(--destructive) / .2);border-radius:var(--radius-sm);align-items:center;gap:8px;padding:12px 16px;font-size:13px;font-weight:500;animation:.3s ease-out shake;display:flex}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.dashboard-container{background:hsl(var(--background));min-height:100vh}.dashboard-header{background:hsl(var(--card) / .8);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid hsl(var(--border));z-index:100;justify-content:space-between;align-items:center;padding:12px 32px;display:flex;position:sticky;top:0;box-shadow:0 1px 3px #00000005}.header-left{align-items:center;gap:12px;display:flex}.header-title{color:var(--grey-900);font-size:18px;font-weight:700}.header-right{align-items:center;gap:16px;display:flex}.user-info{align-items:center;gap:10px;display:flex}.user-avatar{background:var(--blue-600);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:14px;font-weight:700;display:flex}.user-name{color:var(--grey-800);font-size:14px;font-weight:500}.dashboard-main{max-width:1200px;margin:0 auto;padding:32px}.dashboard-title-row{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.dashboard-section-title{color:var(--grey-900);font-size:22px;font-weight:700}.loading-state{color:var(--grey-600);flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:64px 24px;display:flex}.empty-state{color:var(--grey-500);flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:80px 24px;font-size:15px;display:flex}.table-wrapper{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius-lg);box-shadow:var(--shadow-1);animation:.3s ease-out fadeUp;overflow:hidden}.jobs-table{border-collapse:collapse;width:100%}.jobs-table thead{background:hsl(var(--secondary));border-bottom:1px solid hsl(var(--border))}.jobs-table th{text-align:left;color:hsl(var(--muted-foreground));text-transform:uppercase;letter-spacing:.5px;padding:14px 20px;font-size:12px;font-weight:700}.jobs-table tbody tr{border-bottom:1px solid hsl(var(--border));transition:background var(--transition)}.jobs-table tbody tr:last-child{border-bottom:none}.jobs-table tbody tr:hover{background:hsl(var(--accent) / .5)}.jobs-table td{color:hsl(var(--foreground));vertical-align:middle;padding:16px 20px;font-size:14px}.job-title{color:hsl(var(--foreground));font-weight:600}.level-badge{background:hsl(var(--accent));color:hsl(var(--accent-foreground));border-radius:var(--radius-sm);padding:4px 12px;font-size:12px;font-weight:600;display:inline-flex}.status-tag{border-radius:var(--radius-sm);letter-spacing:.3px;align-items:center;padding:5px 14px;font-size:12px;font-weight:600;display:inline-flex}.tag-scheduled{background:hsl(var(--primary) / .08);color:hsl(var(--primary));border:1px solid hsl(var(--primary) / .15)}.tag-active{background:hsl(var(--success) / .08);color:hsl(var(--success));border:1px solid hsl(var(--success) / .2);animation:2s ease-in-out infinite pulse-soft}@keyframes pulse-soft{0%,to{opacity:1}50%{opacity:.75}}.tag-expired{background:hsl(var(--destructive) / .08);color:hsl(var(--destructive));border:1px solid hsl(var(--destructive) / .2)}.tag-completed{background:hsl(var(--muted));color:hsl(var(--muted-foreground));border:1px solid hsl(var(--border))}.tag-not-scheduled{background:hsl(var(--warning) / .08);color:hsl(var(--warning));border:1px solid hsl(var(--warning) / .2)}.schedule-info{color:hsl(var(--foreground) / .8);font-size:13px}.no-schedule{color:hsl(var(--muted-foreground) / .7)}.action-buttons{flex-wrap:wrap;gap:8px;display:flex}.btn-action{border-radius:var(--radius-sm);font-family:var(--font-primary);cursor:pointer;transition:all var(--transition);letter-spacing:.2px;border:none;justify-content:center;align-items:center;padding:6px 16px;font-size:12px;font-weight:600;display:inline-flex}.btn-schedule{background:hsl(var(--primary));color:hsl(var(--primary-foreground))}.btn-schedule:hover{opacity:.9;box-shadow:var(--shadow-1);transform:translateY(-.5px)}.btn-reschedule{background:hsl(var(--card));color:hsl(var(--primary));border:1.5px solid hsl(var(--primary) / .3)}.btn-reschedule:hover{background:hsl(var(--primary) / .05);border-color:hsl(var(--primary) / .6)}.btn-attend{background:hsl(var(--success));color:hsl(var(--success-foreground))}.btn-attend:hover:not(:disabled){opacity:.9;box-shadow:var(--shadow-1);transform:translateY(-.5px)}.btn-attend:disabled{background:hsl(var(--muted));color:hsl(var(--muted-foreground));cursor:not-allowed}.btn-results{background:hsl(var(--card));color:hsl(var(--foreground));border:1.5px solid hsl(var(--border))}.btn-results:hover:not(:disabled){background:hsl(var(--accent));border-color:hsl(var(--border) / 1.5)}.btn-results:disabled{background:hsl(var(--muted) / .5);color:hsl(var(--muted-foreground) / .5);border-color:hsl(var(--border) / .5);cursor:not-allowed}.dialog-overlay{-webkit-backdrop-filter:blur(8px);z-index:1000;background:#0009;justify-content:center;align-items:center;padding:24px;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.dialog-content{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius-lg);box-shadow:var(--shadow-3);flex-direction:column;width:100%;max-height:90vh;animation:.3s cubic-bezier(.16,1,.3,1) dialogSlide;display:flex}@keyframes dialogSlide{0%{opacity:0;transform:translateY(24px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.schedule-dialog{max-width:640px}.results-dialog{max-width:720px}.dialog-header{border-bottom:1px solid hsl(var(--border));justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.dialog-header h2{letter-spacing:-.5px;color:hsl(var(--foreground));font-size:18px;font-weight:700}.dialog-close{width:36px;height:36px;color:hsl(var(--muted-foreground));cursor:pointer;transition:background var(--transition), color var(--transition);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex}.dialog-close:hover{background:hsl(var(--accent));color:hsl(var(--foreground))}.dialog-body{flex:1;padding:24px;overflow-y:auto}.dialog-footer{border-top:1px solid hsl(var(--border));justify-content:flex-end;gap:12px;padding:16px 24px;display:flex}.schedule-job-info{background:hsl(var(--primary) / .06);border:1.5px solid hsl(var(--primary) / .12);border-radius:var(--radius-sm);align-items:center;gap:12px;margin-bottom:24px;padding:12px 16px;display:flex}.schedule-job-name{color:hsl(var(--foreground));font-weight:600}.schedule-job-meta{color:hsl(var(--muted-foreground));font-size:13px}.schedule-section{margin-bottom:24px}.schedule-section h3{color:hsl(var(--foreground));text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px;font-size:14px;font-weight:700}.date-grid{scrollbar-width:thin;gap:8px;padding-bottom:8px;display:flex;overflow-x:auto}.date-pill{border:1.5px solid hsl(var(--border));border-radius:var(--radius-md);background:hsl(var(--card));color:hsl(var(--foreground));cursor:pointer;transition:all var(--transition);font-family:var(--font-primary);flex-direction:column;flex-shrink:0;align-items:center;gap:2px;min-width:68px;padding:10px 14px;display:flex}.date-pill:hover{border-color:hsl(var(--primary) / .5);background:hsl(var(--primary) / .05)}.date-pill.selected{border-color:hsl(var(--primary));background:hsl(var(--primary));color:hsl(var(--primary-foreground))}.date-pill.selected .date-day,.date-pill.selected .date-month{color:hsl(var(--primary-foreground) / .85)}.date-day{color:hsl(var(--muted-foreground));text-transform:uppercase;font-size:11px;font-weight:600}.date-num{font-size:18px;font-weight:700}.date-month{color:hsl(var(--muted-foreground));font-size:11px}.time-grid{grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px;max-height:240px;padding:4px;display:grid;overflow-y:auto}.time-pill{border:1.5px solid hsl(var(--border));border-radius:var(--radius-pill);background:hsl(var(--card));color:hsl(var(--foreground));font-family:var(--font-primary);cursor:pointer;transition:all var(--transition);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-height:48px;padding:8px 4px;display:flex}.time-text{color:hsl(var(--foreground));font-size:13px;font-weight:600}.capacity-text{color:hsl(var(--primary) / .8);font-size:10px;font-weight:500}.time-pill:hover:not(:disabled){border-color:hsl(var(--primary) / .5);background:hsl(var(--primary) / .05)}.time-pill.selected{border-color:hsl(var(--primary));background:hsl(var(--primary))}.time-pill.selected .time-text,.time-pill.selected .capacity-text{color:hsl(var(--primary-foreground))}.time-pill:disabled{background:hsl(var(--muted) / .5);border-color:hsl(var(--border) / .5);cursor:not-allowed}.time-pill:disabled .time-text,.time-pill:disabled .capacity-text{color:hsl(var(--muted-foreground) / .5)}.time-pill.full{background:hsl(var(--destructive) / .08);border-color:hsl(var(--destructive) / .2)}.time-pill.full .time-text,.time-pill.full .capacity-text{color:hsl(var(--destructive))}.schedule-summary{background:hsl(var(--primary) / .08);border:1.5px solid hsl(var(--primary) / .15);border-radius:var(--radius-sm);color:hsl(var(--primary));align-items:center;gap:8px;padding:12px 16px;font-size:14px;font-weight:500;display:flex}.results-content{flex-direction:column;gap:24px;display:flex}.results-score-card{background:hsl(var(--secondary));border:1px solid hsl(var(--border));border-radius:var(--radius-md);flex-direction:column;align-items:center;padding:24px;display:flex}.score-circle{width:120px;height:120px;margin-bottom:8px;position:relative}.score-circle svg{width:100%;height:100%}.score-value{color:hsl(var(--foreground));justify-content:center;align-items:center;font-size:32px;font-weight:700;display:flex;position:absolute;inset:0}.score-label{color:hsl(var(--foreground) / .9);font-size:14px;font-weight:600}.score-sublabel{color:hsl(var(--muted-foreground));margin-top:2px;font-size:12px}.results-section{border-top:1px solid hsl(var(--border));padding-top:20px}.results-section h3{letter-spacing:-.5px;color:hsl(var(--foreground));margin-bottom:12px;font-size:16px;font-weight:700}.decision-badge{border-radius:var(--radius-sm);margin-bottom:12px;padding:6px 16px;font-size:13px;font-weight:600;display:inline-flex}.decision-selected{background:hsl(var(--success) / .08);color:hsl(var(--success));border:1px solid hsl(var(--success) / .2)}.decision-next-round{background:hsl(var(--primary) / .08);color:hsl(var(--primary));border:1px solid hsl(var(--primary) / .15)}.decision-not-selected{background:hsl(var(--destructive) / .08);color:hsl(var(--destructive));border:1px solid hsl(var(--destructive) / .2)}.exec-summary{color:hsl(var(--foreground) / .85);margin-bottom:16px;font-size:14px;line-height:1.6}.exec-list{margin-bottom:16px}.exec-list h4{color:hsl(var(--foreground) / .85);text-transform:uppercase;letter-spacing:.3px;margin-bottom:8px;font-size:13px;font-weight:700}.exec-list ul{flex-direction:column;gap:6px;list-style:none;display:flex}.exec-list li{color:hsl(var(--foreground) / .8);align-items:flex-start;gap:8px;font-size:14px;line-height:1.5;display:flex}.exec-list li svg{flex-shrink:0;margin-top:3px}.exec-recommendation{background:hsl(var(--primary) / .06);border:1.5px solid hsl(var(--primary) / .12);border-radius:var(--radius-sm);padding:12px 16px}.exec-recommendation h4{color:hsl(var(--primary));margin-bottom:6px;font-size:13px;font-weight:700}.exec-recommendation p{color:hsl(var(--foreground) / .85);font-size:14px;line-height:1.5}.criteria-list{flex-direction:column;gap:14px;display:flex}.criteria-item{border:1px solid hsl(var(--border));background:hsl(var(--card));border-radius:var(--radius-sm);padding:14px 16px}.criteria-header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.criteria-text{color:hsl(var(--foreground));font-size:14px;font-weight:600}.criteria-category{background:hsl(var(--accent));border-radius:var(--radius-sm);color:hsl(var(--accent-foreground));text-transform:uppercase;flex-shrink:0;padding:2px 10px;font-size:11px;font-weight:600;display:inline-flex}.criteria-score{align-items:center;gap:10px;display:flex}.score-bar-bg{background:hsl(var(--border) / .8);border-radius:3px;flex:1;height:6px;overflow:hidden}.score-bar-fill{border-radius:3px;height:100%;transition:width .6s ease-out}.score-num{color:hsl(var(--foreground) / .85);text-align:right;flex-shrink:0;min-width:48px;font-size:13px;font-weight:700}.criteria-justification{color:hsl(var(--muted-foreground));margin-top:6px;font-size:13px;line-height:1.5}@media (width<=768px){.dashboard-header{padding:12px 16px}.dashboard-main{padding:16px}.user-name{display:none}.jobs-table th,.jobs-table td{padding:12px}.login-card{padding:32px 24px}.action-buttons{flex-direction:column}.date-grid{gap:6px}.date-pill{min-width:56px;padding:8px 10px}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:hsl(var(--border));border-radius:3px}::-webkit-scrollbar-thumb:hover{background:hsl(var(--muted-foreground) / .5)}.prof-table th,.prof-table td{text-align:center}.prof-table th:nth-child(2),.prof-table td:nth-child(2),.prof-table th:nth-child(3),.prof-table td:nth-child(3){text-align:left}.student-email{color:hsl(var(--muted-foreground));word-break:break-all;font-size:13px}.marks-display{color:hsl(var(--primary));font-size:14px;font-weight:700}.marks-display.final{color:hsl(var(--success))}.report-page{background:hsl(var(--background));min-height:100vh}.report-header{background:hsl(var(--card) / .8);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid hsl(var(--border));z-index:100;justify-content:space-between;align-items:center;padding:12px 32px;display:flex;position:sticky;top:0;box-shadow:0 1px 3px #00000005}.report-position-badge{background:hsl(var(--primary) / .08);color:hsl(var(--primary));border:1px solid hsl(var(--primary) / .15);border-radius:var(--radius-sm);padding:6px 16px;font-size:13px;font-weight:600;display:inline-flex}.report-top-section{grid-template-columns:2fr 1fr;gap:24px;max-width:1200px;margin:0 auto;padding:32px;display:grid}.report-student-card{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius-lg);box-shadow:var(--shadow-1);padding:32px;animation:.3s ease-out fadeUp}.student-details-header{border-bottom:1px solid hsl(var(--border));align-items:center;gap:20px;margin-bottom:28px;padding-bottom:20px;display:flex}.student-avatar-large{background:linear-gradient(135deg, hsl(var(--primary)), hsl(var(--primary) / .7));width:64px;height:64px;color:hsl(var(--primary-foreground));border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:26px;font-weight:700;display:flex}.student-info-text h2{letter-spacing:-.5px;color:hsl(var(--foreground));margin-bottom:4px;font-size:22px;font-weight:700}.student-info-text p{color:hsl(var(--muted-foreground));margin-bottom:8px;font-size:14px}.position-tag{background:hsl(var(--primary) / .08);color:hsl(var(--primary));border:1px solid hsl(var(--primary) / .15);border-radius:var(--radius-sm);padding:4px 12px;font-size:12px;font-weight:600;display:inline-flex}.marks-section{grid-template-columns:1fr 1fr;gap:20px;display:grid}.marks-card{border-radius:var(--radius-md);text-align:center;padding:20px}.ai-marks-card{background:linear-gradient(135deg, hsl(var(--primary) / .04) 0%, hsl(var(--primary) / .1) 100%);border:1.5px solid hsl(var(--primary) / .15)}.final-marks-card{background:linear-gradient(135deg, hsl(var(--success) / .04) 0%, hsl(var(--success) / .1) 100%);border:1.5px solid hsl(var(--success) / .2)}.marks-card-label{color:hsl(var(--muted-foreground));text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;font-size:12px;font-weight:700}.marks-card-value{color:hsl(var(--primary));font-size:36px;font-weight:800}.final-marks-card .marks-card-value{color:hsl(var(--success))}.marks-total{color:hsl(var(--muted-foreground) / .7);font-size:18px;font-weight:600}.marks-input-group{justify-content:center;align-items:center;gap:4px;margin-bottom:12px;display:flex}.marks-input{border:1.5px solid hsl(var(--border));border-radius:var(--radius-sm);width:80px;font-family:var(--font-primary);color:hsl(var(--success));text-align:center;background:hsl(var(--background));transition:all var(--transition);outline:none;padding:10px 12px;font-size:24px;font-weight:700}.marks-input:focus{border-color:hsl(var(--success));box-shadow:0 0 0 3px hsl(var(--success) / .15)}.marks-input::placeholder{color:hsl(var(--muted-foreground) / .5)}.marks-total-input{color:hsl(var(--muted-foreground) / .7);font-size:18px;font-weight:600}.btn-save-marks{background:hsl(var(--success));color:hsl(var(--success-foreground));border-radius:var(--radius-sm);font-family:var(--font-primary);cursor:pointer;transition:all var(--transition);border:none;justify-content:center;align-items:center;gap:6px;padding:8px 20px;font-size:13px;font-weight:600;display:inline-flex}.btn-save-marks:hover:not(:disabled){opacity:.9;box-shadow:var(--shadow-1)}.btn-save-marks:disabled{opacity:.6;cursor:not-allowed}.report-video-card{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius-lg);box-shadow:var(--shadow-1);flex-direction:column;gap:12px;padding:20px;animation:.35s ease-out fadeUp;display:flex}.mini-video-wrapper{aspect-ratio:16/9;border-radius:var(--radius-sm);background:#000;width:100%;overflow:hidden}.mini-video-player{object-fit:contain;width:100%;height:100%}.btn-analytics{background:hsl(var(--primary));color:hsl(var(--primary-foreground));border-radius:var(--radius-sm);font-family:var(--font-primary);cursor:pointer;transition:all var(--transition);border:none;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-size:13px;font-weight:600;display:inline-flex}.btn-analytics:hover{opacity:.9;box-shadow:var(--shadow-1);transform:translateY(-.5px)}.no-video-placeholder{color:hsl(var(--muted-foreground) / .7);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:48px 16px;font-size:14px;display:flex}.analytics-dialog{max-width:90vw;max-height:85vh}.analytics-body{grid-template-columns:3fr 1fr;gap:20px;display:grid;padding:20px!important}.analytics-video-section{border-radius:var(--radius-sm);background:#000;overflow:hidden}.analytics-video-player{object-fit:contain;width:100%;height:100%;min-height:400px}.analytics-violations-section{flex-direction:column;gap:12px;display:flex}.analytics-violations-section h3{color:hsl(var(--foreground));border-bottom:1px solid hsl(var(--border));padding-bottom:8px;font-size:15px;font-weight:700}.insights-container{flex-direction:column;gap:16px;padding-bottom:24px;display:flex}.insights-summary{background:hsl(var(--secondary));border:1px solid hsl(var(--border));border-radius:var(--radius-md);border-left:4px solid hsl(var(--primary));padding:12px 16px}.insights-score-badge{color:hsl(var(--muted-foreground));text-transform:uppercase;align-items:center;gap:8px;margin-bottom:8px;font-size:11px;font-weight:700;display:inline-flex}.insights-score-badge span{background:hsl(var(--primary) / .08);color:hsl(var(--primary));border-radius:var(--radius-sm);padding:2px 8px;font-size:13px}.insights-summary p{color:hsl(var(--foreground) / .85);margin:0;font-size:13px;line-height:1.5}.insights-categories{flex-direction:column;gap:12px;display:flex}.insight-category-card{border:1px solid hsl(var(--border));border-radius:var(--radius-md);background:hsl(var(--card));transition:all var(--transition);padding:12px}.insight-category-card:hover{box-shadow:var(--shadow-1);border-color:hsl(var(--border) / 1.5)}.category-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.category-header h4{color:hsl(var(--foreground));margin:0;font-size:13px;font-weight:600}.category-score{border-radius:var(--radius-sm);padding:2px 8px;font-size:12px;font-weight:700}.category-observations{color:hsl(var(--foreground) / .8);margin:0;padding-left:18px;font-size:12.5px;line-height:1.5}.category-observations li{margin-bottom:6px}.category-observations li:last-child{margin-bottom:0}.no-violations{color:hsl(var(--muted-foreground) / .7);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:40px 16px;font-size:13px;display:flex}.performance-summary-card{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius-lg);box-shadow:var(--shadow-1);border-left:4px solid hsl(var(--primary));margin-bottom:32px;padding:28px 32px;animation:.3s ease-out fadeUp}.performance-summary-header{align-items:center;gap:12px;margin-bottom:16px;display:flex}.performance-summary-header h2{color:hsl(var(--foreground));flex:1;font-size:18px;font-weight:700}.summary-marks-pill{background:linear-gradient(135deg, hsl(var(--primary)), hsl(var(--primary) / .8));color:hsl(var(--primary-foreground));border-radius:var(--radius-sm);letter-spacing:.5px;box-shadow:var(--shadow-1);align-items:baseline;gap:2px;padding:8px 18px;font-size:22px;font-weight:800;display:inline-flex}.summary-marks-pill span{opacity:.8;font-size:14px;font-weight:600}.performance-summary-text{color:hsl(var(--foreground) / .85);font-size:15px;line-height:1.7}.report-analysis-section{max-width:1200px;margin:0 auto;padding:0 32px 48px}.analysis-title{color:hsl(var(--foreground));align-items:center;gap:10px;margin-bottom:24px;font-size:20px;font-weight:700;display:flex}.question-count{background:hsl(var(--accent));color:hsl(var(--accent-foreground));border-radius:var(--radius-sm);padding:4px 12px;font-size:13px;font-weight:600}.scored-label{margin-top:8px;margin-bottom:16px}.scored-badge{background:hsl(var(--primary) / .08);color:hsl(var(--primary));border-radius:var(--radius-sm);padding:6px 16px;font-size:13px;font-weight:600;display:inline-flex}.scored-badge.unscored{background:hsl(var(--muted));color:hsl(var(--muted-foreground))}.question-card{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius-md);box-shadow:var(--shadow-1);grid-template-rows:auto auto;grid-template-columns:auto 1fr;margin-bottom:16px;animation:.3s ease-out fadeUp;display:grid;overflow:hidden}.question-card.unscored-card{opacity:.75;border-left:3px solid hsl(var(--border) / 1.5)}.question-number{background:hsl(var(--secondary));border-right:1px solid hsl(var(--border));flex-direction:column;grid-row:1/3;justify-content:center;align-items:center;gap:8px;padding:24px 20px;display:flex}.q-num{color:hsl(var(--primary));font-size:16px;font-weight:800}.q-marks-badge{border-radius:var(--radius-sm);white-space:nowrap;padding:4px 10px;font-size:12px;font-weight:700}.q-marks-badge.scored{background:hsl(var(--primary) / .08);color:hsl(var(--primary))}.q-marks-badge.unscored{background:hsl(var(--muted));color:hsl(var(--muted-foreground))}.question-content{flex-direction:column;gap:16px;padding:20px 24px;display:flex}.question-content h4{color:hsl(var(--muted-foreground) / .8);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px;font-size:11px;font-weight:700}.question-text p{color:hsl(var(--foreground));font-size:14px;font-weight:600;line-height:1.6}.answer-text p{color:hsl(var(--foreground) / .85);background:hsl(var(--secondary));border-radius:var(--radius-sm);border-left:3px solid hsl(var(--primary) / .5);padding:12px 16px;font-size:14px}.evaluation-text p{color:hsl(var(--muted-foreground));font-size:13px;font-style:italic;line-height:1.6}.question-marks-bar{padding:0 24px 16px}.report-summary-card{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius-md);box-shadow:var(--shadow-1);margin-top:24px;padding:24px}.summary-row{border-bottom:1px solid hsl(var(--border));color:hsl(var(--foreground) / .85);justify-content:space-between;align-items:center;padding:12px 0;font-size:14px;display:flex}.summary-row:last-child{border-bottom:none}.summary-row.highlight{color:hsl(var(--foreground));font-weight:600}.summary-row.final-row{color:hsl(var(--success))}.summary-value{font-size:16px;font-weight:700}@media (width<=900px){.report-top-section{grid-template-columns:1fr;padding:16px}.marks-section,.analytics-body{grid-template-columns:1fr}.analytics-video-player{min-height:240px}.question-card{grid-template-columns:1fr}.question-number{border-right:none;border-bottom:1px solid var(--grey-200);flex-direction:row;grid-row:auto;padding:12px 20px}.report-analysis-section{padding:0 16px 32px}}.theme-toggle-btn{border-radius:var(--radius-pill);background:hsl(var(--card));border:1px solid hsl(var(--border));width:40px;height:40px;color:hsl(var(--foreground));cursor:pointer;box-shadow:var(--shadow-1);transition:all var(--transition);justify-content:center;align-items:center;display:inline-flex;position:relative;overflow:hidden}.theme-toggle-btn:hover{background:hsl(var(--secondary));border-color:hsl(var(--border));box-shadow:var(--shadow-2);transform:scale(1.05)}.theme-toggle-btn:active{transform:scale(.95)}.theme-toggle-icon-wrapper{justify-content:center;align-items:center;transition:transform .3s cubic-bezier(.4,0,.2,1);display:flex}.theme-toggle-btn:hover .theme-toggle-icon-wrapper{transform:rotate(15deg)}.theme-icon{stroke-width:2px;transition:stroke .15s}.sun-icon{color:#ffb300}.moon-icon{color:#818cf8}
