.app-frame{--kh-ease:cubic-bezier(.4,0,.2,1);--kh-ease-out:cubic-bezier(.22,1,.36,1);--kh-spring:cubic-bezier(.34,1.42,.64,1);--kh-fast:140ms;--kh-base:240ms;--kh-slow:420ms;--kh-step:55ms;--kh-lift:0 18px 38px rgba(16,26,43,.13);--kh-lift-soft:0 12px 26px rgba(16,26,43,.09);--tab:var(--kh-blue);--tab-soft:var(--kh-blue-soft);--tab-ink:#1c5ec9}@keyframes kh-rise{0%{opacity:0;transform:translate3d(0,16px,0)}to{opacity:1;transform:none}}@keyframes kh-rise-sm{0%{opacity:0;transform:translate3d(0,9px,0)}to{opacity:1;transform:none}}@keyframes kh-slide-in{0%{opacity:0;transform:translate3d(-14px,0,0)}to{opacity:1;transform:none}}@keyframes kh-pop{0%{opacity:0;transform:scale(.88)}to{opacity:1;transform:scale(1)}}@keyframes kh-fade{0%{opacity:0}to{opacity:1}}@keyframes kh-sweep{0%{transform:translateX(-120%) skewX(-18deg)}to{transform:translateX(260%) skewX(-18deg)}}@keyframes kh-halo{0%,to{opacity:.55;transform:scale(1)}50%{opacity:1;transform:scale(1.12)}}@keyframes kh-ping{0%{opacity:.65;transform:scale(.82)}70%,to{opacity:0;transform:scale(1.35)}}@keyframes kh-drift{0%,to{transform:translateZ(0) scale(1)}33%{transform:translate3d(14px,-12px,0) scale(1.08)}66%{transform:translate3d(-10px,10px,0) scale(.95)}}@keyframes kh-grow-bar{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes kh-underline{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes kh-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.workspace-page{width:min(100%,1180px)}.workspace-page>*{animation:kh-rise var(--kh-slow) var(--kh-ease-out) both}.workspace-page>:first-child{animation-delay:0s}.workspace-page>:nth-child(2){animation-delay:calc(var(--kh-step) * 1)}.workspace-page>:nth-child(3){animation-delay:calc(var(--kh-step) * 2)}.workspace-page>:nth-child(4){animation-delay:calc(var(--kh-step) * 3)}.workspace-page>:nth-child(5){animation-delay:calc(var(--kh-step) * 4)}.workspace-page>:nth-child(n+6){animation-delay:calc(var(--kh-step) * 5)}.dashboard-attention-grid>*,.dashboard-calendar-grid>*,.dashboard-list-panel .list>*,.dashboard-task-list>*,.directory-table tbody tr,.enrolments-list>*,.registration-queue-list>*,.school-group-list>*,.security-list>*,.settings-room-grid>*,.teaching-course-list>*,.teaching-group-grid>*{animation:kh-rise-sm .34s var(--kh-ease-out) both}.dashboard-attention-grid>:first-child,.dashboard-list-panel .list>:first-child,.dashboard-task-list>:first-child,.directory-table tbody tr:first-child,.enrolments-list>:first-child,.registration-queue-list>:first-child,.school-group-list>:first-child,.security-list>:first-child,.settings-room-grid>:first-child,.teaching-course-list>:first-child,.teaching-group-grid>:first-child{animation-delay:40ms}.dashboard-attention-grid>:nth-child(2),.dashboard-list-panel .list>:nth-child(2),.dashboard-task-list>:nth-child(2),.directory-table tbody tr:nth-child(2),.enrolments-list>:nth-child(2),.registration-queue-list>:nth-child(2),.school-group-list>:nth-child(2),.security-list>:nth-child(2),.settings-room-grid>:nth-child(2),.teaching-course-list>:nth-child(2),.teaching-group-grid>:nth-child(2){animation-delay:80ms}.dashboard-attention-grid>:nth-child(3),.dashboard-list-panel .list>:nth-child(3),.dashboard-task-list>:nth-child(3),.directory-table tbody tr:nth-child(3),.enrolments-list>:nth-child(3),.registration-queue-list>:nth-child(3),.school-group-list>:nth-child(3),.security-list>:nth-child(3),.settings-room-grid>:nth-child(3),.teaching-course-list>:nth-child(3),.teaching-group-grid>:nth-child(3){animation-delay:.12s}.dashboard-attention-grid>:nth-child(4),.dashboard-list-panel .list>:nth-child(4),.dashboard-task-list>:nth-child(4),.directory-table tbody tr:nth-child(4),.enrolments-list>:nth-child(4),.registration-queue-list>:nth-child(4),.school-group-list>:nth-child(4),.security-list>:nth-child(4),.settings-room-grid>:nth-child(4),.teaching-course-list>:nth-child(4),.teaching-group-grid>:nth-child(4){animation-delay:.16s}.dashboard-attention-grid>:nth-child(5),.dashboard-list-panel .list>:nth-child(5),.dashboard-task-list>:nth-child(5),.directory-table tbody tr:nth-child(5),.enrolments-list>:nth-child(5),.registration-queue-list>:nth-child(5),.school-group-list>:nth-child(5),.security-list>:nth-child(5),.settings-room-grid>:nth-child(5),.teaching-course-list>:nth-child(5),.teaching-group-grid>:nth-child(5){animation-delay:.2s}.dashboard-attention-grid>:nth-child(n+6),.dashboard-list-panel .list>:nth-child(n+6),.dashboard-task-list>:nth-child(n+6),.directory-table tbody tr:nth-child(n+6),.enrolments-list>:nth-child(n+6),.registration-queue-list>:nth-child(n+6),.school-group-list>:nth-child(n+6),.security-list>:nth-child(n+6),.settings-room-grid>:nth-child(n+6),.teaching-course-list>:nth-child(n+6),.teaching-group-grid>:nth-child(n+6){animation-delay:.24s}.dashboard-calendar-grid>*{animation-duration:.26s;animation-delay:60ms}.school-dashboard-page{--tab:var(--kh-orange);--tab-soft:var(--kh-orange-soft);--tab-ink:#c2441c}.students-page{--tab:var(--kh-blue);--tab-soft:var(--kh-blue-soft);--tab-ink:#1c5ec9}.students-registration-page{--tab:var(--kh-teal);--tab-soft:var(--kh-teal-soft);--tab-ink:#087d7b}.enrolments-page{--tab:var(--kh-pink);--tab-soft:var(--kh-pink-soft);--tab-ink:#c32152}.courses-page{--tab:var(--kh-blue);--tab-soft:var(--kh-blue-soft);--tab-ink:#1c5ec9}.groups-page{--tab:var(--kh-teal);--tab-soft:var(--kh-teal-soft);--tab-ink:#087d7b}.timetable-overview{--tab:var(--kh-yellow);--tab-soft:var(--kh-yellow-soft);--tab-ink:#8b6500}.people-page{--tab:var(--kh-pink);--tab-soft:var(--kh-pink-soft);--tab-ink:#c32152}.settings-page{--tab:var(--kh-navy);--tab-soft:#eef1f6;--tab-ink:var(--kh-navy)}.messages-page{--tab:var(--kh-teal);--tab-soft:var(--kh-teal-soft);--tab-ink:#087d7b}.workspace-page .panel:before,.workspace-page .panel:nth-child(2):before{background:var(--tab)}.workspace-page .eyebrow,.workspace-page .focus-kicker{color:var(--tab-ink)}.workspace-page .eyebrow:before{background:var(--tab);animation:kh-halo 2.6s var(--kh-ease) infinite}.app-frame{background:#f4f6fb}.app-frame:before{position:fixed;z-index:0;inset:0 0 auto auto;width:46vw;height:46vw;max-width:720px;max-height:720px;border-radius:50%;background:radial-gradient(circle,rgba(36,120,255,.09),transparent 68%);content:"";pointer-events:none;transform:translate(28%,-38%)}.app-main{position:relative;z-index:1}.app-sidebar{z-index:3;background:linear-gradient(180deg,#fff,#fbfcfe);box-shadow:1px 0 0 rgba(16,26,43,.04)}.app-sidebar .brand{transition:transform var(--kh-base) var(--kh-spring)}.app-sidebar .brand:hover{transform:translateY(-1px) scale(1.015)}.app-organization-identity{transition:border-color var(--kh-base) var(--kh-ease),box-shadow var(--kh-base) var(--kh-ease),transform var(--kh-base) var(--kh-ease)}.app-organization-identity:hover{border-color:#cfdaea;box-shadow:var(--kh-lift-soft);transform:translateY(-1px)}.app-nav-group>summary .app-nav-icon{transition:transform var(--kh-base) var(--kh-spring),color var(--kh-base) var(--kh-ease)}.app-nav-group>summary:hover .app-nav-icon{transform:scale(1.14) rotate(-4deg)}.app-nav-group.has-active>summary{box-shadow:inset 3px 0 0 var(--kh-teal)}.app-nav-group[open]>.app-nav-subitems>a{animation:kh-slide-in .26s var(--kh-ease-out) both}.app-nav-group[open]>.app-nav-subitems>a:nth-child(2){animation-delay:45ms}.app-nav-group[open]>.app-nav-subitems>a:nth-child(3){animation-delay:90ms}.app-nav-section a{transition:background-color var(--kh-base) var(--kh-ease),color var(--kh-base) var(--kh-ease),transform var(--kh-base) var(--kh-spring)}.app-nav-section a:hover{transform:translateX(3px)}.app-nav-section a .app-nav-icon{transition:transform var(--kh-base) var(--kh-spring),color var(--kh-base) var(--kh-ease)}.app-nav-section a:hover .app-nav-icon{transform:scale(1.14) rotate(-4deg)}.app-nav-section a.active{background:linear-gradient(100deg,var(--kh-teal-soft),rgba(230,248,247,.35));color:var(--kh-navy);font-weight:850}.app-nav-section a.active:before{background:var(--kh-teal);box-shadow:0 0 12px rgba(15,183,180,.55)}.app-nav-section a.active .app-nav-icon{transform:scale(1.06)}.app-setup-sidebar-note .app-setup-dots span{animation:kh-bob 1.4s var(--kh-ease) infinite}.app-setup-sidebar-note .app-setup-dots span:nth-child(2){animation-delay:.16s}.app-setup-sidebar-note .app-setup-dots span:nth-child(3){animation-delay:.32s}.app-main-toolbar{position:-webkit-sticky;position:sticky;z-index:15;top:0;align-items:center;padding:14px 44px 12px;background:linear-gradient(180deg,rgba(244,246,251,.96) 55%,rgba(244,246,251,0));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.school-header-avatar:hover,.school-header-utility-icon:hover{transform:translateY(-2px) scale(1.04)}.school-header-unread-dot{animation:kh-halo 1.8s var(--kh-ease) infinite}.school-header-unread-dot:after{position:absolute;inset:-4px;border:2px solid var(--kh-orange);border-radius:50%;content:"";animation:kh-ping 1.8s var(--kh-ease-out) infinite}.school-header-account-menu{animation:kh-rise-sm .2s var(--kh-ease-out) both;transform-origin:top right}.workspace-breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-bottom:14px;font-size:11px;font-weight:800}.workspace-breadcrumbs a{color:var(--kh-muted);transition:color var(--kh-fast) var(--kh-ease)}.workspace-breadcrumbs a:hover{color:var(--tab-ink)}.workspace-breadcrumb-item{display:inline-flex;align-items:center;gap:6px}.workspace-breadcrumb-separator{color:#c3cad6}.workspace-breadcrumbs strong{color:var(--kh-navy)}.content-header h2,.directory-page-header h2{position:relative;width:-moz-fit-content;width:fit-content;max-width:100%;padding-bottom:6px}.content-header h2:after,.directory-page-header h2:after{position:absolute;right:14%;bottom:0;left:0;height:4px;border-radius:99px;background:linear-gradient(90deg,var(--tab),transparent);content:"";transform-origin:left;animation:kh-underline .62s var(--kh-ease-out) .12s both}.directory-page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px}.button{position:relative;overflow:hidden;transition:transform var(--kh-base) var(--kh-spring),background-color var(--kh-base) var(--kh-ease),border-color var(--kh-base) var(--kh-ease),box-shadow var(--kh-base) var(--kh-ease)}.button:after{position:absolute;inset:0;width:42%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.45),transparent);content:"";opacity:0;pointer-events:none;transform:translateX(-140%) skewX(-18deg)}.button:hover:after{opacity:1;animation:kh-sweep .72s var(--kh-ease-out) 1}.button:hover{transform:translateY(-2px)}.button:active{transform:translateY(0) scale(.98)}.button-primary:hover{box-shadow:0 12px 26px rgba(255,99,51,.3)}.button-quiet:hover{box-shadow:var(--kh-lift-soft)}.button:disabled,.button[disabled]{opacity:.6;transform:none;cursor:not-allowed}.button:disabled:after,.button[disabled]:after{display:none}.directory-primary-action{border-color:transparent;background:var(--tab);color:#fff}.directory-primary-action:hover{box-shadow:0 12px 26px color-mix(in srgb,var(--tab) 32%,transparent)}.school-dashboard-page .dashboard-attention{position:relative;overflow:hidden;padding:22px;border-radius:26px;background:linear-gradient(135deg,#0d1626,#17253c 52%,#101a2b);box-shadow:0 24px 52px rgba(10,18,32,.26)}.dashboard-attention:before{top:-120px;right:-90px;background:radial-gradient(circle,rgba(255,99,51,.34),transparent 66%);animation:kh-drift 13s var(--kh-ease) infinite}.dashboard-attention:after,.dashboard-attention:before{position:absolute;width:300px;height:300px;border-radius:50%;content:"";pointer-events:none}.dashboard-attention:after{bottom:-140px;left:-70px;background:radial-gradient(circle,rgba(15,183,180,.3),transparent 66%);animation:kh-drift 17s var(--kh-ease) infinite reverse}.dashboard-attention>*{position:relative;z-index:1}.dashboard-section-heading h3{font-size:21px;letter-spacing:-.04em}.dashboard-attention-count{box-shadow:0 0 0 5px rgba(255,99,51,.2);animation:kh-halo 2.4s var(--kh-ease) infinite}.dashboard-attention-item{position:relative;overflow:hidden;grid-template-columns:34px auto minmax(0,1fr) auto;min-height:82px;border-radius:18px;transition:transform var(--kh-base) var(--kh-spring),box-shadow var(--kh-base) var(--kh-ease)}.dashboard-attention-item:after{position:absolute;inset:0;width:45%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.62),transparent);content:"";opacity:0;pointer-events:none;transform:translateX(-140%) skewX(-18deg)}.dashboard-attention-item:hover{transform:translateY(-4px) scale(1.012);box-shadow:0 16px 32px rgba(0,0,0,.22)}.dashboard-attention-item:hover:after{opacity:1;animation:kh-sweep .78s var(--kh-ease-out) 1}.dashboard-attention-item>strong{font-size:26px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.dashboard-attention-item>svg:last-child{transition:transform var(--kh-base) var(--kh-spring)}.dashboard-attention-item:hover>svg:last-child{transform:translate(3px,-3px)}.dashboard-attention-icon{transition:transform var(--kh-base) var(--kh-spring)}.dashboard-attention-item:hover .dashboard-attention-icon{transform:rotate(-8deg) scale(1.1)}.dashboard-clear{border-radius:18px}.dashboard-clear>svg{color:#6fe3cf;animation:kh-bob 2.6s var(--kh-ease) infinite}.dashboard-focus{border-radius:26px;box-shadow:var(--kh-lift-soft);transition:box-shadow var(--kh-base) var(--kh-ease)}.dashboard-focus:hover{box-shadow:var(--kh-lift)}.dashboard-pulse{position:relative;overflow:hidden;background:linear-gradient(150deg,#101a2b,#1b2c47);color:#fff}.dashboard-pulse:before{position:absolute;top:-80px;left:-60px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(255,199,44,.3),transparent 65%);content:"";pointer-events:none;animation:kh-drift 15s var(--kh-ease) infinite}.dashboard-pulse>*{position:relative;z-index:1}.dashboard-pulse .focus-kicker{color:var(--kh-yellow)}.dashboard-total strong{color:#fff;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.dashboard-total span{color:rgba(255,255,255,.62)}.dashboard-mini-stats>div{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.07);transition:transform var(--kh-base) var(--kh-spring),background-color var(--kh-base) var(--kh-ease)}.dashboard-mini-stats>div:hover{background:rgba(255,255,255,.14);transform:translateY(-3px)}.dashboard-mini-stats strong{color:#fff;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.dashboard-mini-stats span{color:rgba(255,255,255,.55)}.dashboard-lower-grid>*{min-width:0}.dashboard-list-panel .list-row{border-radius:12px;padding-inline:10px;transition:background-color var(--kh-fast) var(--kh-ease),transform var(--kh-fast) var(--kh-ease)}.dashboard-list-panel .list-row:hover{background:var(--tab-soft);transform:translateX(4px)}.dashboard-task-row{transition:transform var(--kh-base) var(--kh-spring),box-shadow var(--kh-base) var(--kh-ease)}.dashboard-task-row:hover{transform:translateX(4px);box-shadow:var(--kh-lift-soft)}.dashboard-task-check{transition:transform var(--kh-base) var(--kh-spring)}.dashboard-task-check:hover{transform:scale(1.16)}.dashboard-task-composer{animation:kh-rise-sm .28s var(--kh-ease-out) both}.dashboard-calendar-day{transition:transform var(--kh-fast) var(--kh-spring),background-color var(--kh-fast) var(--kh-ease)}.dashboard-calendar-day:hover{background:var(--kh-blue-soft);transform:scale(1.12)}.dashboard-calendar-day.is-today{position:relative}.dashboard-calendar-day.is-today:after{position:absolute;inset:-3px;border:2px solid var(--kh-teal);border-radius:12px;content:"";animation:kh-ping 2.4s var(--kh-ease-out) infinite;pointer-events:none}.workspace-focus-card{transition:transform var(--kh-base) var(--kh-spring),box-shadow var(--kh-base) var(--kh-ease)}.workspace-focus-card:hover{transform:translateY(-3px);box-shadow:var(--kh-lift)}.directory-table-panel{box-shadow:var(--kh-lift-soft)}.directory-panel-heading h3{font-size:20px;letter-spacing:-.045em}.directory-search{transition:width var(--kh-base) var(--kh-ease-out),border-color var(--kh-fast) var(--kh-ease),box-shadow var(--kh-fast) var(--kh-ease)}.directory-search:focus-within{width:min(320px,42vw);border-color:var(--tab);box-shadow:0 0 0 4px color-mix(in srgb,var(--tab) 14%,transparent)}.directory-filter svg,.directory-search svg{transition:color var(--kh-fast) var(--kh-ease)}.directory-filter:focus-within svg,.directory-search:focus-within svg{color:var(--tab)}.directory-filter:focus-within{border-color:var(--tab);box-shadow:0 0 0 4px color-mix(in srgb,var(--tab) 14%,transparent)}.directory-table th{position:-webkit-sticky;position:sticky;top:0;z-index:2;background:color-mix(in srgb,var(--tab-soft) 82%,#fff);color:var(--tab-ink)}.directory-table tbody tr{position:relative;transition:background-color var(--kh-fast) var(--kh-ease),box-shadow var(--kh-base) var(--kh-ease)}.directory-table tbody tr td:first-child{position:relative}.directory-table tbody tr td:first-child:before{position:absolute;top:8px;bottom:8px;left:0;width:3px;border-radius:99px;background:var(--tab);content:"";opacity:0;transform:scaleY(.4);transition:opacity var(--kh-fast) var(--kh-ease),transform var(--kh-fast) var(--kh-spring)}.directory-table tbody tr:hover{background:color-mix(in srgb,var(--tab-soft) 55%,#fff)}.directory-table tbody tr:hover td:first-child:before{opacity:1;transform:scaleY(1)}.directory-person-avatar,.directory-person>span:first-child{transition:transform var(--kh-base) var(--kh-spring)}.directory-table tbody tr:hover .directory-person-avatar,.directory-table tbody tr:hover .directory-person>span:first-child{transform:scale(1.08)}.directory-see-more{display:inline-flex;align-items:center;gap:5px;padding:6px 10px;border-radius:999px;background:var(--tab-soft);color:var(--tab-ink);font-size:10px;font-weight:850;white-space:nowrap;transition:background-color var(--kh-fast) var(--kh-ease),color var(--kh-fast) var(--kh-ease),transform var(--kh-base) var(--kh-spring)}.directory-see-more:hover{background:var(--tab);color:#fff;transform:translateX(2px)}.directory-see-more svg{transition:transform var(--kh-base) var(--kh-spring)}.directory-see-more:hover svg{transform:translate(2px,-2px)}.directory-status{transition:transform var(--kh-fast) var(--kh-spring)}.directory-table tbody tr:hover .directory-status{transform:scale(1.05)}.directory-pagination{display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 0 6px;flex-wrap:wrap}.directory-page-number,.directory-pagination>button{display:grid;min-width:34px;height:34px;place-items:center;padding:0 9px;border:1px solid var(--kh-line);border-radius:11px;background:#fff;color:var(--kh-muted);font:inherit;font-size:11px;font-weight:850;cursor:pointer;transition:transform var(--kh-base) var(--kh-spring),border-color var(--kh-fast) var(--kh-ease),background-color var(--kh-fast) var(--kh-ease),color var(--kh-fast) var(--kh-ease)}.directory-page-numbers{display:flex;align-items:center;gap:6px}.directory-page-number:hover:not(:disabled),.directory-pagination>button:hover:not(:disabled){border-color:var(--tab)!important;background:var(--tab-soft)!important;color:var(--tab-ink)!important;transform:translateY(-2px)}.directory-pagination>button:disabled{opacity:.4;cursor:not-allowed}.directory-page-number.is-current{border-color:transparent!important;background:var(--tab)!important;color:#fff!important;box-shadow:0 8px 18px color-mix(in srgb,var(--tab) 30%,transparent)}.directory-page-ellipsis{color:#aab3c1;font-weight:850}.directory-page-size{color:var(--kh-muted);font-size:10px;font-weight:800}.directory-empty{display:grid;justify-items:center;grid-gap:6px;gap:6px;padding:46px 20px;border:1px dashed #ccd3de;border-radius:18px;background:#fbfcfe;text-align:center;animation:kh-pop .32s var(--kh-ease-out) both}.directory-empty svg{color:var(--tab);animation:kh-bob 2.4s var(--kh-ease) infinite}.directory-empty strong{color:var(--kh-navy);font-size:14px}.directory-empty span{color:var(--kh-muted);font-size:11px}.directory-add-details[open] .directory-add-popover{animation:kh-rise-sm .22s var(--kh-ease-out) both}.directory-row-action[open] .directory-row-action-popover{animation:kh-rise-sm .2s var(--kh-ease-out) both}.registration-start-panel{display:flex;align-items:center;gap:16px;overflow:hidden;border:0;background:linear-gradient(120deg,var(--kh-teal-soft) 0,#fff 62%)}.registration-start-icon{display:grid;width:52px;height:52px;flex:0 0 auto;place-items:center;border-radius:18px;background:var(--kh-teal);color:#fff;box-shadow:0 12px 26px rgba(15,183,180,.34);animation:kh-bob 3.2s var(--kh-ease) infinite}.registration-start-panel h3{margin:4px 0 0;font-size:22px;letter-spacing:-.05em}.registration-queue-card{transition:transform var(--kh-base) var(--kh-spring),box-shadow var(--kh-base) var(--kh-ease),border-color var(--kh-base) var(--kh-ease)}.registration-queue-card:hover{transform:translateY(-3px);box-shadow:var(--kh-lift-soft)}.registration-queue-icon{transition:transform var(--kh-base) var(--kh-spring)}.registration-queue-card:hover .registration-queue-icon{transform:rotate(-8deg) scale(1.1)}.registration-queue-card.is-waiting .registration-queue-icon{animation:kh-halo 2.4s var(--kh-ease) infinite}.registration-review-card{animation:kh-rise-sm .3s var(--kh-ease-out) both}.registration-pass-result{animation:kh-pop .36s var(--kh-ease-out) both}.registration-pass-qr{transition:transform var(--kh-base) var(--kh-spring)}.registration-pass-qr:hover{transform:scale(1.04) rotate(-1deg)}.student-registration-drawer{animation:kh-fade .2s var(--kh-ease) both}.student-registration-drawer-body{animation:kh-rise .32s var(--kh-ease-out) both}.enrolments-layout{display:grid;grid-template-columns:minmax(300px,.82fr) minmax(0,1.18fr);grid-gap:18px;gap:18px;align-items:start}.enrolments-list{display:grid;grid-gap:8px;gap:8px;margin-top:16px}.enrolment-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 14px;border:1px solid var(--kh-line);border-left:4px solid var(--tab);border-radius:14px;background:#fff;transition:transform var(--kh-base) var(--kh-spring),box-shadow var(--kh-base) var(--kh-ease),background-color var(--kh-fast) var(--kh-ease)}.enrolment-row:hover{background:var(--tab-soft);transform:translateX(5px);box-shadow:var(--kh-lift-soft)}.enrolment-row strong{display:block;color:var(--kh-navy);font-size:13px;font-weight:850}.enrolment-row span:not(.pill){display:block;margin-top:3px;color:var(--kh-muted);font-size:11px}.enrolment-row .pill{background:var(--tab-soft);color:var(--tab-ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.workspace-command-panel{transition:box-shadow var(--kh-base) var(--kh-ease),transform var(--kh-base) var(--kh-spring)}.workspace-command-panel:hover{box-shadow:var(--kh-lift-soft)}.workspace-command-panel summary{transition:background-color var(--kh-fast) var(--kh-ease);cursor:pointer}.workspace-command-panel summary:hover{background:#fafbfe}.workspace-command-panel summary .workspace-command-icon{transition:transform var(--kh-base) var(--kh-spring)}.workspace-command-panel summary:hover .workspace-command-icon{transform:rotate(90deg) scale(1.08)}.workspace-command-panel[open]>div,.workspace-command-panel[open]>form{animation:kh-rise-sm .3s var(--kh-ease-out) both}.workspace-command-caret{display:inline-flex;align-items:center;gap:5px}.workspace-command-caret svg{transition:transform var(--kh-base) var(--kh-spring)}.workspace-command-panel[open] .workspace-command-caret svg{transform:rotate(180deg)}.teaching-course-card{position:relative;overflow:hidden;padding:20px;transition:transform var(--kh-base) var(--kh-spring),box-shadow var(--kh-base) var(--kh-ease)}.teaching-course-card:after{position:absolute;top:-70px;right:-70px;width:190px;height:190px;border-radius:50%;background:rgba(255,255,255,.55);content:"";pointer-events:none;opacity:0;transition:opacity var(--kh-slow) var(--kh-ease),transform var(--kh-slow) var(--kh-ease-out);transform:scale(.7)}.teaching-course-card:hover{transform:translateY(-4px);box-shadow:var(--kh-lift)}.teaching-course-card:hover:after{opacity:1;transform:scale(1)}.teaching-course-card>*{position:relative;z-index:1}.teaching-course-head h4{font-size:22px;letter-spacing:-.05em}.teaching-course-head>strong{color:var(--tab-ink);font-size:17px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.teaching-course-meta span{transition:background-color var(--kh-fast) var(--kh-ease),transform var(--kh-fast) var(--kh-spring)}.teaching-course-meta span:hover{background:#fff;transform:translateY(-2px)}.teaching-course-card .school-group-row{border-radius:10px;padding-inline:8px;transition:background-color var(--kh-fast) var(--kh-ease)}.teaching-course-card .school-group-row:hover{background:rgba(255,255,255,.7)}.teaching-inline-link{transition:transform var(--kh-base) var(--kh-spring),background-color var(--kh-fast) var(--kh-ease),color var(--kh-fast) var(--kh-ease)}.teaching-inline-link:hover{transform:translate(2px,-2px) scale(1.08)}.teaching-group-card{position:relative;overflow:hidden;transition:transform var(--kh-base) var(--kh-spring),box-shadow var(--kh-base) var(--kh-ease)}.teaching-group-card:hover{transform:translateY(-4px);box-shadow:var(--kh-lift)}.teaching-group-card-head .workspace-command-icon{transition:transform var(--kh-base) var(--kh-spring)}.teaching-group-card:hover .workspace-command-icon{transform:rotate(-8deg) scale(1.1)}.teaching-group-stats strong{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.teaching-group-stats>div{transition:transform var(--kh-base) var(--kh-spring),background-color var(--kh-fast) var(--kh-ease)}.teaching-group-stats>div:hover{background:#fff;transform:translateY(-2px)}.teaching-group-capacity{display:grid;grid-gap:6px;gap:6px}.teaching-group-capacity-labels{display:flex;align-items:baseline;justify-content:space-between;gap:8px;color:var(--kh-muted);font-size:9px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.teaching-group-capacity-labels b{color:var(--kh-navy);font-size:10px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.teaching-group-meter{position:relative;height:7px;overflow:hidden;border-radius:99px;background:rgba(16,26,43,.08)}.teaching-group-meter>span{display:block;width:var(--fill,0);height:100%;border-radius:99px;background:linear-gradient(90deg,var(--kh-teal),var(--kh-blue));transform-origin:left;animation:kh-grow-bar .76s var(--kh-ease-out) .18s both}.teaching-group-meter.is-full>span{background:linear-gradient(90deg,var(--kh-orange),var(--kh-pink))}.teaching-group-meter.is-open>span{background:repeating-linear-gradient(115deg,rgba(16,26,43,.16) 0 6px,rgba(16,26,43,.07) 6px 12px)}.timetable-overview-controls{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:16px;padding:10px 12px;border:1px solid var(--kh-line);border-radius:18px;background:#fff;box-shadow:var(--kh-shadow-small)}.timetable-overview-week{display:inline-flex;align-items:center;gap:10px}.timetable-overview-week a{display:grid;width:34px;height:34px;place-items:center;border:1px solid var(--kh-line);border-radius:11px;background:#fff;color:var(--kh-muted);transition:transform var(--kh-base) var(--kh-spring),border-color var(--kh-fast) var(--kh-ease),background-color var(--kh-fast) var(--kh-ease),color var(--kh-fast) var(--kh-ease)}.timetable-overview-week a:hover{border-color:var(--tab);background:var(--tab-soft);color:var(--tab-ink);transform:scale(1.08)}.timetable-overview-week strong{min-width:210px;color:var(--kh-navy);font-size:13px;font-weight:850;text-align:center}.timetable-overview-templates{display:inline-flex;align-items:center;gap:5px;padding:4px;border-radius:13px;background:#f3f5fa}.timetable-overview-templates a{padding:7px 12px;border-radius:10px;color:var(--kh-muted);font-size:11px;font-weight:850;transition:background-color var(--kh-base) var(--kh-ease),color var(--kh-base) var(--kh-ease),box-shadow var(--kh-base) var(--kh-ease),transform var(--kh-base) var(--kh-spring)}.timetable-overview-templates a:hover{color:var(--kh-navy);transform:translateY(-1px)}.timetable-overview-templates a.is-selected{background:#fff;color:var(--kh-navy);box-shadow:0 6px 14px rgba(16,26,43,.1)}.timetable-overview-template-name{display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border-radius:999px;background:var(--tab-soft);color:var(--tab-ink);font-size:11px;font-weight:850}.timetable-overview-day-picker button{transition:transform var(--kh-base) var(--kh-spring),border-color var(--kh-fast) var(--kh-ease),background-color var(--kh-fast) var(--kh-ease)}.timetable-overview-day-picker button:hover{transform:translateY(-2px)}.timetable-overview-room-class{animation:kh-pop .32s var(--kh-ease-out) both;transition:transform var(--kh-base) var(--kh-spring),box-shadow var(--kh-base) var(--kh-ease),z-index 0s}.timetable-overview-room-class:hover{z-index:4;transform:scale(1.02);box-shadow:0 12px 26px rgba(16,26,43,.18)}.timetable-overview-now-line:before{animation:kh-halo 2s var(--kh-ease) infinite}.timetable-overview-empty{display:grid;justify-items:center;grid-gap:10px;gap:10px;padding:56px 24px;border:1px dashed #ccd3de;border-radius:24px;background:#fff;text-align:center;animation:kh-pop .36s var(--kh-ease-out) both}.timetable-overview-empty>svg{color:var(--tab);animation:kh-bob 2.8s var(--kh-ease) infinite}.timetable-overview-empty strong{display:block;color:var(--kh-navy);font-size:16px}.timetable-overview-empty span{display:block;margin-top:4px;color:var(--kh-muted);font-size:12px}.settings-panel-title h3{margin:4px 0 16px;font-size:22px;letter-spacing:-.05em}.settings-security-panel summary{cursor:pointer}.settings-security-panel summary .workspace-command-icon{transition:transform var(--kh-base) var(--kh-spring)}.settings-security-panel[open] summary .workspace-command-icon{transform:rotate(-8deg) scale(1.08)}.settings-security-panel[open] .security-list>div{animation:kh-rise-sm .3s var(--kh-ease-out) both}.security-list>div{padding-inline:9px;border-radius:11px;transition:transform var(--kh-base) var(--kh-spring),background-color var(--kh-fast) var(--kh-ease)}.security-list>div:hover{background:var(--kh-teal-soft);transform:translateX(4px)}.settings-rooms-icon{transition:transform var(--kh-base) var(--kh-spring)}.settings-rooms-panel:hover .settings-rooms-icon{transform:rotate(-8deg) scale(1.08)}.settings-room-card{transition:transform var(--kh-base) var(--kh-spring),box-shadow var(--kh-base) var(--kh-ease),border-color var(--kh-fast) var(--kh-ease)}.settings-room-card:hover{border-color:#d3ddea;box-shadow:var(--kh-lift-soft);transform:translateY(-2px)}.settings-room-card-icon{transition:transform var(--kh-base) var(--kh-spring)}.settings-room-card:hover .settings-room-card-icon{transform:rotate(-6deg) scale(1.08)}.settings-room-empty svg{color:var(--kh-yellow);animation:kh-bob 2.6s var(--kh-ease) infinite}.field input,.field select,.field textarea{transition:border-color var(--kh-fast) var(--kh-ease),box-shadow var(--kh-fast) var(--kh-ease),background-color var(--kh-fast) var(--kh-ease)}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--tab);box-shadow:0 0 0 4px color-mix(in srgb,var(--tab) 14%,transparent)}.form-error{animation:kh-rise-sm .22s var(--kh-ease-out) both}.empty-state{animation:kh-pop .34s var(--kh-ease-out) both}.pill{transition:transform var(--kh-fast) var(--kh-spring)}@media (max-width:1080px){.dashboard-lower-grid,.enrolments-layout{grid-template-columns:1fr}}@media (max-width:900px){.app-frame:before{display:none}.app-nav-group>summary{flex:0 0 auto}.app-main-toolbar{position:static;padding-inline:20px}.dashboard-focus,.teaching-group-grid{grid-template-columns:1fr}}@media (max-width:680px){.directory-page-header,.directory-panel-heading{align-items:flex-start;flex-direction:column}.directory-toolbar{justify-content:flex-start;flex-wrap:wrap;width:100%}.directory-search,.directory-search:focus-within{width:100%}.timetable-overview-controls{align-items:stretch;flex-direction:column}.timetable-overview-week{justify-content:space-between}.timetable-overview-week strong{min-width:0}.content-header h2:after,.directory-page-header h2:after{right:30%}}.payments-page-mark{display:grid;width:44px;height:44px;place-items:center;border:1px solid #c9dcff;border-radius:15px;background:var(--kh-blue-soft);color:var(--kh-blue)}.payments-workspace{display:grid;grid-gap:16px;gap:16px}.payments-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px}.payments-summary-card{position:relative;display:flex;min-height:116px;align-items:flex-start;gap:12px;overflow:hidden;padding:17px;border:1px solid var(--kh-line);border-radius:18px;background:var(--kh-surface);box-shadow:var(--kh-shadow-small)}.payments-summary-card:after{position:absolute;right:0;bottom:0;left:0;height:4px;content:""}.payments-summary-card>span{display:grid;width:35px;height:35px;flex:0 0 auto;place-items:center;border-radius:11px}.payments-summary-card small,.payments-summary-card strong{display:block}.payments-summary-card small{color:var(--kh-muted);font-size:10px;font-weight:800;letter-spacing:.075em;text-transform:uppercase}.payments-summary-card strong{margin-top:13px;color:var(--kh-navy);font-size:clamp(21px,2vw,29px);letter-spacing:-.065em;line-height:1}.payments-summary-teal>span{background:var(--kh-teal-soft);color:var(--kh-teal)}.payments-summary-teal:after{background:var(--kh-teal)}.payments-summary-coral>span{background:var(--kh-orange-soft);color:var(--kh-orange)}.payments-summary-coral:after{background:var(--kh-orange)}.payments-summary-gold>span{background:var(--kh-yellow-soft);color:#b67c00}.payments-summary-gold:after{background:var(--kh-yellow)}.payments-summary-navy>span{background:#eef1f7;color:var(--kh-navy)}.payments-summary-navy:after{background:var(--kh-blue)}.payments-list-panel{overflow:hidden;padding:0}.payments-list-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 23px 15px}.payments-list-heading h3{margin:4px 0 0;color:var(--kh-navy);font-size:23px;letter-spacing:-.05em}.payments-refresh{min-height:38px;padding-inline:13px;font-size:11px}.payments-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:0 23px 16px;border-bottom:1px solid var(--kh-line)}.payments-filters{display:flex;gap:6px;overflow-x:auto;padding-bottom:2px}.payments-filters button{display:inline-flex;min-height:34px;align-items:center;gap:6px;padding:0 10px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--kh-muted);font-size:11px;font-weight:800;white-space:nowrap}.payments-filters button b{display:grid;min-width:18px;height:18px;place-items:center;border-radius:7px;background:#edf0f5;color:var(--kh-muted);font-size:9px}.payments-filters button:hover{background:#f6f8fb;color:var(--kh-navy)}.payments-filters button.is-active{border-color:#b9cdf8;background:var(--kh-blue-soft);color:var(--kh-blue)}.payments-filters button.is-active b{background:var(--kh-blue);color:#fff}.payments-search{width:min(100%,240px)}.payments-message{margin:12px 23px 0;padding:9px 11px;border:1px solid #cce8e5;border-radius:10px;background:var(--kh-teal-soft);color:#13706e;font-size:12px;font-weight:700}.payments-charge-list{display:grid}.payment-charge-row{display:grid;grid-template-columns:minmax(220px,1.6fr) minmax(104px,.65fr) minmax(112px,.7fr) 76px auto;align-items:center;grid-gap:15px;gap:15px;padding:15px 23px;border-bottom:1px solid #edf0f4}.payment-charge-row:last-child{border-bottom:0}.payment-charge-row:hover{background:#fbfcfe}.payment-charge-primary{display:flex;min-width:0;align-items:center;gap:11px}.payment-charge-icon{display:grid;width:38px;height:38px;flex:0 0 auto;place-items:center;border-radius:12px;background:var(--kh-blue-soft);color:var(--kh-blue)}.payment-charge-overdue .payment-charge-icon{background:var(--kh-orange-soft);color:var(--kh-orange)}.payment-charge-due_today .payment-charge-icon{background:var(--kh-yellow-soft);color:#b67c00}.payment-charge-balance,.payment-charge-due,.payment-charge-primary div{min-width:0}.payment-charge-balance small,.payment-charge-balance strong,.payment-charge-due small,.payment-charge-due strong,.payment-charge-primary span,.payment-charge-primary strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.payment-charge-primary strong{color:var(--kh-navy);font-size:13px}.payment-charge-primary span{margin-top:3px;color:var(--kh-muted);font-size:10px}.payment-charge-balance small,.payment-charge-due small{color:#8a95a5;font-size:8px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.payment-charge-balance strong,.payment-charge-due strong{margin-top:5px;color:var(--kh-navy);font-size:11px}.payment-charge-balance strong{color:var(--kh-blue);font-size:13px}.payment-state{display:inline-flex;width:-moz-fit-content;width:fit-content;min-height:23px;align-items:center;justify-content:center;padding:0 8px;border-radius:999px;font-size:9px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.payment-state-open{background:var(--kh-blue-soft);color:var(--kh-blue)}.payment-state-overdue{background:var(--kh-orange-soft);color:#c44821}.payment-state-due_today{background:var(--kh-yellow-soft);color:#9a6d00}.payment-state-paid{background:var(--kh-teal-soft);color:#117a76}.payment-charge-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px}.payment-collect-button{min-height:34px;padding-inline:12px;font-size:11px}.payments-list-panel .icon-button{display:grid;width:34px;height:34px;place-items:center;border:1px solid #dce2eb;border-radius:10px;background:#fff;color:var(--kh-muted)}.payments-list-panel .icon-button:hover{border-color:#a9c3f5;background:var(--kh-blue-soft);color:var(--kh-blue)}.payment-history{grid-column:1/-1;margin-top:-4px}.payment-history summary{display:inline-flex;align-items:center;gap:6px;color:var(--kh-muted);cursor:pointer;font-size:10px;font-weight:800}.payment-history summary span{display:grid;min-width:17px;height:17px;place-items:center;border-radius:6px;background:#edf0f5;color:var(--kh-navy);font-size:9px}.payment-history>div{display:grid;grid-gap:5px;gap:5px;margin-top:9px;padding:9px 11px;border:1px solid #e7ebf1;border-radius:11px;background:#f8fafc}.payment-history-row{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:10px;gap:10px;padding:4px 0}.payment-history-row span,.payment-history-row strong{display:block}.payment-history-row strong{color:var(--kh-navy);font-size:11px}.payment-history-row span{margin-top:2px;color:var(--kh-muted);font-size:9px}.payment-history-actions{display:flex;align-items:center;gap:8px}.payment-history-actions a,.payment-history-actions button,.payment-refund-row a{display:inline-flex;align-items:center;gap:4px;border:0;background:transparent;color:var(--kh-blue);font-size:10px;font-weight:800}.payment-refund-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:6px;border-top:1px dashed #d9e0ea;color:#a34b31;font-size:9px}.payments-empty{display:flex;align-items:center;justify-content:center;gap:11px;min-height:180px;padding:28px;color:var(--kh-muted);text-align:left}.payments-empty svg{color:var(--kh-teal)}.payments-empty span,.payments-empty strong{display:block}.payments-empty strong{color:var(--kh-navy);font-size:14px}.payments-empty span{margin-top:3px;font-size:11px}.payments-drawer{width:min(510px,100%)}.payments-drawer-body{display:grid;grid-gap:20px;gap:20px;padding:24px}.payment-drawer-identity{display:grid;grid-gap:5px;gap:5px;padding:16px;border:1px solid #dfe5ef;border-radius:15px;background:linear-gradient(135deg,#f8fbff,#f5fbfb)}.payment-drawer-identity>strong{color:var(--kh-navy);font-size:18px;letter-spacing:-.04em}.payment-drawer-identity>span:not(.payment-state){color:var(--kh-muted);font-size:11px}.payment-drawer-identity>div{display:flex;align-items:baseline;gap:6px;margin-top:9px}.payment-drawer-identity b{color:var(--kh-blue);font-size:24px;letter-spacing:-.06em}.payment-drawer-identity small{color:var(--kh-muted);font-size:10px}.payment-action-form{gap:13px}.payment-action-form .button{width:100%}.payment-cash-callout{display:flex;align-items:flex-start;gap:9px;padding:11px;border:1px solid #bce8e5;border-radius:11px;background:var(--kh-teal-soft);color:#176d69;font-size:11px;line-height:1.4}.payment-refund-callout{border-color:#f6d7c6;background:var(--kh-orange-soft);color:#aa4a25}.course-lifecycle{display:grid;grid-gap:15px;gap:15px}.course-lifecycle>form+form{padding-top:15px;border-top:1px solid var(--kh-line)}.payment-cancel-form{padding:14px;border:1px solid #f1d2ce;border-radius:14px;background:#fff8f7}@media (max-width:1120px){.payments-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.payment-charge-row{grid-template-columns:minmax(210px,1.5fr) minmax(106px,.7fr) minmax(105px,.7fr) auto}.payment-charge-actions{grid-column:4;grid-row:1}.payment-history{grid-column:1/-1}}@media (max-width:760px){.payments-summary-grid{grid-template-columns:1fr 1fr}.payments-list-heading,.payments-toolbar{align-items:flex-start;flex-direction:column}.payments-search{width:100%}.payment-charge-row{grid-template-columns:minmax(0,1fr) auto;gap:11px;padding:15px}.payment-charge-balance,.payment-charge-due{grid-row:2}.payment-charge-balance{grid-column:2;text-align:right}.payment-charge-actions{grid-column:2;grid-row:1}.payment-state{grid-column:1;grid-row:3}.payment-history{grid-column:1/-1}.payments-list-heading,.payments-toolbar{padding-inline:15px}.payments-message{margin-inline:15px}}@media (max-width:430px){.payments-summary-grid{grid-template-columns:1fr}.payments-summary-card{min-height:93px}.payment-charge-primary span{max-width:190px}.payment-collect-button{padding-inline:9px}}.receipt-page{max-width:860px}.receipt-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.receipt-print-button{min-height:38px;padding-inline:14px;font-size:11px}.receipt-paper{overflow:hidden;border:1px solid #dce2eb;border-radius:22px;background:#fff;box-shadow:0 20px 45px rgba(16,26,43,.1)}.receipt-head{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;padding:28px;border-bottom:1px solid #e8ecf2}.receipt-school{display:flex;align-items:center;gap:12px}.receipt-school span,.receipt-school strong{display:block}.receipt-school strong{color:var(--kh-navy);font-size:18px;letter-spacing:-.04em}.receipt-school span{margin-top:2px;color:var(--kh-muted);font-size:10px}.receipt-kind{display:grid;justify-items:end;grid-gap:5px;gap:5px;text-align:right}.receipt-kind>span{display:inline-flex;align-items:center;gap:5px;min-height:25px;padding:0 9px;border-radius:999px;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.receipt-kind .is-payment{background:var(--kh-teal-soft);color:#117a76}.receipt-kind .is-refund{background:var(--kh-orange-soft);color:#b94c26}.receipt-kind strong{color:var(--kh-navy);font-size:12px}.receipt-kind small{color:var(--kh-muted);font-size:10px}.receipt-total{padding:32px 28px;background:linear-gradient(130deg,#f0fcfb,#f4f7ff)}.receipt-total small,.receipt-total span,.receipt-total strong{display:block}.receipt-total span{color:var(--kh-muted);font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.receipt-total strong{margin-top:7px;color:var(--kh-navy);font-size:clamp(37px,7vw,54px);letter-spacing:-.085em;line-height:.9}.receipt-total small{margin-top:10px;color:var(--kh-muted);font-size:11px}.receipt-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:1px;gap:1px;border-block:1px solid #e8ecf2;background:#e8ecf2}.receipt-grid section{min-width:0;padding:16px;background:#fff}.receipt-grid small,.receipt-grid span,.receipt-grid strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.receipt-grid span{color:#8792a4;font-size:8px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.receipt-grid strong{margin-top:6px;color:var(--kh-navy);font-size:12px}.receipt-grid small{margin-top:4px;color:var(--kh-muted);font-size:9px}.receipt-line-items{display:grid;grid-gap:0;gap:0;padding:18px 28px}.receipt-line-items>div{display:flex;align-items:baseline;justify-content:space-between;gap:20px;padding:10px 0;border-bottom:1px dashed #dde3ec}.receipt-line-items>div:last-child{border-bottom:0}.receipt-line-items span{flex:0 0 108px;color:var(--kh-muted);font-size:10px}.receipt-line-items strong{color:var(--kh-navy);font-size:12px;text-align:right}.receipt-foot{padding:15px 28px;border-top:1px solid #e8ecf2;color:var(--kh-muted);font-size:10px;line-height:1.5}@media (max-width:600px){.receipt-head{align-items:flex-start;flex-direction:column;padding:22px}.receipt-kind{justify-items:start;text-align:left}.receipt-total{padding:25px 22px}.receipt-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.receipt-foot,.receipt-line-items{padding-inline:22px}}@media print{body{background:#fff!important}.app-main-toolbar,.app-sidebar,.breadcrumbs,.receipt-toolbar{display:none!important}.app-content,.app-frame,.app-main,.workspace-page{display:block!important;padding:0!important;background:#fff!important}.receipt-page{max-width:none!important}.receipt-paper{border:0!important;border-radius:0!important;box-shadow:none!important}}.attendance-row.is-paused{border-color:#ead8ca;background:#fffaf6}.attendance-row.is-paused select{border-color:#ead8ca;background:#f7eee7;color:#9c714f;cursor:not-allowed}.attendance-row.is-paused .attendance-state{color:#9c714f}.directory-status-paused{background:var(--kh-yellow-soft);color:#9a6d00}.student-enrollment-paused{color:#9a6d00}.student-payment-summary a{display:inline-grid;width:24px;height:24px;margin-left:auto;place-items:center;border:1px solid #c9dcff;border-radius:8px;color:var(--kh-blue)}@media (prefers-reduced-motion:reduce){.app-frame *,.app-frame :after,.app-frame :before{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}.dashboard-attention-grid>*,.directory-table tbody tr,.teaching-course-list>*,.teaching-group-grid>*,.workspace-page>*{opacity:1;transform:none}}