@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";:root{--primary-50: #eff6ff;--primary-100: #dbeafe;--primary-200: #bfdbfe;--primary-300: #93c5fd;--primary-400: #60a5fa;--primary-500: #3b82f6;--primary-600: #2563eb;--primary-700: #1d4ed8;--primary-800: #1e40af;--primary-900: #1e3a8a;--color-bg: #f8fafc;--color-surface: #ffffff;--color-surface-hover: #f1f5f9;--color-border: #e2e8f0;--color-border-hover: #cbd5e1;--color-text-main: #0f172a;--color-text-muted: #64748b;--color-text-subtle: #94a3b8;--success-bg: #f0fdf4;--success-border: #bbf7d0;--success-text: #15803d;--warning-bg: #fffbeb;--warning-border: #fde68a;--warning-text: #b45309;--danger-bg: #fef2f2;--danger-border: #fecaca;--danger-text: #b91c1c;--info-bg: #f0f9ff;--info-border: #bae6fd;--info-text: #0369a1;--shadow-sm: 0 1px 2px 0 rgba(15, 23, 42, .05);--shadow-md: 0 4px 6px -1px rgba(15, 23, 42, .08), 0 2px 4px -2px rgba(15, 23, 42, .05);--shadow-lg: 0 10px 15px -3px rgba(15, 23, 42, .1), 0 4px 6px -4px rgba(15, 23, 42, .05);--ring: rgba(37, 99, 235, .25);--sidebar-w: 220px;--app-shell-bg: #ffffff;--app-shell-bg-hover: #f1f5f9;--app-shell-bg-active: #eff6ff;--app-shell-border: #e2e8f0;--sidebar-bg: var(--app-shell-bg);--sidebar-border: var(--app-shell-border)}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--color-bg);color:var(--color-text-main);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5}.omr-page{display:flex;flex-direction:column;width:100%}.omr-section-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px 32px;background:#fff;border-bottom:1px solid var(--color-border)}.omr-section-header h3{margin:0;font-size:15px;font-weight:800;color:var(--color-text-main);letter-spacing:0}.omr-section-header span{display:block;margin:3px 0 0;color:var(--color-text-muted);font-size:12.5px}.omr-page-header{margin:0}.omr-page--upload{min-height:100%;background:#f6f8fc}.omr-page--upload .omr-page-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 18px 10px;border-bottom:1px solid var(--color-border);background:#fff}.omr-page .page-content{background:linear-gradient(180deg,#f6f8fc 0%,var(--color-bg) 100%);padding:20px 24px 28px}.omr-page--upload .page-content{padding:12px 18px 20px;background:#f6f8fc}.omr-toolbar{align-items:center;gap:12px}.omr-page--upload .omr-toolbar{padding:12px 18px 0;border:0;background:#f6f8fc}.omr-upload-header-search{flex:0 1 380px;min-width:260px}.omr-upload-header-search .omr-school-select{max-width:none;width:100%}.omr-school-select{position:relative;flex:1;min-width:200px;max-width:348px}.omr-search-input-wrap{position:relative}.omr-search-input-wrap>svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--color-text-muted);pointer-events:none}.omr-search-input-wrap input{width:100%;min-height:36px;border:1px solid var(--color-border);border-radius:6px;padding:7px 36px 7px 34px;color:var(--color-text-main);background:#fff;font-size:12px;font:inherit;outline:0;box-shadow:0 2px 8px #0f172a14;transition:border-color .2s,box-shadow .2s}.omr-search-input-wrap input:focus{border-color:var(--primary-600);box-shadow:0 0 0 3px var(--ring)}.omr-search-input-wrap .table-search-clear{right:7px;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px}.omr-search-input-wrap .table-search-clear svg{position:static;transform:none;pointer-events:auto}.omr-school-dropdown{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:30;max-height:280px;overflow-y:auto;background:#fff;border:1px solid var(--color-border);border-radius:9px;box-shadow:var(--shadow-md)}.omr-school-dropdown button{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:34px;padding:7px 10px;border:0;border-bottom:1px solid var(--color-border);background:#fff;color:var(--color-text-main);font:inherit;font-size:12px;font-weight:500;text-align:left;cursor:pointer}.omr-school-dropdown button:hover{background:var(--color-surface-hover)}.omr-school-dropdown button:last-child{border-bottom:0}.omr-school-dropdown span{color:var(--color-text-muted);font-size:11px;font-weight:500;white-space:nowrap}.omr-school-dropdown-empty{min-height:34px;padding:8px 10px;color:var(--color-text-muted);font-size:12px;font-weight:500}.omr-toolbar-register-btn{flex:0 0 auto;margin-left:auto;min-height:36px;padding:7px 12px;font-size:12.5px}.omr-toolbar .results-count-label{margin-left:0}.omr-upload-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(360px,1fr);grid-template-areas:"school school" "exam marks" "file actions";gap:14px;width:100%;max-width:none}.omr-upload-layout>.alert-banner{grid-column:1 / -1}.omr-selected-school-card{position:relative;grid-area:school;display:grid;grid-template-columns:118px minmax(0,1fr) 165px 250px;align-items:center;gap:24px;min-height:132px;padding:18px 34px 18px 22px;overflow:hidden;border:1px solid var(--color-border);border-radius:16px;background:#fff;box-shadow:0 10px 28px #0f172a14}.omr-selected-school-card:before{content:"";position:absolute;inset:0 auto 0 0;width:168px;background:linear-gradient(135deg,#eef5ff,#f6f9ff);z-index:0}.omr-selected-school-card:after{content:"";position:absolute;top:-36px;bottom:-36px;left:128px;width:82px;border-radius:50%;background:#fff;z-index:0}.omr-selected-school-card>*{position:relative;z-index:1}.omr-school-visual{display:flex;align-items:center;justify-content:center}.omr-school-icon,.omr-stat-icon{display:inline-flex;align-items:center;justify-content:center;color:var(--primary-600);background:var(--primary-50);border:1px solid var(--primary-100)}.omr-school-icon{width:68px;height:68px;border-radius:50%;background:#eaf2ff;border-color:#dbeafe;box-shadow:inset 0 0 0 1px #2563eb0a,0 10px 24px #2563eb14}.omr-school-main{min-width:0;padding-right:36px;border-right:1px dashed #cbd5e1}.omr-kicker{display:block;color:var(--primary-600);font-size:10px;font-weight:800;letter-spacing:.8px;text-transform:uppercase}.omr-school-main h2{display:flex;align-items:center;gap:8px;margin:6px 0 5px;color:var(--color-text-main);font-size:20px;font-weight:800;line-height:1.2;letter-spacing:0}.omr-school-main h2 svg{color:var(--primary-600);flex-shrink:0}.omr-school-main p{margin:0;color:var(--color-text-muted);font-size:12px;font-weight:600}.omr-program-pills{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:12px}.omr-program-pills span{color:var(--color-text-muted);font-size:12px}.omr-program-pills strong{display:inline-flex;align-items:center;min-height:24px;min-width:42px;justify-content:center;padding:3px 12px;border:1px solid var(--primary-100);border-radius:999px;background:linear-gradient(180deg,#eff6ff,#eaf2ff);color:var(--primary-600);font-size:12px;box-shadow:inset 0 -1px #2563eb0d}.omr-school-stat{display:grid;grid-template-columns:44px 1fr;align-items:center;gap:10px;justify-self:center;min-width:136px}.omr-stat-icon{grid-row:span 2;width:40px;height:40px;border-radius:50%}.omr-school-stat span,.omr-school-meta span{color:var(--color-text-muted);font-size:11px;font-weight:600}.omr-school-stat strong{color:var(--primary-600);font-size:23px;font-weight:800;line-height:1}.omr-school-meta{display:grid;gap:8px}.omr-school-meta div{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;min-height:48px;padding:8px 12px;border:1px solid var(--color-border);border-radius:12px;background:linear-gradient(180deg,#fff,#fbfdff);box-shadow:0 4px 14px #0f172a0a}.omr-meta-icon{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid var(--primary-100);border-radius:50%;background:var(--primary-50);color:var(--primary-600)}.omr-meta-copy{min-width:0}.omr-school-meta strong{display:block;margin-top:2px;color:var(--color-text-main);font-size:11.5px}.omr-upload-panel{min-width:0;padding:14px 16px 16px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 8px 24px #0f172a0f}.omr-upload-exam-card{grid-area:exam;min-height:150px;max-width:none}.omr-upload-marks-card{grid-area:marks;min-height:150px;max-width:100%}.omr-upload-file-card{grid-area:file;min-height:150px}.omr-upload-actions{grid-area:actions;min-height:150px}.omr-panel-title{display:flex;align-items:center;gap:8px;margin:0 0 12px;padding-bottom:10px;border-bottom:1px solid #e8edf5;color:var(--primary-600);font-size:12px;font-weight:700;letter-spacing:0;text-transform:uppercase}.omr-panel-title svg{padding:4px;width:24px;height:24px;border-radius:7px;background:var(--primary-50);color:var(--primary-600)}.omr-upload-panel .form-field{display:flex;flex-direction:column;gap:5px}.omr-upload-panel .form-label{color:#334155;font-size:11px;font-weight:700}.omr-upload-panel .form-input{min-height:38px;border-radius:9px;border-color:#dbe3ef;background:#fff;box-shadow:0 1px 2px #0f172a08}.omr-upload-panel .form-input:focus{border-color:var(--primary-500);box-shadow:0 0 0 3px #2563eb24}.omr-exam-combo{position:relative}.omr-exam-combo .form-input{width:100%;padding-right:38px}.omr-exam-combo-toggle{position:absolute;top:50%;right:10px;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;border:0;background:transparent;color:var(--color-text-muted);cursor:pointer;transform:translateY(-50%)}.omr-exam-combo-toggle:hover{color:var(--color-text-main)}.omr-exam-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:35;max-height:220px;overflow-y:auto;border:1px solid #dbe3ef;border-radius:9px;background:#fff;box-shadow:0 8px 18px #0f172a1a}.omr-exam-dropdown button{display:block;width:100%;min-height:34px;padding:8px 10px;border:0;border-bottom:1px solid #eef2f7;background:#fff;color:var(--color-text-main);font:inherit;font-size:12px;font-weight:400;text-align:left;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.omr-exam-dropdown button:hover{background:var(--color-surface-hover)}.omr-exam-dropdown button:last-child{border-bottom:0}.omr-exam-dropdown-empty{min-height:34px;padding:8px 10px;color:var(--color-text-muted);font-size:12px}.omr-upload-exam-card .form-grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.omr-upload-marks-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:14px;row-gap:12px;align-items:stretch}.omr-subject-field{display:grid;grid-template-columns:34px minmax(100px,1fr);grid-template-areas:"icon label" "icon input";align-items:start;column-gap:9px;row-gap:4px;min-width:0;padding:0;border:0;border-radius:0;background:transparent}.omr-subject-field .form-label{grid-area:label;margin-bottom:0;color:#1e293b;font-size:12px;font-weight:600;line-height:1.2}.omr-subject-field .form-input{grid-area:input;width:100%;min-width:100px;height:36px;min-height:36px;padding:0 10px;border:1px solid #dbe3ef;border-radius:9px;background:#fff;font-size:13px}.omr-subject-label{display:contents}.omr-subject-label .form-label{grid-area:label}.omr-subject-icon{grid-area:icon;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#f8fafc;border:1px solid #e2e8f0;color:#334155;flex-shrink:0}.omr-subject-icon svg{width:17px;height:17px}.omr-file-drop{position:relative;display:grid;grid-template-columns:48px minmax(0,1fr) 122px;align-items:center;gap:10px;min-height:94px;padding:14px;border:1.5px dashed #cbd5e1;border-radius:14px;background:#fbfdff;cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.omr-file-drop:hover{border-color:var(--primary-400);background:#f8fbff;box-shadow:inset 0 0 0 1px #2563eb0a}.omr-file-drop input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);opacity:0;white-space:nowrap}.omr-file-drop>svg{grid-row:span 2;color:var(--primary-600);justify-self:center}.omr-file-copy{min-width:0}.omr-file-copy strong{display:block;color:var(--color-text-main);font-size:13px;font-weight:800;overflow-wrap:anywhere}.omr-file-copy span{display:block;margin-top:3px;color:var(--color-text-muted);font-size:12px}.omr-file-drop small{grid-column:1 / 3;align-self:end;color:var(--color-text-muted);font-size:11px}.omr-file-drop label{grid-column:3;grid-row:1 / span 2;justify-self:end;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:34px;padding:7px 12px;border:1px solid var(--color-border-hover);border-radius:7px;color:var(--color-text-main);background:#fff;font-size:12.5px;font-weight:600;box-shadow:var(--shadow-sm);cursor:pointer;position:relative;z-index:2}.omr-file-drop label:hover{border-color:var(--primary-400);color:var(--primary-600);background:var(--primary-50)}.omr-file-drop--active{border-color:var(--primary-500);background:var(--primary-50);box-shadow:0 0 0 3px #2563eb1f}.omr-file-drop--selected{border-color:#93c5fd;background:#f8fbff}.omr-file-clear{grid-column:3;justify-self:end;border:0;background:transparent;color:var(--danger-text);font:inherit;font-size:12px;font-weight:700;cursor:pointer;position:relative;z-index:2}.omr-upload-actions p{margin:0 0 12px;color:var(--color-text-muted);font-size:12px;line-height:1.5}.omr-upload-actions small{display:inline-flex;align-items:center;gap:6px;margin-top:10px;color:var(--color-text-muted);font-size:12px}.omr-upload-actions .btn-link-primary{min-height:38px;padding-inline:14px;box-shadow:0 8px 18px #2563eb40}.omr-secondary-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;border-radius:8px;padding:10px 14px;border:1px solid transparent;font:inherit;font-weight:700;cursor:pointer;white-space:nowrap}.omr-secondary-btn{background:#fff;color:var(--color-text-main);border-color:var(--color-border)}.omr-alert,.omr-empty-state{border:1px solid var(--info-border);border-radius:8px;padding:14px 16px;background:var(--info-bg);color:var(--info-text);font-weight:600}.omr-alert-error{border-color:var(--danger-border);background:var(--danger-bg);color:var(--danger-text)}.omr-empty-state{color:var(--color-text-muted);background:var(--color-surface);border-color:var(--color-border);margin:16px 32px}.omr-data-table{min-width:1180px}.omr-results-toolbar{align-items:center;flex-wrap:wrap;gap:12px;padding:12px 32px;border-bottom:1px solid var(--color-border);background:#fff}.omr-results-search{width:100%;max-width:360px;flex:0 1 360px}.omr-results-search>svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--color-text-muted);pointer-events:none}.omr-results-search .table-search-input{min-height:38px;padding-left:36px;padding-right:36px;font-size:13px}.omr-results-search .table-search-clear{right:8px;width:24px;height:24px}.omr-results-search .table-search-clear svg{position:static;transform:none;pointer-events:auto}.omr-results-count{flex:0 0 auto;color:var(--color-text-muted);font-size:12.5px;font-weight:700;white-space:nowrap}.omr-results-pdf{flex:0 0 auto;margin-left:auto}@media (min-width: 901px){.omr-results .omr-data-table{min-width:0;table-layout:auto}.omr-results .omr-data-table th{padding:10px 8px;font-size:11.5px;line-height:1.25;white-space:normal;overflow-wrap:anywhere}.omr-results .omr-data-table td{padding:10px 8px;font-size:12.5px;line-height:1.35}}.omr-data-table .btn-icon-delete{display:inline-flex;align-items:center;gap:6px}.omr-exams-table tbody tr{cursor:pointer}.omr-exam-cards-mobile{display:none}@media (max-width: 1180px){.omr-upload-layout{grid-template-columns:minmax(0,1.25fr) minmax(340px,.95fr)}.omr-selected-school-card{grid-template-columns:110px minmax(0,1fr) 150px}.omr-school-meta{grid-column:2 / -1;grid-template-columns:repeat(2,minmax(0,1fr))}.omr-upload-marks-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 1050px){.omr-upload-layout{grid-template-columns:1fr;grid-template-areas:"school" "exam" "marks" "file" "actions"}.omr-upload-marks-card{width:100%}.omr-upload-marks-grid{grid-template-columns:repeat(2,minmax(140px,1fr))}}@media (max-width: 900px){.omr-section-header{flex-direction:column;align-items:stretch;padding:14px 16px}.omr-secondary-btn{width:100%}.omr-page--upload .page-content{padding:12px 14px 18px}.omr-selected-school-card{grid-template-columns:1fr;gap:12px;padding:16px;min-height:0;background:#fff}.omr-selected-school-card:before,.omr-selected-school-card:after{display:none}.omr-school-visual{justify-content:flex-start}.omr-school-icon{width:56px;height:56px}.omr-school-main{padding-right:0;border-right:0}.omr-school-main h2{font-size:18px}.omr-school-meta{grid-column:auto;grid-template-columns:1fr}.omr-upload-exam-card .form-grid-3{grid-template-columns:1fr}.omr-upload-exam-card,.omr-upload-marks-card,.omr-upload-file-card{min-height:0}.omr-file-drop{grid-template-columns:44px minmax(0,1fr)}.omr-file-drop label,.omr-file-clear{grid-column:1 / -1;grid-row:auto;justify-self:stretch}.omr-toolbar{align-items:stretch}.omr-school-select{max-width:none;flex-basis:auto}.omr-toolbar-register-btn{margin-left:0;width:100%}.omr-toolbar .results-count-label{margin-left:0}.omr-upload-actions .btn-link-primary{width:100%}.omr-empty-state{margin:14px 16px}.omr-page>.omr-data-table-outer{display:none}.omr-results-toolbar{padding:12px 16px}.omr-results-search{max-width:none;flex:1 1 260px}.omr-results .omr-data-table-outer{display:block;margin:0 16px 18px;overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--color-border);border-radius:10px;background:#fff}.omr-results .omr-data-table{display:table;min-width:1180px}.omr-results .omr-data-table thead{display:table-header-group}.omr-results .omr-data-table tbody{display:table-row-group}.omr-results .omr-data-table tr{display:table-row;margin:0;border:0;border-radius:0;box-shadow:none;background:inherit;overflow:visible}.omr-results .omr-data-table td{display:table-cell;width:auto;padding:10px 12px;border-bottom:1px solid var(--color-border);text-align:left}.omr-results .omr-data-table td:before{content:none}.omr-exam-cards-mobile{display:flex;flex-direction:column;gap:12px;padding:0 16px 18px}.omr-exam-card-mobile{border:1px solid var(--color-border);border-radius:10px;background:#fff;box-shadow:var(--shadow-sm);padding:14px;cursor:pointer}.omr-exam-card-mobile__top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.omr-exam-card-mobile__top h3{margin:0;color:var(--color-text-main);font-size:14px;font-weight:800;line-height:1.3}.omr-exam-card-mobile__top p{margin:3px 0 0;color:var(--color-text-muted);font-size:12px;font-weight:600}.omr-exam-card-mobile__top>span{flex:0 0 auto;border-radius:999px;background:var(--primary-50);color:var(--primary-700);padding:4px 9px;font-size:11.5px;font-weight:800;white-space:nowrap}.omr-exam-card-mobile__meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:12px}.omr-exam-card-mobile__meta span{min-width:0;border:1px solid var(--color-border);border-radius:8px;padding:8px;color:var(--color-text-main);font-size:12px;font-weight:700;overflow-wrap:anywhere}.omr-exam-card-mobile__meta strong{display:block;margin-bottom:2px;color:var(--color-text-muted);font-size:10.5px;font-weight:800;text-transform:uppercase}.omr-exam-card-mobile__actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.omr-exam-card-mobile__actions .btn-link-primary,.omr-exam-card-mobile__actions .btn-icon-delete{justify-content:center;width:100%;min-height:36px;font-size:12.5px}}@media (max-width: 640px){.omr-upload-panel{padding:16px}.omr-upload-marks-grid{grid-template-columns:1fr;row-gap:12px}.omr-subject-field .form-input{height:44px;min-height:44px}}.omr-page--upload .omr-toolbar,.omr-page--upload .page-content{width:100%;max-width:none;margin-inline:auto}.omr-page--upload .page-content{padding:20px 28px 28px}.omr-page--upload .omr-toolbar{padding:16px 28px 0}.omr-page--upload .omr-upload-layout{display:grid;grid-template-columns:1fr;grid-template-areas:"school" "exam" "marks" "file" "actions";gap:22px;width:100%;min-width:0}.omr-page--upload .omr-selected-school-card{display:flex;align-items:center;flex-wrap:wrap;gap:22px;min-height:auto;padding:18px 20px;border:1px solid #e2e8f0;border-radius:12px;background:#fff;overflow:hidden;box-shadow:0 8px 24px #0f172a0f}.omr-page--upload .omr-selected-school-card:before,.omr-page--upload .omr-selected-school-card:after{display:none}.omr-page--upload .omr-school-visual{flex:0 0 auto}.omr-page--upload .omr-school-icon{width:52px;height:52px;box-shadow:none}.omr-page--upload .omr-school-icon svg{width:28px;height:28px}.omr-page--upload .omr-school-main{flex:1 1 360px;min-width:0;padding:0;border-right:0}.omr-page--upload .omr-kicker{font-size:9.5px}.omr-page--upload .omr-school-main h2{margin:4px 0;font-size:19px;line-height:1.25}.omr-page--upload .omr-school-main p,.omr-page--upload .omr-program-pills span,.omr-page--upload .omr-school-stat span,.omr-page--upload .omr-school-meta span{font-size:11px}.omr-page--upload .omr-program-pills{gap:8px;margin-top:10px}.omr-page--upload .omr-program-pills strong{min-height:22px;min-width:36px;padding:2px 9px;font-size:11px}.omr-page--upload .omr-school-stat{flex:0 0 auto;display:flex;align-items:center;min-width:0;gap:10px}.omr-page--upload .omr-stat-icon{width:36px;height:36px}.omr-page--upload .omr-school-stat strong{font-size:21px}.omr-page--upload .omr-school-meta{flex:0 1 320px;display:grid;grid-template-columns:1fr;gap:8px}.omr-page--upload .omr-school-meta div{min-height:auto;padding:8px 10px;border-radius:8px;background:#fff;box-shadow:none}.omr-page--upload .omr-meta-icon{width:26px;height:26px}.omr-page--upload .omr-school-meta strong{font-size:11.5px}.omr-page--upload .omr-upload-panel{padding:0 0 4px;border:0;border-radius:0;background:transparent;box-shadow:none;min-height:auto}.omr-page--upload .omr-panel-title{gap:9px;margin-bottom:18px;padding-bottom:11px;border-bottom:1px solid #e2e8f0;color:#1e293b;font-size:13px;font-weight:700;line-height:1.2;letter-spacing:0;text-transform:none}.omr-page--upload .omr-panel-title svg{width:26px;height:26px;padding:5px;border-radius:8px;background:#eff6ff;color:var(--primary-600);flex-shrink:0}.omr-page--upload .omr-panel-title span{display:inline-flex;align-items:center;min-height:26px}.omr-page--upload .omr-upload-exam-card .form-grid-3,.omr-page--upload .omr-upload-marks-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}.omr-page--upload .omr-subject-field{display:grid;grid-template-columns:40px minmax(0,1fr);grid-template-areas:"icon label" "icon input";align-items:center;column-gap:12px;row-gap:6px}.omr-page--upload .omr-subject-icon{grid-area:icon;align-self:center;width:36px;height:36px}.omr-page--upload .omr-subject-label{display:contents}.omr-page--upload .omr-subject-label .form-label{grid-area:label;align-self:end;line-height:1.2}.omr-page--upload .omr-upload-panel .form-label,.omr-page--upload .omr-subject-field .form-label{font-size:12.5px}.omr-page--upload .omr-upload-panel .form-input,.omr-page--upload .omr-subject-field .form-input{width:100%;min-width:0;grid-area:input;height:40px;min-height:40px;font-size:13px}.omr-page--upload .omr-file-drop{grid-template-columns:44px minmax(0,1fr) auto;min-height:96px;padding:16px;border-radius:10px;background:#fff}.omr-page--upload .omr-file-drop>svg{width:30px;height:30px}.omr-page--upload .omr-file-copy strong{font-size:13px}.omr-page--upload .omr-file-copy span,.omr-page--upload .omr-file-drop small,.omr-page--upload .omr-upload-actions p,.omr-page--upload .omr-upload-actions small{font-size:12px}.omr-page--upload .omr-file-drop label,.omr-page--upload .omr-upload-actions .btn-link-primary{min-height:38px;padding:8px 14px;font-size:13px}.omr-page--upload .omr-upload-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;justify-content:flex-start}.omr-page--upload .omr-upload-actions p{flex:1 1 360px;margin:0}.omr-page--upload .omr-upload-actions small{flex:1 0 100%;margin-top:0}.omr-page--upload .omr-upload-actions .omr-secondary-btn,.omr-page--upload .omr-upload-actions .btn-link-primary{width:auto}@media (max-width: 640px){.omr-page--upload .omr-page-header{align-items:flex-start;margin-bottom:12px;padding:12px 14px}.omr-upload-header-search{flex-basis:100%;min-width:0;width:100%}.omr-page--upload .omr-toolbar,.omr-page--upload .page-content{padding-inline:12px}.omr-page--upload .omr-school-meta,.omr-page--upload .omr-upload-exam-card .form-grid-3,.omr-page--upload .omr-upload-marks-grid{grid-template-columns:1fr}.omr-page--upload .omr-file-drop{grid-template-columns:30px minmax(0,1fr)}.omr-page--upload .omr-file-drop label,.omr-page--upload .omr-file-clear{grid-column:1 / -1;justify-self:stretch}.omr-page--upload .omr-upload-actions .omr-secondary-btn,.omr-page--upload .omr-upload-actions .btn-link-primary{width:100%;justify-content:center}.omr-page--upload .omr-upload-actions .btn-link-primary{order:1}.omr-page--upload .omr-upload-actions .omr-secondary-btn{order:2}.omr-results-toolbar{align-items:stretch}.omr-results-search,.omr-results-pdf{width:100%}.omr-results-count{margin-left:0;width:100%;white-space:normal}}:focus-visible{outline:2px solid var(--primary-600);outline-offset:2px}.admin-layout{display:flex;flex-direction:row;min-height:calc(100vh - 60px);position:relative}.sidebar-rail{width:var(--sidebar-w);min-height:100%;background:var(--sidebar-bg);border-right:1px solid var(--sidebar-border);display:flex;flex-direction:column;position:sticky;top:60px;height:calc(100vh - 60px);overflow-y:auto;flex-shrink:0;scrollbar-width:none;transition:width .25s ease;z-index:40;box-shadow:2px 0 10px #0f172a0a}.sidebar-rail::-webkit-scrollbar{display:none}.sidebar-section-label{padding:20px 16px 6px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--color-text-subtle)}.sidebar-nav-item{display:flex;align-items:center;gap:10px;padding:10px 14px 10px 18px;margin:1px 8px;border-radius:8px;font-size:13.5px;font-weight:500;color:var(--color-text-muted);cursor:pointer;border:none;background:transparent;text-align:left;width:calc(100% - 16px);transition:background .15s ease,color .15s ease;font-family:inherit;min-height:42px;text-decoration:none;white-space:nowrap;overflow:hidden}.sidebar-nav-item:hover{background:var(--app-shell-bg-hover);color:var(--color-text-main)}.sidebar-nav-item--active{background:var(--app-shell-bg-active);color:var(--primary-700);font-weight:600;box-shadow:inset 3px 0 0 var(--primary-600);border-radius:0 8px 8px 0;margin-left:0;padding-left:22px;width:calc(100% - 8px)}.sidebar-nav-item--active:hover{background:var(--app-shell-bg-active);color:var(--primary-700)}.sidebar-nav-icon{font-size:16px;flex-shrink:0;line-height:1;opacity:.9}.sidebar-footer{margin-top:auto;padding:16px;border-top:1px solid var(--color-border)}.sidebar-admin-info{display:flex;align-items:center;gap:12px;padding:12px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:12px;margin-bottom:12px;box-shadow:none;position:relative}.sidebar-admin-avatar{width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,var(--primary-600) 0%,var(--primary-800) 100%);color:#fff;font-weight:700;font-size:15px;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 4px 12px #2563eb3d;position:relative}.sidebar-admin-avatar--logo{background:#fff;border:1px solid var(--color-border);box-shadow:none;overflow:hidden}.sidebar-admin-logo{display:block;width:100%;height:100%;object-fit:contain;padding:3px}.sidebar-avatar-status{position:absolute;bottom:-2px;right:-2px;width:10px;height:10px;border-radius:50%;background-color:#10b981;border:2px solid #ffffff;box-shadow:0 0 0 1px #10b98133}.sidebar-admin-details{display:flex;flex-direction:column;min-width:0;overflow:hidden;gap:2px}.sidebar-admin-name{font-size:13.5px;font-weight:700;color:var(--color-text-main);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-admin-role{font-size:11px;color:var(--color-text-muted);font-weight:500}.sidebar-admin-status-text{font-size:10px;color:#10b981;font-weight:600;display:flex;align-items:center;gap:4px}.sidebar-admin-status-text:before{content:"";display:inline-block;width:4px;height:4px;background-color:#10b981;border-radius:50%;box-shadow:0 0 6px #10b981cc;animation:pulse 2s infinite}@keyframes pulse{0%{box-shadow:0 0 #10b98166}70%{box-shadow:0 0 0 4px #10b98100}to{box-shadow:0 0 #10b98100}}.sidebar-logout-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:10px 14px;margin-bottom:12px;background:transparent;border:1px solid #dc2626;border-radius:8px;color:#dc2626;font-size:13px;font-weight:700;cursor:pointer;font-family:inherit;box-shadow:none;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease,transform .1s ease}.sidebar-logout-btn:hover{background:#dc2626;color:#fff;border-color:#dc2626;box-shadow:0 8px 16px -10px #b91c1cbf;transform:translateY(-1px)}.sidebar-logout-btn:active{transform:translateY(0);box-shadow:0 4px 10px -8px #991b1bbf}.sidebar-version{font-size:10.5px;color:#334155;margin-top:4px}.mobile-topbar{display:none;align-items:center;gap:12px;padding:10px 16px;background:var(--app-shell-bg);color:var(--color-text-main);border-bottom:1px solid var(--app-shell-border);position:sticky;top:0;z-index:50}.hamburger-btn{background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text-main);font-size:18px;padding:6px 10px;cursor:pointer;line-height:1;display:flex;align-items:center;justify-content:center;transition:background .15s ease}.hamburger-btn:hover{background:var(--color-surface-hover)}.mobile-topbar-title{font-size:15px;font-weight:700;color:var(--color-text-main)}.sidebar-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a99;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);z-index:998;animation:fadeIn .2s ease}.sidebar-close-btn{display:none;position:absolute;top:14px;right:14px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text-main);font-size:14px;width:28px;height:28px;align-items:center;justify-content:center;cursor:pointer}.page-canvas{flex:1;background:var(--color-bg);min-width:0;display:flex;flex-direction:column}.page-header{padding:16px 24px 14px;border-bottom:1px solid var(--color-border);background:#fff;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.page-header-title{margin:0;font-size:20px;font-weight:800;color:var(--color-text-main);letter-spacing:-.3px;line-height:1.2}.page-header-title--school{font-size:22px;font-weight:800;letter-spacing:0;color:#0f172a}.page-header-subtitle{margin:3px 0 0;font-size:12.5px;color:var(--color-text-muted)}.page-header-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.page-content{padding:16px 24px;flex:1}.school-overview-page{min-height:100%}.school-overview-header .school-overview-title{display:flex;align-items:center;gap:8px}.school-overview-meta{max-width:820px}.school-overview-welcome{margin-bottom:16px;padding:11px 14px;color:var(--primary-700);background:var(--primary-50);border:1px solid var(--primary-200);border-radius:7px;font-size:13px;font-weight:650}.school-overview-report-btn{display:inline-flex;align-items:center;gap:8px;min-height:42px;white-space:nowrap}.batchwise-page{padding:17px}.batchwise-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px}.batchwise-title{display:flex;align-items:center;gap:8px;margin:0;color:#0f172a;font-size:20px;font-weight:800;line-height:1.25}.batchwise-actions{display:flex;gap:10px;flex-wrap:wrap}.batchwise-action-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:8px 14px;border:1px solid transparent;border-radius:7px;color:#fff;font-size:12.5px;font-weight:750;cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .1s ease}.batchwise-action-btn:hover{transform:translateY(-1px)}.batchwise-action-btn--success{background:#059669;border-color:#047857}.batchwise-action-btn--success:hover{background:#047857}.batchwise-action-btn--primary{background:var(--primary-600);border-color:var(--primary-700)}.batchwise-action-btn--primary:hover{background:var(--primary-700)}.batchwise-exam-cards{display:none}.batchwise-exam-card{border-bottom:1px solid var(--color-border);padding:12px 0}.batchwise-exam-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:10px}.batchwise-exam-card__title{color:#0f172a;font-size:14px;font-weight:800;line-height:1.25}.batchwise-exam-card__meta{color:var(--color-text-muted);font-size:11.5px;font-weight:600;margin-top:3px}.batchwise-exam-card__btn{flex-shrink:0;min-height:30px;padding:4px 10px!important;font-size:11px!important}.batchwise-exam-card__scores,.batchwise-exam-card__ranks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.batchwise-exam-card__scores span,.batchwise-exam-card__ranks span{display:flex;justify-content:space-between;gap:8px;min-width:0;padding:7px 8px;background:#f8fafc;border:1px solid #f1f5f9;border-radius:6px;color:var(--color-text-muted);font-size:11px;font-weight:700}.batchwise-exam-card__scores b,.batchwise-exam-card__ranks b{color:var(--color-text-main)}.batchwise-exam-card__total{grid-column:1 / -1;background:var(--primary-50)!important}.batchwise-exam-card__ranks{margin-top:6px}.exam-results-page{padding:18px}.exam-results-header-main{display:flex;align-items:flex-start;flex-wrap:wrap;gap:16px;min-width:0}.exam-results-header-main .exam-results-summary{flex:0 1 260px}.exam-results-back{margin-left:auto;margin-bottom:0;margin-top:4px}.exam-results-header-actions{display:grid;justify-items:end;gap:8px;min-width:220px}.exam-results-header-download{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:34px;padding:7px 11px;border:1px solid #2563eb;border-radius:7px;color:#fff;background:#2563eb;font:inherit;font-size:12px;font-weight:700;cursor:pointer}.exam-results-header-download--student{border-color:#2563eb;background:#2563eb}.exam-results-header-download:disabled{opacity:.55;cursor:not-allowed}.exam-results-download-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px}.exam-results-download-btn--analysis{margin-bottom:18px}.exam-results-table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.exam-results-student-results-block{display:flex;flex-direction:column}.exam-results-student-table-wrap{order:1}.exam-results-student-download-row{order:2}.studentwise-page,.teacherwise-page{width:100%;padding:24px 32px}.studentwise-form-panel,.teacherwise-form-panel{width:100%;max-width:none;margin:0;text-align:left}.studentwise-form-panel button,.teacherwise-form-panel button{display:inline-flex;align-items:center;justify-content:center;gap:8px}.school-overview-content{padding-top:16px}.school-overview-stats{display:grid;grid-template-columns:repeat(3,minmax(160px,1fr));gap:0;margin-bottom:16px;background:#fff;border:1px solid var(--color-border);border-radius:7px;overflow:hidden}.school-overview-stat{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"icon value" "icon label";column-gap:12px;align-items:center;padding:16px 18px;border-right:1px solid var(--color-border)}.school-overview-stat:last-child{border-right:none}.school-overview-stat svg{grid-area:icon}.school-overview-stat__value{grid-area:value;font-size:24px;font-weight:800;line-height:1}.school-overview-stat__label{grid-area:label;margin-top:4px;color:var(--color-text-muted);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.school-overview-section{margin-top:16px;padding:18px;background:#fff;border:1px solid var(--color-border);border-radius:7px}.school-overview-section--info{margin-top:0;padding-top:20px;padding-bottom:20px}.school-overview-section-title{display:flex;align-items:center;gap:8px;margin:0 0 16px;color:#0f172a;font-size:16px;font-weight:800;letter-spacing:0}.school-overview-profile-card{background:linear-gradient(180deg,#fff,#fbfdff);border:1px solid var(--color-border);border-radius:7px;overflow:hidden}.school-overview-profile-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px 20px;border-bottom:1px solid var(--color-border);background:#fff}.school-overview-profile-identity{display:flex;align-items:center;gap:12px;min-width:0}.school-overview-profile-name-logo{flex-shrink:0;width:42px;height:42px;padding:4px;object-fit:contain;background:#fff;border:1px solid var(--color-border);border-radius:8px}.school-overview-profile-name{color:#0f172a;font-size:19px;font-weight:800;line-height:1.25;overflow-wrap:anywhere}.school-overview-profile-subtitle{margin-top:4px;color:var(--color-text-muted);font-size:13px;font-weight:500}.school-overview-profile-id{flex-shrink:0;display:inline-flex;align-items:center;min-height:28px;padding:4px 10px;border:1px solid var(--primary-200);border-radius:6px;background:var(--primary-50);color:var(--primary-700);font-size:12px;font-weight:800;letter-spacing:.03em}.school-overview-info-grid{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));gap:0;background:transparent}.school-overview-info-item{min-width:0;padding:16px 20px;border-right:1px solid var(--color-border)}.school-overview-info-item:last-child{border-right:none}.school-overview-info-label{color:var(--color-text-muted);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.school-overview-info-value{margin-top:5px;color:var(--color-text-main);font-size:14px;font-weight:650;overflow-wrap:anywhere}.school-overview-section--batches>button{margin-bottom:18px}.iit-batches-heading{margin-top:22px;margin-bottom:18px}.iit-batches-table th{padding-top:12px;padding-bottom:12px;font-size:10.5px}.iit-batches-table td{padding-top:6px;padding-bottom:6px;font-size:16px;line-height:1.45}.detail-inner-table.iit-batches-table td,.detail-inner-table.overview-teachers-table td{padding-left:2px;padding-right:2px}.iit-batches-table,.overview-teachers-table{table-layout:auto}.iit-batches-table th,.iit-batches-table td,.overview-teachers-table th,.overview-teachers-table td{white-space:nowrap;overflow-wrap:normal}@media (max-width: 900px){.school-overview-header{align-items:stretch}.school-overview-header .page-header-left,.school-overview-header .page-header-actions{width:100%}.school-overview-header .page-header-actions{justify-content:flex-start}.school-overview-header .school-overview-title{align-items:flex-start;font-size:20px}.school-overview-meta{line-height:1.45}.school-overview-profile-heading{flex-direction:column;gap:10px}.school-overview-info-grid{grid-template-columns:1fr}.school-overview-info-item{border-right:none;border-bottom:1px solid var(--color-border)}.school-overview-info-item:last-child{border-bottom:none}.school-overview-stat{border-right:none;border-bottom:1px solid var(--color-border)}.school-overview-stat:last-child{border-bottom:none}.iit-batches-table td{font-size:13px}}@media (max-width: 560px){.school-overview-content{padding:12px 14px 20px}.school-overview-header{padding:14px 16px}.school-overview-header .school-overview-title{font-size:18px;line-height:1.3}.school-overview-welcome{padding:10px 12px;font-size:12.5px;margin-bottom:12px;border-radius:6px}.school-overview-report-btn{width:100%;justify-content:center;white-space:normal}.batchwise-toolbar{align-items:stretch;flex-direction:column;gap:12px;margin-bottom:18px}.batchwise-title{font-size:18px}.batchwise-actions{display:grid;grid-template-columns:1fr;gap:8px}.batchwise-action-btn{width:100%}.batchwise-subject-averages{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px!important}.batchwise-subject-average-card{width:auto!important;padding:10px!important}.batchwise-subject-average-card>div:first-child{font-size:10.5px!important}.batchwise-subject-average-card>div:nth-child(2){font-size:16px!important}.batchwise-subject-average-card>div:last-child{font-size:10px!important}.batchwise-exams-section{overflow-x:visible!important}.batchwise-exams-table{display:none}.batchwise-exam-cards{display:block}.batchwise-analysis-table-wrap{margin-top:14px!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch}.batchwise-analysis-table-wrap strong,.batchwise-analysis-table-wrap h4{font-size:13px!important;line-height:1.3}.batchwise-analysis-table{min-width:430px;table-layout:fixed;font-size:10px!important}.batchwise-top-exam-table{min-width:100%}.batchwise-top-exam-table th,.batchwise-top-exam-table td{width:25%;white-space:normal;word-break:break-word}.batchwise-top-exam-table thead tr:nth-child(2) th{font-size:8.5px!important;line-height:1.15}.batchwise-top-exam-table td span{font-size:9px!important}.batchwise-top-students-table{min-width:350px}.batchwise-top-students-table th:nth-child(1),.batchwise-top-students-table td:nth-child(1){width:34px}.batchwise-top-students-table th:nth-child(2),.batchwise-top-students-table td:nth-child(2){width:66px}.batchwise-top-students-table th:nth-child(4),.batchwise-top-students-table td:nth-child(4){width:62px}.batchwise-top-students-table th:nth-child(3),.batchwise-top-students-table td:nth-child(3){width:120px;white-space:normal;word-break:break-word}.batchwise-analysis-table th,.batchwise-analysis-table td{padding:4px 2px!important;font-size:9.5px!important;line-height:1.25}.batchwise-exam-card{margin-bottom:10px;padding:10px;background:#fff;border:1px solid var(--color-border);border-radius:7px}.batchwise-exam-card:last-child{margin-bottom:0}.batchwise-exam-card__title{font-size:13px}.batchwise-exam-card__meta{font-size:10.5px}.batchwise-exam-card__scores,.batchwise-exam-card__ranks{gap:5px}.batchwise-exam-card__scores span,.batchwise-exam-card__ranks span{padding:6px;font-size:10px}.exam-results-page{padding:12px 10px 18px}.exam-results-header{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:start!important;gap:10px 8px!important;margin-bottom:16px!important;padding-bottom:12px!important}.exam-results-heading{min-width:0}.exam-results-header-main{grid-column:1;display:flex;flex-wrap:wrap;gap:10px;min-width:0}.exam-results-heading h2{font-size:17px!important;line-height:1.15!important}.exam-results-heading>div{margin-top:4px!important;font-size:11px!important;line-height:1.35}.exam-results-back{margin:0!important;align-self:start;white-space:nowrap;min-height:32px;padding:7px 9px!important;font-size:11px!important}.exam-results-header-actions{grid-column:2;grid-row:1;justify-items:stretch;min-width:0;width:min(220px,100%)}.exam-results-header-actions .exam-results-header-download{width:100%;min-height:32px;padding:7px 8px;font-size:10px}.exam-results-header-actions .exam-results-back{width:100%}.exam-results-summary{display:grid!important;width:min(260px,100%);min-width:0!important;gap:8px!important;padding:0;border-top:0}.exam-results-summary-item{flex:1 1 0;padding:0!important;background:transparent!important;border:none!important;border-radius:0!important}.exam-results-summary-label{font-size:10px!important;line-height:1.2;text-transform:uppercase;letter-spacing:0}.exam-results-summary-value{margin-top:2px;font-size:15px!important;line-height:1.2}.exam-results-analysis-section{padding:0!important;background:transparent!important;border:none!important;border-radius:0!important;box-shadow:none!important}.exam-results-analysis-section--averages,.exam-results-analysis-section--toppers{margin-bottom:22px!important}.exam-results-analysis-section h3{text-align:left!important;margin-bottom:12px!important;font-size:15px}.exam-results-analysis-section--toppers{overflow:visible!important}.exam-results-table-scroll,.exam-results-student-table-wrap{width:100%;overflow-x:auto!important;-webkit-overflow-scrolling:touch}.exam-results-analysis-section table,.exam-results-student-table{min-width:620px;font-size:10.5px!important}.exam-results-analysis-section table th,.exam-results-analysis-section table td,.exam-results-student-table th,.exam-results-student-table td{padding:5px 3px!important;font-size:10.5px!important;line-height:1.25}.exam-results-grade-table{min-width:420px!important;font-size:10px!important}.exam-results-grade-table th,.exam-results-grade-table td{padding:4px 2px!important;font-size:10px!important}.exam-results-download-btn{width:100%;min-height:36px;padding:8px 10px!important;font-size:12px!important;margin-top:12px!important}.exam-results-download-btn--students{margin-top:0!important}.studentwise-page,.teacherwise-page{padding:16px 14px 20px}.school-overview-section{margin-top:18px;padding:0;background:transparent;border:none;border-radius:0}.school-overview-section--info{display:none}.school-overview-stats{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:14px;background:transparent;border:none;border-radius:0;overflow:visible}.school-overview-stat{display:flex;min-width:0;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;border-right:none;border-bottom:none;padding:8px 4px}.school-overview-stat:last-child{border-right:none}.school-overview-stat svg{width:20px;height:20px}.school-overview-stat__value{font-size:20px}.school-overview-stat__label{margin-top:0;font-size:9.5px;line-height:1.2;letter-spacing:.03em}.school-overview-profile-heading{padding:10px 0 14px;border-bottom:1px solid var(--color-border)}.school-overview-profile-card{background:transparent;border:none;border-radius:0;overflow:visible;padding-top:4px;padding-bottom:6px}.school-overview-profile-identity{align-items:flex-start}.school-overview-profile-name-logo{width:36px;height:36px}.school-overview-profile-name{font-size:16px}.school-overview-profile-subtitle,.school-overview-info-value{font-size:12.5px}.school-overview-profile-id{width:100%;justify-content:center}.school-overview-info-grid{grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--color-border)}.school-overview-info-item{padding:10px 0;border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.school-overview-info-item:nth-child(odd){padding-right:10px}.school-overview-info-item:nth-child(2n){padding-left:10px}.school-overview-info-item:nth-child(2n){border-right:none}.school-overview-info-item:last-child{grid-column:1 / -1}.school-overview-info-label{font-size:10px}.school-overview-section-title{font-size:15px;line-height:1.3}.iit-batches-heading{margin-top:18px;margin-bottom:14px}.iit-batches-table th{font-size:10px;padding-top:10px;padding-bottom:10px}.iit-batches-table td{font-size:9.5px;padding:6px 2px;line-height:1.25}.school-overview-section>div[style*=overflow-x]{margin-left:0;margin-right:0;border:1px solid var(--color-border)!important;border-radius:0!important}.iit-batches-table{min-width:980px!important}.overview-teachers-table{min-width:760px!important}.overview-teachers-table th{font-size:9.5px;padding:9px 10px}.overview-teachers-table td{font-size:9.5px;padding:6px 7px;line-height:1.25}.overview-teachers-table .assignment-tag{white-space:nowrap;font-size:9px;padding:3px 6px}}.page-back-nav{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--primary-600)!important;text-decoration:none!important;margin-bottom:20px;cursor:pointer;background:none;border:none;padding:0;font-family:inherit;transition:color .15s ease}.page-back-nav:hover,.page-back-nav:focus,.page-back-nav:active{color:var(--primary-700)!important;text-decoration:none!important}.btn-link-primary{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;background:var(--primary-600);color:#fff!important;border:none;border-radius:9px;font-size:13.5px;font-weight:700;text-decoration:none!important;cursor:pointer;transition:background .15s ease,box-shadow .15s ease,transform .1s ease;box-shadow:0 2px 8px #2563eb40;font-family:inherit;min-height:40px;white-space:nowrap}.btn-link-primary:hover{background:var(--primary-700);box-shadow:0 4px 14px #2563eb59;transform:translateY(-1px)}.btn-link-primary:active{transform:scale(.98)}.form-page-wrap{width:100%;max-width:none}.school-form{width:100%}.school-form-alert{margin-bottom:18px}.school-form-section{padding:18px 0 22px;border-bottom:1px solid var(--color-border)}.school-form-section:first-of-type{padding-top:0}.school-form-section-title{margin:0 0 16px;color:var(--primary-700);font-size:14px;font-weight:800;letter-spacing:0}.school-form-grid{display:grid;gap:16px;width:100%;min-width:0}.school-form-grid--main{grid-template-columns:minmax(280px,1.1fr) minmax(320px,.9fr);margin-bottom:18px}.school-form-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}.school-form .form-field{display:flex;flex-direction:column;gap:7px;min-width:0}.school-form .form-label{color:#334155;font-size:12.5px;font-weight:700}.school-form .form-input{min-height:40px;border-radius:8px;font-size:13.5px}.school-id-preview-input{background-color:#f1f5f9;font-weight:700}.school-logo-input-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px}.school-logo-upload-btn{min-height:40px;padding:9px 13px;cursor:pointer;white-space:nowrap}.school-logo-file-input{display:none}.school-logo-preview-wrap{position:relative;flex-shrink:0}.school-logo-preview{display:block;height:40px;width:40px;object-fit:contain;border-radius:8px;border:1px solid #cbd5e1;background:#fff;padding:3px}.school-logo-remove{position:absolute;top:-7px;right:-7px;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border:0;border-radius:50%;background:#ef4444;color:#fff;font:inherit;font-size:10px;font-weight:800;line-height:1;cursor:pointer;box-shadow:0 2px 4px #0f172a2e}.school-form-actions{justify-content:flex-start;margin-top:20px}.school-form-help{margin-top:12px;padding-top:18px}.form-section-card{background:#fff;border:1px solid var(--color-border);border-radius:12px;padding:20px;margin-bottom:16px}.form-section-title{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.7px;color:var(--primary-600);margin:0 0 16px;display:flex;align-items:center;gap:6px;padding-bottom:12px;border-bottom:1px solid var(--primary-100)}.form-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px}.form-field{display:flex;flex-direction:row;gap:5px}.form-label{font-size:12.5px;font-weight:500;color:var(--color-text-main)}.form-input{width:100%;border:1px solid var(--color-border);background:#fff;color:var(--color-text-main);border-radius:9px;padding:10px 12px;font-size:14px;outline:none;font-family:inherit;transition:box-shadow .2s ease,border-color .2s ease;min-height:42px}.form-input:focus{border-color:var(--primary-600);box-shadow:0 0 0 3px var(--ring)}.form-input[readonly]{background:var(--primary-50);border-color:var(--primary-200);color:var(--primary-700);font-weight:700;font-family:JetBrains Mono,Fira Code,ui-monospace,monospace;letter-spacing:.5px}.form-help{font-size:11.5px;color:var(--color-text-muted);margin:0}.school-id-preview-wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;background:linear-gradient(135deg,#0f172a,#1e293b);border:1px solid rgba(255,255,255,.1);border-radius:12px;margin-bottom:24px;box-shadow:0 4px 14px #0f172a1f;transition:all .25s ease}.school-id-preview-wrap.has-id{background:linear-gradient(135deg,#064e3b,#047857);border-color:#10b981}.school-id-preview-label{font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:1px;color:#38bdf8}.school-id-preview-wrap.has-id .school-id-preview-label{color:#6ee7b7}.school-id-preview-value{font-size:26px;font-weight:800;color:#60a5fa;font-family:JetBrains Mono,Fira Code,ui-monospace,monospace;letter-spacing:2px}.school-id-preview-wrap.has-id .school-id-preview-value{color:#fff}.form-actions{display:flex;align-items:center;gap:12px;padding-top:8px}.alert-banner{display:flex;align-items:flex-start;gap:10px;padding:11px 14px;border-radius:10px;font-size:13px;line-height:1.4;margin-bottom:16px;animation:fadeIn .2s ease}.alert-banner--error{background:var(--danger-bg);border:1px solid var(--danger-border);color:var(--danger-text)}.alert-banner--warning{background:var(--warning-bg);border:1px solid var(--warning-border);color:var(--warning-text)}.alert-banner--success{background:var(--success-bg);border:1px solid var(--success-border);color:var(--success-text)}.alert-banner--info{background:var(--info-bg);border:1px solid var(--info-border);color:var(--info-text)}.alert-banner-icon{font-size:15px;flex-shrink:0;margin-top:1px}.table-toolbar{display:flex;align-items:center;gap:10px;padding:16px 32px;background:#fff;border-bottom:1px solid var(--color-border);flex-wrap:wrap}.table-search-wrap{position:relative;flex:1;min-width:200px;max-width:380px}.table-search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);font-size:14px;color:var(--color-text-subtle);pointer-events:none}.table-search-input{width:100%;padding:9px 12px 9px 36px;border:1px solid var(--color-border);border-radius:9px;font-size:13.5px;font-family:inherit;color:var(--color-text-main);background:#fff;outline:none;transition:border-color .2s,box-shadow .2s;min-height:40px}.table-search-input:focus{border-color:var(--primary-600);box-shadow:0 0 0 3px var(--ring)}.table-search-clear{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:none;border:none;font-size:13px;color:var(--color-text-subtle);cursor:pointer;padding:4px;line-height:1}.results-count-label{font-size:12.5px;color:var(--color-text-muted);font-weight:500;white-space:nowrap;margin-left:auto}.data-table-outer{overflow-x:auto}.data-table{width:100%;min-width:680px;border-collapse:collapse;background:#fff}.data-table thead tr{background:#f8fafc;border-bottom:1.5px solid var(--color-border)}.data-table th{padding:12px 16px;text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--color-text-muted);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .15s;vertical-align:middle}.data-table th.text-center,.data-table td.text-center{text-align:center}.data-table th:hover{color:var(--color-text-main)}.data-table th.sorted{color:var(--primary-600)}.data-table th .sort-arrow{margin-left:4px;font-size:10px;opacity:.7}.data-table tbody tr{border-bottom:1px solid #f1f5f9;cursor:pointer;transition:background .12s ease}.data-table tbody tr:hover{background:#f8fafc}.data-table tbody tr.row-expanded{background:#eff6ff}.data-table tbody tr:last-child{border-bottom:none}.data-table tbody tr td:first-child{border-left:3px solid transparent;transition:border-left-color .15s ease}.data-table tbody tr:hover td:first-child,.data-table tbody tr.row-expanded td:first-child{border-left-color:var(--primary-500)}.data-table td{padding:12px 16px;font-size:13.5px;color:var(--color-text-main);max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.school-id-badge{display:inline-flex;align-items:center;padding:3px 9px;background:var(--primary-50);border:1px solid var(--primary-200);border-radius:6px;font-size:12px;font-weight:700;color:var(--primary-700);font-family:JetBrains Mono,ui-monospace,monospace;letter-spacing:.5px}.count-chip{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:22px;padding:0 7px;background:#f1f5f9;border:1px solid var(--color-border);border-radius:6px;font-size:12px;font-weight:600;color:var(--color-text-muted)}.btn-icon-expand{display:inline-flex;align-items:center;gap:4px;padding:5px 10px;border:1px solid var(--color-border);border-radius:7px;background:#fff;font-size:12px;font-weight:500;color:var(--color-text-muted);cursor:pointer;transition:all .15s;font-family:inherit}.btn-icon-expand:hover{border-color:var(--primary-400);color:var(--primary-600);background:var(--primary-50)}.btn-icon-delete{display:inline-flex;align-items:center;gap:4px;padding:5px 10px;border:1px solid var(--danger-border);border-radius:7px;background:#fff;font-size:12px;font-weight:500;color:var(--danger-text);cursor:pointer;transition:all .15s;font-family:inherit}.btn-icon-delete:hover{background:var(--danger-bg)}.detail-row td{padding:0;background:#f8fafc}.detail-row-inner{padding:24px 32px 30px;display:flex;flex-direction:column;gap:18px;border-top:1px dashed var(--color-border);min-width:0;max-width:100%;box-sizing:border-box}.detail-row-inner>div{min-width:0;max-width:100%;box-sizing:border-box}.detail-section-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--primary-600);margin:0 0 12px}.school-detail-tabs{display:flex;align-items:center;gap:22px;width:100%;max-width:100%;padding:0;border-bottom:1px solid var(--color-border);background:transparent}.school-detail-tab{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0 0 9px;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:var(--color-text-muted);font-family:inherit;font-size:12.5px;font-weight:700;cursor:pointer;transition:border-color .15s ease,color .15s ease}.school-detail-tab span{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:20px;padding:0 6px;border-radius:999px;background:var(--color-bg);color:var(--color-text-muted);font-size:11px}.school-detail-tab:hover{color:var(--color-text-main)}.school-detail-tab--active{border-bottom-color:var(--primary-600);color:var(--primary-700)}.school-detail-tab--active span{background:var(--primary-50);color:var(--primary-700)}.school-detail-panel{min-width:0;max-width:100%;padding-top:0}.detail-inner-table-wrap{width:100%;max-width:100%;min-width:0;overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--color-border);border-radius:7px;background:#fff;box-sizing:border-box}.detail-inner-table{width:100%;border-collapse:separate;border-spacing:0;min-width:720px;table-layout:fixed}.detail-mobile-card-list{display:none}.detail-inner-table th{background:#f8fafc;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.45px;color:var(--color-text-muted);border-bottom:1px solid var(--color-border);text-align:center;white-space:nowrap}.detail-inner-table td{padding:7px 24px;font-size:12px;line-height:1.7;color:var(--color-text-main);border-bottom:1px solid var(--color-border);max-width:none;vertical-align:middle;text-align:center;white-space:normal;overflow-wrap:anywhere}.detail-inner-table tbody tr{min-height:70px}.detail-inner-table--classes th:nth-child(1),.detail-inner-table--classes td:nth-child(1){width:15%}.detail-inner-table--classes th:nth-child(2),.detail-inner-table--classes td:nth-child(2){width:13%}.detail-inner-table--classes th:nth-child(3),.detail-inner-table--classes td:nth-child(3){width:20%}.detail-inner-table--classes th:nth-child(4),.detail-inner-table--classes td:nth-child(4){width:18%}.detail-inner-table--classes th:nth-child(5),.detail-inner-table--classes td:nth-child(5){width:16%}.detail-inner-table--classes th:nth-child(6),.detail-inner-table--classes td:nth-child(6){width:18%}.detail-inner-table--teachers th:nth-child(1),.detail-inner-table--teachers td:nth-child(1){width:18%}.detail-inner-table--teachers th:nth-child(2),.detail-inner-table--teachers td:nth-child(2){width:24%}.detail-inner-table--teachers th:nth-child(3),.detail-inner-table--teachers td:nth-child(3){width:18%}.detail-inner-table--teachers th:nth-child(4),.detail-inner-table--teachers td:nth-child(4){width:40%}.detail-inner-table th+th,.detail-inner-table td+td{border-left:1px solid #f1f5f9}.detail-inner-table td:last-child{white-space:normal}.detail-inner-table tbody tr:last-child td{border-bottom:none}.detail-inner-table tbody tr:hover{background:#f8fbff}.assignment-tag{display:inline-flex;align-items:center;justify-content:center;padding:5px 12px;background:var(--primary-100);border:1px solid var(--primary-200);border-radius:999px;font-size:11px;font-weight:600;color:var(--primary-700);white-space:nowrap;margin:5px 6px}.empty-inline{font-size:12.5px;color:var(--color-text-subtle);font-style:italic;padding:10px 0}@media (max-width: 768px){.table-toolbar--mobile-hidden,.data-table-outer--mobile-hidden{display:none!important}.detail-row-inner{gap:14px!important;padding:0!important;min-width:0!important;max-width:100%!important;width:100%!important;box-sizing:border-box!important}.detail-row-inner>div{min-width:0!important;max-width:100%!important;width:100%!important;box-sizing:border-box!important}.school-detail-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:14px}.school-detail-tab{justify-content:center;width:100%}.school-mobile-detail-page{width:100%;padding:4px 0 18px}.school-mobile-detail-header{display:grid;gap:12px;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid var(--color-border)}.school-mobile-detail-header h2{margin:0;font-size:18px;line-height:1.25;color:var(--color-text-main)}.school-mobile-detail-header p{margin:4px 0 0;font-size:12px;color:var(--color-text-muted)}.school-mobile-detail-page .page-back-nav{width:fit-content}.school-card-detail{padding:10px 8px!important;max-width:100%!important;overflow:hidden!important;box-sizing:border-box!important}.detail-inner-table-wrap{display:none!important}.detail-mobile-card-list{display:grid;gap:10px}.detail-mobile-card{padding:12px;border:1px solid var(--color-border);border-radius:8px;background:#fff}.detail-mobile-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:9px;border-bottom:1px solid var(--color-border)}.detail-mobile-card-head strong{font-size:14px;color:var(--color-text-main)}.detail-mobile-card-head span{flex:0 0 auto;font-size:11px;font-weight:700;color:var(--primary-700);background:var(--primary-50);border:1px solid var(--primary-100);border-radius:999px;padding:3px 8px}.detail-mobile-card dl{display:grid;gap:8px;margin:10px 0 0}.detail-mobile-card dl>div{display:grid;grid-template-columns:minmax(90px,.42fr) minmax(0,1fr);gap:10px}.detail-mobile-card dt{margin:0;font-size:10px;font-weight:700;color:var(--color-text-subtle);text-transform:uppercase}.detail-mobile-card dd{margin:0;min-width:0;font-size:12px;color:var(--color-text-main);text-align:right;overflow-wrap:anywhere}.assignment-tag{font-size:9.5px!important;padding:1px 5px!important;white-space:normal!important;word-break:break-word!important}}.table-empty-state{text-align:center;padding:48px 24px}.table-empty-icon{font-size:40px;margin-bottom:10px}.table-empty-title{font-size:15px;font-weight:700;color:var(--color-text-main);margin:0 0 4px}.table-empty-body{font-size:13px;color:var(--color-text-muted);margin:0}.school-cards-mobile{display:none;flex-direction:column;gap:12px;padding:20px 16px}.school-card-m{background:#fff;border:1px solid var(--color-border);border-radius:14px;overflow:hidden;box-shadow:var(--shadow-sm);transition:box-shadow .2s ease,transform .2s ease}.school-card-m:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.school-card-m-top{padding:14px 16px 12px}.school-card-m-row1{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:8px}.school-card-m-name{font-size:15px;font-weight:700;color:var(--color-text-main);line-height:1.3;flex:1}.school-card-m-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.school-meta-tag{display:inline-flex;align-items:center;gap:3px;padding:3px 8px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:6px;font-size:11.5px;color:var(--color-text-muted);font-weight:500}.school-card-m-counts{display:flex;gap:14px}.school-count-item{display:flex;align-items:center;gap:5px;font-size:12.5px;color:var(--color-text-muted);font-weight:500}.school-count-num{font-weight:700;color:var(--color-text-main)}.school-card-m-actions{display:flex;gap:8px;padding:10px 16px;border-top:1px solid var(--color-border);background:#fafafa}.school-card-m-actions .btn-icon-expand,.school-card-m-actions .btn-icon-delete{flex:1;justify-content:center}.school-card-detail{padding:14px 16px;background:#f8fafc;border-top:1px dashed var(--color-border)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a80;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px;animation:modalFadeIn .18s ease}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.modal-box{background:#fff;border-radius:16px;padding:28px;max-width:420px;width:100%;box-shadow:0 24px 48px -12px #0f172a4d;animation:modalSlideUp .22s cubic-bezier(.16,1,.3,1)}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-icon{width:48px;height:48px;background:var(--danger-bg);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:24px;margin-bottom:16px}.modal-title{font-size:18px;font-weight:800;color:var(--color-text-main);margin:0 0 8px}.modal-body{font-size:13.5px;color:var(--color-text-muted);line-height:1.55;margin:0 0 8px}.modal-school-id{font-family:JetBrains Mono,ui-monospace,monospace;font-weight:700;color:var(--danger-text);background:var(--danger-bg);border:1px solid var(--danger-border);padding:2px 7px;border-radius:5px;font-size:13px}.modal-warning-note{font-size:12.5px;color:var(--warning-text);background:var(--warning-bg);border:1px solid var(--warning-border);border-radius:8px;padding:9px 12px;margin:14px 0;display:flex;align-items:center;gap:7px}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.btn-modal-cancel{padding:10px 20px;border:1px solid var(--color-border);border-radius:9px;background:#fff;font-size:14px;font-weight:600;color:var(--color-text-main);cursor:pointer;font-family:inherit;transition:background .15s}.btn-modal-cancel:hover{background:var(--color-surface-hover)}.btn-modal-delete{padding:10px 20px;border:none;border-radius:9px;background:#dc2626;font-size:14px;font-weight:700;color:#fff;cursor:pointer;font-family:inherit;transition:background .15s;box-shadow:0 2px 8px #dc262640}.btn-modal-delete:hover{background:#b91c1c}.btn-modal-delete:disabled{opacity:.6;cursor:not-allowed}@keyframes skeletonPulse{0%,to{opacity:1}50%{opacity:.4}}.skeleton{background:#e2e8f0;border-radius:6px;animation:skeletonPulse 1.4s ease-in-out infinite}.skeleton-row{display:flex;align-items:center;gap:14px;padding:14px 16px;border-bottom:1px solid #f1f5f9}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 16px;border-radius:9px;font-size:13.5px;font-weight:600;cursor:pointer;transition:all .15s ease;border:none;font-family:inherit;min-height:38px;text-decoration:none!important}.btn:hover,.btn:focus,.btn:active,.btn:visited{text-decoration:none!important}.btn-primary{background:var(--primary-600);color:#fff!important;box-shadow:0 2px 6px #2563eb33;text-decoration:none!important}.btn-primary:hover{background:var(--primary-700);color:#fff!important;text-decoration:none!important}.btn-primary:active{transform:scale(.98)}.btn-outline{background:#fff;color:var(--color-text-main)!important;border:1px solid var(--color-border);text-decoration:none!important}.btn-outline:hover{background:var(--color-surface-hover);border-color:var(--color-border-hover);color:var(--color-text-main)!important;text-decoration:none!important}.btn-danger{background:#dc2626;color:#fff!important;text-decoration:none!important}.btn-danger:hover{background:#b91c1c;color:#fff!important;text-decoration:none!important}.btn-ghost{background:transparent;color:var(--color-text-muted)!important;text-decoration:none!important}.btn-ghost:hover{background:var(--color-surface-hover);color:var(--color-text-main)!important;text-decoration:none!important}.btn-sm{padding:6px 12px;font-size:12.5px;min-height:32px;text-decoration:none!important}.fullscreen-split-layout{width:100%;min-height:calc(100vh - 65px);display:flex;flex-direction:row;align-items:center;background:#fff}.fullscreen-split-layout--no-image{justify-content:center}.fullscreen-split-layout--no-image .right-form-half{width:min(100%,560px)}.left-image-half{flex:1.25;min-height:calc(100vh - 65px);display:flex;align-items:center;justify-content:center;padding:24px;background:#fff}.full-hero-image{max-width:680px;max-height:620px;width:100%;height:auto;object-fit:contain;transition:transform .4s cubic-bezier(.16,1,.3,1)}.full-hero-image:hover{transform:scale(1.02)}.right-form-half{flex:1;display:flex;flex-direction:column;justify-content:center;padding:clamp(32px,5vw,64px);max-width:560px;margin:0 auto}@media (max-width: 880px){.fullscreen-split-layout{flex-direction:column!important;min-height:auto!important;padding:0!important}.left-image-half{min-height:auto!important;padding:10px 16px 0!important;flex:0 0 auto!important}.full-hero-image{max-width:180px!important;max-height:120px!important}.right-form-half{padding:8px 20px 20px!important;max-width:100%!important}}@media (max-width: 480px){.full-hero-image{max-width:150px!important;max-height:100px!important}.right-form-half{padding:4px 16px 16px!important}.btn-pill-primary,.btn-pill-secondary{padding:8px 16px!important;min-height:38px!important;font-size:13px!important}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-40px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}.slide-in-left{animation:slideInLeft .45s cubic-bezier(.16,1,.3,1) forwards}.slide-in-right{animation:slideInRight .45s cubic-bezier(.16,1,.3,1) forwards}.role-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.role-card{position:relative;overflow:hidden;background:#fff;border:1px solid var(--color-border);border-radius:14px;padding:16px 14px;display:flex;flex-direction:column;align-items:center;text-align:center;cursor:pointer;z-index:1;outline:none;transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s,border-color .25s}.role-card:after{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--card-accent, var(--primary-600));border-radius:14px 14px 0 0}.role-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:var( --card-hover-bg, linear-gradient(135deg, #eff6ff 0%, #e0e7ff 100%) );z-index:-1;transform:translateY(100%);transition:transform .25s cubic-bezier(.16,1,.3,1)}.role-card:hover:before{transform:translateY(0)}.role-card:hover{transform:translateY(-3px);border-color:var(--card-accent, var(--primary-400));box-shadow:0 10px 24px -4px #0f172a1f}.role-card:active{transform:scale(.98)}.role-card:focus-visible{outline:2px solid var(--card-accent, var(--primary-600));outline-offset:2px}.role-icon-box{width:44px;height:44px;border-radius:12px;background:var(--icon-bg, var(--primary-50));border:1px solid var(--icon-border, var(--primary-100));display:flex;align-items:center;justify-content:center;font-size:22px;margin-bottom:8px;transition:transform .25s,background-color .25s}.role-card:hover .role-icon-box{transform:scale(1.1) rotate(-3deg);background:#fff}.role-card-title{margin:0 0 4px;font-size:15px;font-weight:700;color:var(--color-text-main)}.role-card-blurb{margin:0 0 12px;font-size:11.5px;color:var(--color-text-muted);line-height:1.4;flex:1}.role-action-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;font-size:11.5px;font-weight:600;color:var(--card-accent, var(--primary-600));background:var(--icon-bg, var(--primary-50));border:1px solid var(--icon-border, var(--primary-200));border-radius:999px;transition:all .25s}.role-card:hover .role-action-btn{background:var(--card-accent, var(--primary-600));color:#fff;border-color:var(--card-accent, var(--primary-600));box-shadow:0 3px 10px #00000026}label{display:block;font-size:12.5px;font-weight:600;color:var(--color-text-main);margin-bottom:6px}input,select,textarea{width:100%;border:1px solid var(--color-border);background:#fff;color:var(--color-text-main);border-radius:10px;padding:12px 16px;font-size:14px;outline:none;font-family:inherit;transition:box-shadow .2s,border-color .2s}input[readonly]{background:#f8fafc;color:var(--color-text-muted)}input:focus,select:focus,textarea:focus{border-color:var(--primary-600);box-shadow:0 0 0 4px var(--ring)}.btn-pill-primary{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;border-radius:999px;padding:12px 32px;min-height:48px;font-weight:700;font-size:14px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;color:#fff;box-shadow:0 6px 18px #2563eb40;transition:all .2s}.btn-pill-primary:hover{transform:translateY(-1px);box-shadow:0 8px 24px #2563eb59}.btn-pill-secondary{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--color-border);border-radius:999px;padding:12px 24px;min-height:48px;font-weight:600;font-size:14px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#fff;color:var(--color-text-main);transition:all .2s}.btn-pill-secondary:hover{background:#f8fafc;border-color:var(--color-border-hover)}.toolbar-export-slot{display:flex;align-items:center;gap:8px;margin-left:auto}@keyframes fadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn .22s ease-out forwards}@keyframes spin{to{transform:rotate(360deg)}}.spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin .6s linear infinite}@media (max-width: 1024px) and (min-width: 769px){.sidebar-rail{width:56px}.sidebar-nav-label,.sidebar-section-label{display:none}.sidebar-nav-item{justify-content:center;padding:10px;margin:1px 4px;width:calc(100% - 8px)}.sidebar-nav-item--active{margin-left:0;padding-left:10px;width:calc(100% - 4px);border-radius:0 8px 8px 0}.sidebar-footer{padding:10px 6px}.sidebar-admin-details{display:none}.sidebar-admin-info{padding:6px;justify-content:center;border:none;background:transparent}.sidebar-logout-btn{justify-content:center;padding:10px}.sidebar-status span,.sidebar-version{display:none}.page-header,.page-content{padding:16px 20px}.table-toolbar{padding:12px 20px}}@media (max-width: 768px){.mobile-topbar{display:flex}.schools-header--mobile-hidden{display:none!important}.admin-layout{flex-direction:column}.sidebar-rail{display:flex!important;position:fixed!important;top:0!important;left:0!important;bottom:0!important;width:270px!important;z-index:1000!important;transform:translate(-100%);transition:transform .3s cubic-bezier(.16,1,.3,1);box-shadow:none;height:100vh!important}.sidebar-rail--open{transform:translate(0)!important;box-shadow:8px 0 32px #00000080!important}.sidebar-close-btn{display:flex!important}.sidebar-nav-label,.sidebar-section-label,.sidebar-status span,.sidebar-version{display:block!important}.sidebar-nav-item{justify-content:flex-start!important;padding:10px 14px 10px 18px!important;margin:1px 8px!important;width:calc(100% - 16px)!important}.sidebar-nav-item--active{padding-left:22px!important;width:calc(100% - 8px)!important}.data-table-outer{display:none}.omr-results .data-table-outer.omr-data-table-outer{display:block;margin:0 16px 18px;overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--color-border);border-radius:10px;background:#fff}.omr-results .data-table.omr-data-table{display:table;width:100%;min-width:1180px;border-collapse:collapse}.omr-results .data-table.omr-data-table thead{display:table-header-group}.omr-results .data-table.omr-data-table tbody{display:table-row-group}.omr-results .data-table.omr-data-table tr{display:table-row;margin:0;border:0;border-radius:0;box-shadow:none;background:inherit;overflow:visible}.omr-results .data-table.omr-data-table th,.omr-results .data-table.omr-data-table td{display:table-cell;width:auto;padding:10px 12px;text-align:left;vertical-align:middle;white-space:nowrap}.omr-results .data-table.omr-data-table td:before{content:none}.school-cards-mobile{display:flex}.role-card-grid{grid-template-columns:repeat(2,1fr)!important;gap:10px!important}.form-grid-2,.form-grid-3,.detail-row-inner{grid-template-columns:1fr!important}.page-header{padding:14px 16px;flex-direction:column;align-items:stretch;gap:12px}.page-header-actions{width:100%}.page-header-actions .btn-link-primary{width:100%;justify-content:center}.page-content{padding:14px 16px}.table-toolbar{padding:12px 16px;flex-direction:column;align-items:stretch;gap:10px}.table-search-wrap{max-width:100%}.toolbar-export-slot{margin-left:0;width:100%}.form-actions{flex-direction:column;gap:10px}.form-actions .btn{width:100%}.school-form-grid--main,.school-form-grid--three,.school-logo-input-row{grid-template-columns:1fr}.school-logo-upload-btn{width:100%;justify-content:center}.school-id-preview-wrap{flex-direction:column;align-items:flex-start;gap:8px}}.app-header{position:sticky;top:0;z-index:100}@media (max-width: 768px){.app-header{justify-content:center!important}.app-hamburger-btn{display:flex;position:absolute;left:16px;align-items:center;justify-content:center;background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text-main);font-size:18px;padding:6px 10px;cursor:pointer;z-index:101}.app-user-meta--teacher{display:none!important}}@media (min-width: 769px){.app-hamburger-btn{display:none}}.report-buttons-wrap{display:flex;flex-direction:column;gap:4px}.report-buttons-row{display:flex;gap:8px}.btn-report{padding:8px 16px;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;gap:6px;transition:background-color .15s ease}.btn-report--pdf{background-color:#1a56db}.btn-report--pdf:hover:not(.disabled){background-color:#1e40af}.btn-report--csv{background-color:#10b981}.btn-report--csv:hover:not(.disabled){background-color:#059669}.btn-report.disabled{background-color:#9ca3af;cursor:not-allowed}.report-last-updated{font-size:11px;color:#64748b;font-style:italic;text-align:right}@media (max-width: 768px){.report-buttons-wrap,.report-buttons-row{width:100%}.report-buttons-row .btn-report{flex:1}.report-last-updated{text-align:center;margin-top:4px}}.h3{margin:0 0 16px;font-size:17px;font-weight:700;color:var(--color-text-main)}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px}.row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.help{font-size:11.5px;color:var(--color-text-muted);margin:0}.ct-reg-wrap{width:100%;margin:10px auto}.ct-reg-wrap .form-field{display:flex;flex-direction:column;gap:6px;min-width:0}.ct-reg-wrap .form-label{display:block;margin:0;font-size:12.5px;font-weight:700;color:#334155}.ct-section{margin-bottom:24px}.ct-section-title{font-size:15px;font-weight:700;color:var(--color-text-main);margin-bottom:12px;padding-bottom:6px;border-bottom:1.5px solid var(--color-border)}.ct-section-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;padding-bottom:6px;border-bottom:1.5px solid var(--color-border);flex-wrap:wrap}.ct-form-page-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;padding-bottom:8px;border-bottom:1.5px solid var(--color-border);flex-wrap:wrap}.ct-compact-table-outer{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--color-border);border-radius:8px;background:#fff}.ct-compact-table{width:100%;border-collapse:collapse;font-size:12.5px}.ct-compact-table th{padding:9px 12px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;text-align:center;color:var(--color-text-muted);background:#f8fafc;border-bottom:1px solid var(--color-border);white-space:nowrap}.ct-compact-table td{padding:10px 12px;font-size:12.5px;text-align:center;border-bottom:1px solid #f1f5f9;vertical-align:middle;white-space:nowrap}.ct-compact-table th.text-left,.ct-compact-table td.text-left{text-align:left}@media (max-width: 768px){.ct-compact-table th,.ct-compact-table td{padding:8px 10px;font-size:11.5px}}.ct-subtabs-wrap{margin-bottom:20px;border-bottom:2px solid var(--color-border)}.ct-subtabs{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding-bottom:2px}.ct-subtabs::-webkit-scrollbar{display:none}.ct-subtab-btn{padding:10px 18px;background:transparent;border:none;border-bottom:3px solid transparent;font-size:13.5px;font-weight:600;color:var(--color-text-muted);cursor:pointer;white-space:nowrap;transition:all .15s ease;font-family:inherit;margin-bottom:-2px}.ct-subtab-btn:hover{color:var(--primary-600);background:#2563eb0a;border-radius:6px 6px 0 0}.ct-subtab-btn.active{color:var(--primary-600);border-bottom-color:var(--primary-600);font-weight:700}.ct-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:20px}.ct-stat-card{display:flex;align-items:center;gap:12px;padding:14px 18px;background:#fff;border:1px solid var(--color-border);border-radius:12px;box-shadow:0 2px 6px #00000008;cursor:pointer;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.ct-stat-card:hover{transform:translateY(-2px);border-color:var(--primary-400);box-shadow:0 6px 16px #2563eb14}.ct-stat-icon{font-size:24px;width:44px;height:44px;border-radius:10px;background:var(--primary-50);display:flex;align-items:center;justify-content:center;flex-shrink:0}.ct-stat-num{font-size:22px;font-weight:800;color:var(--color-text-main);line-height:1.1}.ct-stat-label{font-size:11.5px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.ct-filter-bar{display:flex;align-items:center;gap:8px;margin-bottom:16px;flex-wrap:wrap}.ct-filter-label{font-size:12px;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.ct-filter-chip{padding:5px 12px;border:1px solid var(--color-border);border-radius:99px;background:#fff;font-size:12px;font-weight:600;color:var(--color-text-muted);cursor:pointer;transition:all .15s ease;font-family:inherit}.ct-filter-chip:hover{border-color:var(--primary-400);color:var(--primary-600)}.ct-filter-chip.active{background:var(--primary-600);color:#fff;border-color:var(--primary-600)}@media (max-width: 768px){.ct-stat-grid{grid-template-columns:1fr;gap:10px}.ct-subtab-btn{padding:8px 12px;font-size:12.5px}}.td-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:14px;padding:clamp(16px,3vw,28px);margin-bottom:20px;box-shadow:0 1px 4px #0000000f}.td-section-title{margin:0 0 16px;font-size:clamp(16px,2vw,20px);font-weight:700;color:var(--color-text-main)}.td-profile-grid{display:flex;align-items:center;gap:clamp(12px,3vw,24px);flex-wrap:wrap}.td-avatar-wrap{flex-shrink:0}.td-avatar-circle{width:clamp(52px,8vw,72px);height:clamp(52px,8vw,72px);border-radius:50%;background:linear-gradient(135deg,var(--primary-500),var(--primary-700));color:#fff;font-size:clamp(22px,4vw,32px);font-weight:800;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #3b82f64d}.td-profile-info{flex:1;min-width:0}.td-profile-name{margin:0 0 10px;font-size:clamp(18px,2.5vw,24px);font-weight:800;color:var(--color-text-main)}.td-profile-meta{display:flex;flex-wrap:wrap;gap:8px}.td-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:99px;font-size:12px;font-weight:600}.td-badge--blue{background:var(--primary-100);color:var(--primary-700)}.td-badge--gray{background:var(--color-bg-alt);color:var(--color-text-muted)}.td-assignments-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px}.td-assignment-card{background:var(--color-bg-alt);border:1px solid var(--color-border);border-radius:10px;padding:14px 16px;transition:transform .18s,box-shadow .18s}.td-assignment-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000017}.td-assignment-header{margin-bottom:8px}.td-class-tag{display:inline-block;background:var(--primary-500);color:#fff;padding:4px 10px;border-radius:6px;font-size:13px;font-weight:600}.td-subject-label{font-size:14px;color:var(--color-text-main);margin-top:4px}.td-no-data{color:var(--color-text-muted);font-size:15px;font-style:italic;text-align:center;padding:24px}.td-best-banner{margin-bottom:16px;padding:10px 16px;background:var(--primary-50);border:1px solid var(--primary-200);border-radius:10px;text-align:center;font-size:14px;font-weight:500;color:var(--color-text-main)}.td-grade-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px;margin-top:12px}.td-grade-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:16px 12px;text-align:center;box-shadow:0 1px 4px #0000000d;transition:transform .18s,box-shadow .18s}.td-grade-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px #0000001a}.td-grade-label{font-size:12px;font-weight:700;color:var(--color-text-muted);margin-bottom:6px;text-transform:uppercase;letter-spacing:.5px}.td-grade-exam{font-size:13px;font-weight:600;color:var(--color-text-main);margin-bottom:4px;word-break:break-word}.td-grade-score{font-size:clamp(20px,3vw,26px);font-weight:800;color:var(--primary-600)}.td-grade-sub{font-size:11px;color:var(--color-text-muted);margin-top:2px}.td-table-scroll{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:8px}.td-table{width:100%;border-collapse:collapse;min-width:480px;font-size:clamp(12px,1.5vw,14px)}.td-th{background:var(--color-bg-alt);padding:12px 14px;text-align:center;font-weight:700;color:var(--color-text-main);border-bottom:2px solid var(--color-border);white-space:nowrap;vertical-align:bottom}.td-th-sub{display:block;font-size:11px;font-weight:500;color:var(--color-text-muted);margin-top:2px}.td-td{padding:10px 14px;text-align:center;border-bottom:1px solid var(--color-border);vertical-align:middle}.td-td--pattern{text-align:left;font-weight:600;color:var(--color-text-main);white-space:nowrap}.td-tr-even{background:var(--color-surface)}.td-tr-odd{background:var(--color-bg-alt)}.td-score{display:inline-block;padding:3px 10px;border-radius:99px;font-size:13px;font-weight:700}.td-score--high{background:#dcfce7;color:#15803d}.td-score--mid{background:#fef9c3;color:#a16207}.td-score--low{background:#fee2e2;color:#b91c1c}.td-score--na{background:#f1f5f9;color:#94a3b8}.td-average-detail{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:128px}.td-average-detail__line{display:block;font-size:11px;line-height:1.25;color:var(--color-text-muted);white-space:nowrap}.td-average-detail--card{align-items:flex-end;min-width:116px}.td-report-card{text-align:center;max-width:560px;margin:0 auto}.td-report-icon{font-size:clamp(40px,8vw,64px);margin-bottom:12px}.td-report-title{font-size:clamp(20px,3vw,26px);font-weight:800;color:var(--color-text-main);margin:0 0 12px}.td-report-desc{font-size:14px;color:var(--color-text-muted);line-height:1.7;margin-bottom:24px}.td-report-stats{display:flex;justify-content:center;gap:clamp(16px,4vw,40px);margin-bottom:20px;flex-wrap:wrap}.td-stat-item{text-align:center}.td-stat-num{font-size:clamp(28px,5vw,40px);font-weight:800;color:var(--primary-600);line-height:1}.td-stat-label{font-size:12px;color:var(--color-text-muted);margin-top:4px;font-weight:500}.td-report-meta{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:28px;font-size:13px;color:var(--color-text-muted)}.td-report-btn{font-size:16px;padding:12px 32px;border-radius:99px;box-shadow:0 4px 16px #3b82f64d}.td-proxy-wrap{padding:clamp(16px,3vw,32px);width:100%;max-width:none;margin:0}.td-proxy-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:12px;margin-bottom:24px;padding-bottom:20px;border-bottom:2px solid var(--color-border)}.td-proxy-title{display:flex;align-items:center;gap:8px;font-size:clamp(20px,3vw,28px);font-weight:800;color:var(--color-text-main);margin:0 0 4px}.td-proxy-meta{font-size:14px;color:var(--color-text-muted);margin:0}@media (max-width: 640px){.td-assignments-grid{grid-template-columns:1fr}.td-grade-grid{grid-template-columns:repeat(2,1fr)}.td-proxy-header{flex-direction:column}.td-report-stats{gap:20px}}@media (max-width: 400px){.td-grade-grid{grid-template-columns:1fr}}.teacher-page-title{display:flex;align-items:center;gap:8px}.teacher-page-content{padding-top:16px}.teacher-page .td-card,.td-proxy-wrap .td-card{margin-bottom:16px;padding:18px;background:#fff;border:1px solid var(--color-border);border-radius:7px;box-shadow:none}.teacher-page .td-card--profile,.td-proxy-wrap .td-card--profile{background:linear-gradient(180deg,#fff,#fbfdff)}.teacher-page .td-section-title,.td-proxy-wrap .td-section-title{display:flex;align-items:center;gap:8px;margin-bottom:16px;font-size:16px;letter-spacing:0}.teacher-page .td-avatar-circle,.td-proxy-wrap .td-avatar-circle{width:54px;height:54px;border-radius:8px;background:var(--primary-600);font-size:22px;box-shadow:none}.teacher-page .td-profile-name,.td-proxy-wrap .td-profile-name{font-size:20px}.teacher-page .td-assignments-grid,.td-proxy-wrap .td-assignments-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}.teacher-page .td-assignment-card,.td-proxy-wrap .td-assignment-card,.teacher-page .td-grade-card,.td-proxy-wrap .td-grade-card{padding:12px;background:#f8fafc;border-radius:7px;box-shadow:none;transform:none}.teacher-page .td-class-tag,.td-proxy-wrap .td-class-tag{background:var(--primary-50);color:var(--primary-700);border:1px solid var(--primary-200);font-weight:800}.teacher-page .td-table-scroll,.td-proxy-wrap .td-table-scroll{border:1px solid var(--color-border);border-radius:7px}.teacher-page .td-table,.td-proxy-wrap .td-table{font-size:12px}.teacher-page .td-th,.td-proxy-wrap .td-th{padding:10px 12px;background:#f8fafc}.teacher-page .td-td,.td-proxy-wrap .td-td{padding:8px 12px}.teacher-page .td-report-card{max-width:560px;margin:0;text-align:left}.teacher-page .td-report-icon{display:inline-flex;color:var(--primary-700);font-size:0}.teacher-page .td-report-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;font-size:14px}.teacher-page .td-performance-actions{display:flex;justify-content:flex-end;margin-bottom:16px}.td-exam-average-cards{display:none}.td-rank-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px}.td-rank-summary{padding:12px;background:#f8fafc;border:1px solid var(--color-border);border-radius:7px}.td-rank-summary span{display:block;color:var(--color-text-muted);font-size:11px;font-weight:700}.td-rank-summary strong{display:block;margin-top:4px;color:var(--color-text-main);font-size:22px;font-weight:800}.td-rank-date{display:block;margin-top:3px;color:var(--color-text-muted);font-size:10.5px;font-weight:600}.td-rank-badge{display:inline-flex;align-items:center;justify-content:center;min-width:42px;padding:4px 8px;border-radius:999px;background:#f1f5f9;color:var(--color-text-main);font-size:12px;font-weight:800}.td-rank-badge--top{background:#dcfce7;color:#15803d}.td-rank-badge--good{background:#dbeafe;color:#1d4ed8}.td-rank-badge--muted{color:var(--color-text-muted)}.td-rank-cards{display:none}.td-rank-card{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px;background:#fff;border:1px solid var(--color-border);border-radius:7px}.td-rank-card strong,.td-rank-card span{display:block}.td-rank-card strong{color:var(--color-text-main);font-size:13px;line-height:1.25}.td-rank-card span{margin-top:2px;color:var(--color-text-muted);font-size:11px;font-weight:600}.td-rank-card__metrics{display:flex;align-items:center;gap:6px;flex-shrink:0}.td-exam-average-card{padding:10px;background:#fff;border:1px solid var(--color-border);border-radius:7px;margin-bottom:10px}.td-exam-average-card__title{color:var(--color-text-main);font-size:13px;font-weight:800;line-height:1.25}.td-exam-average-card__grid{display:grid;grid-template-columns:1fr;gap:6px;margin-top:10px}.td-exam-average-card__item{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;padding:7px 8px;background:#f8fafc;border:1px solid #f1f5f9;border-radius:6px}.td-exam-average-card__item span:first-child{display:block;color:var(--color-text-main);font-size:11px;font-weight:800}.td-exam-average-card__item small{display:block;margin-top:2px;color:var(--color-text-muted);font-size:10px;font-weight:600}@media (max-width: 560px){.teacher-page-content{padding:12px 14px 20px}.teacher-page .td-card,.td-proxy-wrap .td-card{padding:0;background:transparent;border:none;border-radius:0}.teacher-page .td-profile-grid,.td-proxy-wrap .td-profile-grid{align-items:flex-start}.teacher-page .td-avatar-circle,.td-proxy-wrap .td-avatar-circle{width:42px;height:42px;font-size:18px}.teacher-page .td-profile-name,.td-proxy-wrap .td-profile-name{font-size:17px}.teacher-page .td-badge,.td-proxy-wrap .td-badge{font-size:10.5px;padding:4px 7px}.teacher-page .td-table{min-width:620px;font-size:10.5px}.teacher-page .td-th,.teacher-page .td-td{padding:6px 5px;font-size:10.5px}.teacher-page .td-table-scroll{display:none}.teacher-page .td-exam-average-cards,.teacher-page .td-rank-cards{display:block}.teacher-page .td-rank-cards{display:grid;gap:8px}.teacher-page .td-rank-summary-grid{grid-template-columns:1fr}.teacher-page .td-performance-actions{justify-content:stretch}.teacher-page .td-performance-actions .td-report-btn{width:100%;justify-content:center}}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;overflow-x:hidden;overflow-x:clip}body,#root,main,.admin-layout,.page-canvas,.animate-fade-in,.page-content{min-width:0;max-width:100%}body{overflow-x:hidden;overflow-x:clip}img,video,canvas,svg{max-width:100%}input,select,textarea,button{max-width:100%;font:inherit}input,select,textarea{min-width:0}.legacy-responsive-page{width:100%;min-width:0;max-width:100%}.responsive-form-row>*,.responsive-filter-row>*{min-width:0}.responsive-table-scroll{width:100%;max-width:100%;overflow-x:auto!important;overflow-y:hidden;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}.responsive-table-scroll>table{min-width:620px}.guest-page{width:100%;min-width:0}.guest-card{width:100%;overflow-wrap:anywhere}@media (hover: none) and (pointer: coarse){button,.btn,.btn-link-primary,.sidebar-nav-item,.ct-subtab-btn,.ct-filter-chip{min-height:44px}}@media (max-width: 768px){.app-header{padding:8px 12px!important;gap:8px!important}.app-brand-group{min-width:0;max-width:calc(100% - 48px);gap:8px!important}.app-brand-group img{height:30px!important;max-width:92px!important}.app-brand-group>div:last-child{min-width:0}.app-brand-group>div:last-child>span:last-child{font-size:10px!important}.app-user-meta{width:100%;min-width:0;justify-content:center;gap:8px!important}.app-user-meta>div:first-child{min-width:0;max-width:calc(100% - 92px);padding-inline:10px!important}.app-user-meta>div:first-child span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.legacy-responsive-page{padding:12px!important}.responsive-form-row{flex-direction:column!important;gap:12px!important}.responsive-form-grid{grid-template-columns:minmax(0,1fr)!important}.responsive-tab-row{overflow-x:auto;max-width:100%;padding-bottom:4px;scrollbar-width:thin;-webkit-overflow-scrolling:touch}.responsive-tab-row>*{flex:0 0 auto;white-space:nowrap}.responsive-filter-row{flex-direction:column!important;align-items:stretch!important}.responsive-filter-row>*,.responsive-filter-row select,.legacy-responsive-page select,.legacy-responsive-page input:not([type=checkbox]):not([type=radio]),.legacy-responsive-page textarea{width:100%!important;min-width:0!important}.responsive-status-wrap{padding-inline:16px!important}.modal-backdrop{padding:12px}.modal-box{width:min(100%,420px);max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);overflow-y:auto;padding:20px}.guest-page{padding:16px!important}.guest-card{padding:clamp(18px,5vw,28px)!important;border-radius:12px!important}.guest-card h1{font-size:clamp(22px,7vw,28px)!important;line-height:1.2}.guest-card h2{font-size:18px!important}.school-owner-layout .page-canvas{overflow-x:hidden}.school-owner-layout .page-canvas select,.school-owner-layout .page-canvas input:not([type=checkbox]):not([type=radio]),.school-owner-layout .page-canvas textarea{max-width:100%;min-width:0!important}.school-owner-layout .page-header-actions,.school-owner-layout .page-header-actions>button{width:100%}.school-owner-layout .page-header-actions>button{justify-content:center;white-space:normal}}@media (max-width: 480px){.page-header,.page-content{padding-inline:12px}.page-header-title{font-size:18px;overflow-wrap:anywhere}.form-section-card{padding:16px 12px;border-radius:10px}.role-card-grid{grid-template-columns:minmax(0,1fr)!important}.modal-actions{flex-direction:column-reverse}.modal-actions>button{width:100%;min-height:44px}.report-buttons-row{flex-direction:column}.school-cards-mobile{padding:12px}.school-card-m-row1,.school-card-m-actions{flex-wrap:wrap}}@media (max-width: 360px){.app-brand-group img{max-width:72px!important}.app-brand-group>div:last-child>div span{font-size:15px!important;letter-spacing:.3px!important}.app-hamburger-btn{left:8px}.sidebar-rail{width:min(270px,88vw)!important}.page-content,.legacy-responsive-page,.guest-page{padding-inline:10px!important}}.app-header{background:#fff!important;border-bottom:1px solid #dce3ec!important;box-shadow:0 2px 8px #0f172a0f!important}.app-brand-group>div:first-child{padding:2px!important;background:#fff!important;border:0!important;box-shadow:none!important}.app-brand-group img{object-fit:contain!important}.app-brand-group>div:last-child>div span{color:#111827!important}.app-brand-group>div:last-child>span{color:#52647c!important}.app-hamburger-btn{color:#102a63!important;background:#edf4ff!important;border-color:#d6e1f0!important}.sidebar-rail{color:#111827!important;background:#fff!important;border-right:1px solid #dce3ec!important;box-shadow:none!important}.sidebar-label{color:#6b778b!important}.sidebar-nav-item{color:#172033!important;border-left:3px solid transparent!important}.sidebar-nav-item:hover{color:#102a63!important;background:#f4f7fb!important}.sidebar-nav-item--active,.sidebar-nav-item--active:hover{color:#102a63!important;background:#edf4ff!important;border-left-color:#163b82!important;box-shadow:none!important}.sidebar-footer{background:#fff!important;border-top-color:#dce3ec!important}.page-canvas,.school-owner-layout .page-canvas{background:#f7f9fc!important}.page-header{background:#fff!important;border-bottom-color:#dce3ec!important}.page-header-title{color:#111827!important}.btn-primary{color:#fff!important;background:#163b82!important;border-color:#163b82!important;box-shadow:0 3px 8px #102a6329!important}.btn-primary:hover{background:#102f6e!important;border-color:#102f6e!important}.login-landing{width:100%;min-height:calc(100vh - 65px);padding:0;color:#111827;background:#fff}.login-hero{display:grid;grid-template-columns:minmax(0,.88fr) minmax(430px,1.12fr);align-items:center;gap:clamp(42px,7vw,96px);width:min(1180px,calc(100% - 48px));min-height:420px;margin:0 auto;padding:52px 34px}.login-hero-copy{max-width:490px}.login-eyebrow{display:block;margin-bottom:9px;color:#2454a6;font-size:11px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.login-hero-copy h1{margin:0;color:#111827;font-size:clamp(36px,4vw,46px);line-height:1.05;letter-spacing:-.045em}.login-hero-copy h1>span{display:block;white-space:nowrap}.login-hero-copy>p{max-width:455px;margin:20px 0 0;color:#52647c;font-size:15px;line-height:1.7}.login-benefits{display:flex;flex-wrap:wrap;gap:10px 20px;margin-top:24px}.login-benefits span{position:relative;padding-left:16px;color:#43526a;font-size:11px;font-weight:700}.login-benefits span:before{content:"";position:absolute;left:0;top:4px;width:7px;height:7px;border-radius:50%;background:#2454a6;box-shadow:0 0 0 3px #e8eef7}.login-analytics{position:relative;width:100%;min-height:310px;padding:17px;border:1px solid #dce3ec;border-radius:16px;background:#fff;box-shadow:0 22px 46px #102a6321}.login-live-label{display:flex;align-items:center;gap:7px;color:#43526a;font-size:11px;font-weight:750}.login-live-label>span{width:7px;height:7px;border-radius:50%;background:#2454a6;animation:login-live-pulse 1.8s ease-in-out infinite}@keyframes login-live-pulse{0%,to{box-shadow:0 0 #2454a64d}50%{box-shadow:0 0 0 5px #2454a600}}.login-line-chart{height:112px;margin-top:8px;border-bottom:1px solid #eef2f7;background-image:linear-gradient(#f2f5f9 1px,transparent 1px);background-size:100% 28px}.login-chart-row{display:grid;grid-template-columns:.74fr 1.26fr;gap:14px;height:118px;margin-top:14px}.login-donut-card,.login-bar-card{min-width:0;border:1px solid #e3e8ef;border-radius:10px;background:#fafbfd}.login-donut-card{display:flex;align-items:center;gap:4px;padding:8px}.login-donut-wrap{position:relative;width:78px;height:78px;flex:0 0 78px}.login-donut-wrap>strong{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#102a63;font-size:13px}.login-donut-card>span{color:#52647c;font-size:10px;font-weight:700}.login-bar-card{padding:8px 7px 4px}.login-analytics-foot{display:flex;align-items:center;justify-content:space-between;margin-top:12px;color:#66758a;font-size:10px}.login-analytics-foot strong{color:#102a63;font-size:13px}.login-report-card{position:absolute;z-index:3;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;width:190px;padding:10px;border:1px solid #dce3ec;border-radius:10px;background:#fffffff7;box-shadow:0 13px 28px #102a6326;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.login-report-card-primary{top:65px;right:-28px}.login-report-card-secondary{bottom:42px;left:-30px;grid-template-columns:auto minmax(0,1fr);width:174px}.login-report-icon{display:grid;place-items:center;width:28px;height:28px;border-radius:7px;color:#fff;background:#2454a6;font-size:14px;font-weight:800}.login-report-card div{min-width:0}.login-report-card div>span{display:block;color:#66758a;font-size:8px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.login-report-card div>strong{display:block;margin-top:3px;overflow:hidden;color:#172033;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.login-report-card>b{padding:4px 5px;border-radius:5px;color:#163b82;background:#edf4ff;font-size:8px;white-space:nowrap}.login-analytics{width:100%;max-width:560px;min-height:350px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;isolation:isolate}.login-analytics-glow{position:absolute;z-index:-1;left:5%;right:2%;bottom:0;height:78%;border-radius:50%;background:radial-gradient(circle at 50% 45%,rgba(226,238,255,.95),rgba(239,245,253,.42) 52%,transparent 72%)}.login-preview-card{position:absolute;overflow:hidden;border:1px solid #e2e7f0;border-radius:12px;background:#fffffffa;box-shadow:0 17px 34px #1f3d7321}.login-preview-line{z-index:1;top:10px;left:20%;width:64%;height:152px;padding:13px 14px 9px}.login-preview-line header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.login-preview-line header strong,.login-preview-line header span{display:block}.login-preview-line header strong{color:#172033;font-size:10px}.login-preview-line header div>span{margin-top:3px;color:#7a8799;font-size:8px}.login-preview-live{display:inline-flex!important;align-items:center;gap:4px;color:#2454a6;font-size:8px;font-weight:800;text-transform:uppercase}.login-preview-live i{width:6px;height:6px;border-radius:50%;background:#2454a6;animation:login-live-pulse 1.8s ease-in-out infinite}.login-preview-line-chart{height:102px;margin-top:4px;background-image:linear-gradient(#f1f4f8 1px,transparent 1px);background-size:100% 25px}.login-preview-combined{z-index:3;top:137px;left:4%;display:grid;grid-template-columns:.82fr 1.18fr;width:74%;height:176px}.login-preview-donut,.login-preview-bars{min-width:0;padding:14px 10px 10px}.login-preview-donut{border-right:1px solid #edf0f5}.login-preview-donut>span,.login-preview-bars>span{display:block;color:#627086;font-size:8px;font-weight:750;text-align:center}.login-preview-donut-chart{position:relative;width:100%;height:125px}.login-preview-donut-chart>strong{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#172033;font-size:12px}.login-preview-bars>div{height:130px}.login-preview-profile{z-index:2;top:62px;right:0;width:28%;height:222px;padding:18px 13px;text-align:center}.login-preview-profile-icon{position:relative;display:grid;place-items:center;width:44px;height:44px;margin:0 auto 12px;border-radius:12px;background:#eeeafd}.login-preview-profile-icon:before,.login-preview-profile-icon:after{content:"";position:absolute;left:50%;transform:translate(-50%);background:#6d55c7}.login-preview-profile-icon:before{top:8px;width:12px;height:12px;border-radius:50%}.login-preview-profile-icon:after{bottom:7px;width:24px;height:16px;border-radius:12px 12px 5px 5px}.login-preview-profile>strong,.login-preview-profile>span{display:block}.login-preview-profile>strong{color:#172033;font-size:9px}.login-preview-profile>span{margin-top:4px;color:#7a8799;font-size:7px}.login-preview-profile-lines{display:grid;gap:9px;margin-top:19px}.login-preview-profile-lines i{display:block;height:7px;border-radius:4px;background:#dce8f8}.login-preview-profile-lines i:nth-child(1){width:100%;background:#dce8f8}.login-preview-profile-lines i:nth-child(2){width:78%;background:#e5e1f8}.login-preview-profile-lines i:nth-child(3){width:60%;background:#dceff3}.login-portals{padding:34px max(24px,calc((100vw - 1180px)/2)) 48px;border-top:1px solid #e3e8ef;background:#f7f9fc}.login-portals-header{margin-bottom:22px;text-align:center}.login-portals-header h2{margin:0;color:#111827;font-size:clamp(21px,2.4vw,27px)}.login-portals-header p{margin:7px 0 0;color:#66758a;font-size:13px}.login-role-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.login-role-grid .role-card{min-height:190px;padding:18px 12px 14px;border-color:#dce3ec;border-radius:10px;background:#fff;box-shadow:0 2px 5px #0f172a0f}.login-role-grid .role-card:before{display:none}.login-role-grid .role-card:hover{transform:translateY(-3px);background:#fff;box-shadow:0 10px 22px #102a631a}.login-role-grid .role-action-btn{width:30px;height:30px;min-height:30px;padding:0;border-radius:50%}.login-role-grid .role-action-btn span:first-child{display:none}@media (max-width: 1100px){.login-hero{grid-template-columns:minmax(0,.9fr) minmax(390px,1.1fr);gap:36px}.login-role-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}@media (max-width: 780px){.login-hero{grid-template-columns:1fr;width:min(100% - 28px,620px);gap:30px;padding:38px 0}.login-hero-copy{max-width:580px}.login-analytics{min-height:335px;margin-inline:auto}.login-report-card{position:static;width:100%;margin-top:10px;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.login-report-card-secondary{width:100%}.login-role-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media (max-width: 480px){.login-hero{width:calc(100% - 24px);padding:30px 0}.login-hero-copy h1{font-size:clamp(27px,8.8vw,34px)}.login-benefits{display:grid}.login-analytics{min-height:310px;padding:0;border-radius:0}.login-preview-line{left:15%;width:70%;height:138px}.login-preview-line-chart{height:88px}.login-preview-combined{top:125px;left:1%;width:82%;height:164px}.login-preview-profile{top:55px;width:31%;height:205px;padding-inline:8px}.login-preview-donut-chart,.login-preview-bars>div{height:116px}.login-chart-row{grid-template-columns:minmax(112px,.8fr) 1.2fr;gap:8px}.login-donut-card{display:grid;justify-items:center;gap:0}.login-donut-wrap{width:68px;height:68px;flex-basis:68px}.login-portals{padding:28px 12px 38px}.login-role-grid{grid-template-columns:1fr!important}.login-role-grid .role-card{min-height:168px}}@media (prefers-reduced-motion: reduce){html:focus-within{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.guest-page--modern{min-height:100%;padding:0 24px 42px;color:#102a63;background:linear-gradient(180deg,#f7f9fc,#eef4fb)}.guest-page__toolbar,.guest-page__content{width:100%;max-width:1180px;margin-inline:auto}.guest-page__toolbar{display:flex;align-items:center;padding:22px 0 14px}.guest-page__back{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:8px 13px;border:1px solid #cbd8e8;border-radius:8px;color:#1e478f;background:#fff;font:inherit;font-size:12px;font-weight:750;cursor:pointer;transition:border-color .18s ease,background .18s ease,transform .18s ease}.guest-page__back:hover{border-color:#1e478f;background:#f2f7ff;transform:translate(-2px)}.guest-hero-card,.guest-stat-card,.guest-info-card,.guest-solution-card,.guest-contact-card{border:1px solid #dce5f0;background:#fff;box-shadow:0 8px 24px #1c3e690f}.guest-hero-card{position:relative;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);min-height:300px;overflow:hidden;border-radius:18px;background:linear-gradient(120deg,#fff,#fff 58%,#edf5ff)}.guest-hero-card:before{position:absolute;inset:auto auto -120px -100px;width:300px;height:300px;border-radius:50%;background:#eff6ff;content:""}.guest-hero-card__copy{position:relative;z-index:1;align-self:center;padding:42px 20px 42px 48px}.guest-eyebrow{display:block;color:#1e478f;font-size:10px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.guest-hero-card h1{max-width:630px;margin:10px 0 14px;color:#102a63;font-size:clamp(32px,4vw,52px);line-height:1.04;letter-spacing:-.045em}.guest-hero-card__lead{max-width:590px;margin:0;color:#5d718c;font-size:16px;line-height:1.7}.guest-hero-card__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.guest-pill{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid #cfe0f5;border-radius:999px;color:#1e478f;background:#f2f7ff;font-size:11px;font-weight:750}.guest-hero-card__visual{position:relative;min-height:300px;overflow:hidden}.guest-orbit{position:absolute;border:1px solid rgba(37,99,235,.22);border-radius:50%;transform:rotate(-22deg)}.guest-orbit--one{width:300px;height:150px;top:62px;left:12%}.guest-orbit--two{width:360px;height:190px;top:42px;left:1%;transform:rotate(28deg)}.guest-visual-mark{position:absolute;top:91px;left:43%;display:grid;place-items:center;width:94px;height:94px;border:7px solid #dbeafe;border-radius:28px;color:#fff;background:linear-gradient(145deg,#2563eb,#163b82);box-shadow:0 16px 30px #1e478f40;font-size:48px;font-weight:900}.guest-visual-dot{position:absolute;width:12px;height:12px;border:3px solid #fff;border-radius:50%;background:#26a9e0;box-shadow:0 4px 10px #1e478f33}.guest-visual-dot--one{top:45px;right:20%}.guest-visual-dot--two{top:210px;left:14%;background:#f59e0b}.guest-visual-dot--three{right:10%;bottom:35px;background:#10b981}.guest-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:14px}.guest-stat-card{display:grid;gap:4px;padding:18px 20px;border-radius:12px}.guest-stat-card strong{color:#1e478f;font-size:24px;letter-spacing:-.03em}.guest-stat-card span{color:#71839a;font-size:11px;font-weight:650}.guest-section-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:14px}.guest-info-card{min-height:220px;padding:26px 28px;border-radius:14px}.guest-section-icon{display:grid;place-items:center;width:36px;height:36px;margin-bottom:16px;border-radius:10px;color:#1e478f;background:#edf4ff}.guest-info-card h2{margin:8px 0 10px;color:#102a63;font-size:23px;letter-spacing:-.025em}.guest-info-card p{margin:0;color:#5d718c;font-size:13px;line-height:1.75}.guest-solutions-section{margin-top:34px}.guest-section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:14px}.guest-section-heading h2{margin:7px 0 0;color:#102a63;font-size:25px;letter-spacing:-.03em}.guest-section-heading p{max-width:300px;margin:0;color:#71839a;font-size:12px;line-height:1.6;text-align:right}.guest-solution-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.guest-solution-card{min-height:190px;padding:20px;border-radius:12px;transition:transform .18s ease,box-shadow .18s ease}.guest-solution-card:hover{transform:translateY(-3px);box-shadow:0 14px 30px #1c3e691a}.guest-solution-card__icon{display:grid;place-items:center;width:34px;height:34px;margin-bottom:17px;border-radius:9px;color:#1e478f;background:#edf4ff}.guest-solution-card h3{margin:0 0 8px;color:#1f3455;font-size:14px;line-height:1.35}.guest-solution-card p{margin:0;color:#71839a;font-size:12px;line-height:1.65}.guest-contact-card{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:14px;padding:24px 28px;border-radius:14px;background:linear-gradient(120deg,#163b82,#1e478f)}.guest-contact-card .guest-eyebrow{color:#bfdbfe}.guest-contact-card h2{margin:7px 0 0;color:#fff;font-size:21px;letter-spacing:-.025em}.guest-contact-links{display:grid;gap:8px;min-width:250px}.guest-contact-links a{display:inline-flex;align-items:center;gap:8px;color:#eaf2ff;font-size:12px;font-weight:650;text-decoration:none}.guest-contact-links a:hover{color:#fff;text-decoration:underline}@media (max-width: 900px){.guest-page--modern{padding-inline:16px}.guest-hero-card{grid-template-columns:1fr}.guest-hero-card__copy{padding:32px 28px 18px}.guest-hero-card__visual{min-height:180px}.guest-visual-mark{top:35px;left:calc(50% - 47px)}.guest-orbit--one{top:10px;left:28%}.guest-orbit--two{top:0;left:20%}.guest-solution-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 620px){.guest-page--modern{padding-inline:12px;padding-bottom:24px}.guest-page__toolbar{padding-top:14px}.guest-hero-card__copy{padding:26px 22px 12px}.guest-hero-card h1{font-size:32px}.guest-hero-card__lead{font-size:13px}.guest-stat-grid,.guest-section-grid,.guest-solution-grid{grid-template-columns:1fr 1fr;gap:8px}.guest-stat-card{padding:14px}.guest-stat-card strong{font-size:20px}.guest-info-card{grid-column:1 / -1;min-height:0;padding:22px}.guest-section-heading{display:block}.guest-section-heading p{margin-top:8px;text-align:left}.guest-solution-card{min-height:0;padding:16px}.guest-solution-card h3{font-size:12px}.guest-solution-card p{font-size:11px}.guest-contact-card{display:block;padding:22px}.guest-contact-links{min-width:0;margin-top:18px}}@media (max-width: 390px){.guest-stat-grid,.guest-solution-grid{grid-template-columns:1fr}}.poster-page,.poster-editor-page{width:100%}.poster-page-toolbar,.poster-editor-toolbar,.poster-control-panel,.poster-upload-panel,.poster-side-panel,.poster-card{border:1px solid var(--color-border);background:#fff;box-shadow:var(--shadow-sm)}.poster-page-toolbar,.poster-editor-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px;padding:16px 18px;border-radius:10px}.poster-page-toolbar h2,.poster-page-toolbar p,.poster-editor-toolbar strong,.poster-editor-toolbar span{margin:0}.poster-page-toolbar h2,.poster-editor-toolbar strong{color:var(--color-text-main);font-size:16px;font-weight:800}.poster-page-toolbar p,.poster-editor-toolbar span{display:block;margin-top:3px;color:var(--color-text-muted);font-size:12px;font-weight:600}.poster-toolbar-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.poster-toolbar-actions .btn-link-primary,.poster-download-panel .btn-link-primary,.poster-upload-panel .btn-link-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px}.poster-secondary-btn,.poster-danger-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;padding:8px 12px;border:1px solid var(--color-border);border-radius:7px;background:#fff;color:var(--color-text-main);font:inherit;font-size:12px;font-weight:700;cursor:pointer}.poster-secondary-btn:hover{border-color:var(--primary-300);color:var(--primary-700);background:var(--primary-50)}.poster-secondary-btn:disabled{cursor:not-allowed;opacity:.55}.poster-secondary-btn:disabled:hover{border-color:var(--color-border);color:var(--color-text-main);background:#fff}.poster-danger-btn{width:100%;margin-top:12px;border-color:var(--danger-border);color:var(--danger-text);background:var(--danger-bg)}.poster-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.poster-card{overflow:hidden;border-radius:10px}.poster-card__thumb{display:grid;place-items:center;aspect-ratio:4 / 3;background:#f8fafc;color:var(--color-text-muted);font-size:12px;font-weight:700}.poster-card__thumb img{width:100%;height:100%;object-fit:cover}.poster-card__body{padding:13px}.poster-card__top,.poster-card__meta,.poster-card__actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.poster-card__top h3{min-width:0;margin:0;overflow:hidden;color:var(--color-text-main);font-size:14px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.poster-card__meta{margin-top:8px;color:var(--color-text-muted);font-size:11px;font-weight:650}.poster-status{flex:0 0 auto;padding:3px 8px;border:1px solid var(--color-border);border-radius:999px;background:#f8fafc;color:var(--color-text-muted);font-size:10px;font-weight:800;text-transform:uppercase}.poster-status--active{border-color:var(--success-border);background:var(--success-bg);color:var(--success-text)}.poster-status--archived{border-color:var(--danger-border);background:var(--danger-bg);color:var(--danger-text)}.poster-card__actions{justify-content:flex-start;flex-wrap:wrap;margin-top:12px}.poster-card__actions button{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:6px 9px;border:1px solid var(--color-border);border-radius:7px;background:#fff;color:var(--color-text-main);font:inherit;font-size:11px;font-weight:700;cursor:pointer}.poster-card__actions button:hover{border-color:var(--primary-300);color:var(--primary-700);background:var(--primary-50)}.poster-card__actions .poster-card__delete{color:var(--danger-text)}.poster-empty{display:grid;gap:5px;place-items:center;min-height:160px;padding:22px;border:1px dashed var(--color-border-hover);border-radius:10px;background:#fff;color:var(--color-text-muted);font-size:13px;font-weight:650;text-align:center}.poster-empty strong{color:var(--color-text-main)}.poster-empty--compact{min-height:80px;padding:14px}.poster-upload-panel{display:grid;gap:14px;max-width:560px;padding:18px;border-radius:10px}.poster-upload-panel label,.poster-control-panel label,.poster-props-grid label,.poster-download-panel label{display:grid;gap:6px;color:#334155;font-size:12px;font-weight:750}.poster-upload-panel input,.poster-control-panel select,.poster-toolbar-actions select,.poster-props-grid input,.poster-props-grid select,.poster-download-panel select{min-height:36px;width:100%;border:1px solid var(--color-border);border-radius:7px;padding:7px 10px;background:#fff;color:var(--color-text-main);font:inherit;font-size:12px;outline:0}.poster-upload-panel input:focus,.poster-control-panel select:focus,.poster-toolbar-actions select:focus,.poster-props-grid input:focus,.poster-props-grid select:focus,.poster-download-panel select:focus{border-color:var(--primary-500);box-shadow:0 0 0 3px #2563eb24}.poster-file-drop{position:relative;min-height:128px;place-items:center;border:1.5px dashed var(--color-border-hover);border-radius:10px;background:#fbfdff;color:var(--color-text-muted);cursor:pointer;text-align:center}.poster-file-drop svg{color:var(--primary-600)}.poster-file-drop input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.poster-editor-grid{display:grid;grid-template-columns:220px minmax(0,1fr) 260px;gap:14px;align-items:start}.poster-side-panel{position:sticky;top:82px;padding:14px;border-radius:10px}.poster-side-panel h3{margin:0 0 12px;color:var(--color-text-main);font-size:13px;font-weight:850;text-transform:uppercase}.poster-variable-list{display:grid;gap:8px}.poster-variable-list button{display:flex;align-items:center;gap:8px;min-height:34px;border:1px solid var(--color-border);border-radius:7px;padding:8px 10px;background:#fff;color:var(--color-text-main);font:inherit;font-size:12px;font-weight:700;text-align:left;cursor:pointer}.poster-variable-list button:hover{border-color:var(--primary-300);background:var(--primary-50);color:var(--primary-700)}.poster-canvas-wrap{width:100%;overflow:auto;padding:8px;border:1px solid var(--color-border);border-radius:10px;background:linear-gradient(45deg,#f1f5f9 25%,transparent 25%),linear-gradient(-45deg,#f1f5f9 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#f1f5f9 75%),linear-gradient(-45deg,transparent 75%,#f1f5f9 75%);background-color:#fff;background-position:0 0,0 10px,10px -10px,-10px 0;background-size:20px 20px}.poster-canvas-wrap canvas,.poster-preview-frame canvas{display:block;max-width:100%;height:auto!important;margin:0 auto;box-shadow:0 14px 34px #0f172a29}.poster-props-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.poster-prop-wide{grid-column:1 / -1}.poster-generator-grid{display:grid;grid-template-columns:340px minmax(0,1fr);gap:16px;align-items:start}.poster-control-panel{display:grid;gap:14px;padding:16px;border-radius:10px}.poster-template-strip{display:grid;gap:8px}.poster-template-strip button{display:grid;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:10px;min-height:62px;border:1px solid var(--color-border);border-radius:8px;padding:7px;background:#fff;color:var(--color-text-main);font:inherit;text-align:left;cursor:pointer}.poster-template-strip button.is-selected{border-color:var(--primary-500);box-shadow:0 0 0 3px #2563eb1f}.poster-template-strip span{display:grid;place-items:center;width:54px;height:48px;overflow:hidden;border-radius:6px;background:#f8fafc;color:var(--color-text-muted);font-size:10px}.poster-template-strip img{width:100%;height:100%;object-fit:cover}.poster-template-strip strong{overflow:hidden;font-size:12px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.poster-preview-frame{display:grid;place-items:center;min-height:560px;padding:20px;overflow:auto;border:1px solid var(--color-border);border-radius:10px;background:#fff}.poster-preview-frame--empty{color:var(--color-text-muted);font-size:13px;font-weight:700}.poster-download-panel{display:grid;gap:10px;padding-top:12px;border-top:1px solid var(--color-border)}.poster-download-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:grid;place-items:center;padding:20px;background:#0f172a6b}.poster-download-dialog{display:grid;justify-items:center;gap:10px;width:min(320px,100%);padding:24px 22px;border:1px solid var(--color-border);border-radius:10px;background:#fff;box-shadow:0 22px 60px #0f172a3d;text-align:center}.poster-download-dialog strong{color:var(--color-text-main);font-size:16px;font-weight:800}.poster-download-dialog p{margin:0;color:var(--color-text-muted);font-size:13px;line-height:1.45}.poster-download-spinner{width:34px;height:34px;border:3px solid rgba(37,99,235,.18);border-top-color:var(--primary-600);border-radius:50%;animation:spin .7s linear infinite}.poster-size-dialog{display:grid;gap:16px;width:min(560px,100%);max-height:calc(100vh - 40px);overflow:auto;padding:22px;border:1px solid var(--color-border);border-radius:10px;background:#fff;box-shadow:0 22px 60px #0f172a3d}.poster-size-dialog__head h3,.poster-size-dialog__head p{margin:0}.poster-size-dialog__head h3{color:var(--color-text-main);font-size:18px;font-weight:800}.poster-size-dialog__head p{margin-top:6px;color:var(--color-text-muted);font-size:13px;line-height:1.45}.poster-size-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.poster-size-options button{display:grid;gap:4px;min-height:66px;padding:12px;border:1px solid var(--color-border);border-radius:8px;background:#fff;color:var(--color-text-main);font:inherit;text-align:left;cursor:pointer}.poster-size-options button:hover{border-color:var(--primary-300);background:var(--primary-50)}.poster-size-options strong{font-size:13px;font-weight:800}.poster-size-options span{color:var(--color-text-muted);font-size:12px;font-weight:600}.poster-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:20px;background:#0f172a61}.poster-delete-dialog{width:min(420px,100%);padding:22px;border:1px solid var(--color-border);border-radius:10px;background:#fff;box-shadow:0 22px 60px #0f172a3d;text-align:center}.poster-delete-dialog h3,.poster-delete-dialog p{margin:0}.poster-delete-dialog h3{color:var(--color-text-main);font-size:18px;font-weight:800}.poster-delete-dialog p{margin:10px auto 0;max-width:330px;color:var(--color-text-muted);font-size:13px;line-height:1.5}.poster-delete-dialog__actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:22px}.poster-delete-dialog__actions button{min-height:38px;justify-content:center;white-space:nowrap}@media (max-width: 1100px){.poster-editor-grid,.poster-generator-grid{grid-template-columns:1fr}.poster-side-panel{position:static}}@media (max-width: 640px){.poster-page-toolbar,.poster-editor-toolbar{align-items:stretch;flex-direction:column}.poster-toolbar-actions,.poster-card__actions{width:100%}.poster-toolbar-actions>*,.poster-card__actions button{flex:1 1 auto}.poster-props-grid{grid-template-columns:1fr}.poster-size-dialog{padding:18px}.poster-size-options{grid-template-columns:1fr}.poster-delete-dialog{padding:18px}.poster-delete-dialog__actions{grid-template-columns:1fr}}
