@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";.public-home{color:#172033;background:#fff;min-height:100vh}.public-header{justify-content:space-between;align-items:center;max-width:1240px;height:76px;margin:auto;padding:0 24px;display:flex}.public-brand{color:#172033;align-items:center;gap:11px;text-decoration:none;display:flex}.public-brand>span{color:#fff;background:#2563eb;border-radius:11px;place-items:center;width:42px;height:42px;display:grid}.public-brand b,.public-brand small{display:block}.public-brand small{color:#8994a5;margin-top:2px;font-size:9px}.public-header nav{align-items:center;gap:28px;display:flex}.public-header nav>a{color:#667287;font-size:12px;font-weight:600;text-decoration:none}.public-login{background:#2563eb;border-radius:9px;align-items:center;gap:7px;display:flex;color:#fff!important;padding:10px 15px!important}.public-login svg{width:15px}.public-hero{background:radial-gradient(circle at 85% 15%,#dceaff 0,#0000 32%),linear-gradient(#f8fbff,#fff);grid-template-columns:1.05fr .95fr;align-items:center;gap:70px;min-height:610px;padding:80px max(24px,50vw - 596px);display:grid}.hero-kicker{color:#2563eb;background:#eaf2ff;border-radius:20px;align-items:center;gap:7px;padding:7px 11px;font-size:10px;font-weight:800;display:inline-flex}.hero-kicker svg{width:14px}.hero-copy h1{letter-spacing:-2.5px;margin:20px 0;font-size:58px;line-height:1.05}.hero-copy h1 em{color:#2563eb;font-style:normal}.hero-copy>p{color:#748095;max-width:570px;font-size:16px;line-height:1.75}.hero-actions{gap:10px;margin:28px 0;display:flex}.hero-actions a{border-radius:10px;align-items:center;gap:7px;padding:13px 19px;font-size:12px;font-weight:700;text-decoration:none;display:flex}.hero-primary{color:#fff;background:#2563eb;box-shadow:0 10px 24px #2563eb2b}.hero-secondary{color:#526075;border:1px solid #dce3ed}.hero-trust{color:#8290a3;gap:20px;font-size:10px;display:flex}.hero-trust span{align-items:center;gap:5px;display:flex}.hero-trust svg{color:#3b78e7;width:14px}.hero-preview{background:#fff;border:1px solid #dfe7f2;border-radius:20px;padding:24px;transform:rotate(1deg);box-shadow:0 28px 70px #1e4b9c1a}.preview-top{justify-content:space-between;font-size:12px;display:flex}.preview-top span{color:#8290a3}.preview-days{grid-template-columns:repeat(5,1fr);gap:9px;margin:20px 0;display:grid}.preview-days span{color:#169347;background:#e9f9ef;border-radius:10px;place-items:center;gap:7px;padding:13px;display:grid}.preview-days span.absent{color:#dc3434;background:#fff0f0}.preview-days small{color:#778497;font-size:9px}.preview-result{border-top:1px solid #edf1f6;align-items:center;gap:11px;padding-top:17px;display:flex}.preview-result>span{color:#2563eb;background:#eaf2ff;border-radius:10px;place-items:center;width:40px;height:40px;display:grid}.preview-result div{flex:1}.preview-result small,.preview-result b{display:block}.preview-result small{color:#8b96a6;font-size:9px}.preview-result b{margin-top:3px;font-size:13px}.preview-result i{color:#159447;background:#e9f9ef;border-radius:15px;padding:6px 8px;font-size:9px;font-style:normal;font-weight:800}.public-features{max-width:1240px;margin:auto;padding:85px 24px}.section-title{text-align:center;max-width:620px;margin:0 auto 42px}.section-title>span{letter-spacing:1.5px;color:#2563eb;font-size:9px;font-weight:800}.section-title h2{margin:10px 0;font-size:31px}.section-title p{color:#8390a2}.feature-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.feature-grid article{border:1px solid #e3e9f1;border-radius:15px;padding:25px}.feature-grid article>span{color:#2563eb;background:#eaf2ff;border-radius:11px;place-items:center;width:45px;height:45px;display:grid}.feature-grid h3{margin:18px 0 8px;font-size:16px}.feature-grid p{color:#8490a2;margin:0;font-size:12px;line-height:1.7}.public-steps{color:#fff;background:#172d55;border-radius:20px;grid-template-columns:repeat(3,1fr);gap:25px;max-width:1192px;margin:0 auto 80px;padding:34px;display:grid}.public-steps div{border-left:1px solid #ffffff20;padding:10px 20px}.public-steps span{color:#79a8ff;font-size:10px;font-weight:800}.public-steps b{margin:8px 0;font-size:14px;display:block}.public-steps p{color:#bdcce5;margin:0;font-size:11px}.public-home footer{color:#8c97a7;border-top:1px solid #e6ebf2;justify-content:space-between;padding:25px max(24px,50vw - 596px);font-size:10px;display:flex}@media (width<=850px){.public-header nav>a:not(.public-login){display:none}.public-hero{grid-template-columns:1fr;padding-top:55px}.hero-copy h1{font-size:46px}.hero-preview{max-width:600px}.feature-grid{grid-template-columns:1fr}.public-steps{grid-template-columns:1fr;margin-inline:20px}.public-steps div{border-top:1px solid #ffffff20;border-left:0}}@media (width<=520px){.public-header{padding-inline:15px}.public-brand small{display:none}.public-hero{gap:40px;padding:45px 16px}.hero-copy h1{font-size:39px}.hero-actions{flex-direction:column}.hero-actions a{justify-content:center}.hero-trust{flex-wrap:wrap}.hero-preview{padding:15px}.preview-days{gap:4px}.preview-days span{padding:10px 4px}.public-home footer{flex-direction:column;gap:7px}}.public-home footer{color:#172033;background:#fff;border:0;padding:0;font-size:12px;display:block}.footer-cta{text-align:center;background:#eef5ff;border:1px solid #d2e2fb;border-radius:22px;max-width:1192px;margin:0 auto 65px;padding:48px 24px}.footer-check{color:#2563eb;border:2px solid #2563eb;border-radius:50%;place-items:center;width:54px;height:54px;margin:0 auto 22px;display:grid}.footer-check svg{width:27px;height:27px}.footer-cta h2{letter-spacing:-.5px;margin:0;font-size:28px}.footer-cta p{color:#65758d;margin:17px auto 28px;font-size:14px}.footer-cta-actions{justify-content:center;gap:12px;display:flex}.footer-cta-actions a{border-radius:11px;justify-content:center;align-items:center;gap:9px;min-height:50px;padding:0 25px;font-size:14px;font-weight:750;text-decoration:none;display:inline-flex}.footer-cta-actions svg{width:18px}.footer-telegram{color:#fff;background:#2563eb;box-shadow:0 9px 22px #2563eb26}.footer-phone{color:#101828;background:#fff;border:1px solid #d7e2f0}.footer-bar{color:#dbeafe;background:linear-gradient(110deg,#2383e8,#0c36b8);justify-content:space-between;align-items:center;min-height:72px;padding:16px max(24px,50vw - 596px);display:flex}.footer-bar>div{gap:10px;display:flex}.footer-bar a{color:#eaf2ff;background:#ffffff0d;border:1px solid #ffffff26;border-radius:999px;align-items:center;gap:7px;padding:9px 14px;font-weight:650;text-decoration:none;display:inline-flex}.footer-bar svg{width:14px;height:14px}@media (width<=850px){.footer-cta{margin-inline:20px}}@media (width<=520px){.public-home footer{display:block}.footer-cta{margin:0 14px 35px;padding:34px 16px}.footer-cta h2{font-size:23px}.footer-cta p{font-size:12px;line-height:1.6}.footer-cta-actions{flex-direction:column}.footer-cta-actions a{width:100%}.footer-bar{flex-direction:column;align-items:flex-start;gap:12px}.footer-bar>div{flex-direction:column;align-items:flex-start}.footer-bar a{padding:7px 11px}}.public-header nav{gap:18px}.public-bot-link{background:#f7faff;border:1px solid #b8d0fb;border-radius:999px;align-items:center;gap:7px;min-height:40px;padding:0 16px;display:inline-flex;color:#2563eb!important}.public-bot-link svg{width:16px}@media (width<=850px){.public-header nav>a.public-bot-link{display:inline-flex}}@media (width<=520px){.public-header nav{gap:7px}.public-bot-link{min-height:36px;padding:0 10px;font-size:0!important}.public-bot-link svg{width:17px}.public-login{padding:9px 11px!important}}.public-stats{z-index:2;background:#fff;border:1px solid #e3e9f1;border-radius:18px;grid-template-columns:repeat(3,1fr);max-width:920px;margin:-38px auto 20px;padding:22px;display:grid;position:relative;box-shadow:0 18px 45px #1e4b9c12}.public-stats article{border-right:1px solid #e8edf4;justify-content:center;align-items:center;gap:14px;display:flex}.public-stats article:last-child{border:0}.public-stats article>span{color:#2563eb;background:#eaf2ff;border-radius:12px;place-items:center;width:45px;height:45px;display:grid}.public-stats b,.public-stats small{display:block}.public-stats b{font-size:24px}.public-stats small{color:#8490a2;margin-top:3px;font-size:10px}.public-teachers{max-width:1100px;margin:auto;padding:40px 24px 90px}.teacher-spotlight{color:#fff;background:linear-gradient(135deg,#172d55,#20488d);border-radius:24px;grid-template-columns:380px 1fr;min-height:330px;display:grid;overflow:hidden;box-shadow:0 24px 60px #183b7b2b}.teacher-photo{background:#dceaff;place-items:center;min-height:330px;display:grid}.teacher-photo img{object-fit:cover;width:100%;height:100%}.teacher-photo svg{color:#6d98e7;width:90px;height:90px}.teacher-copy{flex-direction:column;justify-content:center;padding:48px;display:flex}.teacher-copy>span{letter-spacing:1.5px;color:#8fb6ff;font-size:9px;font-weight:800}.teacher-copy h3{margin:12px 0 5px;font-size:31px}.teacher-copy>b{color:#a9c7ff;font-size:13px}.teacher-copy>p{color:#d0dcf0;max-width:520px;font-size:13px;line-height:1.8}.teacher-controls{align-items:center;gap:13px;margin-top:16px;display:flex}.teacher-controls button{color:#fff;background:#ffffff12;border:1px solid #ffffff3b;border-radius:50%;place-items:center;width:37px;height:37px;display:grid}.teacher-controls button:disabled{opacity:.35}.teacher-controls svg{width:16px}.teacher-controls small{color:#a9bad5}.teacher-public-empty{color:#8b97a8;border:1px dashed #d8e1ee;border-radius:20px;place-items:center;gap:13px;padding:70px;display:grid}.teacher-public-empty svg{color:#7ba2e8;width:50px;height:50px}.teacher-admin-grid{grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:16px;display:grid}.teacher-admin-grid>article{background:#fff;border:1px solid #e1e7f0;border-radius:14px;grid-template-columns:76px 1fr auto;gap:15px;padding:18px;display:grid}.teacher-admin-avatar{color:#2563eb;background:#eaf2ff;border-radius:13px;place-items:center;width:76px;height:76px;display:grid;overflow:hidden}.teacher-admin-avatar img{object-fit:cover;width:100%;height:100%}.teacher-admin-grid h3{margin:2px 0 5px}.teacher-admin-grid article b{color:#2563eb;font-size:11px}.teacher-admin-grid article p{color:#7f8b9d;font-size:11px;line-height:1.5}.teacher-admin-grid article small{color:#8b96a6;margin-bottom:10px;display:block}.teacher-admin-grid .status-pill{display:inline-flex}@media (width<=850px){.public-stats{margin:-20px 20px 20px}.teacher-spotlight{grid-template-columns:1fr}.teacher-photo{min-height:260px}.teacher-copy{padding:32px}}@media (width<=520px){.public-stats{grid-template-columns:1fr;padding:10px}.public-stats article{border-bottom:1px solid #e8edf4;border-right:0;justify-content:flex-start;padding:12px}.teacher-copy h3{font-size:25px}.teacher-admin-grid{grid-template-columns:1fr}.teacher-admin-grid>article{grid-template-columns:60px 1fr}.teacher-admin-grid .row-actions{grid-column:2}}.teacher-contact-links{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.teacher-contact-links a{color:#e8f1ff;background:#ffffff0d;border:1px solid #ffffff28;border-radius:10px;align-items:center;gap:6px;padding:8px 11px;font-size:10px;text-decoration:none;transition:all .2s;display:flex}.teacher-contact-links a:hover{background:#ffffff1c;transform:translateY(-2px)}.teacher-contact-links svg{width:14px;height:14px}.teacher-mini-contacts{color:#2563eb;gap:6px;margin-right:8px;display:inline-flex}.teacher-mini-contacts svg{width:13px;height:13px}.optional{color:#95a0b0;font-weight:400}.image-picker{background:#f8fbff;border:1px dashed #cbd8ea;border-radius:13px;grid-template-columns:70px 1fr;align-items:center;gap:10px 14px;margin-top:7px;padding:13px;display:grid}.image-picker>div{color:#2563eb;background:#eaf2ff;border-radius:12px;grid-row:1/3;place-items:center;width:70px;height:70px;display:grid;overflow:hidden}.image-picker img{object-fit:cover;width:100%;height:100%}.image-picker>label{color:#fff;cursor:pointer;background:#2563eb;border-radius:9px;align-items:center;gap:7px;width:max-content;padding:9px 12px;display:flex}.image-picker>label svg{width:16px}.image-picker input{display:none}.image-picker small{color:#8793a5}.public-hero{position:relative;overflow:hidden}.public-hero:before,.public-hero:after{content:"";pointer-events:none;border-radius:50%;position:absolute}.public-hero:before{background:#8db8ff33;width:280px;height:280px;animation:9s ease-in-out infinite orbDrift;top:-80px;right:-90px}.public-hero:after{background:#7ce7c433;width:150px;height:150px;animation:7s ease-in-out infinite reverse orbDrift;bottom:-70px;left:45%}.hero-copy,.hero-preview{z-index:1;position:relative}.hero-preview{animation:5s ease-in-out infinite previewFloat}.feature-grid article{transition:transform .25s,box-shadow .25s,border-color .25s}.feature-grid article:hover{border-color:#b8cff5;transform:translateY(-7px);box-shadow:0 18px 40px #20488d14}@keyframes previewFloat{0%,to{transform:rotate(1deg)translateY(0)}50%{transform:rotate(-.5deg)translateY(-12px)}}@keyframes orbDrift{0%,to{transform:translate(0)scale(1)}50%{transform:translate(-28px,22px)scale(1.08)}}.phone-prefix{color:#475569;white-space:nowrap;font-size:14px;font-weight:700}.input-wrap.phone-wrap input{padding-left:4px}.uz-phone-field{background:#fff;border:1px solid #d7dfeb;border-radius:9px;align-items:center;margin-top:7px;transition:border-color .15s,box-shadow .15s;display:flex;overflow:hidden}.uz-phone-field:focus-within{border-color:#4f7ff7;box-shadow:0 0 0 3px #2f68eb1a}.uz-phone-field>span{color:#475569;white-space:nowrap;padding:11px 0 11px 13px;font-size:14px;font-weight:700}.uz-phone-field input{width:100%;box-shadow:none!important;border:0!important;outline:0!important;margin:0!important;padding-left:5px!important}.lesson-type-bar{border-bottom:1px solid var(--border);background:#fbfcff;justify-content:space-between;align-items:center;gap:18px;padding:15px 22px;display:flex}.lesson-type-bar>div:first-child b,.lesson-type-bar>div:first-child span{display:block}.lesson-type-bar>div:first-child b{font-size:12px}.lesson-type-bar>div:first-child span{color:#8b96a7;margin-top:4px;font-size:10px}.lesson-type-switch{background:#edf1f7;border-radius:11px;gap:4px;padding:4px;display:flex}.lesson-type-switch button{color:#707c8e;background:0 0;border:0;border-radius:8px;align-items:center;gap:7px;padding:9px 13px;font-size:11px;font-weight:700;display:flex}.lesson-type-switch svg{width:15px}.lesson-type-switch button.active.regular{color:#2563eb;background:#fff;box-shadow:0 3px 10px #1e4b9c17}.lesson-type-switch button.active.extra{color:#fff;background:linear-gradient(135deg,#7c3aed,#9333ea);box-shadow:0 5px 14px #7c3aed35}.extra-lesson-notice{color:#6d28d9;background:linear-gradient(120deg,#faf7ff,#f2ebff);border:1px solid #ddd0ff;border-radius:11px;align-items:center;gap:11px;margin:15px 22px 0;padding:12px 15px;display:flex}.extra-lesson-notice>svg{width:22px}.extra-lesson-notice b,.extra-lesson-notice span{display:block}.extra-lesson-notice b{font-size:12px}.extra-lesson-notice span{color:#846da9;margin-top:3px;font-size:10px}.save-bar.extra-save{background:#faf7ff}.save-bar.extra-save .primary{background:#7c3aed;box-shadow:0 5px 12px #7c3aed2c}@media (width<=650px){.lesson-type-bar{flex-direction:column;align-items:stretch}.lesson-type-switch{width:100%}.lesson-type-switch button{flex:1;justify-content:center}.extra-lesson-notice{margin-inline:12px}}.result-groups-section{border:1px solid var(--border);background:#fff;border-radius:15px;margin-bottom:18px;padding:22px;box-shadow:0 8px 24px #17203308}.result-groups-head{justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;display:flex}.result-groups-head h3{margin-bottom:5px;font-size:15px}.result-groups-head p{color:#8a95a6;margin:0;font-size:11px}.result-groups-head>span{color:#667389;background:#f0f4fa;border-radius:20px;padding:6px 11px;font-size:10px;font-weight:700}.result-group-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;display:grid}.result-group-card{text-align:left;color:#263247;background:linear-gradient(145deg,#fff,#f8faff);border:1px solid #e1e7f0;border-radius:14px;flex-direction:column;min-height:168px;padding:17px;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex;position:relative;overflow:hidden}.result-group-card:hover{border-color:#b6c9ef;transform:translateY(-3px);box-shadow:0 12px 28px #1d4ed812}.result-group-card.selected{background:linear-gradient(145deg,#fff,#edf4ff);border-color:#5386ee;box-shadow:0 0 0 3px #dbe8ff,0 12px 28px #1d4ed817}.result-card-accent{background:#3b82f6;height:4px;position:absolute;inset:0 0 auto}.result-group-card.color-1 .result-card-accent{background:#8b5cf6}.result-group-card.color-2 .result-card-accent{background:#14b8a6}.result-group-card.color-3 .result-card-accent{background:#f59e0b}.result-card-top,.result-card-footer{justify-content:space-between;align-items:center;display:flex}.result-card-icon{color:#2867d9;background:#e9f1ff;border-radius:11px;place-items:center;width:42px;height:42px;display:grid}.color-1 .result-card-icon{color:#7c45d7;background:#f0ebff}.color-2 .result-card-icon{color:#0d927f;background:#e6f8f4}.color-3 .result-card-icon{color:#c78008;background:#fff4dd}.result-status,.result-selected{color:#168747;background:#eaf8ef;border-radius:20px;padding:5px 8px;font-size:9px;font-weight:700}.result-selected{color:#2463da;background:#e7efff;align-items:center;gap:3px;display:flex}.result-selected svg{width:11px;height:11px}.result-card-copy{flex:1;padding:14px 0;display:block}.result-card-copy b,.result-card-copy small{display:block}.result-card-copy b{color:#1d293d;margin-bottom:5px;font-size:15px}.result-card-copy small{color:#8a95a5;white-space:nowrap;text-overflow:ellipsis;font-size:10px;line-height:1.4;overflow:hidden}.result-card-footer{color:#7e899a;border-top:1px solid #e8edf4;padding-top:11px}.result-card-footer span{align-items:center;gap:5px;font-size:10px;font-weight:600;display:flex}.result-card-footer svg{width:14px;height:14px}.selected-group-banner{background:#edf4ff;border:1px solid #d7e5ff;border-radius:11px;align-items:center;gap:11px;margin-bottom:17px;padding:12px 16px;display:flex}.selected-group-banner>span{color:#fff;background:#2563eb;border-radius:50%;place-items:center;width:29px;height:29px;display:grid}.selected-group-banner>span svg{width:15px}.selected-group-banner small,.selected-group-banner b{display:block}.selected-group-banner small{text-transform:uppercase;letter-spacing:.5px;color:#71809a;font-size:8px}.selected-group-banner b{margin-top:2px;font-size:12px}.selected-group-banner p{color:#66758d;margin:0 0 0 auto;font-size:10px}@media (width<=640px){.result-groups-section{padding:16px}.result-groups-head{align-items:flex-start}.result-group-grid{grid-template-columns:1fr}.result-group-card{min-height:150px}.selected-group-banner p{display:none}}.parent-login-page{background:#fff;grid-template-columns:1.05fr 1fr;min-height:100vh;display:grid}.parent-login-visual{color:#fff;background:linear-gradient(145deg,#145de5,#387df4);flex-direction:column;justify-content:center;padding:8vw;display:flex;position:relative;overflow:hidden}.parent-login-visual:after{content:"";border:1px solid #fff2;border-radius:50%;width:520px;height:520px;position:absolute;top:-170px;right:-260px}.parent-brand,.parent-mobile-logo{background:#ffffff20;border-radius:17px;place-items:center;width:62px;height:62px;margin-bottom:28px;display:grid}.parent-brand svg{width:34px;height:34px}.parent-login-visual h1{max-width:570px;margin-bottom:20px;font-size:44px;line-height:1.15}.parent-login-visual>p{color:#dce9ff;max-width:560px;font-size:17px;line-height:1.7}.parent-security{background:#ffffff12;border:1px solid #ffffff25;border-radius:13px;align-items:center;gap:13px;max-width:390px;margin-top:34px;padding:15px 18px;display:flex}.parent-security span,.parent-security small{display:block}.parent-security small{color:#d7e6ff;margin-top:4px}.parent-login-panel{place-items:center;padding:35px;display:grid}.parent-login-card{width:min(410px,100%)}.parent-mobile-logo{color:#fff;background:#2563eb;display:none}.parent-login-card h2{margin-bottom:7px;font-size:30px}.parent-login-card>p{color:#8b96a7;margin-bottom:30px}.parent-login-card label{color:#48556a;font-size:13px;font-weight:700;display:block}.parent-pin-input{border:1px solid #d9e0e9;border-radius:10px;align-items:center;margin-top:9px;padding:0 13px;display:flex}.parent-pin-input:focus-within{border-color:#76a0f9;box-shadow:0 0 0 3px #e7efff}.parent-pin-input svg{color:#8995a7}.parent-pin-input input{letter-spacing:10px;text-align:center;border:0;outline:0;width:100%;padding:14px;font-size:22px}.parent-login-button{width:100%;margin-top:20px;padding:14px}.parent-help{text-align:center;color:#9ca6b4;margin-top:20px;display:block}.parent-dashboard{color:#172033;background:#f5f7fb;min-height:100vh}.parent-topbar{z-index:10;background:#fff;border-bottom:1px solid #e4e9f1;align-items:center;gap:30px;height:76px;padding:0 max(24px,50vw - 630px);display:flex;position:sticky;top:0}.parent-top-brand{align-items:center;gap:10px;display:flex}.parent-top-brand>span{color:#fff;background:#2563eb;border-radius:11px;place-items:center;width:42px;height:42px;display:grid}.parent-top-brand b,.parent-top-brand small,.parent-child-title b,.parent-child-title small{display:block}.parent-top-brand small,.parent-child-title small{color:#8a95a5;margin-top:2px;font-size:11px}.parent-child-title{border-left:1px solid #e4e9f1;flex:1;padding-left:28px}.parent-topbar>button{color:#657185;background:#fff;border:1px solid #e4e9f1;border-radius:8px;align-items:center;gap:7px;padding:9px 13px;display:flex}.parent-content{max-width:1260px;margin:auto;padding:30px 24px 50px}.parent-welcome{justify-content:space-between;align-items:flex-end;gap:25px;margin-bottom:24px;display:flex}.eyebrow{color:#2563eb;letter-spacing:1px;font-size:10px;font-weight:800}.parent-welcome h1{margin:7px 0;font-size:29px}.parent-welcome p{color:#8390a2;margin:0}.date-filter{align-items:flex-end;gap:8px;display:flex}.date-filter label{color:#768195;font-size:10px;font-weight:700}.date-filter input{border:1px solid #dce2ea;border-radius:8px;margin-top:5px;padding:9px;display:block}.parent-stat-grid{grid-template-columns:repeat(4,1fr);gap:15px;display:grid}.parent-stat{background:#fff;border:1px solid #e4e9f1;border-radius:13px;align-items:flex-start;gap:13px;padding:18px;display:flex}.stat-icon{border-radius:11px;flex:none;place-items:center;width:43px;height:43px;display:grid}.stat-icon.green{color:#159447;background:#e9f9ef}.stat-icon.blue{color:#2563eb;background:#eaf1ff}.stat-icon.orange{color:#e99a0b;background:#fff5df}.stat-icon.purple{color:#7c4dd8;background:#f3edff}.parent-stat small,.parent-stat b{display:block}.parent-stat small{color:#8490a2;font-size:10px}.parent-stat b{margin:3px 0;font-size:22px}.parent-stat p{color:#96a0af;margin:0;font-size:10px}.parent-tabs{background:#fff;border:1px solid #e4e9f1;border-radius:11px;gap:5px;width:max-content;margin:24px 0 15px;padding:5px;display:flex}.parent-tabs button{color:#748095;background:0 0;border:0;border-radius:8px;align-items:center;gap:7px;padding:10px 15px;font-weight:650;display:flex}.parent-tabs button.active{color:#2563eb;background:#eaf1ff}.parent-panel{background:#fff;border:1px solid #e4e9f1;border-radius:13px;overflow:hidden}.parent-panel-head,.parent-test-head{border-bottom:1px solid #e8edf3;justify-content:space-between;align-items:center;padding:20px 22px;display:flex}.parent-panel-head h2,.parent-test-head h2{margin-bottom:5px;font-size:17px}.parent-panel-head p,.parent-test-head p{color:#8a95a5;margin:0;font-size:11px}.parent-panel-head>span{color:#718096;align-items:center;gap:6px;font-size:11px;display:flex}.comparison-list{padding:7px 22px}.comparison-row{border-bottom:1px solid #edf0f4;border-radius:9px;grid-template-columns:40px minmax(160px,1fr) minmax(170px,.8fr) minmax(170px,.8fr) 70px;align-items:center;gap:16px;padding:13px 12px;display:grid}.comparison-row.own{background:#edf4ff;border:1px solid #cfe0ff}.rank{color:#697586;background:#eef1f5;border-radius:50%;place-items:center;width:30px;height:30px;font-size:12px;font-weight:800;display:grid}.rank-1{color:#d48a00;background:#fff1c9}.rank-2{color:#68788e;background:#edf1f6}.rank-3{color:#ad6529;background:#f8e8d9}.compare-name b,.compare-name small{display:block}.compare-name b{font-size:13px}.compare-name small{color:#929dad;margin-top:3px;font-size:9px}.comparison-row.own .compare-name b{color:#1f5ed7}.compare-metric{grid-template-columns:1fr 42px;align-items:center;gap:5px 9px;display:grid}.compare-metric small{color:#929cad;grid-column:1/-1;font-size:9px}.compare-metric>span{background:#edf1f6;border-radius:10px;height:7px;overflow:hidden}.compare-metric i{background:#3b7af2;border-radius:10px;height:100%;display:block}.compare-metric b{font-size:11px}.test-count{color:#8a95a5;font-size:10px}.parent-attendance-list{padding:5px 22px 18px}.parent-attendance-list>div{border-bottom:1px solid #edf0f4;align-items:center;gap:13px;padding:13px 0;display:flex}.attendance-mark{border-radius:10px;place-items:center;width:38px;height:38px;display:grid}.attendance-mark.present{color:#159447;background:#e9f9ef}.attendance-mark.absent{color:#dc3434;background:#fff0f0}.attendance-mark.excused{color:#d98b06;background:#fff6e3}.parent-attendance-list b,.parent-attendance-list small{display:block}.parent-attendance-list b{font-size:12px}.parent-attendance-list small{color:#8994a4;margin-top:3px;font-size:10px}.parent-attendance-list em{white-space:nowrap;text-overflow:ellipsis;color:#9a6b0b;background:#fff7e5;border-radius:7px;max-width:320px;margin-left:auto;padding:7px 10px;font-size:11px;overflow:hidden}.parent-empty{text-align:center;color:#98a2b2;padding:50px}.parent-test-list{gap:15px;display:grid}.parent-test-head{padding:17px 22px}.own-test-result{border-radius:9px;grid-template-columns:auto auto;gap:2px 10px;padding:9px 13px;display:grid}.own-test-result small{grid-column:1/-1;font-size:9px}.own-test-result b{font-size:18px}.own-test-result span{align-self:end;font-size:10px}.own-test-result.passed{color:#158443;background:#e9f9ef}.own-test-result.failed{color:#d73838;background:#fff0f0}.test-average{color:#788497;align-items:center;gap:20px;padding:14px 22px;font-size:11px;display:flex}.average-track{background:#edf1f6;border-radius:10px;flex:1;height:7px;overflow:hidden}.average-track i{background:#7a9ff0;height:100%;display:block}.test-peer-grid{grid-template-columns:repeat(4,1fr);gap:8px;padding:0 22px 20px;display:grid}.test-peer-grid>div{color:#7d8999;border:1px solid #e6ebf2;border-radius:8px;justify-content:space-between;padding:9px 11px;font-size:10px;display:flex}.test-peer-grid>div.own{color:#1f5ed7;background:#edf4ff;border-color:#bad2ff}.test-peer-grid b{font-size:11px}@media (width<=900px){.parent-login-page{grid-template-columns:1fr}.parent-login-visual{display:none}.parent-login-panel{min-height:100vh}.parent-mobile-logo{display:grid}.parent-stat-grid{grid-template-columns:repeat(2,1fr)}.comparison-row{grid-template-columns:35px 1fr 130px 130px}.test-count{display:none}.test-peer-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.parent-topbar{padding:0 15px}.parent-child-title{display:none}.parent-topbar>button{font-size:0}.parent-content{padding:20px 14px 40px}.parent-welcome{flex-direction:column;align-items:flex-start}.date-filter{flex-wrap:wrap;width:100%}.date-filter label{flex:1}.date-filter input{width:100%}.parent-stat-grid{grid-template-columns:1fr 1fr;gap:9px}.parent-stat{gap:9px;padding:13px}.stat-icon{width:35px;height:35px}.parent-stat b{font-size:17px}.parent-tabs{width:100%}.parent-tabs button{flex:1;justify-content:center;font-size:0}.comparison-list{padding:6px 10px}.comparison-row{grid-template-columns:32px 1fr 70px;gap:8px}.compare-metric{display:block}.compare-metric small,.compare-metric>span{display:none}.compare-metric b{text-align:right;display:block}.parent-panel-head{align-items:flex-start}.parent-panel-head>span{display:none}.parent-attendance-list{padding-inline:14px}.parent-attendance-list em{max-width:120px}.test-peer-grid{grid-template-columns:1fr 1fr;padding-inline:14px}.parent-test-head{align-items:flex-start;gap:10px}}.test-result-legend{gap:16px;padding:14px 22px 10px;font-size:10px;font-weight:750;display:flex}.test-result-legend span:before{content:"";border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.test-result-legend .passed{color:#158443}.test-result-legend .passed:before{background:#22c55e}.test-result-legend .failed{color:#d73838}.test-result-legend .failed:before{background:#ef4444}.test-result-legend .unscored{color:#8490a2}.test-result-legend .unscored:before{background:#cbd5e1}.test-peer-grid{grid-template-columns:repeat(3,1fr)}.test-peer-grid>div{border-left:4px solid #cbd5e1;justify-content:flex-start;align-items:center;gap:10px;min-width:0;padding:11px 12px}.test-peer-grid>div.passed{color:#13743b;background:#f0fbf4;border-color:#bce9cc #bce9cc #bce9cc #22c55e}.test-peer-grid>div.failed{color:#ba2929;background:#fff4f4;border-color:#ffd0d0 #ffd0d0 #ffd0d0 #ef4444}.test-peer-grid>div.unscored{color:#64748b;background:#f8fafc;border-color:#e2e8f0 #e2e8f0 #e2e8f0 #94a3b8}.test-peer-grid>div.own{box-shadow:inset 0 0 0 2px #2563eb}.test-peer-grid>div>span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.test-peer-grid>div span small{color:#2563eb;margin-top:3px;font-weight:750;display:block}.test-peer-grid b{white-space:nowrap;font-size:12px}.peer-order{opacity:.8;background:#fff;border:1px solid;border-radius:50%;flex:0 0 22px;place-items:center;width:22px;height:22px;font-size:9px;font-style:normal;font-weight:800;display:grid}@media (width<=900px){.test-peer-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.test-peer-grid{grid-template-columns:1fr;padding-inline:12px}.test-result-legend{flex-wrap:wrap;padding-inline:14px}.parent-test-head{flex-direction:column}.own-test-result{grid-template-columns:1fr auto;width:100%}.test-peer-grid>div{padding:12px 10px}.test-peer-grid>div>span{white-space:normal}.test-peer-grid b{font-size:11px}}.compare-test-count{flex-direction:column;justify-content:center;align-items:flex-start;gap:5px;display:flex}.compare-test-count small{display:block}.compare-test-count b{color:#172033;text-align:left;font-size:14px}@media (width<=640px){.compare-test-count{align-items:flex-end}.compare-test-count small{font-size:8px;display:block}.compare-test-count b{font-size:12px}}.parent-homework-notice{color:#8a6008;background:#fff9e9;border:1px solid #f1d38a;border-radius:12px;align-items:center;gap:12px;margin-bottom:15px;padding:14px 17px;display:flex}.parent-homework-notice>svg{flex:none;width:26px;height:26px}.parent-homework-notice div{flex:1}.parent-homework-notice b,.parent-homework-notice p{display:block}.parent-homework-notice b{font-size:12px}.parent-homework-notice p{margin:4px 0 0;font-size:10px}.parent-homework-notice button{color:#8a6008;background:#fff;border:1px solid #dfbd67;border-radius:8px;padding:8px 11px;font-size:10px;font-weight:700}.parent-homework-list{padding:6px 22px 18px}.parent-homework-list>div{border-bottom:1px solid #edf0f4;align-items:center;gap:12px;padding:13px 0;display:flex}.parent-homework-list>div>span{color:#ad7407;background:#fff2cf;border-radius:10px;place-items:center;width:38px;height:38px;display:grid}.parent-homework-list b,.parent-homework-list small{display:block}.parent-homework-list b{font-size:12px}.parent-homework-list small{color:#967630;margin-top:3px;font-size:10px}@media (width<=640px){.parent-homework-notice{flex-wrap:wrap;align-items:flex-start}.parent-homework-notice button{margin-left:38px}.parent-tabs{overflow-x:auto}.parent-tabs button{min-width:52px}}.parent-absence-notice{color:#c2410c;background:#fff7ed;border:1px solid #fdba74;border-left:5px solid #f97316;border-radius:12px;align-items:center;gap:13px;margin-bottom:15px;padding:15px 18px;display:flex}.parent-absence-notice>svg{flex:none}.parent-absence-notice b{display:block}.parent-absence-notice p{margin:4px 0 0;font-size:12px}.absence-filter{background:#fff;border:1px solid #e2e8f0;border-radius:12px;align-items:center;gap:10px;margin-bottom:18px;padding:14px;display:flex}.absence-filter svg{color:#2563eb}.absence-filter select,.absence-filter input{background:#fff;border:1px solid #dce3ed;border-radius:8px;padding:9px 11px}.absence-filter span{color:#8490a2;margin-left:auto;font-size:12px}.absence-alert-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px;display:grid}.absence-alert-grid article{background:#fff7ed;border:1px solid #fed7aa;border-left:5px solid #f97316;border-radius:13px;gap:14px;padding:18px;display:flex}.absence-alert-grid article>span{color:#ea580c;background:#ffedd5;border-radius:11px;place-items:center;width:43px;height:43px;display:grid}.absence-alert-grid h3{margin:0 0 7px}.absence-alert-grid p{color:#7c8798;align-items:center;gap:5px;margin:0 0 12px;font-size:11px;display:flex}.absence-alert-grid p svg{width:14px}.absence-alert-grid b{color:#c2410c;font-size:12px}@media (width<=600px){.absence-filter{flex-wrap:wrap}.absence-filter span{width:100%;margin:0}}.my-profile-layout{grid-template-columns:330px minmax(0,720px);align-items:start;gap:20px;display:grid}.profile-preview-card,.my-profile-form{background:#fff;border:1px solid #e1e7f0;border-radius:16px;box-shadow:0 12px 30px #183b7b0b}.profile-preview-card{text-align:center;padding:24px;position:sticky;top:105px}.profile-preview-photo{color:#2563eb;background:linear-gradient(145deg,#e7f0ff,#d5e6ff);border-radius:24px;place-items:center;width:150px;height:150px;margin:0 auto 20px;display:grid;overflow:hidden}.profile-preview-photo img{object-fit:cover;width:100%;height:100%}.profile-preview-photo svg{width:55px;height:55px}.profile-preview-card>span{letter-spacing:1.4px;color:#2563eb;font-size:9px;font-weight:800}.profile-preview-card h2{margin:9px 0 5px}.profile-preview-card>b{color:#3970d5;font-size:12px}.profile-preview-card>p{color:#8490a2;margin:14px 0;font-size:11px;line-height:1.65}.profile-publish-state{border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:10px;font-size:10px;font-weight:700;display:flex}.profile-publish-state svg{width:14px}.profile-publish-state.published{color:#178d47;background:#eaf9ef}.profile-publish-state.pending{color:#b7790b;background:#fff7e5}.my-profile-form{padding:26px}.profile-form-title{border-bottom:1px solid #edf1f6;margin-bottom:20px}.profile-form-title h3{margin-bottom:5px}.profile-form-title p{color:#8793a5;font-size:11px}.profile-loader{min-height:300px}@media (width<=850px){.my-profile-layout{grid-template-columns:1fr}.profile-preview-card{position:static}.my-profile-form{padding:20px}}@media (width<=520px){.my-profile-form .form-grid{grid-template-columns:1fr}}.settings-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;max-width:760px;padding:24px;box-shadow:0 4px 18px #1720330a}.settings-card-head{border-bottom:1px solid #edf1f5;align-items:center;gap:13px;margin-bottom:20px;padding-bottom:20px;display:flex}.settings-card-head>span{color:#2563eb;background:#eaf2ff;border-radius:11px;place-items:center;width:44px;height:44px;display:grid}.settings-card-head>span svg{width:21px}.settings-card-head h2{margin:0 0 5px;font-size:16px}.settings-card-head p{color:#8792a3;margin:0;font-size:11px}.settings-fields{grid-template-columns:1fr 1fr;gap:16px;display:grid}.settings-fields>label{color:#596579;font-size:11px;font-weight:700}.settings-fields input{font-weight:500}.username-field{background:#fff;border:1px solid #dce2ea;border-radius:8px;align-items:center;margin-top:7px;display:flex;overflow:hidden}.username-field:focus-within{border-color:#7ca4f7;box-shadow:0 0 0 3px #e8efff}.username-field>span{color:#64748b;background:#f5f7fa;border-right:1px solid #dce2ea;align-items:center;gap:3px;height:39px;padding:0 11px;display:flex}.username-field svg{width:14px}.username-field input{outline:0;width:100%;min-width:0;height:39px;box-shadow:none!important;border:0!important;border-radius:0!important;margin:0!important;padding:9px 11px!important}.settings-hint{color:#8a95a5;margin:14px 0 22px;font-size:10px}.settings-actions{justify-content:flex-end;display:flex}.settings-actions .primary{align-items:center;gap:7px;display:inline-flex}.settings-actions svg{width:16px}@media (width<=640px){.settings-card{padding:18px}.settings-fields{grid-template-columns:1fr}.settings-card-head{align-items:flex-start}.settings-actions .primary{justify-content:center;width:100%}}.omr-page{color:#0f172a;gap:22px;padding-bottom:40px;display:grid}.omr-pilot{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;align-items:center;gap:8px;width:fit-content;padding:8px 12px;font-size:13px;font-weight:700;display:inline-flex}.omr-notice{color:#1e40af;background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;align-items:center;gap:10px;padding:13px 16px;font-size:14px;font-weight:600;display:flex}.omr-notice.ok{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.omr-notice.error{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.omr-notice button{color:inherit;cursor:pointer;font:inherit;background:0 0;border:0;margin-left:auto}.omr-intro{color:#fff;background:radial-gradient(circle at 12% 15%,#60a5fa57,#0000 30%),linear-gradient(135deg,#102b5f 0%,#1648a4 58%,#2563eb 100%);border-radius:22px;grid-template-columns:minmax(260px,1fr) 1.45fr;gap:28px;padding:30px;display:grid;overflow:hidden;box-shadow:0 18px 45px #0f3f962e}.omr-intro h1{margin:14px 0 10px;font-size:clamp(28px,3vw,42px);line-height:1.08}.omr-intro p{color:#dbeafe;max-width:620px;margin:0;font-size:15px;line-height:1.65}.omr-intro-icon{background:#ffffff21;border:1px solid #ffffff47;border-radius:15px;place-items:center;width:52px;height:52px;display:grid}.omr-intro ol{grid-template-columns:repeat(4,1fr);align-self:center;gap:10px;margin:0;padding:0;list-style:none;display:grid}.omr-intro li{color:#bfdbfe;background:#0a276042;border:1px solid #ffffff2e;border-radius:15px;align-content:center;gap:7px;min-height:106px;padding:15px;font-size:13px;line-height:1.35;display:grid}.omr-intro li span{color:#fff;background:#ffffff24;border-radius:50%;place-items:center;width:27px;height:27px;font-weight:800;display:grid}.omr-intro li.active,.omr-intro li.done{color:#fff;background:#ffffff24;border-color:#93c5fdbf}.omr-intro li.done span{background:#22c55e}.omr-card{background:#fff;border:1px solid #dbe4f0;border-radius:18px;padding:24px;box-shadow:0 8px 26px #0f172a0d}.omr-card.locked{background:#f8fafc}.omr-picker{border-top:4px solid #2563eb}.omr-card-title,.omr-section-head{align-items:flex-start;gap:13px;margin-bottom:20px;display:flex}.omr-card-title h2,.omr-section-head h2{margin:0 0 5px;font-size:20px}.omr-card-title p,.omr-section-head p{color:#64748b;margin:0;font-size:14px;line-height:1.5}.omr-step-icon{color:#2563eb;background:#eff6ff;border-radius:12px;flex:none;place-items:center;width:42px;height:42px;display:grid}.omr-step-icon.violet{color:#7c3aed;background:#f5f3ff}.omr-step-icon.teal{color:#0891b2;background:#ecfeff}.omr-select-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.omr-select-grid label{color:#334155;gap:8px;font-size:14px;font-weight:700;display:grid}.omr-select-grid select,.omr-review-item select{color:#0f172a;width:100%;min-height:44px;font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:10px;outline:none;padding:0 38px 0 13px}.omr-select-grid select:focus,.omr-review-item select:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.omr-readiness{color:#9a3412;background:#fff7ed;border-radius:11px;align-items:center;gap:10px;margin-top:16px;padding:12px 14px;font-size:14px;font-weight:650;display:flex}.omr-readiness.ready{color:#166534;background:#f0fdf4}.omr-blocked,.omr-lock{color:#64748b;border:1px dashed #cbd5e1;border-radius:12px;align-items:center;gap:12px;padding:18px;font-size:14px;display:flex}.omr-section-head{justify-content:space-between}.omr-section-head>div:first-child{align-items:flex-start;gap:13px;display:flex}.omr-count{color:#475569;background:#f1f5f9;border-radius:999px;flex:none;padding:7px 11px;font-size:13px;font-weight:800}.omr-count.complete{color:#15803d;background:#dcfce7}.omr-key-actions,.omr-upload-row,.omr-print-main,.omr-confirm-bar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.omr-key-actions{margin-bottom:18px}.omr-key-actions-bottom{justify-content:flex-end;margin:18px 0 0}.omr-key-actions button,.omr-key-actions .file-button,.omr-print-main button,.omr-student-sheets button,.omr-scan-button,.omr-confirm-bar button,.omr-confirmed button{color:#1e293b;cursor:pointer;min-height:42px;font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:0 15px;font-size:14px;font-weight:750;transition:all .16s;display:inline-flex}.omr-key-actions button:hover,.omr-key-actions .file-button:hover,.omr-print-main button:hover,.omr-student-sheets button:hover{color:#1d4ed8;background:#eff6ff;border-color:#93c5fd}.omr-key-actions button:disabled,.omr-scan-button:disabled,.omr-confirm-bar button:disabled{cursor:not-allowed;opacity:.55}.file-button input,.omr-dropzone input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.omr-answer-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;display:grid}.omr-key-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:11px;padding:10px}.omr-key-item.answered{background:#eff6ff;border-color:#bfdbfe}.omr-key-item strong{color:#64748b;margin-bottom:8px;font-size:12px;display:block}.omr-key-item>div{grid-template-columns:repeat(4,1fr);gap:4px;display:grid}.omr-key-item button{aspect-ratio:1;color:#475569;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:7px;width:100%;padding:0;font-weight:800}.omr-key-item button.selected{color:#fff;background:#2563eb;border-color:#2563eb}.omr-inline-loading{color:#475569;align-items:center;gap:8px;font-size:14px;display:inline-flex}.omr-import{background:#fff7ed;border:1px solid #fed7aa;border-radius:12px;margin-top:16px;padding:16px}.omr-import.valid{background:#f0fdf4;border-color:#bbf7d0}.omr-import h3{margin:0 0 7px;font-size:16px}.omr-import p{color:#475569;margin:5px 0;font-size:14px}.omr-import ul,.omr-warnings ul{margin:9px 0 0;padding-left:21px;font-size:14px}.omr-print-main{align-items:stretch}.omr-print-main>button{color:#fff;background:#2563eb;border-color:#2563eb}.omr-print-main>button:hover{background:#1d4ed8}.omr-print-main>div{align-content:center;gap:2px;display:grid}.omr-print-main strong,.omr-print-main small{display:block}.omr-print-main small{color:#64748b;font-size:12px}.omr-student-sheets{border-top:1px solid #e2e8f0;margin-top:18px;padding-top:16px}.omr-student-sheets summary{cursor:pointer;color:#334155;font-size:14px;font-weight:750}.omr-student-sheets>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.omr-student-sheets button{justify-content:flex-start;overflow:hidden}.omr-student-sheets button span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.omr-upload-row{align-items:stretch}.omr-live-launch{background:linear-gradient(135deg,#ecfeff,#eff6ff);border:1px solid #a5f3fc;border-radius:14px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:18px;display:grid}.omr-live-launch>span{color:#fff;background:#0891b2;border-radius:14px;place-items:center;width:48px;height:48px;display:grid}.omr-live-launch b,.omr-live-launch small{display:block}.omr-live-launch b{margin-bottom:5px;font-size:15px}.omr-live-launch small{color:#64748b;font-size:12px;line-height:1.45}.omr-upload-divider{color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:12px;margin:17px 0;font-size:11px;font-weight:700;display:flex}.omr-upload-divider:before,.omr-upload-divider:after{content:"";background:#e2e8f0;flex:1;height:1px}.omr-dropzone{color:#1e40af;cursor:pointer;background:#f8fbff;border:2px dashed #bfdbfe;border-radius:13px;flex:360px;align-items:center;gap:13px;min-height:86px;padding:16px 18px;display:flex;position:relative}.omr-dropzone.has-file{color:#155e75;background:#ecfeff;border-style:solid;border-color:#67e8f9}.omr-dropzone strong,.omr-dropzone small{display:block}.omr-dropzone small{color:#64748b;margin-top:4px;font-size:12px}.omr-scan-button{color:#fff;background:#0891b2;border-color:#0891b2;min-width:170px}.omr-scan-button:hover{background:#0e7490}.omr-preview-card{border:1px solid #dbe4f0;border-radius:15px;margin-top:20px;overflow:hidden}.omr-visual-result{color:#fff;background:#0b1020;padding:16px}.omr-visual-meta{grid-template-columns:minmax(0,1fr) repeat(2,auto);gap:10px;margin-bottom:12px;display:grid}.omr-visual-meta span{background:#0f172ac7;border:1px solid #94a3b840;border-radius:10px;min-width:0;padding:9px 11px}.omr-visual-meta small,.omr-visual-meta b{display:block}.omr-visual-meta small{color:#94a3b8;letter-spacing:.08em;font-size:9px;font-weight:800}.omr-visual-meta b{text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:13px;overflow:hidden}.omr-visual-sheet{background:#111827;border-radius:9px;width:min(100%,620px);margin:0 auto;position:relative;overflow:hidden;box-shadow:0 12px 35px #00000052}.omr-visual-sheet svg,.omr-visual-sheet>img{width:100%;height:auto;display:block}.omr-visual-marker{fill:#fff3;stroke:#fff;stroke-width:4px;vector-effect:non-scaling-stroke}.omr-visual-bubble{fill:#ffffff0f;stroke-width:4px;vector-effect:non-scaling-stroke}.omr-visual-bubble.key{stroke:#fde047}.omr-visual-bubble.correct{fill:#22c55e61;stroke:#22c55e}.omr-visual-bubble.wrong{fill:#ef444466;stroke:#ef4444}.omr-visual-bubble.uncertain{fill:#f9731666;stroke:#fb923c}.omr-visual-unavailable{text-align:center;background:#7f1d1de6;border-radius:8px;margin:0;padding:9px;font-size:12px;position:absolute;bottom:12px;left:12px;right:12px}.omr-visual-legend{color:#cbd5e1;flex-wrap:wrap;justify-content:center;gap:8px 15px;margin-top:12px;font-size:11px;display:flex}.omr-visual-legend span:before{content:"";border:2px solid;border-radius:50%;width:8px;height:8px;margin-right:5px;display:inline-block}.omr-visual-legend .correct{color:#4ade80}.omr-visual-legend .wrong{color:#f87171}.omr-visual-legend .key{color:#fde047}.omr-visual-legend .uncertain{color:#fb923c}.omr-visual-actions{background:#fff;border-bottom:1px solid #e2e8f0;justify-content:center;gap:10px;padding:12px 16px;display:flex}.omr-visual-actions>a{color:#334155;border:1px solid #cbd5e1;border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:40px;padding:0 14px;font-size:13px;font-weight:750;text-decoration:none;display:inline-flex}.omr-visual-actions svg{width:17px;height:17px}.omr-preview-summary{background:#f8fafc;border-bottom:1px solid #e2e8f0;grid-template-columns:minmax(220px,1fr) repeat(2,auto);align-items:center;gap:14px;padding:18px;display:grid}.omr-student{align-items:center;gap:11px;min-width:0;display:flex}.omr-student-avatar{color:#1d4ed8;background:#dbeafe;border-radius:12px;flex:none;place-items:center;width:42px;height:42px;font-weight:850;display:grid}.omr-student strong,.omr-student small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.omr-student small{color:#64748b;margin-top:3px;font-size:12px}.omr-metric{text-align:center;background:#fff;border-radius:10px;min-width:106px;padding:9px 12px}.omr-metric span,.omr-metric strong{display:block}.omr-metric span{color:#64748b;margin-bottom:3px;font-size:12px}.omr-metric strong{font-size:15px}.omr-warnings{color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:11px;margin:16px 18px 0;padding:13px 15px}.omr-review-head{justify-content:space-between;align-items:center;gap:14px;padding:18px 18px 12px;display:flex}.omr-review-head h3{margin:0;font-size:17px}.omr-review-head span{color:#64748b;font-size:13px}.omr-review-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding:0 18px 18px;display:grid}.omr-review-item{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:10px}.omr-review-item.review,.omr-review-item.multiple,.omr-review-item.blank{background:#fffbeb;border-color:#fcd34d}.omr-review-item.accepted{background:#f0fdf4;border-color:#bbf7d0}.omr-review-item label{color:#475569;justify-content:space-between;align-items:center;gap:6px;margin-bottom:7px;font-size:12px;font-weight:800;display:flex}.omr-review-item small{color:#64748b;font-size:11px}.omr-review-item select{min-height:37px;padding-left:9px;font-size:13px}.omr-confirm-bar{background:#f8fafc;border-top:1px solid #e2e8f0;justify-content:flex-end;padding:16px 18px}.omr-confirm-bar p{color:#64748b;flex:280px;margin:0;font-size:13px;line-height:1.5}.omr-confirm-bar button{color:#fff;background:#16a34a;border-color:#16a34a}.omr-confirm-bar button:hover{background:#15803d}.omr-confirmed{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:14px;align-items:center;gap:16px;margin-top:20px;padding:19px;display:flex}.omr-confirmed.failed{color:#991b1b;background:#fef2f2;border-color:#fecaca}.omr-confirmed h3,.omr-confirmed p{margin:0}.omr-confirmed h3{margin-bottom:4px;font-size:17px}.omr-confirmed p{font-size:14px}.omr-confirmed button{color:inherit;background:0 0;border-color:currentColor;margin-left:auto}.nav-new{color:#1d4ed8;letter-spacing:.05em;background:#dbeafe;border-radius:999px;margin-left:auto;padding:3px 6px;font-size:9px;font-weight:900}.omr-live{z-index:500;color:#fff;background:#020617;grid-template-rows:auto minmax(0,1fr) auto;display:grid;position:fixed;inset:0}.omr-live-head,.omr-live-actions{z-index:2;padding:max(14px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) 14px max(16px, env(safe-area-inset-left));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#020617eb;justify-content:space-between;align-items:center;gap:14px;display:flex;position:relative}.omr-live-head>div,.omr-live-actions>div{align-items:center;gap:11px;min-width:0;display:flex}.omr-live-head>div>span{background:#2563eb;border-radius:12px;flex:none;place-items:center;width:40px;height:40px;display:grid}.omr-live-head b,.omr-live-head small,.omr-live-actions b,.omr-live-actions small{display:block}.omr-live-head b{font-size:15px}.omr-live-head small,.omr-live-actions small{color:#94a3b8;margin-top:3px;font-size:11px}.omr-live-head>button{color:#e2e8f0;background:#0f172a;border:1px solid #334155;border-radius:50%;flex:none;place-items:center;width:42px;height:42px;padding:0;display:grid}.omr-live-viewport{background:#000;place-items:center;min-height:0;display:grid;position:relative;overflow:hidden}.omr-live-viewport video,.omr-live-overlay{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}.omr-live-overlay{pointer-events:none}.omr-live-guide{pointer-events:none;position:absolute;inset:8% 7%}.omr-live-guide i{border-style:solid;border-color:#ffffffb3;width:42px;height:42px;position:absolute}.omr-live-guide i:first-child{border-width:3px 0 0 3px;border-radius:12px 0 0;top:0;left:0}.omr-live-guide i:nth-child(2){border-width:3px 3px 0 0;border-radius:0 12px 0 0;top:0;right:0}.omr-live-guide i:nth-child(3){border-width:0 3px 3px 0;border-radius:0 0 12px;bottom:0;right:0}.omr-live-guide i:nth-child(4){border-width:0 0 3px 3px;border-radius:0 0 0 12px;bottom:0;left:0}.omr-live-status{color:#f8fafc;text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0f172ae0;border:1px solid #94a3b859;border-radius:999px;align-items:center;gap:9px;max-width:calc(100% - 30px);padding:11px 14px;font-size:12px;font-weight:700;display:inline-flex;position:absolute;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 12px 35px #00000059}.omr-live-status.stable{background:#14532de6;border-color:#4ade80}.omr-live-status.error{background:#7f1d1deb;border-color:#f87171}.omr-live-actions{padding-top:13px;padding-bottom:max(13px, env(safe-area-inset-bottom))}.omr-live-actions>div>svg{color:#60a5fa;flex:none}.omr-live-actions>button{color:#0f172a;min-height:43px;font:inherit;background:#f8fafc;border:1px solid #475569;border-radius:11px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:12px;font-weight:800;display:inline-flex}.omr-live-actions>button:disabled{cursor:not-allowed;opacity:.45}@keyframes omr-spin{to{transform:rotate(360deg)}}.omr-page .spin{animation:.85s linear infinite omr-spin}@media (width<=1100px){.omr-intro{grid-template-columns:1fr}.omr-answer-grid,.omr-review-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=760px){.omr-intro,.omr-card{border-radius:15px;padding:19px}.omr-intro ol{grid-template-columns:repeat(2,1fr)}.omr-intro li{min-height:88px}.omr-select-grid,.omr-student-sheets>div{grid-template-columns:1fr}.omr-preview-summary{grid-template-columns:1fr 1fr}.omr-preview-summary .omr-student{grid-column:1/-1}.omr-scan-button{width:100%}.omr-answer-grid,.omr-review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=460px){.omr-visual-result{margin:-19px -19px 18px;padding:12px}.omr-visual-meta{grid-template-columns:1fr 1fr}.omr-visual-meta span:first-child{grid-column:1/-1}.omr-visual-actions{z-index:4;padding:10px;position:sticky;bottom:0}.omr-visual-actions>*{flex:1;min-width:0;padding-left:7px;padding-right:7px;font-size:11px}.omr-live-launch{grid-template-columns:auto 1fr}.omr-live-launch>button{grid-column:1/-1;width:100%}.omr-live-head small,.omr-live-actions>div{display:none}.omr-live-actions>button,.omr-key-actions-bottom button{width:100%}.omr-intro ol,.omr-answer-grid,.omr-review-grid{grid-template-columns:1fr}.omr-section-head{flex-direction:column}}:root{color:#172033;font-synthesis:none;--blue:#2563eb;--border:#e4e9f1;background:#f5f7fb;font-family:Inter,system-ui,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}svg{width:19px;height:19px}h1,h2,h3,p{margin-top:0}.app-shell{min-height:100vh;display:flex}.sidebar{border-right:1px solid var(--border);z-index:20;background:#fff;flex-direction:column;width:250px;display:flex;position:fixed;inset:0 auto 0 0}.brand{border-bottom:1px solid var(--border);align-items:center;gap:12px;height:80px;padding:18px 20px;display:flex}.brand-mark,.login-logo{color:#fff;background:linear-gradient(135deg,#2563eb,#4f86f7);border-radius:12px;place-items:center;width:44px;height:44px;display:grid}.brand-mark svg{width:25px;height:25px}.brand strong{font-size:18px;display:block}.brand small,.profile small,.top-title small{color:#8490a4;margin-top:3px;font-size:11px;display:block}.sidebar nav{flex:1;padding:20px 12px}.sidebar nav a{color:#667085;border-radius:9px;align-items:center;gap:12px;margin:3px 0;padding:12px 14px;font-size:14px;font-weight:600;text-decoration:none;display:flex}.sidebar nav a:hover{background:#f4f7fd}.sidebar nav a.active{color:var(--blue);background:#edf4ff}.nav-label{color:#a1a9b7;letter-spacing:.8px;padding:13px 14px 6px;font-size:10px;font-weight:700;display:block}.profile{border-top:1px solid var(--border);align-items:center;gap:10px;padding:17px;display:flex}.profile>div:nth-child(2){flex:1;min-width:0}.profile strong{white-space:nowrap;text-overflow:ellipsis;font-size:12px;display:block;overflow:hidden}.profile button,.mobile-close,.menu-btn{color:#7d8796;background:0 0;border:0;padding:5px}.avatar,.student-avatar{color:var(--blue);background:#eaf1ff;border-radius:50%;place-items:center;font-weight:700;display:grid}.avatar{width:36px;height:36px}.app-shell>main{flex:1;min-width:0;margin-left:250px}.topbar{border-bottom:1px solid var(--border);z-index:10;background:#fff;justify-content:space-between;align-items:center;height:80px;padding:0 32px;display:flex;position:sticky;top:0}.top-title b{font-size:14px}.role-badge,.status-pill{color:var(--blue);background:#eaf1ff;border-radius:20px;padding:6px 10px;font-size:11px;font-weight:700}.content{max-width:1500px;margin:auto;padding:30px}.page-head{justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;display:flex}.page-head h1{margin-bottom:6px;font-size:25px}.page-head p,.workspace-head p,.score-head p{color:#8792a4;margin:0;font-size:13px}.primary,.secondary{border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:7px;padding:10px 15px;font-size:13px;font-weight:600;display:inline-flex}.primary{background:var(--blue);color:#fff;box-shadow:0 5px 12px #2563eb25}.primary:hover{background:#1d55d4}.primary:disabled{opacity:.6}.secondary{color:#556174;background:#fff;border-color:#dce2ea}.group-strip{gap:12px;padding:2px 2px 18px;display:flex;overflow:auto}.group-card{border:1px solid var(--border);text-align:left;background:#fff;border-radius:11px;align-items:center;gap:11px;min-width:195px;padding:14px;display:flex}.group-card.selected{border-color:#73a0ff;box-shadow:0 0 0 2px #dbe8ff}.group-icon,.test-icon{color:var(--blue);background:#edf3ff;border-radius:9px;place-items:center;width:40px;height:40px;display:grid}.group-card b,.group-card small,.test-item b,.test-item small{display:block}.group-card b{font-size:13px}.workspace-card,.filter-card,.tests-panel,.scores-panel,.table-card{border:1px solid var(--border);background:#fff;border-radius:12px}.workspace-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:20px 22px;display:flex}.workspace-head h2,.score-head h2{margin-bottom:5px;font-size:18px}.actions{gap:8px;display:flex}.week-nav{justify-content:center;align-items:center;gap:15px;padding:16px;display:flex}.icon-btn{border:1px solid var(--border);color:#687487;background:#fff;border-radius:8px;place-items:center;width:34px;height:34px;display:grid}.days{grid-template-columns:repeat(7,1fr);gap:8px;padding:0 22px 17px;display:grid}.days button{border:1px solid var(--border);color:#6f7a8b;background:#fff;border-radius:9px;padding:9px 5px}.days button small,.days button b{display:block}.days button b{margin-top:6px;font-size:16px}.days button.active{background:var(--blue);border-color:var(--blue);color:#fff}.days button.today:not(.active){color:var(--blue);border-color:#89aefe}.legend{border-block:1px solid var(--border);color:#7b8797;background:#fafbfd;gap:23px;padding:11px 22px;font-size:11px;display:flex}.dot{border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.dot.present{background:#22c55e}.dot.absent{background:#ef4444}.dot.excused{background:#f59e0b}.attendance-list,.score-list{padding:8px 22px}.student-row,.score-row{border-bottom:1px solid #edf0f4;align-items:center;gap:12px;min-height:64px;display:flex}.student-no{color:#9ba4b1;width:18px;font-size:11px}.student-avatar{flex:none;width:36px;height:36px;font-size:11px}.student-name{flex:1;min-width:130px}.student-name b{font-size:13px;display:block}.student-name small{color:#9aa4b3;font-size:10px}.status-buttons{gap:6px;display:flex}.status-buttons button{border:1px solid var(--border);color:#8390a2;background:#fff;border-radius:7px;padding:8px 11px;font-size:11px;font-weight:600}.status-buttons .present.active{color:#159447;background:#e9f9ef;border-color:#68d790}.status-buttons .absent.active{color:#dc3434;background:#fff0f0;border-color:#f49a9a}.status-buttons .excused.active{color:#c98508;background:#fff8e8;border-color:#f7ca6b}.reason{width:180px;background:#fffbef!important;border:1px solid #f1c65c!important}.save-bar{border-top:1px solid var(--border);background:#fbfcfe;border-radius:0 0 12px 12px;justify-content:space-between;align-items:center;padding:15px 22px;display:flex}.save-bar span{color:#778397;align-items:center;gap:7px;font-size:12px;display:flex}.empty{text-align:center;color:#98a2b2;padding:55px 20px}.empty div{color:#c7d0dd;font-size:40px}.empty p{font-size:13px}.alert{color:#2859ae;background:#eaf2ff;border:1px solid #d0e0ff;border-radius:8px;margin-bottom:15px;padding:11px 14px;font-size:13px}.alert.error{color:#c53030;background:#fff0f0;border-color:#ffd0d0}.modal-backdrop{z-index:100;background:#15203975;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:14px;width:min(560px,100%);max-height:90vh;overflow:auto;box-shadow:0 25px 70px #10182830}.modal-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.modal-head h3{margin:0;font-size:17px}.form{padding:20px}.form label,.filter-card label{color:#596579;margin-bottom:15px;font-size:12px;font-weight:600;display:block}.form input,.form textarea,.inline-form input,.reason,.search input,.filter-card select{background:#fff;border:1px solid #dce2ea;border-radius:8px;outline:0;width:100%;margin-top:7px;padding:10px 12px}.form input:focus,.form textarea:focus,.inline-form input:focus,.filter-card select:focus{border-color:#7aa3fa;box-shadow:0 0 0 3px #e7efff}.form textarea{resize:vertical;min-height:85px}.form-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.form-actions{justify-content:flex-end;gap:8px;margin-top:10px;display:flex}.inline-form{border-bottom:1px solid var(--border);grid-template-columns:1fr 1fr auto;gap:8px;padding:16px 20px;display:grid}.inline-form input{margin:0}.manage-list{padding:5px 20px 20px}.manage-list>div{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 0;display:flex}.manage-list b,.manage-list small{font-size:12px;display:block}.manage-list small{margin-top:4px}.text-green{color:#159447}.text-red{color:#dc3434}.history-list{padding:15px 20px}.history-list>div{border-left:2px solid #e2e8f2;padding:4px 0 16px 20px;position:relative}.history-list p{margin-bottom:4px;font-size:12px}.history-list small{color:#8a95a5;font-size:10px}.history-dot{background:var(--blue);border-radius:50%;width:10px;height:10px;position:absolute;top:6px;left:-6px}.filter-card{margin-bottom:18px;padding:17px 20px}.filter-card label{max-width:350px;margin:0}.results-grid{grid-template-columns:330px minmax(0,1fr);gap:17px;display:grid}.tests-panel{padding:17px}.tests-panel h3{justify-content:space-between;font-size:14px;display:flex}.tests-panel h3 span{color:#748095;background:#edf2fa;border-radius:10px;padding:3px 7px;font-size:10px}.test-item{text-align:left;background:#fff;border:1px solid #0000;border-radius:9px;align-items:center;gap:10px;width:100%;margin:3px 0;padding:10px;display:flex}.test-item>span:nth-child(2){flex:1}.test-item b{font-size:12px}.test-item small{color:#8a95a4;align-items:center;gap:4px;margin-top:5px;font-size:9px;display:flex}.test-item small svg{width:11px}.test-item.active{background:#edf4ff;border-color:#d5e4ff}.score-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:20px 22px;display:flex}.score-head>svg{color:#f3ac21;width:36px;height:36px}.score-input{border:1px solid var(--border);border-radius:8px;align-items:center;display:flex;overflow:hidden}.score-input input{text-align:center;border:0;outline:0;width:70px;padding:8px}.score-input span{color:#8a95a4;background:#f5f7fa;padding:9px;font-size:11px}.percent{color:var(--blue);text-align:right;width:45px;font-size:12px;font-weight:700}.table-card{overflow:hidden}.table-tools{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.table-tools>span{color:#8490a2;font-size:11px}.search{border:1px solid var(--border);border-radius:8px;align-items:center;width:340px;padding-left:10px;display:flex}.search svg{color:#929cad}.search input{border:0;outline:0;margin:0}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px}th{text-align:left;color:#8791a2;text-transform:uppercase;letter-spacing:.5px;background:#fafbfd;font-size:10px}th,td{white-space:nowrap;border-bottom:1px solid #edf0f4;padding:13px 20px}.admin-name{align-items:center;gap:10px;display:flex}.admin-name span{width:32px;height:32px;color:var(--blue);background:#edf4ff;border-radius:50%;place-items:center;display:grid}.admin-name svg{width:15px}.status-pill.on{color:#178d47;background:#eaf9ef}.status-pill.off{color:#d54141;background:#fff0f0}.row-actions{justify-content:flex-end;gap:5px;display:flex}.row-actions button{border:1px solid var(--border);color:#687487;background:#fff;border-radius:7px;padding:6px}.row-actions svg{width:15px}.row-actions .danger-icon{color:#dc3e3e}.switch-row{align-items:center;gap:8px;display:flex!important}.switch-row input{width:auto!important;margin:0!important}.login-page{background:#fff;grid-template-columns:1.1fr 1fr;min-height:100vh;display:grid}.login-visual{color:#fff;background:linear-gradient(145deg,#145de5,#3d7ff4);place-items:center;padding:50px;display:grid;position:relative;overflow:hidden}.visual-copy{z-index:2;max-width:480px;position:relative}.large-mark{background:#ffffff20;border-radius:18px;place-items:center;width:68px;height:68px;margin-bottom:30px;display:grid}.large-mark svg{width:38px;height:38px}.visual-copy h1{letter-spacing:-1px;font-size:43px;line-height:1.18}.visual-copy p{color:#dce8ff;font-size:16px;line-height:1.7}.decor{border:1px solid #fff2;border-radius:50%;position:absolute}.d1{width:500px;height:500px;top:-100px;right:-230px}.d2{width:380px;height:380px;bottom:-150px;left:-180px}.login-panel{place-items:center;padding:35px;display:grid}.login-card{width:min(390px,100%)}.login-logo{display:none}.login-card h2{margin-bottom:8px;font-size:29px}.login-card>p{color:#8b96a7;margin-bottom:30px;font-size:13px}.login-card label{color:#465267;margin-bottom:18px;font-size:12px;font-weight:600;display:block}.input-wrap{border:1px solid #d9e0e9;border-radius:9px;align-items:center;margin-top:8px;padding:0 11px;display:flex}.input-wrap:focus-within{border-color:#76a0f9;box-shadow:0 0 0 3px #e7efff}.input-wrap>svg{color:#939eae;width:17px}.input-wrap input{border:0;outline:0;width:100%;padding:12px 10px}.eye{color:#8d98a8;background:0 0;border:0;padding:5px}.login-btn{width:100%;margin-top:3px;padding:13px}.help{text-align:center;color:#a0a8b5;margin-top:22px;display:block}.screen-loader{place-items:center;min-height:100vh;display:grid}.screen-loader span{border:3px solid #d7e3fa;border-top-color:var(--blue);border-radius:50%;width:35px;height:35px;animation:.8s linear infinite spin}.menu-btn,.mobile-close{display:none}.muted{color:#9aa4b1;padding:15px;font-size:12px}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=900px){.sidebar{transition:all .2s;transform:translate(-100%)}.sidebar.open{transform:none}.overlay{z-index:15;background:#10182880;position:fixed;inset:0}.mobile-close,.menu-btn{place-items:center;display:grid}.app-shell>main{margin-left:0}.topbar{justify-content:flex-start;gap:12px;padding:0 18px}.role-badge{margin-left:auto}.content{padding:20px}.results-grid{grid-template-columns:1fr}.tests-panel{max-height:330px;overflow:auto}.login-page{grid-template-columns:1fr}.login-visual{display:none}.login-logo{margin-bottom:25px;display:grid}}@media (width<=640px){.content{padding:16px}.page-head{align-items:flex-start}.page-head h1{font-size:21px}.page-head .primary{padding:10px;font-size:0}.page-head .primary svg{margin:0}.top-title small{display:none}.workspace-head{align-items:flex-start}.workspace-head,.score-head{padding:16px}.actions{flex-direction:column}.actions button{padding:8px;font-size:0}.days{gap:4px;padding-inline:10px}.days button{padding:8px 2px}.attendance-list,.score-list{padding:5px 12px}.student-row,.score-row{flex-wrap:wrap;padding:11px 0}.student-name{min-width:calc(100% - 105px)}.status-buttons{margin-left:64px}.reason{width:calc(100% - 64px);margin-left:64px}.save-bar{padding:13px}.save-bar>span{display:none}.inline-form{grid-template-columns:1fr}.manage-list>div{gap:8px}.form-grid{grid-template-columns:1fr}.search{width:100%}.table-tools>span{display:none}.login-panel{padding:25px}.login-card h2{font-size:25px}.group-card{min-width:170px}.score-input{margin-left:auto}}.danger-action{color:#dc2626;background:#fff7f7;border:1px solid #fecaca;border-radius:8px;justify-content:center;align-items:center;gap:7px;padding:10px 15px;font-size:13px;font-weight:600;display:inline-flex}.danger-action:hover{background:#feecec;border-color:#fca5a5}.danger-action:disabled{opacity:.55}.score-head-actions{align-items:center;gap:8px;display:flex}.score-head-actions>svg{color:#f3ac21;width:36px;height:36px;margin-left:5px}@media (width<=900px){.score-head{align-items:flex-start;gap:12px}.score-head-actions{flex-wrap:wrap;justify-content:flex-end}.score-head-actions button{padding:8px;font-size:0}}@media (width<=640px){.workspace-head .actions{grid-template-columns:repeat(2,auto);display:grid}.workspace-head .actions .danger-action{padding:8px;font-size:0}.score-head-actions>svg{display:none}}.student-manage-actions{align-items:center;gap:7px;display:flex}.parent-link-button svg{width:16px}.parent-access-modal{padding:20px}.mini-loader{text-align:center;color:#8490a2;padding:35px}.access-active{color:#158443;background:#eaf9ef;border-radius:9px;align-items:center;gap:11px;margin-bottom:16px;padding:12px 14px;display:flex}.access-active span,.access-active small{display:block}.access-active small{margin-top:3px;font-size:10px}.parent-access-share{grid-template-columns:180px 1fr;align-items:center;gap:20px;display:grid}.qr-card{border:1px solid #e4e9f1;border-radius:12px;place-items:center;padding:14px;display:grid}.access-details label{color:#596579;margin-bottom:13px;font-size:11px;font-weight:700;display:block}.access-details input{color:#596579;background:#f9fafc;border:1px solid #dce2ea;border-radius:8px;width:100%;margin-top:6px;padding:10px}.access-details .pin-display{letter-spacing:7px;text-align:center;color:#172033;font-size:23px;font-weight:800}.access-details p{color:#8994a4;font-size:11px;line-height:1.6}.parent-access-actions{flex-wrap:wrap}.access-empty{text-align:center;padding:30px 15px}.access-empty>svg{color:#8aa9e9;width:48px;height:48px}.access-empty h3{margin:12px 0 7px}.access-empty p{color:#8792a4;margin-bottom:18px;font-size:12px}@media (width<=640px){.student-manage-actions{flex-direction:column;align-items:stretch}.parent-link-button{font-size:0}.parent-access-share{grid-template-columns:1fr}.qr-card{width:max-content;margin:auto}.parent-access-actions{grid-template-columns:1fr;display:grid}.parent-access-actions button{width:100%}}.manage-error{margin:14px 20px 0}.excused-control{display:inline-flex;position:relative}.excused-reason-tooltip{z-index:32;color:#fff;white-space:normal;overflow-wrap:anywhere;opacity:0;visibility:hidden;pointer-events:none;background:#172033;border-radius:7px;width:max-content;max-width:min(340px,75vw);padding:8px 10px;font-size:11px;line-height:1.4;transition:all .15s;position:absolute;bottom:calc(100% + 9px);right:0;transform:translateY(3px);box-shadow:0 8px 24px #10182838}.excused-reason-tooltip:after{content:"";border:5px solid #0000;border-top-color:#172033;position:absolute;top:100%;right:20px}.excused-control:hover .excused-reason-tooltip,.excused-control:focus-within .excused-reason-tooltip{opacity:1;visibility:visible;transform:none}.excused-control.editing .excused-reason-tooltip{display:none}.reason-popover{z-index:35;background:#fffdf6;border:1px solid #f1c65c;border-radius:11px;width:280px;padding:12px;position:absolute;bottom:calc(100% + 10px);right:0;box-shadow:0 14px 38px #1018282e}.reason-popover:after{content:"";border:7px solid #0000;border-top-color:#f1c65c;position:absolute;top:100%;right:23px}.reason-popover-head{color:#8a5b06;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:12px;display:flex}.reason-popover-head button{color:#8a5b06;background:0 0;border:0;place-items:center;padding:2px;display:grid}.reason-popover-head svg{width:16px;height:16px}.reason-popover textarea{resize:vertical;background:#fff;border:1px solid #e8c66f;border-radius:8px;outline:0;width:100%;min-height:76px;padding:9px 10px;font-size:12px;line-height:1.45;display:block}.reason-popover textarea:focus{border-color:#dca820;box-shadow:0 0 0 3px #fef1c7}.reason-popover>small{color:#967326;margin-top:6px;font-size:9px;display:block}.percent{text-align:center;border-radius:7px;width:56px;padding:5px 7px}.percent.passed{color:#08783a;background:#dff7e8}.percent.failed{color:#c52c2c;background:#ffe5e5}.score-row.result-state{border:1px solid #0000;border-radius:10px;margin:7px 0;padding:10px 12px;transition:background .18s,border-color .18s}.score-row.result-state.passed{background:#f0fbf4;border-color:#a9e7c0}.score-row.result-state.failed{background:#fff3f3;border-color:#f3b3b3}.score-row.result-state.neutral{background:#fff;border-bottom-color:#edf0f4}.score-row.result-state.passed .student-avatar{color:#128348;background:#dff7e8}.score-row.result-state.failed .student-avatar{color:#cf3434;background:#ffe4e4}.outcome-badge{white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:4px;min-width:78px;padding:6px 8px;font-size:10px;font-weight:800;display:inline-flex}.outcome-badge svg{width:13px;height:13px}.outcome-badge.passed{color:#08783a;background:#d7f4e2}.outcome-badge.failed{color:#bd2525;background:#fdd}.form-grid{align-items:start}@media (width<=640px){.reason-popover{z-index:110;border-radius:14px;width:auto;padding:15px;position:fixed;bottom:12px;left:12px;right:12px;box-shadow:0 18px 55px #10182855}.reason-popover:after{display:none}.reason-popover textarea{min-height:96px}.excused-reason-tooltip{max-width:260px;left:50%;right:auto;transform:translate(-50%,3px)}.excused-control:hover .excused-reason-tooltip,.excused-control:focus-within .excused-reason-tooltip{transform:translate(-50%)}.score-row.result-state{padding:12px}.outcome-badge{margin-left:auto}.score-row.result-state .score-input{margin-left:64px}}@media (width<=420px){.login-role-grid{grid-template-columns:1fr}.login-role-grid>button{grid-template-columns:42px 1fr;column-gap:11px;padding:14px;display:grid}.login-role-grid b{margin:2px 0}.login-role-grid small{grid-column:2}}.login-back{color:#61718a;background:0 0;border:0;align-items:center;gap:6px;margin-bottom:16px;padding:0;font-size:11px;font-weight:700;display:flex}.login-back svg{width:15px}.login-role-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.login-role-grid>button{text-align:left;color:#253249;background:#fff;border:1px solid #dde4ee;border-radius:13px;padding:20px 15px;transition:all .18s}.login-role-grid>button:hover,.login-role-grid>button:focus-visible{border-color:#7ca4f7;transform:translateY(-2px);box-shadow:0 0 0 3px #e8efff}.login-role-grid>button>span{color:#2563eb;background:#eaf2ff;border-radius:10px;place-items:center;width:42px;height:42px;display:grid}.login-role-grid b,.login-role-grid small{display:block}.login-role-grid b{margin:14px 0 6px;font-size:13px}.login-role-grid small{color:#8490a2;font-size:10px;line-height:1.5}.code-wrap input{text-transform:uppercase;letter-spacing:6px;font-size:17px;font-weight:800}@media (width<=420px){.login-role-grid{grid-template-columns:1fr}.login-role-grid>button{grid-template-columns:42px 1fr;column-gap:11px;padding:14px;display:grid}.login-role-grid b{margin:2px 0}.login-role-grid small{grid-column:2}}.homework-selector{background:#fffdf7;border:1px solid #eadcae;border-radius:12px;margin:16px 22px;overflow:hidden}.homework-selector>div:first-child{border-bottom:1px solid #f0e6c5;align-items:center;gap:11px;padding:13px 15px;display:flex}.homework-selector h3{margin:0 0 3px;font-size:13px}.homework-selector p{color:#8e7d54;margin:0;font-size:10px}.homework-selector>div:first-child>b{color:#b47908;margin-left:auto;font-size:11px}.homework-icon{color:#b87908;background:#fff1c9;border-radius:9px;place-items:center;width:36px;height:36px;display:grid}.homework-students{flex-wrap:wrap;gap:7px;padding:12px 15px;display:flex}.homework-students button{color:#68758a;background:#fff;border:1px solid #e1e6ed;border-radius:8px;align-items:center;gap:6px;padding:7px 10px;font-size:10px;display:flex}.homework-students button>span{border:1px solid #cfd7e3;border-radius:4px;place-items:center;width:15px;height:15px;font-size:9px;display:grid}.homework-students button.selected{color:#946006;background:#fff4d9;border-color:#e5ae3b;font-weight:700}.homework-students button.selected>span{color:#fff;background:#e6a928;border-color:#e6a928}.clear-mark{place-items:center;height:31px;color:#929cab!important;background:#f8fafc!important;width:31px!important;padding:0!important;display:grid!important}.clear-mark:hover{color:#d43c3c!important;border-color:#efb1b1!important}.clear-mark svg{width:14px}.reason-popover-actions{justify-content:space-between;align-items:center;gap:8px;margin-top:8px;display:flex}.reason-popover-actions small{color:#967326;font-size:9px}.reason-ok{color:#fff!important;background:#d99a17!important;border:0!important;border-radius:7px!important;padding:6px 13px!important}.reason-ok:disabled{opacity:.45}.reason-popover>small{display:none}@media (width<=640px){.homework-selector{margin:12px}.homework-students{max-height:150px;overflow:auto}.clear-mark{margin-left:3px}.status-buttons{flex-wrap:wrap}.reason-popover-actions{align-items:flex-end}.reason-ok{min-width:64px}}.legend .dot.unmarked{background:#fff;border:1px solid #cbd5e1}.legend em{color:#94a0b2;margin-left:auto;font-style:normal}.student-row{min-width:0}.student-name{flex:0 0 190px}.attendance-history{overscroll-behavior-inline:contain;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:#c7d3e6 transparent;gap:6px;min-width:0;max-width:420px;padding:6px 3px;display:flex;overflow-x:auto}.attendance-history::-webkit-scrollbar{height:4px}.attendance-history::-webkit-scrollbar-thumb{background:#c7d3e6;border-radius:8px}.attendance-history-item{scroll-snap-align:start;border-radius:9px;flex:0 0 54px;justify-items:center;gap:4px;padding:3px 2px;display:grid}.attendance-history-item.selected-date{background:#edf4ff}.attendance-history-item small{color:#8793a5;white-space:nowrap;font-size:9px;line-height:1}.attendance-history-item i{border:1px solid #0000;border-radius:50%;place-items:center;width:27px;height:27px;font-style:normal;display:grid;box-shadow:0 1px 3px #17203312}.attendance-history-item i svg{stroke-width:3px;width:14px;height:14px}.attendance-history-item i.present{color:#fff;background:#22b95f;border-color:#22b95f}.attendance-history-item i.absent{color:#fff;background:#ef4b4b;border-color:#ef4b4b}.attendance-history-item i.excused{color:#fff;background:#f3a712;border-color:#f3a712}.attendance-history-item i.unmarked{color:#a4afbf;background:#fff;border-color:#cfd7e3}.attendance-history-empty{color:#9aa4b3;white-space:nowrap;padding:13px 8px;font-size:10px}.student-row .status-buttons{flex:none;margin-left:auto}@media (width<=1100px){.student-name{flex-basis:155px}.attendance-history{max-width:310px}}@media (width<=760px){.student-row{grid-template-columns:18px 36px minmax(0,1fr);gap:8px 10px;padding:11px 0;display:grid}.student-name{flex:none;min-width:0}.attendance-history{grid-column:2/-1;width:100%;max-width:none;padding:5px 0}.student-row .status-buttons{grid-column:2/-1;justify-content:flex-start;margin:0}.attendance-history-item{flex-basis:49px}.legend{flex-wrap:wrap;gap:12px}.legend em{width:100%;margin:0}}.code-wrap input{letter-spacing:normal;text-align:left;text-transform:none;font-size:14px;font-weight:500}.group-strip{border:1px solid var(--border);background:#fff;border-radius:15px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;margin:0 0 18px;padding:22px;display:grid;overflow:visible;box-shadow:0 8px 24px #17203308}.group-card{text-align:left;color:#263247;background:linear-gradient(145deg,#fff,#f8faff);border:1px solid #e1e7f0;border-radius:14px;flex-direction:column;justify-content:flex-end;align-items:flex-start;gap:13px;min-width:0;min-height:150px;padding:22px 17px 17px;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex;position:relative;overflow:hidden}.group-card:before{content:"";background:#3b82f6;height:4px;position:absolute;inset:0 0 auto}.group-card:nth-child(4n+2):before{background:#8b5cf6}.group-card:nth-child(4n+3):before{background:#14b8a6}.group-card:nth-child(4n+4):before{background:#f59e0b}.group-card:after{content:"Faol";color:#168747;background:#eaf8ef;border-radius:20px;padding:5px 8px;font-size:9px;font-weight:700;position:absolute;top:16px;right:15px}.group-card.selected:after{content:"Tanlandi";color:#2463da;background:#e7efff}.group-card:hover{border-color:#b6c9ef;transform:translateY(-3px);box-shadow:0 12px 28px #1d4ed812}.group-card.selected{background:linear-gradient(145deg,#fff,#edf4ff);border-color:#5386ee;box-shadow:0 0 0 3px #dbe8ff,0 12px 28px #1d4ed817}.group-card .group-icon{color:#2867d9;background:#e9f1ff;border-radius:11px;flex:none;width:44px;height:44px}.group-card:nth-child(4n+2) .group-icon{color:#7c45d7;background:#f0ebff}.group-card:nth-child(4n+3) .group-icon{color:#0d927f;background:#e6f8f4}.group-card:nth-child(4n+4) .group-icon{color:#c78008;background:#fff4dd}.group-card>span:last-child{border-top:1px solid #e8edf4;width:100%;padding-top:11px}.group-card b{color:#1d293d;font-size:15px}.group-card small{color:#7e899a;margin-top:6px;font-size:10px}@media (width<=640px){.group-strip{grid-template-columns:1fr;padding:16px}.group-card{min-height:140px}}.group-code{color:#2563eb;letter-spacing:1px;background:#edf3ff;border-radius:6px;margin-top:9px;padding:4px 7px;font-size:10px;font-style:normal;font-weight:800;display:inline-block}.workspace-code{color:#60708a;background:#edf3ff;border-radius:7px;margin-top:8px;padding:5px 8px;font-size:10px;display:inline-block}.workspace-code b{color:#2563eb;letter-spacing:1px}.created-group{text-align:center;padding:30px 24px}.created-group>svg{color:#16a052;width:52px;height:52px}.created-group h3{margin:12px 0 7px}.created-group>p{color:#7d8999;font-size:12px}.created-group>div{background:#f2f6fd;border-radius:11px;justify-content:center;align-items:center;gap:12px;margin:22px 0;padding:14px;display:flex}.created-group>div>b{letter-spacing:5px;color:#1f5ed7;font-size:26px}.created-group>.primary{min-width:130px}.group-access-note{color:#68778e;background:#edf4ff;border-radius:8px;margin:15px 20px 0;padding:10px 12px;font-size:11px}.group-access-note b{color:#2563eb;letter-spacing:1px}.inline-form.student-create-form{grid-template-columns:1fr 1fr 1fr auto}.compact-students .student-row-actions{gap:7px;display:flex}.compact-action{background:#fff;border:1px solid #dce3ed;border-radius:8px;place-items:center;width:34px;height:34px;padding:0;display:grid}.compact-action svg{width:16px}.compact-action.edit{color:#2867d9}.compact-action.deactivate{color:#d43c3c;background:#fff6f6}.compact-action.activate{color:#11864a;background:#f0fbf4}@media (width<=800px){.inline-form.student-create-form{grid-template-columns:1fr 1fr}.inline-form.student-create-form .primary{grid-column:1/-1}}@media (width<=520px){.inline-form.student-create-form{grid-template-columns:1fr}.inline-form.student-create-form .primary{grid-column:auto}.created-group>div{flex-direction:column}.compact-students>div{gap:10px}.compact-students>div>span{flex:1;min-width:0}.compact-action{width:38px;height:38px}}.password-field{align-items:center;display:flex;position:relative}.password-field input{padding-right:40px!important}.password-field button{color:#7b8798;background:0 0;border:0;border-radius:7px;place-items:center;width:32px;height:32px;display:grid;position:absolute;right:5px}.password-field button:hover{color:#2563eb;background:#edf3ff}.password-field button svg{width:16px;height:16px}.inline-form .password-field input{margin:0}.form .password-field{margin-top:7px}.form .password-field input{margin-top:0}.student-parent-password{align-items:center;gap:5px;color:#6c7890!important;display:flex!important}.student-parent-password span{align-items:center;gap:4px;display:inline-flex}.student-parent-password b{color:#253858;letter-spacing:.5px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.student-parent-password button{color:#2563eb;background:#edf3ff;border:0;border-radius:5px;place-items:center;width:24px;height:22px;padding:0;display:grid}.student-parent-password svg{width:13px;height:13px}.password-unavailable{color:#a27821!important}.compact-action.transfer{color:#7c3aed;background:#f7f2ff}.transfer-student-form select{background:#fff;border:1px solid #dce2ea;border-radius:8px;width:100%;margin-top:7px;padding:11px 12px}.transfer-student-summary{color:#6d28d9;background:#f3f0ff;border-radius:10px;align-items:center;gap:12px;margin-bottom:17px;padding:13px 14px;display:flex}.transfer-student-summary>svg{width:24px}.transfer-student-summary b,.transfer-student-summary small{display:block}.transfer-student-summary small{color:#7c718f;margin-top:4px;font-size:10px}.transfer-note{color:#52667f;background:#eff8ff;border-radius:9px;padding:11px 12px;font-size:11px;line-height:1.55}
