/* KRESUP V2.3.1 acceptance hotfix — flat KRESUP colors only. */
.v231-report-modal{width:min(1080px,96vw);max-height:92dvh;overflow:auto}.v231-report-head{display:flex;align-items:center;gap:16px;background:#fff;border:1px solid #dce7ef;border-radius:18px;padding:16px}.v231-report-head img{width:72px;height:72px;object-fit:contain;flex:0 0 72px}.v231-report-head h2{margin:0;color:var(--navy);font-size:18px}.v231-report-head b,.v231-report-head span,.v231-report-head small{display:block}.v231-report-head b{font-size:12px;margin-top:5px}.v231-report-head span,.v231-report-head small{font-size:8px;color:var(--muted);margin-top:4px}.v231-report-actions{display:flex;gap:8px;justify-content:flex-end;margin:12px 0}.v231-report-section{background:#fff;border:1px solid var(--line);border-radius:17px;padding:14px;margin-top:10px}.v231-report-section h3{margin:0 0 11px;font-size:13px;color:var(--navy)}.v231-info-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.v231-info-grid>div{background:#f7fafc;border:1px solid #e5edf3;border-radius:11px;padding:10px}.v231-info-grid span,.v231-info-grid b{display:block}.v231-info-grid span{font-size:7px;color:var(--muted)}.v231-info-grid b{font-size:9px;margin-top:4px;overflow-wrap:anywhere}.v231-contract-preview{padding:12px;border:1px solid #dce7ef;border-radius:12px;margin:9px 0;background:#fbfdfe}.v231-contract-preview>div{display:flex;justify-content:space-between;gap:10px}.v231-contract-preview span{font-size:8px;color:var(--muted)}.v231-contract-preview p{white-space:pre-wrap;font-size:9px;line-height:1.6;color:#3f556b}.v231-report-footer{text-align:center;color:var(--navy);font-weight:800;padding:18px 0 4px}.v231-daily-groups{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin-top:10px}.v231-daily-group{border:1px solid #e1eaf1;background:#f9fbfc;border-radius:13px;padding:10px}.v231-daily-group>b{display:block;font-size:9px;color:var(--navy);margin-bottom:8px}.v231-chipset{display:flex;gap:5px;flex-wrap:wrap}.v231-chip{appearance:none;border:1px solid #cbdbe6;background:#fff;color:#526a80;border-radius:999px;padding:7px 10px;font-size:8px;font-weight:800;cursor:pointer;min-height:32px}.v231-chip.active{background:var(--teal);border-color:var(--teal);color:#fff}.v231-sleep-duration{display:none;margin-top:8px}.v231-sleep-duration.show{display:block}.v231-sleep-duration label{font-size:7px;color:var(--muted)}.v231-sleep-duration input{width:100%;margin-top:4px}.v231-daily-extra{margin-top:9px}.v231-child-switch{appearance:none;border:0;background:transparent;color:var(--ink);font:inherit;font-weight:800;padding:0;text-align:left;cursor:pointer}.v231-child-list{display:grid;gap:8px}.v231-child-option{display:grid;grid-template-columns:46px 1fr;gap:10px;align-items:center;width:100%;text-align:left;border:1px solid var(--line);background:#fff;border-radius:13px;padding:10px;color:var(--ink)}.v231-child-option.active{border-color:var(--teal);background:#effafa}.v231-child-option span b,.v231-child-option span small{display:block}.v231-child-option span small{color:var(--muted);margin-top:3px}.v231-mobile-finance{max-width:900px}.v231-finance-hero{background:#fff;border:1px solid var(--line);border-top:5px solid var(--teal);border-radius:18px;padding:15px;margin-bottom:10px}.v231-finance-hero>span{font-size:8px;color:var(--muted);font-weight:800}.v231-finance-hero h2{margin:5px 0 12px}.v231-finance-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.v231-finance-kpis>div{background:#f7fafc;border:1px solid #e4edf3;border-radius:11px;padding:10px}.v231-finance-kpis small,.v231-finance-kpis b{display:block}.v231-finance-kpis small{font-size:7px;color:var(--muted)}.v231-finance-kpis b{font-size:11px;margin-top:4px}.v231-fin-row{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center;padding:9px 0;border-bottom:1px solid var(--line);font-size:9px}.v231-audience-note{background:#effafa;border:1px solid #b8e6e9;border-radius:11px;padding:10px;color:#24747a;font-size:8px}.modal-head>.btn{margin-left:auto;margin-right:8px}.modal-head .modal-close{margin-left:0}

@media(max-width:960px){
  body{overscroll-behavior-x:none}.app-shell.role-parent .mobile-page-title,.app-shell.role-teacher .mobile-page-title{display:none!important}.app-shell.role-parent .content,.app-shell.role-teacher .content{padding-top:9px}.app-shell.role-parent .toolbar h2,.app-shell.role-teacher .toolbar h2{font-size:15px}.app-shell.role-parent .toolbar p,.app-shell.role-teacher .toolbar p{font-size:7.5px}.app-shell.role-parent .card,.app-shell.role-teacher .card{border-radius:15px;padding:12px}.modal-backdrop{padding:calc(8px + env(safe-area-inset-top)) 8px calc(8px + env(safe-area-inset-bottom));align-items:flex-end}.modal{width:100%!important;max-width:100%!important;max-height:88dvh!important;overflow:auto;border-radius:20px 20px 12px 12px;padding:14px}.modal-head{position:sticky;top:-14px;z-index:5;background:#fff;padding:8px 0}.form-grid{grid-template-columns:1fr 1fr}.field input,.field select,.field textarea,.select-control{max-width:100%;width:100%;font-size:16px!important}.v231-info-grid{grid-template-columns:1fr 1fr}.v231-daily-groups{grid-template-columns:1fr 1fr}.v231-finance-kpis{grid-template-columns:1fr 1fr}.v231-report-head{align-items:flex-start}.v231-report-head img{width:52px;height:52px;flex-basis:52px}.v231-report-actions{position:sticky;top:48px;z-index:4;background:#f7fafc;padding:7px;border-radius:12px}.login-v204-form{padding:18px 14px!important;border-radius:20px!important;max-width:390px!important}.login-v204-form h2{font-size:22px!important}.login-v204-form p{font-size:11px!important}.login-v204-form .field{margin-top:12px!important}.login-v204-form input{height:48px!important;font-size:16px!important}.login-submit{height:48px!important}.child-hero{padding:12px!important;border-radius:16px!important}.child-photo{width:58px!important;height:58px!important}.parent-summary-grid{gap:7px!important}.parent-summary{min-height:88px!important;padding:10px!important}.quick-grid{gap:7px!important}.quick-tile{min-height:82px!important;padding:10px!important}.v230-student-card,.v230-daily-card{padding:11px!important;border-radius:15px!important}.v230-student-photo{width:50px!important;height:50px!important}.daily-card-stack{gap:9px!important}.v231-chip{min-height:36px;padding:7px 11px;font-size:9px}.v230-bottom-nav{height:70px!important;border-radius:22px!important;bottom:calc(6px + env(safe-area-inset-bottom))!important}.v230-bottom-nav .mobile-tab{height:54px!important}.v230-bottom-nav .v230-center-menu{width:62px!important;height:62px!important;transform:translateY(-20px)!important}.v230-menu-sheet{max-height:82dvh!important}.v230-menu-sheet .mobile-menu-list{max-height:58dvh!important}.content{min-width:0!important}.table-wrap{max-width:100%;overflow:auto;-webkit-overflow-scrolling:touch}.v231-report-modal{border-radius:20px 20px 12px 12px!important}
}
@media(max-width:620px){
  html{font-size:15px}.mobile-header{height:56px!important;min-height:calc(56px + env(safe-area-inset-top))!important}.mobile-brand svg,.mobile-brand .institution-logo{width:32px!important;height:32px!important;flex-basis:32px!important}.mobile-brand>span{font-size:11px!important;max-width:132px!important}.content{padding:8px 7px calc(var(--v230-nav-h) + env(safe-area-inset-bottom) + 18px)!important}.form-grid{grid-template-columns:1fr}.v231-info-grid,.v231-daily-groups,.v231-finance-kpis{grid-template-columns:1fr 1fr}.v231-report-head{padding:10px;gap:9px}.v231-report-head h2{font-size:14px}.v231-report-actions .btn{flex:1}.v231-daily-group{padding:8px}.v231-chipset{gap:4px}.v231-chip{flex:1;min-width:70px}.v231-fin-row{grid-template-columns:1fr auto}.v231-fin-row em{grid-column:1/-1;justify-self:start}.modal{padding:12px}.modal-head{top:-12px}.toolbar-actions{width:100%}.toolbar-actions .btn{flex:1}.attendance-quick-stats{gap:6px!important}.attendance-quick-stats>div{padding:9px!important}.v230-bottom-nav .mobile-tab span{font-size:6.6px!important}.v230-bottom-nav{left:5px!important;right:5px!important;grid-template-columns:1fr 1fr 68px 1fr 1fr!important}.v230-bottom-nav .v230-center-menu{width:58px!important;height:58px!important;border-width:5px!important}.v230-bottom-nav .v230-center-menu span{top:59px!important}.parent-status-banner{padding:10px!important}.parent-status-banner b{font-size:10px!important}.parent-status-banner span{font-size:7px!important}
}
