@import "https://fonts.googleapis.com/css2?family=Cairo:wght@400;500;600;700&family=Inter:wght@400;500;600;700&display=swap";:root{--toastify-color-light:#fff;--toastify-color-dark:#121212;--toastify-color-info:#3498db;--toastify-color-success:#07bc0c;--toastify-color-warning:#f1c40f;--toastify-color-error:#e74d3c;--toastify-color-transparent:#ffffffb3;--toastify-icon-color-info:var(--toastify-color-info);--toastify-icon-color-success:var(--toastify-color-success);--toastify-icon-color-warning:var(--toastify-color-warning);--toastify-icon-color-error:var(--toastify-color-error);--toastify-container-width:fit-content;--toastify-toast-width:320px;--toastify-toast-offset:16px;--toastify-toast-top:max(var(--toastify-toast-offset), env(safe-area-inset-top));--toastify-toast-right:max(var(--toastify-toast-offset), env(safe-area-inset-right));--toastify-toast-left:max(var(--toastify-toast-offset), env(safe-area-inset-left));--toastify-toast-bottom:max(var(--toastify-toast-offset), env(safe-area-inset-bottom));--toastify-toast-background:#fff;--toastify-toast-padding:14px;--toastify-toast-min-height:64px;--toastify-toast-max-height:800px;--toastify-toast-bd-radius:6px;--toastify-toast-shadow:0px 4px 12px #0000001a;--toastify-font-family:sans-serif;--toastify-z-index:9999;--toastify-text-color-light:#757575;--toastify-text-color-dark:#fff;--toastify-text-color-info:#fff;--toastify-text-color-success:#fff;--toastify-text-color-warning:#fff;--toastify-text-color-error:#fff;--toastify-spinner-color:#616161;--toastify-spinner-color-empty-area:#e0e0e0;--toastify-color-progress-light:linear-gradient(to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55);--toastify-color-progress-dark:#bb86fc;--toastify-color-progress-info:var(--toastify-color-info);--toastify-color-progress-success:var(--toastify-color-success);--toastify-color-progress-warning:var(--toastify-color-warning);--toastify-color-progress-error:var(--toastify-color-error);--toastify-color-progress-bgo:.2}.Toastify__toast-container{z-index:var(--toastify-z-index);-webkit-transform:translate3d(0, 0, var(--toastify-z-index));width:var(--toastify-container-width);box-sizing:border-box;color:#fff;flex-direction:column;display:flex;position:fixed}.Toastify__toast-container--top-left{top:var(--toastify-toast-top);left:var(--toastify-toast-left)}.Toastify__toast-container--top-center{top:var(--toastify-toast-top);align-items:center;left:50%;transform:translate(-50%)}.Toastify__toast-container--top-right{top:var(--toastify-toast-top);right:var(--toastify-toast-right);align-items:end}.Toastify__toast-container--bottom-left{bottom:var(--toastify-toast-bottom);left:var(--toastify-toast-left)}.Toastify__toast-container--bottom-center{bottom:var(--toastify-toast-bottom);align-items:center;left:50%;transform:translate(-50%)}.Toastify__toast-container--bottom-right{bottom:var(--toastify-toast-bottom);right:var(--toastify-toast-right);align-items:end}.Toastify__toast{--y:0px;touch-action:none;width:var(--toastify-toast-width);min-height:var(--toastify-toast-min-height);box-sizing:border-box;padding:var(--toastify-toast-padding);border-radius:var(--toastify-toast-bd-radius);box-shadow:var(--toastify-toast-shadow);max-height:var(--toastify-toast-max-height);font-family:var(--toastify-font-family);z-index:0;word-break:break-word;flex:auto;align-items:center;margin-bottom:1rem;display:flex;position:relative}@media only screen and (width<=480px){.Toastify__toast-container{width:100vw;left:env(safe-area-inset-left);margin:0}.Toastify__toast-container--top-left,.Toastify__toast-container--top-center,.Toastify__toast-container--top-right{top:env(safe-area-inset-top);transform:translate(0)}.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-right{bottom:env(safe-area-inset-bottom);transform:translate(0)}.Toastify__toast-container--rtl{right:env(safe-area-inset-right);left:initial}.Toastify__toast{--toastify-toast-width:100%;border-radius:0;margin-bottom:0}}.Toastify__toast-container[data-stacked=true]{width:var(--toastify-toast-width)}@media only screen and (width<=480px){.Toastify__toast-container[data-stacked=true]{width:100vw}}.Toastify__toast--stacked{width:100%;transform:translate3d(0, var(--y), 0) scale(var(--s));transition:transform .3s;position:absolute}.Toastify__toast--stacked[data-collapsed] .Toastify__toast-body,.Toastify__toast--stacked[data-collapsed] .Toastify__close-button{transition:opacity .1s}.Toastify__toast--stacked[data-collapsed=false]{overflow:visible}.Toastify__toast--stacked[data-collapsed=true]:not(:last-child)>*{opacity:0}.Toastify__toast--stacked:after{content:"";height:calc(var(--g) * 1px);position:absolute;bottom:100%;left:0;right:0}.Toastify__toast--stacked[data-pos=top]{top:0}.Toastify__toast--stacked[data-pos=bot]{bottom:0}.Toastify__toast--stacked[data-pos=bot].Toastify__toast--stacked:before{transform-origin:top}.Toastify__toast--stacked[data-pos=top].Toastify__toast--stacked:before{transform-origin:bottom}.Toastify__toast--stacked:before{content:"";z-index:-1;height:100%;position:absolute;bottom:0;left:0;right:0;transform:scaleY(3)}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-icon{flex-shrink:0;width:22px;margin-inline-end:10px;display:flex}.Toastify--animate{animation-duration:.5s;animation-fill-mode:both}.Toastify--animate-icon{animation-duration:.3s;animation-fill-mode:both}.Toastify__toast-theme--dark{background:var(--toastify-color-dark);color:var(--toastify-text-color-dark)}.Toastify__toast-theme--light,.Toastify__toast-theme--colored.Toastify__toast--default{background:var(--toastify-color-light);color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{color:var(--toastify-text-color-info);background:var(--toastify-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{color:var(--toastify-text-color-success);background:var(--toastify-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{color:var(--toastify-text-color-warning);background:var(--toastify-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{color:var(--toastify-text-color-error);background:var(--toastify-color-error)}.Toastify__progress-bar-theme--light{background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error{background:var(--toastify-color-transparent)}.Toastify__close-button{color:#fff;cursor:pointer;opacity:.7;z-index:1;background:0 0;border:none;outline:none;padding:0;transition:all .3s;position:absolute;top:6px;right:6px}.Toastify__toast--rtl .Toastify__close-button{left:6px;right:unset}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;width:14px;height:16px}.Toastify__close-button:hover,.Toastify__close-button:focus{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{z-index:1;opacity:.7;transform-origin:0;width:100%;height:100%;position:absolute;bottom:0;left:0}.Toastify__progress-bar--animated{animation:linear forwards Toastify__trackProgress}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{right:0;left:initial;transform-origin:100%;border-bottom-left-radius:initial}.Toastify__progress-bar--wrp{border-bottom-left-radius:var(--toastify-toast-bd-radius);border-bottom-right-radius:var(--toastify-toast-bd-radius);width:100%;height:5px;position:absolute;bottom:0;left:0;overflow:hidden}.Toastify__progress-bar--wrp[data-hidden=true]{opacity:0}.Toastify__progress-bar--bg{opacity:var(--toastify-color-progress-bgo);width:100%;height:100%}.Toastify__spinner{box-sizing:border-box;border:2px solid;border-color:var(--toastify-spinner-color-empty-area);border-right-color:var(--toastify-spinner-color);border-radius:100%;width:20px;height:20px;animation:.65s linear infinite Toastify__spin}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate(3000px)}60%{opacity:1;transform:translate(-25px)}75%{transform:translate(10px)}90%{transform:translate(-5px)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px, var(--y), 0)}to{opacity:0;transform:translate3d(2000px, var(--y), 0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate(-3000px)}60%{opacity:1;transform:translate(25px)}75%{transform:translate(-10px)}90%{transform:translate(5px)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px, var(--y), 0)}to{opacity:0;transform:translate3d(-2000px, var(--y), 0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translateY(3000px)}60%{opacity:1;transform:translateY(-20px)}75%{transform:translateY(10px)}90%{transform:translateY(-5px)}to{transform:translate(0,0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0, calc(var(--y) - 10px), 0)}40%,45%{opacity:1;transform:translate3d(0, calc(var(--y) + 20px), 0)}to{opacity:0;transform:translateY(-2000px)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translateY(-3000px)}60%{opacity:1;transform:translateY(25px)}75%{transform:translateY(-10px)}90%{transform:translateY(5px)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0, calc(var(--y) - 10px), 0)}40%,45%{opacity:1;transform:translate3d(0, calc(var(--y) + 20px), 0)}to{opacity:0;transform:translateY(2000px)}}.Toastify__bounce-enter--top-left,.Toastify__bounce-enter--bottom-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--top-right,.Toastify__bounce-enter--bottom-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--top-left,.Toastify__bounce-exit--bottom-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--top-right,.Toastify__bounce-exit--bottom-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:translate3d(0, var(--y), 0) scale3d(.3, .3, .3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{opacity:0;animation-timing-function:ease-in;transform:perspective(400px)rotateX(90deg)}40%{animation-timing-function:ease-in;transform:perspective(400px)rotateX(-20deg)}60%{opacity:1;transform:perspective(400px)rotateX(10deg)}80%{transform:perspective(400px)rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:translate3d(0, var(--y), 0) perspective(400px)}30%{transform:translate3d(0, var(--y), 0) perspective(400px) rotate3d(1, 0, 0, -20deg);opacity:1}to{transform:translate3d(0, var(--y), 0) perspective(400px) rotate3d(1, 0, 0, 90deg);opacity:0}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{visibility:visible;transform:translate(110%)}to{transform:translate3d(0, var(--y), 0)}}@keyframes Toastify__slideInLeft{0%{visibility:visible;transform:translate(-110%)}to{transform:translate3d(0, var(--y), 0)}}@keyframes Toastify__slideInUp{0%{visibility:visible;transform:translateY(110%)}to{transform:translate3d(0, var(--y), 0)}}@keyframes Toastify__slideInDown{0%{visibility:visible;transform:translateY(-110%)}to{transform:translate3d(0, var(--y), 0)}}@keyframes Toastify__slideOutRight{0%{transform:translate3d(0, var(--y), 0)}to{visibility:hidden;transform:translate3d(110%, var(--y), 0)}}@keyframes Toastify__slideOutLeft{0%{transform:translate3d(0, var(--y), 0)}to{visibility:hidden;transform:translate3d(-110%, var(--y), 0)}}@keyframes Toastify__slideOutDown{0%{transform:translate3d(0, var(--y), 0)}to{visibility:hidden;transform:translateY(500px)}}@keyframes Toastify__slideOutUp{0%{transform:translate3d(0, var(--y), 0)}to{visibility:hidden;transform:translateY(-500px)}}.Toastify__slide-enter--top-left,.Toastify__slide-enter--bottom-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--top-right,.Toastify__slide-enter--bottom-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--top-left,.Toastify__slide-exit--bottom-left{animation-name:Toastify__slideOutLeft;animation-duration:.3s;animation-timing-function:ease-in}.Toastify__slide-exit--top-right,.Toastify__slide-exit--bottom-right{animation-name:Toastify__slideOutRight;animation-duration:.3s;animation-timing-function:ease-in}.Toastify__slide-exit--top-center{animation-name:Toastify__slideOutUp;animation-duration:.3s;animation-timing-function:ease-in}.Toastify__slide-exit--bottom-center{animation-name:Toastify__slideOutDown;animation-duration:.3s;animation-timing-function:ease-in}@keyframes Toastify__spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.sidebar{background-color:var(--color-sidebar);border-inline-end:1px solid var(--color-border);width:260px;min-height:100vh;color:var(--color-text);flex-direction:column;justify-content:space-between;padding:24px 18px;transition:width .3s,padding .3s;display:flex;position:sticky;top:0}html:not(.dark) .sidebar{background-color:#fff;border-inline-end:1px solid #e2e8f0}html.dark .sidebar{background-color:#020617;border-inline-end:1px solid #1e293b}.sidebar-collapsed{width:86px}.sidebar-top{flex-direction:column;display:flex}.sidebar-logo{justify-content:space-between;align-items:center;gap:16px;margin-bottom:36px;display:flex}.sidebar-brand{flex-direction:column;gap:2px;display:flex}.sidebar-brand h2{color:var(--color-text);white-space:nowrap;font-size:1.4rem;font-weight:700}.sidebar-brand span{color:var(--color-text-secondary);white-space:nowrap;font-size:12px}.sidebar-toggle{width:42px;height:42px;color:var(--color-text);cursor:pointer;background-color:#2563eb14;border:none;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;font-size:20px;transition:background-color .2s,transform .2s;display:flex}.sidebar-toggle:hover{background-color:#2563eb24;transform:translateY(-1px)}.sidebar-nav{flex-direction:column;gap:10px;display:flex}.sidebar-link{width:100%;min-height:52px;color:var(--color-text-secondary);border-radius:14px;align-items:center;gap:14px;padding:0 16px;text-decoration:none;transition:background-color .2s,color .2s,transform .2s;display:flex;position:relative;overflow:hidden}.sidebar-link:hover{color:var(--color-text);background-color:#2563eb1a;transform:translate(2px)}.sidebar-link.active{background-color:var(--color-primary);color:#fff}.sidebar-link:before{content:"";inset-inline-start:0;background-color:#ffffffe6;border-radius:0 6px 6px 0;width:4px;height:0;transition:height .2s;position:absolute;top:10px}.sidebar-link.active:before{height:32px}.sidebar-icon{flex-shrink:0;justify-content:center;align-items:center;font-size:19px;display:flex}.sidebar-label{white-space:nowrap;font-size:14px;font-weight:500}.sidebar-footer{margin-top:32px}.sidebar-footer-card{border:1px solid var(--color-border);background-color:#2563eb14;border-radius:18px;padding:18px}.sidebar-footer-card h4{color:var(--color-text);margin-bottom:8px;font-size:15px;font-weight:700}.sidebar-footer-card p{color:var(--color-text-secondary);font-size:13px;line-height:1.6}.sidebar-collapsed .sidebar-logo{justify-content:center}.sidebar-collapsed .sidebar-nav{align-items:center}.sidebar-collapsed .sidebar-link{justify-content:center;width:52px;padding:0}.sidebar-collapsed .sidebar-toggle{margin:0 auto}@media (width<=1024px){.sidebar{z-index:1000;position:fixed;inset-inline-start:0}}.theme-switcher{background-color:var(--color-background);border:1px solid var(--color-border);width:42px;height:42px;color:var(--color-text);border-radius:12px;justify-content:center;align-items:center;font-size:18px;transition:all .2s;display:flex}.theme-switcher:hover{background-color:var(--color-hover)}.language-switcher{background:var(--color-background);border:1px solid var(--color-border);border-radius:14px;gap:8px;padding:4px;display:flex}.language-switcher button{border-radius:var(--radius-md);min-width:44px;height:36px;color:var(--color-text);background-color:#0000;border:1px solid #0000;font-weight:600}.language-switcher button:hover{background-color:#2563eb14}.language-switcher button.active{background-color:var(--color-primary);border-color:var(--color-primary);color:#fff}.header-user-wrapper{align-items:center;gap:16px;display:flex}.header-language-switcher{flex-shrink:0}.header-icon-button{background-color:var(--color-background);border:1px solid var(--color-border);width:42px;height:42px;color:var(--color-text);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;font-size:18px;transition:all .2s;display:flex;position:relative}.header-icon-button:hover{background:var(--color-hover)}.header-icon-button.active{background:var(--color-primary);color:#fff}.notification-badge{color:#fff;background:#ef4444;border:2px solid #fff;border-radius:999px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 6px;font-size:11px;font-weight:700;display:flex;position:absolute;top:-6px;right:-6px}.header-user{background-color:var(--color-background);border:1px solid var(--color-border);border-radius:16px;align-items:center;gap:14px;padding:8px 14px;display:flex}.header-avatar{background-color:var(--color-primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;font-size:20px;display:flex}.header-user-info{text-align:start}.header-user-info h4{color:var(--color-text);font-size:14px;font-weight:700}.header-user-info p{color:var(--color-text-secondary);text-transform:capitalize;font-size:12px}.logout-button{color:#fff;cursor:pointer;background-color:#ef4444;border:none;border-radius:10px;justify-content:center;align-items:center;width:38px;height:38px;font-size:18px;transition:all .2s;display:flex}.logout-button:hover{opacity:.9}.header-session-button{cursor:pointer;color:var(--color-text);background:0 0;border:1px solid #0000;border-radius:12px;align-items:center;gap:6px;padding:8px 12px;font-size:14px;font-weight:500;transition:all .2s;display:flex}.header-session-button:hover{background:var(--color-hover)}.header-session-button.active{background:var(--color-primary);color:#fff}.notification-dropdown-wrapper{z-index:9999;position:relative}.notification-dropdown{background:var(--color-card);border:1px solid var(--color-border);z-index:999999;border-radius:18px;width:360px;max-height:500px;animation:.2s dropdownFade;position:fixed;top:72px;right:250px;box-shadow:0 20px 50px #00000026}.notification-dropdown:before{content:"";background:var(--color-card);border-left:1px solid var(--color-border);border-top:1px solid var(--color-border);width:16px;height:16px;position:absolute;top:-8px;right:18px;transform:rotate(45deg)}.notification-dropdown-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:18px;display:flex}.notification-dropdown-header h4{color:var(--color-text);font-size:1rem;font-weight:700}.notification-dropdown-header button{color:var(--color-primary);cursor:pointer;background:0 0;border:none;font-size:.9rem;font-weight:600}.notification-dropdown-list{flex-direction:column;max-height:420px;display:flex;overflow-y:auto}.notification-dropdown-item{border-bottom:1px solid var(--color-border);cursor:pointer;padding:16px 18px;transition:all .2s}.notification-dropdown-item:hover{background:var(--color-hover)}.notification-dropdown-item.unread{background:#3b82f60f}.notification-dropdown-content h5{color:var(--color-text);margin-bottom:6px;font-size:.92rem;font-weight:700}.notification-dropdown-content p{color:var(--color-text-secondary);margin-bottom:8px;font-size:.85rem;line-height:1.5}.notification-dropdown-content span{color:var(--color-text-muted);font-size:.75rem}.notification-empty{text-align:center;color:var(--color-text-secondary);padding:30px 20px;font-size:.9rem}@keyframes dropdownFade{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media (width<=768px){.header-user-wrapper{flex-wrap:wrap;justify-content:flex-end;gap:10px}.notification-dropdown{width:320px;top:70px;right:20px}.header-user-info,.header-session-button span{display:none}.header-language-switcher{order:3}}.dashboard-layout{background-color:var(--color-background);min-height:100vh;display:flex}.dashboard-content-wrapper{flex-direction:column;flex:1;min-width:0;display:flex}.dashboard-header{z-index:100;border-bottom:1px solid var(--color-border);background-color:var(--color-card);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);justify-content:space-between;align-items:center;gap:20px;height:80px;padding:0 28px;display:flex;position:sticky;top:0}.dashboard-header-left{align-items:center;gap:16px;display:flex}.dashboard-header-title{flex-direction:column;gap:2px;display:flex}.dashboard-header-title h3{color:var(--color-text);font-size:18px;font-weight:700}.dashboard-header-title p{color:var(--color-text-secondary);font-size:13px}.dashboard-header-right{align-items:center;gap:16px;display:flex}.dashboard-content{flex:1;padding:28px;overflow-x:hidden}.dashboard-content-inner{width:100%;max-width:1600px;margin:0 auto}@media (width<=1024px){.dashboard-header{padding:0 20px}.dashboard-content{padding:20px}}@media (width<=768px){.dashboard-header{flex-wrap:wrap;height:auto;min-height:80px;padding:16px}.dashboard-header-left,.dashboard-header-right{width:100%}.dashboard-header-right{justify-content:flex-end}.dashboard-content{padding:16px}.dashboard-header-title h3{font-size:16px}}.auth-layout{background-color:#f5f7fb;justify-content:center;align-items:center;min-height:100vh;display:flex}.input-wrapper{background-color:var(--color-background);border:1px solid var(--color-border);border-radius:14px;align-items:center;width:100%;height:48px;transition:border-color .2s,box-shadow .2s;display:flex;position:relative}.input-wrapper:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px #3b82f61f}.input-wrapper-error{border-color:#ef4444}.custom-input{width:100%;height:100%;color:var(--color-text);background:0 0;border:none;outline:none;padding:0 16px;font-size:14px}.custom-input::placeholder{color:var(--color-text-secondary)}.custom-input:disabled{opacity:.7;cursor:not-allowed}.custom-input.with-icon{padding-inline-start:44px}.input-icon{color:var(--color-text-secondary);justify-content:center;align-items:center;font-size:18px;display:flex;position:absolute;inset-inline-start:16px}.password-toggle{cursor:pointer;color:var(--color-text-secondary);background:0 0;border:none;outline:none;justify-content:center;align-items:center;font-size:18px;display:flex;position:absolute;inset-inline-end:14px}.password-toggle:hover{color:var(--color-text)}.input-helper-text{color:var(--color-text-secondary);font-size:13px}.input-error-text{color:#ef4444;font-size:13px;font-weight:500}.custom-button{cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;border:none;border-radius:14px;outline:none;justify-content:center;align-items:center;gap:10px;height:46px;padding:0 20px;font-size:14px;font-weight:600;transition:transform .2s,opacity .2s,background-color .2s,border-color .2s;display:inline-flex;position:relative}.custom-button:hover:not(:disabled){transform:translateY(-1px)}.custom-button:active:not(:disabled){transform:scale(.98)}.custom-button:disabled{opacity:.65;cursor:not-allowed}.custom-button.full-width{width:100%}.custom-button.primary{background-color:var(--color-primary);color:#fff}.custom-button.primary:hover:not(:disabled){opacity:.92}.custom-button.secondary{background-color:var(--color-card);border:1px solid var(--color-border);color:var(--color-text)}.custom-button.secondary:hover:not(:disabled){background-color:#ffffff08}.custom-button.danger{color:#fff;background-color:#ef4444}.custom-button.danger:hover:not(:disabled){opacity:.92}.custom-button.success{color:#fff;background-color:#22c55e}.button-icon{justify-content:center;align-items:center;font-size:18px;display:flex}.custom-button.loading{pointer-events:none}.button-spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:999px;width:18px;height:18px;animation:.7s linear infinite button-spin}@keyframes button-spin{to{transform:rotate(360deg)}}@media (width<=768px){.custom-button{width:100%}}.login-page{background:radial-gradient(circle at top left, #3b82f614, transparent 25%), radial-gradient(circle at bottom right, #6366f114, transparent 25%), var(--color-background);justify-content:center;align-items:center;width:100%;min-height:100vh;padding:24px;display:flex}.login-card{background-color:var(--color-card);border:1px solid var(--color-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:28px;width:100%;max-width:460px;padding:40px;animation:.3s loginFade;box-shadow:0 10px 30px #00000014,0 2px 10px #0000000a}.login-topbar{justify-content:flex-end;margin-bottom:24px;display:flex}.login-header{text-align:center;margin-bottom:32px}.login-logo{background:linear-gradient(135deg, var(--color-primary), #6366f1);color:#fff;letter-spacing:1px;border-radius:22px;justify-content:center;align-items:center;width:74px;height:74px;margin:0 auto 20px;font-size:24px;font-weight:800;display:flex;box-shadow:0 10px 24px #3b82f640}.login-header h1{color:var(--color-text);margin-bottom:10px;font-size:32px;font-weight:800;line-height:1.2}.login-header p{color:var(--color-text-secondary);max-width:320px;margin:0 auto;font-size:15px;line-height:1.7}.login-form{flex-direction:column;gap:22px;display:flex}.form-group input{border:1px solid var(--color-border);background-color:var(--color-background);height:48px;color:var(--color-text);border-radius:14px;outline:none;padding:0 16px;transition:border-color .2s,box-shadow .2s}.form-group input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #3b82f61f}.login-button{background:linear-gradient(135deg, var(--color-primary), #6366f1);color:#fff;cursor:pointer;border:none;border-radius:16px;height:50px;font-size:15px;font-weight:700;transition:transform .2s,opacity .2s,box-shadow .2s;box-shadow:0 10px 20px #3b82f633}.login-button:hover{opacity:.95;transform:translateY(-1px)}@keyframes loginFade{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=768px){.login-page{padding:16px}.login-card{border-radius:24px;padding:28px 22px}.login-header h1{font-size:26px}.login-logo{width:64px;height:64px;font-size:20px}}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:28px;display:flex}.page-header-content{flex-direction:column;gap:6px;display:flex}.page-header-content h1{color:var(--color-text);font-size:30px;font-weight:700;line-height:1.2}.page-header-content p{color:var(--color-text-secondary);max-width:700px;font-size:15px;line-height:1.6}.page-header-actions{flex-wrap:wrap;align-items:center;gap:14px;display:flex}@media (width<=768px){.page-header{flex-direction:column;align-items:stretch}.page-header-actions,.page-header-actions .custom-button{width:100%}.page-header-content h1{font-size:24px}}.custom-card{background-color:var(--color-card);border:1px solid var(--color-border);border-radius:20px;transition:transform .2s,border-color .2s,background-color .2s;overflow:visible}.custom-card.with-padding{padding:24px}.custom-card.hoverable:hover{border-color:#ffffff14;transform:translateY(-2px)}.card-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;display:flex}.card-header-content{flex-direction:column;gap:6px;display:flex}.card-title{color:var(--color-text);font-size:20px;font-weight:700;line-height:1.2}.card-subtitle{color:var(--color-text-secondary);font-size:14px;line-height:1.6}.card-action{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.card-body{width:100%}.card-footer{border-top:1px solid var(--color-border);margin-top:24px;padding-top:20px}@media (width<=768px){.custom-card.with-padding{padding:18px}.card-header{flex-direction:column;align-items:stretch}}.timeline-item{gap:16px;padding:18px 0;display:flex;position:relative}.timeline-item:not(:last-child):after{content:"";background:var(--color-border);width:2px;height:calc(100% - 20px);position:absolute;top:58px;left:20px}.timeline-icon{color:#fff;z-index:2;border-radius:50%;justify-content:center;align-items:center;width:42px;min-width:42px;height:42px;font-size:18px;display:flex}.timeline-icon.payment{background:#22c55e}.timeline-icon.enrollment{background:#3b82f6}.timeline-icon.attendance{background:#f59e0b}.timeline-icon.session{background:#8b5cf6}.timeline-content{background:var(--color-card);border:1px solid var(--color-border);border-radius:16px;flex:1;padding:16px}.timeline-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.timeline-header h4{color:var(--color-text);font-size:.95rem;font-weight:700}.timeline-header span{color:var(--color-text-light);font-size:.8rem}.timeline-content p{color:var(--color-text);font-size:.9rem;line-height:1.6}.timeline-user{color:var(--color-text-light);margin-top:12px;font-size:.82rem;font-weight:600}@media (width<=768px){.timeline-header{flex-direction:column;align-items:flex-start}}.recent-activities-header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;display:flex}.recent-activities-header h3{color:var(--color-text);margin-bottom:6px;font-size:1.1rem;font-weight:700}.recent-activities-header p{color:var(--color-text-light);font-size:.9rem}.recent-activities-list{flex-direction:column;display:flex}.recent-activities-empty{text-align:center;color:var(--color-text-light);padding:40px 20px}@media (width<=768px){.recent-activities-header{flex-direction:column;align-items:flex-start}}.dashboard-page{flex-direction:column;gap:32px;display:flex}.dashboard-stats-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;display:grid}.dashboard-stat-card{flex-direction:column;gap:24px;display:flex}.dashboard-stat-top{justify-content:space-between;align-items:center;gap:16px;display:flex}.dashboard-stat-icon{background-color:var(--color-primary);color:#fff;border-radius:18px;justify-content:center;align-items:center;width:62px;height:62px;font-size:26px;display:flex}.dashboard-stat-growth{color:#22c55e;background-color:#22c55e1f;border-radius:999px;align-items:center;gap:6px;padding:8px 12px;font-size:13px;font-weight:700;display:flex}.dashboard-stat-info h3{color:var(--color-text);margin-bottom:6px;font-size:30px;font-weight:700}.dashboard-stat-info p{color:var(--color-text-secondary);font-size:14px}.dashboard-bottom-grid{grid-template-columns:2fr 1fr;gap:20px;display:grid}.dashboard-activity-list{flex-direction:column;gap:20px;display:flex}.dashboard-activity-item{align-items:flex-start;gap:14px;display:flex}.dashboard-activity-dot{background-color:var(--color-primary);border-radius:999px;flex-shrink:0;width:12px;height:12px;margin-top:6px}.dashboard-activity-content{flex-direction:column;gap:6px;display:flex}.dashboard-activity-content h4{color:var(--color-text);font-size:15px;font-weight:600}.dashboard-activity-content p{color:var(--color-text-secondary);align-items:center;gap:8px;font-size:13px;display:flex}.overview-item{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:16px;padding-bottom:16px;display:flex}@media (width<=1024px){.dashboard-bottom-grid{grid-template-columns:1fr}}@media (width<=768px){.dashboard-page{gap:24px}.dashboard-stat-info h3{font-size:24px}}.dashboard-bottom-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px;margin-bottom:24px;display:grid}.dashboard-overview-list{flex-direction:column;gap:16px;display:flex}.overview-item{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding-bottom:14px;display:flex}.overview-item:last-child{border-bottom:none;padding-bottom:0}.overview-item span{color:var(--color-text-light);font-size:.95rem}.overview-item strong{color:var(--color-text);font-size:1rem;font-weight:700}.dashboard-stat-growth.positive{color:#22c55e}.dashboard-stat-growth.negative{color:#ef4444}.dashboard-deltas-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;display:grid}.dashboard-delta-card{padding:18px 20px}.dashboard-delta-card h4{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary);margin:0 0 6px;font-size:12px}.dashboard-delta-card p{margin:0 0 4px;font-size:22px;font-weight:700}.dashboard-delta-sub{color:var(--color-text-secondary);font-size:12px}.dashboard-charts-grid{grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:16px;display:grid}.dashboard-chart-title{margin:0 0 14px;font-size:15px}.dashboard-chart-wrapper{width:100%;height:260px}.dashboard-empty{text-align:center;color:var(--color-text-secondary);padding:40px}.dashboard-top-grid{grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:16px;display:grid}.dashboard-top-table{border-collapse:collapse;width:100%;font-size:14px}.dashboard-top-table th,.dashboard-top-table td{text-align:left;border-bottom:1px solid var(--border-color);padding:10px 12px}.dashboard-top-table th{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary);font-size:12px;font-weight:600}.dashboard-empty-row{text-align:center;color:var(--color-text-secondary);padding:24px!important}.table-wrapper{background-color:var(--color-card);border:1px solid var(--color-border);border-radius:20px;width:100%;overflow:hidden}.table-scroll{width:100%;overflow-x:auto}.custom-table{border-collapse:collapse;width:100%;min-width:800px}.custom-table thead{background-color:#ffffff08}.custom-table th{text-align:start;letter-spacing:.3px;text-transform:uppercase;color:var(--color-text);white-space:nowrap;padding:18px 20px;font-size:13px;font-weight:700}.custom-table td{border-top:1px solid var(--color-border);color:var(--color-text-secondary);white-space:nowrap;vertical-align:middle;padding:18px 20px;font-size:14px}.custom-table tbody tr{transition:background-color .2s,transform .2s}.custom-table tbody tr:hover{background-color:#ffffff08}.table-loading{text-align:center;color:var(--color-primary);font-weight:600;padding:40px!important}.table-skeleton{background:linear-gradient(90deg,#ffffff0a,#ffffff1a,#ffffff0a) 0 0/200% 100%;border-radius:999px;width:100%;height:16px;animation:1.2s linear infinite skeletonLoading}@keyframes skeletonLoading{0%{background-position:200% 0}to{background-position:-200% 0}}.table-empty{padding:70px 20px!important}.table-empty-content{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex}.table-empty-icon{width:70px;height:70px;color:var(--color-primary);background-color:#3b82f614;border-radius:20px;justify-content:center;align-items:center;font-size:30px;display:flex}.table-empty-content h3{color:var(--color-text);font-size:20px;font-weight:700}.table-empty-content p{color:var(--color-text-secondary);max-width:300px;font-size:14px;line-height:1.6}.table-footer{border-top:1px solid var(--color-border);color:var(--color-text-secondary);background-color:#ffffff05;justify-content:space-between;align-items:center;padding:18px 20px;font-size:14px;display:flex}@media (width<=768px){.custom-table th,.custom-table td,.table-footer{padding:16px}.table-empty{padding:50px 20px!important}}.search-input-wrapper{width:320px;max-width:100%;position:relative}.search-input-icon{top:50%;color:var(--color-text-secondary);pointer-events:none;font-size:18px;position:absolute;inset-inline-start:16px;transform:translateY(-50%)}.search-input{background-color:var(--color-card);border:1px solid var(--color-border);width:100%;height:48px;color:var(--color-text);border-radius:14px;padding-inline:48px;font-size:14px;transition:border-color .2s,box-shadow .2s,background-color .2s}.search-input::placeholder{color:var(--color-text-secondary)}.search-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #3b82f61f}.search-input:disabled{opacity:.7;cursor:not-allowed}.search-clear-button{top:50%;width:28px;height:28px;color:var(--color-text-secondary);cursor:pointer;background-color:#ffffff0f;border:none;border-radius:999px;justify-content:center;align-items:center;transition:background-color .2s,color .2s;display:flex;position:absolute;inset-inline-end:12px;transform:translateY(-50%)}.search-clear-button:hover{color:var(--color-text);background-color:#ffffff1f}@media (width<=768px){.search-input-wrapper{width:100%}}.table-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.table-action-button{cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;width:38px;height:38px;font-size:16px;transition:transform .2s,background-color .2s,color .2s,opacity .2s;display:flex}.table-action-button:hover{transform:translateY(-2px)}.table-action-button:active{transform:scale(.96)}.table-action-button.view{color:#3b82f6;background-color:#3b82f61f}.table-action-button.view:hover{background-color:#3b82f633}.table-action-button.edit{color:#eab308;background-color:#eab3081f}.table-action-button.edit:hover{background-color:#eab30833}.table-action-button.delete{color:#ef4444;background-color:#ef44441f}.table-action-button.delete:hover{background-color:#ef444433}@media (width<=768px){.table-actions{justify-content:center}}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;background-color:#0000008c;justify-content:center;align-items:center;padding:20px;animation:.2s overlayFade;display:flex;position:fixed;inset:0}.modal-container{background-color:var(--color-card);border:1px solid var(--color-border);z-index:10000;border-radius:24px;flex-direction:column;width:100%;max-height:calc(100vh - 40px);animation:.25s modalFade;display:flex;position:relative;overflow:visible}.modal-container.sm{max-width:420px}.modal-container.md{max-width:600px}.modal-container.lg{max-width:900px}.modal-container.xl{max-width:1200px}.modal-header{border-bottom:1px solid var(--color-border);flex-shrink:0;justify-content:space-between;align-items:center;gap:20px;min-height:72px;padding:0 24px;display:flex}.modal-header h2{color:var(--color-text);font-size:22px;font-weight:700}.modal-close-button{width:40px;height:40px;color:var(--color-text);cursor:pointer;background-color:#ffffff0f;border:none;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;font-size:20px;transition:background-color .2s,transform .2s;display:flex}.modal-close-button:hover{background-color:#ffffff1a;transform:rotate(90deg)}.modal-content{z-index:10001;padding:24px;position:relative;overflow:visible auto}select{z-index:1;color:#fff;appearance:none;background:#0f172a;border:1px solid #ffffff14;border-radius:10px;outline:none;height:44px;padding:0 12px;position:relative}option{color:#fff;background:#0f172a}@keyframes modalFade{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes overlayFade{0%{opacity:0}to{opacity:1}}@media (width<=768px){.modal-overlay{padding:12px}.modal-container{border-radius:20px;max-height:calc(100vh - 24px)}.modal-header{padding:0 18px}.modal-header h2{font-size:18px}.modal-content{padding:18px}}.students-page{flex-direction:column;gap:24px;display:flex}.students-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;display:flex}.students-search-group{flex:1;align-items:center;gap:12px;min-width:300px;display:flex}.students-filter-select{border:1px solid var(--color-border);min-width:164px;min-height:48px;color:var(--color-text);cursor:pointer;background:linear-gradient(#fff,#f8fbff);border-radius:14px;padding:0 14px;font-size:14px;font-weight:600;transition:border-color .2s,box-shadow .2s,transform .2s}.students-filter-select:hover{border-color:#2563eb59;transform:translateY(-1px)}.students-filter-select:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 4px #2563eb1f}.students-count{color:var(--color-text-secondary);white-space:nowrap;font-size:14px;font-weight:600}.students-page .student-form{flex-direction:column;gap:24px;padding:12px 4px 4px;display:flex}.students-page .student-form-grid{background:radial-gradient(circle at 100% 0,#2563eb14,#0000 28%),linear-gradient(#fff,#f8fbff 52%,#f8fafc);border:1px solid #94a3b82e;border-radius:24px;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:28px;display:grid;box-shadow:0 20px 48px #0f172a0f}.students-page .form-section-title{letter-spacing:.14em;text-transform:uppercase;color:var(--color-primary);border-bottom:1px solid #94a3b82e;grid-column:1/-1;margin:12px 0 0;padding:0 0 14px;font-size:13px;font-weight:800}.students-page .form-section-title:first-child{margin-top:0}.students-page .input-group{gap:8px}.students-page .input-label{color:var(--color-text);font-size:13px;font-weight:700}.students-page .input-field{border:1px solid var(--color-border);background:var(--color-card);min-height:48px;color:var(--color-text);border-radius:14px;padding:0 14px;transition:border-color .2s,box-shadow .2s,transform .2s}.students-page .input-field:hover{border-color:#2563eb52}.students-page .input-field:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 4px #2563eb1f}.students-page .input-error{color:var(--color-danger);margin:0;font-size:13px}.students-page .student-form-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:14px;padding-top:4px;display:flex}.status-badge.inactive,.status-badge.suspended,.status-badge.withdrawn{color:#dc2626;background-color:#ef44441f}.status-badge.graduated{color:#2563eb;background-color:#2563eb1f}.dark .students-filter-select,.dark .students-page .student-form-grid,.dark .students-page .input-field{background:radial-gradient(circle at 100% 0,#60a5fa14,#0000 28%),linear-gradient(#0f172afa,#0f172af5)}@media (width<=768px){.students-page .student-form-grid{border-radius:20px;grid-template-columns:1fr;padding:18px}.students-toolbar{flex-direction:column;align-items:stretch}.students-search-group{flex-direction:column;min-width:auto}.students-filter-select{min-width:100%}.students-page .student-form-actions{justify-content:stretch}.students-page .student-form-actions button{flex:1}}.student-enrollment-history{flex-direction:column;gap:24px;display:flex}.student-enrollment-history-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.student-enrollment-history-header h3{font-size:1.2rem;font-weight:700}.student-enrollment-history-header p{color:var(--color-text-secondary)}.enrollment-history-list{flex-direction:column;gap:18px;display:flex}.enrollment-history-card{border:1px solid var(--color-border);background:var(--color-card);border-radius:18px;padding:20px}.enrollment-history-top{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:18px;display:flex}.enrollment-history-top h4{margin-bottom:6px;font-size:1rem;font-weight:700}.enrollment-history-top p{color:var(--color-text-secondary);font-size:.92rem}.enrollment-history-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;display:grid}.history-item{background:#ffffff08;border-radius:12px;align-items:center;gap:10px;padding:12px;font-size:.92rem;display:flex}.discount-history-box{color:var(--color-primary);background:#3b82f614;border-radius:12px;margin-top:18px;padding:14px 16px}.discount-history-header{justify-content:space-between;align-items:center;gap:12px;font-size:.92rem;font-weight:700;display:flex}.discount-history-tags{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.discount-type-chip{border:1px solid #0000;border-radius:999px;align-items:center;padding:8px 12px;font-size:.85rem;font-weight:700;display:inline-flex}.discount-type-chip.sibling{color:#22c55e;background:#22c55e24;border-color:#22c55e40}.discount-type-chip.admin{color:#f59e0b;background:#f59e0b24;border-color:#f59e0b40}.discount-type-chip.custom,.discount-type-chip.coupon,.discount-type-chip.government,.discount-type-chip.seasonal,.discount-type-chip.early-registration{color:var(--color-primary);background:#3b82f624;border-color:#3b82f640}.discount-history-reason{color:var(--color-text-secondary);margin:12px 0 0;font-size:.9rem;line-height:1.6}.empty-enrollment-history{color:var(--color-text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:40px 20px;display:flex}.empty-enrollment-history svg{font-size:2rem}.student-enrollment-history-loading{padding:20px}.student-payments-section{margin-top:24px}.student-payments-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.student-payments-header h3{color:var(--color-text-primary);margin:0;font-size:1.3rem;font-weight:700}.student-payments-header p{color:var(--color-text-secondary);margin-top:4px;font-size:.95rem}.payment-stats-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-bottom:24px;display:grid}.payment-stat-card{flex-direction:column;gap:10px;display:flex}.payment-stat-card h4{color:var(--color-text-secondary);margin:0;font-size:.95rem;font-weight:600}.payment-stat-card p{color:var(--color-primary);margin:0;font-size:1.8rem;font-weight:700}.payment-form{flex-direction:column;gap:20px;display:flex}.payment-form-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;margin-top:10px;display:flex}.payment-delete-btn{cursor:pointer;color:#dc2626;background:#ff000014;border:none;border-radius:10px;justify-content:center;align-items:center;width:38px;height:38px;transition:all .2s;display:flex}.payment-refund-btn{cursor:pointer;color:#f97316;background:#f973161f;border:none;border-radius:10px;justify-content:center;align-items:center;width:38px;height:38px;transition:all .2s;display:flex}.payment-refund-btn:hover{background:#f973162e;transform:translateY(-1px)}.payment-delete-btn:hover{background:#ff000026;transform:translateY(-1px)}@media (width<=768px){.student-payments-header{flex-direction:column;align-items:stretch}.payment-search-wrapper{flex-wrap:wrap;overflow-x:visible}.payment-filter-item,.payment-filter-search,.payment-filter-date{flex:100%;min-width:100%}.payment-form-actions{flex-direction:column}.payment-form-actions button{width:100%}}.payment-empty-state{color:#b78103;background:#ffc1071a;border-radius:10px;margin-bottom:16px;padding:14px;font-weight:600}.payment-search-wrapper{z-index:1;flex-wrap:nowrap;align-items:center;gap:12px;margin-bottom:16px;display:flex;position:relative;overflow-x:auto}.payment-filter-item{flex:0 0 180px;min-width:180px}.payment-filter-search{flex-basis:260px;min-width:260px}.payment-filter-date{flex-basis:170px;min-width:170px}.payment-filter-item .input-group,.payment-filter-item input,.payment-search-wrapper .wizard-select{z-index:1;width:100%;position:relative}.payment-search-wrapper .wizard-select{appearance:none}.payment-type-badge.installment{color:#2563eb;text-transform:capitalize;background:#3b82f61f}.payment-type-badge.full_payment{color:#16a34a;text-transform:capitalize;background:#22c55e1f}.payment-status-badge{text-transform:capitalize;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:700}.payment-status-badge.pending{color:#2563eb;background:#3b82f61f}.payment-status-badge.confirmed,.payment-status-badge.cleared{color:#16a34a;background:#22c55e1f}.payment-status-badge.refunded,.payment-status-badge.partial-refund{color:#dc2626;background:#ef44441f}.payment-status-badge.cancelled{color:#6b7280;background:#6b728029}.payment-method-badge{text-transform:capitalize;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:600}.payment-method-badge.cash{color:#16a34a;background:#22c55e1f}.payment-method-badge.card{color:#2563eb;background:#3b82f61f}.payment-method-badge.bank_transfer{color:#9333ea;background:#a855f71f}.payment-method-badge.online{color:#ea580c;background:#f973161f}.payment-details-modal{flex-direction:column;gap:24px;display:flex}.payment-details-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;display:grid}.payment-details-grid strong{margin-bottom:6px;display:block}.payment-details-grid p{margin:0}.payment-details-notes{border-top:1px solid var(--color-border);padding-top:16px}@media print{body *{visibility:hidden}.payment-details-modal,.payment-details-modal *{visibility:visible}.payment-details-modal{background:#fff;width:100%;padding:24px;position:absolute;top:0;left:0}.payment-form-actions{display:none}}.payment-progress-bar{background:#00000014;border-radius:999px;width:100%;height:10px;margin-top:10px;overflow:hidden}.payment-progress-fill{background:linear-gradient(90deg,#22c55e,#16a34a);border-radius:999px;height:100%;transition:width .3s}.payment-helper-text{color:#2563eb;background:#3b82f614;border-radius:10px;margin-top:10px;padding:10px 12px;font-size:13px;font-weight:500}.payment-helper-text.success{color:#16a34a;background:#22c55e14}.invoice-viewer{flex-direction:column;gap:24px;display:flex}.invoice-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding-bottom:16px;display:flex}.invoice-header h2{margin:0}.invoice-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;display:grid}.invoice-grid strong{margin-bottom:6px;display:block}.invoice-grid p{margin:0}.invoice-notes{border-top:1px solid var(--color-border);padding-top:16px}.installment-summary-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-bottom:20px;display:grid}.installment-table{border-collapse:collapse;width:100%}.installment-table th{font-weight:700}.installment-status-badge.paid{color:#22c55e;background:#22c55e26}.installment-status-badge.partial{color:#f97316;background:#f9731626}.installment-status-badge.due-soon{color:#f59e0b;background:#f59e0b26}.installment-status-badge.pending{color:#3b82f6;background:#3b82f626}.installment-status-badge.overdue{color:#ef4444;background:#ef444426}.next-due-date{opacity:.7;margin-top:8px;font-size:.9rem;display:block}.payment-actions{align-items:center;gap:10px;display:flex}.payment-edit-btn{color:#3b82f6;cursor:pointer;background:#3b82f626;border:none;border-radius:10px;padding:8px 14px;font-size:.85rem;font-weight:600}.payment-edit-btn:hover{opacity:.85}.student-attendance-history{flex-direction:column;gap:18px;display:flex}.student-attendance-header h3{margin:0 0 6px;font-size:1.35rem}.student-attendance-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.student-attendance-header p{color:var(--color-text-secondary);margin:0}.student-attendance-stats{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;display:grid}.student-attendance-stat{align-items:center;gap:14px;display:flex}.student-attendance-stat svg{color:var(--color-primary);font-size:1.8rem}.student-attendance-stat h4{margin:0;font-size:1.7rem;font-weight:700}.student-attendance-stat p{color:var(--color-text-secondary);margin:4px 0 0}.student-attendance-filters{flex-wrap:wrap;align-items:end;gap:16px;margin-bottom:20px;display:flex}.student-attendance-search{flex:1.3;min-width:260px}.student-attendance-search.search-input-wrapper{width:100%}.student-attendance-filter-field{flex-direction:column;flex:1;gap:8px;min-width:160px;display:flex}.student-attendance-filter-field label{color:var(--color-text-primary);font-size:.9rem;font-weight:600}.student-attendance-filter-field select,.student-attendance-filter-field input{border:1px solid var(--color-border);background:var(--color-background);width:100%;height:46px;color:var(--color-text-primary);border-radius:12px;outline:none;padding:0 14px;font-size:.95rem}.student-attendance-reset{border:1px solid var(--color-border);background:var(--color-card);height:46px;color:var(--color-text-primary);cursor:pointer;border-radius:12px;padding:0 18px;font-weight:600}.student-attendance-table{overflow-x:auto}.student-attendance-table table{border-collapse:collapse;width:100%}.student-attendance-table th,.student-attendance-table td{border-bottom:1px solid var(--color-border);text-align:left;padding:14px 16px}.student-attendance-table th{background:var(--color-hover);color:var(--color-text-primary);font-size:.9rem;font-weight:700}.student-attendance-empty{text-align:center;color:var(--color-text-secondary);padding:34px 20px}.student-attendance-badge{text-transform:capitalize;border-radius:999px;justify-content:center;align-items:center;min-width:90px;padding:6px 12px;font-size:.85rem;font-weight:600;display:inline-flex}.student-attendance-badge.present{color:#16a34a;background:#22c55e1f}.student-attendance-badge.absent{color:#dc2626;background:#ef44441f}.student-attendance-badge.late{color:#d97706;background:#f59e0b1f}.student-attendance-badge.excused{color:#2563eb;background:#3b82f61f}.student-attendance-pagination{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:16px;margin-top:20px;padding-top:20px;display:flex}.student-attendance-pagination-info{color:var(--color-text-secondary);font-size:14px}.student-attendance-pagination-controls{align-items:center;gap:10px;display:flex}.student-attendance-pagination-page{min-width:120px;color:var(--color-text-primary);justify-content:center;align-items:center;padding:0 10px;display:flex}@media (width<=768px){.student-attendance-header,.student-attendance-filters,.student-attendance-pagination,.student-attendance-pagination-controls{flex-direction:column;align-items:stretch}.student-attendance-pagination-page{min-width:0;padding:0}.student-attendance-search,.student-attendance-filter-field{width:100%;min-width:0}.student-attendance-reset{width:100%}}.student-details-page{flex-direction:column;gap:24px;display:flex}.student-profile-hero{background:radial-gradient(circle at 100% 0,#2563eb24,#0000 30%),linear-gradient(135deg,#fff,#f8fbff 52%,#eef6ff);border:1px solid #94a3b82e;border-radius:28px;justify-content:space-between;align-items:stretch;gap:24px;padding:30px;display:flex;box-shadow:0 24px 60px #0f172a14}.student-profile-left{flex:1;align-items:flex-start;gap:20px;display:flex}.student-profile-copy{flex-direction:column;gap:12px;min-width:0;display:flex}.student-avatar{color:#2563eb;background:linear-gradient(135deg,#2563eb24,#3b82f638);border-radius:26px;flex-shrink:0;justify-content:center;align-items:center;width:86px;height:86px;display:flex;box-shadow:inset 0 1px #ffffffb3}.student-profile-left h1{font-size:clamp(28px,3vw,36px);font-weight:800;line-height:1.14}.student-subtitle{max-width:680px;color:var(--color-text-secondary);line-height:1.7}.student-status-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.student-status,.student-grade{border-radius:999px;justify-content:center;align-items:center;min-height:38px;padding:8px 14px;font-size:13px;font-weight:700;display:inline-flex}.student-status.active{color:#16a34a;background:#22c55e1f}.student-status.inactive,.student-status.withdrawn{color:#dc2626;background:#ef44441f}.student-status.suspended{color:#d97706;background:#f59e0b24}.student-status.graduated{color:#2563eb;background:#2563eb1f}.student-grade{color:var(--color-text);background:#ffffffc7;border:1px solid #94a3b82e}.student-hero-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:6px;display:grid}.student-hero-fact{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffb3;border:1px solid #94a3b829;border-radius:18px;flex-direction:column;gap:6px;padding:16px 18px;display:flex}.student-hero-fact strong{letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary);font-size:11px;font-weight:800}.student-hero-fact span{color:var(--color-text);word-break:break-word;font-size:15px;font-weight:700;line-height:1.45}.student-profile-actions{flex-direction:column;width:360px;display:flex}.student-actions-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff9e;border:1px solid #94a3b829;border-radius:22px;flex-direction:column;gap:18px;height:100%;padding:20px;display:flex}.student-actions-header{flex-direction:column;gap:6px;display:flex}.student-actions-header h3{color:var(--color-text);font-size:17px;font-weight:800}.student-actions-header p{color:var(--color-text-secondary);font-size:13px;line-height:1.6}.student-actions-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.student-actions-grid button,.student-actions-footer button{justify-content:center;width:100%}.student-actions-grid button{min-height:48px}.student-actions-footer{padding-top:2px}.student-stats-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.student-stat-card{flex-direction:column;gap:10px;min-height:100%;padding:4px 2px;display:flex}.student-stat-card h4{letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary);font-size:12px;font-weight:800}.student-stat-card p{color:var(--color-text);word-break:break-word;font-size:20px;font-weight:700;line-height:1.45}.student-details-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.student-details-section{flex-direction:column;gap:22px;min-height:100%;display:flex}.section-header{border-bottom:1px solid var(--color-border);flex-direction:column;gap:8px;padding-bottom:14px;display:flex}.section-header h3{font-size:19px;font-weight:700}.student-details-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.student-detail-item{background:linear-gradient(#f8fafcf5,#fffffff0);border:1px solid #94a3b829;border-radius:16px;flex-direction:column;gap:6px;padding:16px 18px;display:flex}.student-detail-item strong{letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary);font-size:12px;font-weight:800}.student-detail-item span{color:var(--color-text);word-break:break-word;font-size:15px;font-weight:600;line-height:1.55}.student-notes{color:var(--color-text);background:linear-gradient(#f8fafcf5,#fffffff0);border:1px solid #94a3b829;border-radius:18px;padding:20px 22px;line-height:1.85}.student-form-actions{border-top:1px solid var(--color-border);justify-content:flex-end;gap:12px;margin-top:16px;padding-top:16px;display:flex}.student-form-actions button{min-width:110px}.student-details-loading{justify-content:center;align-items:center;min-height:300px;font-size:18px;font-weight:600;display:flex}.dark .student-profile-hero{background:radial-gradient(circle at 100% 0,#60a5fa29,#0000 30%),linear-gradient(135deg,#0f172afa,#0f172af5,#020617fa);border-color:#94a3b81f;box-shadow:0 24px 60px #02061766}.dark .student-grade,.dark .student-hero-fact,.dark .student-actions-card,.dark .student-detail-item,.dark .student-notes{background:#0f172ad1;border-color:#94a3b81f}@media (width<=1100px){.student-profile-hero{flex-direction:column}.student-profile-actions{width:100%}.student-actions-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.student-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=860px){.student-details-grid,.student-details-list,.student-stats-grid,.student-hero-facts,.student-actions-grid{grid-template-columns:1fr}}@media (width<=768px){.student-profile-hero{border-radius:22px;padding:22px}.student-profile-left{flex-direction:column}.student-avatar{border-radius:22px;width:74px;height:74px}.student-profile-actions{flex-direction:column}.student-actions-card{padding:16px}.student-form-actions{flex-direction:column-reverse}.student-form-actions button{width:100%}}.student-edit-page{flex-direction:column;gap:24px;display:flex}.student-edit-loading{min-height:300px;color:var(--color-text-secondary);justify-content:center;align-items:center;font-size:16px;font-weight:600;display:flex}.student-edit-page .student-form{flex-direction:column;gap:28px;display:flex}.student-edit-page .student-form-grid{background:radial-gradient(circle at 100% 0,#2563eb14,#0000 28%),linear-gradient(#fff,#f8fbff 52%,#f8fafc);border:1px solid #94a3b82e;border-radius:28px;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:32px;display:grid;box-shadow:0 24px 60px #0f172a0f}.student-edit-page .form-section-title{letter-spacing:.14em;text-transform:uppercase;color:var(--color-primary);border-bottom:1px solid #94a3b82e;grid-column:1/-1;margin:14px 0 0;padding:0 0 14px;font-size:13px;font-weight:800}.student-edit-page .form-section-title:first-child{margin-top:0}.student-edit-page .input-group{flex-direction:column;gap:8px;display:flex}.student-edit-page .input-label{color:var(--color-text);font-size:13px;font-weight:700}.student-edit-page .input-field{border:1px solid var(--color-border);background:var(--color-card);min-height:48px;color:var(--color-text);border-radius:14px;padding:0 14px;transition:border-color .2s,box-shadow .2s,transform .2s}.student-edit-page .input-field:hover{border-color:#2563eb52}.student-edit-page .input-field:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 4px #2563eb1f}.student-edit-page .input-field:disabled{color:var(--color-text-secondary);cursor:not-allowed;background:#94a3b81a}.student-edit-page .input-error{color:var(--color-danger);margin:0;font-size:13px}.student-edit-page .student-form-actions{border-top:1px solid var(--color-border);justify-content:flex-end;gap:12px;margin-top:4px;padding-top:20px;display:flex}.student-edit-page .student-form-actions button{min-width:140px}.dark .student-edit-page .student-form-grid,.dark .student-edit-page .input-field{background:radial-gradient(circle at 100% 0,#60a5fa14,#0000 28%),linear-gradient(#0f172afa,#0f172af5)}@media (width<=768px){.student-edit-page .student-form-grid{border-radius:22px;grid-template-columns:1fr;padding:20px}.student-edit-page .student-form-actions{flex-direction:column-reverse}.student-edit-page .student-form-actions button{width:100%}}.users-page{flex-direction:column;gap:24px;display:flex}.users-section-block{flex-direction:column;gap:18px;display:flex}.users-section-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.users-section-header h2{color:var(--color-text);margin:0}.users-section-header p{color:var(--color-text-secondary);margin:6px 0 0}.users-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;display:flex}.users-count{color:var(--color-text-secondary);white-space:nowrap;font-size:14px;font-weight:500}.user-form{flex-direction:column;gap:20px;display:flex}.users-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.user-form-actions{border-top:1px solid #ffffff14;justify-content:flex-end;gap:12px;margin-top:12px;padding-top:16px;display:flex}.user-form-actions button{min-width:100px}.input-group{flex-direction:column;gap:6px;display:flex}.input-label{color:var(--color-text);font-size:14px;font-weight:500}.input-field{border:1px solid var(--color-border);background-color:var(--color-card);color:var(--color-text);border-radius:6px;padding:10px 12px;font-family:inherit;font-size:14px;transition:border-color .2s,box-shadow .2s}.input-field:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #4a90e21a}.role-badge{border-radius:999px;justify-content:center;align-items:center;padding:6px 12px;font-size:13px;font-weight:600;display:inline-flex}.role-badge.super-admin{color:#ef4444;background:#ef44441f}.role-badge.admin{color:#f59e0b;background:#f59e0b1f}.role-badge.staff{color:#3b82f6;background:#3b82f61f}.role-badge.teacher{color:#22c55e;background:#22c55e1f}.role-badge.finance{color:#8b5cf6;background:#8b5cf61f}.role-badge.student{color:#6b7280;background:#6b72801f}.coupon-name-cell,.coupon-window-cell{flex-direction:column;gap:4px;display:flex}.coupon-name-cell strong{color:var(--color-text)}.coupon-name-cell span,.coupon-window-cell span{color:var(--color-text-secondary);font-size:13px}.coupon-status-badge{border-radius:999px;justify-content:center;align-items:center;padding:6px 12px;font-size:13px;font-weight:600;display:inline-flex}.coupon-status-badge.active{color:#22c55e;background:#22c55e1f}.coupon-status-badge.inactive{color:#ef4444;background:#ef44441f}.delete-modal-content p{margin:0;line-height:1.6}.user-toggle-switch{width:44px;height:24px;display:inline-block;position:relative}.user-toggle-switch input{opacity:0;width:0;height:0}.user-toggle-slider{cursor:pointer;background-color:#ccc;border-radius:24px;transition:all .3s;position:absolute;inset:0}.user-toggle-slider:before{content:"";background-color:#fff;border-radius:50%;width:18px;height:18px;transition:all .3s;position:absolute;bottom:3px;left:3px}input:checked+.user-toggle-slider{background-color:#22c55e}input:checked+.user-toggle-slider:before{transform:translate(20px)}.user-toggle-switch:hover .user-toggle-slider{opacity:.8}@media (width<=768px){.users-toolbar{flex-direction:column;align-items:stretch}.users-form-grid{grid-template-columns:1fr}.user-form-actions{flex-direction:column-reverse}.user-form-actions button{width:100%}}.teacher-profile-page{flex-direction:column;gap:24px;display:flex}.teacher-profile-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;display:flex}.teacher-profile-title h1{margin:0;font-size:32px;font-weight:700}.teacher-profile-title p{opacity:.7;margin:8px 0 0;font-size:14px}.teacher-profile-loading{min-height:300px;color:var(--color-text-secondary);justify-content:center;align-items:center;font-size:18px;font-weight:600;display:flex}.teacher-profile-content{align-items:flex-start;gap:32px;padding:20px;display:flex}.teacher-profile-avatar{color:#60a5fa;background:linear-gradient(135deg,#3b82f61f,#6366f10d);border:1px solid #ffffff0f;border-radius:16px;justify-content:center;align-items:center;width:120px;min-width:120px;height:120px;display:flex}.teacher-profile-info{flex:1}.teacher-profile-badges{flex-wrap:wrap;gap:12px;margin-bottom:20px;display:flex}.teacher-profile-chip{min-height:36px;color:var(--color-text);background:#2563eb14;border:1px solid #60a5fa33;border-radius:999px;justify-content:center;align-items:center;padding:0 14px;font-size:13px;font-weight:700;display:inline-flex}.teacher-profile-info h2{margin:0 0 8px;font-size:24px;font-weight:700}.teacher-profile-role{opacity:.7;text-transform:capitalize;margin:0 0 24px;font-size:14px}.teacher-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.profile-detail{background:#ffffff0a;border:1px solid #94a3b824;border-radius:18px;align-items:flex-start;gap:12px;padding:16px;display:flex}.detail-icon{opacity:.6;flex-shrink:0;margin-top:4px}.profile-detail label{opacity:.6;text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;font-size:12px;display:block}.profile-detail p{margin:0;font-size:15px;font-weight:500}.teacher-profile-stats{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;display:grid}.stat-card{flex-direction:column;gap:12px;padding:20px;display:flex}.stat-card h4{opacity:.7;text-transform:uppercase;letter-spacing:.05em;margin:0;font-size:14px}.stat-value{margin:0;font-size:20px;font-weight:700}.teacher-profile-panels{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.teacher-profile-panel{flex-direction:column;gap:18px;padding:20px;display:flex}.teacher-profile-panel-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.teacher-profile-panel-header p{color:var(--color-text-secondary);margin:6px 0 0;line-height:1.6}.teacher-profile-panel h3{margin:0;font-size:18px;font-weight:700}.teacher-profile-list{flex-direction:column;gap:14px;display:flex}.teacher-profile-list>div{border-bottom:1px solid #94a3b81f;justify-content:space-between;align-items:center;gap:16px;padding-bottom:12px;display:flex}.teacher-profile-list>div:last-child{border-bottom:none;padding-bottom:0}.teacher-profile-list span{color:var(--color-text-secondary);font-size:13px}.teacher-profile-list strong{color:var(--color-text);text-align:end;font-size:15px}.teacher-profile-notes{color:var(--color-text-secondary);margin:0;line-height:1.75}.teacher-profile-compensation-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.teacher-profile-comp-card{background:#ffffff08;border:1px solid #94a3b824;border-radius:18px;flex-direction:column;gap:8px;padding:16px;display:flex}.teacher-profile-comp-card span,.teacher-profile-comp-row span{color:var(--color-text-secondary);font-size:13px}.teacher-profile-comp-card strong,.teacher-profile-comp-row strong{color:var(--color-text);font-size:18px;font-weight:700}.teacher-profile-comp-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.teacher-profile-comp-row{background:#ffffff08;border:1px solid #94a3b824;border-radius:18px;justify-content:space-between;align-items:center;gap:16px;padding:16px;display:flex}.teacher-profile-history{flex-direction:column;gap:14px;display:flex}.teacher-profile-history h4{margin:0;font-size:16px;font-weight:700}.teacher-profile-history-table{border:1px solid #94a3b824;border-radius:18px;flex-direction:column;display:flex;overflow:hidden}.teacher-profile-history-head,.teacher-profile-history-item{grid-template-columns:1.1fr 1.1fr 1fr 1fr .8fr;align-items:center;gap:14px;padding:14px 16px;display:grid}.teacher-profile-history-head{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;background:#2563eb14;font-size:12px;font-weight:700}.teacher-profile-history-item{border-top:1px solid #94a3b81f}.teacher-profile-history-badge{border-radius:999px;justify-content:center;align-items:center;min-height:32px;padding:0 12px;font-size:12px;font-weight:700;display:inline-flex}.teacher-profile-history-badge.accruing{color:#2563eb;background:#3b82f61f}.teacher-profile-history-badge.ready{color:#16a34a;background:#22c55e1f}.teacher-profile-history-empty{color:var(--color-text-secondary);padding:18px 16px}.status-badge{border-radius:999px;justify-content:center;align-items:center;min-width:96px;min-height:36px;padding:0 14px;font-size:13px;font-weight:700;display:inline-flex}.status-badge.on-leave{color:#d97706;background-color:#f59e0b1f}@media (width<=768px){.teacher-profile-header{flex-direction:column;align-items:stretch}.teacher-profile-header button{width:100%}.teacher-profile-content{text-align:center;flex-direction:column;align-items:center}.teacher-profile-grid,.teacher-profile-panels,.teacher-profile-compensation-cards,.teacher-profile-comp-details{grid-template-columns:1fr}.teacher-profile-avatar{width:100px;height:100px}.profile-detail{flex-direction:column;justify-content:center;align-items:center}.teacher-profile-stats{grid-template-columns:1fr}.teacher-profile-list>div{flex-direction:column;align-items:flex-start}.teacher-profile-list strong{text-align:start}.teacher-profile-history-head,.teacher-profile-history-item{grid-template-columns:1fr}}.accounting-page{flex-direction:column;gap:24px;display:flex}.accounting-summary-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;display:grid}.accounting-stat-card{flex-direction:column;gap:8px;padding:18px 20px;display:flex}.accounting-stat-card h4{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;margin:0;font-size:13px;font-weight:600}.accounting-stat-card p{color:var(--color-primary);margin:0;font-size:22px;font-weight:700}.accounting-stat-sub{color:var(--color-text-secondary);font-size:12px}.accounting-stat-icon{color:#6366f1;background-color:#6366f11f;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.accounting-stat-icon.balanced{color:#22c55e;background-color:#22c55e1f}.accounting-stat-icon.unbalanced{color:#ef4444;background-color:#ef44441f}.trial-balance-header,.journal-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;display:flex}.trial-balance-header h3,.journal-header h3{align-items:center;gap:8px;margin:0;display:flex}.journal-header p{color:var(--color-text-secondary);margin:0;font-size:13px}.balance-status{border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:600;display:inline-flex}.balance-status.balanced{color:#22c55e;background-color:#22c55e1f}.balance-status.unbalanced{color:#ef4444;background-color:#ef44441f}.accounting-filters{flex-wrap:nowrap;align-items:center;gap:12px;display:flex;overflow-x:auto}.accounting-filter-item{flex:0 0 220px;min-width:220px}.accounting-filter-date{flex-basis:170px;min-width:170px}.accounting-filter-item .accounting-select,.accounting-filter-item .input-group,.accounting-filter-item input{width:100%}.accounting-select{border:1px solid var(--border-color);background-color:var(--color-card);height:40px;color:var(--color-text);border-radius:10px;padding:0 14px;font-size:14px}.trial-balance-table-wrapper,.journal-table-wrapper{width:100%;overflow-x:auto}.accounting-table{border-collapse:collapse;width:100%;font-size:14px}.accounting-table th,.accounting-table td{text-align:left;border-bottom:1px solid var(--border-color);padding:12px 14px}.accounting-table th{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary);font-size:12px;font-weight:600}.accounting-table tfoot td{border-top:2px solid var(--border-color);border-bottom:none;padding-top:14px}.negative-balance{color:#ef4444;font-weight:600}.expenses-row{background-color:#ef444414;border-top:2px solid #ef4444;border-bottom:2px solid #ef4444}.expenses-row td{padding:14px}.accounting-empty{text-align:center;color:var(--color-text-secondary);padding:24px!important}.entry-reversed{opacity:.55}.entry-badge{text-transform:capitalize;border-radius:999px;align-items:center;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.entry-badge.active{color:#22c55e;background-color:#22c55e1f}.entry-badge.reversed{color:#ef4444;background-color:#ef44441f}.accounting-expenses-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.accounting-expenses-header h3{align-items:center;gap:8px;margin:0;font-size:18px;display:flex}.accounting-expense-form{background-color:var(--color-background);border:1px solid var(--border-color);border-radius:12px;margin-bottom:20px;padding:20px}.form-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:16px;display:grid}.form-row:last-of-type{margin-bottom:0}.form-group{flex-direction:column;gap:8px;display:flex}.form-group.full-width{grid-column:1/-1}.form-group label{color:var(--color-text);font-size:13px;font-weight:600}.form-group input,.form-group select{border:1px solid var(--border-color);background-color:var(--color-card);height:44px;color:var(--color-text);border-radius:10px;padding:0 12px;font-size:14px}.form-actions{border-top:1px solid var(--border-color);gap:12px;margin-top:20px;padding-top:20px;display:flex}.accounting-expense-summary{border-top:1px solid var(--border-color);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-top:20px;padding-top:20px;display:grid}.summary-stat{flex-direction:column;gap:4px;display:flex}.summary-label{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;font-size:13px;font-weight:600}.summary-value{color:var(--color-primary);font-size:20px;font-weight:700}.accounting-expenses-table-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.accounting-expenses-table-header h3{margin:0;font-size:16px}.accounting-expenses-table-header p{color:var(--color-text-secondary);margin:0;font-size:13px}.accounting-expenses-table-wrapper{width:100%;overflow-x:auto}.accounting-action-btn{color:#ef4444;cursor:pointer;background-color:#ef44441f;border:none;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;transition:all .2s;display:inline-flex}.accounting-action-btn:hover{background-color:#ef44443d}.accounting-action-btn.delete{color:#ef4444;background-color:#ef44441f}@media (width<=768px){.accounting-summary-grid{grid-template-columns:1fr}.accounting-filters{flex-wrap:wrap;overflow-x:visible}.accounting-filter-item,.accounting-filter-date{flex:100%;min-width:100%}.form-row{grid-template-columns:1fr}.accounting-expenses-header{flex-direction:column;align-items:flex-start}.accounting-expenses-header button{width:100%}}.holidays-page{flex-direction:column;gap:24px;display:flex}.holidays-table-wrapper{width:100%;overflow-x:auto}.holidays-table{border-collapse:collapse;width:100%;font-size:14px}.holidays-table th,.holidays-table td{text-align:start;border-bottom:1px solid var(--border-color);vertical-align:middle;padding:12px 14px}.holidays-table th{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary);font-size:12px;font-weight:600}.holidays-empty{text-align:center;color:var(--color-text-secondary);padding:24px!important}.holidays-table th:last-child,.holidays-table td:last-child{white-space:nowrap;text-align:end;width:1%}.holiday-badge{border-radius:999px;align-items:center;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.holiday-badge.yearly{color:#6366f1;background-color:#6366f11f}.holiday-badge.once{color:#eab308;background-color:#eab3081f}.holiday-badge.active{color:#22c55e;background-color:#22c55e1f}.holiday-badge.inactive{color:#6b7280;background-color:#9ca3af2e}.holiday-actions{justify-content:flex-end;align-items:center;gap:8px;min-width:max-content;display:inline-flex}.holiday-edit-btn,.holiday-delete-btn{border:1px solid var(--border-color);cursor:pointer;color:var(--color-text-secondary);background:0 0;border-radius:6px;padding:6px 8px}.holiday-edit-btn:hover{color:#6366f1;border-color:#6366f1}.holiday-delete-btn:hover{color:#ef4444;border-color:#ef4444}.holiday-form{flex-direction:column;gap:18px;display:flex}.holiday-checkbox{color:var(--color-text);align-items:center;gap:8px;font-size:14px;display:flex}.holiday-form-actions{justify-content:flex-end;gap:12px;display:flex}[dir=rtl] .holiday-actions{justify-content:flex-start}.calendar-page{flex-direction:column;gap:24px;display:flex}.calendar-stats-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;display:grid}.calendar-stat-card{align-items:center;gap:16px;display:flex}.calendar-stat-card svg{color:var(--color-primary);font-size:1.9rem}.calendar-stat-card h3{margin:0;font-size:1.8rem;font-weight:700}.calendar-stat-card p{color:var(--color-text-secondary);margin:4px 0 0}.calendar-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.calendar-nav{align-items:center;gap:12px;display:flex}.calendar-nav h3{text-align:center;min-width:220px;margin:0;font-size:18px}.calendar-nav-btn{border:1px solid var(--border-color);cursor:pointer;color:var(--color-text-secondary);background:0 0;border-radius:8px;justify-content:center;align-items:center;padding:8px 10px;display:inline-flex}.calendar-nav-btn:hover{color:#6366f1;border-color:#6366f1}.calendar-legend{color:var(--color-text-secondary);flex-wrap:wrap;gap:16px;margin-bottom:18px;font-size:13px;display:flex}.calendar-legend span{align-items:center;gap:8px;display:inline-flex}.legend-dot{border-radius:999px;width:10px;height:10px;display:inline-block}.legend-dot.today{background:#6366f1}.legend-dot.holiday{background:#ef4444}.legend-dot.selected{background:#8b5cf6}.legend-dot.session{background:#4f46e5}.calendar-grid{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.calendar-weekday{text-align:center;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary);padding:8px 0;font-size:12px;font-weight:600}.calendar-cell{background-color:var(--color-card);border:1px solid var(--border-color);text-align:left;cursor:pointer;min-height:110px;font:inherit;color:var(--color-text);border-radius:10px;flex-direction:column;gap:4px;padding:8px;transition:border-color .15s,background-color .15s;display:flex;position:relative}.calendar-cell:hover{border-color:#6366f1}.calendar-cell-faded{opacity:.45}.calendar-cell-today{border-color:#6366f1;box-shadow:0 0 0 2px #6366f126}.calendar-cell-holiday{background-color:#ef444414;border-color:#ef444466}.calendar-cell-selected{background-color:#6366f11f}.calendar-cell-date{color:var(--color-text);font-size:13px;font-weight:700}.calendar-holiday-tag{color:#ef4444;text-transform:uppercase;background-color:#ef44442e;border-radius:6px;padding:2px 6px;font-size:10px;font-weight:700;position:absolute;top:6px;right:6px}.calendar-cell-sessions{flex-direction:column;gap:3px;margin-top:6px;display:flex}.calendar-session-pill{color:#4f46e5;white-space:nowrap;text-overflow:ellipsis;background-color:#6366f11f;border-radius:5px;padding:3px 6px;font-size:11px;overflow:hidden}.calendar-session-time{margin-right:4px;font-weight:700}.calendar-more-pill{color:var(--color-text-secondary);font-size:11px;font-style:italic}.calendar-loading{text-align:center;color:var(--color-text-secondary);padding:12px}.calendar-detail-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;display:flex}.calendar-detail-header h3{margin:0}.calendar-detail-subtitle{color:var(--color-text-secondary);margin:6px 0 0;font-size:14px}.calendar-detail-close{border:1px solid var(--border-color);cursor:pointer;color:var(--color-text-secondary);background:0 0;border-radius:6px;padding:6px 12px;font-size:13px}.calendar-empty{text-align:center;color:var(--color-text-secondary);padding:24px}.calendar-session-table{border-collapse:collapse;width:100%;font-size:14px}.calendar-session-table th,.calendar-session-table td{text-align:left;border-bottom:1px solid var(--border-color);padding:10px 12px}.calendar-session-table th{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary);font-size:12px;font-weight:600}@media (width<=768px){.calendar-stats-grid{grid-template-columns:1fr}.calendar-cell{min-height:80px}.calendar-session-pill{display:none}.calendar-detail-header{flex-direction:column;align-items:stretch}}.settings-page{flex-direction:column;gap:20px;display:flex}.settings-hero-card{background:radial-gradient(circle at top right, #3b82f624, transparent 32%), linear-gradient(180deg, #ffffff03, #fff0), var(--color-card);position:relative;overflow:hidden}.settings-panel-card{background:linear-gradient(180deg, #ffffff04, #fff0), var(--color-card)}.settings-overview-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;display:grid}.settings-overview-item{background:#ffffff05;border:1px solid #ffffff0f;border-radius:18px;flex-direction:column;gap:8px;min-height:132px;padding:18px;display:flex}.settings-overview-label{letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary);font-size:12px;font-weight:700}.settings-overview-item strong{color:var(--color-text);font-size:24px;line-height:1.2}.settings-overview-note{color:var(--color-text-secondary);align-items:center;gap:8px;margin-top:auto;font-size:13px;display:inline-flex}.settings-mode-badge,.settings-section-badge{letter-spacing:.04em;text-transform:uppercase;border-radius:999px;align-items:center;gap:8px;padding:10px 14px;font-size:12px;font-weight:700;display:inline-flex}.settings-mode-badge.admin{color:#4ade80;background:#22c55e24}.settings-mode-badge.readonly{color:#cbd5e1;background:#94a3b824}.settings-section-badge{color:#7fb0ff;background:#3b82f61f}.settings-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;display:grid}.settings-grid .input-group{min-width:0}.settings-span-full{grid-column:1/-1}.settings-field{flex-direction:column;gap:8px;display:flex}.settings-field label{color:var(--color-text);font-size:14px;font-weight:600}.settings-select-wrapper{align-items:center;display:flex;position:relative}.settings-select-icon{color:var(--color-text-secondary);pointer-events:none;font-size:18px;position:absolute;inset-inline-start:16px}.settings-select{border:1px solid var(--color-border);background-color:var(--color-background);width:100%;height:48px;color:var(--color-text);border-radius:14px;outline:none;padding:0 16px 0 46px;font-size:14px;transition:border-color .2s,box-shadow .2s,background-color .2s}.settings-select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #3b82f61f}.settings-checkbox{color:var(--color-text);align-items:flex-start;gap:12px;padding:10px 0;font-size:14px;display:flex}.settings-checkbox-card{background:#ffffff05;border:1px solid #ffffff0f;border-radius:18px;padding:16px 18px}.settings-checkbox input{margin-top:2px}.settings-checkbox-content{flex-direction:column;gap:6px;display:flex}.settings-checkbox-title{color:var(--color-text);align-items:center;gap:8px;font-weight:700;display:inline-flex}.settings-checkbox-description{color:var(--color-text-secondary);line-height:1.6}.settings-working-days{flex-direction:column;gap:10px;margin-top:22px;display:flex}.settings-working-days-label{color:var(--color-text);font-size:14px;font-weight:600}.settings-working-days-copy{color:var(--color-text-secondary);margin:0;font-size:13px;line-height:1.6}.settings-working-days-list{flex-wrap:wrap;gap:10px;display:flex}.settings-day-pill{background-color:var(--color-background);color:var(--color-text-secondary);border:1px solid var(--color-border);cursor:pointer;letter-spacing:.04em;border-radius:999px;padding:10px 16px;font-size:12px;font-weight:700;transition:transform .2s,border-color .2s,color .2s,background-color .2s}.settings-day-pill:hover:not(:disabled){transform:translateY(-1px)}.settings-day-pill.active{color:#6366f1;background-color:#6366f11f;border-color:#6366f1}.settings-day-pill:disabled{opacity:.6;cursor:not-allowed}.settings-actions-card{background:linear-gradient(180deg, #ffffff03, #fff0), var(--color-card)}.settings-actions-layout{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;display:flex}.settings-actions-copy{flex-direction:column;gap:8px;max-width:680px;display:flex}.settings-actions-title{color:var(--color-text);align-items:center;gap:8px;font-size:15px;font-weight:700;display:inline-flex}.settings-actions-copy p{color:var(--color-text-secondary);margin:0;line-height:1.6}.settings-readonly-note{color:var(--color-text-secondary);align-items:flex-start;gap:10px;margin:0;font-size:14px;line-height:1.7;display:flex}.settings-readonly-note svg{color:#f59e0b;flex-shrink:0;margin-top:2px}@media (width<=768px){.settings-overview-grid{grid-template-columns:1fr}.settings-span-full{grid-column:auto}.settings-actions-layout{flex-direction:column;align-items:stretch}.settings-page{gap:18px}}.alerts-page{flex-direction:column;gap:24px;display:flex}.alerts-summary{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;display:grid}.alerts-stat{flex-direction:column;gap:6px;padding:18px 20px;display:flex}.alerts-stat h4{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary);margin:0;font-size:12px}.alerts-stat p{margin:0;font-size:28px;font-weight:700}.alerts-stat.critical p{color:#ef4444}.alerts-stat.warning p{color:#eab308}.alerts-stat.info p{color:#6366f1}.alerts-toolbar{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.alerts-select{border:1px solid var(--border-color);background-color:var(--color-card);height:38px;color:var(--color-text);border-radius:8px;padding:0 12px;font-size:13px}.alerts-empty{text-align:center;color:var(--color-text-secondary);padding:24px}.alerts-list{flex-direction:column;gap:12px;display:flex}.alert-card{border-left:4px solid var(--border-color);border-radius:12px;gap:16px;padding:16px 18px;display:flex}.alert-card.critical{background-color:#ef44440f;border-left-color:#ef4444}.alert-card.warning{background-color:#eab30812;border-left-color:#eab308}.alert-card.info{background-color:#6366f112;border-left-color:#6366f1}.alert-icon{justify-content:center;align-items:center;font-size:22px;display:inline-flex}.alert-card.critical .alert-icon{color:#ef4444}.alert-card.warning .alert-icon{color:#eab308}.alert-card.info .alert-icon{color:#6366f1}.alert-body{flex-direction:column;flex:1;gap:4px;display:flex}.alert-top{align-items:center;gap:10px;display:flex}.alert-severity{text-transform:uppercase;letter-spacing:.04em;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700}.alert-severity.critical{color:#ef4444;background-color:#ef44442e}.alert-severity.warning{color:#b45309;background-color:#eab3082e}.alert-severity.info{color:#4f46e5;background-color:#6366f12e}.alert-type{color:var(--color-text-secondary);font-size:12px;font-weight:600}.alert-body h4{margin:4px 0 0;font-size:15px}.alert-body p{color:var(--color-text-secondary);margin:0;font-size:13px}.teachers-page{flex-direction:column;gap:24px;display:flex}.teachers-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;display:flex}.teachers-count{color:var(--color-text-secondary);font-size:14px;font-weight:600}.teacher-form{flex-direction:column;gap:24px;display:flex}.teacher-form-shell{flex-direction:column;gap:18px;display:flex}.teacher-form-header{flex-direction:column;gap:8px;padding:6px 4px 0;display:flex}.teacher-form-eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--color-primary);font-size:12px;font-weight:800}.teacher-form-title{color:var(--color-text);font-size:22px;font-weight:700;line-height:1.35}.teacher-form-grid{background:radial-gradient(circle at 100% 0,#2563eb14,#0000 28%),linear-gradient(#fff,#f8fbff 52%,#f8fafc);border:1px solid #94a3b82e;border-radius:24px;grid-template-columns:repeat(2,1fr);gap:20px;padding:28px;display:grid;box-shadow:0 20px 48px #0f172a0f}.teacher-form-full{grid-column:1/-1}.teachers-page .form-section-title{letter-spacing:.14em;text-transform:uppercase;color:var(--color-primary);border-bottom:1px solid #94a3b82e;grid-column:1/-1;margin:8px 0 0;padding:0 0 14px;font-size:13px;font-weight:800}.teachers-page .form-section-title:first-child{margin-top:0}.teachers-page .input-group{flex-direction:column;gap:8px;display:flex}.teachers-page .input-label{color:var(--color-text);font-size:13px;font-weight:700}.teachers-page .input-field{border:1px solid var(--color-border);background:var(--color-card);min-height:48px;color:var(--color-text);border-radius:14px;padding:0 14px;transition:border-color .2s,box-shadow .2s,transform .2s}.teachers-page .input-field:hover{border-color:#2563eb52}.teachers-page .input-field:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 4px #2563eb1f}.teachers-page .input-error{color:var(--color-danger);margin:0;font-size:13px}.teacher-form-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:14px;display:flex}.status-badge.inactive{color:#64748b;background-color:#94a3b824}.status-badge.terminated{color:#dc2626;background-color:#ef44441f}.dark .teacher-form-header{color:var(--color-text)}.dark .teacher-form-eyebrow{color:#93c5fd}.dark .teacher-form-title{color:var(--color-text)}.dark .teacher-form-grid{background:radial-gradient(circle at 100% 0,#60a5fa14,#0000 28%),linear-gradient(#0f172afa,#0f172af5);border-color:#94a3b81f;box-shadow:0 24px 60px #02061766}.dark .teachers-page .form-section-title{border-bottom-color:#94a3b81f}.dark .teachers-page .input-label{color:var(--color-text)}.dark .teachers-page .input-field{color:var(--color-text);background:#0f172aeb;border-color:#94a3b824}.dark .teachers-page .input-field:hover{border-color:#60a5fa59}.dark .teachers-page .input-field:focus{border-color:#60a5facc;box-shadow:0 0 0 4px #60a5fa24}@media (width<=768px){.teachers-toolbar{flex-direction:column;align-items:stretch}.teacher-form-grid{border-radius:20px;grid-template-columns:1fr;padding:18px}.teacher-form-full{grid-column:auto}.teacher-form-actions{justify-content:stretch}.teacher-form-actions button{flex:1}}.teacher-schedule-page{flex-direction:column;gap:24px;display:flex}.teacher-schedule-toolbar{flex-wrap:wrap;align-items:end;gap:20px;display:flex}.teacher-schedule-select{flex-direction:column;gap:8px;min-width:280px;display:flex}.teacher-schedule-filter{min-width:220px}.teacher-schedule-select label{color:var(--color-text);font-size:14px;font-weight:600}.teacher-schedule-select select{border:1px solid var(--color-border);background:var(--color-card);height:46px;color:var(--color-text);border-radius:12px;outline:none;padding:0 14px;font-size:14px;transition:all .2s}.teacher-schedule-select select:focus{border-color:var(--color-primary)}.teacher-schedule-month-input{border:1px solid var(--color-border);background:var(--color-card);height:46px;color:var(--color-text);border-radius:12px;outline:none;padding:0 14px;font-size:14px;transition:all .2s}.teacher-schedule-month-input:focus{border-color:var(--color-primary)}.teacher-schedule-header-card{width:100%}.teacher-schedule-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;display:flex}.teacher-schedule-header h2{color:var(--color-text);margin:0;font-size:24px;font-weight:700}.teacher-schedule-header p{color:var(--color-text-secondary);margin-top:6px}.teacher-schedule-status{color:#22c55e;background:#22c55e1f;border-radius:999px;justify-content:center;align-items:center;min-width:100px;height:38px;padding:0 16px;font-size:13px;font-weight:700;display:inline-flex}.teacher-schedule-meta{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.teacher-schedule-meta-item{border:1px solid var(--color-border);background:var(--color-background);border-radius:14px;flex-direction:column;gap:4px;min-width:130px;padding:10px 14px;display:flex}.teacher-schedule-meta-item span{letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary);font-size:11px;font-weight:700}.teacher-schedule-meta-item strong{color:var(--color-text);text-transform:capitalize;font-size:14px}.teacher-schedule-stats-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;display:grid}.teacher-schedule-stat-card{align-items:center;gap:16px;display:flex}.teacher-schedule-stat-card svg{color:var(--color-primary);font-size:28px}.teacher-schedule-stat-card h3{color:var(--color-text);margin:0;font-size:24px;font-weight:700}.teacher-schedule-stat-card p{color:var(--color-text-secondary);margin-top:4px;font-size:14px}.teacher-schedule-warning-box{flex-direction:column;gap:14px;display:flex}.teacher-schedule-warning-title{color:#f59e0b;align-items:center;gap:10px;font-size:15px;font-weight:700;display:flex}.teacher-schedule-warning-item{color:#f59e0b;background:#f59e0b14;border-radius:12px;padding:14px;font-size:14px;line-height:1.6}.teacher-schedule-days-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;display:grid}.teacher-day-column{flex-direction:column;gap:16px;display:flex}.teacher-day-header{text-transform:capitalize;color:var(--color-text);border-bottom:1px solid var(--color-border);padding-bottom:12px;font-size:16px;font-weight:700}.teacher-day-sessions{flex-direction:column;gap:14px;display:flex}.teacher-session-card{border:1px solid var(--color-border);background:var(--color-background);border-radius:16px;flex-direction:column;gap:10px;padding:16px;transition:all .2s;display:flex}.teacher-session-card:hover{transform:translateY(-2px)}.teacher-session-top{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.teacher-session-course{color:var(--color-text);font-size:15px;font-weight:700}.teacher-session-time{color:var(--color-primary);align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.teacher-session-date,.teacher-session-hall{color:var(--color-text-secondary);align-items:center;gap:8px;font-size:13px;display:flex}.teacher-session-meta-row{color:var(--color-text-secondary);justify-content:space-between;align-items:center;gap:10px;padding-top:4px;font-size:12px;display:flex}.teacher-session-status{text-transform:capitalize;border-radius:999px;width:fit-content;padding:6px 12px;font-size:12px;font-weight:700}.teacher-session-status.scheduled{color:#3b82f6;background:#3b82f61f}.teacher-session-status.completed{color:#22c55e;background:#22c55e1f}.teacher-session-status.cancelled{color:#ef4444;background:#ef44441f}.teacher-day-empty{background:var(--color-background);border:1px dashed var(--color-border);text-align:center;color:var(--color-text-secondary);border-radius:14px;padding:20px;font-size:14px}.teacher-schedule-empty{text-align:center;color:var(--color-text-secondary);padding:40px 20px;font-size:15px}.dark .teacher-schedule-select select,.dark .teacher-schedule-month-input,.dark .teacher-schedule-meta-item,.dark .teacher-session-card,.dark .teacher-day-empty{background:#0f172aeb;border-color:#94a3b824}.dark .teacher-schedule-select select:focus{border-color:#60a5facc;box-shadow:0 0 0 4px #60a5fa24}@media (width<=768px){.teacher-schedule-toolbar{flex-direction:column;align-items:stretch}.teacher-schedule-select{width:100%}.teacher-schedule-header{flex-direction:column;align-items:flex-start}.teacher-schedule-meta{width:100%}.teacher-schedule-meta-item{flex:1}.teacher-schedule-days-grid{grid-template-columns:1fr}.teacher-session-top,.teacher-session-meta-row{flex-direction:column;align-items:flex-start}}.courses-page{flex-direction:column;gap:24px;display:flex}.courses-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;display:flex}.course-filter-group{flex-direction:column;gap:8px;min-width:180px;display:flex}.course-filter-label,.courses-page .input-label{color:var(--color-text);font-size:13px;font-weight:700}.course-filter-group select,.courses-page .input-field{border:1px solid var(--color-border);background:var(--color-card);min-height:48px;color:var(--color-text);border-radius:14px;padding:0 14px;transition:border-color .2s,box-shadow .2s,transform .2s}.course-filter-group select:focus,.courses-page .input-field:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 4px #2563eb1f}.courses-count{color:var(--color-text-secondary);font-size:14px;font-weight:600}.course-form{flex-direction:column;gap:24px;display:flex}.course-form-shell{flex-direction:column;gap:18px;display:flex}.course-form-header{flex-direction:column;gap:8px;padding:6px 4px 0;display:flex}.course-form-alert{color:#b45309;background:#f59e0b1a;border:1px solid #f59e0b3d;border-radius:16px;padding:14px 16px;font-size:14px;font-weight:600}.course-form-eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--color-primary);font-size:12px;font-weight:800}.course-form-title{color:var(--color-text);font-size:22px;font-weight:700;line-height:1.35}.course-form-grid{background:radial-gradient(circle at 100% 0,#2563eb14,#0000 28%),linear-gradient(#fff,#f8fbff 52%,#f8fafc);border:1px solid #94a3b82e;border-radius:24px;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding:28px;display:grid;box-shadow:0 20px 48px #0f172a0f}.course-form-full{grid-column:1/-1}.courses-page .form-section-title{letter-spacing:.14em;text-transform:uppercase;color:var(--color-primary);border-bottom:1px solid #94a3b82e;grid-column:1/-1;margin:8px 0 0;padding:0 0 14px;font-size:13px;font-weight:800}.courses-page .form-section-title:first-child{margin-top:0}.courses-page .input-group{flex-direction:column;gap:8px;display:flex}.courses-page .input-error{color:var(--color-danger);margin:0;font-size:13px}.course-field-help{color:var(--color-text-secondary);margin:0;font-size:12px;line-height:1.5}.course-form-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:14px;display:flex}.status-badge{text-transform:capitalize;border-radius:999px;justify-content:center;align-items:center;min-width:96px;height:34px;padding:0 14px;font-size:12px;font-weight:800;display:inline-flex}.status-badge.draft{color:#64748b;background:#94a3b829}.status-badge.published{color:#2563eb;background:#3b82f61f}.status-badge.completed{color:#0f766e;background:#14b8a624}.status-badge.archived{color:#e11d48;background:#f43f5e1f}.course-actions-stack{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.course-inline-button{min-height:38px;color:var(--color-primary);cursor:pointer;background:#2563eb14;border:1px solid #2563eb2e;border-radius:999px;align-items:center;gap:8px;padding:0 14px;font-size:13px;font-weight:700;display:inline-flex}.course-inline-button:hover{transform:translateY(-1px)}.course-run-modal{flex-direction:column;gap:20px;display:flex}.course-run-intro{flex-direction:column;gap:8px;display:flex}.course-run-list{flex-direction:column;gap:14px;display:flex}.course-run-list-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.course-run-list-header h4{color:var(--color-text);margin:0;font-size:18px}.course-run-list-header p{color:var(--color-text-secondary);margin:0;font-size:13px}.course-run-empty{color:var(--color-text-secondary);background:#94a3b814;border-radius:18px;padding:18px;font-size:14px}.course-run-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;display:grid}.course-run-card{background:#ffffff08;border:1px solid #94a3b824;border-radius:18px;flex-direction:column;gap:10px;padding:18px;display:flex}.course-run-card-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.course-run-card strong{color:var(--color-text)}.course-run-card p,.course-run-foot{color:var(--color-text-secondary);margin:0;font-size:13px}.course-run-metrics{color:var(--color-text);flex-direction:column;gap:6px;font-size:13px;display:flex}.course-run-badge{text-transform:capitalize;border-radius:999px;justify-content:center;align-items:center;min-width:72px;height:30px;padding:0 12px;font-size:11px;font-weight:800;display:inline-flex}.course-run-badge.open{color:#16a34a;background:#22c55e1f}.course-run-badge.full{color:#d97706;background:#f59e0b1f}.course-run-badge.started{color:#2563eb;background:#2563eb1f}.course-run-badge.completed{color:#0f766e;background:#14b8a624}.course-run-badge.cancelled,.course-run-badge.draft{color:#64748b;background:#94a3b829}.dark .course-form-header{color:var(--color-text)}.dark .course-form-eyebrow{color:#93c5fd}.dark .course-form-grid{background:radial-gradient(circle at 100% 0,#60a5fa14,#0000 28%),linear-gradient(#0f172afa,#0f172af5);border-color:#94a3b81f;box-shadow:0 24px 60px #02061766}.dark .course-form-alert{color:#fcd34d;background:#78350f38;border-color:#fbbf2438}.dark .courses-page .form-section-title{border-bottom-color:#94a3b81f}.dark .course-inline-button{color:#93c5fd;background:#1e293be0;border-color:#60a5fa2e}.dark .course-run-empty,.dark .course-run-card{background:#0f172ae6;border-color:#94a3b81f}.dark .course-filter-group select,.dark .courses-page .input-field{color:var(--color-text);background:#0f172aeb;border-color:#94a3b824}.dark .course-filter-group select:focus,.dark .courses-page .input-field:focus{border-color:#60a5facc;box-shadow:0 0 0 4px #60a5fa24}@media (width<=768px){.courses-toolbar{flex-direction:column;align-items:stretch}.course-filter-group{width:100%}.course-form-grid{border-radius:20px;grid-template-columns:1fr;padding:18px}.course-form-full{grid-column:auto}.course-form-actions{justify-content:stretch}.course-form-actions button{flex:1}.course-actions-stack{justify-content:stretch}.course-inline-button{justify-content:center;width:100%}}.subjects-page{flex-direction:column;gap:24px;display:flex}.subjects-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.subjects-count{color:var(--color-text-secondary);font-size:.95rem;font-weight:600}.subject-form{flex-direction:column;gap:24px;display:flex}.subject-form-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;display:grid}.subjects-page .input-group{flex-direction:column;gap:8px;display:flex}.subjects-page .input-label{color:var(--color-text);font-size:13px;font-weight:700}.subjects-page .input-field{border:1px solid var(--color-border);background:var(--color-card);min-height:48px;color:var(--color-text);border-radius:14px;padding:0 14px;transition:border-color .2s,box-shadow .2s}.subjects-page .input-field:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 4px #2563eb1f}.subject-form-actions{justify-content:flex-end;gap:12px;display:flex}.status-badge{border-radius:999px;justify-content:center;align-items:center;min-width:90px;padding:6px 12px;font-size:.85rem;font-weight:600;display:inline-flex}.status-badge.paused,.status-badge.inactive{color:#dc2626;background:#ef444426}@media (width<=768px){.subjects-toolbar{flex-direction:column;align-items:stretch}.subject-form-actions{flex-direction:column}}.packages-page{flex-direction:column;gap:24px;display:flex}.packages-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;display:flex}.packages-count{color:var(--color-text-secondary);font-size:.95rem}.package-name-cell{align-items:center;gap:14px;display:flex}.package-name-cell svg{color:var(--color-primary);font-size:1.2rem}.package-name-cell strong{margin-bottom:4px;display:block}.package-name-cell p{color:var(--color-text-secondary);font-size:.85rem}.package-form{flex-direction:column;gap:24px;display:flex}.package-form-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;display:grid}.package-courses-section{flex-direction:column;gap:16px;display:flex}.package-courses-section h4{font-size:1rem;font-weight:700}.package-section-help{color:var(--color-text-secondary);font-size:.92rem;line-height:1.6}.package-courses-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.package-course-groups{flex-direction:column;gap:18px;display:flex}.package-course-group{flex-direction:column;gap:14px;display:flex}.package-course-group-header{border:1px solid var(--color-border);background:var(--color-card);text-align:left;cursor:pointer;border-radius:16px;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:16px 18px;display:flex}.package-course-group-header h5{color:var(--color-text-primary);font-size:1rem;font-weight:700}.package-course-group-header p{color:var(--color-text-secondary);font-size:.9rem}.package-group-toggle{color:var(--color-primary);font-size:.9rem;font-weight:700}.package-course-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.package-course-summary{color:var(--color-text-secondary);font-size:.92rem}.package-course-toolbar-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.package-toolbar-link{color:var(--color-primary);cursor:pointer;background:0 0;border:none;padding:0;font-size:.9rem;font-weight:700}.package-toolbar-link:hover{opacity:.85}.package-course-card{border:1px solid var(--color-border);cursor:pointer;background:var(--color-card);border-radius:18px;padding:18px;transition:all .2s}.package-course-card:hover{transform:translateY(-2px)}.package-course-card.selected{border-color:var(--color-primary);background:#3b82f614;box-shadow:0 0 0 2px #3b82f626}.package-course-card-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.package-course-card h5{margin-bottom:8px;font-size:1rem;font-weight:700}.package-select-hint{white-space:nowrap;min-height:28px;color:var(--color-text-secondary);background:#94a3b81f;border-radius:999px;align-items:center;padding:0 10px;font-size:.78rem;font-weight:700;display:inline-flex}.package-course-card p{color:var(--color-text-secondary);margin-bottom:10px;font-size:.9rem}.package-course-card span{color:var(--color-primary);font-weight:700}.package-form-actions{flex-wrap:wrap;justify-content:flex-end;gap:14px;display:flex}.package-selected-preview{border:1px dashed var(--color-border);background:var(--color-background);border-radius:16px;padding:16px 18px}.package-selected-preview h5{color:var(--color-text-primary);margin-bottom:8px;font-size:.95rem;font-weight:700}.package-selected-preview p{color:var(--color-text-secondary);line-height:1.6}.package-selected-subjects{color:var(--color-text);margin-bottom:8px;font-size:.9rem;font-weight:600}.package-pricing-line{color:var(--color-text);margin-bottom:6px;font-size:.92rem}.package-pricing-final{color:var(--color-primary);font-weight:800}@media (width<=768px){.packages-toolbar{flex-direction:column;align-items:stretch}.package-form-actions{flex-direction:column}.package-course-toolbar{align-items:flex-start}}.package-analytics-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;display:grid}.package-analytics-card{flex-direction:column;gap:12px;display:flex}.package-analytics-card h4{color:var(--color-text-secondary);font-size:.95rem;font-weight:600}.package-analytics-card h2{color:var(--color-text-primary);font-size:2rem;font-weight:800}.package-analytics-card p{color:var(--color-text-secondary);font-size:.95rem;font-weight:500}.halls-page{flex-direction:column;gap:24px;display:flex}.halls-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.halls-count{color:var(--color-text-secondary);font-size:14px;font-weight:600}.hall-form{flex-direction:column;gap:24px;display:flex}.hall-form-shell{flex-direction:column;gap:18px;display:flex}.hall-form-header{flex-direction:column;gap:8px;padding:6px 4px 0;display:flex}.hall-form-eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--color-primary);font-size:12px;font-weight:800}.hall-form-title{color:var(--color-text);font-size:22px;font-weight:700;line-height:1.35}.hall-form-grid{background:radial-gradient(circle at 100% 0,#2563eb14,#0000 28%),linear-gradient(#fff,#f8fbff 52%,#f8fafc);border:1px solid #94a3b82e;border-radius:24px;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding:28px;display:grid;box-shadow:0 20px 48px #0f172a0f}.hall-form-full{grid-column:1/-1}.halls-page .form-section-title{letter-spacing:.14em;text-transform:uppercase;color:var(--color-primary);border-bottom:1px solid #94a3b82e;grid-column:1/-1;margin:8px 0 0;padding:0 0 14px;font-size:13px;font-weight:800}.halls-page .form-section-title:first-child{margin-top:0}.halls-page .input-group{flex-direction:column;gap:8px;display:flex}.halls-page .input-label{color:var(--color-text);font-size:13px;font-weight:700}.halls-page .input-field{border:1px solid var(--color-border);background:var(--color-card);min-height:48px;color:var(--color-text);border-radius:14px;padding:0 14px;transition:border-color .2s,box-shadow .2s,transform .2s}.halls-page .input-field:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 4px #2563eb1f}.hall-form-actions{flex-wrap:wrap;justify-content:flex-end;gap:12px;display:flex}.status-badge{text-transform:capitalize;border-radius:999px;justify-content:center;align-items:center;min-width:110px;padding:6px 12px;font-size:12px;font-weight:700;display:inline-flex}.status-badge.active{color:#16a34a;background:#22c55e1f}.status-badge.inactive{color:#dc2626;background:#ef44441f}.status-badge.under-maintenance{color:#d97706;background:#f59e0b24}.delete-modal-content p{color:var(--color-text);font-size:15px;line-height:1.6}.dark .hall-form-eyebrow{color:#93c5fd}.dark .hall-form-grid{background:radial-gradient(circle at 100% 0,#60a5fa14,#0000 28%),linear-gradient(#0f172afa,#0f172af5);border-color:#94a3b81f;box-shadow:0 24px 60px #02061766}.dark .halls-page .form-section-title{border-bottom-color:#94a3b81f}.dark .halls-page .input-field{color:var(--color-text);background:#0f172aeb;border-color:#94a3b824}.dark .halls-page .input-field:focus{border-color:#60a5facc;box-shadow:0 0 0 4px #60a5fa24}@media (width<=768px){.halls-toolbar{flex-direction:column;align-items:stretch}.hall-form-grid{border-radius:20px;grid-template-columns:1fr;padding:18px}.hall-form-full{grid-column:auto}.hall-form-actions{flex-direction:column-reverse}.hall-form-actions button{width:100%}}.sessions-page{flex-direction:column;gap:24px;display:flex}.sessions-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.sessions-count{color:var(--color-text-secondary);font-size:14px;font-weight:600}.session-filters{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));align-items:flex-end;gap:16px;display:grid}.session-filter-actions{gap:12px;display:flex}.session-form{flex-direction:column;gap:24px;display:flex}.session-form-shell{flex-direction:column;gap:18px;display:flex}.session-form-header{flex-direction:column;gap:8px;padding:6px 4px 0;display:flex}.session-form-eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--color-primary);font-size:12px;font-weight:800}.session-form-title{color:var(--color-text);font-size:22px;font-weight:700;line-height:1.35}.session-form-grid{background:radial-gradient(circle at 100% 0,#2563eb14,#0000 28%),linear-gradient(#fff,#f8fbff 52%,#f8fafc);border:1px solid #94a3b82e;border-radius:24px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;padding:28px;display:grid;box-shadow:0 20px 48px #0f172a0f}.session-form-actions{justify-content:flex-end;align-items:center;gap:12px;display:flex}.sessions-page .input-group{flex-direction:column;gap:8px;display:flex}.sessions-page .input-label{color:var(--color-text);font-size:14px;font-weight:600}.sessions-page .input-field{border:1px solid var(--color-border);background:var(--color-surface);width:100%;height:48px;color:var(--color-text);border-radius:12px;outline:none;padding:0 14px;transition:all .2s}.sessions-page .input-field:focus{border-color:var(--color-primary)}.sessions-page .input-error,.sessions-page .error{color:#dc2626;font-size:12px}.sessions-page .form-section-title{letter-spacing:.14em;text-transform:uppercase;color:var(--color-primary);border-bottom:1px solid #94a3b82e;grid-column:1/-1;margin:8px 0 0;padding:0 0 14px;font-size:13px;font-weight:800}.session-warning{color:#f59e0b;background:#ffc1071f;border:1px solid #ffc10759;border-radius:10px;margin-top:8px;padding:12px 16px;font-size:14px;font-weight:600}.session-warning.danger{color:#ef4444;background:#ef44441f;border-color:#ef444459;margin-top:0}.input-group-full{grid-column:1/-1}.session-duration-readout{min-height:48px;color:var(--color-text-secondary);background:var(--color-background);border:1px dashed #94a3b84d;border-radius:12px;align-items:center;padding:0 14px;font-weight:600;display:flex}.session-series-badge,.session-single-badge{white-space:nowrap;border-radius:999px;align-items:center;padding:6px 10px;font-size:12px;font-weight:700;display:inline-flex}.session-series-badge{color:#1d4ed8;background:#2563eb1f;border:1px solid #2563eb2e}.session-single-badge{color:#475569;background:#94a3b824;border:1px solid #94a3b833}.dark .session-form-eyebrow{color:#93c5fd}.dark .session-form-grid{background:radial-gradient(circle at 100% 0,#60a5fa14,#0000 28%),linear-gradient(#0f172afa,#0f172af5);border-color:#94a3b81f;box-shadow:0 24px 60px #02061766}.dark .sessions-page .form-section-title{border-bottom-color:#94a3b81f}.dark .session-duration-readout,.dark .sessions-page .input-field{color:var(--color-text);background:#0f172aeb;border-color:#94a3b824}.dark .session-series-badge{color:#bfdbfe;background:#3b82f62e;border-color:#60a5fa47}.dark .session-single-badge{color:#cbd5e1;background:#334155e6;border-color:#64748b4d}@media (width<=768px){.sessions-toolbar{flex-direction:column;align-items:stretch}.session-form-grid{border-radius:20px;padding:18px}.session-form-actions{flex-direction:column}.session-form-actions button{width:100%}}.page-container{flex-direction:column;gap:24px;display:flex}.session-series-card{padding:24px}.session-series-form{flex-direction:column;gap:24px;display:flex}.session-series-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;display:grid}.session-series-field{flex-direction:column;gap:8px;display:flex}.session-series-field label{font-size:14px;font-weight:600}.session-series-select{background:var(--card-bg);width:100%;height:48px;color:var(--text-primary);border:1px solid #ffffff14;border-radius:12px;outline:none;padding:0 14px;transition:all .2s}.session-series-select:focus{border-color:var(--primary-color)}.weekdays-section{flex-direction:column;gap:14px;display:flex}.weekdays-title{font-size:15px;font-weight:700}.weekdays-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px;display:grid}.weekday-item{cursor:pointer;background:#ffffff08;border:1px solid #ffffff0f;border-radius:14px;align-items:center;gap:10px;padding:14px;transition:all .2s;display:flex}.weekday-item:hover{border-color:var(--primary-color);transform:translateY(-1px)}.weekday-item input{cursor:pointer;width:18px;height:18px}.session-series-actions{justify-content:flex-end;margin-top:10px;display:flex}.session-series-submit{min-width:220px}.session-series-list-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.session-series-list-header h3{margin:0;font-size:20px}.session-series-list-header p{color:var(--color-text-secondary);margin:6px 0 0}.session-series-list{flex-direction:column;gap:16px;display:flex}.session-series-item{background:radial-gradient(circle at 100% 0,#2563eb14,#0000 26%),linear-gradient(#fffffff5,#f8fafcfa);border:1px solid #94a3b829;border-radius:18px;padding:18px}.session-series-item-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px;display:flex}.session-series-item-head h4{margin:0;font-size:18px}.session-series-item-head p{color:var(--color-text-secondary);margin:6px 0 0}.session-series-status{text-transform:capitalize;border-radius:999px;align-items:center;padding:6px 10px;font-size:12px;font-weight:700;display:inline-flex}.session-series-status.active{color:#166534;background:#22c55e1f}.session-series-status.draft,.session-series-status.paused{color:#b45309;background:#f59e0b1f}.session-series-status.cancelled,.session-series-status.completed{color:#475569;background:#94a3b824}.session-series-meta{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px 14px;display:grid}.session-series-meta span{color:var(--color-text-secondary);align-items:center;gap:8px;font-weight:600;display:inline-flex}.session-series-notes{color:var(--color-text-secondary);margin:14px 0 0}.session-series-empty{color:var(--color-text-secondary);border:1px dashed #94a3b83d;border-radius:16px;padding:18px}.dark .session-series-item{background:radial-gradient(circle at 100% 0,#60a5fa14,#0000 26%),linear-gradient(#0f172afa,#0f172af0);border-color:#94a3b824}.dark .session-series-status.active{color:#bbf7d0;background:#22c55e2e}.dark .session-series-status.draft,.dark .session-series-status.paused{color:#fde68a;background:#f59e0b2e}.dark .session-series-status.cancelled,.dark .session-series-status.completed{color:#cbd5e1;background:#475569e6}@media (width<=768px){.session-series-grid,.weekdays-grid{grid-template-columns:1fr}.session-series-submit{width:100%}.session-series-item-head{flex-direction:column}}.enrollments-page{flex-direction:column;gap:24px;display:flex}.enrollments-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;display:flex}.enrollments-count{color:var(--color-text-secondary);font-size:14px;font-weight:500}.enrollment-form{flex-direction:column;gap:24px;display:flex}.enrollment-form-grid{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.enrollment-form-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:14px;display:flex}@media (width<=768px){.enrollments-toolbar{flex-direction:column;align-items:stretch}.enrollment-form-grid{grid-template-columns:1fr}.enrollment-form-actions{justify-content:stretch}.enrollment-form-actions button{flex:1}}.enrollment-filters{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));align-items:end;gap:20px;display:grid}.enrollment-filter-actions{align-items:flex-end;height:100%;display:flex}.enrollment-item-cell{align-items:center;gap:10px;font-weight:600;display:flex}.enrollment-item-cell svg{color:var(--color-primary)}.enrollment-item-cell div,.enrollment-id-cell,.enrollment-amounts-cell{flex-direction:column;gap:4px;display:flex}.enrollment-item-cell strong,.enrollment-id-cell strong{color:var(--color-text)}.enrollment-item-cell span,.enrollment-id-cell span,.enrollment-amounts-cell span{color:var(--color-text-secondary);font-size:12px}.enrollment-item-cell.package svg{color:#8b5cf6}.enrollment-type-badge{border-radius:999px;justify-content:center;align-items:center;min-width:90px;height:34px;padding:0 14px;font-size:13px;font-weight:700;display:inline-flex}.enrollment-type-badge.course{color:#3b82f6;background:#3b82f61f}.enrollment-type-badge.package{color:#8b5cf6;background:#8b5cf61f}.status-badge.completed{color:#3b82f6;background-color:#3b82f61f}.status-badge.cancelled{color:#ef4444;background-color:#ef44441f}.status-badge.pending-payment,.status-badge.payment-unpaid{color:#f59e0b;background-color:#f59e0b1f}.status-badge.paused,.status-badge.expired,.status-badge.payment-partial{color:#cbd5e1;background-color:#94a3b824}.status-badge.withdrawn,.status-badge.payment-paid{color:#22c55e;background-color:#22c55e1f}.status-badge.payment-free{color:#3b82f6;background-color:#3b82f61f}.status-badge.payment-unknown{color:#94a3b8;background-color:#64748b1f}.enrollment-reason-input{border:1px solid var(--color-border);background:var(--color-card);width:100%;height:44px;color:var(--color-text);border-radius:12px;padding:0 12px}.enrollments-pagination{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:16px;margin-top:20px;padding-top:20px;display:flex}.enrollments-pagination-info{color:var(--color-text-secondary);font-size:14px}.enrollments-pagination-controls{align-items:center;gap:10px;display:flex}.enrollments-pagination-page{min-width:120px;color:var(--color-text-primary);justify-content:center;align-items:center;padding:0 10px;display:flex}@media (width<=768px){.enrollment-filters{grid-template-columns:1fr}.enrollment-filter-actions,.enrollment-filter-actions button{width:100%}.enrollments-pagination,.enrollments-pagination-controls{flex-direction:column;align-items:stretch}.enrollments-pagination-page{min-width:0;padding:0}}.enrollment-student-step{flex-direction:column;gap:24px;display:flex}.wizard-section-header{flex-direction:column;gap:6px;display:flex}.wizard-section-header h3{font-size:1.3rem;font-weight:700}.wizard-section-header p{color:var(--color-text-secondary)}.student-search-box{width:100%}.students-selection-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px;display:grid}.student-selection-card{border:2px solid var(--color-border);cursor:pointer;background:var(--color-card);border-radius:18px;padding:18px;transition:all .25s}.student-selection-card:hover{border-color:var(--color-primary);transform:translateY(-2px)}.student-selection-card.selected{border-color:var(--color-primary);background:#3b82f614}.student-selection-header{align-items:center;gap:14px;margin-bottom:14px;display:flex}.student-selection-avatar{width:52px;height:52px;color:var(--color-primary);background:#3b82f61f;border-radius:50%;justify-content:center;align-items:center;font-size:1.3rem;display:flex}.student-selection-header h4{font-size:1rem;font-weight:700}.student-selection-header p{color:var(--color-text-secondary);font-size:.9rem}.student-selection-details{color:var(--color-text-secondary);flex-direction:column;gap:8px;font-size:.9rem;display:flex}.enrollment-wizard-page{flex-direction:column;gap:24px;display:flex}.wizard-header{background:linear-gradient(135deg,#3b82f614,#6366f10a);border:1px solid #ffffff0f;border-radius:24px;justify-content:space-between;align-items:center;gap:20px;padding:28px;display:flex}.wizard-header h1{margin-bottom:6px;font-size:30px;font-weight:700}.wizard-header p{opacity:.7}.wizard-steps{flex-wrap:wrap;gap:14px;display:flex}.wizard-step{opacity:.6;background:#ffffff0a;border-radius:16px;min-width:140px;padding:14px 18px;font-size:14px;font-weight:600;transition:all .2s}.wizard-step.active{opacity:1;color:#60a5fa;background:#3b82f624}.wizard-section{flex-direction:column;gap:24px;display:flex}.wizard-section h3{font-size:22px;font-weight:700}.wizard-grid{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.wizard-grid-span-full{grid-column:1/-1}.wizard-select{color:#fff;background:#ffffff08;border:1px solid #ffffff14;border-radius:14px;outline:none;width:100%;height:52px;padding:0 16px;font-size:14px}.wizard-select option{background:#111827}.wizard-helper-text{opacity:.72;margin:8px 0 0;font-size:12px;line-height:1.5}.wizard-actions{flex-wrap:wrap;justify-content:flex-end;gap:14px;display:flex}.wizard-pricing-preview{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.wizard-pricing-item{background:#ffffff08;border-radius:16px;flex-direction:column;gap:8px;padding:18px;display:flex}.wizard-pricing-item span{opacity:.7;font-size:13px}.wizard-pricing-item strong{font-size:18px;font-weight:700}.summary-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;display:grid}.summary-item{background:#ffffff08;border-radius:18px;flex-direction:column;gap:10px;padding:20px;display:flex}.summary-item span{opacity:.7;font-size:13px}.summary-item strong{font-size:20px;font-weight:700}.price-highlight{color:#22c55e}.sibling-discount-box{color:#22c55e;background:#22c55e1f;border-radius:16px;align-items:center;gap:10px;padding:16px 18px;font-weight:600;display:flex}.admin-discount-box{color:#f59e0b;background:#f59e0b1f;border-radius:16px;align-items:center;gap:10px;padding:16px 18px;font-weight:600;display:flex}.enrollment-wizard-loading{justify-content:center;align-items:center;min-height:300px;font-size:18px;font-weight:700;display:flex}@media (width<=768px){.wizard-header{flex-direction:column;align-items:flex-start}.wizard-grid{grid-template-columns:1fr}.wizard-grid-span-full{grid-column:auto}.wizard-actions{flex-direction:column}.wizard-actions button,.wizard-step{width:100%}}.checkout-page{flex-direction:column;gap:24px;display:flex}.checkout-loading{color:#f8fafc;padding:32px}.checkout-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.checkout-stat-card{align-items:center;gap:14px;display:flex}.checkout-stat-card svg{color:#3b82f6;font-size:26px}.checkout-stat-card h4{color:#94a3b8;margin:0 0 6px;font-size:.9rem}.checkout-stat-card p{color:#f8fafc;margin:0;font-size:1.45rem;font-weight:700}.checkout-alerts{flex-direction:column;gap:14px;display:flex}.checkout-alerts h3,.checkout-items-section h3,.checkout-pricing-section h3{color:#f8fafc;margin:0}.checkout-alert{color:#dbeafe;background:#1e40af24;border:1px solid #3b82f638;border-radius:14px;align-items:center;gap:10px;padding:14px 16px;display:flex}.checkout-main-grid{grid-template-columns:1.65fr 1fr;gap:20px;display:grid}.checkout-items-section,.checkout-pricing-section{flex-direction:column;gap:18px;display:flex}.checkout-section-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.checkout-section-header p,.checkout-empty-state p{color:#94a3b8;margin:6px 0 0}.checkout-empty-state{text-align:center;color:#cbd5e1;border:1px dashed #94a3b847;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;padding:48px 20px;display:flex}.checkout-student-groups{flex-direction:column;gap:16px;display:flex}.checkout-student-card{background:#0f172a52;border:1px solid #94a3b824;border-radius:18px;padding:18px}.checkout-student-heading{margin-bottom:14px}.checkout-student-heading h4,.checkout-item-row h5{color:#f8fafc;margin:0}.checkout-student-heading p,.checkout-item-row p{color:#94a3b8;margin:4px 0 0}.checkout-item-list{flex-direction:column;gap:12px;display:flex}.checkout-item-row{border-top:1px solid #94a3b81f;justify-content:space-between;align-items:flex-start;gap:16px;padding:14px 0;display:flex}.checkout-item-tag{color:#bfdbfe;background:#3b82f629;border-radius:999px;margin-top:10px;padding:6px 10px;font-size:.82rem;font-weight:600;display:inline-flex}.checkout-item-pricing{color:#f8fafc;align-items:center;gap:12px;font-weight:700;display:flex}.checkout-remove-btn{color:#f87171;cursor:pointer;background:#7f1d1d38;border:1px solid #ef444429;border-radius:12px;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.checkout-total-line,.checkout-grand-total{color:#cbd5e1;justify-content:space-between;align-items:center;gap:16px;display:flex}.checkout-total-line strong,.checkout-grand-total strong{color:#f8fafc}.checkout-admin-box{background:#78350f24;border:1px solid #f59e0b38;border-radius:18px;flex-direction:column;gap:14px;padding:18px;display:flex}.checkout-order-box{background:#0f172a47;border:1px solid #94a3b829;border-radius:16px;flex-direction:column;gap:10px;padding:16px 18px;display:flex}.checkout-order-box h4{color:#e2e8f0;margin:0}.checkout-order-list{flex-direction:column;gap:8px;display:flex}.checkout-order-item{color:#cbd5e1;justify-content:space-between;align-items:center;gap:12px;display:flex}.checkout-admin-box h4{color:#fef3c7;margin:0}.checkout-coupon-box{background:#1e40af1a;border:1px solid #3b82f633;border-radius:18px;flex-direction:column;gap:14px;padding:18px;display:flex}.checkout-coupon-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.checkout-coupon-header h4{color:#dbeafe;margin:0}.checkout-coupon-header p,.checkout-coupon-note{color:#bfdbfe;margin:6px 0 0}.checkout-coupon-badge{color:#dbeafe;background:#3b82f629;border-radius:999px;justify-content:center;align-items:center;padding:6px 12px;font-size:.82rem;font-weight:700;display:inline-flex}.checkout-coupon-row{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:14px;display:grid}.checkout-coupon-error{color:#fca5a5;margin:0}.checkout-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.checkout-select{color:#f8fafc;background:#0b1220;border:1px solid #94a3b82e;border-radius:14px;width:100%;min-height:48px;padding:0 14px}.checkout-grand-total{border-top:1px solid #94a3b829;padding-top:16px;font-size:1.05rem}@media (width<=1100px){.checkout-summary-grid,.checkout-main-grid,.checkout-admin-grid,.checkout-coupon-row{grid-template-columns:1fr}}.payments-page{isolation:isolate;flex-direction:column;gap:24px;display:flex;position:relative}.payments-toolbar{z-index:1;flex-wrap:nowrap;justify-content:flex-start;align-items:center;gap:12px;display:flex;position:relative;overflow-x:auto}.payments-filter-item{flex:0 0 190px;min-width:190px}.payments-filter-search{flex-basis:320px;min-width:320px}.payments-filter-date{flex-basis:170px;min-width:170px}.payments-filter-item .search-input-wrapper,.payments-filter-item .payments-method-select,.payments-filter-item .input-group,.payments-filter-item input{width:100%}.payments-count{color:var(--color-text-secondary);white-space:nowrap;margin-left:auto;font-size:14px;font-weight:500}.invoice-badge,.payment-type-badge,.payment-view-btn{cursor:pointer;border:none;border-radius:999px;justify-content:center;align-items:center;min-height:34px;padding:0 12px;font-size:12px;font-weight:700;text-decoration:none;transition:transform .2s,opacity .2s,background-color .2s;display:inline-flex}.invoice-badge:hover,.payment-type-badge:hover,.payment-view-btn:hover{opacity:.92;transform:translateY(-1px)}.payment-form{z-index:10001;flex-direction:column;gap:24px;display:flex;position:relative}.payment-form-grid{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.payment-form-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:14px;display:flex}.status-badge.active{color:#22c55e;background-color:#22c55e1f}.delete-modal-content{flex-direction:column;gap:24px;display:flex}.delete-modal-content p{color:var(--color-text);line-height:1.7}.installment-schedule-section{margin-top:24px}.installment-table-wrapper{width:100%;overflow-x:auto}.installment-table{border-collapse:collapse;width:100%;min-width:700px}.installment-table th,.installment-table td{text-align:left;border-bottom:1px solid var(--border-color);padding:14px}.installment-status-badge{text-transform:capitalize;border-radius:999px;justify-content:center;align-items:center;padding:6px 12px;font-size:.85rem;font-weight:600;display:inline-flex}.payments-summary-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.payment-stat-card{flex-direction:column;gap:8px;padding:18px 20px;transition:all .2s;display:flex}.payment-stat-card:hover{transform:translateY(-2px)}.payment-stat-card h4{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;margin:0;font-size:13px;font-weight:600}.payment-stat-card p{margin:0;font-size:22px;font-weight:700}.payment-stat-card .payment-stat-sub{color:var(--color-text-secondary);font-size:12px}.payment-stat-icon{color:#6366f1;background-color:#6366f11f;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.payment-stat-card.overdue .payment-stat-icon{color:#ef4444;background-color:#ef44441f}.payment-stat-card.overdue p{color:#ef4444}.overdue-panel{flex-direction:column;gap:14px;display:flex}.overdue-panel-header h3{margin:0 0 4px}.overdue-panel-header p{color:var(--color-text-secondary);margin:0;font-size:13px}.overdue-table-wrapper{width:100%;overflow-x:auto}.overdue-table{border-collapse:collapse;width:100%;min-width:650px}.overdue-table th,.overdue-table td{text-align:left;border-bottom:1px solid var(--border-color);padding:12px 14px;font-size:14px}.overdue-table th{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:600}.overdue-row:hover{background-color:#ffffff05}.payments-method-select{border:1px solid var(--border-color);background-color:var(--color-card);height:40px;color:var(--color-text);z-index:1;border-radius:10px;padding:0 14px;font-size:14px;position:relative}.invoice-badge{color:#4f46e5;background:#6366f124}.payment-type-badge{text-transform:capitalize}.payment-type-badge.installment{color:#2563eb;background:#3b82f61f}.payment-type-badge.full_payment{color:#16a34a;background:#22c55e1f}.payment-view-btn{color:#2563eb;background:#3b82f61f}.overdue-student-link,.payment-student-link{color:var(--color-primary);font-weight:600;text-decoration:none;transition:opacity .2s}.overdue-student-link:hover,.payment-student-link:hover{opacity:.9;text-decoration:underline}.modal-overlay{z-index:9999;position:fixed;inset:0}.modal-content{z-index:10000;position:relative}@media (width<=768px){.payments-toolbar{flex-flow:column wrap;align-items:stretch;overflow-x:visible}.payments-filter-item,.payments-filter-search{flex:100%;min-width:100%}.payments-count{margin-left:0}.payment-form-grid{grid-template-columns:1fr}.payment-form-actions{justify-content:stretch}.payment-form-actions button{flex:1}.payments-summary-grid{grid-template-columns:1fr}.payment-stat-card{padding:16px}}.invoice-preview-page{flex-direction:column;gap:24px;display:flex}.invoice-preview-loading{color:var(--color-text);padding:40px}.invoice-print-shell{justify-content:center;display:flex}.invoice-print-card{border:1px solid var(--color-border);width:100%;max-width:1080px;box-shadow:var(--shadow-lg,0 20px 60px #0f172a1f);background:radial-gradient(circle at top right, #3b82f614, transparent 28%), linear-gradient(180deg, var(--color-card), var(--color-card));border-radius:24px;flex-direction:column;gap:16px;padding:22px;display:flex}.invoice-document-header,.invoice-footer-bar{color:var(--color-text-secondary);justify-content:space-between;align-items:center;gap:16px;font-size:.88rem;display:flex}.invoice-document-header{border-bottom:1px dashed #94a3b83d;padding-bottom:6px}.invoice-brand-bar{border-bottom:1px solid #94a3b82e;justify-content:space-between;gap:24px;padding-bottom:14px;display:flex}.invoice-brand-bar h1{color:var(--color-text-primary);margin:0 0 4px;font-size:1.8rem}.invoice-brand-bar p{color:var(--color-text-secondary);margin:0;line-height:1.6}.invoice-brand-meta{text-align:right;flex-direction:column;align-items:flex-end;gap:8px;min-width:190px;display:flex}.invoice-brand-meta strong{color:var(--color-text-primary);font-size:1.2rem}.invoice-brand-meta p{color:var(--color-text-secondary)}.invoice-chip{color:var(--color-primary);background:#3b82f61f;border-radius:999px;align-items:center;gap:8px;padding:7px 12px;font-weight:700;display:inline-flex}.invoice-party-grid,.invoice-summary-grid,.invoice-two-column{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.invoice-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.invoice-block,.invoice-panel,.invoice-stat{border:1px solid var(--color-border);background:var(--color-surface-secondary,#94a3b80f);border-radius:18px;padding:16px}.invoice-block-title{color:var(--color-primary);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:8px;margin-bottom:8px;font-size:.86rem;font-weight:700;display:inline-flex}.invoice-block h3,.invoice-panel h3{color:var(--color-text-primary);margin:0 0 6px}.invoice-block p,.invoice-panel p{color:var(--color-text-secondary);margin:0}.invoice-stat{flex-direction:column;gap:6px;display:flex}.invoice-stat span{color:var(--color-text-secondary);font-size:.9rem}.invoice-stat strong{color:var(--color-text-primary);font-size:1.2rem}.invoice-stat.accent{background:#2563eb1a;border-color:#2563eb3d}.invoice-detail-list,.invoice-discount-list{flex-direction:column;gap:8px;display:flex}.invoice-detail-list div,.invoice-discount-row{border-bottom:1px solid var(--color-border);justify-content:space-between;gap:14px;padding-bottom:8px;display:flex}.invoice-detail-list div:last-child,.invoice-discount-row:last-child{border-bottom:none;padding-bottom:0}.invoice-detail-list span,.invoice-discount-row span,.invoice-muted{color:var(--color-text-secondary)}.invoice-detail-list strong,.invoice-discount-row strong{color:var(--color-text-primary)}.invoice-discount-row p{margin-top:4px}.invoice-notes-text{color:var(--color-text-secondary);white-space:pre-wrap;line-height:1.55}.invoice-signature-section{grid-template-columns:1.25fr 1fr;gap:12px;display:grid}.invoice-signature-card{border:1px solid var(--color-border);background:linear-gradient(180deg, var(--color-surface-secondary,#94a3b80f), #94a3b805);border-radius:18px;padding:16px}.invoice-signature-card h3{color:var(--color-text-primary);margin:0 0 8px}.invoice-signature-card p{color:var(--color-text-secondary);margin:0;line-height:1.6}.invoice-signature-lines{gap:12px;margin-top:16px;display:grid}.invoice-signature-line{gap:10px;display:grid}.invoice-signature-line span,.invoice-footer-tax{color:var(--color-text-secondary);font-size:.92rem}.invoice-signature-line div{border-bottom:2px solid #94a3b859;min-height:30px}.invoice-signature-card--meta{flex-direction:column;justify-content:space-between;display:flex}.invoice-footer-bar{direction:ltr;border-top:1px solid #94a3b82e;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;padding-top:12px;font-weight:600;display:grid}.invoice-footer-note{justify-self:start}.invoice-footer-address,.invoice-footer-contact-inline{white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.invoice-footer-address{justify-self:center}.invoice-footer-contact-inline{justify-self:end;gap:14px}.invoice-footer-contact-inline span{align-items:center;gap:6px;display:inline-flex}.invoice-footer-address svg,.invoice-footer-contact-inline svg{flex-shrink:0}html[dir=rtl] .invoice-footer-note,html[dir=rtl] .invoice-footer-address,html[dir=rtl] .invoice-footer-contact-inline{direction:rtl}@media (width<=900px){.invoice-brand-bar,.invoice-party-grid,.invoice-summary-grid,.invoice-two-column,.invoice-signature-section{flex-direction:column;grid-template-columns:1fr}.invoice-brand-meta{text-align:left;align-items:flex-start}.invoice-document-header{flex-direction:column;align-items:flex-start}.invoice-footer-bar{flex-direction:column;grid-template-columns:1fr;justify-items:start}.invoice-footer-address,.invoice-footer-contact-inline{white-space:normal;flex-wrap:wrap;justify-self:start}}@media print{@page{size:A4 portrait;margin:8mm}html,body{background:#fff!important;margin:0!important;padding:0!important}body *{visibility:hidden!important}.invoice-print-shell,.invoice-print-shell *{visibility:visible!important}.invoice-print-shell{background:#fff!important;width:100%!important;margin:0!important;padding:0!important;display:block!important;position:absolute!important;inset:0!important}.invoice-print-card{width:100%!important;max-width:none!important;box-shadow:none!important;break-inside:avoid!important;background:#fff!important;border:none!important;border-radius:0!important;flex-direction:column!important;gap:8px!important;margin:0!important;padding:12px!important;display:flex!important;position:static!important}.invoice-preview-page .page-header{display:none!important}.invoice-block,.invoice-panel,.invoice-stat,.invoice-brand-bar,.invoice-signature-card,.invoice-document-header,.invoice-footer-bar,.invoice-detail-list div,.invoice-discount-row{break-inside:avoid!important}.invoice-block,.invoice-panel,.invoice-block,.invoice-stat{color:#111827!important;box-shadow:none!important;background:#fff!important;border-color:#d1d5db!important}.invoice-preview-page,.dashboard-content,.dashboard-content-inner{background:#fff!important;margin:0!important;padding:0!important;display:block!important}.invoice-brand-bar{grid-template-columns:1.45fr 1fr!important;align-items:start!important;gap:12px!important;margin-bottom:4px!important;padding-bottom:10px!important;display:grid!important}.invoice-party-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;display:grid!important}.invoice-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;display:grid!important}.invoice-two-column{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;display:grid!important}.invoice-signature-section{grid-template-columns:1.2fr 1fr!important;gap:8px!important;display:grid!important}.invoice-brand-bar h1,.invoice-brand-meta strong,.invoice-block h3,.invoice-panel h3,.invoice-stat strong,.invoice-detail-list strong,.invoice-discount-row strong{color:#111827!important}.invoice-brand-bar p,.invoice-brand-meta p,.invoice-block p,.invoice-panel p,.invoice-stat span,.invoice-detail-list span,.invoice-discount-row span,.invoice-muted{color:#4b5563!important}.invoice-chip{color:#1d4ed8!important;background:#eff6ff!important;border:1px solid #bfdbfe!important}.invoice-block,.invoice-panel,.invoice-stat,.invoice-signature-card{border-radius:12px!important;padding:10px!important}.invoice-signature-card p,.invoice-footer-tax,.invoice-signature-line span{font-size:.72rem!important;line-height:1.22!important}.invoice-block-title{margin-bottom:5px!important;font-size:.68rem!important}.invoice-brand-bar h1{margin-bottom:2px!important;font-size:1.45rem!important}.invoice-brand-meta{gap:8px!important;min-width:0!important}.invoice-brand-meta strong{font-size:1.1rem!important}.invoice-brand-bar p,.invoice-brand-meta p,.invoice-block p,.invoice-panel p,.invoice-stat span,.invoice-detail-list span,.invoice-discount-row span,.invoice-muted,.invoice-notes-text{font-size:.76rem!important;line-height:1.32!important}.invoice-block h3,.invoice-panel h3{margin-bottom:4px!important;font-size:.98rem!important}.invoice-stat strong{font-size:1rem!important}.invoice-detail-list,.invoice-discount-list{gap:5px!important}.invoice-detail-list div,.invoice-discount-row{padding-bottom:5px!important}.invoice-document-header{margin-bottom:2px!important;padding-bottom:4px!important;font-size:.68rem!important}.invoice-signature-lines{gap:6px!important;margin-top:6px!important}.invoice-signature-line div{min-height:18px!important}.invoice-footer-bar{white-space:nowrap!important;grid-template-columns:minmax(0,1fr) auto auto!important;align-items:center!important;gap:10px!important;padding-top:6px!important;font-size:.62rem!important}.invoice-signature-section{margin-top:-2px!important}.invoice-signature-card--meta{gap:6px!important}.invoice-signature-card--meta p{line-height:1.18!important}.invoice-footer-address,.invoice-footer-contact-inline{gap:6px!important}.invoice-footer-contact-inline{gap:10px!important}.invoice-footer-contact-inline span{gap:4px!important}}.reports-page{flex-direction:column;gap:28px;display:flex}.reports-stats-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;display:grid}.report-stat-card{flex-direction:column;gap:22px;display:flex}.report-stat-top{justify-content:space-between;align-items:center;display:flex}.report-stat-icon{background-color:var(--color-primary);color:#fff;border-radius:18px;justify-content:center;align-items:center;width:58px;height:58px;font-size:24px;display:flex}.report-stat-growth{color:#22c55e;align-items:center;gap:6px;font-size:14px;font-weight:700;display:flex}.report-stat-info h3{color:var(--color-text);margin-bottom:8px;font-size:30px;font-weight:700}.report-stat-info p{color:var(--color-text-secondary);font-size:14px}.reports-grid{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.reports-chart-card,.reports-payments-card{flex-direction:column;gap:24px;display:flex}.reports-card-header h3{color:var(--color-text);margin-bottom:6px;font-size:20px;font-weight:700}.reports-card-header p{color:var(--color-text-secondary);font-size:14px}.chart-placeholder{border:2px dashed var(--color-border);height:320px;color:var(--color-text-secondary);background-color:#ffffff05;border-radius:18px;justify-content:center;align-items:center;font-size:15px;font-weight:600;display:flex}.recent-payments-list{flex-direction:column;gap:16px;display:flex}.recent-payment-item{border:1px solid var(--color-border);background-color:#ffffff05;border-radius:16px;justify-content:space-between;align-items:center;padding:18px;display:flex}.recent-payment-info h4{color:var(--color-text);margin-bottom:4px;font-size:15px;font-weight:700}.recent-payment-info p{color:var(--color-text-secondary);font-size:14px}.status-badge{border-radius:999px;justify-content:center;align-items:center;min-width:90px;height:34px;padding:0 14px;font-size:13px;font-weight:700;display:inline-flex}.status-badge.paid{color:#22c55e;background-color:#22c55e1f}.status-badge.pending{color:#eab308;background-color:#eab3081f}.status-badge.overdue{color:#ef4444;background-color:#ef44441f}@media (width<=992px){.reports-grid{grid-template-columns:1fr}}@media (width<=768px){.reports-stats-grid{grid-template-columns:1fr}.recent-payment-item{flex-direction:column;align-items:flex-start;gap:14px}}.reports-actions{justify-content:flex-end;margin-bottom:20px;display:flex}.reports-export-actions{gap:12px;display:flex}.attendance-page{flex-direction:column;gap:24px;display:flex}.attendance-stats-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;display:grid}.attendance-stat-card{align-items:center;gap:16px;display:flex}.attendance-stat-card svg{color:var(--color-primary);font-size:2rem}.attendance-stat-card h3{margin:0;font-size:1.8rem;font-weight:700}.attendance-stat-card p{color:var(--color-text-secondary);margin:4px 0 0;font-size:.95rem}.attendance-toolbar{flex-wrap:wrap;align-items:end;gap:16px;display:flex}.attendance-toolbar-sheet{align-items:stretch}.attendance-toolbar-search{flex:1.05;align-self:end;min-width:280px}.attendance-toolbar-search.search-input-wrapper{width:100%}.attendance-session-select{flex-direction:column;flex:1;gap:8px;min-width:220px;display:flex}.attendance-session-select-wide{flex:1.3;min-width:320px}.attendance-session-select label{color:var(--color-text-primary);align-items:center;gap:6px;font-size:.9rem;font-weight:600;display:flex}.attendance-session-select select,.attendance-session-select input{border:1px solid var(--color-border);background:var(--color-background);width:100%;height:46px;color:var(--color-text-primary);border-radius:12px;outline:none;padding:0 14px;font-size:.95rem;transition:all .2s}.attendance-session-select select:focus,.attendance-session-select input:focus{border-color:var(--color-primary)}.attendance-reset-btn{align-items:end;display:flex}.attendance-session-meta{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-top:20px;display:grid}.attendance-session-pill{background:#ffffff08;border:1px solid #94a3b81f;border-radius:16px;flex-direction:column;gap:6px;padding:16px;display:flex}.attendance-session-pill span{text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-secondary);font-size:12px}.attendance-session-pill strong{color:var(--color-text-primary);font-size:15px}.attendance-sheet-actions{flex-wrap:wrap;gap:12px;margin-top:18px;display:flex}.attendance-save-hint{margin-top:14px;font-size:.95rem}.attendance-save-hint span{min-height:24px;color:var(--color-text-secondary);align-items:center;display:inline-flex}.attendance-save-hint .pending{color:#f59e0b}.attendance-save-hint .saved{color:#22c55e}.attendance-table,.attendance-history{overflow-x:auto}.attendance-table table,.attendance-history table{border-collapse:collapse;width:100%}.attendance-table th,.attendance-table td,.attendance-history th,.attendance-history td{border-bottom:1px solid var(--color-border);text-align:left;padding:14px 16px}.attendance-table th,.attendance-history th{background:var(--color-hover);color:var(--color-text-primary);font-size:.9rem;font-weight:700}.attendance-student-cell{flex-direction:column;gap:4px;display:flex}.attendance-student-cell strong{color:var(--color-text-primary)}.attendance-student-cell span{color:var(--color-text-secondary);font-size:13px}.attendance-session-history-meta{flex-direction:column;gap:2px;margin-top:4px;display:flex}.attendance-session-history-meta strong,.attendance-session-history-meta span{color:var(--color-text-secondary);font-size:13px;font-weight:500}.attendance-status-group{flex-wrap:wrap;gap:10px;display:flex}.attendance-badge{text-transform:capitalize;border-radius:999px;justify-content:center;align-items:center;min-width:90px;padding:6px 12px;font-size:.85rem;font-weight:600;display:inline-flex}.attendance-badge.present{color:#16a34a;background:#22c55e1f}.attendance-badge.absent{color:#dc2626;background:#ef44441f}.attendance-badge.late{color:#d97706;background:#f59e0b1f}.attendance-badge.excused{color:#2563eb;background:#3b82f61f}.attendance-history-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.attendance-history-header h3{margin:0 0 6px}.attendance-history-header p{color:var(--color-text-secondary);margin:0}.attendance-empty{text-align:center;color:var(--color-text-secondary);padding:40px 20px;font-size:.95rem}.attendance-history-footer{color:var(--color-text-secondary);justify-content:space-between;align-items:center;gap:16px;padding:18px 4px 0;font-size:.92rem;display:flex}.attendance-history-pagination{align-items:center;gap:12px;display:flex}.attendance-history-modal{flex-direction:column;gap:18px;display:flex}.attendance-history-modal-info{flex-direction:column;gap:6px;display:flex}.attendance-history-modal-info strong{color:var(--color-text-primary);font-size:1rem}.attendance-history-modal-info span{color:var(--color-text-secondary);font-size:.95rem}.attendance-history-modal-actions{justify-content:flex-end;gap:12px;display:flex}@media (width<=768px){.attendance-toolbar{flex-direction:column;align-items:stretch}.attendance-session-select,.attendance-session-select-wide,.attendance-toolbar-search{width:100%;min-width:0}.attendance-status-group{flex-direction:column}.attendance-stat-card{align-items:flex-start}.attendance-sheet-actions{flex-direction:column}.attendance-history-footer,.attendance-history-pagination,.attendance-history-modal-actions{flex-direction:column;align-items:stretch}}.hall-schedule-page{flex-direction:column;gap:24px;display:flex}.hall-schedule-toolbar,.hall-schedule-header{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:20px;display:flex}.hall-schedule-select{flex-direction:column;gap:8px;min-width:280px;display:flex}.hall-schedule-select label{color:var(--color-text);font-size:14px;font-weight:600}.hall-schedule-select select{border:1px solid var(--color-border);background:var(--color-card);height:46px;color:var(--color-text);border-radius:12px;outline:none;padding:0 14px}.hall-schedule-header h2{margin:0;font-size:24px}.hall-schedule-header-card{display:flex}.hall-schedule-header p{color:var(--color-text-secondary);margin-top:6px}.hall-schedule-meta{flex-wrap:wrap;align-items:stretch;gap:14px;display:flex}.hall-schedule-meta-item{flex-direction:column;gap:4px;display:flex}.hall-schedule-meta-item span{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.06em;font-size:12px}.hall-schedule-meta-item strong{color:var(--color-text);font-size:14px}.hall-schedule-status{color:#22c55e;text-transform:capitalize;background:#22c55e1f;border-radius:999px;padding:8px 16px;font-size:13px;font-weight:700}.hall-schedule-status-inactive{color:#cbd5e1;background:#94a3b824}.hall-schedule-status-under-maintenance{color:#f59e0b;background:#f59e0b24}.hall-schedule-filter{min-width:220px}.hall-schedule-stats-grid,.hall-schedule-days-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;display:grid}.hall-schedule-stat-card{align-items:center;gap:16px;display:flex}.hall-schedule-stat-card svg{color:var(--color-primary);font-size:28px}.hall-schedule-stat-card h3{margin:0;font-size:24px}.hall-schedule-stat-card p{color:var(--color-text-secondary);margin-top:4px}.hall-schedule-warning-box{flex-direction:column;gap:14px;display:flex}.hall-schedule-warning-title{color:#f59e0b;align-items:center;gap:10px;font-weight:700;display:flex}.hall-schedule-warning-item{color:#f59e0b;background:#f59e0b14;border-radius:12px;padding:14px}.hall-day-column,.hall-day-sessions{flex-direction:column;gap:14px;display:flex}.hall-day-header{text-transform:capitalize;border-bottom:1px solid var(--color-border);padding-bottom:12px;font-weight:700}.hall-session-card{border:1px solid var(--color-border);background:var(--color-background);border-radius:16px;flex-direction:column;gap:10px;padding:16px;display:flex}.hall-session-top,.hall-session-time,.hall-session-date,.hall-session-teacher,.hall-session-meta-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.hall-session-time,.hall-session-date,.hall-session-teacher,.hall-session-meta-row{color:var(--color-text-secondary);font-size:13px}.hall-session-time svg,.hall-session-date svg,.hall-session-teacher svg{flex-shrink:0}.hall-session-course{font-weight:700}.hall-session-time span{color:var(--color-primary);margin-left:auto;font-weight:600}.hall-session-status{text-transform:capitalize;border-radius:999px;width:fit-content;padding:6px 12px;font-size:12px;font-weight:700}.hall-session-status.scheduled{color:#3b82f6;background:#3b82f61f}.hall-session-status.completed{color:#22c55e;background:#22c55e1f}.hall-session-status.cancelled{color:#ef4444;background:#ef44441f}.hall-day-empty,.hall-schedule-empty{text-align:center;color:var(--color-text-secondary);border:1px dashed var(--color-border);border-radius:14px;padding:24px}@media (width<=768px){.hall-schedule-toolbar,.hall-schedule-header{flex-direction:column;align-items:stretch}.hall-session-top,.hall-session-time,.hall-session-date,.hall-session-teacher,.hall-session-meta-row{flex-direction:column;align-items:flex-start}}.master-timetable-page{flex-direction:column;gap:24px;display:flex}.master-timetable-stats-grid,.master-timetable-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;display:grid}.master-timetable-stat-card{align-items:center;gap:16px;display:flex}.master-timetable-stat-card svg{color:var(--color-primary);font-size:28px}.master-timetable-stat-card h3{margin:0;font-size:24px}.master-timetable-stat-card p{color:var(--color-text-secondary);margin-top:4px}.master-timetable-toolbar{flex-wrap:wrap;align-items:end;gap:16px;display:flex}.master-timetable-filter{flex-direction:column;gap:8px;min-width:180px;display:flex}.master-timetable-filter label{font-size:14px;font-weight:600}.master-timetable-filter select,.master-timetable-filter input[type=date],.master-timetable-filter input[type=month]{border:1px solid var(--color-border);background:var(--color-card);height:44px;color:var(--color-text);border-radius:12px;padding:0 12px;font-size:14px}.master-timetable-date-range{align-items:center;gap:8px;display:flex}.master-timetable-date-range input[type=date]{border:1px solid var(--color-border);background:var(--color-card);height:44px;color:var(--color-text);border-radius:12px;flex:1;padding:0 12px;font-size:14px}.master-timetable-date-range span{color:var(--color-text-secondary);font-weight:600}.master-timetable-reset{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:12px;height:44px;padding:0 18px;font-weight:600}.master-timetable-warning-box{flex-direction:column;gap:14px;display:flex}.master-timetable-warning-title{color:#f59e0b;align-items:center;gap:10px;font-weight:700;display:flex}.master-timetable-warning-item{color:#f59e0b;background:#f59e0b14;border-radius:12px;padding:14px;line-height:1.6}.master-timetable-day{flex-direction:column;gap:18px;display:flex}.master-timetable-day-header{text-transform:capitalize;border-bottom:1px solid var(--color-border);padding-bottom:12px;font-size:18px;font-weight:700}.master-timetable-day-body{flex-direction:column;gap:14px;display:flex}.master-session-card{border:1px solid var(--color-border);background:var(--color-background);border-radius:16px;flex-direction:column;gap:14px;padding:16px;display:flex}.master-session-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.master-session-top h4{margin:0;font-size:16px}.master-session-status{text-transform:capitalize;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:700}.master-session-status.scheduled{color:#3b82f6;background:#3b82f61f}.master-session-status.completed{color:#22c55e;background:#22c55e1f}.master-session-status.cancelled{color:#ef4444;background:#ef44441f}.master-session-info{flex-direction:column;gap:10px;display:flex}.master-session-info span{color:var(--color-text-secondary);align-items:center;gap:8px;font-size:14px;display:flex}.master-timetable-empty,.master-timetable-no-results{text-align:center;border:1px dashed var(--color-border);color:var(--color-text-secondary);border-radius:14px;padding:24px}@media (width<=768px){.master-timetable-toolbar{flex-direction:column;align-items:stretch}.master-timetable-filter{width:100%}}.master-session-card.draggable{cursor:grab;-webkit-user-select:none;user-select:none;transition:transform .1s,box-shadow .15s}.master-session-card.draggable:active{cursor:grabbing;transform:scale(.98)}.master-timetable-day{border:2px dashed #0000;border-radius:12px;transition:background-color .15s,border-color .15s}.master-timetable-day.drag-over{background-color:#6366f114;border-color:#6366f1}.master-timetable-moving{color:#4f46e5;text-align:center;background-color:#6366f11f;border-radius:8px;padding:8px 14px;font-size:13px;font-weight:600}.activity-page{flex-direction:column;gap:24px;display:flex}.activity-toolbar{justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;display:flex}.activity-filter{border:1px solid var(--color-border);background:var(--color-card);min-width:180px;color:var(--color-text);border-radius:12px;padding:10px 14px}.activity-timeline{flex-direction:column;display:flex}.activity-empty{text-align:center;color:var(--color-text-light);padding:60px 20px;font-size:.95rem}@media (width<=768px){.activity-toolbar{flex-direction:column;align-items:stretch}.activity-filter{width:100%}}.auditlogs-page{flex-direction:column;gap:24px;display:flex}.auditlogs-toolbar{justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;display:flex}.auditlogs-filter{border:1px solid var(--color-border);background:var(--color-card);min-width:140px;color:var(--color-text);border-radius:10px;padding:10px 14px}.auditlogs-table-wrapper{overflow-x:auto}.auditlogs-table{border-collapse:collapse;width:100%}.auditlogs-table th{text-align:left;color:var(--color-text-light);border-bottom:1px solid var(--color-border);padding:14px;font-size:.9rem}.auditlogs-table td{border-bottom:1px solid var(--color-border);padding:16px 14px;font-size:.95rem}.auditlogs-status{text-transform:capitalize;border-radius:999px;padding:6px 12px;font-size:.8rem;font-weight:600}.auditlogs-status.success{color:#22c55e;background:#22c55e1f}.auditlogs-status.failed{color:#ef4444;background:#ef44441f}.auditlogs-empty{text-align:center;color:var(--color-text-light);padding:40px 20px}@media (width<=768px){.auditlogs-toolbar{flex-direction:column;align-items:stretch}.auditlogs-filter{width:100%}}.auditlogs-summary{color:var(--text-secondary);justify-content:space-between;align-items:center;margin:1rem 0;font-size:.95rem;display:flex}.auditlogs-pagination{border-top:1px solid var(--border-color);justify-content:center;align-items:center;gap:1rem;margin-top:1.5rem;padding-top:1rem;display:flex}.auditlogs-pagination span{color:var(--text-primary);font-weight:600}.action-badge{text-transform:uppercase;letter-spacing:.4px;border-radius:999px;justify-content:center;align-items:center;padding:6px 12px;font-size:.78rem;font-weight:700;display:inline-flex}.action-badge.create{color:#22c55e;background:#22c55e1f}.action-badge.update{color:#3b82f6;background:#3b82f61f}.action-badge.delete{color:#ef4444;background:#ef44441f}.action-badge.login{color:#a855f7;background:#a855f71f}.action-badge.other{color:#94a3b8;background:#94a3b81f}.entity-badge{border-radius:999px;justify-content:center;align-items:center;padding:6px 12px;font-size:.78rem;font-weight:600;display:inline-flex}.entity-badge.payment{color:#22c55e;background:#22c55e1f}.entity-badge.enrollment{color:#3b82f6;background:#3b82f61f}.entity-badge.attendance{color:#f59e0b;background:#f59e0b1f}.entity-badge.session{color:#a855f7;background:#a855f71f}.entity-badge.student{color:#0ea5e9;background:#0ea5e91f}.entity-badge.other{color:#94a3b8;background:#94a3b81f}:root{--db-bg-primary:#fff;--db-bg-secondary:#f9fafb;--db-text-primary:#1f2937;--db-text-secondary:#6b7280;--db-border-color:#0000001a;--db-header-bg:linear-gradient(90deg, #2563eb 0%, #3b82f6 100%);--db-header-border:#1e40af;--db-card-bg:linear-gradient(135deg, #f3f4f6 0%, #e5e7eb 100%);--db-card-border:#00000014;--db-card-shadow:0 4px 12px #00000014;--db-card-hover-shadow:0 8px 24px #3b82f61a;--db-active-bg:linear-gradient(135deg, #dcfce7 0%, #bbf7d0 20%, #f3f4f6 100%);--db-active-border:#16a34a;--db-active-shadow:0 0 15px #16a34a26;--db-badge-bg:linear-gradient(90deg, #fbbf24 0%, #f59e0b 100%);--db-label-color:#6b7280;--db-value-color:#1f2937;--db-time-color:#1e40af}html.dark{--db-bg-primary:#0f1419;--db-bg-secondary:#1a202c;--db-text-primary:#f1f5f9;--db-text-secondary:#cbd5e1;--db-border-color:#ffffff1a;--db-header-bg:linear-gradient(90deg, #1e40af 0%, #3b82f6 100%);--db-header-border:#60a5fa;--db-card-bg:linear-gradient(135deg, #1e293b 0%, #334155 100%);--db-card-border:#94a3b833;--db-card-shadow:0 4px 12px #0000004d;--db-card-hover-shadow:0 8px 24px #3b82f633;--db-active-bg:linear-gradient(135deg, #1e3a1f 0%, #22c55e 20%, #1e293b 100%);--db-active-border:#22c55e;--db-active-shadow:0 0 15px #22c55e40;--db-badge-bg:linear-gradient(90deg, #f59e0b 0%, #d97706 100%);--db-label-color:#94a3b8;--db-value-color:#e2e8f0;--db-time-color:#60a5fa}.display-board-container{background:var(--db-bg-primary);height:auto;color:var(--db-text-primary);flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;transition:background-color .3s,color .3s;display:flex}.display-board-header{background:var(--db-header-bg);border-bottom:3px solid var(--db-header-border);padding:20px 30px}.header-content{max-width:1400px;margin:0 auto}.header-title{letter-spacing:.5px;color:#fff;margin:0;font-size:28px;font-weight:700}.header-datetime{opacity:.9;color:#fff;justify-content:flex-start;gap:30px;margin-top:10px;font-size:14px;font-weight:500;display:flex}.current-date{display:block}.current-time{min-width:100px;font-family:Monaco,Courier New,monospace;font-weight:600;display:block}.display-board-content{background:var(--db-bg-primary);flex:1;padding:20px 30px;overflow-y:auto}.sessions-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;max-width:1400px;margin:0 auto;display:grid}.session-card{background:var(--db-card-bg);border:1px solid var(--db-card-border);box-shadow:var(--db-card-shadow);border-radius:12px;padding:18px;transition:all .3s;position:relative;overflow:hidden}.session-card:hover{box-shadow:var(--db-card-hover-shadow);border-color:#3b82f64d;transform:translateY(-4px)}.session-card.active{background:var(--db-active-bg);border-color:var(--db-active-border);box-shadow:var(--db-active-shadow)}.active-indicator{color:#fff;background:#ef4444;border-radius:50%;justify-content:center;align-items:center;width:70px;height:70px;font-size:11px;font-weight:700;animation:2s infinite pulse;display:flex;position:absolute;top:-25px;right:-25px;box-shadow:0 2px 8px #ef44444d}@keyframes pulse{0%,to{box-shadow:0 2px 8px #ef44444d}50%{box-shadow:0 2px 16px #ef444480}}.session-time{border-bottom:1px solid var(--db-border-color);margin-bottom:12px;padding-bottom:12px}.time-display{color:var(--db-time-color);font-family:Monaco,Courier New,monospace;font-size:16px;font-weight:700;display:block}.session-course{margin-bottom:14px}.session-course h3{color:var(--db-text-primary);word-wrap:break-word;margin:0;font-size:16px;font-weight:700;line-height:1.3}.session-details{flex-direction:column;gap:10px;display:flex}.detail-row{border-bottom:1px solid var(--db-border-color);justify-content:space-between;align-items:center;padding:8px 0;font-size:13px;display:flex}.detail-row:last-child{border-bottom:none}.detail-label{color:var(--db-label-color);align-items:center;gap:6px;min-width:90px;font-weight:600;display:flex}.detail-value{color:var(--db-value-color);text-align:right;flex:1;font-weight:500}.session-badge{background:var(--db-badge-bg);text-align:center;color:#fff;border-radius:6px;margin-top:12px;padding:6px 12px;font-size:12px;font-weight:600;animation:1.5s infinite blink}@keyframes blink{0%,49%{opacity:1}50%,to{opacity:.7}}.loading-message,.empty-message{height:200px;color:var(--db-text-secondary);text-align:center;justify-content:center;align-items:center;font-size:16px;display:flex}.display-board-footer{text-align:center;border-top:1px solid var(--db-border-color);color:var(--db-text-secondary);background:0 0;padding:15px 30px;font-size:12px}.display-board-footer p{margin:0}@media (width<=1024px){.display-board-header{padding:16px 20px}.header-title{font-size:24px}.header-datetime{gap:20px;font-size:13px}.sessions-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}.session-card{padding:16px}.session-course h3,.time-display{font-size:15px}}@media (width<=768px){.display-board-header{padding:14px 16px}.header-title{font-size:20px}.header-datetime{flex-direction:column;gap:6px;font-size:12px}.sessions-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;padding:16px}.session-card{padding:14px}.session-time{margin-bottom:10px;padding-bottom:10px}.session-course h3{font-size:14px}.detail-row{padding:6px 0;font-size:12px}.detail-label{min-width:70px}.session-badge{margin-top:10px;padding:5px 10px;font-size:11px}}.database-page{flex-direction:column;gap:24px;display:flex}.db-toast{z-index:9999;border-radius:12px;align-items:center;gap:10px;padding:14px 20px;font-size:14px;font-weight:500;animation:.3s slideIn;display:flex;position:fixed;top:24px;right:24px;box-shadow:0 4px 20px #00000026}.db-toast--success{background:var(--color-success,#22c55e);color:#fff}.db-toast--error{background:var(--color-danger,#ef4444);color:#fff}@keyframes slideIn{0%{opacity:0;transform:translate(100px)}to{opacity:1;transform:translate(0)}}.db-actions{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (width<=768px){.db-actions{grid-template-columns:1fr}}.db-action-card{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.db-action-icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:22px;display:flex}.db-action-icon--green{color:#22c55e;background:#22c55e1f}.db-action-icon--orange{color:#f97316;background:#f973161f}.db-action-info{flex:1;min-width:0}.db-action-info h3{color:var(--color-text);margin:0 0 4px;font-size:15px;font-weight:600}.db-action-info p{color:var(--color-text-secondary);margin:0;font-size:13px}.db-section-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.db-section-title{color:var(--color-text);align-items:center;gap:10px;display:flex}.db-section-title svg{color:var(--color-primary);font-size:18px}.db-section-title h3{margin:0;font-size:16px;font-weight:600}.db-badge{background:var(--color-primary-light,#6366f11a);color:var(--color-primary);border-radius:20px;padding:4px 10px;font-size:12px;font-weight:500}.db-table-wrapper{overflow-x:auto}.db-table{border-collapse:collapse;width:100%;font-size:14px}.db-table th{text-align:left;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);border-bottom:1px solid var(--color-border);padding:10px 14px;font-size:12px;font-weight:600}.db-table td{color:var(--color-text);border-bottom:1px solid var(--color-border);vertical-align:middle;padding:14px}.db-table tr:last-child td{border-bottom:none}.db-table tbody tr:hover{background:var(--color-hover,#00000008)}.db-mono{font-family:monospace;font-size:13px}.db-chip{border-radius:20px;padding:3px 10px;font-size:12px;font-weight:500;display:inline-block}.db-chip--blue{color:#3b82f6;background:#3b82f61f}.db-chip--green{color:#22c55e;background:#22c55e1f}.db-chip--orange{color:#f97316;background:#f973161f}.db-chip--purple{color:#a855f7;background:#a855f71f}.db-chip--gray{color:#6b7280;background:#6b72801f}.db-restore-btn{border:1px solid var(--color-border);color:var(--color-text);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:500;transition:all .2s;display:inline-flex}.db-restore-btn:hover:not(:disabled){background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.db-restore-btn:disabled{opacity:.5;cursor:not-allowed}.db-loading,.db-empty{text-align:center;color:var(--color-text-secondary);padding:40px;font-size:14px}:root{--color-primary:#2563eb;--color-primary-hover:#1d4ed8;--color-background:#f8fafc;--color-card:#fff;--color-sidebar:#fff;--color-text:#0f172a;--color-text-secondary:#64748b;--color-border:#e2e8f0;--color-success:#10b981;--color-warning:#f59e0b;--color-danger:#ef4444;--color-info:#06b6d4;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 6px #00000014;--shadow-lg:0 10px 15px #0000001a;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--transition-fast:.2s ease;--transition-normal:.3s ease}.dark{--color-background:#020617;--color-card:#0f172a;--color-sidebar:#020617;--color-text:#f8fafc;--color-text-secondary:#94a3b8;--color-border:#1e293b}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{min-height:100%}body{background-color:var(--color-background);color:var(--color-text);transition:background-color var(--transition-normal), color var(--transition-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,Cairo,sans-serif}html[dir=rtl] body{font-family:Cairo,sans-serif}a{color:inherit;text-decoration:none}button{cursor:pointer;transition:all var(--transition-fast);border:none;outline:none}input,select,textarea,button{font:inherit}img{max-width:100%;display:block}ul,ol{list-style:none}
