/* Shared school presentation, based on the approved Student Affairs reference. */
:root{
 --krp-primary:#4059d8;--krp-primary-hover:#2e43ae;--krp-primary-soft:#eef2ff;--krp-bg:#f6f7fb;--krp-surface:#fff;--krp-surface-2:#f8f9fc;--krp-text:#1c2535;--krp-muted:#526176;--krp-border:#dfe5ef;--krp-sidebar-start:#293d94;--krp-sidebar-end:#344bb4;--krp-radius:14px;--krp-radius-lg:20px;
 --blue:var(--krp-primary);--blue-dark:var(--krp-primary-hover);--blue-soft:var(--krp-primary-soft);--bg-main:var(--krp-bg);--bg-card:var(--krp-surface);--text-1:var(--krp-text);--text-2:var(--krp-muted);--text-3:var(--krp-muted);--purple:var(--krp-primary);--purple-mid:#5369df;--purple-dark:var(--krp-primary-hover);--purple-soft:var(--krp-primary-soft);
 --paper:var(--krp-bg);--paper-dark:var(--krp-border);--white:var(--krp-surface);--ink:var(--krp-text);--ink-soft:var(--krp-muted);--navy:var(--krp-sidebar-start);--navy-dark:var(--krp-sidebar-start);--mustard:#e9ad48;--radius-tag:14px;--shadow-tag:0 3px 12px rgba(23,40,77,.05);--shadow-tag-hover:0 5px 16px rgba(23,40,77,.09);
}
html.krp-dark{--krp-primary:#9cb8ff;--krp-primary-hover:#c1d2ff;--krp-primary-soft:#1b2b51;--krp-bg:#0e1625;--krp-surface:#172235;--krp-surface-2:#1d2b40;--krp-text:#edf2ff;--krp-muted:#b1c0d7;--krp-border:#3a4a63;--krp-sidebar-start:#19285c;--krp-sidebar-end:#263c7f;--paper:var(--krp-bg);--paper-dark:var(--krp-border);--white:var(--krp-surface);--ink:var(--krp-text);--ink-soft:var(--krp-muted);--navy:var(--krp-primary);--navy-dark:var(--krp-text);--purple:var(--krp-primary);--purple-mid:#839dec;--purple-dark:var(--krp-primary);--purple-soft:var(--krp-primary-soft)}
html{scroll-padding-block:24px;line-break:auto}
body[data-krp-page]{background-color:var(--krp-bg)!important;background-image:none!important;color:var(--krp-text);line-height:1.65;font-size:15px}
body[data-krp-page] :where(h1,h2,h3,h4,h5,h6){line-height:1.45;word-break:normal;overflow-wrap:break-word;letter-spacing:0}
body[data-krp-page] :where(p,dd,label,.form-text,.small){word-break:normal;overflow-wrap:break-word}
body[data-krp-page] :where(button,.btn,input,textarea,select){font-family:'Noto Sans Thai',system-ui,sans-serif!important}
body[data-krp-page] :where(button,.btn){white-space:normal;word-break:normal;overflow-wrap:break-word;line-height:1.5;max-width:100%;text-overflow:clip;flex-shrink:0}
body[data-krp-page] :where(button,.btn):not(.btn-close):not([role=switch]){min-height:44px}
body[data-krp-page] :where(.btn,.btn-submit,.btn-send,.submit,.btn-primary){border-radius:12px!important;font-weight:700;letter-spacing:0}
body[data-krp-page] .btn-primary,body[data-krp-page] .btn-submit,body[data-krp-page] .btn-send,body[data-krp-page] .submit{background:#4059d8!important;border-color:#4059d8!important;color:#fff!important;box-shadow:0 3px 8px rgba(40,61,148,.12)}
body[data-krp-page] :where(.btn-primary,.btn-submit,.btn-send,.submit):hover{background:#2e43ae!important;color:#fff!important;transform:none}
body[data-krp-page] :where(.btn-outline-primary,.btn-outline-secondary,.btn-secondary){border:1px solid var(--krp-border)!important;background:var(--krp-surface)!important;color:var(--krp-primary)!important;box-shadow:none}
body[data-krp-page] :where(.form-control,.form-select,.field-input,.login-input){color:var(--krp-text);line-height:1.6;min-width:0;max-width:100%;height:auto}
body[data-krp-page] :where(input[type=checkbox],input[type=radio]){flex-shrink:0;accent-color:#4059d8}
body[data-krp-page] :where(.row>*,.info-grid>*,.d-flex>*,.filter-section>*,.main-content,.main-container,.vh-left,.vh-right){min-width:0}
body[data-krp-page] :where(.page-header,.section-header,.header-actions,.page-actions,.filter-tabs,.view-toggle,.modal-footer){gap:10px;flex-wrap:wrap}
body[data-krp-page] .sidebar{background:linear-gradient(175deg,var(--krp-sidebar-start),var(--krp-sidebar-end))!important}
body[data-krp-page] .sidebar .menu-link{min-height:48px;height:auto;white-space:normal;line-height:1.6;overflow:visible;text-overflow:clip;padding-block:12px;border-radius:12px!important}
body[data-krp-page] .sidebar .menu-link>i{flex:0 0 22px;width:22px;font-size:18px;text-align:center;line-height:1.3}
body[data-krp-page] .sidebar .menu-link.active{background:linear-gradient(100deg,#f3c45d,#df8b32)!important;color:#25344a!important;box-shadow:none;transform:none}
/* One navigation scale at every route; preserve browser/user zoom. */
body[data-krp-page] .sidebar{width:248px;box-shadow:none;border-right:1px solid rgba(17,33,74,.12)}
body[data-krp-page] .sidebar .logo-title{padding:20px 16px;gap:10px;flex-shrink:0}
body[data-krp-page] .sidebar .logo-icon{width:34px;height:34px;font-size:17px;transform:none!important}
body[data-krp-page] .sidebar .logo-title span{font-size:.84375rem;line-height:1.6;letter-spacing:0;font-weight:700}
body[data-krp-page] .sidebar .menu-list{padding:10px 8px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.3) transparent}
body[data-krp-page] .sidebar .menu-list{min-height:0;overflow-y:auto;flex:1 1 auto}
body[data-krp-page] .sidebar :is(.krp-sidebar-tools,.sidebar-footer){flex-shrink:0}
body[data-krp-page] .sidebar .menu-link{font-size:.875rem;min-height:44px;padding:9px 12px!important;margin:2px 0;gap:10px;line-height:1.65;border-radius:9px!important;transform:none}
body[data-krp-page] .sidebar .menu-link>i{font-size:17px;flex-basis:20px;width:20px;transform:none}
body[data-krp-page] .sidebar .menu-link.active::after{display:none}
body[data-krp-page] .sidebar .sidebar-footer{padding:10px 12px;font-size:.6875rem}
body[data-krp-page] .leave-detail-progress,body[data-krp-page] .vehicle-connection-notice{padding:12px 14px;margin:0 0 18px;border:1px solid var(--krp-border);border-radius:10px;background:var(--krp-primary-soft);color:var(--krp-primary);font-size:.875rem;line-height:1.7}
body[data-krp-page] .leave-detail-progress[hidden],body[data-krp-page] .vehicle-connection-notice[hidden]{display:none}
body[data-krp-page] .leave-detail-progress.is-error{background:var(--krp-surface);color:#b42318;border-color:#eab4ac}
body[data-krp-page=vehicle] #detailModal .modal-header{padding:12px 20px!important;min-height:64px;gap:12px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--krp-border)!important}
body[data-krp-page=vehicle] #detailModal .modal-header .btn-close{position:static!important;margin:0!important}
body[data-krp-page=vehicle] #detailModalBody{padding-top:20px!important}
html.krp-dark body[data-krp-page] .leave-detail-progress.is-error{color:#ffb6ac}
body[data-krp-page=index] .next-up-card{background:var(--krp-surface)!important;border:1px solid var(--krp-border);border-radius:16px;padding:20px 22px;box-shadow:none!important;color:var(--krp-text);gap:18px;transform:none;animation:none}
body[data-krp-page=index] .next-up-card>div:first-child{flex:1;min-width:0}
body[data-krp-page=index] .next-up-card .nu-label{display:inline;margin-right:10px;color:var(--krp-primary);opacity:1;font-size:.75rem;letter-spacing:0;font-weight:600}
body[data-krp-page=index] .next-up-card .nu-title{display:inline;font-size:1.0625rem;font-weight:700;line-height:1.7;overflow-wrap:anywhere}
body[data-krp-page=index] .next-up-card .nu-meta{font-size:.8125rem;line-height:1.8;color:var(--krp-muted);opacity:1;margin-top:6px}
body[data-krp-page=index] .next-up-card .nu-countdown{background:var(--krp-primary-soft);color:var(--krp-primary);padding:12px 16px;min-width:88px;backdrop-filter:none;border-radius:12px}
body[data-krp-page=index] .next-up-card .nu-num{animation:none!important;font-size:1.75rem;font-weight:750;line-height:1.2}
body[data-krp-page=index] .next-up-card .nu-unit{opacity:1;font-size:.75rem;line-height:1.6}
body[data-krp-page=calendar] .modern-card{background:var(--krp-surface)!important;border:1px solid var(--krp-border)!important;backdrop-filter:none;box-shadow:none!important;animation:none}
body[data-krp-page=calendar] .view-switch{display:flex;gap:4px;padding:4px!important;border-radius:12px!important;box-shadow:none!important;background:var(--krp-surface)!important;border-color:var(--krp-border)!important}
body[data-krp-page=calendar] .vsw-btn{font-size:.875rem;line-height:1.5;padding:8px 16px!important;border-radius:9px!important;color:var(--krp-muted);box-shadow:none!important}
body[data-krp-page=calendar] .vsw-btn.active{background:#4059d8!important;color:#fff}
body[data-krp-page=calendar] #view-calendar>div:first-child{padding:16px 20px!important;background:var(--krp-surface)!important;border-bottom:1px solid var(--krp-border)!important}
body[data-krp-page=calendar] #calendarMonthYear{font-size:1.125rem!important}
body[data-krp-page=calendar] #view-calendar>div:first-child>.btn{width:44px!important;height:44px!important;border-radius:10px!important;box-shadow:none!important}
body[data-krp-page=calendar] .calendar-table{border-spacing:0;table-layout:fixed}
body[data-krp-page=calendar] .calendar-table th{font-size:.75rem;padding:12px 4px!important;background:var(--krp-surface-2);border-bottom:1px solid var(--krp-border)}
body[data-krp-page=calendar] .calendar-table td{border-radius:0!important;border:0!important;border-right:1px solid var(--krp-border)!important;border-bottom:1px solid var(--krp-border)!important;background:var(--krp-surface);box-shadow:none!important;transform:none!important;padding:8px!important;height:120px}
body[data-krp-page=calendar] .calendar-table td:last-child{border-right:0!important}
body[data-krp-page=calendar] .animate-view{animation:none!important;opacity:1!important;transform:none!important}
body[data-krp-page=student-leave] #leaveDetailModal .modal-header-custom{padding:18px 72px 18px 24px;background:var(--krp-surface);color:var(--krp-text);border-bottom:1px solid var(--krp-border)}
body[data-krp-page=student-leave] #leaveDetailModal .modal-header-custom h4{font-size:1.25rem;margin:0;color:var(--krp-text)}
body[data-krp-page=student-leave] #leaveDetailModal .modal-header-custom .btn-close{background:var(--krp-surface-2);color:var(--krp-primary);border:1px solid var(--krp-border);border-radius:10px;filter:none!important}
body[data-krp-page=student-leave] #modalStatusBadge{margin-bottom:8px!important}
body[data-krp-page=student-leave] #leaveDetailModal .modal-body-custom{margin-top:0;padding:20px 24px;background:var(--krp-surface)}
body[data-krp-page=student-leave] #leaveDetailModal .detail-card{padding:0;border:0;box-shadow:none;background:transparent}
body[data-krp-page=student-leave] #leaveDetailModal .info-grid{gap:14px 24px}
body[data-krp-page=student-leave] #leaveDetailModal .info-grid .info-item{padding:8px 0;border:0;border-bottom:1px solid var(--krp-border);border-radius:0;background:transparent}
body[data-krp-page=student-leave] #leaveDetailModal .icon-box{width:36px;height:36px;flex:0 0 36px;border-radius:10px;background:var(--krp-primary-soft);color:var(--krp-primary);font-size:1rem;box-shadow:none;transform:none}
body[data-krp-page=student-leave] #leaveDetailModal .item-label{font-size:.75rem;line-height:1.7;color:var(--krp-muted)}
body[data-krp-page=student-leave] #leaveDetailModal .item-value{font-size:.875rem;line-height:1.8;color:var(--krp-text);overflow-wrap:anywhere}
body[data-krp-page=student-leave] #leaveDetailModal .info-item[style*="display:block"]{padding:14px!important;border:1px solid var(--krp-border)!important;background:var(--krp-surface-2)!important;border-radius:12px;margin-top:16px!important}
body[data-krp-page=student-leave] #modalSignatureContainer>div:last-child{min-height:100px!important}
body[data-krp-page=student-leave] #actionButtonArea button{min-height:44px;border-radius:10px;font-size:.875rem;font-weight:650;padding:10px 16px;box-shadow:none;transform:none;animation:none;transition:background-color .15s,color .15s,border-color .15s}
body[data-krp-page=student-leave] #actionButtonArea .btn-action-approve{background:#147d50;color:#fff;border:1px solid #147d50}
body[data-krp-page=student-leave] #actionButtonArea .btn-action-deny{background:var(--krp-surface);color:#b42318;border:1px solid #eab4ac}
body[data-krp-page=student-leave] #actionButtonArea :is(.btn-action-out,.btn-action-return){background:#4059d8;color:#fff;border:1px solid #4059d8}
html.krp-dark body[data-krp-page=student-leave] #actionButtonArea .btn-action-deny{color:#ffb6ac}
body[data-krp-page=student-leave] .leave-modal-close-footer{padding:16px 0 0;justify-content:flex-end}
@media(max-width:767.98px){
 body[data-krp-page=student-leave] #leaveDetailModal .modal-header-custom{padding:16px 64px 16px 18px}
 body[data-krp-page=student-leave] #leaveDetailModal .modal-body-custom{padding:16px}
 body[data-krp-page=student-leave] #leaveDetailModal .info-grid{gap:10px}
 body[data-krp-page=student-leave] .leave-modal-close-footer .btn{width:100%}
 body[data-krp-page=index] .next-up-card{padding:16px}
}
body[data-krp-page] :where(.logo-icon,.sidebar .logo-icon,.mobile-topbar .logo-icon){background:#d99b38!important;color:#fff!important;box-shadow:none}
body[data-krp-page] :where(.mobile-topbar,.site-header){background:linear-gradient(100deg,var(--krp-sidebar-start),var(--krp-sidebar-end))!important;color:#fff;border-bottom:2px solid #e9ad48}
body[data-krp-page] .mobile-topbar .brand{font-size:.9rem;line-height:1.5;min-width:0}
body[data-krp-page] :where(.menu-btn,.nav-toggle){width:44px;height:44px;min-width:44px;flex-shrink:0}
body[data-krp-page] :where(.modern-card,.form-card,.filter-section,.filter-section-premium,.history-panel,.form-booking-card,.stat-card,.mini-stat,.login-box){border-radius:var(--krp-radius-lg);box-shadow:0 3px 14px rgba(26,44,80,.045)}
body[data-krp-page] :where(.modern-card,.stat-card,.form-card,.animate-pop,.hero,.hero-icon){animation:none!important;opacity:1;will-change:auto}
body[data-krp-page] :where(.bg-blob,.orb){display:none}
body[data-krp-page] :where(.stat-card,.modern-card,.hero-icon):hover{transform:none}
body[data-krp-page] :where(.hist-title,.item-title,.activity-title,.meeting-title,.detail-value,.item-value,.info-value,.counsel-item .fw-bold){white-space:normal!important;overflow:visible!important;text-overflow:clip!important;overflow-wrap:anywhere;word-break:normal}
body[data-krp-page] :where(.badge,.status-pill,.badge-status,.travel-pill){white-space:normal;line-height:1.5;height:auto;max-width:100%;overflow-wrap:break-word;animation:none!important}
body[data-krp-page] .modal{z-index:1100!important}
body[data-krp-page] .modal-backdrop{z-index:1090!important}
body[data-krp-page] :where(.modal .modal-content){max-height:calc(100dvh - 24px);max-height:min(calc(100dvh - 24px),1100px);display:flex;flex-direction:column;overflow:hidden}
body[data-krp-page] .modal :where(.modal-body,.modal-body-custom){overflow-y:auto;overscroll-behavior:contain;min-height:0}
body[data-krp-page] .modal :where(.modal-header,.modal-footer){flex-shrink:0}
body[data-krp-page] .btn-close{width:44px;height:44px;padding:0;background-size:14px;flex:0 0 44px}
body.modal-open :where(#krpThemeControl,#krpSchoolSessionControl){visibility:hidden}
body[data-krp-page] :where(.table-responsive,.table-responsive-premium){max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
body[data-krp-page] .table-responsive{transform:none!important;will-change:auto}
body[data-krp-page=student-leave] .fade-in-table{animation:none!important;opacity:1!important;transform:none!important}
body[data-krp-page] .table :where(th,td){line-height:1.6;word-break:normal;overflow-wrap:break-word}
body[data-krp-page] :where(.stat-label,.stat-card .lbl,.mini-stat .label,.kpi-label){white-space:normal!important;line-height:1.55;text-overflow:clip;overflow:visible}
.krp-ui-icon{display:inline-block;width:1.25em;text-align:center;font-style:normal;line-height:inherit;flex-shrink:0}
body[data-krp-page] :where(.menu-link,.btn,.filter-tab,.btn-send,.need-card,.topic-card)>i{flex-shrink:0}
body[data-krp-page] #krpThemeControl{box-shadow:0 2px 8px rgba(20,35,70,.1);z-index:1082}
body[data-krp-page] #krpSchoolSessionControl{z-index:1082}
body[data-krp-page^=counseling] .hero-icon{background:#4059d8;box-shadow:none}
body[data-krp-page^=counseling] .hero{padding-block:24px;margin-bottom:20px}
body[data-krp-page^=counseling] .hero h1{color:var(--krp-primary);font-size:clamp(1.4rem,3vw,1.9rem)}
body[data-krp-page^=counseling] .login-overlay{background:var(--krp-bg)}
body[data-krp-page^=counseling] #loginOverlay .login-card{background:var(--krp-surface)!important;border-color:var(--krp-border)!important;color:var(--krp-text)!important;backdrop-filter:none;-webkit-backdrop-filter:none}
body[data-krp-page^=counseling] #loginOverlay .login-card :where(h1,h2,h3,h4,p,label){color:var(--krp-text)!important}
body[data-krp-page^=found] .site-header .wrap{height:auto;min-height:68px;gap:16px}
body[data-krp-page^=found] :where(.brand,.brand__sub,.brand__mark,.mono,h1,h2,h3,h4){font-family:'Noto Sans Thai',system-ui,sans-serif}
body[data-krp-page^=found] .site-header :where(.brand,.brand__sub,.nav-toggle){color:#fff}
body[data-krp-page^=found] .brand__mark{border-radius:10px;background:#d99b38;box-shadow:none;color:#fff}
body[data-krp-page^=found] .main-nav a{min-height:44px;display:flex;align-items:center;padding:10px 12px;white-space:normal;line-height:1.5}
body[data-krp-page^=found] .main-nav a.active{background:#f3c45d;color:#25344a;border-radius:10px}
body[data-krp-page^=found] .main-nav{border-bottom-style:solid}
body[data-krp-page^=found] .hero{padding:36px 0 28px}
body[data-krp-page^=found] .hero__tag{transform:none;width:160px;aspect-ratio:auto;height:140px}
body[data-krp-page^=found] .hero__tag::before,body[data-krp-page^=found] .hero__tag-hole{display:none}
body[data-krp-page^=found] .hero__tag-body{box-shadow:none;border-radius:16px}
body[data-krp-page^=found] .hero__eyebrow{font-family:inherit;border:0;background:none;padding:0;color:var(--krp-muted)}
body[data-krp-page^=found] .hero h1{font-size:clamp(1.7rem,3vw,2.3rem);line-height:1.5}
body[data-krp-page^=found] .hero h1 em{color:var(--krp-primary);text-decoration:none}
body[data-krp-page^=found] .btn{border-radius:12px;box-shadow:none;min-height:44px;height:auto;overflow:visible;justify-content:center}
body[data-krp-page^=found] .btn::after{display:none}
body[data-krp-page^=found] .btn:hover{transform:none;box-shadow:none}
body[data-krp-page^=found] .btn--lost{background:#4059d8;color:#fff}
body[data-krp-page^=found] .btn--found{background:#eaf0ff;color:#29439e;border:1px solid #b6c6f0}
body[data-krp-page^=found] :where(.stat-strip,.stat,.tag,.tag__stub,.tag__body){box-shadow:none}
body[data-krp-page^=found] :where(.chip,.category-chip,.filter-chip){min-height:44px;height:auto;white-space:normal}
body[data-krp-page^=found] .wrap{width:100%;min-width:0}
html.krp-dark body[data-krp-page] :where(.history-panel,.form-booking-card,.hero__tag-body){background:var(--krp-surface);color:var(--krp-text);border-color:var(--krp-border)}
@media(max-width:991.98px){body[data-krp-page] .sidebar{height:100dvh;overflow-y:auto}body[data-krp-page] .sidebar .menu-link{padding-block:12px}}
@media(max-width:767.98px){
 body[data-krp-page] :where(.page-header,.section-header){align-items:flex-start;gap:14px}
 body[data-krp-page] :where(.page-header h1,.page-header h2,.page-title,.title-main){font-size:clamp(1.25rem,5vw,1.65rem)!important;line-height:1.5}
 body[data-krp-page] :where(.header-actions,.page-actions,.filter-tabs){max-width:100%;flex-wrap:wrap}
 body[data-krp-page] :where(.form-control,.form-select,.field-input,.login-input,input[type=password],input[type=text],input[type=tel],textarea){font-size:16px!important}
 body[data-krp-page] .modal-dialog{margin:8px}
 body[data-krp-page] .modal .modal-content{max-height:calc(100dvh - 16px)}
 body[data-krp-page] .modal-footer>.btn{flex:1 1 120px}
 body[data-krp-page] .modal .btn-close{margin:0!important;right:8px;top:8px}
 body[data-krp-page] .table .text-truncate{white-space:normal!important;max-width:none!important;overflow:visible!important;text-overflow:clip!important}
 body[data-krp-page] .table [style*="max-width"]{max-width:100%!important}
 body[data-krp-page] .form-card,body[data-krp-page] .card-wrapper{max-width:100%}
 body[data-krp-page^=found] .hero__tag{order:0;justify-self:start;height:100px;width:100%;margin:0}
 body[data-krp-page^=found] .hero .wrap{gap:20px}
 body[data-krp-page^=found] .hero__tag-body{flex-direction:row;gap:14px;padding:16px}
 body[data-krp-page^=found] .hero__tag-body .big{font-size:2rem}
 body[data-krp-page^=found] .hero__actions{gap:10px}
 body[data-krp-page^=found] .hero__actions .btn{flex:1 1 140px}
}

/* School component system: shared hierarchy, panels, forms, metrics and states. */
:root{--krp-space-1:6px;--krp-space-2:12px;--krp-space-3:18px;--krp-space-4:24px;--krp-panel-radius:16px;--krp-control-radius:10px;--krp-heading-size:1.625rem;--krp-section-size:1.0625rem;--krp-body-size:.9375rem;--krp-label-size:.8125rem}
body[data-krp-page]::before,body[data-krp-page] :where(.bg-blobs,.bg-decoration,.blob){display:none!important}
body[data-krp-page]{font-size:var(--krp-body-size);font-weight:450}
body[data-krp-page] ::selection{background:#dbe5ff;color:#182c73}
body[data-krp-page] :where(input,textarea){caret-color:var(--krp-primary)}
body[data-krp-page] :where(.page-header,.section-header) h1{font-size:var(--krp-heading-size);font-weight:750;letter-spacing:0}
body[data-krp-page] .main-content>.page-header>div:first-child{flex:1 1 280px;margin-right:auto}
body[data-krp-page] :where(.modern-card,.form-card,.filter-section,.filter-section-premium,.history-panel,.form-booking-card,.login-box,.tbl-card,.report-card-premium){border-radius:var(--krp-panel-radius)!important;box-shadow:none}
body[data-krp-page] :where(.modern-card,.form-card,.filter-section-premium,.report-card-premium)::before{display:none}
body[data-krp-page] :where(.animate-fade-in-up,.animate-pop,.stat-card-p){animation:none!important;opacity:1;transform:none;will-change:auto}
body[data-krp-page] .krp-panel{background:var(--krp-surface)!important;border:1px solid var(--krp-border)!important;border-radius:var(--krp-panel-radius)!important;overflow:hidden;box-shadow:none!important;animation:none!important}
body[data-krp-page] .krp-panel.form-booking-card{padding:0}
body[data-krp-page] .krp-panel.krp-inset-panel{padding:24px}
body[data-krp-page] .krp-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:18px 22px;background:var(--krp-surface-2)!important;border-bottom:1px solid var(--krp-border);color:var(--krp-text)!important;min-width:0}
body[data-krp-page] .krp-panel-heading:has(>.krp-panel-icon){justify-content:flex-start}
body[data-krp-page] .krp-panel-heading>.krp-panel-icon+div{flex:1;min-width:0}
body[data-krp-page] .krp-panel-heading :where(h3,h4,h5,h6){font-size:var(--krp-section-size);font-weight:750;margin:0;line-height:1.6;color:var(--krp-text)!important}
body[data-krp-page] .krp-panel-heading :where(p,.text-white){color:var(--krp-muted)!important}
body[data-krp-page] .krp-panel-heading p{font-size:.8125rem;margin:3px 0 0;line-height:1.7}
body[data-krp-page] .krp-panel-heading>div>.text-white{color:var(--krp-text)!important;font-size:.9375rem!important;font-weight:700!important}
body[data-krp-page] .krp-panel-heading button{width:44px!important;min-height:44px!important;height:auto!important;border:1px solid var(--krp-border)!important;background:var(--krp-surface)!important;color:var(--krp-primary)!important;border-radius:10px!important;flex-shrink:0;box-shadow:none}
body[data-krp-page] .krp-panel-heading .badge{background:var(--krp-primary-soft)!important;border-color:var(--krp-border)!important;color:var(--krp-primary)!important}
body[data-krp-page] .krp-panel-icon{display:grid;place-items:center;width:44px;height:44px;flex:0 0 44px;background:var(--krp-primary-soft);color:var(--krp-primary);border-radius:12px;font-size:1.125rem}
body[data-krp-page] .krp-form-body{padding:24px;background:var(--krp-surface)!important;color:var(--krp-text)}
body[data-krp-page] .krp-inline-heading{gap:14px;margin-bottom:20px!important;padding-bottom:18px!important}
body[data-krp-page] .krp-inline-heading>div:first-child{display:grid!important;place-items:center;width:44px!important;height:44px!important;flex:0 0 44px;margin:0!important;border-radius:12px!important;background:var(--krp-primary-soft)!important;color:var(--krp-primary)!important;font-size:1.125rem!important}
body[data-krp-page] .krp-inline-heading h5{font-size:var(--krp-section-size);font-weight:750;color:var(--krp-text)}
body[data-krp-page] .krp-inline-heading .small{font-size:.8125rem;line-height:1.7}
body[data-krp-page] :where(.krp-form-section,.section-label){font-size:.875rem;font-weight:750;color:var(--krp-text);line-height:1.6;letter-spacing:0;margin:10px 0 0;padding:15px 0 0;border-top:1px solid var(--krp-border);text-transform:none}
body[data-krp-page] .krp-form-section{margin-bottom:0}
body[data-krp-page] .form-progress-container{padding:12px 22px;background:var(--krp-surface-2)!important;border:0;border-bottom:1px solid var(--krp-border)}
body[data-krp-page] .form-progress-fill{background:#4059d8!important}
body[data-krp-page] .krp-workspace{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:24px;margin:0;align-items:start}
body[data-krp-page] .krp-workspace>div{width:auto;max-width:none;min-width:0;margin:0;padding:0}
body[data-krp-page] .krp-workspace-history{scroll-margin-top:90px}
body[data-krp-page] .krp-summary-grid{display:grid;gap:12px;margin:0 0 24px;grid-template-columns:repeat(4,minmax(0,1fr))}
body[data-krp-page] .krp-summary-grid[data-krp-columns="3"]{grid-template-columns:repeat(3,minmax(0,1fr))}
body[data-krp-page] .krp-summary-grid[data-krp-columns="5"]{grid-template-columns:repeat(5,minmax(0,1fr))}
body[data-krp-page] .krp-summary-grid[data-krp-columns="6"]{grid-template-columns:repeat(6,minmax(0,1fr))}
body[data-krp-page] .krp-summary-grid[data-krp-columns="7"]{grid-template-columns:repeat(12,minmax(0,1fr))}
body[data-krp-page] .krp-summary-grid[data-krp-columns="7"]>div{grid-column:span 3}
body[data-krp-page] .krp-summary-grid[data-krp-columns="7"]>div:nth-child(n+5){grid-column:span 4}
body[data-krp-page] .krp-summary-grid>div{min-width:0;width:auto;max-width:none;padding:0;margin:0}
body[data-krp-page] .krp-summary-grid>:is(.stat-card,.stat-card-p,.mini-stat,.stat-card-premium),body[data-krp-page] .krp-summary-grid>div>:is(.stat-card,.stat-card-p,.mini-stat,.stat-card-premium){height:100%;padding:16px!important;min-height:122px;border:1px solid var(--krp-border)!important;background:var(--krp-surface)!important;border-radius:14px!important;box-shadow:none!important;transform:none!important;animation:none!important;position:relative;container-type:inline-size}
body[data-krp-page] .krp-summary-grid :where(.stat-card,.stat-card-p,.mini-stat,.stat-card-premium)::before,body[data-krp-page] .krp-summary-grid .stat-card::after{display:none}
body[data-krp-page] .krp-summary-grid :where(.stat-num,.mini-num,.stat-num-p,.stat-val-premium){font-size:1.625rem!important;line-height:1.3;margin:6px 0!important;font-weight:750!important;font-variant-numeric:tabular-nums;letter-spacing:0;overflow-wrap:anywhere}
body[data-krp-page] .krp-summary-grid :is(#statPrize,#statCost){font-size:1.25rem!important;font-size:clamp(1.125rem,8cqi,1.5rem)!important}
body[data-krp-page] .krp-summary-grid :where(.stat-label,.mini-label,.stat-label-p,.stat-label-premium){font-size:.75rem!important;line-height:1.65;font-weight:600;color:var(--krp-muted)!important;letter-spacing:0;text-transform:none}
body[data-krp-page] .krp-summary-grid :where(.stat-icon,.mini-icon,.stat-icon-bg,.stat-card-p>i){position:static!important;font-size:1.125rem!important;width:30px!important;height:30px!important;padding:4px!important;opacity:1!important;line-height:22px!important;display:inline-flex!important;align-items:center;justify-content:center;transform:none!important;margin:0!important;border-radius:8px;background:var(--krp-primary-soft)}
body[data-krp-page] .krp-summary-grid .stat-card-header{min-height:40px;gap:8px;align-items:flex-start}
body[data-krp-page=index] .krp-summary-grid .stat-card.active{background:var(--krp-primary-soft)!important;border-color:#8297ee!important}
body[data-krp-page] :where(.krp-summary-grid,.krp-panel) .text-warning{color:#986313!important}
html.krp-dark body[data-krp-page] :where(.krp-summary-grid,.krp-panel) .text-warning{color:#f5c468!important}
body[data-krp-page] .empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:36px 22px!important;min-height:150px;text-align:center;color:var(--krp-muted);font-size:.875rem;line-height:1.8}
body[data-krp-page] .empty-state>i{display:grid!important;place-items:center;font-size:1.5rem!important;width:48px;height:48px;flex:0 0 48px;margin:0!important;background:var(--krp-surface-2);border-radius:14px;color:var(--krp-muted)}
body[data-krp-page] .empty-state.is-error>i{color:var(--krp-danger);background:#fff1f1}
html.krp-dark body[data-krp-page] .empty-state.is-error>i{color:#ffb6ac;background:#38242c}
body[data-krp-page] .krp-table-state{padding:32px 20px!important;text-align:center!important;font-size:.875rem;line-height:1.8;color:var(--krp-muted)}
body[data-krp-page] .krp-table-state>i{display:block;font-size:1.5rem!important;margin:0 auto 12px!important}
body[data-krp-page] :where(.filter-section,.filter-section-premium,.leave-filter-panel){box-shadow:none!important}
body[data-krp-page] :where(.table,.table-premium) thead th{font-size:.75rem;font-weight:700;letter-spacing:0;text-transform:none;padding:13px 16px;color:var(--krp-muted);background:var(--krp-surface-2)}
body[data-krp-page] :where(.table,.table-premium) tbody td{font-size:.875rem;line-height:1.7;padding:14px 16px;border-color:var(--krp-border)}
body[data-krp-page] :where(.form-control,.form-select){border-radius:var(--krp-control-radius);border-color:var(--krp-border);color:var(--krp-text);background-color:var(--krp-surface);box-shadow:none;min-height:46px;padding-block:10px}
body[data-krp-page] :where(.form-control,.form-select):focus{border-color:#7289e5!important;background-color:var(--krp-surface)!important;box-shadow:0 0 0 3px rgba(64,89,216,.12)!important;transform:none!important}
body[data-krp-page] :where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--krp-primary)!important;outline-offset:3px!important}
body[data-krp-page] .input-group>.form-control:not(:last-child){border-radius:0!important}
body[data-krp-page] .input-group>.input-group-text:last-child{flex-basis:auto;min-width:42px;border-radius:0 10px 10px 0!important;margin-left:-1px}
body[data-krp-page] .form-label{font-size:var(--krp-label-size)!important;font-weight:650;line-height:1.7;color:var(--krp-muted)}
body[data-krp-page] .filter-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
body[data-krp-page] .filter-bar :where(input,select){flex:1 1 150px;max-width:none!important;min-width:0}
body[data-krp-page] :where(.login-shell,.krp-private-card,.login-box){border-radius:18px!important;box-shadow:0 10px 30px rgba(24,42,84,.07)!important}
body[data-krp-page] .login-box{padding:28px}
body[data-krp-page] .login-box h4{font-size:1.25rem;color:var(--krp-text)}
body[data-krp-page=login] .brand{padding:28px 30px;background:var(--krp-sidebar-start)}
body[data-krp-page=login] .brand h1{font-size:1.375rem}
body[data-krp-page=login] .brand-icon{width:52px;height:52px;font-size:1.5rem;box-shadow:none}
body[data-krp-page=login] .content{padding:28px 30px}
body[data-krp-page=login] .content h2{font-size:1.25rem;margin-bottom:10px}
body[data-krp-page=login] .lead{font-size:.875rem;line-height:1.85}
body[data-krp-page=login] .access-label{font-size:.75rem;border-radius:8px;letter-spacing:0}
body[data-krp-page] .krp-action-menu{position:relative}
body[data-krp-page] .krp-action-menu summary{list-style:none;display:flex;align-items:center;gap:8px;cursor:pointer}
body[data-krp-page] .krp-action-menu summary::-webkit-details-marker{display:none}
body[data-krp-page] .krp-action-menu-panel{position:absolute;right:0;top:calc(100% + 8px);z-index:1080;display:grid;gap:4px;min-width:210px;padding:8px;background:var(--krp-surface);border:1px solid var(--krp-border);border-radius:12px;box-shadow:0 8px 24px rgba(24,42,84,.12)}
body[data-krp-page] .krp-action-menu-panel>.btn{display:flex;justify-content:flex-start;align-items:center;gap:8px;border:0!important;box-shadow:none!important;background:var(--krp-surface)!important;color:var(--krp-text)!important;border-radius:8px!important;font-size:.875rem}
body[data-krp-page] .krp-action-menu-panel>.btn:hover{background:var(--krp-primary-soft)!important}
body[data-krp-page=saraban] .krp-document-actions{display:flex;gap:10px;align-items:center}
body[data-krp-page=saraban] .krp-document-actions #btnFabRegister{display:none;position:static;inset:auto;width:auto;height:auto;min-height:44px;padding:10px 14px;border-radius:10px;background:#4059d8;color:#fff;box-shadow:none;font-size:1rem;gap:10px;transform:none}
body[data-krp-page=saraban] .krp-document-actions #btnFabRegister::after{content:'ลงทะเบียนเอกสาร';font:650 .875rem/1.5 'Noto Sans Thai',sans-serif}
body[data-krp-page] .krp-sidebar-tools :is(#darkModeToggle,#schoolLoginButton){position:static!important;display:flex;align-items:center;justify-content:flex-start;gap:10px;width:100%;height:auto;min-height:44px;padding:10px 12px;border:1px solid rgba(255,255,255,.18)!important;border-radius:10px!important;box-shadow:none!important;background:rgba(255,255,255,.08)!important;color:#edf2ff!important;font-size:.8125rem;transform:none!important}
body[data-krp-page] .krp-sidebar-tools #darkModeToggle::after{content:'สลับโหมดสว่าง / มืด';font:500 .8125rem/1.5 'Noto Sans Thai',sans-serif}
@media(max-width:1599px){body[data-krp-page] .krp-workspace{grid-template-columns:minmax(0,1fr)}}
@media(min-width:768px) and (max-width:1199px){body[data-krp-page] .krp-summary-grid[data-krp-columns="6"]{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:767.98px){
 body[data-krp-page] .krp-summary-grid[data-krp-columns]{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 body[data-krp-page] .krp-summary-grid[data-krp-columns="7"]>div:nth-child(n){grid-column:auto}
 body[data-krp-page] .krp-summary-grid[data-krp-columns="7"]>div:last-child,body[data-krp-page] .krp-summary-grid[data-krp-columns="5"]>div:last-child{grid-column:1/-1}
 body[data-krp-page] .krp-summary-grid[data-krp-columns="7"]>.stat-card:last-child{flex-direction:row;align-items:center;min-height:80px}
 body[data-krp-page] .krp-summary-grid :where(.stat-card,.stat-card-p,.mini-stat,.stat-card-premium),body[data-krp-page] .krp-summary-grid>:is(.stat-card,.stat-card-p,.mini-stat,.stat-card-premium){padding:14px!important;min-height:110px}
 body[data-krp-page] .krp-panel.krp-inset-panel,body[data-krp-page] .krp-form-body{padding:18px}
 body[data-krp-page] .krp-panel-heading{padding:16px 18px;gap:12px}
 body[data-krp-page] .krp-panel-heading h3{font-size:1rem}
 body[data-krp-page] .krp-panel-icon{width:38px;height:38px;flex-basis:38px}
 body[data-krp-page] .krp-workspace{gap:20px}
 body[data-krp-page] .krp-form-section{padding-top:12px;margin-top:6px}
 body[data-krp-page] :where(.form-control,.form-select){font-size:16px!important}
 body[data-krp-page=login] .brand,body[data-krp-page=login] .content{padding:24px}
 body[data-krp-page] .krp-history-jump{order:1}
 body[data-krp-page=index] .page-header>div:last-child{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}
 body[data-krp-page=index] .page-header>div:last-child:not(:has(#schoolLoginButton))>a:last-child{grid-column:1/-1}
 body[data-krp-page=index] .krp-action-menu summary{justify-content:center;width:100%}
 body[data-krp-page=saraban] .krp-document-actions #btnHeaderRegister{display:none!important}
 body[data-krp-page=saraban] .krp-document-actions #btnFabRegister{display:inline-flex;align-items:center}
 body[data-krp-page] .krp-record-table,body[data-krp-page] .krp-record-table tbody{display:block;width:100%;min-width:0}
 body[data-krp-page] .krp-record-table thead{display:none}
 body[data-krp-page] .krp-record-table .krp-record-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:100%;width:100%;padding:16px;margin:0 0 12px;border:1px solid var(--krp-border);border-radius:12px;background:var(--krp-surface);box-shadow:none}
 body[data-krp-page] .krp-record-table .krp-record-row>td{display:block;min-width:0;width:auto!important;max-width:100%;padding:0!important;margin:0;border:0!important;text-align:left!important;background:transparent!important;box-shadow:none!important;white-space:normal;overflow-wrap:anywhere}
 body[data-krp-page] .krp-record-table .krp-record-row>td::before{content:attr(data-krp-label);display:block;font-size:.6875rem;font-weight:600;line-height:1.6;color:var(--krp-muted);margin-bottom:4px;text-transform:none;letter-spacing:0}
 body[data-krp-page] .krp-record-table .krp-record-row>td[data-krp-label=""]::before{display:none}
 body[data-krp-page=index] .krp-record-table .krp-record-row>td:nth-child(3){grid-column:1/-1}
 body[data-krp-page=competition] .krp-record-table .krp-record-row>td:is(:first-child,:nth-child(2)){grid-column:1/-1}
 body[data-krp-page=competition] .krp-record-table .krp-record-row{position:relative}
 body[data-krp-page=competition] .krp-record-table .krp-record-row>td:first-child{position:absolute;top:16px;right:16px;width:20px!important;text-align:right!important}
 body[data-krp-page=competition] .krp-record-table .krp-record-row>td:nth-child(2){padding-right:28px!important}
 body[data-krp-page=competition] .krp-record-table .detail-row{display:block;max-width:100%}
 body[data-krp-page=competition] .krp-record-table .detail-row>td{display:block;width:100%;min-width:0;border:0}
 body[data-krp-page=counseling-admin] .krp-record-table .krp-record-row>td:is(:first-child,:nth-child(2),:last-child){grid-column:1/-1}
 body[data-krp-page=saraban] .krp-record-table .krp-record-row>td:is(:nth-child(3),:last-child){grid-column:1/-1}
 body[data-krp-page] .krp-record-table .krp-record-row>td:last-child:has(button,a.btn){grid-column:1/-1}
 body[data-krp-page] .krp-record-table .krp-record-row>td:last-child .btn{max-width:100%;min-height:44px}
 body[data-krp-page] .krp-record-table .krp-table-state{display:block;width:100%}
}
@media(prefers-reduced-motion:reduce){body[data-krp-page] :where(.hero,.stat-card,.modern-card,.card-wrapper,.bg-blob){animation:none!important;transition:none!important;scroll-behavior:auto!important}}

body[data-krp-page^=found] .main-nav{background:var(--krp-sidebar-start)}
body[data-krp-page^=found] .main-nav a{color:#fff}
body[data-krp-page^=found] .main-nav a.active{color:#25344a}

body[data-krp-page^=counseling]{--accent:var(--krp-primary);--accent-soft:var(--krp-primary-soft);--accent-pale:var(--krp-border)}
body[data-krp-page^=counseling]::before{display:none}
body[data-krp-page^=counseling] :where(.hero h1,.hero p,.section-title,.hero .privacy-badge,.form-card){animation:none!important;opacity:1!important;transform:none!important}
body[data-krp-page^=counseling] .page-header h1>i{color:var(--krp-primary)!important}
body[data-krp-page^=counseling] .view-tab .vt.active{background:#4059d8!important;color:#fff!important;box-shadow:none}
body[data-krp-page^=counseling] .modal-header{background:linear-gradient(100deg,#293d94,#344bb4)!important;color:#fff}
body[data-krp-page^=found] .stat-strip{background:none;border:0;padding:8px 0 24px}
body[data-krp-page^=found] .stat{border:1px solid var(--krp-border);border-radius:14px;background:var(--krp-surface);padding:16px 8px}
body[data-krp-page^=found] .stat .label{font-size:.82rem;line-height:1.5}
body[data-krp-page] #starRating [data-star]{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;letter-spacing:0}
body[data-krp-page] .fa-bounce-hover:hover{animation:none!important}
body[data-krp-page] [role=button]:focus-visible{outline:3px solid var(--krp-focus);outline-offset:3px}

body[data-krp-page] :where(.text-muted,.text-secondary,.form-text,.stat-label,.item-label){color:var(--krp-muted)!important}
body[data-krp-page] :where(.row-completed,.hist-item--past){opacity:1!important}
body[data-krp-page] .row-completed [style*="color:#94a3b8"]{color:var(--krp-muted)!important}

body[data-krp-page] .text-truncate{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;overflow-wrap:break-word}
body[data-krp-page] .modal-overlay{z-index:1100}
body[data-krp-page] .modal-box{max-height:calc(100dvh - 24px);overflow-y:auto;overscroll-behavior:contain}
body:has(.modal-overlay.show) :where(#krpThemeControl,#krpSchoolSessionControl){visibility:hidden}
body[data-krp-page] .btn-close{background-image:none!important;display:grid;place-items:center}
body[data-krp-page] .btn-close::before{content:'\f00d';font-family:'Font Awesome 6 Free';font-weight:900;font-size:18px;line-height:1}

body[data-krp-page] .btn-outline-dark{color:var(--krp-text)!important;background:var(--krp-surface)!important;border:1px solid var(--krp-border)!important}
html.krp-dark body[data-krp-page] :where(.stat-num,.stat-value,.mini-num,.stat-card .num,.stat-card-p .num,.usage-value,.stat-num-premium){color:var(--krp-text)!important}
html.krp-dark body[data-krp-page] .btn-outline-success{color:#79d89c!important;border-color:#79d89c!important}
html.krp-dark body[data-krp-page] .btn-outline-danger{color:#ff9c9c!important;border-color:#ff9c9c!important}
body[data-krp-page] .badge-approve{background-color:#e7f8ed!important;color:#176b34!important;border-color:#9ed7ad!important}
body[data-krp-page] :where(.badge-inuse,.status-ออกนอกโรงเรียนแล้ว,[class*="status-กำลัง"]){background-color:#eaf0ff!important;color:#29439e!important;border-color:#b6c6f0!important}
body[data-krp-page] :where(.badge-done,.status-กลับเข้าโรงเรียนแล้ว,.status-ออกแล้ว,[class*="status-เสร็จ"]){background-color:#eef2f6!important;color:#44556b!important;border-color:#cbd5e1!important}

body[data-krp-page] :where(.stat-num,.mini-num){animation:none!important;transition:none!important}
body[data-krp-page] .mini-num.text-warning,body[data-krp-page] .stat-pill.c-wait .num{color:#986313!important}
body[data-krp-page] .stat-pill.c-done .num{color:#176b34!important}
html.krp-dark body[data-krp-page] .stat-pill .num{color:var(--krp-text)!important}
html.krp-dark body[data-krp-page] :where(.form-label,.field-label){color:var(--krp-text)!important}
body[data-krp-page] .btn-light{background:var(--krp-surface-2)!important;color:var(--krp-text)!important;border-color:var(--krp-border)!important}
body[data-krp-page=login] .login-shell{background:var(--krp-surface);border-color:var(--krp-border)}
body[data-krp-page=login] .brand{background:linear-gradient(100deg,#293d94,#344bb4)}
body[data-krp-page=login] :where(.lead,.remember-help,.browser-help p,.privacy){color:var(--krp-muted)}
body[data-krp-page=login] :where(.browser-help,.access-label){background:var(--krp-primary-soft);color:var(--krp-primary)}
body[data-krp-page=login] :where(.field,.field:focus-within){background:var(--krp-surface-2);border-color:var(--krp-border)}
body[data-krp-page=login] .field input{color:var(--krp-text)}
body[data-krp-page=login] .field input::placeholder{color:var(--krp-muted)!important}
body[data-krp-page=login] .browser-link{color:var(--krp-primary)}
body[data-krp-page=login] .privacy{background:var(--krp-surface-2)}
html.krp-dark body[data-krp-page=calendar] #calendarMonthYear{color:var(--krp-text)!important}
html.krp-dark body[data-krp-page=calendar] #view-calendar>div:first-child{background:var(--krp-surface-2)!important}
html.krp-dark body[data-krp-page=calendar] .calendar-table td{background:var(--krp-surface)!important;color:var(--krp-text)!important;box-shadow:none}
html.krp-dark body[data-krp-page=calendar] .calendar-table td.today-mark{background:var(--krp-primary-soft)!important}

html.krp-dark body[data-krp-page] .stat-pill{background:var(--krp-surface)!important;border-color:var(--krp-border)!important}
html.krp-dark body[data-krp-page] .stat-pill.active{background:var(--krp-primary-soft)!important}
html.krp-dark body[data-krp-page] .stat-pill .lbl{color:var(--krp-muted)!important}

body[data-krp-page] :where(button,.btn):not([role=switch]){min-width:44px}
body[data-krp-page] .conf-step{height:44px;min-height:44px;min-width:0;border-radius:9px;display:flex;align-items:center;justify-content:center;transform:none!important}
body[data-krp-page] .conf-step::after{content:attr(data-v);display:grid;place-items:center;width:22px;height:22px;background:#fff;color:#24344e;border-radius:50%;font-size:.75rem;font-weight:700}

body[data-krp-page] :where(.form-label,.field-label){font-size:.875rem!important}
body[data-krp-page] :where(.form-text,.stat-label,.mini-label,.filter-label,.item-label){font-size:max(.78rem,12px)!important;line-height:1.6}

.krp-workflow-guide{margin:0 0 18px;color:var(--krp-muted);font-size:.83rem}.krp-workflow-guide summary{cursor:pointer;min-height:44px;display:list-item;align-content:center;color:var(--krp-primary)}.krp-workflow-guide p{padding:10px 14px;background:var(--krp-surface);border:1px solid var(--krp-border);border-radius:10px;margin:0;line-height:1.8}

.krp-private-gate{position:fixed;inset:0;z-index:1105;background:var(--krp-bg);display:grid;place-items:center;padding:20px;overflow:auto}.krp-private-gate[hidden]{display:none}.krp-private-card{width:min(100%,430px);padding:26px;border:1px solid var(--krp-border);border-radius:18px;background:var(--krp-surface);color:var(--krp-text)}.krp-private-card h2{font-size:1.25rem}.krp-private-card>p{font-size:.86rem;color:var(--krp-muted)}
.krp-private-card input{font-size:16px;min-height:46px}.krp-private-logout{position:fixed;bottom:84px;right:20px;z-index:1040;max-width:calc(100vw - 40px)!important}.krp-private-logout[hidden]{display:none}

/* Content-sized layouts: keep useful space for forms at intermediate desktop widths. */
body[data-krp-page] .main-content>.page-header{margin-bottom:24px;padding-bottom:20px;gap:16px}
body[data-krp-page] .page-header h1{font-size:1.625rem;line-height:1.45;color:var(--krp-text);margin-bottom:6px}
body[data-krp-page] .page-header p{font-size:.875rem;line-height:1.7;color:var(--krp-muted);margin:0}
body[data-krp-page] .input-group{flex-wrap:nowrap;align-items:stretch;min-width:0}
body[data-krp-page] .input-group>.input-group-text{border-radius:10px 0 0 10px!important;flex:0 0 42px;justify-content:center;padding:8px;color:var(--krp-muted);background:var(--krp-surface-2);border-color:var(--krp-border)}
body[data-krp-page] .input-group>.form-control,body[data-krp-page] .input-group>.form-select{width:1%;min-width:0;flex:1 1 auto;border-radius:0 10px 10px 0!important;margin-left:-1px}
body[data-krp-page] :where(.filter-tab,.filter-btn,.flt-btn){font-size:.8125rem;padding:8px 12px;line-height:1.5;box-shadow:none!important}
body[data-krp-page] :where(.form-control,.form-select){min-height:44px;font-size:.9375rem}
body[data-krp-page] .form-label{margin-bottom:6px}
body[data-krp-page] :where(#vehicleHistory,#repairHistorySection,#formSection){scroll-margin-top:90px}
body[data-krp-page] .krp-sidebar-tools{display:flex;gap:8px;padding:12px;border-top:1px solid rgba(255,255,255,.12);margin-top:8px}
body[data-krp-page] .krp-sidebar-tools :is(#krpThemeControl,#krpSchoolSessionControl){position:static!important;inset:auto!important;display:flex;align-items:center;justify-content:flex-start;gap:10px;width:100%;height:auto;min-height:44px;padding:10px 12px;border:1px solid rgba(255,255,255,.18);border-radius:10px!important;box-shadow:none!important;background:rgba(255,255,255,.08)!important;color:#edf2ff!important;font-size:.8125rem;transform:none!important;visibility:visible}
body[data-krp-page] .krp-sidebar-tools #krpThemeControl::after{content:attr(title);font-size:.8125rem;line-height:1.5;font-family:'Noto Sans Thai',sans-serif}
body[data-krp-page] .krp-sidebar-tools #krpSchoolSessionControl .krp-auth-label{display:inline!important}
body[data-krp-page] .krp-sidebar-tools :is(#krpThemeControl,#krpSchoolSessionControl):hover{background:rgba(255,255,255,.15)!important}
body[data-krp-page] .krp-sidebar-tools :is(#krpThemeControl,#darkModeToggle){flex:0 0 44px;width:44px;height:44px;padding:0;justify-content:center}
body[data-krp-page] .krp-sidebar-tools :is(#krpThemeControl,#darkModeToggle)::after{display:none}
body[data-krp-page] .krp-sidebar-tools :is(#krpSchoolSessionControl,#schoolLoginButton){flex:1;min-width:0;font-size:.8125rem;padding:8px 10px;justify-content:center}
@media(min-width:992px){
 body[data-krp-page] .wrapper>.sidebar{position:sticky;top:0;height:100dvh;min-height:0;align-self:flex-start;overflow-y:auto}
 body[data-krp-page] .wrapper>.sidebar .menu-list{min-height:0;overflow-y:auto;flex:1 1 auto}
 body[data-krp-page] .wrapper>.sidebar .krp-sidebar-tools,body[data-krp-page] .wrapper>.sidebar .sidebar-footer{flex-shrink:0}
}

/* A single school leave entry, with two clear paths and the existing approval flow. */
body[data-krp-page=student-leave] .leave-role-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--krp-border);border-radius:18px;overflow:hidden;background:var(--krp-surface);margin-bottom:30px;box-shadow:0 5px 18px rgba(24,42,84,.04)}
body[data-krp-page=student-leave] .leave-role{padding:26px 28px;display:flex;flex-direction:column;align-items:flex-start;min-width:0;gap:14px}
body[data-krp-page=student-leave] .leave-role-teacher{background:var(--krp-primary-soft);border-left:1px solid var(--krp-border)}
body[data-krp-page=student-leave] .leave-role-heading{display:flex;align-items:center;gap:12px}
body[data-krp-page=student-leave] .leave-role-heading h2{font-size:1.25rem;font-weight:750;margin:0;color:var(--krp-text)}
body[data-krp-page=student-leave] .leave-role-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:12px;background:#fff2d8;color:#97601e;font-size:1.125rem;flex-shrink:0}
body[data-krp-page=student-leave] .leave-role-teacher .leave-role-icon{background:var(--krp-surface);color:var(--krp-primary)}
body[data-krp-page=student-leave] .leave-role p{font-size:.875rem;color:var(--krp-muted);line-height:1.85;margin:0}
body[data-krp-page=student-leave] .leave-role-action{display:flex;align-items:center;gap:10px;margin-top:auto;padding:11px 15px;font-size:.875rem;text-align:left;width:100%;max-width:350px;box-shadow:none}
body[data-krp-page=student-leave] .leave-role-action span{flex:1;min-width:0}
body[data-krp-page=student-leave] .leave-workspace-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:0 0 18px;scroll-margin-top:90px;flex-wrap:wrap}
body[data-krp-page=student-leave] .leave-workspace-heading h2{font-size:1.125rem;font-weight:750;margin:0;color:var(--krp-text)}
body[data-krp-page=student-leave] .leave-workspace-heading p{font-size:.8125rem;margin:3px 0 0;color:var(--krp-muted)}
body[data-krp-page=student-leave] .stat-grid{gap:12px;margin-bottom:20px;grid-template-columns:repeat(6,minmax(0,1fr))}
body[data-krp-page=student-leave] .stat-card{padding:16px 14px;min-height:118px;border-radius:14px}
body[data-krp-page=student-leave] .stat-card .stat-icon{font-size:1.125rem;margin-bottom:8px}
body[data-krp-page=student-leave] .stat-num{font-size:1.625rem;margin-bottom:4px;line-height:1.25}
body[data-krp-page=student-leave] .stat-label{font-size:.75rem;font-weight:600}
body[data-krp-page=student-leave] .leave-time{display:flex;align-items:flex-start;gap:5px}
body[data-krp-page=student-leave] .leave-time>i{flex:0 0 12px;margin-top:4px}
body[data-krp-page=student-leave] .leave-time-part{display:block;white-space:nowrap}
body[data-krp-page=student-leave] .filter-section-premium{padding:20px;border-radius:14px;box-shadow:none;margin-bottom:16px}
body[data-krp-page=student-leave] .filter-section-premium::before{height:2px}
body[data-krp-page=student-leave] .list-table .row-completed{opacity:1!important;background:var(--krp-surface-2)!important}
body[data-krp-page=student-leave] .row-completed [style*="color:#94a3b8"]{color:var(--krp-muted)!important}
body[data-krp-page=student-leave] .row-completed [style*="opacity"]{opacity:1!important}
body[data-krp-page=student-leave] .leave-filter-panel{padding:20px 22px;margin-bottom:18px;box-shadow:none;border-radius:14px}
body[data-krp-page=student-leave] .leave-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) minmax(0,1.5fr);gap:12px;align-items:end}
body[data-krp-page=student-leave] .leave-filter-grid>div{width:auto;min-width:0;padding:0}
body[data-krp-page=student-leave] .leave-filter-grid :where(input,select){min-height:46px;font-size:.8125rem}
body[data-krp-page=student-leave] .leave-filter-grid label{margin-bottom:6px;font-size:.75rem;color:var(--krp-muted)}

/* Vehicle picker: aligned actions and legible vehicle names, without oversized banners. */
body[data-krp-page=vehicle] .vehicle-layout{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:24px}
body[data-krp-page=vehicle] .vh-hero{background:var(--krp-surface)!important;color:var(--krp-text);border:1px solid var(--krp-border);border-radius:14px;padding:20px 22px;text-align:left;box-shadow:none;margin-bottom:16px;display:grid;grid-template-columns:44px minmax(0,1fr);gap:4px 14px;align-items:center}
body[data-krp-page=vehicle] .vh-hero::before,body[data-krp-page=vehicle] .vh-hero::after{display:none}
body[data-krp-page=vehicle] .vh-hero-icon{width:44px;height:44px;grid-row:span 2;margin:0;border-radius:12px;background:var(--krp-primary-soft);color:var(--krp-primary);font-size:1.25rem;animation:none;backdrop-filter:none}
body[data-krp-page=vehicle] .vh-hero h2{font-size:1.0625rem;color:var(--krp-text);margin:0;font-weight:750}
body[data-krp-page=vehicle] .vh-hero p{font-size:.8125rem;color:var(--krp-muted);opacity:1;line-height:1.65;font-weight:400}
body[data-krp-page=vehicle] #vehicleCardRow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 20px}
body[data-krp-page=vehicle] #vehicleCardRow>div{width:auto;max-width:none;margin:0;padding:0}
body[data-krp-page=vehicle] .vehicle-card{display:flex;flex-direction:column;box-shadow:none;border-radius:14px;transform:none!important;height:100%}
body[data-krp-page=vehicle] .vehicle-card.selected{border-color:#4059d8;box-shadow:0 3px 12px rgba(40,61,148,.12)}
body[data-krp-page=vehicle] .vehicle-img-wrap{height:122px;flex-shrink:0;background:#f5f7fa}
body[data-krp-page=vehicle] .vehicle-img-wrap img{object-fit:contain;padding:7px;transform:none!important}
body[data-krp-page=vehicle] .vehicle-card>.p-3{display:flex;flex-direction:column;flex:1;padding:14px!important}
body[data-krp-page=vehicle] .vehicle-card h6{font-size:.9375rem;color:var(--krp-text)!important;line-height:1.6}
body[data-krp-page=vehicle] .vehicle-card p{font-size:.75rem;line-height:1.75;margin-bottom:14px!important;color:var(--krp-muted)!important}
body[data-krp-page=vehicle] .vehicle-btn{display:flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;min-height:44px;margin-top:auto;padding:8px 10px;font-size:.8125rem;border-radius:9px;background:var(--krp-surface-2);color:var(--krp-text);border-color:var(--krp-border)}
body[data-krp-page=vehicle] .vehicle-btn i{margin:0!important}
body[data-krp-page=vehicle] .vehicle-card.selected .vehicle-btn{background:#4059d8!important;color:#fff!important}
body[data-krp-page=vehicle] .form-booking-card{padding:24px;border-radius:16px}
body[data-krp-page=vehicle] .history-header{padding:16px 20px;justify-content:space-between;background:var(--krp-primary-soft)!important;color:var(--krp-text);border-bottom:1px solid var(--krp-border)}
body[data-krp-page=vehicle] .history-header h6{color:var(--krp-text)!important;font-size:1rem}
body[data-krp-page=vehicle] .refresh-btn{background:var(--krp-surface)!important;color:var(--krp-primary)!important;border:1px solid var(--krp-border);width:44px;height:44px;border-radius:10px}
body[data-krp-page=vehicle] .history-body{padding:20px}
body[data-krp-page=vehicle] .stat-strip{gap:8px;margin-bottom:16px}
body[data-krp-page=vehicle] .stat-pill{padding:13px 6px;border-radius:12px;box-shadow:none!important;transform:none!important}
body[data-krp-page=vehicle] .stat-pill .num{font-size:1.375rem}
body[data-krp-page=vehicle] .stat-pill .lbl{font-size:.6875rem}
body[data-krp-page=vehicle] .filter-tabs{gap:6px;margin-bottom:10px}

/* Repair forms: a single border around grouped fields and content-driven columns. */
body[data-krp-page=repair] .repair-workspace{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:24px;margin:0}
body[data-krp-page=repair] .repair-workspace>div{width:auto;max-width:none;margin:0;padding:0;min-width:0}
body[data-krp-page=repair] .repair-form-heading{padding:20px 24px!important;text-align:left!important;background:var(--krp-primary-soft)!important;border:1px solid var(--krp-border);border-bottom:0}
body[data-krp-page=repair] .repair-form-heading>div{display:none}
body[data-krp-page=repair] .repair-form-heading>i{font-size:1.25rem!important;color:var(--krp-primary)!important;margin-bottom:8px!important;animation:none!important}
body[data-krp-page=repair] .repair-form-heading h3{font-size:1.0625rem!important;color:var(--krp-text)!important}
body[data-krp-page=repair] .repair-form-heading p{color:var(--krp-muted)!important;font-size:.8125rem!important}
body[data-krp-page=repair] .form-booking-card>div:last-child{padding:24px!important;border-color:var(--krp-border)!important;box-shadow:none!important;background:var(--krp-surface)!important}
body[data-krp-page=repair] .form-progress-container{padding:12px 24px;gap:14px;border:1px solid var(--krp-border);border-top:0}
body[data-krp-page=repair] .form-control:valid:not(:placeholder-shown),body[data-krp-page=repair] .form-select:has(option:checked:not([value=""])){border-color:var(--krp-border);background-image:none;padding-right:12px}
body[data-krp-page=repair] .form-select:has(option:checked:not([value=""])){padding-right:40px}
body[data-krp-page=repair] .input-group>.form-control{border-radius:0 10px 10px 0!important}
body[data-krp-page=repair] .repair-workspace :where(.card-header,.history-header){padding:16px 20px!important}
body[data-krp-page=repair] :where(.repair-item,.repair-history-item){overflow-wrap:anywhere;min-width:0}

/* Counseling login: use the same school surface and readable field colors. */
body[data-krp-page=counseling-admin] #loginOverlay{background:var(--krp-bg)!important;padding:24px;overflow:auto}
body[data-krp-page=counseling-admin] #loginOverlay .login-card{background:var(--krp-surface)!important;border:1px solid var(--krp-border)!important;box-shadow:0 12px 35px rgba(29,46,84,.08);border-radius:18px;max-width:430px;padding:28px;text-align:left;animation:none;backdrop-filter:none;color:var(--krp-text)!important}
body[data-krp-page=counseling-admin] #loginOverlay .login-icon{width:52px;height:52px;margin:26px 0 18px;border:0;border-radius:14px;background:var(--krp-primary-soft);color:var(--krp-primary);font-size:1.5rem}
body[data-krp-page=counseling-admin] #loginOverlay h2{font-size:1.375rem;font-weight:750;color:var(--krp-text)!important;margin-bottom:8px}
body[data-krp-page=counseling-admin] #loginOverlay p{font-size:.875rem;color:var(--krp-muted)!important;line-height:1.8;margin-bottom:24px}
body[data-krp-page=counseling-admin] #loginOverlay .login-input{background:var(--krp-surface)!important;color:var(--krp-text)!important;border:1px solid var(--krp-border)!important;border-radius:10px;min-height:48px;font-size:16px;text-align:left;padding:10px 14px;letter-spacing:2px;margin-bottom:14px}
body[data-krp-page=counseling-admin] #loginOverlay .login-input::placeholder{color:var(--krp-muted)!important;letter-spacing:0}
body[data-krp-page=counseling-admin] #loginOverlay .login-btn{background:#4059d8!important;color:#fff!important;box-shadow:none;min-height:48px;border-radius:10px;font-size:.9375rem;padding:10px 14px;transform:none}
body[data-krp-page=counseling-admin] #loginOverlay .login-err{color:#b42318;min-height:24px;font-size:.8125rem;margin-top:12px}
body[data-krp-page=counseling-admin] .counsel-login-back{display:inline-flex;align-items:center;gap:8px;color:var(--krp-muted);font-size:.8125rem;min-height:36px;text-decoration:none}
body[data-krp-page=counseling-admin] .counsel-login-label{display:block;font-size:.8125rem;font-weight:650;margin-bottom:7px;color:var(--krp-text)}
html.krp-dark body[data-krp-page=counseling-admin] #loginOverlay .login-err{color:#ffb6ac}

@media(min-width:992px) and (max-width:1439px){
 body[data-krp-page=vehicle] .vehicle-layout,body[data-krp-page=repair] .repair-workspace{grid-template-columns:minmax(0,1fr)}
 body[data-krp-page=vehicle] .vehicle-img-wrap{height:150px}
}
@media(min-width:992px) and (max-width:1199px){body[data-krp-page=student-leave] .stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:991px){
 body[data-krp-page=vehicle] .vehicle-layout,body[data-krp-page=repair] .repair-workspace{grid-template-columns:minmax(0,1fr)}
 body[data-krp-page=student-leave] .stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:1199px){body[data-krp-page=student-leave] .leave-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}body[data-krp-page=student-leave] .leave-filter-search{grid-column:1/-1}}
@media(max-width:600px){
 body[data-krp-page] .page-header h1{font-size:1.375rem}
 body[data-krp-page] :where(.form-control,.form-select){font-size:16px}
 body[data-krp-page=student-leave] .leave-role-switch{grid-template-columns:1fr;margin-bottom:24px}
 body[data-krp-page=student-leave] .leave-role{padding:20px;gap:12px}
 body[data-krp-page=student-leave] .leave-role-teacher{border-left:0;border-top:1px solid var(--krp-border)}
 body[data-krp-page=student-leave] .leave-role-action{max-width:none}
 body[data-krp-page=student-leave] .stat-card{padding:12px 10px;min-height:110px}
 body[data-krp-page=student-leave] .stat-label{font-size:.6875rem}
 body[data-krp-page=vehicle] #vehicleCardRow{grid-template-columns:1fr;gap:10px}
 body[data-krp-page=vehicle] .vehicle-card{display:grid;grid-template-columns:108px minmax(0,1fr)}
 body[data-krp-page=vehicle] .vehicle-img-wrap{height:100%;min-height:145px}
 body[data-krp-page=vehicle] .vehicle-card>.p-3{padding:12px 14px!important}
 body[data-krp-page=vehicle] .vehicle-card p{margin-bottom:8px!important}
 body[data-krp-page=vehicle] .vehicle-btn{max-width:180px}
 body[data-krp-page=vehicle] .vh-hero{padding:16px;grid-template-columns:36px minmax(0,1fr);gap:4px 12px}
 body[data-krp-page=vehicle] .vh-hero-icon{width:36px;height:36px;font-size:1.125rem}
 body[data-krp-page=vehicle] .vh-hero h2{font-size:1rem}
 body[data-krp-page=vehicle] .form-booking-card{padding:18px}
 body[data-krp-page=vehicle] .history-body{padding:16px}
 body[data-krp-page=repair] .form-booking-card>div:last-child{padding:18px!important}
 body[data-krp-page=repair] .repair-form-heading{padding:18px!important}
 body[data-krp-page=repair] .form-progress-container{padding:12px 18px}
 body[data-krp-page=counseling-admin] #loginOverlay{padding:18px}
 body[data-krp-page=counseling-admin] #loginOverlay .login-card{padding:24px}
}

@media(max-width:767.98px){
 body[data-krp-page=student-leave] .list-table,body[data-krp-page=student-leave] .list-table tbody{display:block;width:100%;min-width:0}
 body[data-krp-page=student-leave] .list-table tbody tr{display:flex;width:100%;max-width:100%;min-width:0;margin:0 0 12px;padding:14px;box-sizing:border-box}
 body[data-krp-page=student-leave] .list-table tbody td{width:100%!important;min-width:0;max-width:100%;box-sizing:border-box}
 body[data-krp-page=student-leave] .list-table td .text-nowrap{white-space:normal!important;gap:5px!important}
 body[data-krp-page=student-leave] .list-table td .text-nowrap>.d-flex{flex-wrap:wrap;gap:4px;line-height:1.7}
 body[data-krp-page=student-leave] .list-table td .fs-5{font-size:.9375rem!important}
 body[data-krp-page=student-leave] .list-table td .fs-6{font-size:.875rem!important}
 body[data-krp-page=student-leave] .list-table td .btn{width:100%;align-self:stretch;max-width:100%!important}
 body[data-krp-page=student-leave] .list-table .date-divider-row{border:0;border-radius:0;background:var(--krp-primary-soft)!important;padding:8px 14px}
 body[data-krp-page=student-leave] .list-table .date-divider-row td{border:0!important;padding:0;margin:0}
 body[data-krp-page=student-leave] .list-table .date-divider-row .badge{font-size:.6875rem!important;padding:5px 8px!important}
}

/* Stable native controls and dialog chrome, 7 November 2026. */
:root{--krp-select-arrow:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%23526176' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
html.krp-dark{--krp-select-arrow:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%23b1c0d7' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
body[data-krp-page] select.form-select{background-image:var(--krp-select-arrow)!important;background-repeat:no-repeat!important;background-size:16px 16px!important;background-position:right 12px center!important;padding-right:40px!important;height:auto!important}
body[data-krp-page] select.form-select[multiple],body[data-krp-page] select.form-select[size]:not([size="1"]){background-image:none!important;padding-right:14px!important}
body[data-krp-page] .krp-sidebar-tools :is(#krpThemeControl,#darkModeToggle){order:0}
body[data-krp-page] .krp-sidebar-tools :is(#krpSchoolSessionControl,#schoolLoginButton){order:1}
body[data-krp-page] .modal-content>.krp-modal-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex:0 0 auto;padding:10px 16px;border-bottom:1px solid var(--krp-border);background:var(--krp-surface);color:var(--krp-text)}
body[data-krp-page] .krp-modal-caption{font-size:.9375rem;font-weight:700;line-height:1.6;min-width:0;overflow-wrap:anywhere}
body[data-krp-page] .krp-modal-close{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;min-width:68px;padding:8px 12px;border:1px solid var(--krp-border);border-radius:10px;background:var(--krp-surface-2);color:var(--krp-text);font-size:.8125rem;flex-shrink:0}
body[data-krp-page] .krp-modal-close i{font-size:16px;width:16px}
body[data-krp-page] .modal-content>.modal-body{flex:1 1 auto;min-height:0}
body[data-krp-page] .modal-content>.krp-modal-toolbar~.modal-body{overflow-y:auto;overscroll-behavior:contain}
body[data-krp-page] .modal-dialog-scrollable>.modal-content{max-height:100%!important}
body[data-krp-page] .krp-modal-toolbar~.modal-body .krp-dialog-title-original{display:none}
body[data-krp-page=repair] #modalBody:has(#updateStatusSelect)>div:first-child{display:none!important}
body[data-krp-page] .spinner-border{width:20px!important;height:20px!important;min-width:20px;border-width:2px!important;box-shadow:none!important;flex-shrink:0}
body[data-krp-page] #loader.krp-loading-notice{position:relative!important;inset:auto!important;transform:none!important;width:100%!important;margin:0 0 20px;height:auto!important;min-height:74px;padding:14px 16px!important;border:1px solid var(--krp-border)!important;border-radius:14px;background:var(--krp-surface)!important;color:var(--krp-text)!important;box-shadow:none!important;z-index:auto;animation:none!important;line-height:1.6;font-size:.875rem}
body[data-krp-page] .krp-loading-notice>.spinner-border{position:absolute;top:19px;left:16px;color:var(--krp-primary)}
body[data-krp-page] .krp-loading-notice>div{padding-left:34px}
body[data-krp-page] .krp-loading-notice strong{display:block;font-size:.875rem;font-weight:700}
body[data-krp-page] .krp-loading-notice>div>span{display:block;margin-top:2px;font-size:.75rem;color:var(--krp-muted)}
body[data-krp-page] .krp-waiting-panel{padding:28px 24px!important;background:var(--krp-surface);color:var(--krp-text)}
body[data-krp-page] .krp-waiting-panel :is(h4,h5){font-size:1.125rem;line-height:1.6;margin-top:12px!important}
body[data-krp-page] .krp-waiting-panel p{font-size:.875rem;line-height:1.8;color:var(--krp-muted);margin-bottom:0}
body[data-krp-page] .krp-empty-help{margin:8px 0 14px;font-size:.8125rem;color:var(--krp-muted);font-weight:400}
body[data-krp-page=student-leave] [data-krp-scope-help]>.btn{transition:none!important}
body[data-krp-page] :is(.empty-state,.krp-table-state,.hist-empty)>i{font-size:24px!important;line-height:1.4}
body[data-krp-page] .modal :is(.modal-icon-wrapper,.modal-pulse-icon){width:44px!important;height:44px!important;font-size:20px!important;box-shadow:none!important;animation:none!important}
@media(max-width:767.98px){body[data-krp-page] .modal-content>.krp-modal-toolbar{padding:8px 12px}}
@media(prefers-reduced-motion:reduce){body[data-krp-page] .spinner-border{animation-duration:2s}}
