.keisa,.keisa.login{max-width:1080px;margin:30px auto;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;color:#172033}.keisa header{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#103f77,#1774c5);color:#fff;padding:24px;border-radius:20px 20px 0 0}.keisa header h1{margin:0;color:#fff}.keisa header a{color:#fff}.keisa nav{display:flex;gap:8px;flex-wrap:wrap;background:#eef5fc;padding:10px}.keisa nav a{padding:8px 12px;text-decoration:none;font-weight:700}.keisa section{background:#fff;border:1px solid #e0e7ef;border-radius:15px;padding:22px;margin:15px 0;box-shadow:0 8px 24px rgba(20,50,80,.05)}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.cards div,.plan div{background:#f4f8fc;border-radius:11px;padding:14px}.cards b,.cards span,.plan b,.plan span{display:block}.cards b{font-size:20px}.cards span,.plan span{font-size:12px;color:#687386}.plan{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;background:#eef7ff;padding:16px;border-radius:14px}.plan h3,.plan p{grid-column:1/-1}.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.grid label{font-size:13px;font-weight:650}.grid input,.grid select{display:block;width:100%;box-sizing:border-box;padding:10px;border:1px solid #ccd7e4;border-radius:8px;margin-top:5px}.btn{display:inline-block;background:#1264ad;color:white!important;border:0;border-radius:10px;padding:11px 18px;text-decoration:none;font-weight:750;cursor:pointer}.callout{padding:16px;background:#eef7ff;border-radius:12px}.chart{height:180px;display:flex;align-items:end;gap:10px;background:#f7f9fc;padding:15px;border-radius:12px}.chart div{height:150px;min-width:45px;display:flex;flex-direction:column;justify-content:end;align-items:center}.chart i{display:block;width:25px;background:#1c6fb7;border-radius:6px 6px 0 0}.chart small{font-size:10px}.keisa.login{text-align:center;max-width:500px;padding:40px;border:1px solid #e0e7ef;border-radius:20px}.keisa.login small{display:block;margin-top:20px;color:#687386}@media(max-width:700px){.keisa header{flex-direction:column;align-items:flex-start;gap:10px}.cards,.plan,.grid{grid-template-columns:1fr}.plan h3,.plan p{grid-column:auto}}
.info-card,.success-card{padding:16px 18px;border-radius:14px;margin:12px 0 18px;background:#eef7ff;border:1px solid #d8eafa}.success-card{background:#effaf3;border-color:#cfead8}.profile-form small,.workout-short small{display:block;color:#6c7787;font-weight:400;margin-top:5px}.step-title{display:flex;gap:12px;align-items:center;margin:22px 0 12px}.step-title>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#1264ad;color:#fff;font-weight:800}.step-title small{display:block;color:#6b7585}.checkin{display:grid;gap:14px}.scale-box{padding:15px;border:1px solid #dfe7ef;border-radius:14px;background:#fbfcfe}.scale-options,.rpe-row{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:10px}.scale-options label,.rpe-row label{cursor:pointer}.scale-options input,.rpe-row input{position:absolute;opacity:0}.scale-options span,.rpe-row span{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:62px;border:1px solid #d7e0e9;border-radius:11px;background:#fff}.scale-options strong{font-size:20px}.scale-options small,.rpe-row small{font-size:10px;color:#697586}.scale-options input:checked+span,.rpe-row input:checked+span{border:2px solid #1264ad;background:#eaf4ff;color:#0d5595}.hint{font-size:12px;color:#697586;margin:9px 0 0}.optional-note{font-weight:650}.optional-note input{display:block;width:100%;box-sizing:border-box;padding:10px;border:1px solid #ccd7e4;border-radius:8px;margin-top:5px}.full{grid-column:1/-1}.plan:before{content:"2";display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#1264ad;color:#fff;font-weight:800;align-self:center}.plan h3{align-self:center;margin:0}.workout-short input[readonly]{background:#f5f7fa}.keisa section{transition:transform .15s ease,box-shadow .15s ease}.keisa section:hover{box-shadow:0 12px 30px rgba(20,50,80,.08)}@media(max-width:700px){.scale-options,.rpe-row{grid-template-columns:repeat(5,minmax(52px,1fr));overflow-x:auto}.full{grid-column:auto}}

.guest-hero{text-align:center;padding:28px}.role-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:18px 0}.role-cards div{padding:16px;border:1px solid #dfe8f1;border-radius:14px;background:#fff}.role-cards b,.role-cards span{display:block}.role-cards span{font-size:12px;color:#687386;margin-top:6px}.register-card{padding:22px;border-radius:18px;background:#f7fbff;border:1px solid #dceaf7}.inline-form,.search-panel{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin:14px 0}.inline-form input,.inline-form select,.search-panel input,.search-panel select{padding:10px;border:1px solid #ccd7e4;border-radius:9px}.student-results,.class-list{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:12px 0}.student-pick,.class-list div{padding:12px;text-align:left;border:1px solid #dfe7ef;border-radius:10px;background:#fff;cursor:pointer}.student-pick small,.class-list span{display:block;color:#687386;margin-top:4px}.period-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:12px 0}.period-cards div{padding:13px;border-radius:12px;background:#f5f9fd}.period-cards b,.period-cards strong,.period-cards span{display:block}.period-cards strong{font-size:24px;color:#1264ad}.period-cards span{font-size:11px;color:#687386}@media(max-width:700px){.role-cards,.student-results,.class-list,.period-cards{grid-template-columns:1fr 1fr}.search-panel>*{width:100%}}

.wizard-head{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:18px}.wizard-head span{padding:11px;text-align:center;border-radius:10px;background:#eef2f6;color:#667386;font-weight:700}.wizard-head span.active{background:#1264ad;color:#fff}.wizard-step{display:none}.wizard-step.active{display:block;animation:keisaFade .25s ease}.wizard-actions{display:flex;justify-content:space-between;gap:10px;margin-top:18px}.back-step{border:1px solid #cbd7e3;background:#fff;border-radius:10px;padding:10px 16px;cursor:pointer}.test-info,.auto-result{padding:15px 17px;border-radius:13px;background:#eef7ff;border:1px solid #d5e9fb;margin:12px 0}.test-info p,.auto-result p{margin-bottom:0;color:#526174}.wizard .scale-box{margin:12px 0}.wizard .scale-options small{line-height:1.2;text-align:center;padding:3px}.wizard .scale-options span{min-height:86px}@keyframes keisaFade{from{opacity:.2;transform:translateY(5px)}to{opacity:1;transform:none}}@media(max-width:700px){.wizard-head{grid-template-columns:1fr}.wizard .scale-options{grid-template-columns:repeat(5,minmax(90px,1fr))}}

.analysis-card{margin:18px 0;padding:20px;border-radius:18px;background:linear-gradient(145deg,#f7fbff,#eef6fd);border:1px solid #d9e9f7}.analysis-title{display:flex;justify-content:space-between;align-items:center;gap:15px}.analysis-title h3{margin:2px 0 10px}.analysis-title small{font-size:10px;letter-spacing:1.2px;color:#60758a}.overall{padding:9px 14px;border-radius:999px;background:#1264ad;color:#fff;font-weight:800}.fitness-row{display:grid;grid-template-columns:130px 1fr 105px;gap:10px;align-items:center;margin:11px 0;font-size:12px}.meter{height:10px;background:#dfe8f0;border-radius:99px;overflow:hidden}.meter i{display:block;height:100%;background:#1264ad;border-radius:99px}.analysis-note{margin:15px 0 0;padding-top:12px;border-top:1px solid #d8e5ef}.plan-tabs{margin:16px 0;border:1px solid #dce7f1;border-radius:16px;overflow:hidden}.tab-buttons{display:grid;grid-template-columns:repeat(3,1fr);background:#f2f6fa}.tab-buttons button{border:0;padding:12px;background:transparent;font-weight:750;cursor:pointer}.tab-buttons button.active{background:#1264ad;color:#fff}.tab-pane{display:none;padding:17px;background:#fff}.tab-pane.active{display:block}.tab-pane p{margin-bottom:0}.keisa-result-toast{padding:12px;background:#effaf3;border:1px solid #cfe9d8;border-radius:12px}@media(max-width:700px){.fitness-row{grid-template-columns:1fr}.analysis-title{align-items:flex-start;flex-direction:column}.overall{align-self:flex-start}}

.child-grid{display:grid;gap:18px}.child-card{border:1px solid #dce7f0;border-radius:18px;padding:18px;background:#fff}.compare-card{display:grid;grid-template-columns:1fr auto 1fr auto;gap:12px;align-items:center;padding:14px;background:#f6f9fc;border-radius:13px}.compare-card div:not(.arrow){display:flex;flex-direction:column}.compare-card small{color:#708092}.compare-card strong{font-size:20px;color:#1264ad}.arrow{font-size:22px}.trend{font-weight:800;padding:7px 10px;background:#eaf4ff;border-radius:999px}.verify-box{border:1px solid #dce7f0;border-radius:16px;padding:16px;margin:15px 0;background:#fbfdff}.verify-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 0;border-top:1px solid #e5edf4}.verify-row small{display:block;color:#69798a;margin-top:4px}.agg-row{display:grid;grid-template-columns:130px 1fr 40px;gap:10px;align-items:center;margin:10px 0}@media(max-width:700px){.compare-card{grid-template-columns:1fr 20px 1fr}.trend{grid-column:1/-1;text-align:center}.verify-row{align-items:flex-start;flex-direction:column}.agg-row{grid-template-columns:90px 1fr 30px}}

.progress-chart .chart-title{display:flex;justify-content:space-between;align-items:end}.svg-wrap{position:relative;height:230px;margin:16px 0 24px;padding-bottom:22px}.svg-wrap svg{width:100%;height:100%;overflow:visible}.svg-wrap line{stroke:#dbe5ed;stroke-width:.4}.svg-wrap polyline{fill:none;stroke:#1264ad;stroke-width:2.2;vector-effect:non-scaling-stroke}.chart-labels{position:absolute;left:0;right:0;bottom:0;height:18px}.chart-labels span{position:absolute;transform:translateX(-50%);font-size:9px;color:#6c7885}.cohort-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.cohort-grid div{padding:14px;background:#f5f9fc;border-radius:12px}.cohort-grid b,.cohort-grid strong,.cohort-grid span{display:block}.cohort-grid strong{font-size:24px;color:#1264ad}.print-report{float:right;margin-top:-44px}@media print{body *{visibility:hidden}.child-card,.child-card *{visibility:visible}.child-card{position:absolute;left:0;top:0;width:100%;border:0}.print-report,nav,.keisa header{display:none!important}}@media(max-width:700px){.cohort-grid{grid-template-columns:1fr 1fr}.progress-chart .chart-title{align-items:flex-start;flex-direction:column}}

.keisa.fullscreen,.keisa:not(.login){min-height:100vh;box-sizing:border-box}.keisa.guest.fullscreen{max-width:none!important;margin:0!important;padding:0!important;background:#f3f7fb}.login-brand{height:76px;display:flex;align-items:center;gap:12px;padding:0 max(24px,5vw);background:#fff;border-bottom:1px solid #e2eaf1}.brand-mark{width:44px;height:44px;display:grid;place-items:center;border-radius:13px;background:#1264ad;color:#fff;font-weight:900}.login-brand h1{font-size:20px;margin:0}.login-brand span{font-size:11px;color:#687789}.login-layout{min-height:calc(100vh - 116px);display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:center;max-width:1180px;margin:auto;padding:42px 30px}.login-intro h2{font-size:clamp(32px,5vw,58px);line-height:1.04;max-width:720px;margin:10px 0 18px}.login-intro>p{font-size:16px;line-height:1.7;max-width:650px;color:#5e6e7d}.eyebrow{font-size:11px;font-weight:900;letter-spacing:1.4px;color:#1264ad}.feature-pills{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0}.feature-pills span{padding:8px 11px;background:#fff;border:1px solid #dce7f0;border-radius:999px;font-size:12px}.login-main{display:inline-block;padding:13px 20px}.register-panel{background:#fff;border:1px solid #dfe8ef;border-radius:22px;padding:24px;box-shadow:0 20px 60px rgba(30,60,90,.08)}.register-panel h3{margin-top:0}.register-panel .register-card{padding:0;border:0;background:transparent}.keisa-foot{text-align:center;height:40px;color:#7a8793;font-size:11px}.week-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin:16px 0}.cal-day{padding:12px 8px;border-radius:12px;background:#f4f7fa;text-align:center;border:1px solid #e3eaf0}.cal-day small,.cal-day b,.cal-day span,.cal-day em{display:block}.cal-day b{font-size:22px;margin:3px}.cal-day span{font-size:10px;color:#657587}.cal-day em{font-style:normal;font-size:9px;margin-top:7px;font-weight:800}.cal-day.done{background:#eef9f2;border-color:#cce8d5}.month-target{display:grid;grid-template-columns:150px 1fr;gap:14px;align-items:center;padding-top:14px;border-top:1px solid #dce7ef}.month-target div b,.month-target div span{display:block}.month-target div b{font-size:30px;color:#1264ad}.month-target div span{font-size:10px;color:#697989}@media(max-width:800px){.login-layout{grid-template-columns:1fr;gap:25px;padding:28px 18px}.login-intro h2{font-size:38px}.week-calendar{grid-template-columns:repeat(4,1fr)}.month-target{grid-template-columns:1fr}}@media(max-width:480px){.week-calendar{grid-template-columns:repeat(2,1fr)}}

.danger-zone{padding:18px;border:1px solid #ead6d6;border-radius:16px;background:#fffafa}.danger-zone hr{border:0;border-top:1px solid #eedede;margin:18px 0}.danger-btn{border:0;border-radius:9px;padding:10px 14px;background:#9b2c2c;color:#fff;font-weight:800;cursor:pointer}.danger-btn.small{padding:7px 10px;font-size:11px}

.keisa-login-form{max-width:520px;background:#fff;border:1px solid #dfe8ef;border-radius:20px;padding:22px;margin-top:24px;box-shadow:0 18px 50px rgba(30,60,90,.07)}
.keisa-login-form label{display:block;font-weight:700;font-size:12px;margin-bottom:13px}
.keisa-login-form input[type=text],.keisa-login-form input[type=password]{display:block;width:100%;box-sizing:border-box;margin-top:6px;padding:12px 13px;border:1px solid #cad7e2;border-radius:10px;background:#fff}
.keisa-login-form .remember{display:flex;align-items:center;gap:8px;font-weight:500}
.keisa-login-form .remember input{margin:0}.login-error{max-width:520px;padding:11px 13px;margin:14px 0;background:#fff1f1;border:1px solid #efcccc;border-radius:10px;color:#8d2929;font-weight:700}
.logout-link{margin-left:auto!important;background:#fff1f1!important;color:#8f2f2f!important}

.siks-login{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#132238;background:linear-gradient(135deg,#f5f9fd 0%,#edf4fa 100%)!important}.siks-top{height:82px;padding:0 max(24px,5vw);display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.9);border-bottom:1px solid #e2eaf1;backdrop-filter:blur(12px)}.siks-logo{display:flex;align-items:center;gap:12px}.siks-logo>span{width:45px;height:45px;border-radius:14px;display:grid;place-items:center;background:#0e5da8;color:#fff;font-weight:900;box-shadow:0 8px 22px rgba(14,93,168,.22)}.siks-logo b,.siks-logo small{display:block}.siks-logo b{font-size:19px}.siks-logo small{font-size:10px;color:#718092}.siks-secure{font-size:11px;font-weight:800;color:#607387;letter-spacing:.4px}.siks-login-main{min-height:calc(100vh - 128px);display:grid!important;grid-template-columns:1.05fr .95fr!important;align-items:center;gap:70px;max-width:1180px!important;margin:auto!important;padding:45px 30px!important}.siks-hero h1{font-size:clamp(40px,5.2vw,67px);line-height:1.03;letter-spacing:-2.3px;margin:12px 0 22px}.siks-hero h1 strong{color:#0e5da8}.siks-hero>p{max-width:650px;font-size:16px;line-height:1.75;color:#5e7082}.siks-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:30px}.siks-benefits div{background:rgba(255,255,255,.75);border:1px solid #dce7f0;border-radius:14px;padding:13px}.siks-benefits b,.siks-benefits span{display:block}.siks-benefits b{font-size:10px;color:#0e5da8}.siks-benefits span{font-size:11px;font-weight:800;margin-top:4px}.auth-card{max-width:460px;margin-left:auto;background:#fff;border:1px solid #dce6ee;border-radius:24px;padding:30px;box-shadow:0 30px 80px rgba(25,55,85,.12)}.auth-head>span{font-size:9px;font-weight:900;letter-spacing:1.5px;color:#0e5da8}.auth-head h2{font-size:28px;margin:5px 0}.auth-head p{font-size:12px;color:#718091}.keisa-login-form.clean{box-shadow:none;border:0;padding:0;margin-top:23px;max-width:none}.field-wrap{position:relative;margin-top:7px}.field-wrap>span{position:absolute;left:13px;top:13px;font-size:8px;color:#8293a4}.keisa-login-form.clean .field-wrap input{margin:0;padding:13px 55px 13px 32px;border-color:#d5e0e8;background:#f9fbfd}.show-pass{position:absolute;right:8px;top:7px;border:0;background:transparent;color:#0e5da8;font-size:10px;font-weight:800;padding:7px;cursor:pointer}.auth-row{display:flex;justify-content:space-between;margin:3px 0 16px}.auth-submit{width:100%;display:flex!important;justify-content:space-between;align-items:center;padding:13px 16px!important}.auth-divider{height:25px;border-bottom:1px solid #e5ebf0;text-align:center;margin-bottom:20px}.auth-divider span{position:relative;top:16px;background:#fff;padding:0 10px;font-size:10px;color:#8996a2}.register-toggle{display:block;width:100%;border:0;background:transparent;color:#536779;padding:9px;cursor:pointer;font-size:12px}.register-toggle b{color:#0e5da8}.register-drawer{display:none;margin-top:14px;border-top:1px solid #e5ebf0;padding-top:16px}.register-drawer.open{display:block;animation:siksOpen .25s ease}@keyframes siksOpen{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}.siks-bottom{height:46px;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,5vw);font-size:9px;color:#83909d}.siks-bottom span:first-child{font-weight:900;color:#0e5da8}@media(max-width:850px){.siks-login-main{grid-template-columns:1fr!important;gap:28px!important;padding:28px 18px!important}.siks-hero{text-align:center}.siks-hero>p{margin-left:auto;margin-right:auto}.auth-card{margin:auto}.siks-hero h1{font-size:42px;letter-spacing:-1.4px}.siks-benefits{max-width:500px;margin:25px auto 0}}@media(max-width:520px){.siks-secure{display:none}.siks-top{height:70px}.siks-login-main{min-height:calc(100vh - 110px)}.siks-benefits{grid-template-columns:1fr}.auth-card{padding:22px;border-radius:18px}.siks-hero h1{font-size:34px}.siks-bottom span:last-child{display:none}}

.welcome-health{display:grid;grid-template-columns:1.5fr repeat(3,minmax(130px,.55fr));gap:14px;align-items:stretch;background:linear-gradient(135deg,#0d5ea8,#1678c9);color:#fff;border-radius:22px;padding:22px;margin:0 0 18px;box-shadow:0 18px 45px rgba(14,93,168,.18)}
.welcome-health .welcome-copy small{font-size:9px;font-weight:900;letter-spacing:1.4px;opacity:.75}.welcome-health h3{margin:5px 0 7px;font-size:24px}.welcome-health p{margin:0;line-height:1.55;font-size:12px;opacity:.92}
.health-stat{background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.18);border-radius:15px;padding:14px;display:flex;flex-direction:column;justify-content:center}.health-stat span{font-size:9px;text-transform:uppercase;letter-spacing:.8px;opacity:.75}.health-stat b{font-size:17px;margin-top:5px}.health-note{grid-column:1/-1;font-size:10px;opacity:.78;border-top:1px solid rgba(255,255,255,.18);padding-top:10px}.welcome-health.thin,.welcome-health.over{background:linear-gradient(135deg,#7b5a12,#b78118)}.welcome-health.obese{background:linear-gradient(135deg,#813c3c,#b35454)}.welcome-health.neutral{background:linear-gradient(135deg,#536779,#71869a)}.profile-form .wide{grid-column:1/-1}.profile-form textarea,.register-card textarea{width:100%;box-sizing:border-box;border:1px solid #cad7e2;border-radius:10px;padding:11px;background:#fff}.demo-cred{padding:12px;border-radius:10px;background:#f5f8fb;margin:12px 0;font-size:12px}
@media(max-width:850px){.welcome-health{grid-template-columns:1fr 1fr}.welcome-copy,.health-note{grid-column:1/-1}}@media(max-width:520px){.welcome-health{grid-template-columns:1fr}.welcome-copy,.health-note{grid-column:auto}}

.profile-page{max-width:980px}.profile-form .wide{grid-column:1/-1}.profile-form textarea{width:100%;box-sizing:border-box;padding:11px;border:1px solid #cad7e2;border-radius:10px}.logo-field{border:1px dashed #cbd8e3;border-radius:14px;padding:16px}.logo-field>b{display:block;margin-bottom:10px}#keisa_logo_preview{width:160px;height:115px;display:grid;place-items:center;background:#f5f8fb;border-radius:12px;margin-bottom:12px;overflow:hidden}#keisa_logo_preview img{max-width:100%;max-height:100%;object-fit:contain}.btn.secondary{background:#e8f2fb!important;color:#0e5da8!important}.btn.ghost{background:transparent!important;color:#657789!important;border:1px solid #d5dfe7!important}.nav-data{background:#e8f2fb!important;color:#0e5da8!important;font-weight:800!important}#data{scroll-margin-top:20px}

.chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.profile-chart,.analysis-card{background:#fff;border:1px solid #dfe8ef;border-radius:18px;padding:18px}.hbar{display:grid;grid-template-columns:140px 1fr 35px;gap:9px;align-items:center;margin:10px 0;font-size:11px}.hbar>div{height:11px;background:#edf2f6;border-radius:20px;overflow:hidden}.hbar i{display:block;height:100%;background:linear-gradient(90deg,#1b6db5,#31a0df);border-radius:20px}.workout-chart-card{overflow:hidden}.workout-bars,.school-bars{height:230px;display:flex;align-items:flex-end;gap:9px;overflow-x:auto;padding:25px 5px 0}.work-col,.school-day{height:100%;min-width:38px;display:flex;flex-direction:column;justify-content:flex-end;align-items:center}.bar-pair{height:160px;display:flex;align-items:flex-end;gap:3px}.bar-pair i{display:block;width:11px;border-radius:6px 6px 2px 2px}.bar-pair .target{background:#c8d8e7}.bar-pair .actual{background:linear-gradient(#32a2df,#0e5da8)}.work-col small,.school-day small{font-size:8px;margin-top:6px;white-space:nowrap}.work-col b,.school-day b{font-size:9px;color:#0e5da8}.trend-badge{max-width:300px;background:#eaf5ff;color:#0e5da8;border-radius:20px;padding:8px 12px;font-size:10px;font-weight:800}.chart-legend{display:flex;gap:15px;font-size:10px;margin-top:10px}.chart-legend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:5px}.legend-target{background:#c8d8e7}.legend-actual{background:#0e5da8}.school-day i{display:block;width:20px;background:linear-gradient(#3ba9e4,#0e5da8);border-radius:7px 7px 2px 2px;max-height:160px}.period-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.period-tabs a{padding:8px 13px;border-radius:20px;background:#edf3f8;text-decoration:none;color:#52697d;font-size:11px;font-weight:800}.period-tabs a.active{background:#0e5da8;color:#fff}.monitor-table{overflow:auto}.monitor-table table,.student-report table{width:100%;border-collapse:collapse;font-size:10px}.monitor-table th,.monitor-table td,.student-report th,.student-report td{padding:9px;border-bottom:1px solid #e5ebf0;text-align:left;vertical-align:top}.monitor-table th,.student-report th{background:#f3f7fa;white-space:nowrap}.student-report{background:#fff;border:1px solid #dfe8ef;border-radius:18px;padding:20px;margin:16px 0;break-inside:avoid}.report-meta{display:flex;gap:12px;flex-wrap:wrap;font-size:10px;background:#f5f8fb;padding:10px;border-radius:10px}.print-actions{background:#eaf5ff;border:1px solid #cfe5f6;border-radius:14px;padding:15px}.kpi{margin-bottom:16px}@media(max-width:760px){.chart-grid{grid-template-columns:1fr}.hbar{grid-template-columns:105px 1fr 28px}.trend-badge{display:none}}@media print{body *{visibility:hidden!important}.print-report,.print-report *{visibility:visible!important}.print-report{position:absolute;left:0;top:0;width:100%;color:#000}.print-actions,header,nav{display:none!important}.student-report{page-break-after:always;border:0}.student-report table{font-size:9pt}}

.analytics-filter{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr)) auto;gap:10px;align-items:end;background:#fff;border:1px solid #dfe8ef;border-radius:16px;padding:14px;margin-bottom:12px}.analytics-filter label{font-size:9px;font-weight:800}.analytics-filter select,.analytics-filter input{width:100%;box-sizing:border-box;margin-top:5px;padding:9px;border:1px solid #d3dee7;border-radius:9px}.trend-bars{height:210px;display:flex;align-items:flex-end;gap:8px;overflow-x:auto;padding:20px 4px 0}.trend-bars>div{height:100%;min-width:38px;display:flex;flex-direction:column;justify-content:flex-end;align-items:center}.trend-bars i{display:block;width:20px;background:linear-gradient(#43afe5,#0e5da8);border-radius:7px 7px 2px 2px;max-height:160px}.trend-bars small{font-size:8px;white-space:nowrap;margin-top:5px}.trend-bars b{font-size:9px;color:#0e5da8}.closed-data{margin-top:14px;background:#fff;border:1px solid #dfe8ef;border-radius:14px;overflow:hidden}.closed-data>summary{cursor:pointer;padding:14px 16px;font-weight:800;color:#0e5da8;background:#f7fafc}.closed-data .monitor-table,.closed-data .verify-box{padding:12px}@media(max-width:900px){.analytics-filter{grid-template-columns:1fr 1fr}}@media(max-width:560px){.analytics-filter{grid-template-columns:1fr}}
