@import"https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700;800&display=swap";.role-switch-btn[data-v-a41fd7c4]{margin:16px 0 10px;width:100%;border:1px solid #b7d8c6;background:#edf7f0;color:#1b6b41;border-radius:10px;padding:11px 12px;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;font:inherit;font-size:.85rem;font-weight:600;border:none}.role-switch-btn[data-v-a41fd7c4]:hover:not(:disabled){background:#dcefe2}.role-switch-btn[data-v-a41fd7c4]:disabled{opacity:.65;cursor:wait}:root{--ion-color-primary: #0054e9;--ion-color-primary-rgb: 0, 84, 233;--ion-color-primary-contrast: #fff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #004acd;--ion-color-primary-tint: #1a65eb;--ion-color-secondary: #0163aa;--ion-color-secondary-rgb: 1, 99, 170;--ion-color-secondary-contrast: #fff;--ion-color-secondary-contrast-rgb: 255, 255, 255;--ion-color-secondary-shade: #015796;--ion-color-secondary-tint: #1a73b3;--ion-color-tertiary: #6030ff;--ion-color-tertiary-rgb: 96, 48, 255;--ion-color-tertiary-contrast: #fff;--ion-color-tertiary-contrast-rgb: 255, 255, 255;--ion-color-tertiary-shade: #542ae0;--ion-color-tertiary-tint: #7045ff;--ion-color-success: #2dd55b;--ion-color-success-rgb: 45, 213, 91;--ion-color-success-contrast: #000;--ion-color-success-contrast-rgb: 0, 0, 0;--ion-color-success-shade: #28bb50;--ion-color-success-tint: #42d96b;--ion-color-warning: #ffc409;--ion-color-warning-rgb: 255, 196, 9;--ion-color-warning-contrast: #000;--ion-color-warning-contrast-rgb: 0, 0, 0;--ion-color-warning-shade: #e0ac08;--ion-color-warning-tint: #ffca22;--ion-color-danger: #c5000f;--ion-color-danger-rgb: 197, 0, 15;--ion-color-danger-contrast: #fff;--ion-color-danger-contrast-rgb: 255, 255, 255;--ion-color-danger-shade: #ad000d;--ion-color-danger-tint: #cb1a27;--ion-color-light: #f4f5f8;--ion-color-light-rgb: 244, 245, 248;--ion-color-light-contrast: #000;--ion-color-light-contrast-rgb: 0, 0, 0;--ion-color-light-shade: #d7d8da;--ion-color-light-tint: #f5f6f9;--ion-color-medium: #636469;--ion-color-medium-rgb: 99, 100, 105;--ion-color-medium-contrast: #fff;--ion-color-medium-contrast-rgb: 255, 255, 255;--ion-color-medium-shade: #57585c;--ion-color-medium-tint: #737478;--ion-color-dark: #222428;--ion-color-dark-rgb: 34, 36, 40;--ion-color-dark-contrast: #fff;--ion-color-dark-contrast-rgb: 255, 255, 255;--ion-color-dark-shade: #1e2023;--ion-color-dark-tint: #383a3e}html.ios{--ion-default-font: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Roboto", sans-serif}html.md{--ion-default-font: "Roboto", "Helvetica Neue", sans-serif}html{--ion-dynamic-font: -apple-system-body;--ion-font-family: var(--ion-default-font)}body{background:var(--ion-background-color);color:var(--ion-text-color)}body.backdrop-no-scroll{overflow:hidden}html.ios ion-modal.modal-card ion-header ion-toolbar:first-of-type,html.ios ion-modal.modal-sheet ion-header ion-toolbar:first-of-type,html.ios ion-modal ion-footer ion-toolbar:first-of-type,html.ios ion-footer.modal-footer-moving ion-toolbar:first-of-type{padding-top:6px}html.ios ion-modal.modal-card ion-header ion-toolbar:last-of-type,html.ios ion-modal.modal-sheet ion-header ion-toolbar:last-of-type{padding-bottom:6px}html.ios ion-modal ion-toolbar,html.ios .modal-footer-moving ion-toolbar{padding-right:calc(var(--ion-safe-area-right) + 8px);padding-left:calc(var(--ion-safe-area-left) + 8px)}@media screen and (min-width: 768px){html.ios ion-modal.modal-card:first-of-type{--backdrop-opacity: .18}}ion-modal.modal-default.show-modal~ion-modal.modal-default{--backdrop-opacity: 0;--box-shadow: none}html.ios ion-modal.modal-card .ion-page{border-top-left-radius:var(--border-radius)}.ion-color-primary{--ion-color-base: var(--ion-color-primary, #0054e9) !important;--ion-color-base-rgb: var(--ion-color-primary-rgb, 0, 84, 233) !important;--ion-color-contrast: var(--ion-color-primary-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-primary-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-primary-shade, #004acd) !important;--ion-color-tint: var(--ion-color-primary-tint, #1a65eb) !important}.ion-color-secondary{--ion-color-base: var(--ion-color-secondary, #0163aa) !important;--ion-color-base-rgb: var(--ion-color-secondary-rgb, 1, 99, 170) !important;--ion-color-contrast: var(--ion-color-secondary-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-secondary-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-secondary-shade, #015796) !important;--ion-color-tint: var(--ion-color-secondary-tint, #1a73b3) !important}.ion-color-tertiary{--ion-color-base: var(--ion-color-tertiary, #6030ff) !important;--ion-color-base-rgb: var(--ion-color-tertiary-rgb, 96, 48, 255) !important;--ion-color-contrast: var(--ion-color-tertiary-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-tertiary-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-tertiary-shade, #542ae0) !important;--ion-color-tint: var(--ion-color-tertiary-tint, #7045ff) !important}.ion-color-success{--ion-color-base: var(--ion-color-success, #2dd55b) !important;--ion-color-base-rgb: var(--ion-color-success-rgb, 45, 213, 91) !important;--ion-color-contrast: var(--ion-color-success-contrast, #000) !important;--ion-color-contrast-rgb: var(--ion-color-success-contrast-rgb, 0, 0, 0) !important;--ion-color-shade: var(--ion-color-success-shade, #28bb50) !important;--ion-color-tint: var(--ion-color-success-tint, #42d96b) !important}.ion-color-warning{--ion-color-base: var(--ion-color-warning, #ffc409) !important;--ion-color-base-rgb: var(--ion-color-warning-rgb, 255, 196, 9) !important;--ion-color-contrast: var(--ion-color-warning-contrast, #000) !important;--ion-color-contrast-rgb: var(--ion-color-warning-contrast-rgb, 0, 0, 0) !important;--ion-color-shade: var(--ion-color-warning-shade, #e0ac08) !important;--ion-color-tint: var(--ion-color-warning-tint, #ffca22) !important}.ion-color-danger{--ion-color-base: var(--ion-color-danger, #c5000f) !important;--ion-color-base-rgb: var(--ion-color-danger-rgb, 197, 0, 15) !important;--ion-color-contrast: var(--ion-color-danger-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-danger-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-danger-shade, #ad000d) !important;--ion-color-tint: var(--ion-color-danger-tint, #cb1a27) !important}.ion-color-light{--ion-color-base: var(--ion-color-light, #f4f5f8) !important;--ion-color-base-rgb: var(--ion-color-light-rgb, 244, 245, 248) !important;--ion-color-contrast: var(--ion-color-light-contrast, #000) !important;--ion-color-contrast-rgb: var(--ion-color-light-contrast-rgb, 0, 0, 0) !important;--ion-color-shade: var(--ion-color-light-shade, #d7d8da) !important;--ion-color-tint: var(--ion-color-light-tint, #f5f6f9) !important}.ion-color-medium{--ion-color-base: var(--ion-color-medium, #636469) !important;--ion-color-base-rgb: var(--ion-color-medium-rgb, 99, 100, 105) !important;--ion-color-contrast: var(--ion-color-medium-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-medium-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-medium-shade, #57585c) !important;--ion-color-tint: var(--ion-color-medium-tint, #737478) !important}.ion-color-dark{--ion-color-base: var(--ion-color-dark, #222428) !important;--ion-color-base-rgb: var(--ion-color-dark-rgb, 34, 36, 40) !important;--ion-color-contrast: var(--ion-color-dark-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-dark-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-dark-shade, #1e2023) !important;--ion-color-tint: var(--ion-color-dark-tint, #383a3e) !important}.ion-page{left:0;right:0;top:0;bottom:0;display:flex;position:absolute;flex-direction:column;justify-content:space-between;contain:layout size style;z-index:0}.ion-page.ion-page-overlay-passthrough{pointer-events:none}ion-modal>.ion-page{position:relative;contain:layout style;height:100%}.split-pane-visible>.ion-page.split-pane-main{position:relative}ion-route,ion-route-redirect,ion-router,ion-select-option,ion-nav-controller,ion-menu-controller,ion-action-sheet-controller,ion-alert-controller,ion-loading-controller,ion-modal-controller,ion-picker-controller,ion-popover-controller,ion-toast-controller,.ion-page-hidden{display:none!important}.ion-page-invisible{opacity:0}.can-go-back>ion-header ion-back-button{display:block}html.plt-ios.plt-hybrid,html.plt-ios.plt-pwa{--ion-statusbar-padding: 20px}@supports (padding-top: 20px){html{--ion-safe-area-top: var(--ion-statusbar-padding)}}@supports (padding-top: env(safe-area-inset-top)){html{--ion-safe-area-top: var(--safe-area-inset-top, env(safe-area-inset-top));--ion-safe-area-bottom: var(--safe-area-inset-bottom, env(safe-area-inset-bottom));--ion-safe-area-left: var(--safe-area-inset-left, env(safe-area-inset-left));--ion-safe-area-right: var(--safe-area-inset-right, env(safe-area-inset-right))}}ion-card.ion-color .ion-inherit-color,ion-card-header.ion-color .ion-inherit-color{color:inherit}.menu-content{transform:translateZ(0)}.menu-content-open{cursor:pointer;touch-action:manipulation;pointer-events:none;overflow-y:hidden}.menu-content-open ion-content{--overflow: hidden}.menu-content-open .ion-content-scroll-host{overflow:hidden}.ios .menu-content-reveal{box-shadow:-8px 0 42px #00000014}[dir=rtl].ios .menu-content-reveal{box-shadow:8px 0 42px #00000014}.md .menu-content-reveal,.md .menu-content-push{box-shadow:4px 0 16px #0000002e}ion-accordion-group.accordion-group-expand-inset>ion-accordion:first-of-type{border-top-left-radius:8px;border-top-right-radius:8px}ion-accordion-group.accordion-group-expand-inset>ion-accordion:last-of-type{border-bottom-left-radius:8px;border-bottom-right-radius:8px}ion-accordion-group>ion-accordion:last-of-type ion-item[slot=header]{--border-width: 0px}ion-accordion.accordion-animated>[slot=header] .ion-accordion-toggle-icon{transition:.3s transform cubic-bezier(.25,.8,.5,1)}@media (prefers-reduced-motion: reduce){ion-accordion .ion-accordion-toggle-icon{transition:none!important}}ion-accordion.accordion-expanding>[slot=header] .ion-accordion-toggle-icon,ion-accordion.accordion-expanded>[slot=header] .ion-accordion-toggle-icon{transform:rotate(180deg)}ion-accordion-group.accordion-group-expand-inset.md>ion-accordion.accordion-previous ion-item[slot=header]{--border-width: 0px;--inner-border-width: 0px}ion-accordion-group.accordion-group-expand-inset.md>ion-accordion.accordion-expanding:first-of-type,ion-accordion-group.accordion-group-expand-inset.md>ion-accordion.accordion-expanded:first-of-type{margin-top:0}ion-input input::-webkit-date-and-time-value{text-align:start}.ion-datetime-button-overlay{--width: fit-content;--height: fit-content}.ion-datetime-button-overlay ion-datetime.datetime-grid{width:320px;min-height:320px}[ion-last-focus],header[tabindex="-1"]:focus,[role=banner][tabindex="-1"]:focus,main[tabindex="-1"]:focus,[role=main][tabindex="-1"]:focus,h1[tabindex="-1"]:focus,[role=heading][aria-level="1"][tabindex="-1"]:focus{outline:none}.popover-viewport:has(>ion-content){overflow:hidden}@supports not selector(:has(> ion-content)){.popover-viewport{overflow:hidden}}audio,canvas,progress,video{vertical-align:baseline}audio:not([controls]){display:none;height:0}b,strong{font-weight:700}img{max-width:100%}hr{height:1px;border-width:0;box-sizing:content-box}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}label,input,select,textarea{font-family:inherit;line-height:normal}textarea{overflow:auto;height:auto;font:inherit;color:inherit}textarea::placeholder{padding-left:2px}form,input,optgroup,select{margin:0;font:inherit;color:inherit}html input[type=button],input[type=reset],input[type=submit]{cursor:pointer;-webkit-appearance:button}a,a div,a span,a ion-icon,a ion-label,button,button div,button span,button ion-icon,button ion-label,.ion-tappable,[tappable],[tappable] div,[tappable] span,[tappable] ion-icon,[tappable] ion-label,input,textarea{touch-action:manipulation}a ion-label,button ion-label{pointer-events:none}button{padding:0;border:0;border-radius:0;font-family:inherit;font-style:inherit;font-variant:inherit;line-height:1;text-transform:none;cursor:pointer;-webkit-appearance:button}[tappable]{cursor:pointer}a[disabled],button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}*{box-sizing:border-box;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}html{width:100%;height:100%;-webkit-text-size-adjust:100%;text-size-adjust:100%}html.ion-ce body{display:block}html.plt-pwa{height:100vh}body{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;margin:0;padding:0;position:fixed;width:100%;max-width:100%;height:100%;max-height:100%;transform:translateZ(0);text-rendering:optimizeLegibility;overflow:hidden;touch-action:manipulation;-webkit-user-drag:none;-ms-content-zooming:none;word-wrap:break-word;overscroll-behavior-y:none;-webkit-text-size-adjust:none;text-size-adjust:none}html{font-family:var(--ion-font-family)}@supports (-webkit-touch-callout: none){html{font:var(--ion-dynamic-font, 16px var(--ion-font-family))}}a{background-color:transparent;color:var(--ion-color-primary, #0054e9)}h1,h2,h3,h4,h5,h6{margin-top:16px;margin-bottom:10px;font-weight:500;line-height:1.2}h1{margin-top:20px;font-size:1.625rem}h2{margin-top:18px;font-size:1.5rem}h3{font-size:1.375rem}h4{font-size:1.25rem}h5{font-size:1.125rem}h6{font-size:1rem}small{font-size:75%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}.ion-no-padding{--padding-start: 0;--padding-end: 0;--padding-top: 0;--padding-bottom: 0;padding:0}.ion-padding{--padding-start: var(--ion-padding, 16px);--padding-end: var(--ion-padding, 16px);--padding-top: var(--ion-padding, 16px);--padding-bottom: var(--ion-padding, 16px);-webkit-padding-start:var(--ion-padding, 16px);padding-inline-start:var(--ion-padding, 16px);-webkit-padding-end:var(--ion-padding, 16px);padding-inline-end:var(--ion-padding, 16px);padding-top:var(--ion-padding, 16px);padding-bottom:var(--ion-padding, 16px)}.ion-padding-top{--padding-top: var(--ion-padding, 16px);padding-top:var(--ion-padding, 16px)}.ion-padding-start{--padding-start: var(--ion-padding, 16px);-webkit-padding-start:var(--ion-padding, 16px);padding-inline-start:var(--ion-padding, 16px)}.ion-padding-end{--padding-end: var(--ion-padding, 16px);-webkit-padding-end:var(--ion-padding, 16px);padding-inline-end:var(--ion-padding, 16px)}.ion-padding-bottom{--padding-bottom: var(--ion-padding, 16px);padding-bottom:var(--ion-padding, 16px)}.ion-padding-vertical{--padding-top: var(--ion-padding, 16px);--padding-bottom: var(--ion-padding, 16px);padding-top:var(--ion-padding, 16px);padding-bottom:var(--ion-padding, 16px)}.ion-padding-horizontal{--padding-start: var(--ion-padding, 16px);--padding-end: var(--ion-padding, 16px);-webkit-padding-start:var(--ion-padding, 16px);padding-inline-start:var(--ion-padding, 16px);-webkit-padding-end:var(--ion-padding, 16px);padding-inline-end:var(--ion-padding, 16px)}.ion-no-margin{--margin-start: 0;--margin-end: 0;--margin-top: 0;--margin-bottom: 0;margin:0}.ion-margin{--margin-start: var(--ion-margin, 16px);--margin-end: var(--ion-margin, 16px);--margin-top: var(--ion-margin, 16px);--margin-bottom: var(--ion-margin, 16px);-webkit-margin-start:var(--ion-margin, 16px);margin-inline-start:var(--ion-margin, 16px);-webkit-margin-end:var(--ion-margin, 16px);margin-inline-end:var(--ion-margin, 16px);margin-top:var(--ion-margin, 16px);margin-bottom:var(--ion-margin, 16px)}.ion-margin-top{--margin-top: var(--ion-margin, 16px);margin-top:var(--ion-margin, 16px)}.ion-margin-start{--margin-start: var(--ion-margin, 16px);-webkit-margin-start:var(--ion-margin, 16px);margin-inline-start:var(--ion-margin, 16px)}.ion-margin-end{--margin-end: var(--ion-margin, 16px);-webkit-margin-end:var(--ion-margin, 16px);margin-inline-end:var(--ion-margin, 16px)}.ion-margin-bottom{--margin-bottom: var(--ion-margin, 16px);margin-bottom:var(--ion-margin, 16px)}.ion-margin-vertical{--margin-top: var(--ion-margin, 16px);--margin-bottom: var(--ion-margin, 16px);margin-top:var(--ion-margin, 16px);margin-bottom:var(--ion-margin, 16px)}.ion-margin-horizontal{--margin-start: var(--ion-margin, 16px);--margin-end: var(--ion-margin, 16px);-webkit-margin-start:var(--ion-margin, 16px);margin-inline-start:var(--ion-margin, 16px);-webkit-margin-end:var(--ion-margin, 16px);margin-inline-end:var(--ion-margin, 16px)}.ion-align-content-start{align-content:flex-start!important}.ion-align-content-end{align-content:flex-end!important}.ion-align-content-center{align-content:center!important}.ion-align-content-between{align-content:space-between!important}.ion-align-content-around{align-content:space-around!important}.ion-align-content-stretch{align-content:stretch!important}@media (min-width: 576px){.ion-align-content-sm-start{align-content:flex-start!important}.ion-align-content-sm-end{align-content:flex-end!important}.ion-align-content-sm-center{align-content:center!important}.ion-align-content-sm-between{align-content:space-between!important}.ion-align-content-sm-around{align-content:space-around!important}.ion-align-content-sm-stretch{align-content:stretch!important}}@media (min-width: 768px){.ion-align-content-md-start{align-content:flex-start!important}.ion-align-content-md-end{align-content:flex-end!important}.ion-align-content-md-center{align-content:center!important}.ion-align-content-md-between{align-content:space-between!important}.ion-align-content-md-around{align-content:space-around!important}.ion-align-content-md-stretch{align-content:stretch!important}}@media (min-width: 992px){.ion-align-content-lg-start{align-content:flex-start!important}.ion-align-content-lg-end{align-content:flex-end!important}.ion-align-content-lg-center{align-content:center!important}.ion-align-content-lg-between{align-content:space-between!important}.ion-align-content-lg-around{align-content:space-around!important}.ion-align-content-lg-stretch{align-content:stretch!important}}@media (min-width: 1200px){.ion-align-content-xl-start{align-content:flex-start!important}.ion-align-content-xl-end{align-content:flex-end!important}.ion-align-content-xl-center{align-content:center!important}.ion-align-content-xl-between{align-content:space-between!important}.ion-align-content-xl-around{align-content:space-around!important}.ion-align-content-xl-stretch{align-content:stretch!important}}.ion-align-items-start{align-items:start!important}.ion-align-items-end{align-items:end!important}.ion-align-items-center{align-items:center!important}.ion-align-items-stretch{align-items:stretch!important}.ion-align-items-baseline{align-items:baseline!important}@media (min-width: 576px){.ion-align-items-sm-start{align-items:start!important}.ion-align-items-sm-end{align-items:end!important}.ion-align-items-sm-center{align-items:center!important}.ion-align-items-sm-stretch{align-items:stretch!important}.ion-align-items-sm-baseline{align-items:baseline!important}}@media (min-width: 768px){.ion-align-items-md-start{align-items:start!important}.ion-align-items-md-end{align-items:end!important}.ion-align-items-md-center{align-items:center!important}.ion-align-items-md-stretch{align-items:stretch!important}.ion-align-items-md-baseline{align-items:baseline!important}}@media (min-width: 992px){.ion-align-items-lg-start{align-items:start!important}.ion-align-items-lg-end{align-items:end!important}.ion-align-items-lg-center{align-items:center!important}.ion-align-items-lg-stretch{align-items:stretch!important}.ion-align-items-lg-baseline{align-items:baseline!important}}@media (min-width: 1200px){.ion-align-items-xl-start{align-items:start!important}.ion-align-items-xl-end{align-items:end!important}.ion-align-items-xl-center{align-items:center!important}.ion-align-items-xl-stretch{align-items:stretch!important}.ion-align-items-xl-baseline{align-items:baseline!important}}.ion-align-self-start{align-self:start!important}.ion-align-self-end{align-self:end!important}.ion-align-self-center{align-self:center!important}.ion-align-self-stretch{align-self:stretch!important}.ion-align-self-baseline{align-self:baseline!important}.ion-align-self-auto{align-self:auto!important}@media (min-width: 576px){.ion-align-self-sm-start{align-self:start!important}.ion-align-self-sm-end{align-self:end!important}.ion-align-self-sm-center{align-self:center!important}.ion-align-self-sm-stretch{align-self:stretch!important}.ion-align-self-sm-baseline{align-self:baseline!important}.ion-align-self-sm-auto{align-self:auto!important}}@media (min-width: 768px){.ion-align-self-md-start{align-self:start!important}.ion-align-self-md-end{align-self:end!important}.ion-align-self-md-center{align-self:center!important}.ion-align-self-md-stretch{align-self:stretch!important}.ion-align-self-md-baseline{align-self:baseline!important}.ion-align-self-md-auto{align-self:auto!important}}@media (min-width: 992px){.ion-align-self-lg-start{align-self:start!important}.ion-align-self-lg-end{align-self:end!important}.ion-align-self-lg-center{align-self:center!important}.ion-align-self-lg-stretch{align-self:stretch!important}.ion-align-self-lg-baseline{align-self:baseline!important}.ion-align-self-lg-auto{align-self:auto!important}}@media (min-width: 1200px){.ion-align-self-xl-start{align-self:start!important}.ion-align-self-xl-end{align-self:end!important}.ion-align-self-xl-center{align-self:center!important}.ion-align-self-xl-stretch{align-self:stretch!important}.ion-align-self-xl-baseline{align-self:baseline!important}.ion-align-self-xl-auto{align-self:auto!important}}.ion-justify-content-start{justify-content:flex-start!important}.ion-justify-content-end{justify-content:flex-end!important}.ion-justify-content-center{justify-content:center!important}.ion-justify-content-between{justify-content:space-between!important}.ion-justify-content-around{justify-content:space-around!important}.ion-justify-content-evenly{justify-content:space-evenly!important}@media (min-width: 576px){.ion-justify-content-sm-start{justify-content:flex-start!important}.ion-justify-content-sm-end{justify-content:flex-end!important}.ion-justify-content-sm-center{justify-content:center!important}.ion-justify-content-sm-between{justify-content:space-between!important}.ion-justify-content-sm-around{justify-content:space-around!important}.ion-justify-content-sm-evenly{justify-content:space-evenly!important}}@media (min-width: 768px){.ion-justify-content-md-start{justify-content:flex-start!important}.ion-justify-content-md-end{justify-content:flex-end!important}.ion-justify-content-md-center{justify-content:center!important}.ion-justify-content-md-between{justify-content:space-between!important}.ion-justify-content-md-around{justify-content:space-around!important}.ion-justify-content-md-evenly{justify-content:space-evenly!important}}@media (min-width: 992px){.ion-justify-content-lg-start{justify-content:flex-start!important}.ion-justify-content-lg-end{justify-content:flex-end!important}.ion-justify-content-lg-center{justify-content:center!important}.ion-justify-content-lg-between{justify-content:space-between!important}.ion-justify-content-lg-around{justify-content:space-around!important}.ion-justify-content-lg-evenly{justify-content:space-evenly!important}}@media (min-width: 1200px){.ion-justify-content-xl-start{justify-content:flex-start!important}.ion-justify-content-xl-end{justify-content:flex-end!important}.ion-justify-content-xl-center{justify-content:center!important}.ion-justify-content-xl-between{justify-content:space-between!important}.ion-justify-content-xl-around{justify-content:space-around!important}.ion-justify-content-xl-evenly{justify-content:space-evenly!important}}.ion-flex-row{flex-direction:row!important}.ion-flex-row-reverse{flex-direction:row-reverse!important}.ion-flex-column{flex-direction:column!important}.ion-flex-column-reverse{flex-direction:column-reverse!important}@media (min-width: 576px){.ion-flex-sm-row{flex-direction:row!important}.ion-flex-sm-row-reverse{flex-direction:row-reverse!important}.ion-flex-sm-column{flex-direction:column!important}.ion-flex-sm-column-reverse{flex-direction:column-reverse!important}}@media (min-width: 768px){.ion-flex-md-row{flex-direction:row!important}.ion-flex-md-row-reverse{flex-direction:row-reverse!important}.ion-flex-md-column{flex-direction:column!important}.ion-flex-md-column-reverse{flex-direction:column-reverse!important}}@media (min-width: 992px){.ion-flex-lg-row{flex-direction:row!important}.ion-flex-lg-row-reverse{flex-direction:row-reverse!important}.ion-flex-lg-column{flex-direction:column!important}.ion-flex-lg-column-reverse{flex-direction:column-reverse!important}}@media (min-width: 1200px){.ion-flex-xl-row{flex-direction:row!important}.ion-flex-xl-row-reverse{flex-direction:row-reverse!important}.ion-flex-xl-column{flex-direction:column!important}.ion-flex-xl-column-reverse{flex-direction:column-reverse!important}}.ion-wrap{flex-wrap:wrap!important}.ion-nowrap{flex-wrap:nowrap!important}.ion-wrap-reverse{flex-wrap:wrap-reverse!important}.ion-flex-wrap{flex-wrap:wrap!important}.ion-flex-nowrap{flex-wrap:nowrap!important}.ion-flex-wrap-reverse{flex-wrap:wrap-reverse!important}@media (min-width: 576px){.ion-flex-sm-wrap{flex-wrap:wrap!important}.ion-flex-sm-nowrap{flex-wrap:nowrap!important}.ion-flex-sm-wrap-reverse{flex-wrap:wrap-reverse!important}}@media (min-width: 768px){.ion-flex-md-wrap{flex-wrap:wrap!important}.ion-flex-md-nowrap{flex-wrap:nowrap!important}.ion-flex-md-wrap-reverse{flex-wrap:wrap-reverse!important}}@media (min-width: 992px){.ion-flex-lg-wrap{flex-wrap:wrap!important}.ion-flex-lg-nowrap{flex-wrap:nowrap!important}.ion-flex-lg-wrap-reverse{flex-wrap:wrap-reverse!important}}@media (min-width: 1200px){.ion-flex-xl-wrap{flex-wrap:wrap!important}.ion-flex-xl-nowrap{flex-wrap:nowrap!important}.ion-flex-xl-wrap-reverse{flex-wrap:wrap-reverse!important}}.ion-flex-1{flex:1!important}.ion-flex-auto{flex:auto!important}.ion-flex-initial{flex:initial!important}.ion-flex-none{flex:none!important}@media (min-width: 576px){.ion-flex-sm-1{flex:1!important}.ion-flex-sm-auto{flex:auto!important}.ion-flex-sm-initial{flex:initial!important}.ion-flex-sm-none{flex:none!important}}@media (min-width: 768px){.ion-flex-md-1{flex:1!important}.ion-flex-md-auto{flex:auto!important}.ion-flex-md-initial{flex:initial!important}.ion-flex-md-none{flex:none!important}}@media (min-width: 992px){.ion-flex-lg-1{flex:1!important}.ion-flex-lg-auto{flex:auto!important}.ion-flex-lg-initial{flex:initial!important}.ion-flex-lg-none{flex:none!important}}@media (min-width: 1200px){.ion-flex-xl-1{flex:1!important}.ion-flex-xl-auto{flex:auto!important}.ion-flex-xl-initial{flex:initial!important}.ion-flex-xl-none{flex:none!important}}.ion-flex-grow-0{flex-grow:0!important}.ion-flex-grow-1{flex-grow:1!important}.ion-flex-shrink-0{flex-shrink:0!important}.ion-flex-shrink-1{flex-shrink:1!important}@media (min-width: 576px){.ion-flex-sm-grow-0{flex-grow:0!important}.ion-flex-sm-grow-1{flex-grow:1!important}.ion-flex-sm-shrink-0{flex-shrink:0!important}.ion-flex-sm-shrink-1{flex-shrink:1!important}}@media (min-width: 768px){.ion-flex-md-grow-0{flex-grow:0!important}.ion-flex-md-grow-1{flex-grow:1!important}.ion-flex-md-shrink-0{flex-shrink:0!important}.ion-flex-md-shrink-1{flex-shrink:1!important}}@media (min-width: 992px){.ion-flex-lg-grow-0{flex-grow:0!important}.ion-flex-lg-grow-1{flex-grow:1!important}.ion-flex-lg-shrink-0{flex-shrink:0!important}.ion-flex-lg-shrink-1{flex-shrink:1!important}}@media (min-width: 1200px){.ion-flex-xl-grow-0{flex-grow:0!important}.ion-flex-xl-grow-1{flex-grow:1!important}.ion-flex-xl-shrink-0{flex-shrink:0!important}.ion-flex-xl-shrink-1{flex-shrink:1!important}}.ion-order-first{order:-1!important}.ion-order-0{order:0!important}.ion-order-1{order:1!important}.ion-order-2{order:2!important}.ion-order-3{order:3!important}.ion-order-4{order:4!important}.ion-order-5{order:5!important}.ion-order-6{order:6!important}.ion-order-7{order:7!important}.ion-order-8{order:8!important}.ion-order-9{order:9!important}.ion-order-10{order:10!important}.ion-order-11{order:11!important}.ion-order-12{order:12!important}.ion-order-last{order:13!important}@media (min-width: 576px){.ion-order-sm-first{order:-1!important}.ion-order-sm-0{order:0!important}.ion-order-sm-1{order:1!important}.ion-order-sm-2{order:2!important}.ion-order-sm-3{order:3!important}.ion-order-sm-4{order:4!important}.ion-order-sm-5{order:5!important}.ion-order-sm-6{order:6!important}.ion-order-sm-7{order:7!important}.ion-order-sm-8{order:8!important}.ion-order-sm-9{order:9!important}.ion-order-sm-10{order:10!important}.ion-order-sm-11{order:11!important}.ion-order-sm-12{order:12!important}.ion-order-sm-last{order:13!important}}@media (min-width: 768px){.ion-order-md-first{order:-1!important}.ion-order-md-0{order:0!important}.ion-order-md-1{order:1!important}.ion-order-md-2{order:2!important}.ion-order-md-3{order:3!important}.ion-order-md-4{order:4!important}.ion-order-md-5{order:5!important}.ion-order-md-6{order:6!important}.ion-order-md-7{order:7!important}.ion-order-md-8{order:8!important}.ion-order-md-9{order:9!important}.ion-order-md-10{order:10!important}.ion-order-md-11{order:11!important}.ion-order-md-12{order:12!important}.ion-order-md-last{order:13!important}}@media (min-width: 992px){.ion-order-lg-first{order:-1!important}.ion-order-lg-0{order:0!important}.ion-order-lg-1{order:1!important}.ion-order-lg-2{order:2!important}.ion-order-lg-3{order:3!important}.ion-order-lg-4{order:4!important}.ion-order-lg-5{order:5!important}.ion-order-lg-6{order:6!important}.ion-order-lg-7{order:7!important}.ion-order-lg-8{order:8!important}.ion-order-lg-9{order:9!important}.ion-order-lg-10{order:10!important}.ion-order-lg-11{order:11!important}.ion-order-lg-12{order:12!important}.ion-order-lg-last{order:13!important}}@media (min-width: 1200px){.ion-order-xl-first{order:-1!important}.ion-order-xl-0{order:0!important}.ion-order-xl-1{order:1!important}.ion-order-xl-2{order:2!important}.ion-order-xl-3{order:3!important}.ion-order-xl-4{order:4!important}.ion-order-xl-5{order:5!important}.ion-order-xl-6{order:6!important}.ion-order-xl-7{order:7!important}.ion-order-xl-8{order:8!important}.ion-order-xl-9{order:9!important}.ion-order-xl-10{order:10!important}.ion-order-xl-11{order:11!important}.ion-order-xl-12{order:12!important}.ion-order-xl-last{order:13!important}}.ion-hide,.ion-hide-up,.ion-hide-down{display:none!important}@media (min-width: 576px){.ion-hide-sm-up{display:none!important}}@media (max-width: 575.98px){.ion-hide-sm-down{display:none!important}}@media (min-width: 768px){.ion-hide-md-up{display:none!important}}@media (max-width: 767.98px){.ion-hide-md-down{display:none!important}}@media (min-width: 992px){.ion-hide-lg-up{display:none!important}}@media (max-width: 991.98px){.ion-hide-lg-down{display:none!important}}@media (min-width: 1200px){.ion-hide-xl-up{display:none!important}}@media (max-width: 1199.98px){.ion-hide-xl-down{display:none!important}}.ion-display-none{display:none!important}@media (min-width: 576px){.ion-display-sm-none{display:none!important}}@media (min-width: 768px){.ion-display-md-none{display:none!important}}@media (min-width: 992px){.ion-display-lg-none{display:none!important}}@media (min-width: 1200px){.ion-display-xl-none{display:none!important}}.ion-display-inline{display:inline!important}@media (min-width: 576px){.ion-display-sm-inline{display:inline!important}}@media (min-width: 768px){.ion-display-md-inline{display:inline!important}}@media (min-width: 992px){.ion-display-lg-inline{display:inline!important}}@media (min-width: 1200px){.ion-display-xl-inline{display:inline!important}}.ion-display-inline-block{display:inline-block!important}@media (min-width: 576px){.ion-display-sm-inline-block{display:inline-block!important}}@media (min-width: 768px){.ion-display-md-inline-block{display:inline-block!important}}@media (min-width: 992px){.ion-display-lg-inline-block{display:inline-block!important}}@media (min-width: 1200px){.ion-display-xl-inline-block{display:inline-block!important}}.ion-display-block{display:block!important}@media (min-width: 576px){.ion-display-sm-block{display:block!important}}@media (min-width: 768px){.ion-display-md-block{display:block!important}}@media (min-width: 992px){.ion-display-lg-block{display:block!important}}@media (min-width: 1200px){.ion-display-xl-block{display:block!important}}.ion-display-flex{display:flex!important}@media (min-width: 576px){.ion-display-sm-flex{display:flex!important}}@media (min-width: 768px){.ion-display-md-flex{display:flex!important}}@media (min-width: 992px){.ion-display-lg-flex{display:flex!important}}@media (min-width: 1200px){.ion-display-xl-flex{display:flex!important}}.ion-display-inline-flex{display:inline-flex!important}@media (min-width: 576px){.ion-display-sm-inline-flex{display:inline-flex!important}}@media (min-width: 768px){.ion-display-md-inline-flex{display:inline-flex!important}}@media (min-width: 992px){.ion-display-lg-inline-flex{display:inline-flex!important}}@media (min-width: 1200px){.ion-display-xl-inline-flex{display:inline-flex!important}}.ion-display-grid{display:grid!important}@media (min-width: 576px){.ion-display-sm-grid{display:grid!important}}@media (min-width: 768px){.ion-display-md-grid{display:grid!important}}@media (min-width: 992px){.ion-display-lg-grid{display:grid!important}}@media (min-width: 1200px){.ion-display-xl-grid{display:grid!important}}.ion-display-inline-grid{display:inline-grid!important}@media (min-width: 576px){.ion-display-sm-inline-grid{display:inline-grid!important}}@media (min-width: 768px){.ion-display-md-inline-grid{display:inline-grid!important}}@media (min-width: 992px){.ion-display-lg-inline-grid{display:inline-grid!important}}@media (min-width: 1200px){.ion-display-xl-inline-grid{display:inline-grid!important}}.ion-display-table{display:table!important}@media (min-width: 576px){.ion-display-sm-table{display:table!important}}@media (min-width: 768px){.ion-display-md-table{display:table!important}}@media (min-width: 992px){.ion-display-lg-table{display:table!important}}@media (min-width: 1200px){.ion-display-xl-table{display:table!important}}.ion-display-table-cell{display:table-cell!important}@media (min-width: 576px){.ion-display-sm-table-cell{display:table-cell!important}}@media (min-width: 768px){.ion-display-md-table-cell{display:table-cell!important}}@media (min-width: 992px){.ion-display-lg-table-cell{display:table-cell!important}}@media (min-width: 1200px){.ion-display-xl-table-cell{display:table-cell!important}}.ion-display-table-row{display:table-row!important}@media (min-width: 576px){.ion-display-sm-table-row{display:table-row!important}}@media (min-width: 768px){.ion-display-md-table-row{display:table-row!important}}@media (min-width: 992px){.ion-display-lg-table-row{display:table-row!important}}@media (min-width: 1200px){.ion-display-xl-table-row{display:table-row!important}}:root{--ion-font-family: "Poppins", sans-serif;--ion-color-primary: #4b5563;--ion-color-primary-rgb: 75, 85, 99;--ion-color-primary-contrast: #ffffff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #424b57;--ion-color-primary-tint: #5d6673;--ion-background-color: #f3f5f7;--ion-background-color-rgb: 243, 245, 247;--ion-text-color: #25292e;--ion-text-color-rgb: 37, 41, 46;--ion-toolbar-background: #ffffff;--ion-tab-bar-background: #ffffff;--ion-tab-bar-color: #8a929c;--ion-tab-bar-color-selected: #30363d}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:Poppins,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root{color-scheme:light;--metal-950: #202328;--metal-900: #2c3036;--metal-800: #3b4148;--metal-700: #535b64;--metal-600: #69727c;--metal-500: #858d95;--metal-400: #a7adb3;--metal-300: #c4c9cd;--metal-200: #d8dcdf;--metal-100: #e8eaeb;--metal-50: #f3f4f4;--metal-ink: #25292e;--metal-muted: #687078;--metal-line: rgba(61, 67, 73, .2);--metal-surface: linear-gradient(145deg, #f5f6f6 0%, #dfe2e3 52%, #c9cdd0 100%);--metal-surface-soft: linear-gradient(145deg, #fafafa 0%, #e8eaeb 100%);--metal-button: linear-gradient(145deg, #747c84 0%, #4b525a 50%, #292e34 100%);--metal-shadow: 12px 12px 28px rgba(39, 44, 49, .18), -8px -8px 22px rgba(255, 255, 255, .62), inset 0 1px 0 rgba(255, 255, 255, .82);--metal-shadow-soft: 0 10px 24px rgba(38, 43, 48, .12), inset 0 1px 0 rgba(255, 255, 255, .76)}html,body,#app{min-height:100%;background:#aeb2b5;color:var(--metal-ink)}body{background:radial-gradient(circle at 18% 0%,rgba(255,255,255,.66),transparent 34rem),linear-gradient(135deg,#d9dcde,#aeb3b7 55%,#888e93)}::selection{background:var(--metal-700);color:#fff}button,input,select,textarea{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}.layout{background:radial-gradient(circle at 88% 4%,rgba(255,255,255,.72),transparent 29rem),linear-gradient(135deg,#d9dcde,#b8bdc1 48%,#92989d)!important}.layout>.sidebar{background:linear-gradient(180deg,#34393f,#24282d)!important;border:1px solid rgba(255,255,255,.16)!important;border-left:0!important;box-shadow:10px 0 28px #1d212533,inset -1px 0 #00000059,inset 1px 0 #ffffff14!important}.sidebar .brand,.sidebar .role{color:#f2f3f3!important}.sidebar .email{color:#aeb4ba!important}.sidebar .avatar-wrap,.sidebar .profile-avatar,.sidebar .avatar{border-color:#858d95!important;box-shadow:0 5px 14px #00000057,0 0 0 2px #ffffff1f!important}.sidebar .nav-item{color:#c8cdd1!important;border:1px solid transparent!important}.sidebar .nav-item:hover{color:#fff!important;background:#ffffff17!important;border-color:#ffffff14!important}.sidebar .nav-item.active{color:#202328!important;background:linear-gradient(145deg,#f1f2f2,#c3c8cb)!important;border-color:#ffffff85!important;box-shadow:0 6px 16px #0000004d,inset 0 1px #ffffffe6!important}.sidebar .nav-item.active .nav-icon{color:#202328!important}.sidebar .logout-btn{color:#eceeef!important;background:linear-gradient(145deg,#545b63,#292e34)!important;border:1px solid rgba(255,255,255,.13)!important;box-shadow:0 6px 14px #00000040!important}.sidebar .logout-btn:hover{background:linear-gradient(145deg,#666e77,#363b42)!important}.layout>.main{background:transparent!important}.page-title,.section-title,.card-title,.sched-grid-title{color:var(--metal-ink)!important}.page-sub,.section-sub,.card-sub,.sched-grid-sub{color:var(--metal-muted)!important}.main :is(.teachers-section,.settings-card,.profile-card,.content-card,.schedule-card,.calendar-card,.stat-card,.table-card,.request-card,.event-card,.teacher-card,.mode-card,.room-card,.sched-grid-wrap,.notification-card){background:var(--metal-surface-soft)!important;border-color:var(--metal-line)!important;box-shadow:var(--metal-shadow-soft)!important}.main :is(.teachers-section,.settings-card,.profile-card,.content-card,.schedule-card,.calendar-card,.table-card,.sched-grid-wrap){box-shadow:var(--metal-shadow)!important}.layout :is(.add-teacher-btn,.primary-btn,.save-btn,.submit-btn,.btn-primary,.btn-add,.add-btn,.edit-btn,.logout-confirm-btn),.modal-add-btn,.swal2-confirm{color:#fff!important;background:var(--metal-button)!important;border-color:#424950!important;box-shadow:0 7px 14px #23272c38,inset 0 1px #ffffff40!important}.layout :is(.add-teacher-btn,.primary-btn,.save-btn,.submit-btn,.btn-primary,.btn-add,.add-btn,.edit-btn,.logout-confirm-btn):hover,.modal-add-btn:hover,.swal2-confirm:hover{filter:brightness(1.12);transform:translateY(-1px)}.layout :is(input,select,textarea),.modal-box :is(input,select,textarea),.swal2-input,.swal2-textarea{color:var(--metal-ink)!important;background:linear-gradient(180deg,#f8f9f9,#e7e9ea)!important;border-color:#b6bcc1!important;box-shadow:inset 2px 2px 5px #3d43491a,0 1px #fffc!important}.layout :is(input,select,textarea):focus,.modal-box :is(input,select,textarea):focus,.swal2-input:focus,.swal2-textarea:focus{border-color:var(--metal-700)!important;box-shadow:0 0 0 3px #535b642b,inset 2px 2px 5px #3d434914!important}.status-tab.active,.filter-tab.active,.tab-btn.active{color:#fff!important;background:var(--metal-button)!important;border-color:#4a5159!important;box-shadow:inset 0 1px #ffffff38!important}.status-tab:not(.active),.filter-tab:not(.active){color:var(--metal-700)!important;background:#f2f3f38a!important;border-color:#bfc4c8!important}.card-in-school{background:#f0fdf4!important;border-color:#22c55e!important}.card-on-leave{background:#fef2f2!important;border-color:#ef4444!important}.card-on-meeting{background:#fefce8!important;border-color:#eab308!important}.badge-in-school{color:#fff!important;background:#16a34a!important}.badge-on-leave{color:#fff!important;background:#dc2626!important}.badge-on-meeting{color:#422006!important;background:#eab308!important}.badge-approved,.badge-pending,.badge-completed,.badge-cancelled,.badge-resched{color:#fff!important;background:linear-gradient(145deg,#7b838b,#464d54)!important}.teacher-sidebar>.sidebar-profile{order:0}.teacher-sidebar>.sidebar-nav{order:1}.teacher-sidebar>.teacher-sidebar-status{order:2;margin-top:auto!important}.teacher-sidebar>.role-switch-btn{order:3}.teacher-sidebar>.logout-btn{order:4}.teacher-sidebar~.main .badge-pending,.teacher-sidebar~main .badge-pending{background:#f59e0b!important;color:#422006!important}.teacher-sidebar~.main .badge-approved,.teacher-sidebar~main .badge-approved{background:#16a34a!important;color:#fff!important}.teacher-sidebar~.main .badge-resched,.teacher-sidebar~main .badge-resched{background:#2563eb!important;color:#fff!important}.teacher-sidebar~.main .badge-completed,.teacher-sidebar~main .badge-completed{background:#64748b!important;color:#fff!important}.event-card-default-cover,.event-card-cover-image{width:100%;height:160px;border-radius:10px;margin-bottom:2px;flex-shrink:0}.event-card-cover-image{display:block;object-fit:cover}.event-card-default-cover{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:#fff;overflow:hidden;position:relative}.event-card-default-cover:before{content:"";position:absolute;width:180px;height:180px;border:1px solid rgba(255,255,255,.13);border-radius:50%}.event-card-default-cover span{position:relative;font-size:2.15rem;line-height:1;font-weight:700;letter-spacing:.06em;text-shadow:0 3px 10px rgba(0,0,0,.25)}.event-card-default-cover small{position:relative;font-size:.62rem;font-weight:600;letter-spacing:.18em;opacity:.78}.modal-event-cover{width:100%;height:180px;border-radius:12px;object-fit:cover;margin-bottom:14px}.area-tag,.room-tag,.status-badge,.badge{border-color:#3a40462e!important}.modal-overlay,.admin-modal-overlay,.logout-modal-overlay{background:#1f23278f!important;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.modal-box,.admin-modal,.logout-modal-box,.swal2-popup{color:var(--metal-ink)!important;background:var(--metal-surface)!important;border:1px solid rgba(255,255,255,.68)!important;box-shadow:0 24px 60px #181c205c!important}.page-bg{background:radial-gradient(circle at 50% 115%,rgba(246,247,247,.95),transparent 30%),radial-gradient(circle at 15% 0%,rgba(255,255,255,.5),transparent 35%),linear-gradient(145deg,#cfd3d5,#969ca1 55%,#545a60)!important}.page-bg>.card{background:var(--metal-surface)!important;border:1px solid rgba(255,255,255,.68)!important;box-shadow:0 22px 54px #1d21254d!important}.page-bg .title{color:var(--metal-ink)!important}.page-bg .tab-toggle{background:#cdd1d4!important;border-color:#b3b8bc!important;box-shadow:inset 2px 2px 5px #363c421f!important}.page-bg .submit-btn{background:var(--metal-button)!important;box-shadow:0 9px 18px #23272c40!important}.mobile-app{background:radial-gradient(circle at 90% 0%,rgba(255,255,255,.78),transparent 18rem),linear-gradient(145deg,#dfe1e2,#b9bec1)!important;color:var(--metal-ink)!important}.mobile-app :is(.header,.top-bar,.welcome-card,.summary-card,.schedule-card,.consultation-card,.teacher-card,.event-card,.settings-card,.profile-card,.notification-item,.empty-state){background:var(--metal-surface-soft)!important;border-color:var(--metal-line)!important;box-shadow:var(--metal-shadow-soft)!important}.bottom-nav-wrap{background:transparent!important}.bottom-nav{background:linear-gradient(145deg,#42484f,#252a2f)!important;border-color:#ffffff24!important;box-shadow:0 12px 30px #191d2166!important}.bottom-nav a,.bottom-nav button,.bottom-nav .nav-item{color:#aeb5bb!important}.bottom-nav :is(a,button,.nav-item).active,.bottom-nav .router-link-active{color:#fff!important}@media (max-width: 760px){.layout>.main{background:radial-gradient(circle at 90% 0%,rgba(255,255,255,.72),transparent 18rem),linear-gradient(145deg,#dadcde,#afb4b8)!important}}.swal-rounded{border-radius:20px!important}.swal2-popup,.swal2-popup *,.swal2-title,.swal2-html-container,.swal2-confirm,.swal2-cancel,.swal2-deny{font-family:Poppins,sans-serif!important}.swal-cancel-text{background:none!important;border:none!important;color:#e63946!important;font-weight:600!important;font-family:Poppins,sans-serif!important}.swal-cancel-text:hover{background:#ffeaea!important;border-radius:8px!important}body,.layout,.mobile-app{color:#252a2f!important;background:radial-gradient(circle at 12% 0%,rgba(255,255,255,.7),transparent 32rem),radial-gradient(circle at 86% 6%,rgba(255,255,255,.52),transparent 26rem),linear-gradient(135deg,#dadddf,#c5c9cc 48%,#aeb4b8)!important}.layout>.sidebar{position:sticky!important;top:0!important;width:292px!important;min-width:292px!important;height:100vh!important;padding:24px 20px 22px!important;align-items:stretch!important;overflow-y:auto!important;color:#252a2f!important;background:radial-gradient(circle at 10% 0%,rgba(255,255,255,.7),transparent 15rem),linear-gradient(145deg,#d7dadc,#bfc3c6 52%,#aeb3b7)!important;border:1px solid rgba(255,255,255,.52)!important;border-left:0!important;border-radius:0 24px 24px 0!important;box-shadow:12px 0 30px #20252933,inset -1px 0 #4e545a2e,inset 1px 0 #ffffff8c!important}.layout>.sidebar:after{content:none!important;display:none!important}.sidebar .sidebar-profile{display:grid!important;grid-template-columns:64px minmax(0,1fr)!important;grid-template-rows:repeat(3,auto)!important;column-gap:14px!important;row-gap:1px!important;width:100%!important;margin:0 0 14px!important;padding:0 4px 14px!important;align-items:center!important;text-align:left!important;border-bottom:1px solid rgba(72,78,84,.17)!important;box-shadow:0 1px #ffffff75!important}.teacher-sidebar .sidebar-profile{border-bottom:0!important;box-shadow:none!important}.sidebar .avatar-wrap,.sidebar .profile-avatar{grid-column:1!important;grid-row:1 / 4!important;width:64px!important;height:64px!important;margin:0!important;border:2px solid #747b81!important;border-radius:50%!important;background:linear-gradient(145deg,#cdd1d4,#777e84)!important;box-shadow:0 7px 15px #23282c47,0 0 0 2px #ffffff61,inset 0 1px #ffffffb3!important}.sidebar .avatar,.sidebar .profile-avatar img{border:0!important;box-shadow:none!important;filter:grayscale(.45) contrast(1.03)}.sidebar .brand{grid-column:2!important;grid-row:1!important;align-self:end!important;overflow:hidden!important;color:#20252a!important;font-size:1.02rem!important;font-weight:650!important;line-height:1.25!important;text-overflow:ellipsis!important;white-space:nowrap!important;text-shadow:0 1px rgba(255,255,255,.52)!important}.sidebar .role{grid-column:2!important;grid-row:2!important;color:#555d64!important;font-size:.69rem!important;font-weight:650!important;letter-spacing:.07em!important;line-height:1.25!important;text-transform:uppercase!important}.sidebar .email{grid-column:2!important;grid-row:3!important;align-self:start!important;overflow:hidden!important;color:#737b82!important;font-size:.73rem!important;line-height:1.3!important;text-overflow:ellipsis!important;white-space:nowrap!important;word-break:normal!important}.sidebar .sidebar-nav{position:relative!important;display:flex!important;flex:1!important;flex-direction:column!important;gap:6px!important;width:100%!important;overflow:visible!important}.admin-sidebar .sidebar-nav:before,.teacher-sidebar .sidebar-nav:before{display:block;margin:0 4px 5px;color:#747b81;font-size:.76rem;font-weight:500;letter-spacing:.025em}.sidebar .nav-item{position:relative!important;min-height:48px!important;padding:12px 15px!important;gap:13px!important;color:#252a2f!important;border:1px solid transparent!important;border-radius:13px!important;background:transparent!important;box-shadow:none!important;font-size:.92rem!important;font-weight:520!important;line-height:1.2!important;text-decoration:none!important;text-shadow:0 1px rgba(255,255,255,.46)!important;transition:color .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease!important}.sidebar .nav-icon{display:flex!important;align-items:center!important;flex-shrink:0!important;color:#252a2f!important}.sidebar .nav-icon svg{width:20px!important;height:20px!important;stroke-width:1.9!important}.sidebar .nav-item:hover{color:#1f2428!important;background:#eff1f275!important;border-color:#ffffff6b!important;box-shadow:0 4px 10px #31373c1a,inset 0 1px #ffffff8c!important;transform:translate(2px)!important}.sidebar .nav-item.active{color:#171b1f!important;background:linear-gradient(100deg,#e1e4e6f0,#f4f6f6bd)!important;border-color:#ffffffd4!important;box-shadow:0 8px 18px #343a3f29,0 0 14px #ebf4f48a,inset 0 1px #fffffff0,inset 0 -1px #686f751f!important;font-weight:650!important}.sidebar .nav-item.active .nav-icon{color:#171b1f!important}.admin-sidebar .sidebar-nav>a:nth-of-type(3){margin-bottom:44px!important}.admin-sidebar .sidebar-nav>a:nth-of-type(3):after{content:"";position:absolute;right:3px;bottom:-16px;left:3px;height:1px;background:#484e542b;box-shadow:0 1px #ffffff75;pointer-events:none}.teacher-sidebar .sidebar-nav{flex:1 1 auto!important;margin-top:0!important}.teacher-sidebar .sidebar-nav>a:nth-of-type(3){margin-bottom:0!important}.teacher-sidebar .sidebar-nav>a:nth-of-type(3):after,.teacher-sidebar .sidebar-nav>a:nth-of-type(4):before{content:none!important;display:none!important}.sidebar .logout-btn,.sidebar :is(.role-switch-btn,.switch-role-btn){min-height:46px!important;margin-top:18px!important;color:#343a40!important;background:linear-gradient(145deg,#eceeefd6,#b5babee6)!important;border:1px solid rgba(255,255,255,.52)!important;border-radius:13px!important;box-shadow:0 6px 14px #30363b24,inset 0 1px #ffffffb8!important;font-weight:600!important;margin-bottom:-10px!important}.sidebar .logout-btn:hover,.sidebar :is(.role-switch-btn,.switch-role-btn):hover{color:#1f2428!important;background:linear-gradient(145deg,#f1f2f2,#aeb4b8)!important;transform:translateY(-1px)!important}.teacher-sidebar :is(.role-switch-btn,.switch-role-btn){margin-top:auto!important;margin-bottom:10px!important}.teacher-sidebar .logout-btn{margin-top:0!important}.layout>.main{background:radial-gradient(circle at 80% 0%,rgba(255,255,255,.64),transparent 28rem),linear-gradient(135deg,#eceeef,#d8dcdf 54%,#c2c7cb)!important}.main :is(.stat-card,.chart-card,.teachers-section,.settings-card,.profile-card,.content-card,.schedule-card,.calendar-card,.table-card,.request-card,.event-card,.teacher-card,.mode-card,.room-card,.sched-grid-wrap,.notification-card){color:#252a2f!important;background:linear-gradient(145deg,#fafbfbe0,#d6daddc7)!important;border:1px solid rgba(255,255,255,.68)!important;border-radius:16px!important;box-shadow:12px 12px 28px #272c3124,-8px -8px 22px #ffffff94,inset 0 1px #ffffffe0!important}.main :is(.page-title,.section-title,.card-title,.sched-grid-title,.chart-title,.stat-value){color:#20252a!important;text-shadow:0 1px rgba(255,255,255,.42)!important}.main :is(.page-sub,.section-sub,.card-sub,.sched-grid-sub,.stat-label,.stat-sub){color:#687078!important}.admin-dashboard .notif-btn{color:#30353a!important;background:transparent!important;border:0!important;box-shadow:none!important;outline:0!important;border-radius:0!important;padding:4px!important}.admin-dashboard .notif-dot,.notif-unread-dot{background:#e63946!important}.admin-dashboard .stat-card{color:#fff!important;background:radial-gradient(circle at 12% 0%,rgba(255,255,255,.14),transparent 8rem),linear-gradient(145deg,#252a2f,#111418 54%,#050607)!important;border:1px solid rgba(255,255,255,.14)!important;box-shadow:0 16px 34px #14181c47,inset 0 1px #ffffff2e,inset 0 -1px #000000a3!important}.admin-dashboard .stat-card :is(.stat-label,.stat-value,.stat-sub){color:#fff!important;text-shadow:none!important}.admin-dashboard .stat-card .stat-label,.admin-dashboard .stat-card .stat-sub{opacity:.72}.admin-dashboard .stat-card .stat-icon,.admin-dashboard .stat-card .stat-icon svg{color:#fff!important;stroke:#fff!important;opacity:.88}.admin-dashboard .notif-panel{background:linear-gradient(145deg,#fffffffa,#e8eaebf5)!important;border:1px solid rgba(255,255,255,.74)!important;box-shadow:0 18px 44px #23282c3d,inset 0 1px #ffffffd1!important}@media (max-width: 900px){.layout>.sidebar{width:238px!important;min-width:238px!important;padding-inline:14px!important}}.admin-sidebar a[href="/admin/schedule/view"],.admin-sidebar a[href="/admin/schedule/add"]{display:none!important}.admin-sidebar a[href="/admin/academic-terms"]:not(.unified-academic-link){display:none!important}.layout>.admin-sidebar{position:sticky!important;width:288px!important;min-width:288px!important;padding:24px 17px!important;transition:width .22s ease,min-width .22s ease,padding .22s ease!important}.admin-sidebar .nav-item{display:flex!important;align-items:center!important;width:100%!important;order:10}.admin-sidebar .sidebar-nav>a[href="/admin/dashboard"]{order:0}.admin-sidebar .schedule-management-label{order:1;display:flex;align-items:center;gap:8px;margin:10px 6px 1px;color:#6e7880;font-size:.62rem;font-weight:700;letter-spacing:.09em;line-height:1.2;text-transform:uppercase;white-space:nowrap}.admin-sidebar .schedule-management-label:before{content:"";width:16px;height:1px;flex:0 0 16px;background:#8f989f}.admin-sidebar .nav-item>span:last-child{min-width:0;white-space:nowrap!important}.admin-sidebar .nav-icon{display:inline-flex!important;align-items:center!important;align-self:center!important;width:22px!important;min-width:22px!important;height:22px!important;min-height:22px!important;justify-content:center!important;line-height:0!important;flex:0 0 22px!important}.admin-sidebar .nav-icon svg{display:block!important;width:22px!important;height:22px!important;min-width:22px!important;min-height:22px!important;stroke-width:1.9!important;vector-effect:non-scaling-stroke;overflow:visible}.sidebar a[href$="/settings"] .nav-icon svg{transform:scale(.76)!important;transform-origin:center!important}.admin-sidebar .unified-academic-link,.admin-sidebar .current-term-schedule-link,.admin-sidebar .current-term-link{order:2}.admin-sidebar .current-term-schedule-link,.admin-sidebar .current-term-link{order:3;margin-bottom:18px}.admin-sidebar .current-term-schedule-link:after,.admin-sidebar .current-term-link:after{content:"";position:absolute;top:calc(100% + 9px);right:8px;left:8px;height:1px;background:linear-gradient(90deg,transparent,rgba(87,97,105,.28) 14%,rgba(87,97,105,.28) 86%,transparent);pointer-events:none}.admin-sidebar-collapsed .admin-sidebar .current-term-schedule-link:after,.admin-sidebar-collapsed .admin-sidebar .current-term-link:after{display:none}.admin-sidebar-toggle{position:fixed;top:20px;left:248px;z-index:20;display:grid;width:24px;height:24px;place-items:center;padding:0;color:#687078;background:transparent;border:0;border-radius:6px;box-shadow:none;cursor:pointer;transition:left .22s ease,color .18s ease,background-color .18s ease}.admin-sidebar-toggle:hover{color:#252a2f;background-color:#252a2f14}.admin-sidebar-toggle:focus-visible{outline:2px solid #397b5a;outline-offset:2px}.admin-sidebar-toggle.is-collapsed{color:#252a2f;background:linear-gradient(145deg,#f4f5f5,#c7cbce);border:1px solid rgba(255,255,255,.8);box-shadow:0 4px 12px #20252938}.admin-sidebar-toggle svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.admin-sidebar-collapsed .layout>.admin-sidebar{width:82px!important;min-width:82px!important;padding-inline:12px!important;overflow:visible!important}.admin-sidebar-collapsed .admin-sidebar-toggle{left:29px}.admin-sidebar-quick-menu{position:absolute;z-index:1000;top:37px;left:72px;display:flex;width:max-content;padding:0;flex-direction:row;gap:6px;visibility:hidden;opacity:0;transform:translate(-5px);pointer-events:none;transition:opacity .16s ease,transform .16s ease,visibility .16s}.admin-sidebar-quick-menu:before{content:"";position:absolute;top:0;right:100%;width:20px;height:100%}.admin-sidebar-quick-menu button{display:flex;align-items:center;gap:10px;width:auto;min-height:38px;padding:8px 13px;color:#f7f8f9;background:#25282bf5;border:1px solid rgba(255,255,255,.14);border-radius:999px;box-shadow:0 7px 18px #14181b3d;font-family:inherit;font-size:.78rem;font-weight:600;text-align:left;cursor:pointer;transition:background-color .15s ease,transform .15s ease}.admin-sidebar-quick-menu button:hover,.admin-sidebar-quick-menu button:focus-visible{color:#fff;background:#111315;outline:none;transform:translateY(-1px)}.admin-sidebar-quick-menu svg{width:18px;height:18px;flex:0 0 18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}@media (hover: hover) and (pointer: fine){.admin-sidebar-collapsed .admin-sidebar-toggle{visibility:hidden;opacity:0;pointer-events:none}.admin-sidebar-collapsed .admin-sidebar:has(.sidebar-profile:hover,.sidebar-profile:focus-within,.admin-sidebar-quick-menu:hover,.admin-sidebar-quick-menu:focus-within) .admin-sidebar-quick-menu{visibility:visible;opacity:1;transform:translate(0);pointer-events:auto}}.admin-sidebar .sidebar-profile{border-bottom:0!important;box-shadow:none!important}.admin-sidebar .sidebar-nav>a:nth-of-type(3){margin-bottom:0!important}.admin-sidebar .sidebar-nav>a:nth-of-type(3):after{content:none!important;display:none!important}.admin-sidebar-collapsed .admin-sidebar .sidebar-profile{display:flex!important;justify-content:center!important;padding:8px 0 14px!important}.admin-sidebar-collapsed .admin-sidebar .avatar-wrap{width:48px!important;height:48px!important}.admin-sidebar-collapsed .admin-sidebar .sidebar-profile :is(.brand,.role,.email),.admin-sidebar-collapsed .admin-sidebar .nav-item>span:last-child,.admin-sidebar-collapsed .admin-sidebar .schedule-management-label{display:none!important}.admin-sidebar-collapsed .admin-sidebar .nav-item{min-height:48px!important;justify-content:center!important;padding-inline:0!important}.admin-sidebar-collapsed .admin-sidebar .sidebar-nav>a:nth-of-type(3){margin-bottom:20px!important}.admin-sidebar-collapsed .admin-sidebar :is(.logout-btn,.role-switch-btn,.switch-role-btn){min-width:48px!important;padding-inline:0!important;gap:0!important;overflow:hidden!important;font-size:0!important}.admin-sidebar-collapsed .admin-sidebar :is(.logout-btn,.role-switch-btn,.switch-role-btn) svg{width:20px!important;height:20px!important}@media (max-width: 900px){.layout>.admin-sidebar{display:flex!important;width:252px!important;min-width:252px!important}.admin-sidebar-collapsed .layout>.admin-sidebar{width:0!important;min-width:0!important;padding-inline:0!important;border:0!important;overflow:visible!important}.admin-sidebar-collapsed .admin-sidebar>:not(.admin-sidebar-toggle){visibility:hidden!important;pointer-events:none!important}.admin-sidebar-collapsed .admin-sidebar-toggle{top:16px;left:16px;width:38px;height:38px}.admin-sidebar .admin-sidebar-toggle{left:212px}.admin-sidebar-collapsed .admin-sidebar .admin-sidebar-toggle{left:16px}.admin-sidebar-quick-menu{display:none!important}}.page-bg[data-v-3d32b63c]{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(180deg,#20272d,#171d22 42%,#0b1014);padding:24px}.tron-canvas[data-v-3d32b63c]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;width:100%;height:100%;pointer-events:none}.card[data-v-3d32b63c]{position:relative;z-index:1;background:#fff;border-radius:24px;padding:44px 48px 40px;width:100%;max-width:420px;box-shadow:0 8px 40px #00000021;display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}.icon-wrap[data-v-3d32b63c]{width:80px;height:80px;border:2.5px solid #4b5563;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:4px}.step-title[data-v-3d32b63c]{font-size:1.3rem;font-weight:700;color:#111}.step-desc[data-v-3d32b63c]{font-size:.88rem;color:#555;line-height:1.55;max-width:300px}.form[data-v-3d32b63c]{width:100%;display:flex;flex-direction:column;align-items:center;gap:14px;margin-top:4px}.input-wrapper[data-v-3d32b63c]{position:relative;display:flex;align-items:center;width:100%}.input-field[data-v-3d32b63c]{width:100%;padding:13px 44px 13px 18px;border:1.5px solid #d0d0d0;border-radius:50px;font-size:.9rem;font-family:inherit;color:#333;outline:none;transition:border-color .2s;background:#fff;text-align:left}.input-field[data-v-3d32b63c]::placeholder{color:#aaa}.input-field[data-v-3d32b63c]:focus{border-color:#9ca3af}.input-icon[data-v-3d32b63c]{position:absolute;right:15px;display:flex;align-items:center;color:#888;pointer-events:none}.error-msg[data-v-3d32b63c]{font-size:.86rem;color:#e63946;text-align:center;margin-top:-4px}.success-msg[data-v-3d32b63c]{font-size:.86rem;color:#4f575f;text-align:center;margin-top:-4px}.icon-btn[data-v-3d32b63c]{position:absolute;right:13px;background:none;border:none;cursor:pointer;padding:4px;display:flex;align-items:center;color:#888;pointer-events:all;transition:color .2s}.icon-btn[data-v-3d32b63c]:hover{color:#4b5563}.req-list[data-v-3d32b63c]{list-style:none;width:100%;text-align:left;display:flex;flex-direction:column;gap:6px;padding:0;margin:0}.req-list li[data-v-3d32b63c]{display:flex;align-items:center;gap:8px;font-size:.85rem;color:#aaa;transition:color .2s}.req-list li.met[data-v-3d32b63c]{color:#4b5563}.req-icon[data-v-3d32b63c]{display:flex;align-items:center}.req-list li:not(.met) .req-icon[data-v-3d32b63c]{color:#ccc}.req-list li.met .req-icon[data-v-3d32b63c]{color:#4b5563}.match-indicator[data-v-3d32b63c]{display:flex;align-items:center;gap:6px;font-size:.85rem;color:#e63946;align-self:flex-start;margin-top:-4px}.match-indicator.matched[data-v-3d32b63c]{color:#4b5563}.submit-btn[data-v-3d32b63c]{width:100%;padding:14px;background:#4b5563;color:#fff;border:none;border-radius:50px;font-size:.95rem;font-weight:700;font-family:inherit;cursor:pointer;letter-spacing:.8px;transition:background .2s,transform .1s,opacity .2s}.submit-btn[data-v-3d32b63c]:hover{background:#6b7280}.submit-btn[data-v-3d32b63c]:active{transform:scale(.98)}.submit-btn[data-v-3d32b63c]:disabled{opacity:.5;cursor:not-allowed}.cancel-link[data-v-3d32b63c]{font-size:.92rem;font-weight:600;color:#e63946;text-decoration:none;transition:opacity .2s;margin-top:-2px}.cancel-link[data-v-3d32b63c]:hover{opacity:.75}.pin-row[data-v-3d32b63c]{display:flex;gap:10px;justify-content:center;width:100%}.pin-box[data-v-3d32b63c]{width:48px;height:56px;border:1.5px solid #d0d0d0;border-radius:12px;font-size:1.4rem;font-weight:700;font-family:inherit;color:#4b5563;text-align:center;outline:none;transition:border-color .2s,box-shadow .2s;background:#fff;caret-color:#4b5563}.pin-box[data-v-3d32b63c]:focus{border-color:#9ca3af;box-shadow:0 0 0 3px #535b6426}@media (max-width: 480px){.card[data-v-3d32b63c]{padding:36px 22px 32px}.pin-box[data-v-3d32b63c]{width:40px;height:48px;font-size:1.2rem}}.page-bg[data-v-2bb4a813]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 50% 110%,#f6f7f9,#cfd3d8 26%,#9da4ad 54%,#5f6871 75%,#2b3036);padding:24px}.card[data-v-2bb4a813]{background:linear-gradient(145deg,#f8fafc,#e8ecef);border:1px solid rgba(255,255,255,.8);border-radius:24px;padding:32px 40px 28px;width:100%;max-width:460px;box-shadow:0 14px 40px #181e2438;display:flex;flex-direction:column;gap:16px;transition:max-width .25s}.card.card--wide[data-v-2bb4a813]{max-width:540px}.title[data-v-2bb4a813]{margin:0;text-align:center;font-size:2rem;font-weight:700;color:#39424b;letter-spacing:-.5px}.login-brand[data-v-2bb4a813]{display:flex;align-items:center;justify-content:center;gap:15px;margin:-8px 0 3px}.login-brand__seal-wrap[data-v-2bb4a813]{position:relative;display:grid;width:82px;height:82px;flex:0 0 82px;place-items:center;border:1px solid rgba(255,255,255,.92);border-radius:50%;background:radial-gradient(circle at 35% 28%,#fff,#e6e9eb 48%,#aeb5ba);box-shadow:0 9px 22px #1f262c33,inset 0 1px #fffffff2}.login-brand__seal-wrap[data-v-2bb4a813]:after{content:"";position:absolute;top:4px;right:4px;bottom:4px;left:4px;border:1px solid rgba(58,66,73,.16);border-radius:50%;pointer-events:none}.login-brand__seal[data-v-2bb4a813]{position:relative;z-index:1;width:72px;height:72px;object-fit:contain;filter:drop-shadow(0 4px 5px rgba(0,0,0,.22))}.login-brand__copy[data-v-2bb4a813]{display:flex;min-width:0;flex-direction:column;align-items:flex-start}.login-brand__copy>span[data-v-2bb4a813]{margin-bottom:3px;color:#6d7680;font-size:.62rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.login-brand__copy .title[data-v-2bb4a813]{text-align:left}.tab-toggle[data-v-2bb4a813]{display:flex;background:#eef1f4;border:1.5px solid #d4d9e0;border-radius:50px;padding:4px;gap:4px}.tab-btn[data-v-2bb4a813]{flex:1;padding:9px 0;border:none;border-radius:50px;font-size:.95rem;font-weight:500;cursor:pointer;transition:background .22s,color .22s;background:transparent;color:#4b5563;font-family:inherit}.tab-btn.active[data-v-2bb4a813]{background:linear-gradient(135deg,#6b7280,#4b5563,#2f3742);color:#fff}.tab-btn[data-v-2bb4a813]:not(.active):hover{background:#f7f9fb}.form[data-v-2bb4a813]{display:flex;flex-direction:column;gap:10px}.name-row[data-v-2bb4a813]{display:flex;gap:12px}.name-row .input-wrapper[data-v-2bb4a813]{flex:1}.input-wrapper[data-v-2bb4a813]{position:relative;display:flex;align-items:center}.input-field[data-v-2bb4a813]{width:100%;padding:13px 44px 13px 18px;border:1.5px solid #c8ced6;border-radius:50px;font-size:.9rem;font-family:inherit;color:#333;outline:none;transition:border-color .2s,box-shadow .2s;background:#f8fafc}.select-field[data-v-2bb4a813]{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:18px}.input-field[data-v-2bb4a813]::placeholder{color:#94a3b8}.input-field[data-v-2bb4a813]:focus{border-color:#6b7280;box-shadow:0 0 0 3px #6b728026}.input-icon[data-v-2bb4a813]{position:absolute;right:15px;display:flex;align-items:center;color:#6b7280;pointer-events:none}.icon-btn[data-v-2bb4a813]{position:absolute;right:13px;background:none;border:none;cursor:pointer;padding:4px;display:flex;align-items:center;color:#6b7280;pointer-events:all;transition:color .2s}.icon-btn[data-v-2bb4a813]:hover{color:#374151}.form-row[data-v-2bb4a813]{display:flex;align-items:center;justify-content:space-between;margin-top:-2px}.remember-label[data-v-2bb4a813]{display:flex;align-items:center;gap:8px;font-size:.87rem;color:#4b5563;cursor:pointer;-webkit-user-select:none;user-select:none}.checkbox[data-v-2bb4a813]{width:15px;height:15px;accent-color:#4b5563;cursor:pointer}.row-end[data-v-2bb4a813]{display:flex;justify-content:flex-end;margin-top:-2px}.captcha-wrap[data-v-2bb4a813]{display:flex;justify-content:center;align-items:center;width:100%;margin:2px 0}.captcha-box[data-v-2bb4a813]{display:inline-flex;justify-content:center;width:100%;max-width:320px}.captcha-box>div[data-v-2bb4a813]{width:100%!important}.action-link[data-v-2bb4a813]{font-size:.87rem;color:#5b6470;text-decoration:none;font-weight:500;transition:color .2s}.action-link[data-v-2bb4a813]:hover{color:#2f3742;text-decoration:underline}.plain-btn[data-v-2bb4a813]{background:none;border:none;font-family:inherit;cursor:pointer;padding:0}.error-msg[data-v-2bb4a813]{font-size:.86rem;color:#b91c1c;text-align:center;margin-top:-4px}.success-msg[data-v-2bb4a813]{font-size:.86rem;color:#4b5563;text-align:center;margin-top:-4px}.password-requirements[data-v-2bb4a813]{list-style:none;padding:0;margin:-2px 2px 0;display:flex;flex-direction:column;gap:6px}.password-requirements li[data-v-2bb4a813]{font-size:.82rem;color:#6b7280;font-weight:500;display:flex;align-items:center;gap:8px}.password-requirements li[data-v-2bb4a813]:before{content:"○";color:#9ca3af;line-height:1}.password-requirements li.pass[data-v-2bb4a813]{color:#374151}.password-requirements li.pass[data-v-2bb4a813]:before{content:"✓";color:#4b5563}.submit-btn[data-v-2bb4a813]{width:100%;padding:14px;background:linear-gradient(135deg,#6b7280,#4b5563,#2f3742);color:#fff;border:none;border-radius:50px;font-size:1rem;font-weight:600;font-family:inherit;cursor:pointer;letter-spacing:.3px;transition:background .2s,transform .1s,box-shadow .2s;margin-top:2px;box-shadow:0 8px 16px #2f37422e}.submit-btn[data-v-2bb4a813]:hover{background:linear-gradient(135deg,#7c8796,#5b6470,#374151)}.submit-btn[data-v-2bb4a813]:active{transform:scale(.98)}.login-alert-overlay[data-v-2bb4a813]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1100;display:grid;place-items:center;padding:20px;background:#070c10a8;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);animation:role-overlay-in-2bb4a813 .16s ease-out}.login-alert[data-v-2bb4a813]{width:min(100%,350px);padding:25px 24px 22px;text-align:center;border:1px solid rgba(255,255,255,.9);border-radius:20px;background:linear-gradient(145deg,#fafbfc,#e6eaed);box-shadow:0 24px 65px #00000061;animation:role-modal-in-2bb4a813 .19s ease-out}.login-alert__icon[data-v-2bb4a813]{display:grid;width:48px;height:48px;margin:0 auto 13px;place-items:center;color:#fff;border:1px solid rgba(255,255,255,.45);border-radius:14px;background:linear-gradient(145deg,#65727e,#36414b);box-shadow:0 7px 17px #2a364038,inset 0 1px #fff3}.login-alert__icon--captcha[data-v-2bb4a813]{background:linear-gradient(145deg,#657887,#3b4e5b);box-shadow:0 7px 17px #30434f38,inset 0 1px #fff3}.login-alert__icon svg[data-v-2bb4a813]{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.login-alert h2[data-v-2bb4a813]{margin:0;color:#252d35;font-size:1.3rem;font-weight:750;letter-spacing:-.02em}.login-alert p[data-v-2bb4a813]{margin:8px auto 19px;color:#687580;font-size:.82rem;line-height:1.5}.login-alert .login-alert__message--error[data-v-2bb4a813]{color:#a52d2d;font-size:.9rem;font-weight:700}.login-alert>button[data-v-2bb4a813]{width:100%;min-height:42px;color:#fff;border:0;border-radius:11px;background:linear-gradient(135deg,#596570,#303944);box-shadow:0 7px 15px #2b343d2e;font-family:inherit;font-size:.82rem;font-weight:700;cursor:pointer}.login-alert>button[data-v-2bb4a813]:hover{background:linear-gradient(135deg,#687581,#394550)}.login-alert>button[data-v-2bb4a813]:focus-visible{outline:3px solid rgba(76,91,103,.3);outline-offset:2px}.role-modal-overlay[data-v-2bb4a813]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:900;display:grid;place-items:center;padding:24px;background:#070c10b3;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);animation:role-overlay-in-2bb4a813 .18s ease-out}.role-modal[data-v-2bb4a813]{width:min(100%,400px);padding:24px;border:1px solid rgba(255,255,255,.9);border-radius:24px;background:linear-gradient(145deg,#f8fafc,#e5e9ec);box-shadow:0 28px 70px #00000061;animation:role-modal-in-2bb4a813 .22s ease-out}.role-modal__seal[data-v-2bb4a813]{display:block;width:58px;height:58px;margin:-2px auto 10px;object-fit:contain;filter:drop-shadow(0 5px 7px rgba(28,34,39,.24))}.role-modal__title[data-v-2bb4a813]{margin:0 0 5px;text-align:center;color:#252c34;font-size:1.45rem;letter-spacing:-.03em}.role-selection[data-v-2bb4a813]{display:flex;flex-direction:column;gap:12px;margin-top:17px}.role-selection__intro[data-v-2bb4a813]{margin:0;color:#667085;line-height:1.5;text-align:center}.role-selection__button[data-v-2bb4a813]{width:100%;text-align:left;border:1px solid #d5dbe0;border-radius:16px;min-height:64px;background:#ffffffd1;padding:11px 13px;cursor:pointer;font-family:inherit;display:flex;align-items:center;gap:14px;transition:border-color .15s,background .15s,transform .15s,box-shadow .15s}.role-selection__button[data-v-2bb4a813]:hover:not(:disabled){background:#fff;border-color:#7b8794;transform:translateY(-1px);box-shadow:0 8px 20px #2f37421a}.role-selection__button[data-v-2bb4a813]:focus-visible{outline:3px solid rgba(75,85,99,.28);outline-offset:2px}.role-selection__button[data-v-2bb4a813]:disabled{opacity:.65;cursor:wait}.role-selection__icon[data-v-2bb4a813]{flex:0 0 40px;display:grid;place-items:center;height:40px;border:1px solid rgba(255,255,255,.52);border-radius:11px;color:#fff;background:linear-gradient(145deg,#66717c,#343d47);box-shadow:0 5px 12px #272f362e,inset 0 1px #ffffff38}.role-selection__icon--admin[data-v-2bb4a813]{background:linear-gradient(145deg,#435867,#263844)}.role-selection__icon--teacher[data-v-2bb4a813]{background:linear-gradient(145deg,#66717c,#3f4953)}.role-selection__icon svg[data-v-2bb4a813]{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.role-selection__copy[data-v-2bb4a813]{min-width:0;display:flex;flex:1;flex-direction:column;gap:4px}.role-selection__name[data-v-2bb4a813]{color:#252c34;font-weight:700;font-size:.95rem}.role-selection__arrow[data-v-2bb4a813]{color:#7b8794;font-size:1.25rem;transition:transform .15s}.role-selection__button:hover:not(:disabled) .role-selection__arrow[data-v-2bb4a813]{transform:translate(3px)}.role-modal__error[data-v-2bb4a813]{margin-top:14px}.role-modal__cancel[data-v-2bb4a813]{display:block;margin:16px auto 0;padding:6px 10px;border:0;color:#5b6470;background:transparent;font-family:inherit;font-size:.9rem;font-weight:600;cursor:pointer}.role-modal__cancel[data-v-2bb4a813]:hover:not(:disabled){color:#252c34;text-decoration:underline}.role-modal__cancel[data-v-2bb4a813]:disabled{opacity:.6;cursor:wait}@keyframes role-overlay-in-2bb4a813{0%{opacity:0}}@keyframes role-modal-in-2bb4a813{0%{opacity:0;transform:translateY(10px) scale(.98)}}@media (max-width: 520px){.card[data-v-2bb4a813]{padding:28px 20px 24px}.title[data-v-2bb4a813]{font-size:1.65rem}.name-row[data-v-2bb4a813]{flex-direction:column;gap:12px}.login-brand[data-v-2bb4a813]{gap:11px}.login-brand__seal-wrap[data-v-2bb4a813]{width:68px;height:68px;flex-basis:68px}.login-brand__seal[data-v-2bb4a813]{width:60px;height:60px}.login-brand__copy>span[data-v-2bb4a813]{max-width:190px;font-size:.54rem;line-height:1.3}.role-modal-overlay[data-v-2bb4a813]{padding:16px}.role-modal[data-v-2bb4a813]{padding:24px 18px;border-radius:20px}.role-modal__title[data-v-2bb4a813]{font-size:1.5rem}.role-selection__button[data-v-2bb4a813]{padding:14px 12px;gap:11px}.role-selection__description[data-v-2bb4a813]{line-height:1.35}}@media (prefers-reduced-motion: reduce){.role-modal-overlay[data-v-2bb4a813],.role-modal[data-v-2bb4a813]{animation:none}}.hidden-admin-btn[data-v-2bb4a813]{position:absolute;top:18px;right:24px;width:32px;height:32px;opacity:0;z-index:10;cursor:pointer;border:none;background:none}.admin-modal-overlay[data-v-2bb4a813]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000040;display:flex;align-items:center;justify-content:center;z-index:1000}.admin-modal[data-v-2bb4a813]{background:linear-gradient(145deg,#f8fafc,#e8ecef);border:1px solid rgba(255,255,255,.8);border-radius:16px;padding:32px 28px 24px;min-width:320px;box-shadow:0 8px 32px #00000024;display:flex;flex-direction:column;gap:12px;align-items:stretch}.page-bg[data-v-2bb4a813]{position:relative;isolation:isolate;overflow:hidden;background:#12171b!important}.tron-canvas[data-v-2bb4a813]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none}.page-bg>.card[data-v-2bb4a813]{position:relative;z-index:1}.typeahead-select[data-v-99bf3373]{position:relative;display:block;width:100%;min-width:0}.typeahead-input[data-v-99bf3373]{display:block;box-sizing:border-box;width:100%;min-width:0;min-height:46px;padding:9px 34px 9px 11px;border:1px solid #cbd3d8;border-radius:9px;outline:none;color:#344149;background:#fff;font:inherit;text-align:left;cursor:pointer;transition:border-color .15s,box-shadow .15s}.typeahead-input[data-v-99bf3373]:focus{border-color:#7f8d96;box-shadow:0 0 0 3px #46545e17}.typeahead-arrow[data-v-99bf3373]{position:absolute;z-index:1;top:50%;right:12px;pointer-events:none;transform:translateY(-50%)}.typeahead-menu[data-v-99bf3373]{position:absolute;z-index:40;top:calc(100% + 5px);left:0;right:0;max-height:230px;overflow-y:auto;padding:5px;border:1px solid #d7e0df;border-radius:8px;background:#fff;box-shadow:0 12px 28px #16312d29}.typeahead-option[data-v-99bf3373]{display:block;width:100%;padding:9px 11px;border:0;border-radius:5px;background:transparent;color:#263139;text-align:left;font:inherit;cursor:pointer}.typeahead-option[data-v-99bf3373]:hover,.typeahead-option.highlighted[data-v-99bf3373]{background:#e6f1ed;color:#1b4332}.typeahead-option[data-v-99bf3373] mark{padding:0;background:transparent;color:inherit;font-weight:650}.typeahead-empty[data-v-99bf3373]{padding:12px 11px;color:#68777a;font-size:.9rem}.layout[data-v-5dcd1c2a]{display:flex;height:100vh;overflow:hidden;background:#f5f6f8;font-family:Poppins,sans-serif}.sidebar[data-v-5dcd1c2a]{width:280px;min-width:280px;background:#fff;border-right:1px solid #ececec;display:flex;flex-direction:column;align-items:center;padding:28px 18px 24px;position:sticky;top:0;height:100vh;overflow-y:auto}.sidebar-profile[data-v-5dcd1c2a]{display:flex;flex-direction:column;align-items:center;gap:6px;margin-bottom:28px;text-align:center}.avatar-wrap[data-v-5dcd1c2a]{width:96px;height:96px;border-radius:50%;overflow:hidden;margin-bottom:10px;border:3px solid #c4c9cd}.avatar[data-v-5dcd1c2a]{width:100%;height:100%;object-fit:cover}.brand[data-v-5dcd1c2a]{font-size:1.05rem;font-weight:600;color:#4b5563}.role[data-v-5dcd1c2a]{font-size:.88rem;color:#444;font-weight:500}.email[data-v-5dcd1c2a]{font-size:.82rem;color:#888;word-break:break-all}.sidebar-nav[data-v-5dcd1c2a]{display:flex;flex-direction:column;gap:4px;width:100%;flex:1}.nav-item[data-v-5dcd1c2a]{display:flex;align-items:center;gap:10px;padding:11px 16px;border-radius:10px;font-size:.88rem;font-weight:400;color:#444;text-decoration:none;cursor:pointer;transition:background .18s,color .18s}.nav-item[data-v-5dcd1c2a]:hover{background:#f8fafc;color:#4b5563}.nav-item.active[data-v-5dcd1c2a]{background:#4b5563;color:#fff}.nav-item.active .nav-icon[data-v-5dcd1c2a]{color:#fff}.nav-icon[data-v-5dcd1c2a]{display:flex;align-items:center;flex-shrink:0}.logout-btn[data-v-5dcd1c2a]{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:11px 12px;background:#e63946;color:#fff;border:none;border-radius:10px;font-size:.85rem;font-weight:500;font-family:inherit;cursor:pointer;transition:background .2s;margin-top:16px}.logout-btn[data-v-5dcd1c2a]:hover{background:#c1121f}.main[data-v-5dcd1c2a]{flex:1;padding:40px 44px 32px;overflow-y:auto;min-width:0;display:flex;flex-direction:column}.main-header[data-v-5dcd1c2a]{margin-bottom:24px;display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.page-title[data-v-5dcd1c2a]{font-size:2rem;font-weight:600;color:#4b5563;letter-spacing:-.5px;line-height:1.2}.page-sub[data-v-5dcd1c2a]{font-size:.95rem;color:#777;margin-top:4px}.header-actions[data-v-5dcd1c2a]{display:flex;align-items:center;gap:10px;padding-top:6px;flex-shrink:0}.term-switcher.header-term-switcher[data-v-5dcd1c2a]{display:flex;align-items:center;gap:8px}.term-current-label[data-v-5dcd1c2a]{color:#4b5563;font-size:.9rem;font-weight:600}.term-switch-btn[data-v-5dcd1c2a]{border:1px solid #cbd5e1;background:#fff;color:#334155;padding:8px 13px;border-radius:999px;font-size:.85rem;cursor:pointer;transition:background .18s,border-color .18s}.term-switch-btn.active[data-v-5dcd1c2a]{background:#4b5563;border-color:#4b5563;color:#fff}.term-switch-btn[data-v-5dcd1c2a]:hover{background:#e2e8f0}.new-sched-btn[data-v-5dcd1c2a]{display:flex;align-items:center;gap:6px;background:#4b5563;color:#fff;border:none;border-radius:8px;padding:9px 18px;font-size:.85rem;font-weight:500;font-family:inherit;cursor:pointer;transition:background .18s}.new-sched-btn[data-v-5dcd1c2a]:hover{background:#6b7280}.lunch-subject-selected[data-v-5dcd1c2a]{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:8px 12px;color:#4e575d;background:linear-gradient(145deg,#f0f2f3,#cdd3d6);border:1px solid #aeb5b9;border-radius:10px;font-size:.84rem;font-weight:700}.lunch-break-footer[data-v-5dcd1c2a]{padding:0 24px 12px}.lunch-break-modal-btn[data-v-5dcd1c2a]{display:inline-flex;align-items:center;justify-content:center;gap:7px;width:100%;min-height:40px;padding:9px 14px;color:#4e575d;background:linear-gradient(145deg,#f0f2f3,#cdd3d6);border:1px solid #aeb5b9;border-radius:10px;font:inherit;font-size:.86rem;font-weight:700;cursor:pointer;transition:filter .15s,box-shadow .15s,transform .15s}.lunch-break-modal-btn[data-v-5dcd1c2a]:hover{filter:brightness(1.04);box-shadow:0 3px 9px #3d434929,inset 0 1px #ffffffc2}.lunch-break-modal-btn[data-v-5dcd1c2a]:active{transform:translateY(1px)}.lunch-break-picker-overlay[data-v-5dcd1c2a]{z-index:1100}.lunch-break-picker[data-v-5dcd1c2a]{width:430px;max-width:94vw;padding:26px;color:#31383e;background:linear-gradient(145deg,#fafbfb,#dde1e3);border:1px solid rgba(255,255,255,.8);border-radius:18px;box-shadow:0 24px 60px #21262b52}.lunch-break-picker-header[data-v-5dcd1c2a]{align-items:center;display:flex;gap:12px;margin-bottom:20px}.lunch-break-picker-icon[data-v-5dcd1c2a]{display:flex;align-items:center;justify-content:center;width:42px;height:42px;flex-shrink:0;color:#4e575d;background:linear-gradient(145deg,#f0f2f3,#cdd3d6);border:1px solid #aeb5b9;border-radius:12px}.lunch-break-picker h2[data-v-5dcd1c2a]{margin:0;color:#32383e;font-size:1.15rem}.lunch-break-picker-header p[data-v-5dcd1c2a]{margin:3px 0 0;color:#687078;font-size:.82rem;line-height:1.35}.lunch-break-picker-fields[data-v-5dcd1c2a]{display:grid;gap:12px}.lunch-break-picker-field[data-v-5dcd1c2a]{display:grid;grid-template-columns:92px 1fr;align-items:center;gap:12px;color:#424950;font-size:.85rem;font-weight:700}.lunch-break-picker-field select[data-v-5dcd1c2a]{width:100%;padding:9px 12px;color:#343a40;background:#ffffffbd;border:1px solid #b9c0c4;border-radius:9px;font:inherit;font-size:.84rem}.lunch-break-picker-error[data-v-5dcd1c2a]{margin:14px 0 0;padding:8px 10px;color:#8b2d33;background:#fbe5e6;border-radius:8px;font-size:.8rem}.lunch-break-picker-actions[data-v-5dcd1c2a]{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:20px}.icon-btn[data-v-5dcd1c2a]{background:none;border:1px solid #ddd;border-radius:8px;padding:6px 10px;cursor:pointer;color:#555;display:flex;align-items:center;transition:border-color .15s,color .15s}.icon-btn[data-v-5dcd1c2a]:hover{border-color:#9ca3af;color:#4b5563}.consult-btn[data-v-5dcd1c2a]{background:#4a90d9!important;color:#fff!important;border-color:#4a90d9!important}.consult-btn[data-v-5dcd1c2a]:hover{background:#357abd!important}.mode-select-container[data-v-5dcd1c2a]{display:flex;flex-direction:column;gap:16px}.mode-grid[data-v-5dcd1c2a]{display:flex;gap:24px;flex-wrap:wrap}.mode-card[data-v-5dcd1c2a]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;width:260px;min-height:220px;padding:36px 28px;background:#fff;border:2px solid #e0e0e0;border-radius:18px;cursor:pointer;transition:all .2s;font-family:inherit;box-shadow:0 2px 8px #0000000f}.mode-card[data-v-5dcd1c2a]:hover{border-color:#9ca3af;background:#f8fafc;transform:translateY(-2px);box-shadow:0 6px 20px #535b6426}.mode-icon-wrap[data-v-5dcd1c2a]{width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,#f3f4f6,#d8dcdf);display:flex;align-items:center;justify-content:center;color:#4b5563}.mode-label[data-v-5dcd1c2a]{font-size:1.1rem;font-weight:700;color:#4b5563}.mode-desc[data-v-5dcd1c2a]{font-size:.85rem;color:#888;text-align:center;line-height:1.4}.step-container[data-v-5dcd1c2a]{display:flex;flex-direction:column;gap:16px}.step-hint[data-v-5dcd1c2a]{font-size:.9rem;color:#888;margin:0}.teacher-search-wrap[data-v-5dcd1c2a]{display:flex;align-items:center;gap:10px;width:min(420px,100%);padding:12px 14px;border:1.5px solid #dce8e1;border-radius:999px;background:#f4f5f5;margin-bottom:16px}.teacher-search-icon[data-v-5dcd1c2a]{color:#9ca3af;flex-shrink:0}.teacher-search-input[data-v-5dcd1c2a]{border:none;outline:none;background:transparent;width:100%;font-size:.95rem;color:#4b5563;font-family:inherit}.room-search-wrap[data-v-5dcd1c2a]{margin-bottom:14px}.floor-grid[data-v-5dcd1c2a]{display:flex;gap:20px;flex-wrap:wrap}.floor-card[data-v-5dcd1c2a]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;width:220px;min-height:190px;padding:32px 24px;background:#fff;border:2px solid #e0e0e0;border-radius:18px;cursor:pointer;transition:all .2s;font-family:inherit;box-shadow:0 2px 8px #0000000f}.floor-card[data-v-5dcd1c2a]:hover{border-color:#9ca3af;background:#f8fafc;transform:translateY(-2px)}.floor-card-expanded[data-v-5dcd1c2a]{width:100%;min-height:auto;align-items:flex-start;justify-content:flex-start;padding:24px 28px}.floor-card-header[data-v-5dcd1c2a]{display:flex;align-items:center;gap:12px;margin-bottom:16px}.floor-card-meta[data-v-5dcd1c2a]{display:flex;flex-direction:column;gap:4px}.floor-room-buttons[data-v-5dcd1c2a]{display:flex;flex-wrap:wrap;gap:10px;width:100%}.floor-room-btn[data-v-5dcd1c2a]{border:1px solid #dce8e1;background:#f4f5f5;color:#4b5563;border-radius:999px;padding:8px 14px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .18s;font-family:inherit}.floor-room-btn[data-v-5dcd1c2a]:hover{border-color:#9ca3af;background:#e8f5ea;transform:translateY(-1px)}.floor-number[data-v-5dcd1c2a]{width:54px;height:54px;border-radius:50%;background:linear-gradient(135deg,#4b5563,#9ca3af);color:#fff;font-size:1.4rem;font-weight:700;display:flex;align-items:center;justify-content:center}.floor-label[data-v-5dcd1c2a]{font-size:1rem;font-weight:600;color:#4b5563}.floor-room-count[data-v-5dcd1c2a]{font-size:.78rem;color:#888}.room-grid[data-v-5dcd1c2a]{display:flex;flex-wrap:wrap;gap:14px}.room-card[data-v-5dcd1c2a]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;width:155px;min-height:140px;padding:20px 14px;background:#fff;border:1.5px solid #e0e0e0;border-radius:14px;cursor:pointer;transition:all .18s;font-family:inherit;box-shadow:0 1px 4px #0000000d}.room-card[data-v-5dcd1c2a]:hover{border-color:#9ca3af;background:#f8fafc;transform:translateY(-2px)}.room-card-inline[data-v-5dcd1c2a]{min-height:110px;width:130px;justify-content:center}.room-card-comlab[data-v-5dcd1c2a]{border-color:#c5e1f9;background:#f0f8ff}.room-card-comlab[data-v-5dcd1c2a]:hover{border-color:#4a90d9;background:#e8f4ff}.room-card-icon[data-v-5dcd1c2a]{color:#4b5563;opacity:.5}.room-card-comlab .room-card-icon[data-v-5dcd1c2a]{color:#4a90d9}.room-card-number[data-v-5dcd1c2a]{font-size:1rem;font-weight:700;color:#4b5563;text-align:center}.room-card-floor[data-v-5dcd1c2a]{font-size:.72rem;color:#888}.teacher-grid[data-v-5dcd1c2a]{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;width:100%;max-width:1200px}.teacher-card[data-v-5dcd1c2a]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:180px;padding:20px 16px;width:100%;box-sizing:border-box;background:#fff;border:1.5px solid #e0e0e0;border-radius:16px;cursor:pointer;transition:all .18s;font-family:inherit;box-shadow:0 1px 4px #0000000d}.teacher-card[data-v-5dcd1c2a]:hover{border-color:#9ca3af;background:#f8fafc;transform:translateY(-2px)}.teacher-avatar-img[data-v-5dcd1c2a]{width:88px;height:88px;border-radius:50%;object-fit:cover;border:3px solid #dfe2e4;box-shadow:0 4px 12px #30353a1f}.teacher-avatar[data-v-5dcd1c2a]{width:88px;height:88px;border-radius:50%;background:linear-gradient(135deg,#4b5563,#9ca3af);color:#fff;font-size:1.15rem;font-weight:700;display:flex;align-items:center;justify-content:center}.teacher-name[data-v-5dcd1c2a]{font-size:.95rem;font-weight:600;color:#4b5563;text-align:center;line-height:1.3}.small-empty-state[data-v-5dcd1c2a]{padding:18px 20px;border-radius:12px;background:#f4f5f5;border:1px dashed #cfe3d8;color:#5d7a6d}@media (max-width: 900px){.teacher-grid[data-v-5dcd1c2a]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 560px){.teacher-grid[data-v-5dcd1c2a]{grid-template-columns:1fr}}.loading-state[data-v-5dcd1c2a]{display:flex;align-items:center;gap:10px;color:#9ca3af;font-size:.9rem;padding:40px 0;justify-content:center}.spin-icon[data-v-5dcd1c2a]{animation:spin-5dcd1c2a 1s linear infinite}@keyframes spin-5dcd1c2a{to{transform:rotate(360deg)}}.header-left[data-v-5dcd1c2a]{display:flex;flex-direction:column;gap:4px}.header-right[data-v-5dcd1c2a]{display:flex;flex-direction:column;align-items:flex-end;gap:10px;flex-shrink:0}.breadcrumb[data-v-5dcd1c2a]{display:flex;align-items:center;gap:6px;margin-bottom:4px}.bc-btn[data-v-5dcd1c2a]{background:none;border:none;font-family:inherit;font-size:.83rem;color:#9ca3af;font-weight:500;cursor:pointer;padding:0;transition:color .15s;text-decoration:underline;text-underline-offset:2px}.bc-btn[data-v-5dcd1c2a]:hover{color:#4b5563}.bc-active[data-v-5dcd1c2a]{color:#4b5563!important;text-decoration:none;cursor:default}.bc-current[data-v-5dcd1c2a]{font-size:.83rem;font-weight:700;color:#4b5563}.schedule-card[data-v-5dcd1c2a]{background:#fff;border-radius:16px;box-shadow:0 2px 12px #00000012;padding:28px 28px 20px;display:flex;flex-direction:column}.sched-topbar[data-v-5dcd1c2a]{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px;flex-wrap:wrap}.sched-grid-title[data-v-5dcd1c2a]{font-size:1.4rem;font-weight:700;color:#111;margin:0 0 2px}.sched-grid-sub[data-v-5dcd1c2a]{font-size:.85rem;color:#666;margin:0;font-weight:400;transition:all .3s ease}.sched-grid-sub.teacher-selected[data-v-5dcd1c2a]{font-size:.92rem;color:#4b5563;font-weight:600;background:linear-gradient(120deg,#f3f4f6,#e1f5fe);padding:10px 14px;border-left:4px solid #9ca3af;border-radius:6px;box-shadow:0 2px 8px #535b6426}.sched-grid-meta[data-v-5dcd1c2a],.sched-topbar-right[data-v-5dcd1c2a]{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.sched-select-wrap[data-v-5dcd1c2a]{position:relative;display:flex;align-items:center}.sched-select[data-v-5dcd1c2a]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff;border:1px solid #ddd;border-radius:8px;padding:7px 32px 7px 12px;font-size:.85rem;font-family:inherit;color:#333;cursor:pointer;outline:none}.sched-select[data-v-5dcd1c2a]:focus{border-color:#9ca3af}.sched-select-arrow[data-v-5dcd1c2a]{position:absolute;right:10px;pointer-events:none;color:#666}.teacher-select-wrap[data-v-5dcd1c2a]{padding:3px 6px;background:linear-gradient(135deg,#f3f4f6,#f1f8f6);border-radius:10px;border:2px solid #9ca3af;box-shadow:0 4px 12px #535b6433;transition:all .2s ease}.teacher-select-wrap[data-v-5dcd1c2a]:hover{border-color:#4b5563;box-shadow:0 6px 16px #30353a40}.teacher-select[data-v-5dcd1c2a]{background:linear-gradient(to bottom,#f8fffe,#eef9f7);border:1px solid #9ca3af!important;border-radius:8px;padding:8px 32px 8px 13px;font-size:.88rem;font-weight:500;color:#4b5563}.sched-grid-wrap[data-v-5dcd1c2a]{width:100%;overflow-x:auto;margin-top:8px;position:relative}.sched-grid[data-v-5dcd1c2a]{width:100%;border-collapse:collapse;table-layout:fixed;min-width:800px}.sched-grid th[data-v-5dcd1c2a]{background:#4b5563;color:#fff;font-size:.85rem;font-weight:600;padding:12px 10px;text-align:center;white-space:nowrap;position:sticky;top:0;z-index:10}.th-time[data-v-5dcd1c2a]{width:90px;position:sticky;left:0;z-index:20;background:#4b5563}.sched-grid tbody tr[data-v-5dcd1c2a]{height:40px}.sched-grid tbody tr.half-hour .td-time[data-v-5dcd1c2a]{background:#f4f5f6}.sched-grid td[data-v-5dcd1c2a]{border:1px solid #ececec;padding:0;vertical-align:top;position:relative}.sched-grid td.td-time[data-v-5dcd1c2a]{background:#f8f9fa;text-align:center;vertical-align:middle;font-size:.78rem;color:#4b5563;font-weight:600;white-space:nowrap;border:1px solid #ececec;position:sticky;left:0;z-index:15;width:90px;padding:0 6px}.sched-grid tbody tr.half-hour td[data-v-5dcd1c2a]{border-top:1px dashed #eee}.view-toggle[data-v-5dcd1c2a]{display:flex;align-items:center;gap:8px;margin-right:8px}.view-btn[data-v-5dcd1c2a]{border:1px solid #d1d5db;background:#f8fafc;color:#374151;border-radius:999px;padding:8px 12px;font-size:.82rem;cursor:pointer;transition:all .18s ease}.view-btn[data-v-5dcd1c2a]:hover{background:#eef2ff}.view-btn.active[data-v-5dcd1c2a]{background:#4b5563;color:#fff;border-color:#4b5563}.schedule-list-wrap[data-v-5dcd1c2a]{width:100%;margin-top:8px}.schedule-list-meta[data-v-5dcd1c2a]{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;font-size:.9rem;color:#4b5563}.schedule-list-table-wrap[data-v-5dcd1c2a]{width:100%;overflow-x:auto}.schedule-list-table[data-v-5dcd1c2a]{width:100%;border-collapse:collapse;min-width:720px}.schedule-list-table th[data-v-5dcd1c2a],.schedule-list-table td[data-v-5dcd1c2a]{padding:12px 10px;border:1px solid #e5e7eb;text-align:left;font-size:.9rem;vertical-align:top}.schedule-list-table th[data-v-5dcd1c2a]{background:#f8fafc;color:#334155;font-weight:700}.schedule-list-row[data-v-5dcd1c2a]{cursor:pointer}.schedule-list-row[data-v-5dcd1c2a]:hover{background:#f8fafc}.schedule-list-note[data-v-5dcd1c2a]{color:#6b7280}.empty-state-row td[data-v-5dcd1c2a]{padding:28px 10px;text-align:center;color:#6b7280}.schedule-input-row[data-v-5dcd1c2a]{background:#fbfbfb}.schedule-input-row td[data-v-5dcd1c2a]{padding:8px 10px}.schedule-input-row .form-input[data-v-5dcd1c2a],.schedule-input-row .form-select[data-v-5dcd1c2a]{width:100%;min-width:0}.schedule-input-row .form-select.small[data-v-5dcd1c2a]{padding:8px 10px;font-size:.84rem}.time-inputs[data-v-5dcd1c2a]{display:grid;grid-template-columns:1fr auto 1fr;gap:6px;align-items:center}.time-separator[data-v-5dcd1c2a]{color:#6b7280;font-size:.95rem;display:inline-flex;align-items:center;justify-content:center}.inline-campus-row[data-v-5dcd1c2a]{display:grid;gap:6px}.inline-campus-row .campus-btn.small[data-v-5dcd1c2a]{border-radius:8px;padding:6px 8px;font-size:.78rem}.save-inline-btn[data-v-5dcd1c2a]{width:100%;justify-content:center;font-size:.82rem;padding:8px 10px}.table-time-error[data-v-5dcd1c2a]{margin-top:6px;font-size:.8rem;color:#e63946}.td-cell[data-v-5dcd1c2a]{cursor:pointer;transition:background .15s;padding:0;position:relative}.td-cell[data-v-5dcd1c2a]:hover{background:#f4f5f5}.td-cell.has-entry[data-v-5dcd1c2a]{padding:0}.td-cell.readonly-entry-cell[data-v-5dcd1c2a]{cursor:default}.td-cell.readonly-entry-cell[data-v-5dcd1c2a]:hover{background:inherit}.sched-entry[data-v-5dcd1c2a]{position:absolute;top:3px;left:3px;right:3px;border-radius:6px;padding:5px 7px;display:flex;flex-direction:column;justify-content:flex-start;cursor:pointer;transition:filter .15s;gap:1px;box-sizing:border-box;overflow:hidden}.sched-entry[data-v-5dcd1c2a]:hover{filter:brightness(.95)}.sched-entry.entry-readonly[data-v-5dcd1c2a]:hover{filter:none}.subbed-indication[data-v-5dcd1c2a]{width:100%;margin-bottom:3px;border:1px solid rgba(255,255,255,.72);border-radius:5px;background:#b42318;color:#fff;padding:3px 6px;font-size:.66rem;font-weight:800;line-height:1.25;letter-spacing:.035em;text-align:center;white-space:normal;overflow-wrap:anywhere}.entry-teacher[data-v-5dcd1c2a]{font-size:.85rem;font-weight:700;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:52px}.entry-subject[data-v-5dcd1c2a]{font-size:.78rem;opacity:.9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:52px}.entry-time-range[data-v-5dcd1c2a]{font-size:.7rem;opacity:.75;font-style:italic;margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.entry-section-rows[data-v-5dcd1c2a]{display:flex;flex-direction:column;gap:2px;margin-top:3px;border-top:1px solid rgba(255,255,255,.25);padding-top:3px}.entry-section-row[data-v-5dcd1c2a]{display:flex;align-items:center;justify-content:space-between;gap:4px}.entry-section-badge[data-v-5dcd1c2a]{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;opacity:.9;background:#fff3;padding:1px 4px;border-radius:3px}.entry-room[data-v-5dcd1c2a]{font-size:.72rem;opacity:.75;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:56px}.entry-edit-hint[data-v-5dcd1c2a]{font-size:.6rem;opacity:0;transition:opacity .15s;font-style:italic;position:absolute;bottom:2px;right:6px;background:#0000004d;padding:1px 4px;border-radius:3px;color:#fff;z-index:2}.sched-entry:hover .entry-edit-hint[data-v-5dcd1c2a]{opacity:.9}.entry-timestamp[data-v-5dcd1c2a]{font-size:.55rem;opacity:.6;font-style:italic;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:absolute;bottom:2px;left:6px;background:#0003;padding:1px 4px;border-radius:3px;color:#ffffffe6;z-index:2}.click-to-add[data-v-5dcd1c2a]{display:flex;align-items:center;justify-content:center;height:100%;text-align:center;font-size:.72rem;color:#aaa;-webkit-user-select:none;user-select:none;padding:4px}.free-time-cell[data-v-5dcd1c2a]{background:#ede9fe}.free-time-cell .click-to-add[data-v-5dcd1c2a]{color:#6d28d9}.color-green[data-v-5dcd1c2a]{background:#1f6b45;color:#fff}.color-yellow[data-v-5dcd1c2a]{background:#e9c46a;color:#5a3e00}.color-pink[data-v-5dcd1c2a]{background:#e9a8c1;color:#5a1732}.color-orange[data-v-5dcd1c2a]{background:#f4a261;color:#5a2d00}.color-blue[data-v-5dcd1c2a]{background:#4a90d9;color:#fff}.color-gray[data-v-5dcd1c2a]{background:#626c76;color:#fff}.color-purple[data-v-5dcd1c2a]{background:#7b5ea7;color:#fff}.color-red[data-v-5dcd1c2a]{background:#e63946;color:#fff}.consult-entry[data-v-5dcd1c2a]{cursor:pointer;pointer-events:auto}.consult-cell[data-v-5dcd1c2a]{cursor:default!important}.consult-cell[data-v-5dcd1c2a]:hover{background:inherit!important}.modal-overlay[data-v-5dcd1c2a]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:1000}.sched-modal-box[data-v-5dcd1c2a]{background:#fff;border-radius:20px;padding:32px 36px 28px;width:500px;max-width:96vw;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 16px 48px #0000002e}.sched-modal-header[data-v-5dcd1c2a]{margin-bottom:20px}.sched-modal-mode-badge[data-v-5dcd1c2a]{display:inline-block;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;padding:3px 10px;border-radius:20px;margin-bottom:6px}.badge-add[data-v-5dcd1c2a]{background:#f3f4f6;color:#4b5563}.badge-edit[data-v-5dcd1c2a]{background:#fff3cd;color:#7a5500}.sched-modal-title[data-v-5dcd1c2a]{font-size:1.25rem;font-weight:700;color:#4b5563;margin:0 0 3px}.sched-modal-sub[data-v-5dcd1c2a]{font-size:.84rem;color:#888;margin:0}.sched-form[data-v-5dcd1c2a]{display:flex;flex-direction:column;gap:13px;margin-bottom:22px}.form-row-inline[data-v-5dcd1c2a]{display:grid;grid-template-columns:100px 1fr;align-items:center;gap:12px}.form-row-inline.schedule-for-row[data-v-5dcd1c2a]{grid-template-columns:1fr}.form-label[data-v-5dcd1c2a]{font-size:.95rem;font-weight:700;color:#111}.form-select-wrap[data-v-5dcd1c2a]{position:relative;display:flex;align-items:center}.form-select[data-v-5dcd1c2a]{width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #ccc;border-radius:10px;padding:9px 34px 9px 14px;font-size:.88rem;font-family:inherit;color:#333;background:#fff;cursor:pointer;outline:none;transition:border-color .15s}.form-select[data-v-5dcd1c2a]:focus{border-color:#9ca3af}.form-input[data-v-5dcd1c2a]{width:100%;border:1px solid #ccc;border-radius:10px;padding:9px 14px;font-size:.88rem;font-family:inherit;color:#333;background:#fff;outline:none;transition:border-color .15s}.form-input[data-v-5dcd1c2a]:focus{border-color:#9ca3af}.sel-arrow[data-v-5dcd1c2a]{position:absolute;right:12px;pointer-events:none;color:#666}.campus-toggle[data-v-5dcd1c2a]{display:inline-flex;gap:8px}.campus-btn[data-v-5dcd1c2a]{border:1px solid #d4d4d4;background:#f8f9fa;color:#666;border-radius:8px;padding:7px 12px;font-size:.8rem;font-weight:600;font-family:inherit;cursor:pointer;transition:all .15s}.campus-btn.active[data-v-5dcd1c2a]{background:#f3f4f6;color:#4b5563;border-color:#9ca3af}.parallel-slot-divider[data-v-5dcd1c2a]{font-size:.78rem;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.06em;padding:6px 0 2px;border-top:1px solid #f3f4f6;margin-top:4px}.parallel-row[data-v-5dcd1c2a]{display:flex;align-items:center;gap:24px;margin-top:4px}.parallel-btn[data-v-5dcd1c2a]{display:flex;align-items:center;gap:8px;background:none;border:none;font-family:inherit;font-size:.92rem;font-weight:500;color:#444;cursor:pointer;padding:0;transition:color .15s}.parallel-btn.active[data-v-5dcd1c2a]{color:#4b5563;font-weight:600}.par-radio[data-v-5dcd1c2a]{width:22px;height:22px;border-radius:50%;border:2px solid #bbb;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s,border-color .15s}.par-radio.checked[data-v-5dcd1c2a]{background:#4b5563;border-color:#4b5563}.sched-modal-actions[data-v-5dcd1c2a]{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:4px}.clear-slot-btn[data-v-5dcd1c2a]{margin-right:auto;display:flex;align-items:center;gap:6px;background:none;border:1px solid #e63946;color:#e63946;font-family:inherit;font-size:.85rem;font-weight:600;padding:7px 14px;border-radius:8px;cursor:pointer;transition:background .15s}.clear-slot-btn[data-v-5dcd1c2a]:hover{background:#ffeaea}.cancel-btn-text[data-v-5dcd1c2a]{background:none;border:none;color:#e63946;font-family:inherit;font-size:1rem;font-weight:600;cursor:pointer;padding:8px 12px;transition:opacity .15s}.cancel-btn-text[data-v-5dcd1c2a]:hover{opacity:.75}.save-btn[data-v-5dcd1c2a]{display:flex;align-items:center;gap:6px;background:#4b5563;color:#fff;border:none;font-family:inherit;font-size:.88rem;font-weight:600;padding:10px 26px;border-radius:10px;cursor:pointer;transition:background .18s}.save-btn[data-v-5dcd1c2a]:hover:not(:disabled){background:#6b7280}.save-btn[data-v-5dcd1c2a]:disabled{opacity:.5;cursor:default}.form-value-locked[data-v-5dcd1c2a]{display:flex;align-items:center;padding:6px 12px;border-radius:8px;background:#f8fafc;border:1px solid #e5e7eb;font-size:.875rem;color:#4b5563;font-weight:600;min-width:0;flex:1}.schedule-for-text[data-v-5dcd1c2a]{display:flex;align-items:center;justify-content:center;text-align:center;flex:1;min-height:42px;padding:10px 14px;border-left:5px solid #626a72;border-radius:10px;background:linear-gradient(135deg,#f3f4f6,#d7efe4);box-shadow:0 6px 14px #2d8a5924;font-size:.94rem;color:#41484f;font-weight:800}.consult-modal-box[data-v-5dcd1c2a]{max-width:480px}.consult-slots-list[data-v-5dcd1c2a]{display:flex;flex-direction:column;gap:8px;padding:4px 24px 12px}.consult-slot-item[data-v-5dcd1c2a]{display:flex;align-items:center;gap:10px;background:#f0f6ff;border:1px solid #c8dff8;border-radius:8px;padding:8px 12px}.consult-slot-day[data-v-5dcd1c2a]{font-weight:700;font-size:.82rem;color:#4b5563;min-width:36px}.consult-slot-time[data-v-5dcd1c2a]{flex:1;font-size:.82rem;color:#333}.consult-slot-dur[data-v-5dcd1c2a]{font-size:.78rem;color:#666;white-space:nowrap}.consult-slot-actions[data-v-5dcd1c2a]{display:flex;gap:6px}.consult-edit-btn[data-v-5dcd1c2a]{padding:3px 10px;border-radius:5px;border:1px solid #4a90d9;background:transparent;color:#4a90d9;font-size:.78rem;cursor:pointer}.consult-edit-btn[data-v-5dcd1c2a]:hover{background:#e8f0fb}.consult-del-btn[data-v-5dcd1c2a]{padding:3px 8px;border-radius:5px;border:1px solid #e63946;background:transparent;color:#e63946;cursor:pointer;display:flex;align-items:center}.consult-del-btn[data-v-5dcd1c2a]:hover{background:#fde8e8}.consult-empty[data-v-5dcd1c2a]{padding:8px 24px 12px;color:#888;font-size:.84rem;font-style:italic}.consult-form-title[data-v-5dcd1c2a]{padding:0 24px 8px;font-weight:600;font-size:.88rem;color:#4b5563}.limit-warning[data-v-5dcd1c2a]{color:#e63946;font-weight:600}.limit-ok[data-v-5dcd1c2a]{color:#4b5563}.time-error[data-v-5dcd1c2a]{display:flex;align-items:center;gap:6px;color:#e63946;font-size:.8rem;font-weight:500;background:#ffeaea;border-radius:8px;padding:8px 12px;margin:0 28px}.consult-modal-box[data-v-5dcd1c2a]{width:520px;max-width:calc(100vw - 32px);max-height:min(760px,calc(100vh - 40px));padding:0;overflow:hidden auto;border:1px solid rgba(255,255,255,.9);border-radius:18px;background:#f7f8f9;box-shadow:0 26px 70px #141b1f47,inset 0 1px #fff}.consult-modal-box .sched-modal-header[data-v-5dcd1c2a]{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin:0;padding:22px 24px 18px;border-bottom:1px solid #dde2e5;background:linear-gradient(135deg,#fff,#edf0f1)}.consult-heading-copy[data-v-5dcd1c2a]{min-width:0;flex:1}.consult-modal-box .sched-modal-mode-badge[data-v-5dcd1c2a]{margin-bottom:8px;padding:5px 9px;color:#64717a;border:1px solid #d8dee2;background:#f2f4f5;font-size:.61rem;letter-spacing:.1em}.consult-modal-box .sched-modal-title[data-v-5dcd1c2a]{overflow:hidden;color:#273139;font-size:1.18rem;font-weight:680;letter-spacing:-.025em;white-space:nowrap;text-overflow:ellipsis}.consult-close[data-v-5dcd1c2a]{display:grid;width:36px;height:36px;flex:0 0 36px;place-items:center;padding:0;border-color:#cbd2d6;border-radius:9px;background:linear-gradient(145deg,#fff,#e5e9eb);box-shadow:0 3px 8px #262e3412}.consult-close[data-v-5dcd1c2a]:hover{color:#232d34;border-color:#929ea6;background:#fff}.consult-usage[data-v-5dcd1c2a]{display:flex;align-items:center;gap:10px;margin-top:8px;color:#68747c;font-size:.69rem;font-weight:600}.consult-progress[data-v-5dcd1c2a]{width:110px;height:5px;overflow:hidden;border-radius:999px;background:#d9dfe2}.consult-progress span[data-v-5dcd1c2a]{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#71808a,#3d4952);transition:width .2s ease}.consult-slots-list[data-v-5dcd1c2a]{gap:8px;padding:16px 24px 4px}.consult-slot-item[data-v-5dcd1c2a]{padding:10px 11px;border-color:#d7dee2;border-radius:9px;background:#fff;box-shadow:0 3px 8px #262e340a}.consult-slot-day[data-v-5dcd1c2a]{color:#35424b}.consult-slot-time[data-v-5dcd1c2a]{color:#536069}.consult-slot-dur[data-v-5dcd1c2a]{padding:3px 7px;border-radius:999px;background:#edf1f3;color:#64717a;font-size:.64rem;font-weight:650}.consult-edit-btn[data-v-5dcd1c2a]{color:#4b5a64;border-color:#bcc6cc;background:#f7f9fa}.consult-edit-btn[data-v-5dcd1c2a]:hover{background:#e9edef}.consult-del-btn[data-v-5dcd1c2a]{color:#8b4b4b;border-color:#dbc4c4}.consult-empty[data-v-5dcd1c2a]{display:flex;align-items:center;gap:11px;margin:16px 24px 2px;padding:13px 14px;color:#68747c;border:1px dashed #cbd3d8;border-radius:10px;background:#f0f3f4;font-style:normal}.consult-empty-icon[data-v-5dcd1c2a]{display:grid;width:36px;height:36px;flex:0 0 36px;place-items:center;color:#5a6872;border-radius:9px;background:#e2e7e9}.consult-empty strong[data-v-5dcd1c2a],.consult-empty span[data-v-5dcd1c2a]{display:block}.consult-empty strong[data-v-5dcd1c2a]{color:#354149;font-size:.74rem;font-weight:680}.consult-empty div span[data-v-5dcd1c2a]{margin-top:2px;font-size:.65rem}.consult-form-shell[data-v-5dcd1c2a]{gap:12px;margin:16px 24px 0;padding:17px 0 0;border-top:1px solid #dce2e5}.consult-form-title[data-v-5dcd1c2a]{padding:0 0 2px;color:#34414a;font-size:.82rem;font-weight:680}.consult-modal-box .form-row-inline[data-v-5dcd1c2a]{grid-template-columns:1fr;gap:6px}.consult-modal-box .form-label[data-v-5dcd1c2a]{color:#5a6770;font-size:.67rem;font-weight:680}.consult-modal-box .form-select[data-v-5dcd1c2a]{min-height:42px;padding:9px 34px 9px 11px;color:#344149;border-color:#cbd3d8;border-radius:9px;background:#fff;font-size:.72rem}.consult-modal-box .form-select[data-v-5dcd1c2a]:focus{border-color:#7f8d96;box-shadow:0 0 0 3px #46545e17}.consult-modal-box .time-error[data-v-5dcd1c2a]{margin:0}.consult-modal-box .sched-modal-actions[data-v-5dcd1c2a]{margin:18px 0 0;padding:15px 24px 20px;border-top:1px solid #dce2e5;background:#f0f3f4}.consult-modal-box .cancel-btn-text[data-v-5dcd1c2a]{min-height:38px;padding:8px 13px;color:#5d6a73;border:1px solid transparent;border-radius:8px;font-size:.72rem;font-weight:650}.consult-modal-box .cancel-btn-text[data-v-5dcd1c2a]:hover{border-color:#d0d7db;background:#fff;opacity:1}.consult-modal-box .save-btn[data-v-5dcd1c2a]{min-height:40px;padding:9px 17px;border:1px solid #414d56;border-radius:9px;background:linear-gradient(145deg,#64717b,#37434c);box-shadow:0 4px 10px #262e3429;font-size:.72rem}.consult-modal-box .save-btn[data-v-5dcd1c2a]:disabled{color:#929aa0;border-color:#d1d7db;background:#dfe3e5;box-shadow:none;opacity:1}.schedule-entry-modal[data-v-5dcd1c2a]{width:720px;max-width:calc(100vw - 32px);max-height:calc(100vh - 36px);padding:0;overflow-y:auto;border:1px solid rgba(255,255,255,.92);border-radius:18px;background:#f7f8f9;box-shadow:0 26px 70px #141b1f4d,inset 0 1px #fff}.schedule-entry-modal .sched-modal-header[data-v-5dcd1c2a]{position:sticky;top:0;z-index:5;display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin:0;padding:21px 24px 17px;border-bottom:1px solid #dce2e5;background:linear-gradient(135deg,#fff,#edf0f1)}.schedule-entry-modal .sched-modal-mode-badge[data-v-5dcd1c2a]{margin-bottom:7px;padding:5px 9px;color:#65717a;border:1px solid #d8dee2;background:#f2f4f5;font-size:.61rem;letter-spacing:.1em}.schedule-entry-modal .sched-modal-title[data-v-5dcd1c2a]{color:#273139;font-size:1.22rem;font-weight:680;letter-spacing:-.025em}.schedule-entry-modal .sched-modal-sub[data-v-5dcd1c2a]{margin-top:5px;color:#758088;font-size:.7rem}.schedule-modal-close[data-v-5dcd1c2a]{display:grid;width:36px;height:36px;flex:0 0 36px;place-items:center;padding:0;border-color:#cbd3d8;border-radius:9px;background:linear-gradient(145deg,#fff,#e5e9eb);box-shadow:0 3px 8px #262e3412}.schedule-entry-modal .sched-form[data-v-5dcd1c2a]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;margin:0;padding:20px 24px}.schedule-entry-modal .form-row-inline[data-v-5dcd1c2a]{display:grid;grid-template-columns:1fr;align-content:start;gap:6px}.schedule-entry-modal .form-row-inline.schedule-for-row[data-v-5dcd1c2a],.schedule-entry-modal .parallel-row[data-v-5dcd1c2a],.schedule-entry-modal .parallel-slot-divider[data-v-5dcd1c2a]{grid-column:1 / -1}.schedule-entry-modal .schedule-for-text[data-v-5dcd1c2a]{justify-content:flex-start;min-height:48px;padding:11px 14px;text-align:left;border-left:4px solid #59666f;border-radius:10px;background:linear-gradient(135deg,#f1f3f4,#e2ebe7);box-shadow:none;color:#354149;font-size:.78rem;font-weight:650}.schedule-entry-modal .form-label[data-v-5dcd1c2a]{color:#59666f;font-size:.69rem;font-weight:680}.schedule-entry-modal .form-select[data-v-5dcd1c2a],.schedule-entry-modal .form-input[data-v-5dcd1c2a]{min-height:43px;padding:9px 34px 9px 11px;color:#344149;border-color:#cbd3d8;border-radius:9px;background:#fff;font-size:.74rem}.schedule-entry-modal .form-select[data-v-5dcd1c2a]:focus,.schedule-entry-modal .form-input[data-v-5dcd1c2a]:focus{border-color:#7f8d96;box-shadow:0 0 0 3px #46545e17}.schedule-entry-modal .campus-toggle[data-v-5dcd1c2a]{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:4px;border:1px solid #cbd3d8;border-radius:9px;background:#e9edef}.schedule-entry-modal .campus-btn[data-v-5dcd1c2a]{min-height:34px;padding:7px 9px;border:0;border-radius:6px;background:transparent;color:#5d6972;font-size:.68rem}.schedule-entry-modal .campus-btn.active[data-v-5dcd1c2a]{color:#fff;background:linear-gradient(145deg,#66737c,#3d4952);box-shadow:0 3px 7px #262e3429}.schedule-entry-modal .parallel-row[data-v-5dcd1c2a]{justify-content:flex-start;gap:12px;padding:3px 0}.schedule-entry-modal .parallel-btn[data-v-5dcd1c2a]{min-height:38px;padding:7px 12px;border:1px solid #d1d8dc;border-radius:9px;background:#fff;color:#58656e;font-size:.72rem}.schedule-entry-modal .parallel-btn.active[data-v-5dcd1c2a]{border-color:#87949c;background:#edf1f3;color:#344149}.schedule-entry-modal .par-radio[data-v-5dcd1c2a]{width:18px;height:18px}.schedule-entry-modal .parallel-slot-divider[data-v-5dcd1c2a]{margin-top:3px;color:#69757e;border-color:#dce2e5;font-size:.64rem}.schedule-entry-modal .time-error[data-v-5dcd1c2a]{margin:0 24px 12px!important;padding:9px 11px!important}.schedule-entry-modal .lunch-break-footer[data-v-5dcd1c2a]{margin:0;padding:0 24px 18px}.schedule-entry-modal .lunch-break-modal-btn[data-v-5dcd1c2a]{min-height:42px;border-color:#bdc7cd;border-radius:9px;background:#e9edef;color:#4d5a63;font-size:.73rem}.schedule-entry-modal .sched-modal-actions[data-v-5dcd1c2a]{position:sticky;bottom:0;z-index:5;margin:0;padding:14px 24px 18px;border-top:1px solid #dce2e5;background:#f4f6f7f7;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.schedule-entry-modal .cancel-btn-text[data-v-5dcd1c2a]{min-height:39px;padding:8px 14px;color:#5c6972;border:1px solid transparent;border-radius:8px;font-size:.73rem}.schedule-entry-modal .cancel-btn-text[data-v-5dcd1c2a]:hover{border-color:#d0d7db;background:#fff;opacity:1}.schedule-entry-modal .save-btn[data-v-5dcd1c2a]{min-height:41px;padding:9px 19px;border:1px solid #414d56;border-radius:9px;background:linear-gradient(145deg,#64717b,#37434c);box-shadow:0 4px 10px #262e3429;font-size:.73rem}.schedule-entry-modal .save-btn[data-v-5dcd1c2a]:disabled{color:#929aa0;border-color:#d1d7db;background:#dfe3e5;box-shadow:none;opacity:1}.consult-modal-box[data-v-5dcd1c2a]{width:560px}.consult-modal-box .sched-modal-title[data-v-5dcd1c2a]{font-size:1.3rem}.consult-usage[data-v-5dcd1c2a]{font-size:.76rem}.consult-empty strong[data-v-5dcd1c2a]{font-size:.8rem}.consult-empty div span[data-v-5dcd1c2a]{font-size:.72rem;line-height:1.45}.consult-form-title[data-v-5dcd1c2a]{font-size:.9rem}.consult-modal-box .form-label[data-v-5dcd1c2a]{font-size:.74rem}.consult-modal-box .form-select[data-v-5dcd1c2a]{min-height:46px;font-size:.8rem}.consult-slot-day[data-v-5dcd1c2a],.consult-slot-time[data-v-5dcd1c2a],.consult-modal-box .cancel-btn-text[data-v-5dcd1c2a],.consult-modal-box .save-btn[data-v-5dcd1c2a]{font-size:.76rem}@media (max-width: 640px){.schedule-entry-modal .sched-form[data-v-5dcd1c2a]{grid-template-columns:1fr;padding:18px}.schedule-entry-modal .form-row-inline.schedule-for-row[data-v-5dcd1c2a],.schedule-entry-modal .parallel-row[data-v-5dcd1c2a],.schedule-entry-modal .parallel-slot-divider[data-v-5dcd1c2a]{grid-column:auto}.schedule-entry-modal .sched-modal-header[data-v-5dcd1c2a],.schedule-entry-modal .sched-modal-actions[data-v-5dcd1c2a]{padding-right:18px;padding-left:18px}}.modal-overlay[data-v-5dcd1c2a]{background:#1c222680;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.schedule-entry-modal .form-label[data-v-5dcd1c2a]{font-size:.76rem;line-height:1.35}.schedule-entry-modal .form-select[data-v-5dcd1c2a],.schedule-entry-modal .form-input[data-v-5dcd1c2a]{font-size:.81rem;line-height:1.35}.schedule-entry-modal .sched-modal-sub[data-v-5dcd1c2a]{font-size:.77rem;line-height:1.45}.schedule-entry-modal .schedule-for-text[data-v-5dcd1c2a]{font-size:.84rem;line-height:1.4}.lunch-break-picker[data-v-5dcd1c2a]{width:500px;max-width:calc(100vw - 32px);padding:0;overflow:hidden;color:#303b43;border:1px solid rgba(255,255,255,.92);border-radius:18px;background:#f6f8f9;box-shadow:0 26px 70px #141b1f4d,inset 0 1px #fff}.lunch-break-picker-header[data-v-5dcd1c2a]{display:flex;align-items:flex-start;gap:12px;margin:0;padding:21px 22px 17px;border-bottom:1px solid #dbe1e4;background:linear-gradient(135deg,#fff,#e9edef)}.lunch-break-picker-icon[data-v-5dcd1c2a]{width:40px;height:40px;color:#44515a;border-color:#c4cdd2;border-radius:10px;background:linear-gradient(145deg,#fff,#dce2e5);box-shadow:0 3px 8px #262e3412,inset 0 1px #fff}.lunch-break-picker-copy[data-v-5dcd1c2a]{min-width:0;flex:1}.lunch-break-picker-eyebrow[data-v-5dcd1c2a]{display:block;margin-bottom:4px;color:#77838b;font-size:.62rem;font-weight:750;letter-spacing:.1em;text-transform:uppercase}.lunch-break-picker h2[data-v-5dcd1c2a]{color:#273139;font-size:1.15rem;font-weight:680;letter-spacing:-.02em}.lunch-break-picker-header p[data-v-5dcd1c2a]{margin-top:4px;overflow:hidden;color:#69757d;font-size:.73rem;font-weight:550;white-space:nowrap;text-overflow:ellipsis}.lunch-break-picker-close[data-v-5dcd1c2a]{display:grid;width:35px;height:35px;flex:0 0 35px;place-items:center;padding:0;color:#5b6871;border:1px solid #c8d0d5;border-radius:9px;background:linear-gradient(145deg,#fff,#e1e6e8);box-shadow:0 3px 8px #262e3412;cursor:pointer}.lunch-break-picker-close[data-v-5dcd1c2a]:hover{color:#222c33;border-color:#929ea6;background:#fff}.lunch-break-picker-help[data-v-5dcd1c2a]{margin:18px 22px 0;padding:11px 12px;color:#5f6c74;border-left:3px solid #64727c;border-radius:0 8px 8px 0;background:#e9edef;font-size:.75rem;line-height:1.55}.lunch-break-picker-fields[data-v-5dcd1c2a]{gap:14px;padding:18px 22px 2px}.lunch-break-picker-field[data-v-5dcd1c2a]{grid-template-columns:1fr;gap:7px;color:#55626b;font-size:.76rem;font-weight:680}.lunch-break-picker-field select[data-v-5dcd1c2a]{min-height:46px;padding:10px 36px 10px 12px;color:#303b43;border-color:#c5ced3;border-radius:9px;background:#fff;font-size:.82rem;outline:none}.lunch-break-picker-field select[data-v-5dcd1c2a]:focus{border-color:#7d8a93;box-shadow:0 0 0 3px #46545e1a}.lunch-break-picker-error[data-v-5dcd1c2a]{margin:14px 22px 0;padding:10px 11px;color:#884848;border:1px solid #e2caca;background:#f8eaea;font-size:.74rem;line-height:1.45}.lunch-break-picker-actions[data-v-5dcd1c2a]{margin:18px 0 0;padding:14px 22px 19px;border-top:1px solid #dbe1e4;background:#edf1f2}.lunch-break-picker-actions .cancel-btn-text[data-v-5dcd1c2a]{min-height:40px;padding:8px 14px;color:#5a6770;border:1px solid transparent;border-radius:8px;font-size:.76rem;font-weight:650}.lunch-break-picker-actions .cancel-btn-text[data-v-5dcd1c2a]:hover{border-color:#ced6da;background:#fff;opacity:1}.lunch-break-picker-actions .save-btn[data-v-5dcd1c2a]{min-height:42px;padding:9px 18px;border:1px solid #414d56;border-radius:9px;background:linear-gradient(145deg,#64717b,#37434c);box-shadow:0 4px 10px #262e3429;font-size:.76rem}.lunch-break-picker-actions .save-btn[data-v-5dcd1c2a]:disabled{color:#929aa0;border-color:#d1d7db;background:#dfe3e5;box-shadow:none;opacity:1}.schedule-entry-modal .schedule-teacher-field[data-v-5dcd1c2a],.schedule-entry-modal .schedule-subject-field[data-v-5dcd1c2a],.schedule-entry-modal .schedule-campus-field[data-v-5dcd1c2a]{grid-column:1 / -1}.schedule-entry-modal .schedule-teacher-field .form-value-locked[data-v-5dcd1c2a]{min-height:46px;padding:10px 13px;color:#354149;border:1px solid #d2d9dd;border-left:4px solid #64727c;border-radius:9px;background:linear-gradient(135deg,#f4f6f7,#e9edef);font-size:.82rem;font-weight:650}.schedule-entry-modal .schedule-subject-field .form-select[data-v-5dcd1c2a]{font-weight:560}.schedule-entry-modal .schedule-campus-field .campus-toggle[data-v-5dcd1c2a]{max-width:100%}.schedule-entry-modal .clear-slot-btn[data-v-5dcd1c2a]{min-height:40px;padding:8px 14px;color:#7d4747;border-color:#d7bcbc;border-radius:9px;background:#faf4f4;font-size:.72rem;box-shadow:none}.schedule-entry-modal .clear-slot-btn[data-v-5dcd1c2a]:hover{color:#713b3b;border-color:#c99f9f;background:#f5e7e7}.schedule-entry-modal.badge-edit[data-v-5dcd1c2a],.schedule-entry-modal .badge-edit[data-v-5dcd1c2a]{color:#59666f;border-color:#ccd4d9;background:#edf1f3}@media (max-width: 640px){.schedule-entry-modal .schedule-teacher-field[data-v-5dcd1c2a],.schedule-entry-modal .schedule-subject-field[data-v-5dcd1c2a],.schedule-entry-modal .schedule-campus-field[data-v-5dcd1c2a]{grid-column:auto}}.sched-grid td.td-time[data-v-5dcd1c2a]{position:sticky;overflow:visible}.time-boundary-label[data-v-5dcd1c2a]{position:absolute;top:0;left:0;z-index:2;display:block;width:100%;padding:2px 4px;background:#f7f8f9;line-height:1.2;text-align:center;transform:translateY(-50%)}.sched-grid tbody tr:first-child .time-boundary-label[data-v-5dcd1c2a]{top:6px;transform:none}.sched-entry[data-v-5dcd1c2a]{top:0;bottom:0;border-radius:6px}.panel-overlay[data-v-5dcd1c2a]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000004d;z-index:900;display:flex;justify-content:flex-end}.add-panel[data-v-5dcd1c2a]{width:420px;max-width:96vw;background:#fff;height:100vh;display:flex;flex-direction:column;box-shadow:-4px 0 32px #00000024;overflow:hidden}.panel-header[data-v-5dcd1c2a]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:24px 28px 20px;border-bottom:1px solid #f0f0f0;flex-shrink:0}.panel-badge[data-v-5dcd1c2a]{display:inline-block;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;padding:3px 10px;border-radius:20px;background:#f3f4f6;color:#4b5563;margin-bottom:6px}.panel-title[data-v-5dcd1c2a]{font-size:1.2rem;font-weight:700;color:#111;margin:0 0 3px}.panel-sub[data-v-5dcd1c2a]{font-size:.84rem;color:#888;margin:0}.panel-close[data-v-5dcd1c2a]{background:none;border:1px solid #ddd;border-radius:8px;padding:6px 8px;cursor:pointer;color:#555;flex-shrink:0;display:flex;align-items:center;transition:all .15s}.panel-close[data-v-5dcd1c2a]:hover{border-color:#e63946;color:#e63946}.panel-form[data-v-5dcd1c2a]{display:flex;flex-direction:column;gap:13px;padding:20px 28px 8px;overflow-y:auto;flex:1}.panel-footer[data-v-5dcd1c2a]{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:14px 28px 20px;border-top:1px solid #f0f0f0;flex-shrink:0;background:#fff}.reset-btn[data-v-5dcd1c2a]{background:none;border:1px solid #ccc;border-radius:8px;padding:8px 16px;font-family:inherit;font-size:.85rem;color:#666;cursor:pointer;transition:all .15s}.reset-btn[data-v-5dcd1c2a]:hover{border-color:#999;color:#333}.flash-msg[data-v-5dcd1c2a]{display:flex;align-items:center;gap:8px;background:#e5e7eb;color:#4b5563;border-radius:8px;padding:10px 16px;font-size:.88rem;font-weight:600;margin:4px 28px 0}.flash-enter-active[data-v-5dcd1c2a],.flash-leave-active[data-v-5dcd1c2a]{transition:opacity .3s}.flash-enter-from[data-v-5dcd1c2a],.flash-leave-to[data-v-5dcd1c2a]{opacity:0}.panel-enter-active[data-v-5dcd1c2a]{transition:opacity .25s ease}.panel-leave-active[data-v-5dcd1c2a]{transition:opacity .2s ease}.panel-enter-from[data-v-5dcd1c2a],.panel-leave-to[data-v-5dcd1c2a]{opacity:0}.panel-enter-active .add-panel[data-v-5dcd1c2a]{animation:slideInPanel-5dcd1c2a .25s ease}.panel-leave-active .add-panel[data-v-5dcd1c2a]{animation:slideOutPanel-5dcd1c2a .2s ease}@keyframes slideInPanel-5dcd1c2a{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes slideOutPanel-5dcd1c2a{0%{transform:translate(0)}to{transform:translate(100%)}}.logout-modal-box[data-v-5dcd1c2a]{background:#fff;border-radius:20px;padding:36px 40px 32px;width:360px;max-width:94vw;display:flex;flex-direction:column;align-items:center;gap:10px;box-shadow:0 16px 48px #0000002e;text-align:center}.logout-modal-icon[data-v-5dcd1c2a]{width:68px;height:68px;border-radius:50%;background:#ffeaea;display:flex;align-items:center;justify-content:center;margin-bottom:4px}.logout-modal-title[data-v-5dcd1c2a]{font-size:1.45rem;font-weight:700;color:#111;margin:0}.logout-modal-sub[data-v-5dcd1c2a]{font-size:.9rem;color:#777;margin:0 0 8px}.logout-modal-actions[data-v-5dcd1c2a]{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:6px;width:100%}.logout-cancel-btn[data-v-5dcd1c2a]{background:none;border:none;font-family:inherit;font-size:1rem;font-weight:600;color:#e63946;cursor:pointer;padding:8px 18px;border-radius:10px}.logout-cancel-btn[data-v-5dcd1c2a]:hover{background:#ffeaea}.logout-confirm-btn[data-v-5dcd1c2a]{background:#4b5563;color:#fff;border:none;font-family:inherit;font-size:1rem;font-weight:600;padding:10px 32px;border-radius:10px;cursor:pointer}.logout-confirm-btn[data-v-5dcd1c2a]:hover{background:#6b7280}.room-type-stack[data-v-5dcd1c2a]{display:flex;flex-direction:column;gap:6px}.main[data-v-5dcd1c2a]{padding:26px 32px 44px}.main-header[data-v-5dcd1c2a]{align-items:center;margin-bottom:20px;padding:8px 2px 10px;border:0;border-radius:0;background:transparent;box-shadow:none}.header-left[data-v-5dcd1c2a]{min-width:0;gap:4px}.page-heading-row[data-v-5dcd1c2a]{display:flex;min-width:0;align-items:center;gap:14px}.page-heading-copy[data-v-5dcd1c2a]{min-width:0}.page-eyebrow[data-v-5dcd1c2a]{display:block;color:#707c85;font-size:.63rem;font-weight:750;letter-spacing:.11em;text-transform:uppercase}.bc-btn[data-v-5dcd1c2a]{display:inline-flex;width:max-content;align-items:center;min-height:36px;padding:7px 11px;color:#4e5a63;border:1px solid #cbd2d6;border-radius:9px;background:linear-gradient(145deg,#fff,#e7eaec);box-shadow:0 3px 8px #28303612,inset 0 1px #fff;text-decoration:none}.page-heading-row .bc-btn[data-v-5dcd1c2a]{width:42px;height:42px;min-height:42px;flex:0 0 42px;justify-content:center;padding:0;font-size:1rem;text-decoration:none}.page-title[data-v-5dcd1c2a]{margin-top:4px;color:#1f2933;font-size:clamp(2rem,3vw,2.65rem);font-weight:500;letter-spacing:-.04em;line-height:1.08}.page-sub[data-v-5dcd1c2a]{max-width:680px;margin-top:9px;color:#66727c;font-size:.94rem;line-height:1.55}.header-right[data-v-5dcd1c2a]{align-items:flex-end;gap:10px}.term-banner[data-v-5dcd1c2a]{display:flex;align-items:baseline;gap:8px;color:#343f47;white-space:nowrap}.term-banner-label[data-v-5dcd1c2a]{color:#7a858d;font-size:.62rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.term-banner strong[data-v-5dcd1c2a]{font-size:.77rem;font-weight:650}.header-actions[data-v-5dcd1c2a]{padding:0}.term-current-label[data-v-5dcd1c2a]{color:#4c5861;font-size:.78rem}.view-toggle[data-v-5dcd1c2a]{gap:3px;margin:0;padding:4px;border:1px solid #d1d7db;border-radius:11px;background:#eef0f1db}.view-btn[data-v-5dcd1c2a]{min-height:38px;padding:8px 14px;border:0;border-radius:8px;background:transparent;font-size:.74rem;font-weight:650}.view-btn[data-v-5dcd1c2a]:hover{background:#ffffffc2}.view-btn.active[data-v-5dcd1c2a]{background:linear-gradient(145deg,#626c75,#343c43);box-shadow:0 4px 9px #262d3233,inset 0 1px #ffffff2e}.schedule-card[data-v-5dcd1c2a]{padding:0;overflow:visible;border:1px solid rgba(255,255,255,.88);border-radius:18px;background:#eef1f2;box-shadow:0 14px 34px #262e341c,inset 0 1px #fff}.main .schedule-card[data-v-5dcd1c2a]{border:1px solid rgba(255,255,255,.88)!important;border-radius:18px!important;background:#eef1f2!important;box-shadow:0 14px 34px #262e341c,inset 0 1px #fff!important}.sched-topbar[data-v-5dcd1c2a]{align-items:center;margin:0;padding:18px 20px;border:0;border-bottom:1px solid #d7dde1;border-radius:17px 17px 0 0;background:linear-gradient(135deg,#fff,#eceff0);box-shadow:inset 0 1px #fff}.schedule-back-btn[data-v-5dcd1c2a]{display:grid;width:40px;height:40px;flex:0 0 40px;place-items:center;padding:0;color:#46535c;border:1px solid #c8d0d5;border-radius:10px;background:linear-gradient(145deg,#fff,#e2e6e8);box-shadow:0 3px 8px #272f3514,inset 0 1px #fff;font-size:1rem;cursor:pointer;transition:border-color .16s ease,background .16s ease,transform .16s ease}.schedule-back-btn[data-v-5dcd1c2a]:hover{color:#202a31;border-color:#939fa7;background:#fff;transform:translate(-2px)}.schedule-back-btn[data-v-5dcd1c2a]:focus-visible{outline:3px solid rgba(49,70,83,.18);outline-offset:2px}.sched-topbar-left[data-v-5dcd1c2a]{min-width:0;flex:1}.sched-context-label[data-v-5dcd1c2a]{display:block;margin:0 0 7px;color:#76818a;font-size:.64rem;font-weight:700;letter-spacing:.1em;line-height:1;text-transform:uppercase}.sched-grid-title[data-v-5dcd1c2a]{display:flex;align-items:center;color:#252d33;font-size:1.3rem;line-height:1.25;letter-spacing:-.025em}.sched-grid-title svg[data-v-5dcd1c2a]{width:19px;height:19px;flex:0 0 19px;margin-right:9px!important}.sched-grid-sub.teacher-selected[data-v-5dcd1c2a]{margin-top:5px;padding:0;color:#707b83;border:0;background:transparent;box-shadow:none;font-size:.72rem;font-weight:500}.sched-topbar-right[data-v-5dcd1c2a]{padding:4px;border:1px solid #d3dade;border-radius:11px;background:#eef1f2}.sched-select[data-v-5dcd1c2a]{min-height:38px;border-color:transparent;border-radius:8px;background:transparent;color:#48545d;font-size:.72rem;font-weight:600}.sched-select[data-v-5dcd1c2a]:hover,.sched-select[data-v-5dcd1c2a]:focus{border-color:#bec7cc;background:#fff}.icon-btn.consult-btn[data-v-5dcd1c2a]{width:38px;height:38px;border-radius:8px;color:#fff;border-color:#3e4b55;background:linear-gradient(145deg,#62717b,#35434c);box-shadow:0 3px 8px #2630372b}.main .sched-grid-wrap[data-v-5dcd1c2a]{width:100%;margin:0;padding:18px;overflow-x:auto;border:0!important;border-radius:0 0 17px 17px!important;background:#eef1f2!important;box-shadow:none!important}.sched-grid[data-v-5dcd1c2a]{overflow:hidden;border:1px solid #ccd4d9;border-radius:12px;border-collapse:separate;border-spacing:0;background:#fff;box-shadow:0 5px 16px #272f350f}.sched-grid th[data-v-5dcd1c2a]{height:48px;padding:11px 9px;background:#424c55;font-size:.75rem;letter-spacing:.01em}.sched-grid th[data-v-5dcd1c2a]:first-child{border-radius:12px 0 0}.sched-grid th[data-v-5dcd1c2a]:last-child{border-radius:0 12px 0 0}.sched-grid tbody tr[data-v-5dcd1c2a]{height:44px}.sched-grid td[data-v-5dcd1c2a]{border-width:0 1px 1px 0;border-color:#e0e4e7}.sched-grid tbody tr.half-hour td[data-v-5dcd1c2a]{border-top:1px dashed #dfe4e7}.sched-grid td.td-time[data-v-5dcd1c2a]{overflow:visible;color:#536069;border-right:1px solid #cfd6da;background:#f7f8f9;font-size:.66rem;vertical-align:middle}.sched-grid tbody tr.half-hour .td-time[data-v-5dcd1c2a]{background:#f7f8f9}.time-boundary-label[data-v-5dcd1c2a]{position:static;display:block;width:100%;padding:0;background:transparent;line-height:1.2;text-align:center;transform:none}.free-time-cell[data-v-5dcd1c2a]{background:#f8f9fa}.free-time-cell[data-v-5dcd1c2a]:hover{background:#edf1f3}.free-time-cell .click-to-add[data-v-5dcd1c2a]{color:#8a949b;font-size:.63rem;opacity:0;transition:opacity .15s ease}.free-time-cell:hover .click-to-add[data-v-5dcd1c2a]{opacity:1}.sched-entry[data-v-5dcd1c2a]{left:4px;right:4px;padding:7px 8px;border-radius:7px;box-shadow:0 3px 8px #1e272c24}.entry-teacher[data-v-5dcd1c2a]{display:-webkit-box;padding-right:0;overflow:hidden;font-size:.72rem;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}.entry-subject[data-v-5dcd1c2a]{display:-webkit-box;padding-right:0;overflow:hidden;font-size:.67rem;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}.entry-time-range[data-v-5dcd1c2a]{font-size:.62rem;font-style:normal;font-weight:550}.entry-timestamp[data-v-5dcd1c2a]{opacity:.7}.main-list-view[data-v-5dcd1c2a]{padding-right:24px;padding-left:24px}.main-list-view .main-header[data-v-5dcd1c2a],.main-list-view .list-schedule-card[data-v-5dcd1c2a]{width:100%;max-width:none}.main .list-schedule-card[data-v-5dcd1c2a]{width:100%;max-width:none;overflow:visible;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}.list-schedule-toolbar[data-v-5dcd1c2a]{min-height:92px;padding:18px 22px;border:1px solid rgba(255,255,255,.94);border-radius:16px;background:linear-gradient(135deg,#fff,#eceff0);box-shadow:0 10px 24px #262e3417,inset 0 1px #fff}.list-summary[data-v-5dcd1c2a]{display:flex;min-width:0;align-items:center;gap:13px}.list-summary-count[data-v-5dcd1c2a]{display:grid;width:46px;height:46px;flex:0 0 46px;place-items:center;color:#fff;border:1px solid #69747d;border-radius:12px;background:linear-gradient(145deg,#69747d,#354049);box-shadow:0 5px 12px #262f362e,inset 0 1px #fff3;font-size:1rem;font-weight:700}.list-summary-title[data-v-5dcd1c2a]{margin:0;color:#283139;font-size:1rem;font-weight:680;letter-spacing:-.015em}.list-summary-copy[data-v-5dcd1c2a]{margin:4px 0 0;color:#748089;font-size:.72rem;line-height:1.45}.list-toolbar-actions[data-v-5dcd1c2a]{display:flex;align-items:center}.list-toolbar-actions .new-sched-btn[data-v-5dcd1c2a]{min-height:42px;padding:10px 17px;border:1px solid #434f58;border-radius:10px;background:linear-gradient(145deg,#626e78,#354049);box-shadow:0 5px 12px #262f362e,inset 0 1px #ffffff2e;font-size:.76rem;font-weight:650;letter-spacing:.005em}.list-toolbar-actions .new-sched-btn[data-v-5dcd1c2a]:hover{background:linear-gradient(145deg,#707c85,#424d56);transform:translateY(-1px)}.schedule-list-wrap[data-v-5dcd1c2a]{width:100%;margin:18px 0 0;background:transparent}.schedule-list-table-wrap[data-v-5dcd1c2a]{width:100%;overflow-x:hidden;overflow-y:visible;border:1px solid #d6dde1;border-radius:14px;background:#fff;box-shadow:0 12px 28px #262e3417;scrollbar-color:#aab3b9 transparent;-webkit-overflow-scrolling:touch}.schedule-list-table[data-v-5dcd1c2a]{width:100%;min-width:0;border-collapse:separate;border-spacing:0;table-layout:fixed;background:#fff}.schedule-list-table thead th[data-v-5dcd1c2a]:first-child{border-radius:13px 0 0}.schedule-list-table thead th[data-v-5dcd1c2a]:last-child{border-radius:0 13px 0 0}.schedule-list-table th[data-v-5dcd1c2a],.schedule-list-table td[data-v-5dcd1c2a]{border:0;border-bottom:1px solid #e3e7e9;text-align:left;vertical-align:middle}.schedule-list-table th[data-v-5dcd1c2a]{height:46px;padding:11px 14px;color:#65717a;background:#f1f3f4;font-size:.62rem;font-weight:750;letter-spacing:.075em;text-transform:uppercase}.schedule-list-table td[data-v-5dcd1c2a]{height:66px;padding:12px 14px;color:#343e46;font-size:.76rem;line-height:1.4}.schedule-list-table th+th[data-v-5dcd1c2a],.schedule-list-table td+td[data-v-5dcd1c2a]{border-left:1px solid #edf0f1}.schedule-list-table th[data-v-5dcd1c2a]:nth-child(1){width:9%}.schedule-list-table th[data-v-5dcd1c2a]:nth-child(2){width:13%}.schedule-list-table th[data-v-5dcd1c2a]:nth-child(3){width:8%}.schedule-list-table th[data-v-5dcd1c2a]:nth-child(4){width:24%}.schedule-list-table th[data-v-5dcd1c2a]:nth-child(5){width:16%}.schedule-list-table th[data-v-5dcd1c2a]:nth-child(6){width:7%}.schedule-list-table th[data-v-5dcd1c2a]:nth-child(7){width:10%}.schedule-list-table th[data-v-5dcd1c2a]:nth-child(8){width:13%}.schedule-list-row[data-v-5dcd1c2a]{cursor:pointer;transition:background .14s ease,box-shadow .14s ease}.schedule-list-row[data-v-5dcd1c2a]:nth-child(2n){background:#fbfcfc}.schedule-list-row[data-v-5dcd1c2a]:hover{background:#eef2f4;box-shadow:inset 3px 0 #53616b}.schedule-list-row[data-v-5dcd1c2a]:focus-within{outline:2px solid #687782;outline-offset:-2px}.list-day[data-v-5dcd1c2a]{color:#2f3a42;font-weight:680}.list-time[data-v-5dcd1c2a]{display:inline-block;color:#33424c;font-size:.72rem;font-weight:650;white-space:nowrap}.list-year[data-v-5dcd1c2a],.list-room[data-v-5dcd1c2a],.list-section[data-v-5dcd1c2a]{display:inline-flex;min-height:26px;align-items:center;padding:4px 8px;border:1px solid #d9dfe2;border-radius:7px;background:#f1f4f5;color:#53616a;font-size:.68rem;font-weight:620}.list-subject[data-v-5dcd1c2a]{display:-webkit-box;overflow:hidden;color:#263139;font-weight:570;-webkit-box-orient:vertical;-webkit-line-clamp:2}.list-teacher[data-v-5dcd1c2a]{display:-webkit-box;overflow:hidden;color:#39464f;font-weight:620;-webkit-box-orient:vertical;-webkit-line-clamp:2}.list-campus[data-v-5dcd1c2a]{display:block;overflow:hidden;color:#66727b;white-space:nowrap;text-overflow:ellipsis}.empty-state-row td[data-v-5dcd1c2a]{height:150px;border-left:0;color:#748089;text-align:center}.schedule-list-table tbody tr:last-child td[data-v-5dcd1c2a]:first-child{border-radius:0 0 0 13px}.schedule-list-table tbody tr:last-child td[data-v-5dcd1c2a]:last-child{border-radius:0 0 13px}.list-add-section[data-v-5dcd1c2a]{scroll-margin:28px;margin-top:20px;padding:22px;border:1px solid #d4dce0;border-radius:15px;background:linear-gradient(145deg,#fff,#eef1f2);box-shadow:0 10px 24px #262e3414,inset 0 1px #fff}.list-add-section[data-v-5dcd1c2a]:focus-within{border-color:#9ca8b0;box-shadow:0 12px 28px #262e341c,0 0 0 3px #52626d14}.list-add-heading[data-v-5dcd1c2a]{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:17px;border-bottom:1px solid #dce2e5}.list-add-eyebrow[data-v-5dcd1c2a]{display:block;margin-bottom:5px;color:#77838b;font-size:.61rem;font-weight:750;letter-spacing:.1em;text-transform:uppercase}.list-add-heading h3[data-v-5dcd1c2a]{margin:0;color:#273139;font-size:1.05rem;font-weight:680;letter-spacing:-.02em}.list-add-heading p[data-v-5dcd1c2a]{margin:4px 0 0;color:#717d85;font-size:.71rem}.list-add-required[data-v-5dcd1c2a]{flex:0 0 auto;padding:5px 9px;color:#66727b;border:1px solid #d7dde1;border-radius:999px;background:#f4f6f7;font-size:.6rem;font-weight:650}.list-add-grid[data-v-5dcd1c2a]{display:flex;align-items:flex-start;gap:12px;padding:19px 2px 16px;overflow-x:visible;scrollbar-color:#aab3b9 transparent;scrollbar-width:thin;-webkit-overflow-scrolling:touch}.list-field[data-v-5dcd1c2a]{display:flex;min-width:0;flex-direction:column;gap:7px;color:#56636c;font-size:.65rem;font-weight:680}.list-field[data-v-5dcd1c2a]{width:118px;min-width:0;flex:1 1 118px}.list-field-time[data-v-5dcd1c2a]{width:230px;min-width:0;flex:1.5 1 230px}.list-field-wide[data-v-5dcd1c2a]{width:220px;min-width:0;flex:1.6 1 220px}.list-campus-field[data-v-5dcd1c2a]{width:156px;min-width:0;flex:1.1 1 156px}.list-field .form-select[data-v-5dcd1c2a]{width:100%;min-width:0;min-height:42px;padding:9px 22px 9px 9px;color:#354149;border:1px solid #cbd3d8;border-radius:9px;background-color:#fbfcfc;font-size:.66rem;font-weight:520;text-overflow:ellipsis}.list-field .form-select[data-v-5dcd1c2a]:focus{border-color:#7e8c95;background-color:#fff;box-shadow:0 0 0 3px #4c5b6617}.list-field-time .time-inputs[data-v-5dcd1c2a]{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px}.list-field-time .time-separator[data-v-5dcd1c2a]{color:#7b878f;font-size:.62rem;font-weight:650}.list-field-error[data-v-5dcd1c2a]{color:#a54545;font-size:.6rem;font-weight:600}.list-campus-options[data-v-5dcd1c2a]{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:4px;border:1px solid #cbd3d8;border-radius:9px;background:#e9edef}.list-campus-options button[data-v-5dcd1c2a]{min-height:32px;color:#5e6a72;border:0;border-radius:6px;background:transparent;font:inherit;cursor:pointer}.list-campus-options button.active[data-v-5dcd1c2a]{color:#fff;background:linear-gradient(145deg,#66727c,#3c4750);box-shadow:0 3px 7px #262e342b}.list-add-actions[data-v-5dcd1c2a]{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:16px;border-top:1px solid #dce2e5;color:#758189;font-size:.66rem}.list-add-submit[data-v-5dcd1c2a]{min-height:40px;padding:9px 18px;color:#fff;border:1px solid #3f4b54;border-radius:9px;background:linear-gradient(145deg,#626f78,#354149);box-shadow:0 4px 10px #262e3429;font:inherit;font-size:.72rem;font-weight:680;cursor:pointer}.list-add-submit[data-v-5dcd1c2a]:hover:not(:disabled){background:linear-gradient(145deg,#707d86,#424e57);transform:translateY(-1px)}.list-add-submit[data-v-5dcd1c2a]:disabled{color:#8d969c;border-color:#d2d8dc;background:#e1e5e7;box-shadow:none;cursor:not-allowed}.schedule-list-footer[data-v-5dcd1c2a]{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 4px 2px;color:#748089;font-size:.7rem}.list-footer-action[data-v-5dcd1c2a]{display:inline-flex;min-height:36px;align-items:center;gap:7px;padding:8px 12px;color:#46545e;border:1px solid #cbd3d8;border-radius:9px;background:linear-gradient(145deg,#fff,#e9edef);box-shadow:0 3px 8px #262e3412,inset 0 1px #fff;font:inherit;font-weight:650;cursor:pointer}.list-footer-action[data-v-5dcd1c2a]:hover{color:#202a31;border-color:#9eabb3;background:#fff}@media (max-width: 900px){.main[data-v-5dcd1c2a]{padding:24px 20px 40px}.main-header[data-v-5dcd1c2a]{align-items:flex-start;flex-direction:column}.header-right[data-v-5dcd1c2a]{width:100%;align-items:flex-start}.sched-topbar[data-v-5dcd1c2a]{align-items:flex-start;flex-direction:column}.list-schedule-toolbar[data-v-5dcd1c2a]{gap:14px}.list-toolbar-actions[data-v-5dcd1c2a]{width:100%}.list-toolbar-actions .new-sched-btn[data-v-5dcd1c2a]{width:100%;justify-content:center}.schedule-list-footer[data-v-5dcd1c2a]{align-items:flex-start;flex-direction:column}.sched-grid-wrap[data-v-5dcd1c2a]{padding:14px}}@media (max-width: 560px){.list-add-section[data-v-5dcd1c2a]{padding:18px 15px}.list-add-heading[data-v-5dcd1c2a],.list-add-actions[data-v-5dcd1c2a]{align-items:flex-start;flex-direction:column}.list-add-submit[data-v-5dcd1c2a]{width:100%}}.sched-grid td.td-time[data-v-5dcd1c2a]{position:sticky;overflow:visible;padding:0 8px;vertical-align:middle}.time-boundary-label[data-v-5dcd1c2a]{position:static;width:100%;padding:0;background:transparent;line-height:1.2;text-align:center;transform:none}.sched-grid tbody tr:first-child .time-boundary-label[data-v-5dcd1c2a]{top:auto;transform:none}.free-time-cell[data-v-5dcd1c2a]{position:relative;vertical-align:middle!important}.free-time-cell .click-to-add[data-v-5dcd1c2a]{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;width:100%;height:100%;place-items:center;padding:0;line-height:1.2;text-align:center}.sched-entry[data-v-5dcd1c2a]{left:4px;right:4px;border-radius:7px}.consult-entry[data-v-5dcd1c2a]{overflow:hidden;left:6px;right:6px;box-sizing:border-box;border:1px solid rgba(255,255,255,.28);transition:transform .16s ease,box-shadow .16s ease,filter .16s ease}.consult-entry[data-v-5dcd1c2a]:hover{z-index:6;filter:brightness(1.04);box-shadow:0 8px 18px #23548447;transform:translateY(-1px)}.consult-entry[data-v-5dcd1c2a]:focus-visible{z-index:7;outline:3px solid rgba(74,144,217,.32);outline-offset:2px}.consult-edit-hint[data-v-5dcd1c2a]{position:absolute;right:7px;bottom:6px;padding:3px 7px;color:#fffffff0;border-radius:999px;background:#18416a57;font-size:.58rem;font-weight:650;letter-spacing:.01em;opacity:.84}.consult-entry:hover .consult-edit-hint[data-v-5dcd1c2a],.consult-entry:focus-visible .consult-edit-hint[data-v-5dcd1c2a]{background:#18416a85;opacity:1}.consult-modal-box[data-v-5dcd1c2a]{width:940px;max-height:calc(100vh - 48px);color:#2f3a42;border-radius:22px;background:#f7f9fa}.consult-modal-box .sched-modal-header[data-v-5dcd1c2a]{align-items:flex-start;padding:24px 26px 22px;background:linear-gradient(145deg,#fff,#f1f4f5 68%,#e9eef0)}.consult-header-icon[data-v-5dcd1c2a]{display:grid;width:46px;height:46px;flex:0 0 46px;place-items:center;color:#fff;border:1px solid #45545e;border-radius:13px;background:linear-gradient(145deg,#697983,#3d4b54);box-shadow:0 7px 16px #2b384033,inset 0 1px #ffffff38}.consult-modal-box .sched-modal-mode-badge[data-v-5dcd1c2a]{margin-bottom:6px}.consult-modal-box .sched-modal-title[data-v-5dcd1c2a]{font-size:1.25rem;line-height:1.25}.consult-modal-subtitle[data-v-5dcd1c2a]{margin:5px 0 0;color:#738089;font-size:.74rem;line-height:1.5}.consult-modal-content[data-v-5dcd1c2a]{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,7fr);min-height:430px}.consult-left-pane[data-v-5dcd1c2a]{min-width:0;padding:22px 18px 24px;border-right:1px solid #dce2e5;background:#f2f5f6}.consult-left-pane .consult-slot-dur[data-v-5dcd1c2a]{display:none}.consult-left-pane .consult-slot-item[data-v-5dcd1c2a]{gap:9px;padding:11px 10px}.consult-left-pane .consult-slot-actions[data-v-5dcd1c2a]{gap:4px}.consult-left-pane .consult-edit-btn[data-v-5dcd1c2a]{padding:5px}.consult-right-pane[data-v-5dcd1c2a]{display:flex;min-width:0;flex-direction:column;background:#fafbfb}.consult-usage[data-v-5dcd1c2a]{display:grid;grid-template-columns:1fr;gap:10px;margin:0;padding:14px;border:1px solid #d8dfe3;border-radius:10px;background:#ffffffbf}.consult-usage-copy[data-v-5dcd1c2a]{display:flex;align-items:center;justify-content:space-between;gap:10px}.consult-usage-copy span[data-v-5dcd1c2a]{color:#748089;font-size:.67rem;font-weight:650}.consult-usage-copy strong[data-v-5dcd1c2a]{color:#3f4c55;font-size:.71rem;font-weight:750}.consult-progress[data-v-5dcd1c2a]{width:100%;height:7px;align-self:center;background:#dce2e5}.consult-progress span[data-v-5dcd1c2a]{background:linear-gradient(90deg,#71838e,#3f4e58)}.consult-section-heading[data-v-5dcd1c2a]{display:flex;align-items:flex-start;flex-direction:column;justify-content:space-between;gap:5px;padding:22px 0 10px}.consult-section-heading div[data-v-5dcd1c2a]{display:flex;align-items:center;gap:9px}.consult-section-heading span[data-v-5dcd1c2a]{color:#344149;font-size:.83rem;font-weight:750}.consult-section-heading strong[data-v-5dcd1c2a]{padding:3px 8px;color:#64727b;border-radius:999px;background:#e7ecee;font-size:.62rem}.consult-section-heading p[data-v-5dcd1c2a]{margin:0;color:#849098;font-size:.65rem}.consult-slots-list[data-v-5dcd1c2a]{max-height:285px;padding:0 2px 5px 0;overflow-y:auto}.consult-slot-item[data-v-5dcd1c2a]{gap:12px;padding:12px 13px;border-radius:12px;transition:border-color .15s ease,box-shadow .15s ease}.consult-slot-item[data-v-5dcd1c2a]:hover{border-color:#bdc8ce;box-shadow:0 6px 14px #28343c14}.consult-slot-calendar[data-v-5dcd1c2a]{display:grid;width:34px;height:34px;flex:0 0 34px;place-items:center;color:#586872;border-radius:9px;background:#edf1f3}.consult-slot-details[data-v-5dcd1c2a]{min-width:0;flex:1}.consult-slot-day[data-v-5dcd1c2a]{min-width:0;color:#344149;font-size:.77rem}.consult-slot-time[data-v-5dcd1c2a]{margin-top:2px;color:#748089;font-size:.7rem}.consult-slot-dur[data-v-5dcd1c2a]{flex:0 0 auto;padding:4px 8px}.consult-slot-actions[data-v-5dcd1c2a]{margin-left:2px}.consult-edit-btn[data-v-5dcd1c2a],.consult-del-btn[data-v-5dcd1c2a]{min-height:32px;border-radius:8px}.consult-edit-btn[data-v-5dcd1c2a]{display:grid;width:32px;padding:5px;place-items:center}.consult-del-btn[data-v-5dcd1c2a]{width:32px;justify-content:center;padding:5px}.consult-form-shell[data-v-5dcd1c2a]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;margin:22px 24px 0;padding:19px;border:1px solid #d9e0e4;border-radius:14px;background:#fff;box-shadow:0 5px 14px #28343c0d}.consult-form-heading[data-v-5dcd1c2a]{grid-column:1 / -1;display:flex;align-items:center;gap:11px;padding-bottom:2px}.consult-form-icon[data-v-5dcd1c2a]{display:grid;width:34px;height:34px;flex:0 0 34px;place-items:center;color:#fff;border-radius:9px;background:#4a5963}.consult-form-heading .consult-form-title[data-v-5dcd1c2a]{padding:0;font-size:.83rem}.consult-form-heading p[data-v-5dcd1c2a]{margin:2px 0 0;color:#7c8991;font-size:.65rem}.consult-day-field[data-v-5dcd1c2a]{grid-column:1 / -1}.consult-modal-box .form-row-inline[data-v-5dcd1c2a]{gap:7px}.consult-modal-box .form-select[data-v-5dcd1c2a]{min-height:44px}.consult-modal-box .time-error[data-v-5dcd1c2a]{grid-column:1 / -1}.consult-modal-box .sched-modal-actions[data-v-5dcd1c2a]{position:sticky;bottom:0;z-index:4;gap:9px;margin-top:auto;padding:15px 24px 19px;background:#f0f4f5f5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.consult-modal-box .save-btn[data-v-5dcd1c2a]{min-width:126px;justify-content:center}@media (max-width: 640px){.consult-modal-box[data-v-5dcd1c2a]{width:calc(100vw - 24px);max-height:calc(100vh - 24px)}.consult-modal-box .sched-modal-header[data-v-5dcd1c2a]{padding:20px 18px}.consult-header-icon[data-v-5dcd1c2a]{display:none}.consult-modal-content[data-v-5dcd1c2a]{display:block;min-height:0}.consult-left-pane[data-v-5dcd1c2a]{padding:18px;border-right:0;border-bottom:1px solid #dce2e5}.consult-usage[data-v-5dcd1c2a]{grid-template-columns:1fr}.consult-section-heading[data-v-5dcd1c2a]{padding-right:0;padding-left:0}.consult-slots-list[data-v-5dcd1c2a]{max-height:none;padding-right:0;padding-left:0}.consult-slot-dur[data-v-5dcd1c2a]{display:none}.consult-form-shell[data-v-5dcd1c2a]{grid-template-columns:1fr;margin-right:18px;margin-left:18px;padding:16px}.consult-form-heading[data-v-5dcd1c2a],.consult-day-field[data-v-5dcd1c2a]{grid-column:auto}.consult-modal-box .sched-modal-actions[data-v-5dcd1c2a]{padding-right:18px;padding-left:18px}}@media (min-width: 641px) and (max-width: 900px){.consult-modal-box[data-v-5dcd1c2a]{width:calc(100vw - 32px)}.consult-modal-content[data-v-5dcd1c2a]{grid-template-columns:minmax(0,3fr) minmax(0,7fr)}.consult-left-pane[data-v-5dcd1c2a]{padding:20px}.consult-form-shell[data-v-5dcd1c2a]{grid-template-columns:1fr;margin:20px}.consult-form-heading[data-v-5dcd1c2a],.consult-day-field[data-v-5dcd1c2a]{grid-column:auto}}.consult-modal-box[data-v-5dcd1c2a]{border:1px solid rgba(255,255,255,.92);background:linear-gradient(145deg,#e9edef,#cfd5d9);box-shadow:26px 26px 60px #161d2261,-12px -12px 34px #ffffff61,inset 0 1px 1px #fff}.consult-modal-box .sched-modal-header[data-v-5dcd1c2a]{border-bottom-color:#bfc7cc;background:linear-gradient(145deg,#f4f6f7,#d6dce0);box-shadow:inset 0 1px #fff,0 8px 20px #303b421a}.consult-header-icon[data-v-5dcd1c2a]{color:#f9fbfc;border-color:#39464f;background:linear-gradient(145deg,#697984,#36434c);box-shadow:7px 7px 14px #37414847,-5px -5px 12px #ffffffe6,inset 1px 1px #ffffff40}.consult-modal-box .sched-modal-mode-badge[data-v-5dcd1c2a]{color:#53616a;border-color:#c3cbd0;background:linear-gradient(145deg,#f5f7f8,#dce1e4);box-shadow:3px 3px 7px #48535a21,-3px -3px 7px #fff}.consult-close[data-v-5dcd1c2a]{color:#4d5961;border-color:#c1c9ce;background:linear-gradient(145deg,#f2f4f5,#cfd5d9);box-shadow:6px 6px 12px #444e5533,-5px -5px 11px #ffffffeb,inset 0 1px #fff}.consult-close[data-v-5dcd1c2a]:hover{color:#242e34;border-color:#aeb8be;background:linear-gradient(145deg,#fff,#d7dde0);transform:translateY(-1px)}.consult-left-pane[data-v-5dcd1c2a]{border-right-color:#bcc5ca;background:linear-gradient(145deg,#dce1e4,#cbd2d6);box-shadow:inset -8px 0 18px #4a545b14,inset 1px 0 #ffffffb8}.consult-right-pane[data-v-5dcd1c2a]{background:linear-gradient(145deg,#e7ebed,#d5dbde)}.consult-usage[data-v-5dcd1c2a]{border-color:#ffffffad;background:linear-gradient(145deg,#e9edef,#cdd4d8);box-shadow:8px 8px 17px #4c575e30,-7px -7px 16px #ffffffc2,inset 0 1px #fff}.consult-usage-copy span[data-v-5dcd1c2a]{color:#68757d}.consult-usage-copy strong[data-v-5dcd1c2a]{color:#354149}.consult-progress[data-v-5dcd1c2a]{padding:2px;height:9px;background:#c3cbd0;box-shadow:inset 3px 3px 6px #4e596040,inset -2px -2px 5px #ffffffb8}.consult-progress span[data-v-5dcd1c2a]{background:linear-gradient(90deg,#7b8b95,#34414a);box-shadow:0 1px 3px #1f282e47}.consult-section-heading strong[data-v-5dcd1c2a],.consult-slot-dur[data-v-5dcd1c2a]{color:#53616a;background:linear-gradient(145deg,#e9edef,#cbd2d6);box-shadow:3px 3px 7px #48535a24,-3px -3px 7px #fffc}.consult-slot-item[data-v-5dcd1c2a]{border-color:#ffffffb8;background:linear-gradient(145deg,#edf0f2,#d2d8dc);box-shadow:7px 7px 15px #49545b2b,-6px -6px 14px #ffffffbd,inset 0 1px #fff}.consult-slot-item[data-v-5dcd1c2a]:hover{border-color:#f7f8f9;background:linear-gradient(145deg,#f3f5f6,#d7dde0);box-shadow:9px 9px 19px #414c5336,-7px -7px 16px #ffffffdb,inset 0 1px #fff;transform:translateY(-1px)}.consult-slot-calendar[data-v-5dcd1c2a]{color:#4e5d66;background:linear-gradient(145deg,#e8ecee,#c4ccd1);box-shadow:4px 4px 9px #4651582e,-4px -4px 9px #fffc}.consult-edit-btn[data-v-5dcd1c2a]{color:#46545d;border-color:#aeb9c0;background:linear-gradient(145deg,#edf0f2,#cbd2d6);box-shadow:4px 4px 8px #46515829,-3px -3px 7px #ffffffc7}.consult-edit-btn[data-v-5dcd1c2a]:hover{color:#273139;background:linear-gradient(145deg,#f7f8f9,#d4dade)}.consult-del-btn[data-v-5dcd1c2a]{color:#854a4a;border-color:#c9aaaa;background:linear-gradient(145deg,#eee9e9,#d7cdcd);box-shadow:4px 4px 8px #4e434324,-3px -3px 7px #ffffffbf}.consult-form-shell[data-v-5dcd1c2a]{border-color:#ffffffd1;background:linear-gradient(145deg,#e9edef,#cfd6da);box-shadow:10px 10px 22px #434e5533,-8px -8px 19px #ffffffd1,inset 0 1px #fff}.consult-form-icon[data-v-5dcd1c2a]{border:1px solid #3d4a53;background:linear-gradient(145deg,#687984,#38454e);box-shadow:5px 5px 11px #3a454c40,-4px -4px 10px #ffffffb8,inset 0 1px #fff3}.consult-modal-box .form-select[data-v-5dcd1c2a]{color:#344149;border-color:#b7c1c7;background:linear-gradient(145deg,#f0f2f3,#d9dee1);box-shadow:inset 3px 3px 7px #4d585f24,inset -3px -3px 7px #ffffffd1}.consult-modal-box .form-select[data-v-5dcd1c2a]:hover{border-color:#9facb3}.consult-modal-box .form-select[data-v-5dcd1c2a]:focus{border-color:#7d8b94;background:#edf0f2;box-shadow:inset 3px 3px 7px #4d585f29,inset -3px -3px 7px #ffffffc7,0 0 0 3px #43525b21}.consult-modal-box .sched-modal-actions[data-v-5dcd1c2a]{border-top-color:#bec7cc;background:linear-gradient(145deg,#e1e6e9f7,#cad2d6f7);box-shadow:0 -7px 18px #39444b17,inset 0 1px #ffffffb8}.consult-modal-box .cancel-btn-text[data-v-5dcd1c2a]{color:#4d5a62;border-color:transparent}.consult-modal-box .cancel-btn-text[data-v-5dcd1c2a]:hover{border-color:#bac4c9;background:linear-gradient(145deg,#edf0f2,#d1d7db);box-shadow:4px 4px 9px #45505726,-4px -4px 9px #ffffffbd}.consult-modal-box .save-btn[data-v-5dcd1c2a]{color:#fff;border-color:#35424b;background:linear-gradient(145deg,#687984,#34414a);box-shadow:6px 6px 13px #36414847,-5px -5px 12px #fff9,inset 0 1px #ffffff38}.consult-modal-box .save-btn[data-v-5dcd1c2a]:not(:disabled):hover{background:linear-gradient(145deg,#778892,#3d4a53);transform:translateY(-1px)}.consult-modal-box .save-btn[data-v-5dcd1c2a]:disabled{color:#8e989e;border-color:#b8c1c6;background:linear-gradient(145deg,#dbe0e3,#c4ccd0);box-shadow:inset 3px 3px 7px #4c575e1f,inset -3px -3px 7px #ffffff8c}.consult-empty[data-v-5dcd1c2a]{margin-right:0;margin-left:0;border-color:#aeb9bf;background:linear-gradient(145deg,#e4e8ea,#cad1d5);box-shadow:inset 3px 3px 7px #4a555c1f,inset -3px -3px 7px #ffffffa6}.consult-empty-icon[data-v-5dcd1c2a]{background:linear-gradient(145deg,#e8ecee,#c5cdd1);box-shadow:3px 3px 7px #46515824,-3px -3px 7px #ffffffb3}.consult-right-pane[data-v-5dcd1c2a]{background:linear-gradient(145deg,#e8ecee,#d5dbde);box-shadow:inset 1px 0 #ffffffa8}.consult-right-pane .consult-form-shell[data-v-5dcd1c2a]{align-content:start;margin:0;padding:34px 38px 28px;border:0;border-radius:0;background:transparent;box-shadow:none}.consult-right-pane .consult-form-heading[data-v-5dcd1c2a]{margin-bottom:9px;padding-bottom:19px;border-bottom:1px solid rgba(166,177,184,.72)}.consult-right-pane .consult-form-icon[data-v-5dcd1c2a]{width:42px;height:42px;flex-basis:42px}.consult-right-pane .consult-form-heading .consult-form-title[data-v-5dcd1c2a]{font-size:.91rem}.consult-right-pane .consult-form-heading p[data-v-5dcd1c2a]{margin-top:4px;font-size:.7rem}.consult-right-pane .form-row-inline[data-v-5dcd1c2a]{gap:8px}.consult-right-pane .form-label[data-v-5dcd1c2a]{color:#4e5b64;font-size:.76rem}.consult-right-pane .form-select[data-v-5dcd1c2a]{min-height:50px;font-size:.82rem}.consult-right-pane .sched-modal-actions[data-v-5dcd1c2a]{border-top:1px solid #bbc4c9;background:linear-gradient(145deg,#e0e5e8fa,#cad1d5fa)}@media (max-width: 900px){.consult-right-pane .consult-form-shell[data-v-5dcd1c2a]{margin:0;padding:26px 24px}}@media (max-width: 640px){.consult-right-pane .consult-form-shell[data-v-5dcd1c2a]{padding:22px 18px}}.consult-modal-box[data-v-5dcd1c2a]{border:1px solid #d9e0e5;background:#f8fafb;box-shadow:0 26px 70px #12181e47}.consult-modal-box .sched-modal-header[data-v-5dcd1c2a]{min-height:118px;padding:26px 32px;border-bottom:1px solid #e1e7eb;background:#fff;box-shadow:none}.consult-header-icon[data-v-5dcd1c2a]{color:#44515d;border:1px solid #d9e1e7;background:#f2f5f7;box-shadow:none}.consult-modal-box .sched-modal-mode-badge[data-v-5dcd1c2a]{color:#5d6873;border:1px solid #d9e1e7;background:#f7f9fa;box-shadow:none}.consult-modal-box .sched-modal-title[data-v-5dcd1c2a]{color:#202830}.consult-modal-subtitle[data-v-5dcd1c2a]{color:#7a858e}.consult-close[data-v-5dcd1c2a]{color:#5d6873;border:1px solid #d9e1e7;background:#f8fafb;box-shadow:none}.consult-close[data-v-5dcd1c2a]:hover{color:#202830;border-color:#c8d2d9;background:#eef2f4;transform:none}.consult-modal-content[data-v-5dcd1c2a]{background:#f8fafb}.consult-left-pane[data-v-5dcd1c2a]{border-right:1px solid #e1e7eb;background:#f3f6f8;box-shadow:none}.consult-right-pane[data-v-5dcd1c2a]{background:#fff;box-shadow:none}.consult-usage[data-v-5dcd1c2a],.consult-slot-item[data-v-5dcd1c2a],.consult-empty[data-v-5dcd1c2a]{border:1px solid #dfe6eb;background:#fff;box-shadow:none}.consult-progress[data-v-5dcd1c2a]{height:8px;padding:0;overflow:hidden;border-radius:999px;background:#e2e8ec;box-shadow:none}.consult-progress span[data-v-5dcd1c2a]{background:#44515d;box-shadow:none}.consult-section-heading strong[data-v-5dcd1c2a],.consult-slot-dur[data-v-5dcd1c2a]{color:#5d6873;background:#eef2f4;box-shadow:none}.consult-slot-item[data-v-5dcd1c2a]:hover{border-color:#cfd9df;background:#f9fbfc;box-shadow:none;transform:none}.consult-slot-calendar[data-v-5dcd1c2a],.consult-empty-icon[data-v-5dcd1c2a]{color:#5d6873;background:#eef2f4;box-shadow:none}.consult-edit-btn[data-v-5dcd1c2a],.consult-del-btn[data-v-5dcd1c2a]{box-shadow:none}.consult-edit-btn[data-v-5dcd1c2a]{color:#44515d;border:1px solid #cfd9df;background:#fff}.consult-edit-btn[data-v-5dcd1c2a]:hover{color:#202830;background:#eef2f4}.consult-del-btn[data-v-5dcd1c2a]{color:#b34040;border:1px solid #efcaca;background:#fff5f5}.consult-form-shell[data-v-5dcd1c2a]{border:0;background:transparent;box-shadow:none}.consult-form-icon[data-v-5dcd1c2a]{color:#fff;border:1px solid #3e4a55;background:#44515d;box-shadow:none}.consult-right-pane .consult-form-shell[data-v-5dcd1c2a]{padding:32px 38px 26px}.consult-right-pane .consult-form-heading[data-v-5dcd1c2a]{border-bottom:1px solid #e1e7eb}.consult-modal-box .form-select[data-v-5dcd1c2a]{color:#26313b;border:1px solid #d7e0e6;background:#fbfcfd;box-shadow:none}.consult-modal-box .form-select[data-v-5dcd1c2a]:hover{border-color:#aeb9c0}.consult-modal-box .form-select[data-v-5dcd1c2a]:focus{border-color:#6b7884;background:#fff;box-shadow:0 0 0 3px #64717e1f}.consult-modal-box .sched-modal-actions[data-v-5dcd1c2a],.consult-right-pane .sched-modal-actions[data-v-5dcd1c2a]{border-top:1px solid #e1e7eb;background:#fff;box-shadow:none}.consult-modal-box .cancel-btn-text[data-v-5dcd1c2a]{color:#5d6873;border:1px solid transparent;background:transparent;box-shadow:none}.consult-modal-box .cancel-btn-text[data-v-5dcd1c2a]:hover{border-color:#d7e0e6;background:#f6f8f9;box-shadow:none}.consult-modal-box .save-btn[data-v-5dcd1c2a]{color:#fff;border:1px solid #3e4a55;background:#44515d;box-shadow:0 8px 18px #30394229}.consult-modal-box .save-btn[data-v-5dcd1c2a]:not(:disabled):hover{background:#303b45;transform:none}.consult-modal-box .save-btn[data-v-5dcd1c2a]:disabled{color:#8e989e;border-color:#d7e0e6;background:#edf1f3;box-shadow:none}@media (max-width: 900px){.consult-left-pane[data-v-5dcd1c2a]{border-right:0;border-bottom:1px solid #e1e7eb}.consult-right-pane .consult-form-shell[data-v-5dcd1c2a]{padding:24px}}@media (max-width: 640px){.consult-right-pane .consult-form-shell[data-v-5dcd1c2a]{padding:20px 18px}}[data-v-75869c28]{box-sizing:border-box}.layout[data-v-75869c28]{display:flex;height:100vh;background:linear-gradient(135deg,#f4f6f7,#dfe3e5);font-family:Poppins,Arial,sans-serif;color:#111827}.sidebar[data-v-75869c28]{width:288px;min-width:288px;height:100vh;position:sticky;top:0;padding:24px 17px;display:flex;flex-direction:column;background:linear-gradient(145deg,#eef1f2,#c5cbd0);border-right:1px solid #aeb5ba;overflow:auto}.sidebar-profile[data-v-75869c28]{text-align:center;border-bottom:1px solid #aeb5ba;padding-bottom:18px;margin-bottom:15px}.avatar-wrap[data-v-75869c28]{width:78px;height:78px;border-radius:50%;overflow:hidden;margin:0 auto 8px;cursor:pointer;border:3px solid #fff}.avatar[data-v-75869c28]{width:100%;height:100%;object-fit:cover}.brand[data-v-75869c28]{font-weight:700}.role[data-v-75869c28],.email[data-v-75869c28]{font-size:.76rem;color:#51606a}.email[data-v-75869c28]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-nav[data-v-75869c28]{display:flex;flex-direction:column;gap:5px;flex:1}.nav-item[data-v-75869c28]{display:flex;align-items:center;gap:12px;padding:13px 16px;border-radius:12px;text-decoration:none;color:#111827;font-size:.88rem;font-weight:600}.nav-item[data-v-75869c28]:hover,.nav-item.active[data-v-75869c28]{background:#ffffffbf;box-shadow:inset 0 0 0 1px #fff}.nav-icon[data-v-75869c28]{display:flex}.logout-btn[data-v-75869c28]{border:0;border-radius:10px;padding:11px;background:#e63946;color:#fff;font:inherit;cursor:pointer}.main[data-v-75869c28]{flex:1;overflow:auto;padding:28px 40px 50px}.page-header[data-v-75869c28],.section-heading[data-v-75869c28],.workspace-heading[data-v-75869c28]{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.page-header[data-v-75869c28]{margin-bottom:24px}.page-header h1[data-v-75869c28]{font-size:2rem;margin:0}.page-header p[data-v-75869c28],.section-heading p[data-v-75869c28],.workspace-heading p[data-v-75869c28]{margin:4px 0 0;color:#5e6870;font-size:.87rem}.primary-btn[data-v-75869c28],.dark-btn[data-v-75869c28]{border:1px solid #263746;background:#344657;color:#fff;border-radius:9px;padding:10px 16px;font:inherit;font-weight:600;cursor:pointer}.terms-card[data-v-75869c28],.workspace-card[data-v-75869c28]{background:#ffffffe0;border:1px solid #fff;border-radius:17px;padding:23px;box-shadow:0 10px 30px #222d3714}.section-heading[data-v-75869c28]{align-items:center;margin-bottom:18px}.section-heading h2[data-v-75869c28],.workspace-heading h2[data-v-75869c28]{margin:0;font-size:1.15rem}.term-filter[data-v-75869c28]{display:flex;gap:5px;background:#eef1f3;padding:4px;border-radius:10px}.term-filter button[data-v-75869c28]{border:0;background:transparent;padding:7px 12px;border-radius:7px;font:inherit;font-size:.75rem;cursor:pointer}.term-filter button.active[data-v-75869c28]{background:#fff;box-shadow:0 2px 8px #ccd2d6}.term-list[data-v-75869c28]{display:flex;flex-direction:column;gap:11px}.term-row[data-v-75869c28]{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:17px;border:1px solid #dce1e4;border-radius:12px;background:#fafbfc}.term-title[data-v-75869c28]{display:flex;align-items:center;gap:8px}.term-title h3[data-v-75869c28]{margin:0;font-size:.95rem}.term-summary p[data-v-75869c28]{margin:7px 0 3px;color:#53606a;font-size:.76rem}.term-summary small[data-v-75869c28]{color:#879097}.pill[data-v-75869c28],.action-chip[data-v-75869c28]{border-radius:99px;padding:4px 9px;font-size:.65rem;font-weight:700}.pill.in-use[data-v-75869c28]{background:#d5f8df;color:#08752d}.pill.published[data-v-75869c28]{background:#dff1ff;color:#075f99}.term-actions[data-v-75869c28]{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.term-actions button[data-v-75869c28]{border:1px solid #d4dade;background:#edf0f2;border-radius:8px;padding:8px 11px;font:inherit;font-size:.75rem;cursor:pointer}.term-actions .dark-btn[data-v-75869c28]{background:#303c47;color:#fff}.term-actions .publish-btn[data-v-75869c28]{background:#e4f4ff;color:#075f99}.term-actions button[data-v-75869c28]:disabled{opacity:.5;cursor:default}.workspace-heading[data-v-75869c28]{align-items:center;padding-bottom:18px;border-bottom:1px solid #e3e7e9}.back-btn[data-v-75869c28]{border:0;background:transparent;color:#3e586b;font:inherit;font-size:.78rem;cursor:pointer}.action-chip.view[data-v-75869c28]{background:#e4f4ff;color:#075f99}.action-chip.add[data-v-75869c28]{background:#dff7e7;color:#08752d}.mode-grid[data-v-75869c28]{display:grid;grid-template-columns:repeat(2,minmax(230px,290px));gap:24px;margin:35px auto;justify-content:center}.mode-card[data-v-75869c28]{min-height:220px;border:1px solid #fff;border-radius:16px;background:linear-gradient(145deg,#fff,#e7eaec);box-shadow:0 12px 25px #1e2d371f;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:13px;font:inherit;cursor:pointer}.mode-card[data-v-75869c28]:hover{transform:translateY(-3px)}.mode-icon[data-v-75869c28]{width:65px;height:65px;display:grid;place-items:center;border-radius:50%;background:#e6eaed;color:#30465a}.mode-icon[data-v-75869c28] svg{width:31px;height:31px}.mode-card small[data-v-75869c28]{max-width:210px;color:#66717a}.preview-toolbar[data-v-75869c28]{display:flex;align-items:flex-end;justify-content:space-between;margin:18px 0}.preview-search[data-v-75869c28]{display:flex;flex-direction:column;gap:4px;font-size:.7rem;color:#59656e}.preview-search input[data-v-75869c28]{width:260px;border:1px solid #ccd3d7;border-radius:8px;padding:9px 11px;font:inherit}.preview-grid[data-v-75869c28]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.preview-card[data-v-75869c28]{text-align:left;border:1px solid #d8dfe3;border-radius:14px;padding:15px;background:linear-gradient(145deg,#fff,#f0f2f3);font:inherit;cursor:pointer}.preview-card[data-v-75869c28]:hover{border-color:#718291;box-shadow:0 8px 20px #1e2d371a}.preview-card-head[data-v-75869c28]{display:flex;align-items:center;gap:10px}.preview-avatar[data-v-75869c28]{width:39px;height:39px;border-radius:50%;display:grid;place-items:center;background:#dce5eb;color:#2d4658;font-size:.7rem;font-weight:700}.preview-card-head div[data-v-75869c28]{display:flex;flex:1;flex-direction:column}.preview-card-head strong[data-v-75869c28]{font-size:.85rem}.preview-card-head small[data-v-75869c28]{font-size:.66rem;color:#7b858c}.open-arrow[data-v-75869c28]{font-size:1.2rem}.mini-schedule[data-v-75869c28]{display:grid;grid-template-columns:repeat(6,1fr);gap:3px;margin:13px 0}.mini-day[data-v-75869c28]{min-height:75px;padding:5px 3px;background:#e9edef;border-radius:5px;overflow:hidden}.mini-day b[data-v-75869c28]{display:block;font-size:.55rem;color:#56636d;margin-bottom:4px}.mini-day span[data-v-75869c28]{display:block;background:#526474;color:#fff;border-radius:3px;padding:3px;margin-bottom:2px;font-size:.45rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mini-day em[data-v-75869c28]{font-size:.55rem;color:#9aa1a6}.preview-action[data-v-75869c28]{font-size:.68rem;color:#35566d;font-weight:600}.preview-pagination[data-v-75869c28]{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:18px;font-size:.75rem}.preview-pagination button[data-v-75869c28]{width:32px;height:30px;border:1px solid #d3dade;border-radius:7px;background:#fff}.empty-state[data-v-75869c28]{text-align:center;color:#7b858c;padding:45px}.modal-overlay[data-v-75869c28]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0d161d94;z-index:1000;display:grid;place-items:center;padding:22px}.term-modal[data-v-75869c28]{width:min(1050px,96vw);max-height:92vh;display:flex;flex-direction:column;background:#fff;border-radius:17px;box-shadow:0 25px 70px #0000004d}.term-modal>header[data-v-75869c28],.term-modal>footer[data-v-75869c28]{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid #e5e8ea}.term-modal>header h2[data-v-75869c28]{margin:0}.term-modal>header p[data-v-75869c28]{margin:3px 0 0;color:#748089;font-size:.78rem}.term-modal>footer[data-v-75869c28]{border-top:1px solid #e5e8ea;border-bottom:0;justify-content:flex-end;gap:9px}.modal-close[data-v-75869c28]{border:0;background:transparent;font-size:1.7rem;cursor:pointer}.modal-body[data-v-75869c28]{padding:20px 22px;overflow:auto}.two-columns[data-v-75869c28],.count-grid[data-v-75869c28]{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.two-columns label[data-v-75869c28],.count-grid label[data-v-75869c28],.name-grid label[data-v-75869c28]{display:flex;flex-direction:column;gap:5px;font-size:.72rem;font-weight:600}.two-columns input[data-v-75869c28],.two-columns select[data-v-75869c28],.count-grid input[data-v-75869c28],.name-grid input[data-v-75869c28]{border:1px solid #ccd4d9;border-radius:8px;padding:9px;font:inherit}.form-section[data-v-75869c28]{margin-top:20px}.form-section h3[data-v-75869c28]{font-size:.88rem;margin:0 0 10px}.count-grid[data-v-75869c28]{grid-template-columns:repeat(4,1fr)}.name-groups[data-v-75869c28]{display:flex;flex-direction:column;gap:13px}.name-group>strong[data-v-75869c28],.room-group>strong[data-v-75869c28]{display:block;font-size:.76rem;margin-bottom:7px}.name-grid[data-v-75869c28]{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.room-group[data-v-75869c28]{margin-bottom:13px}.room-grid[data-v-75869c28]{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}.room-grid label[data-v-75869c28]{display:flex;align-items:center;gap:5px;padding:8px;border:1px solid #dce1e4;border-radius:8px;font-size:.7rem}.room-grid label.selected[data-v-75869c28]{background:#e9f3ee;border-color:#87a99a}.room-grid select[data-v-75869c28]{min-width:0;width:80px;margin-left:auto;border:1px solid #ccd4d9;border-radius:5px;font-size:.62rem}.cancel-btn[data-v-75869c28]{border:1px solid #d4dade;background:#fff;border-radius:9px;padding:10px 16px;font:inherit;cursor:pointer}@media (max-width:900px){.sidebar[data-v-75869c28]{display:none}.main[data-v-75869c28]{padding:22px 16px}.term-row[data-v-75869c28]{align-items:flex-start;flex-direction:column}.term-actions[data-v-75869c28]{justify-content:flex-start}.preview-grid[data-v-75869c28],.mode-grid[data-v-75869c28]{grid-template-columns:1fr}.count-grid[data-v-75869c28],.name-grid[data-v-75869c28],.room-grid[data-v-75869c28]{grid-template-columns:repeat(2,1fr)}.two-columns[data-v-75869c28]{grid-template-columns:1fr}.preview-toolbar[data-v-75869c28]{align-items:flex-start;flex-direction:column;gap:10px}.preview-search input[data-v-75869c28]{width:100%}}.field-help[data-v-75869c28]{margin:-4px 0 10px;color:#748089;font-size:.72rem}.main[data-v-75869c28]{padding:34px 42px 56px}.page-header[data-v-75869c28]{align-items:center;margin-bottom:28px}.page-eyebrow[data-v-75869c28]{display:block;margin-bottom:5px;color:#68747d;font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.page-header h1[data-v-75869c28]{color:#1f2933;font-size:clamp(2rem,3vw,2.65rem);letter-spacing:-.04em;line-height:1.08}.page-header p[data-v-75869c28]{max-width:670px;margin-top:9px;color:#66727c;font-size:.94rem;line-height:1.55}.new-term-btn[data-v-75869c28]{display:inline-flex;align-items:center;gap:9px;min-height:48px;padding:0 20px;border-radius:12px;box-shadow:0 9px 20px #25303a33}.new-term-btn span[data-v-75869c28]{font-size:1.35rem;font-weight:400;line-height:1}.terms-card[data-v-75869c28]{padding:28px;border-radius:20px;box-shadow:0 14px 38px #28343d1a}.section-heading[data-v-75869c28]{padding-bottom:21px;border-bottom:1px solid #e3e7ea}.section-heading h2[data-v-75869c28]{color:#202830;font-size:1.35rem;letter-spacing:-.02em}.section-heading p[data-v-75869c28]{margin-top:6px;color:#6b7680;font-size:.83rem}.term-filter[data-v-75869c28]{padding:5px;gap:3px;border:1px solid #e1e5e8;border-radius:12px;background:#f1f3f5}.term-filter button[data-v-75869c28]{min-height:36px;padding:7px 14px;color:#59646e;font-size:.74rem;font-weight:600}.term-filter button.active[data-v-75869c28]{color:#1f2933;box-shadow:0 3px 10px #2731391f}.term-list[data-v-75869c28]{gap:14px}.term-row[data-v-75869c28]{position:relative;align-items:stretch;min-height:170px;padding:22px;overflow:hidden;border-color:#dce2e6;border-radius:16px;background:#fff;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.term-row[data-v-75869c28]:hover{border-color:#b9c4cc;box-shadow:0 10px 25px #29343c17;transform:translateY(-1px)}.term-row.is-published[data-v-75869c28]{border-color:#9fc7b0;background:linear-gradient(110deg,#fbfefc,#f3faf6)}.term-row.is-published[data-v-75869c28]:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:#2f7d52}.term-summary[data-v-75869c28]{display:flex;min-width:0;flex:1;flex-direction:column}.term-title[data-v-75869c28]{flex-wrap:wrap;gap:10px}.term-title h3[data-v-75869c28]{color:#202830;font-size:1.08rem;letter-spacing:-.01em}.pill[data-v-75869c28]{display:inline-flex;align-items:center;gap:6px;padding:5px 9px}.pill.published[data-v-75869c28]{color:#14643c;background:#dff4e7}.pill.draft[data-v-75869c28]{color:#69747d;background:#edf0f2}.status-dot[data-v-75869c28]{width:7px;height:7px;border-radius:50%;background:#238354;box-shadow:0 0 0 3px #2383541f}.term-guidance[data-v-75869c28]{margin:7px 0 17px!important;color:#717c85!important;font-size:.76rem!important}.term-metrics[data-v-75869c28]{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}.term-metric[data-v-75869c28]{display:inline-flex;align-items:baseline;gap:5px;padding:7px 10px;color:#64707a;border:1px solid #e2e6e9;border-radius:9px;background:#f7f8f9;font-size:.68rem;white-space:nowrap}.term-metric b[data-v-75869c28]{color:#26313a;font-size:.84rem}.room-metric[data-v-75869c28]{color:#476579;background:#f2f7fa}.term-actions[data-v-75869c28]{display:grid;width:min(330px,36%);grid-template-columns:repeat(2,minmax(0,1fr));align-content:center;align-items:center;justify-content:flex-end}.term-actions__label[data-v-75869c28]{grid-column:1 / -1;margin:0 0 2px 2px;color:#818b93;font-size:.62rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.term-actions button[data-v-75869c28]{display:inline-flex;min-height:42px;padding:9px 12px;align-items:center;justify-content:flex-start;gap:8px;color:#39444d;border-color:#d7dde1;border-radius:10px;background:#f6f7f8;font-size:.7rem;font-weight:600;text-align:left;transition:transform .15s ease,background .15s ease,border-color .15s ease}.term-actions button svg[data-v-75869c28]{width:17px;height:17px;flex:0 0 17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.term-actions button[data-v-75869c28]:hover:not(:disabled){border-color:#aeb9c0;background:#fff;transform:translateY(-1px)}.term-actions button[data-v-75869c28]:focus-visible{outline:3px solid rgba(50,80,98,.2);outline-offset:2px}.term-actions .view-btn[data-v-75869c28]{color:#fff;border-color:#354653;background:#354653}.term-actions .view-btn[data-v-75869c28]:hover:not(:disabled){color:#fff;background:#263744}.term-actions .add-btn[data-v-75869c28]{color:#315e47;border-color:#bed4c8;background:#edf7f1}.term-actions .publish-btn[data-v-75869c28]{color:#176a94;border-color:#b9d7e6;background:#eaf6fc}.term-actions .publish-btn[data-v-75869c28]:disabled{color:#668176;border-color:#cfddd5;background:#e7f1eb;opacity:1}.empty-state[data-v-75869c28]{border:1px dashed #ccd4d9;border-radius:14px;background:#f8fafb}.workspace-card[data-v-75869c28]{padding:0;overflow:hidden;border-color:#ffffffe6;max-width:1480px;margin:0 auto;border-radius:18px;background:#fafbfbf0;box-shadow:0 18px 44px #272e3421,inset 0 1px #fff}.workspace-heading[data-v-75869c28]{display:flex;align-items:center;min-height:104px;padding:22px 28px;border-bottom-color:#d9dee1;background:linear-gradient(135deg,#fffffffa,#e7eaecc2)}.workspace-heading__context[data-v-75869c28]{display:flex;min-width:0;align-items:center;gap:16px}.workspace-title[data-v-75869c28]{min-width:0;text-align:left}.workspace-eyebrow[data-v-75869c28]{display:block;margin-bottom:5px;color:#6f7b84;font-size:.64rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase}.workspace-eyebrow span[data-v-75869c28]{margin:0 5px;color:#a0a8ae}.workspace-heading h2[data-v-75869c28]{color:#222a31;font-size:1.3rem;letter-spacing:-.025em}.workspace-heading p[data-v-75869c28]{margin-top:3px;color:#68737c;font-size:.75rem}.workspace-heading .back-btn[data-v-75869c28]{display:inline-flex;width:40px;height:40px;flex:0 0 40px;justify-content:center;align-items:center;padding:0;color:#46535c;border:1px solid #cbd2d6;border-radius:9px;background:linear-gradient(145deg,#fff,#e8ebed);box-shadow:0 3px 8px #29313714,inset 0 1px #fff;font-weight:600;transition:background .16s ease,border-color .16s ease}.workspace-heading .back-btn[data-v-75869c28]:hover{color:#202a31;border-color:#9ea9b0;background:#fff;transform:translateY(-1px)}.workspace-heading .back-btn[data-v-75869c28]:focus-visible,.mode-card[data-v-75869c28]:focus-visible{outline:3px solid rgba(48,66,78,.2);outline-offset:3px}.workspace-heading .action-chip[data-v-75869c28]{margin-left:auto;padding:7px 11px;color:#3f4b54;border:1px solid #cbd2d7;background:linear-gradient(145deg,#f8f9f9,#dce0e2);box-shadow:inset 0 1px #ffffffe6}.mode-grid[data-v-75869c28]{width:min(860px,calc(100% - 64px));grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:44px auto 52px}.mode-card[data-v-75869c28]{position:relative;min-height:164px;padding:26px;flex-direction:row;justify-content:flex-start;gap:18px;color:#283139;border-color:#d4dade;border-radius:15px;background:linear-gradient(145deg,#fff,#f2f4f5 58%,#e1e4e6);box-shadow:0 10px 24px #2830361a,inset 0 1px #fff;text-align:left;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.mode-card[data-v-75869c28]:hover{border-color:#89949c;box-shadow:0 15px 30px #28303626,inset 0 1px #fff;transform:translateY(-2px)}.mode-icon[data-v-75869c28]{width:58px;height:58px;flex:0 0 58px;color:#f6f7f7;border:1px solid #4b555d;border-radius:14px;background:linear-gradient(145deg,#66717a,#313940);box-shadow:0 7px 15px #2a323838,inset 0 1px #fff3}.mode-icon[data-v-75869c28] svg{width:27px;height:27px}.mode-copy[data-v-75869c28]{display:flex;min-width:0;flex:1;flex-direction:column;gap:7px}.mode-copy strong[data-v-75869c28]{color:#232b31;font-size:1rem;letter-spacing:-.015em}.mode-card .mode-copy small[data-v-75869c28]{max-width:245px;color:#68747d;font-size:.75rem;line-height:1.55}.mode-arrow[data-v-75869c28]{color:#59656e;font-size:1.25rem;transition:transform .18s ease}.mode-card:hover .mode-arrow[data-v-75869c28]{transform:translate(3px)}.preview-toolbar[data-v-75869c28]{align-items:center;gap:24px;margin:0;padding:16px 28px;border-bottom:1px solid #dde2e5;background:#f6f7f8db}.preview-toolbar__intro[data-v-75869c28]{display:flex;align-items:center;gap:14px}.preview-toolbar__intro .back-btn[data-v-75869c28]{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:8px 12px;color:#34434e;border:1px solid #cbd3d7;border-radius:9px;background:linear-gradient(145deg,#fff,#e7eaec);box-shadow:0 3px 8px #28313712,inset 0 1px #fff;font-size:.78rem;font-weight:650}.preview-toolbar__intro .back-btn[data-v-75869c28]:hover{color:#1f303c;border-color:#9da9b0;background:#fff;transform:translateY(-1px)}.preview-toolbar__intro>span[data-v-75869c28]{color:#737e86;font-size:.68rem;font-weight:550;white-space:nowrap}.preview-toolbar__intro>span b[data-v-75869c28]{color:#2d3941;font-size:.75rem}.preview-search[data-v-75869c28]{margin-left:auto;flex-direction:row;align-items:center;gap:10px;color:#536069;font-size:.68rem;font-weight:650}.preview-search input[data-v-75869c28]{width:260px;min-height:40px;padding:10px 13px;color:#263038;border-color:#c6ced3;border-radius:10px;background:#ffffffe6;box-shadow:inset 0 1px 2px #252e340d;font-size:.76rem;transition:border-color .16s ease,box-shadow .16s ease}.preview-search input[data-v-75869c28]:focus{outline:none;border-color:#71808a;box-shadow:0 0 0 3px #3e525f1f}.preview-grid[data-v-75869c28]{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:20px 28px 28px;background:#f3f5f6}.preview-card[data-v-75869c28]{min-width:0;padding:17px;overflow:hidden;color:#283139;border-color:#d6dde1;border-radius:13px;background:linear-gradient(145deg,#fff,#f4f5f6);box-shadow:0 5px 14px #2931370e,inset 0 1px #fff;transition:border-color .17s ease,box-shadow .17s ease,transform .17s ease}.preview-card[data-v-75869c28]:hover{border-color:#909ca4;box-shadow:0 11px 23px #262f351f,inset 0 1px #fff;transform:translateY(-2px)}.preview-card[data-v-75869c28]:focus-visible{outline:3px solid rgba(49,72,86,.19);outline-offset:2px}.preview-card-head[data-v-75869c28]{gap:12px}.preview-avatar[data-v-75869c28]{position:relative;width:42px;height:42px;flex:0 0 42px;color:#eef2f4;border:1px solid #596772;background:linear-gradient(145deg,#687985,#394a56);box-shadow:0 5px 11px #2b373f2b;overflow:hidden}.preview-avatar>span[data-v-75869c28]{position:relative;z-index:0}.preview-avatar img[data-v-75869c28]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;width:100%;height:100%;object-fit:cover}.preview-card-head strong[data-v-75869c28]{color:#20282e;font-size:.82rem;font-weight:700}.preview-card-head small[data-v-75869c28]{margin-top:2px;color:#7a848c;font-size:.64rem}.preview-card-head>.open-arrow[data-v-75869c28]{display:none}.mini-schedule[data-v-75869c28]{gap:5px;margin:16px 0 13px}.mini-day[data-v-75869c28]{min-width:0;min-height:76px;padding:7px 6px;border:1px solid #e0e5e8;border-radius:7px;background:#edf0f2}.mini-day b[data-v-75869c28]{margin-bottom:6px;color:#596670;font-size:.55rem;letter-spacing:.01em}.mini-day span[data-v-75869c28]{padding:4px 5px;border-radius:4px;background:#526573;font-size:.47rem;line-height:1.25}.mini-day em[data-v-75869c28]{color:#9aa3aa;font-size:.6rem;font-style:normal}.preview-action[data-v-75869c28]{display:inline-flex;align-items:center;gap:6px;min-height:34px;justify-content:center;padding:7px 11px;color:#344751;border:1px solid #c5cfd4;border-radius:8px;background:linear-gradient(145deg,#fff,#e5e9eb);box-shadow:0 3px 8px #2a343b14,inset 0 1px #fff;font-size:.67rem;font-weight:700}.preview-card:hover .preview-action[data-v-75869c28]{color:#fff;border-color:#3d4b55;background:linear-gradient(145deg,#5a6872,#34424b);box-shadow:0 5px 11px #27303729}.preview-card:hover .preview-action span[data-v-75869c28]{transform:translate(2px)}.preview-action span[data-v-75869c28]{transition:transform .17s ease}.preview-pagination[data-v-75869c28]{margin:0;padding:0 30px 26px}.preview-pagination button[data-v-75869c28]{color:#33414b;border-color:#c4ccd1;background:linear-gradient(145deg,#fff,#e5e8ea);box-shadow:0 3px 7px #28303614,inset 0 1px #fff;cursor:pointer;transition:border-color .15s ease,transform .15s ease}.preview-pagination button[data-v-75869c28]:hover:not(:disabled){border-color:#929fa7;transform:translateY(-1px)}.preview-pagination button[data-v-75869c28]:disabled{cursor:default;opacity:.45}@media (max-width: 1100px){.term-row[data-v-75869c28]{flex-direction:column}.term-actions[data-v-75869c28]{width:min(100%,480px);justify-content:flex-start}}@media (max-width: 820px){.mode-grid[data-v-75869c28],.preview-grid[data-v-75869c28]{grid-template-columns:1fr}}@media (max-width: 700px){.main[data-v-75869c28]{padding:22px 16px 40px}.page-header[data-v-75869c28]{align-items:flex-start;flex-direction:column}.new-term-btn[data-v-75869c28]{width:100%;justify-content:center}.terms-card[data-v-75869c28]{padding:18px}.section-heading[data-v-75869c28]{align-items:flex-start;flex-direction:column}.term-filter[data-v-75869c28]{width:100%}.term-filter button[data-v-75869c28]{flex:1}.term-row[data-v-75869c28]{padding:18px 16px}.term-actions[data-v-75869c28]{display:grid;width:100%;grid-template-columns:repeat(2,1fr)}.term-actions button[data-v-75869c28]{width:100%}.workspace-heading[data-v-75869c28]{min-height:0;padding:20px}.workspace-heading h2[data-v-75869c28]{font-size:1.15rem}.mode-grid[data-v-75869c28]{width:calc(100% - 32px);margin:24px auto 30px}.mode-card[data-v-75869c28]{min-height:138px;padding:20px}.preview-toolbar[data-v-75869c28]{align-items:stretch;flex-direction:column;padding:18px 20px}.preview-toolbar__intro[data-v-75869c28]{justify-content:space-between}.preview-search[data-v-75869c28]{margin-left:0;align-items:stretch;flex-direction:column}.preview-search input[data-v-75869c28]{width:100%}.preview-grid[data-v-75869c28]{padding:18px 20px 24px}.mini-schedule[data-v-75869c28]{grid-template-columns:repeat(3,1fr)}}@media (max-width: 420px){.term-actions[data-v-75869c28]{grid-template-columns:1fr}.term-actions__label[data-v-75869c28]{grid-column:1}.workspace-heading .action-chip[data-v-75869c28]{display:none}.workspace-heading[data-v-75869c28]{padding:17px}.workspace-heading__context[data-v-75869c28]{align-items:flex-start}.workspace-heading p[data-v-75869c28]{display:none}.mode-card[data-v-75869c28]{align-items:flex-start}.mode-arrow[data-v-75869c28]{display:none}}.modal-overlay[data-v-75869c28]{padding:28px;background:#141b20ad;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.term-modal[data-v-75869c28]{width:min(980px,96vw);max-height:min(92vh,940px);overflow:hidden;border:1px solid rgba(255,255,255,.8);border-radius:22px;box-shadow:0 30px 90px #00000061}.term-modal>header[data-v-75869c28]{padding:24px 28px 21px;background:linear-gradient(135deg,#fff,#f5f7f8)}.term-modal>header h2[data-v-75869c28]{color:#202830;font-size:1.55rem;letter-spacing:-.03em}.term-modal>header p[data-v-75869c28]{max-width:650px;margin-top:7px;color:#65727c;font-size:.86rem;line-height:1.55}.modal-eyebrow[data-v-75869c28]{display:block;margin-bottom:5px;color:#667781;font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.modal-close[data-v-75869c28]{display:grid;width:38px;height:38px;place-items:center;padding:0;color:#59636b;border-radius:10px;line-height:1}.modal-close[data-v-75869c28]:hover{color:#202830;background:#e9edef}.modal-close[data-v-75869c28]:focus-visible{outline:3px solid rgba(49,75,91,.2)}.modal-body[data-v-75869c28]{padding:24px 28px 34px;background:#f4f6f7}.setup-section[data-v-75869c28]{margin:0 0 16px;padding:21px;border:1px solid #dfe4e7;border-radius:15px;background:#fff;box-shadow:0 5px 15px #29333a0a}.setup-section[data-v-75869c28]:last-child{margin-bottom:0}.setup-section__heading[data-v-75869c28]{display:flex;align-items:flex-start;gap:12px;margin-bottom:18px}.setup-section__heading h3[data-v-75869c28]{margin:1px 0 3px;color:#222b32;font-size:1rem}.setup-section__heading p[data-v-75869c28]{margin:0;color:#6f7b84;font-size:.78rem;line-height:1.5}.step-number[data-v-75869c28]{display:grid;width:28px;height:28px;flex:0 0 28px;place-items:center;color:#fff;border-radius:8px;background:#3d4e5a;font-size:.72rem;font-weight:700}.room-heading .selection-count[data-v-75869c28]{margin-left:auto}.selection-count[data-v-75869c28]{padding:6px 9px;color:#356047;border:1px solid #c8ddd0;border-radius:999px;background:#edf7f1;font-size:.64rem;font-weight:700;white-space:nowrap}.select-all-rooms[data-v-75869c28]{display:flex;align-items:center;gap:11px;margin:-2px 0 18px;padding:12px 14px;color:#46535c;border:1px solid #d7dfe3;border-radius:11px;background:#f7f9fa;cursor:pointer;transition:border-color .15s,background .15s}.select-all-rooms[data-v-75869c28]:hover{border-color:#aebdc5;background:#fff}.select-all-rooms.selected[data-v-75869c28]{color:#26543a;border-color:#9fc6ae;background:#eaf6ee}.select-all-rooms input[data-v-75869c28]{width:17px;height:17px;flex:0 0 17px;accent-color:#35684b}.select-all-rooms>span[data-v-75869c28]{display:flex;flex-direction:column;gap:2px}.select-all-rooms strong[data-v-75869c28]{font-size:.76rem}.select-all-rooms small[data-v-75869c28]{color:#7b858d;font-size:.65rem}.two-columns label[data-v-75869c28],.count-grid label[data-v-75869c28],.name-grid label[data-v-75869c28]{gap:7px;color:#3d4850;font-size:.75rem;font-weight:650}.two-columns input[data-v-75869c28],.two-columns select[data-v-75869c28],.count-grid input[data-v-75869c28],.name-grid input[data-v-75869c28]{min-height:43px;padding:10px 12px;color:#202830;border-color:#cfd7dc;background:#fbfcfc;font-size:.78rem;font-weight:500;transition:border-color .15s,box-shadow .15s,background .15s}.two-columns input[data-v-75869c28]:focus,.two-columns select[data-v-75869c28]:focus,.count-grid input[data-v-75869c28]:focus,.name-grid input[data-v-75869c28]:focus{outline:none;border-color:#708592;background:#fff;box-shadow:0 0 0 3px #4963721f}.two-columns input[data-v-75869c28]::placeholder,.count-grid input[data-v-75869c28]::placeholder,.name-grid input[data-v-75869c28]::placeholder{color:#a0a8ae}.count-grid[data-v-75869c28]{gap:10px}.name-groups[data-v-75869c28]{margin-top:20px;padding-top:18px;gap:16px;border-top:1px solid #e6e9eb}.name-group[data-v-75869c28]{padding:15px;border:1px solid #e1e6e9;border-radius:12px;background:#f8fafb}.name-group>strong[data-v-75869c28]{margin-bottom:11px;color:#354149;font-size:.8rem}.inline-empty[data-v-75869c28]{margin-top:18px;padding:13px 15px;color:#707c85;border:1px dashed #ccd5da;border-radius:10px;background:#f8fafb;font-size:.76rem}.room-group[data-v-75869c28]{margin-bottom:18px}.room-group[data-v-75869c28]:last-child{margin-bottom:0}.room-group>strong[data-v-75869c28]{margin-bottom:9px;color:#3d4951;font-size:.79rem}.room-grid[data-v-75869c28]{gap:8px}.room-grid label[data-v-75869c28]{min-height:39px;padding:8px 10px;color:#536069;border-color:#dce2e5;background:#fafbfc;cursor:pointer;transition:border-color .15s,background .15s,transform .15s}.room-grid label[data-v-75869c28]:hover{border-color:#aebbc3;background:#fff;transform:translateY(-1px)}.room-grid label.selected[data-v-75869c28]{color:#24543a;border-color:#9fc6ae;background:#eaf6ee;box-shadow:inset 0 0 0 1px #45805b14}.room-grid input[data-v-75869c28]{accent-color:#35684b}.term-modal>footer[data-v-75869c28]{gap:10px;padding:16px 28px;background:#fffffffa;box-shadow:0 -8px 24px #29323912}.footer-help[data-v-75869c28]{margin-right:auto;color:#78838b;font-size:.74rem}.term-modal>footer button[data-v-75869c28]{min-height:40px;padding:9px 17px;border-radius:10px;font-size:.78rem;font-weight:650;line-height:1}.term-modal>footer .cancel-btn[data-v-75869c28]{color:#46515a;border-color:#cfd6da;background:#fff}.term-modal>footer .cancel-btn[data-v-75869c28]:hover{border-color:#aeb9bf;background:#f5f7f8}.save-term-btn[data-v-75869c28]{min-width:124px;border-color:#344957;background:#344957;box-shadow:0 6px 14px #2a3d492e}.save-term-btn[data-v-75869c28]:hover:not(:disabled){background:#263b49;transform:translateY(-1px)}.save-term-btn[data-v-75869c28]:disabled{opacity:.65;cursor:wait}@media (max-width: 700px){.modal-overlay[data-v-75869c28]{padding:0}.term-modal[data-v-75869c28]{width:100%;max-height:100vh;border-radius:0}.term-modal>header[data-v-75869c28],.modal-body[data-v-75869c28],.term-modal>footer[data-v-75869c28]{padding-inline:18px}.setup-section[data-v-75869c28]{padding:17px 14px}.count-grid[data-v-75869c28],.name-grid[data-v-75869c28],.room-grid[data-v-75869c28]{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-help[data-v-75869c28]{display:none}}.layout[data-v-66966f7b]{display:flex;height:100vh;overflow:hidden;background:#f5f6f8;font-family:Poppins,sans-serif}.sidebar[data-v-66966f7b]{width:280px;min-width:280px;background:#fff;border-right:1px solid #ececec;display:flex;flex-direction:column;align-items:center;padding:28px 18px 24px;position:sticky;top:0;height:100vh;overflow-y:auto}.sidebar-profile[data-v-66966f7b]{display:flex;flex-direction:column;align-items:center;gap:6px;margin-bottom:28px;text-align:center}.avatar-wrap[data-v-66966f7b]{width:96px;height:96px;border-radius:50%;overflow:hidden;margin-bottom:10px;border:3px solid #c4c9cd}.avatar[data-v-66966f7b]{width:100%;height:100%;object-fit:cover}.brand[data-v-66966f7b]{font-size:1.05rem;font-weight:600;color:#30353a}.role[data-v-66966f7b]{font-size:.88rem;color:#444;font-weight:500}.email[data-v-66966f7b]{font-size:.82rem;color:#888;word-break:break-all}.sidebar-nav[data-v-66966f7b]{display:flex;flex-direction:column;gap:4px;width:100%;flex:1}.nav-item[data-v-66966f7b]{display:flex;align-items:center;gap:10px;padding:11px 16px;border-radius:10px;font-size:.88rem;font-weight:400;color:#444;text-decoration:none;transition:background .18s,color .18s;cursor:pointer}.nav-item[data-v-66966f7b]:hover{background:#f1f2f2;color:#30353a}.nav-item.active[data-v-66966f7b]{background:#30353a;color:#fff}.nav-item.active .nav-icon[data-v-66966f7b]{color:#fff}.nav-icon[data-v-66966f7b]{display:flex;align-items:center;flex-shrink:0}.logout-btn[data-v-66966f7b]{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:11px 12px;background:#e63946;color:#fff;border:none;border-radius:10px;font-size:.85rem;font-weight:500;font-family:inherit;cursor:pointer;transition:background .2s;margin-top:16px}.logout-btn[data-v-66966f7b]:hover{background:#c1121f}.main[data-v-66966f7b]{flex:1;padding:40px 44px 32px;overflow-y:auto;min-width:0;display:flex;flex-direction:column;height:100vh}.main-header[data-v-66966f7b]{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:28px}.page-eyebrow[data-v-66966f7b]{display:block;margin-bottom:5px;color:#68747d;font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.page-title[data-v-66966f7b]{margin:0;color:#202830;font-size:clamp(2rem,3vw,2.55rem);font-weight:700;letter-spacing:-.04em}.page-sub[data-v-66966f7b]{font-size:.95rem;color:#777;margin-top:4px}.notif-wrap[data-v-66966f7b]{position:relative;padding-top:6px}.notif-btn[data-v-66966f7b]{position:relative;background:none;border:none;cursor:pointer;color:#444;padding:4px;display:flex;align-items:center;transition:color .2s}.notif-btn[data-v-66966f7b]:hover{color:#30353a}.notif-dot[data-v-66966f7b]{position:absolute;top:4px;right:4px;width:13px;height:13px;background:#e8a020;border-radius:50%;border:1.5px solid #fff}.notif-panel[data-v-66966f7b]{position:absolute;top:calc(100% + 12px);right:0;width:540px;background:#fff;border-radius:16px;box-shadow:0 8px 32px #00000024;z-index:999;overflow:hidden}.notif-panel-header[data-v-66966f7b]{padding:20px 20px 0}.notif-panel-title[data-v-66966f7b]{font-size:1.15rem;font-weight:700;color:#111}.notif-tabs[data-v-66966f7b]{display:flex;align-items:center;gap:8px;padding:12px 20px 0}.notif-tab[data-v-66966f7b]{background:none;border:none;font-family:inherit;font-size:.88rem;font-weight:500;color:#888;cursor:pointer;padding:5px 14px;border-radius:20px;transition:background .18s,color .18s}.notif-tab.active[data-v-66966f7b]{background:#30353a;color:#fff}.notif-see-all[data-v-66966f7b]{margin-left:auto;font-size:.82rem;color:#888;cursor:pointer;text-decoration:underline}.notif-see-all[data-v-66966f7b]:hover{color:#30353a}.notif-section-label[data-v-66966f7b]{font-size:.82rem;font-weight:600;color:#333;padding:12px 20px 6px}.notif-list-wrap[data-v-66966f7b]{max-height:340px;overflow-y:auto;padding-bottom:8px}.notif-list[data-v-66966f7b]{list-style:none;padding:0;margin:0}.notif-empty[data-v-66966f7b]{text-align:center;font-size:.85rem;color:#aaa;padding:24px 20px}.notif-item[data-v-66966f7b]{display:flex;align-items:center;gap:12px;padding:10px 20px;transition:background .15s;cursor:pointer}.notif-item[data-v-66966f7b]:hover{background:#f4f5f5}.notif-avatar[data-v-66966f7b]{width:44px;height:44px;border-radius:50%;object-fit:cover;flex-shrink:0}.notif-text[data-v-66966f7b]{flex:1;font-size:.85rem;color:#333;line-height:1.45}.notif-unread-dot[data-v-66966f7b]{width:10px;height:10px;border-radius:50%;background:#626a72;flex-shrink:0}.stat-cards[data-v-66966f7b]{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:32px}.stat-card[data-v-66966f7b]{border-radius:16px;padding:26px 28px 22px;box-shadow:0 4px 18px #30353a1a;background:#fff;color:#30353a}.stat-top[data-v-66966f7b]{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.stat-label[data-v-66966f7b]{font-size:.88rem;color:#888;font-weight:400}.stat-icon[data-v-66966f7b]{display:flex;align-items:center}.stat-value[data-v-66966f7b]{font-size:2.8rem;font-weight:600;color:#30353a;line-height:1.1}.stat-sub[data-v-66966f7b]{font-size:.8rem;color:#aaa;margin-top:4px}.today-teachers-section[data-v-66966f7b]{position:relative;margin-bottom:28px;padding:26px 28px 18px;overflow:visible;border:1px solid #bcc4c9;border-radius:20px;background:linear-gradient(145deg,#f7f8f9,#dfe3e6 52%,#f2f4f5);box-shadow:inset 0 1px #ffffffe6,0 12px 32px #242f3721}.today-teachers-header[data-v-66966f7b]{position:relative;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.today-section-eyebrow[data-v-66966f7b]{display:flex;align-items:center;gap:7px;margin-bottom:5px;color:#52655d;font-size:.68rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.today-section-eyebrow i[data-v-66966f7b]{width:8px;height:8px;border:2px solid #c9e1d2;border-radius:50%;background:#4b8b65;box-shadow:0 0 0 3px #e8f3ec}.today-teachers-header h2[data-v-66966f7b]{margin:0;color:#202a31;font-size:1.35rem;letter-spacing:-.025em;line-height:1.35}.today-teachers-header p[data-v-66966f7b]{margin:5px 0 0;color:#63717a;font-size:.8rem}.today-teachers-header p span[data-v-66966f7b]{margin-left:7px;padding-left:9px;border-left:1px solid #ccd4d8;color:#89939a}.today-schedule-table-wrap[data-v-66966f7b]{overflow:hidden;border-radius:16px;background:#ffffffb3;box-shadow:inset 0 1px #ffffffb3;position:relative;animation:tableSlideIn-66966f7b .6s cubic-bezier(.34,1.56,.64,1) forwards;cursor:grab;-webkit-user-select:none;user-select:none;touch-action:pan-y}.today-schedule-table-wrap.dragging[data-v-66966f7b]{cursor:grabbing}@keyframes tableSlideIn-66966f7b{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.today-schedule-table[data-v-66966f7b]{--drag-shift: 0px;width:max-content;min-width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;background:#fff;animation:none;will-change:transform}.carousel-enabled .today-schedule-table[data-v-66966f7b]{animation:infiniteCarousel-66966f7b 34s linear infinite}@keyframes infiniteCarousel-66966f7b{0%{transform:translate(var(--drag-shift, 0px))}to{transform:translate(calc(var(--drag-shift, 0px) - 50%))}}.teacher-col-header[data-v-66966f7b]{padding:22px 18px 20px;text-align:center;border-bottom:3px solid #e1e6e9;border-right:1px solid #e8ecf0;background:linear-gradient(180deg,#fbfcfd,#f3f5f7);position:relative;min-width:240px;width:240px;max-width:240px;transition:all .3s ease;vertical-align:top}.teacher-col-header[data-v-66966f7b]:last-child{border-right:none}.teacher-header-avatar[data-v-66966f7b]{width:64px;height:64px;border:3px solid #fff;border-radius:16px;object-fit:cover;box-shadow:0 6px 16px #24303824;margin:0 auto 12px;display:block;transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.teacher-col-header:hover .teacher-header-avatar[data-v-66966f7b]{transform:scale(1.08) rotate(2deg)}.teacher-header-info[data-v-66966f7b]{text-align:center}.teacher-header-name[data-v-66966f7b]{display:block;font-weight:700;color:#202830;font-size:.95rem;margin-bottom:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.3}.teacher-header-status[data-v-66966f7b]{display:inline-block;flex:0 0 auto;padding:6px 10px;border-radius:8px;font-size:.62rem;font-weight:800;letter-spacing:.05em;white-space:nowrap;text-transform:uppercase;animation:statusPulse-66966f7b 1.5s ease-in-out infinite}.teacher-header-status.is-live[data-v-66966f7b]{color:#146a3a;border:1.5px solid #4caf50;background:#e8f5e9;box-shadow:0 2px 6px #4caf5026}@keyframes statusPulse-66966f7b{0%,to{box-shadow:0 2px 6px #4caf5026}50%{box-shadow:0 2px 12px #4caf504d}}.teacher-header-status.is-next[data-v-66966f7b]{color:#5d4e1f;border:1.5px solid #ffa726;background:#fff3e0;box-shadow:0 2px 6px #ffa7261f}.teacher-header-status.is-done[data-v-66966f7b]{color:#546e7a;border:1.5px solid #90a4ae;background:#eceff1;box-shadow:0 2px 6px #90a4ae1f}.schedule-row[data-v-66966f7b]{border-bottom:1px solid #e8ecf0;transition:background .15s ease}.schedule-row[data-v-66966f7b]:hover{background:#f8f9fa}.schedule-cell[data-v-66966f7b]{padding:14px 12px;border-right:1px solid #e8ecf0;text-align:center;vertical-align:top;min-height:130px;display:table-cell;min-width:240px;width:240px;max-width:240px}.schedule-cell[data-v-66966f7b]:last-child{border-right:none}.schedule-entry[data-v-66966f7b]{display:flex;flex-direction:column;gap:8px;min-height:110px;padding:13px 12px 12px;border:1.5px solid #e1e6e9;border-radius:12px;background:#f9fafb;transition:transform .25s ease,box-shadow .25s ease;position:relative;overflow:hidden;box-shadow:0 2px 8px #19232d0a}.schedule-entry[data-v-66966f7b]:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:transparent;transition:all .3s ease}.schedule-entry.is-current[data-v-66966f7b]{background:linear-gradient(135deg,#e8f5e9,#f1f8e9);border-color:#4caf50;box-shadow:0 3px 10px #4caf501f,inset 0 1px #ffffff80}.schedule-entry.is-current[data-v-66966f7b]:before{background:#4caf50;animation:liveIndicator-66966f7b 1s cubic-bezier(.4,0,.6,1) infinite}@keyframes liveIndicator-66966f7b{0%,to{height:3px;background:#4caf50}50%{height:4px;background:#66bb6a}}.schedule-entry.is-upcoming[data-v-66966f7b]{background:linear-gradient(135deg,#fff3e0,#ffe0b2);border-color:#ffa726;box-shadow:0 3px 10px #ffa7261f,inset 0 1px #fff9}.schedule-entry.is-upcoming[data-v-66966f7b]:before{background:#ffa726}.schedule-entry.is-complete[data-v-66966f7b]{opacity:.6;background:#eceff1;border-color:#90a4ae;box-shadow:0 2px 8px #90a4ae14}.schedule-entry.is-complete[data-v-66966f7b]:before{background:#90a4ae}.schedule-entry[data-v-66966f7b]:hover{transform:translateY(-4px);box-shadow:0 10px 22px #0000001f}.schedule-time[data-v-66966f7b]{display:block;font-weight:700;font-size:.78rem;color:#1a2332;text-align:center;letter-spacing:.01em}.schedule-time small[data-v-66966f7b]{display:block;margin-top:3px;font-size:.66rem;font-weight:600;color:#64727d}.schedule-details[data-v-66966f7b]{display:flex;flex-direction:column;gap:3px;flex:1;justify-content:center}.schedule-subject[data-v-66966f7b]{display:block;color:#1f2937;font-size:.79rem;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.2}.schedule-section[data-v-66966f7b]{display:block;color:#64727d;font-size:.68rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.schedule-label[data-v-66966f7b]{display:inline-block;padding:4px 8px;border-radius:6px;background:#f0f3f5;color:#546e7a;font-size:.56rem;font-style:normal;font-weight:800;text-transform:uppercase;text-align:center;letter-spacing:.04em;margin:0 auto;min-width:max-content;animation:labelFadeIn-66966f7b .6s ease forwards;opacity:0}@keyframes labelFadeIn-66966f7b{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.schedule-entry.is-upcoming .schedule-label[data-v-66966f7b]{color:#5d4e1f;background:#ffd699}.schedule-entry.is-current .schedule-label[data-v-66966f7b]{color:#146a3a;background:#81c784;animation:labelPulse-66966f7b 1.5s ease-in-out infinite;opacity:1}@keyframes labelPulse-66966f7b{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}.today-teachers-loading[data-v-66966f7b],.today-teachers-empty[data-v-66966f7b]{display:flex;min-height:150px;align-items:center;justify-content:center;flex-direction:column;color:#747d84;font-size:.76rem;text-align:center}.today-teachers-empty span[data-v-66966f7b]{color:#2c3e50;font-size:.92rem;font-weight:700;margin-bottom:6px}.today-teachers-empty p[data-v-66966f7b]{margin:0;color:#818c93;font-size:.72rem}.charts-row[data-v-66966f7b]{display:grid;grid-template-columns:1fr 1fr;gap:24px;flex:1;min-height:0}.chart-card[data-v-66966f7b]{background:#fff;border-radius:16px;padding:28px 32px 24px;box-shadow:0 2px 10px #00000012;display:flex;flex-direction:column;min-height:320px;transition:box-shadow .2s ease,opacity .2s ease}.chart-card.chart-expanded[data-v-66966f7b]{grid-column:1 / -1}.chart-card.chart-hidden[data-v-66966f7b]{display:none}.chart-header[data-v-66966f7b]{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;flex-shrink:0}.chart-title[data-v-66966f7b]{font-size:1rem;font-weight:600;color:#111}.expand-btn[data-v-66966f7b]{background:none;border:none;cursor:pointer;color:#888;padding:2px;display:flex;transition:color .2s}.expand-btn[data-v-66966f7b]:hover{color:#30353a}.chart-wrap[data-v-66966f7b]{flex:1;min-height:0;height:260px;position:relative}.modal-overlay[data-v-66966f7b]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-box[data-v-66966f7b]{background:#fff;border-radius:20px;padding:36px 36px 28px;width:560px;max-width:95vw;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 16px 48px #0000002e}.modal-close[data-v-66966f7b]{position:absolute;top:18px;right:22px;background:none;border:none;font-size:1.3rem;cursor:pointer;color:#555;line-height:1}.modal-close[data-v-66966f7b]:hover{color:#111}.modal-header[data-v-66966f7b]{margin-bottom:18px}.modal-title[data-v-66966f7b]{font-size:1.5rem;font-weight:700;color:#111;margin-bottom:4px}.modal-sub[data-v-66966f7b]{font-size:.88rem;color:#888}.modal-teacher-row[data-v-66966f7b]{display:flex;align-items:center;gap:14px;margin-bottom:20px}.modal-teacher-avatar[data-v-66966f7b]{width:54px;height:54px;border-radius:50%;object-fit:cover;border:2px solid #c4c9cd;flex-shrink:0}.modal-teacher-info[data-v-66966f7b]{flex:1}.modal-teacher-name[data-v-66966f7b]{font-size:1.25rem;font-weight:700;color:#111}.modal-hours-badge[data-v-66966f7b]{background:#8b9298;color:#fff;font-size:.9rem;font-weight:600;padding:6px 18px;border-radius:20px;white-space:nowrap}.modal-schedule-grid[data-v-66966f7b]{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:20px}.modal-sched-card[data-v-66966f7b]{border:1px solid #e6e6e6;border-radius:12px;padding:14px 16px}.modal-sched-top[data-v-66966f7b]{display:flex;align-items:center;gap:8px;margin-bottom:10px;flex-wrap:wrap}.modal-day-badge[data-v-66966f7b]{background:#e0f0ff;color:#2563eb;font-size:.75rem;font-weight:600;padding:3px 10px;border-radius:20px}.modal-sched-time[data-v-66966f7b],.modal-sched-dur[data-v-66966f7b]{font-size:.8rem;color:#555}.modal-sched-subject[data-v-66966f7b]{font-size:1rem;font-weight:700;color:#111;margin-bottom:6px}.modal-sched-section[data-v-66966f7b]{font-size:.82rem;color:#888}.modal-summary[data-v-66966f7b]{background:#8b9298;border-radius:14px;padding:18px 22px;color:#fff}.modal-summary-label[data-v-66966f7b]{font-size:.95rem;font-weight:600;margin-bottom:14px}.modal-summary-stats[data-v-66966f7b]{display:flex;justify-content:space-around;gap:12px}.modal-summary-item[data-v-66966f7b]{display:flex;flex-direction:column;align-items:center;gap:4px}.modal-summary-key[data-v-66966f7b]{font-size:.78rem;opacity:.85}.modal-summary-val[data-v-66966f7b]{font-size:2rem;font-weight:700;line-height:1}.logout-modal-box[data-v-66966f7b]{background:#fff;border-radius:20px;padding:36px 40px 32px;width:360px;max-width:94vw;display:flex;flex-direction:column;align-items:center;gap:10px;box-shadow:0 16px 48px #0000002e;text-align:center}.logout-modal-icon[data-v-66966f7b]{width:68px;height:68px;border-radius:50%;background:#ffeaea;display:flex;align-items:center;justify-content:center;margin-bottom:4px}.logout-modal-title[data-v-66966f7b]{font-size:1.45rem;font-weight:700;color:#111;margin:0}.logout-modal-sub[data-v-66966f7b]{font-size:.9rem;color:#777;margin:0 0 8px}.logout-modal-actions[data-v-66966f7b]{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:6px;width:100%}.logout-cancel-btn[data-v-66966f7b]{background:none;border:none;font-family:inherit;font-size:1rem;font-weight:600;color:#e63946;cursor:pointer;padding:8px 18px;border-radius:10px;transition:background .15s}.logout-cancel-btn[data-v-66966f7b]:hover{background:#ffeaea}.logout-confirm-btn[data-v-66966f7b]{background:#30353a;color:#fff;border:none;font-family:inherit;font-size:1rem;font-weight:600;padding:10px 32px;border-radius:10px;cursor:pointer;transition:background .18s}.logout-confirm-btn[data-v-66966f7b]:hover{background:#4b5259}@media (max-width: 900px){.stat-cards[data-v-66966f7b]{grid-template-columns:repeat(2,1fr)}.today-teachers-grid[data-v-66966f7b]{grid-template-columns:repeat(2,minmax(0,1fr))}.charts-row[data-v-66966f7b]{grid-template-columns:1fr}}@media (max-width: 600px){.main[data-v-66966f7b]{padding:20px 16px 32px}.stat-cards[data-v-66966f7b]{grid-template-columns:repeat(2,1fr)}.today-teachers-section[data-v-66966f7b]{padding:18px 16px}.today-teachers-header[data-v-66966f7b]{align-items:flex-start;flex-direction:column}.today-teachers-grid[data-v-66966f7b]{grid-template-columns:1fr}.today-carousel-stage[data-v-66966f7b]{padding-inline:23px}.today-stage-arrow[data-v-66966f7b]{width:36px;height:36px;font-size:1.7rem}.today-stage-arrow.previous[data-v-66966f7b]{left:0}.today-stage-arrow.next[data-v-66966f7b]{right:0}.sidebar[data-v-66966f7b]{width:200px;min-width:200px}}.dt-field[data-v-143f056e]{position:relative;min-width:0}.dt-trigger[data-v-143f056e]{width:100%;height:46px;border:1px solid #d7e0e6;border-radius:12px;background:#fbfcfd;display:flex;align-items:center;gap:9px;padding:0 12px;color:#24303a;font:inherit;font-size:.82rem;cursor:pointer;box-shadow:inset 0 1px 2px #44505b0f;min-width:0;text-align:left}.dt-trigger[data-v-143f056e]:hover{border-color:#8c98a3;background:#fff}.dt-trigger[data-v-143f056e]:focus-visible{outline:0;border-color:#6b7884;box-shadow:0 0 0 3px #64717e1f}.dt-trigger .placeholder[data-v-143f056e]{color:#a7b0b8}.dt-chevron[data-v-143f056e]{margin-left:auto;color:#66727c;flex-shrink:0}.dt-trigger>span[data-v-143f056e]:first-of-type{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.dt-overlay[data-v-143f056e]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:grid;place-items:center;padding:18px;background:#1f23278f;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.dt-dialog[data-v-143f056e]{width:min(560px,100%);overflow:hidden;border:1px solid #d8e0e6;border-radius:22px;background:#f8fafb;box-shadow:0 26px 70px #12181e57;font-family:Poppins,Arial,sans-serif}.dt-header[data-v-143f056e]{padding:20px 24px;background:linear-gradient(145deg,#5d6873,#343e48);color:#fff}.dt-header p[data-v-143f056e]{margin:0 0 7px;text-transform:uppercase;font-size:.68rem;font-weight:800;letter-spacing:.14em;opacity:.75}.dt-header strong[data-v-143f056e]{display:block;font-size:1.28rem;line-height:1.25;font-weight:850;letter-spacing:-.035em}.dt-body[data-v-143f056e]{display:grid;grid-template-columns:minmax(0,1fr) 168px;gap:18px;padding:18px}.dt-calendar[data-v-143f056e]{padding:12px;border:1px solid #e1e7eb;border-radius:18px;background:#fff;box-shadow:inset 0 1px #ffffffe6}.calendar-head[data-v-143f056e]{display:grid;grid-template-columns:40px 1fr 40px;align-items:center;margin-bottom:8px;text-align:center}.calendar-head button[data-v-143f056e]{width:34px;height:34px;border:1px solid transparent;border-radius:11px;background:transparent;color:#46515d;font-size:1.5rem;line-height:1;cursor:pointer}.calendar-head button[data-v-143f056e]:hover{border-color:#dbe3e8;background:#f3f6f8}.calendar-head b[data-v-143f056e]{color:#26313b;font-size:.92rem;font-weight:850}.calendar-grid[data-v-143f056e]{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.weekdays span[data-v-143f056e]{padding:6px 0;text-align:center;color:#7d8790;font-size:.66rem;font-weight:850;text-transform:uppercase}.days button[data-v-143f056e]{aspect-ratio:1;border:0;border-radius:12px;background:transparent;color:#29323b;font:750 .82rem Poppins,Arial;cursor:pointer}.days button[data-v-143f056e]:hover{background:#eef2f4}.days button.today[data-v-143f056e]{box-shadow:inset 0 0 0 1px #9aa6af}.days button.selected[data-v-143f056e]{background:linear-gradient(145deg,#5d6873,#343e48);color:#fff;box-shadow:0 8px 16px #37424d33}.dt-time-card[data-v-143f056e]{display:flex;flex-direction:column;justify-content:center;gap:13px;padding:16px;border:1px solid #e1e7eb;border-radius:18px;background:linear-gradient(145deg,#fff,#eef2f4)}.time-card-head[data-v-143f056e]{display:flex;align-items:center;justify-content:space-between;gap:10px}.time-label[data-v-143f056e]{color:#66727c;font-size:.72rem;font-weight:850;text-transform:uppercase;letter-spacing:.12em}.period-pills[data-v-143f056e]{display:inline-flex;gap:4px;padding:4px;border:1px solid #dbe3e8;border-radius:999px;background:#fff}.period-pills button[data-v-143f056e]{width:38px;height:28px;border:0;border-radius:999px;background:transparent;color:#697680;font:850 .68rem Poppins,Arial;cursor:pointer}.period-pills button.active[data-v-143f056e]{background:linear-gradient(145deg,#5d6873,#343e48);color:#fff;box-shadow:0 6px 12px #37424d2e}.time-display[data-v-143f056e]{display:flex;align-items:center;justify-content:center;gap:6px}.time-display button[data-v-143f056e]{min-width:54px;height:42px;border:1px solid #d8e0e6;border-radius:12px;background:#fff;color:#26313b;font:900 1rem Poppins,Arial;cursor:pointer}.time-display button.active[data-v-143f056e]{border-color:#44515d;background:linear-gradient(145deg,#5d6873,#343e48);color:#fff;box-shadow:0 8px 14px #37424d2e}.time-display span[data-v-143f056e]{color:#66727c;font-weight:900}.clock-face[data-v-143f056e]{position:relative;width:184px;height:184px;margin:0 auto;border-radius:50%;background:linear-gradient(145deg,#eef3f6,#fff);box-shadow:inset 5px 5px 12px #54606a1a,inset -5px -5px 12px #fffffff2;-webkit-user-select:none;user-select:none}.clock-number[data-v-143f056e]{position:absolute;left:50%;top:50%;width:34px;height:34px;border:0;border-radius:50%;background:transparent;color:#2d3741;font:850 .78rem Poppins,Arial;cursor:pointer;z-index:2}.clock-number[data-v-143f056e]:hover{background:#e6ecef}.clock-number.selected[data-v-143f056e]{background:linear-gradient(145deg,#5d6873,#343e48);color:#fff;box-shadow:0 7px 14px #37424d38}.clock-center[data-v-143f056e]{position:absolute;left:50%;top:50%;width:8px;height:8px;transform:translate(-50%,-50%);border-radius:50%;background:#44515d;box-shadow:0 0 0 5px #44515d14}.dt-actions[data-v-143f056e]{display:grid;grid-template-columns:auto 1fr auto auto;gap:9px;align-items:center;padding:14px 18px 18px;border-top:1px solid #e2e8ec;background:#fff}.dt-actions button[data-v-143f056e]{min-height:40px;border:1px solid #dde4e9;border-radius:11px;background:#fff;color:#4f5b66;padding:0 14px;font:800 .76rem Poppins,Arial;cursor:pointer}.dt-actions button[data-v-143f056e]:hover{background:#f4f6f8}.dt-actions .set-button[data-v-143f056e]{border-color:#3e4a55;background:linear-gradient(145deg,#5d6873,#343e48);color:#fff;box-shadow:0 10px 18px #30394229}.dt-actions .set-button[data-v-143f056e]:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}@media (max-width:640px){.dt-body[data-v-143f056e]{grid-template-columns:1fr}.dt-time-card[data-v-143f056e]{justify-content:flex-start}.dt-dialog[data-v-143f056e]{max-height:calc(100vh - 36px);overflow:auto}.dt-actions[data-v-143f056e]{position:sticky;bottom:0}}.dt-dialog[data-v-143f056e]{width:min(680px,calc(100vw - 36px))}.dt-body[data-v-143f056e]{grid-template-columns:minmax(0,1fr) 238px;align-items:stretch;gap:20px;padding:20px}.dt-calendar[data-v-143f056e],.dt-time-card[data-v-143f056e]{min-height:360px;box-sizing:border-box}.dt-calendar[data-v-143f056e]{display:flex;flex-direction:column;padding:16px}.calendar-head[data-v-143f056e]{margin-bottom:12px}.calendar-grid[data-v-143f056e]{gap:6px}.days[data-v-143f056e]{flex:1;align-content:start}.days button[data-v-143f056e]{min-height:38px;border-radius:11px}.dt-time-card[data-v-143f056e]{justify-content:flex-start;padding:18px}.time-card-head[data-v-143f056e]{min-height:36px}.time-display[data-v-143f056e]{margin-top:2px}.clock-face[data-v-143f056e]{width:190px;height:190px;margin:4px auto 0}.clock-number[data-v-143f056e]{width:34px;height:34px}.dt-actions[data-v-143f056e]{padding:16px 20px 20px}@media (max-width:760px){.dt-dialog[data-v-143f056e]{width:min(560px,calc(100vw - 36px))}.dt-body[data-v-143f056e]{grid-template-columns:1fr}.dt-calendar[data-v-143f056e],.dt-time-card[data-v-143f056e]{min-height:auto}.dt-time-card[data-v-143f056e]{align-items:stretch}.clock-face[data-v-143f056e]{width:190px;height:190px}.dt-actions[data-v-143f056e]{position:sticky;bottom:0}}.layout[data-v-0c49418a]{display:flex;height:100vh;overflow:hidden;background:#f5f6f8;font-family:Poppins,sans-serif}.sidebar[data-v-0c49418a]{width:280px;min-width:280px;background:#fff;border-right:1px solid #ececec;display:flex;flex-direction:column;align-items:center;padding:28px 18px 24px;position:sticky;top:0;height:100vh;overflow-y:auto}.sidebar-profile[data-v-0c49418a]{display:flex;flex-direction:column;align-items:center;gap:6px;margin-bottom:28px;text-align:center}.avatar-wrap[data-v-0c49418a]{width:96px;height:96px;border-radius:50%;overflow:hidden;margin-bottom:10px;border:3px solid #c4c9cd;cursor:pointer}.avatar[data-v-0c49418a]{width:100%;height:100%;object-fit:cover}.brand[data-v-0c49418a]{font-size:1.05rem;font-weight:600;color:#4b5563}.role[data-v-0c49418a]{font-size:.88rem;color:#444;font-weight:500}.email[data-v-0c49418a]{font-size:.82rem;color:#888;word-break:break-all}.sidebar-nav[data-v-0c49418a]{display:flex;flex-direction:column;gap:4px;width:100%;flex:1}.nav-item[data-v-0c49418a]{display:flex;align-items:center;gap:10px;padding:11px 16px;border-radius:10px;font-size:.88rem;font-weight:400;color:#444;text-decoration:none;transition:background .18s,color .18s;cursor:pointer}.nav-item[data-v-0c49418a]:hover{background:#f8fafc;color:#4b5563}.nav-item.active[data-v-0c49418a]{background:#4b5563;color:#fff}.nav-item.active .nav-icon[data-v-0c49418a]{color:#fff}.logout-btn[data-v-0c49418a]{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:11px 12px;background:#e63946;color:#fff;border:none;border-radius:10px;font-size:.85rem;font-weight:500;font-family:inherit;cursor:pointer;transition:background .2s;margin-top:16px}.logout-btn[data-v-0c49418a]:hover{background:#c1121f}.main[data-v-0c49418a]{flex:1;padding:40px 44px 32px;overflow-y:auto;min-width:0;display:flex;flex-direction:column;height:100vh}.main-header[data-v-0c49418a]{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:16px}.page-title[data-v-0c49418a]{font-size:clamp(1.8rem,3vw,2.2rem);font-weight:700;color:#1a202c;letter-spacing:-.02em;line-height:1.15}.page-title-kicker[data-v-0c49418a]{display:block;font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#9ca3af;margin-bottom:10px}.page-title-main[data-v-0c49418a]{display:block}.page-sub[data-v-0c49418a]{font-size:.9rem;color:#6b7280;margin-top:6px;font-weight:400}.um-management-panel[data-v-0c49418a]{display:flex;flex-direction:column;gap:22px}.um-topbar[data-v-0c49418a]{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.um-view-tabs[data-v-0c49418a]{display:flex;gap:8px;flex-wrap:wrap}.um-view-tab[data-v-0c49418a]{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:10px;border:1px solid #e5e7eb;background:#fff;color:#4b5563;font-family:inherit;font-size:.82rem;font-weight:600;cursor:pointer;transition:all .2s ease}.um-view-tab[data-v-0c49418a]:hover:not(.um-view-tab--on){background:#f9fafb;border-color:#d1d5db}.um-view-tab--on[data-v-0c49418a]{background:#3d4653;border-color:#3d4653;color:#fff}.um-topbar-right[data-v-0c49418a]{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.um-search-wrap[data-v-0c49418a]{position:relative;display:flex;align-items:center}.um-search-icon[data-v-0c49418a]{position:absolute;left:13px;color:#d1d5db;pointer-events:none;display:flex}.um-search-input[data-v-0c49418a]{font-family:inherit;font-size:.875rem;color:#1a1a1a;background:#fff;border:1.5px solid #e5e7eb;border-radius:10px;padding:10px 14px 10px 38px;outline:none;width:280px;transition:border-color .2s,box-shadow .2s}.um-search-input[data-v-0c49418a]::placeholder{color:#bbb}.um-search-input[data-v-0c49418a]:focus{border-color:#4b5563;box-shadow:0 0 0 3px #4b556314}.um-print-btn[data-v-0c49418a]{display:flex;align-items:center;gap:8px;background:#4b5563;color:#fff;border:1px solid #4b5563;font-family:inherit;font-size:.8rem;font-weight:600;padding:10px 16px;border-radius:10px;cursor:pointer;transition:all .18s ease}.um-print-btn[data-v-0c49418a]:hover:not(:disabled){background:#3d4653;border-color:#3d4653}.um-print-btn[data-v-0c49418a]:disabled{opacity:.5;cursor:not-allowed}.um-stats-row[data-v-0c49418a]{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}.um-stat-card[data-v-0c49418a]{background:#fff;border-radius:14px;padding:18px 20px;display:flex;align-items:center;gap:16px;box-shadow:0 2px 8px #0000000f}.um-stat-icon[data-v-0c49418a]{width:46px;height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.um-stat-icon--total[data-v-0c49418a]{background:#f3f4f6;color:#4f575f}.um-stat-icon--admin[data-v-0c49418a]{background:#e8eefe;color:#2563eb}.um-stat-icon--teacher[data-v-0c49418a]{background:#fef3c7;color:#b45309}.um-stat-icon--active[data-v-0c49418a]{background:#d8dcdf;color:#4f575f}.um-stat-icon--archived[data-v-0c49418a]{background:#f3f4f6;color:#6b7280}.um-stat-val[data-v-0c49418a]{font-size:1.6rem;font-weight:800;color:#111;line-height:1}.um-stat-label[data-v-0c49418a]{font-size:.78rem;color:#888;font-weight:500;margin-top:3px}.um-logs-container[data-v-0c49418a]{background:#fff;border-radius:14px;box-shadow:0 1px 3px #0000001a;display:flex;flex-direction:column;border:1px solid #eaedf0}.um-search-panel[data-v-0c49418a]{display:grid;grid-template-columns:minmax(240px,1.5fr) minmax(190px,1fr) minmax(190px,1fr) auto;gap:14px;align-items:end;padding:20px;background:#fff;border:none;border-bottom:1px solid #eaedf0;border-radius:14px 14px 0 0;box-shadow:none}.um-search-panel label[data-v-0c49418a]{display:flex;flex-direction:column;gap:8px}.um-search-panel label span[data-v-0c49418a]{font-size:.72rem;font-weight:700;color:#4b5563;letter-spacing:.3px}.um-search-panel input[data-v-0c49418a]{width:100%;box-sizing:border-box;border:1.5px solid #e5e7eb;border-radius:10px;padding:10px 13px;background:#fff;color:#1a1a1a;font:inherit;font-size:.875rem;outline:none;transition:border-color .2s,box-shadow .2s}.um-search-panel input[data-v-0c49418a]::placeholder{color:#bbb}.um-search-panel input[data-v-0c49418a]:focus{border-color:#4b5563;box-shadow:0 0 0 3px #4b556314}.um-search-actions[data-v-0c49418a]{display:flex;gap:8px}.um-search-actions button[data-v-0c49418a]{height:40px;border-radius:10px;padding:0 16px;font:inherit;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .18s ease}.um-apply-search[data-v-0c49418a]{border:1px solid #4b5563;background:#4b5563;color:#fff}.um-apply-search[data-v-0c49418a]:hover:not(:disabled){background:#3d4653;border-color:#3d4653}.um-clear-search[data-v-0c49418a]{border:1.5px solid #e5e7eb;background:#fff;color:#4b5563}.um-clear-search[data-v-0c49418a]:hover:not(:disabled){background:#f8f9fa;border-color:#d1d5db}.um-search-actions button[data-v-0c49418a]:disabled{opacity:.5;cursor:not-allowed}.um-error-banner[data-v-0c49418a]{background:#fef2f2;border:none;border-bottom:1px solid #fecaca;color:#991b1b;padding:14px 20px;border-radius:0;font-size:.875rem;font-weight:500;margin-bottom:0}.um-table-wrap[data-v-0c49418a]{background:#fff;border-radius:0;box-shadow:none;max-height:65vh;overflow-x:auto;overflow-y:auto;flex:1}.um-table[data-v-0c49418a]{width:100%;border-collapse:collapse;font-size:.875rem}.um-table thead tr[data-v-0c49418a]{background:#f9fafb;border-bottom:1px solid #eaedf0}.um-table th[data-v-0c49418a]{position:sticky;top:0;z-index:2;background:#f9fafb;text-align:left;font-size:.7rem;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.5px;padding:14px 20px}.um-table td[data-v-0c49418a]{padding:14px 20px;vertical-align:middle}.um-row[data-v-0c49418a]{border-bottom:1px solid #f3f4f6;transition:background .12s}.um-row[data-v-0c49418a]:last-child{border-bottom:none}.um-row[data-v-0c49418a]:hover{background:#fafbfc}.um-user-cell[data-v-0c49418a]{display:flex;align-items:center;gap:12px}.um-user-avatar[data-v-0c49418a]{width:40px;height:40px;border-radius:50%;object-fit:cover;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#dfe8e2,#c4d7cf);color:#1f4a38;font-weight:700;font-size:.75rem;border:1px solid #c4d7cf}.um-user-info[data-v-0c49418a]{display:flex;flex-direction:column}.um-user-name[data-v-0c49418a]{display:block;font-weight:600;color:#1a1a1a;font-size:.875rem}.um-user-dept[data-v-0c49418a]{display:block;font-size:.8rem;color:#9ca3af;margin-top:3px}.um-log-action[data-v-0c49418a]{color:#374151;line-height:1.5;max-width:260px;font-size:.875rem}.um-role-badge[data-v-0c49418a]{display:inline-block;font-size:.7rem;font-weight:700;padding:4px 12px;border-radius:20px;text-transform:uppercase;letter-spacing:.4px}.um-role-badge--admin[data-v-0c49418a]{background:#4a6fff1f;color:#2543d8}.um-role-badge--teacher[data-v-0c49418a]{background:#fef3c7;color:#b45309}.um-role-badge--student[data-v-0c49418a]{background:#f0e8fe;color:#7c3aed}.um-email[data-v-0c49418a],.um-device[data-v-0c49418a],.um-date[data-v-0c49418a]{color:#6b7280;font-size:.875rem}.um-empty[data-v-0c49418a]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:60px 20px;color:#d1d5db;font-size:.875rem}.um-pagination[data-v-0c49418a]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;border-top:1px solid #eaedf0;background:#f9fafb;border-radius:0 0 14px 14px}.um-page-summary[data-v-0c49418a]{font-size:.8rem;color:#6b7280}.um-page-controls[data-v-0c49418a]{display:flex;align-items:center;gap:10px;font-size:.8rem;color:#6b7280}.um-page-controls button[data-v-0c49418a]{width:32px;height:32px;border:1.5px solid #e5e7eb;background:#fff;border-radius:8px;color:#4b5563;font-weight:700;cursor:pointer;transition:all .18s ease;font-size:.85rem}.um-page-controls button[data-v-0c49418a]:hover:not(:disabled){background:#f3f4f6;border-color:#d1d5db}.um-page-controls button[data-v-0c49418a]:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 1200px){.um-stats-row[data-v-0c49418a]{grid-template-columns:repeat(2,minmax(0,1fr))}.um-search-panel[data-v-0c49418a]{grid-template-columns:1fr 1fr}.um-search-field[data-v-0c49418a]{grid-column:1 / -1}}@media (max-width: 800px){.main[data-v-0c49418a]{padding:24px 18px}.um-stats-row[data-v-0c49418a],.um-search-panel[data-v-0c49418a]{grid-template-columns:1fr}.um-topbar-right[data-v-0c49418a]{width:100%}.um-search-wrap[data-v-0c49418a],.um-search-input[data-v-0c49418a],.um-topbar-right>.um-print-btn[data-v-0c49418a]{width:100%}.um-pagination[data-v-0c49418a]{flex-direction:column;align-items:flex-start}}[data-v-1d558611]:root{--green-900: #4b5563;--green-700: #6b7280;--green-500: #9ca3af;--green-200: #c4c9cd;--green-50: #f8fafc;--red: #e63946;--red-dark: #c1121f;--bg: #f0f2f5;--surface: #ffffff;--border: #e4e4e7;--text-head: #0f172a;--text-body: #475569;--text-muted:#94a3b8}.layout[data-v-1d558611]{display:flex;height:100vh;overflow:hidden;background:#f5f6f8;font-family:Poppins,sans-serif}.layout button[data-v-1d558611],.layout input[data-v-1d558611],.layout select[data-v-1d558611],.layout textarea[data-v-1d558611]{font-family:inherit}.sidebar[data-v-1d558611]{width:280px;min-width:280px;background:#fff;border-right:1px solid #ececec;display:flex;flex-direction:column;align-items:center;padding:28px 18px 24px;position:sticky;top:0;height:100vh;overflow-y:auto}.sidebar-profile[data-v-1d558611]{display:flex;flex-direction:column;align-items:center;gap:6px;margin-bottom:28px;text-align:center}.avatar-wrap[data-v-1d558611]{width:96px;height:96px;border-radius:50%;overflow:hidden;margin-bottom:10px;border:3px solid #c4c9cd;cursor:pointer;transition:opacity .18s}.avatar-wrap[data-v-1d558611]:hover{opacity:.85}.avatar[data-v-1d558611]{width:100%;height:100%;object-fit:cover}.brand[data-v-1d558611]{font-size:1.05rem;font-weight:600;color:#4b5563}.role[data-v-1d558611]{font-size:.88rem;color:#444;font-weight:500}.email[data-v-1d558611]{font-size:.82rem;color:#888;word-break:break-all}.sidebar-nav[data-v-1d558611]{display:flex;flex-direction:column;gap:4px;width:100%;flex:1}.nav-item[data-v-1d558611]{display:flex;align-items:center;gap:10px;padding:11px 16px;border-radius:10px;font-size:.88rem;font-weight:400;color:#444;text-decoration:none;transition:background .18s,color .18s;cursor:pointer}.nav-item[data-v-1d558611]:hover{background:#f8fafc;color:#4b5563}.nav-item.active[data-v-1d558611]{background:#4b5563;color:#fff}.nav-item.active .nav-icon[data-v-1d558611]{color:#fff}.nav-icon[data-v-1d558611]{display:flex;align-items:center;flex-shrink:0}.logout-btn[data-v-1d558611]{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:11px 12px;background:#e63946;color:#fff;border:none;border-radius:10px;font-size:.85rem;font-weight:500;font-family:inherit;cursor:pointer;transition:background .2s;margin-top:16px}.logout-btn[data-v-1d558611]:hover{background:#c1121f}.main[data-v-1d558611]{flex:1;padding:40px 44px;overflow-y:auto;min-width:0;height:100vh;box-sizing:border-box}.main-header[data-v-1d558611]{margin-bottom:32px}.page-title[data-v-1d558611]{font-size:1.75rem;font-weight:700;color:#111827;letter-spacing:-.3px;margin:0 0 4px}.page-sub[data-v-1d558611]{font-size:.85rem;color:#6b7280;margin:0}.profile-card[data-v-1d558611]{background:#fff;border:1px solid #e5e7eb;border-radius:16px;overflow:hidden;box-shadow:0 1px 3px #0000000f,0 1px 2px #0000000a;width:100%;box-sizing:border-box;position:relative}.card-banner[data-v-1d558611]{height:148px;background:linear-gradient(135deg,#4b5563,#6b7280);display:flex;align-items:center;justify-content:flex-end;padding:0 24px}.edit-btn[data-v-1d558611]{display:inline-flex;align-items:center;gap:6px;padding:8px 15px;background:#ffffff26;color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:8px;font-size:.83rem;font-weight:500;cursor:pointer;font-family:inherit;transition:background .15s;flex-shrink:0;align-self:center}.edit-btn[data-v-1d558611]:hover{background:#ffffff40}.edit-save-btn[data-v-1d558611]:disabled{cursor:not-allowed;opacity:.65}.card-body[data-v-1d558611]{padding:16px 28px 30px}.card-top[data-v-1d558611]{display:flex;align-items:flex-end;gap:20px;margin-bottom:28px}.hero-sub[data-v-1d558611]{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.role-chip[data-v-1d558611]{display:inline-flex;align-items:center;padding:4px 12px;background:#f3f4f6;color:#4b5563;border:1px solid #c4c9cd;border-radius:20px;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.hero-id[data-v-1d558611],.hero-email[data-v-1d558611]{display:inline-flex;align-items:center;gap:5px;font-size:.82rem;color:#374151;font-weight:500}.profile-avatar-wrap[data-v-1d558611]{width:120px;height:120px;border-radius:50%;overflow:hidden;border:4px solid #fff;box-shadow:0 4px 14px #00000038;flex-shrink:0;margin-top:-88px;position:relative;z-index:2}.profile-avatar[data-v-1d558611]{width:100%;height:100%;object-fit:cover;display:block}.hero-name[data-v-1d558611]{font-size:1.32rem;font-weight:700;color:#111827;line-height:1.2;margin-bottom:6px}.profile-info[data-v-1d558611]{padding-bottom:4px}.info-grid[data-v-1d558611]{display:grid;grid-template-columns:repeat(2,1fr);border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.info-item[data-v-1d558611]{padding:16px 20px;border-right:1px solid #e5e7eb;border-bottom:1px solid #e5e7eb}.info-item[data-v-1d558611]:nth-child(2n){border-right:none}.info-item[data-v-1d558611]:nth-last-child(-n+2){border-bottom:none}.info-label[data-v-1d558611]{font-size:.69rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#9ca3af;margin-bottom:4px}.info-value[data-v-1d558611]{font-size:.92rem;font-weight:500;color:#111827}.modal-overlay[data-v-1d558611]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:1000}.edit-modal[data-v-1d558611]{width:500px;max-width:96vw;background:#fff;border-radius:18px;box-shadow:0 24px 64px #0000002e;overflow:hidden}.edit-modal-header[data-v-1d558611]{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 18px;background:linear-gradient(135deg,#4b5563,#6b7280)}.edit-modal-title[data-v-1d558611]{font-size:1.05rem;font-weight:700;color:#fff;margin:0 0 2px}.edit-modal-sub[data-v-1d558611]{font-size:.76rem;color:#ffffffa6;margin:0}.edit-modal-close[data-v-1d558611]{background:#ffffff26;border:1px solid rgba(255,255,255,.25);border-radius:8px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;flex-shrink:0;transition:background .15s}.edit-modal-close[data-v-1d558611]:hover{background:#ffffff47}.edit-modal-body[data-v-1d558611]{padding:22px 24px 8px;display:flex;flex-direction:column;gap:16px}.edit-row[data-v-1d558611]{display:flex;gap:14px}.edit-row.two-col .edit-field[data-v-1d558611]{flex:1}.avatar-editor[data-v-1d558611]{display:flex;align-items:center;gap:14px;padding:12px;border:1px solid #e4e4e7;border-radius:10px;background:#f9fafb}.avatar-editor-preview[data-v-1d558611]{width:64px;height:64px;object-fit:cover;border:2px solid #c4c9cd;border-radius:50%;flex-shrink:0}.avatar-editor-details[data-v-1d558611]{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.avatar-editor-details p[data-v-1d558611]{margin:0;font-size:.72rem;color:#64748b}.avatar-upload-btn[data-v-1d558611]{margin-top:3px;padding:6px 10px;color:#4b5563;background:#f3f4f6;border:1px solid #c4c9cd;border-radius:7px;font-size:.75rem;font-weight:600;cursor:pointer}.avatar-upload-btn[data-v-1d558611]:hover{background:#d8f0e2}.avatar-file-input[data-v-1d558611]{display:none}.edit-field[data-v-1d558611]{display:flex;flex-direction:column;gap:5px;flex:1}.edit-label[data-v-1d558611]{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#4b5563}.edit-input[data-v-1d558611]{padding:10px 13px;border:1.5px solid #e4e4e7;border-radius:9px;font-size:.875rem;color:#0f172a;background:#f9fafb;outline:none;font-family:inherit;transition:border-color .15s,box-shadow .15s,background .15s;box-sizing:border-box;width:100%}.edit-input[data-v-1d558611]:focus{border-color:#4b5563;background:#fff;box-shadow:0 0 0 3px #30353a1a}.select-wrap[data-v-1d558611]{position:relative}.edit-select[data-v-1d558611]{width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:10px 36px 10px 13px;border:1.5px solid #e4e4e7;border-radius:9px;font-size:.875rem;color:#0f172a;background:#f9fafb;outline:none;cursor:pointer;font-family:inherit;transition:border-color .15s,box-shadow .15s,background .15s}.edit-select[data-v-1d558611]:focus{border-color:#4b5563;background:#fff;box-shadow:0 0 0 3px #30353a1a}.select-arrow[data-v-1d558611]{position:absolute;right:11px;top:50%;transform:translateY(-50%);pointer-events:none;color:#94a3b8}.edit-modal-actions[data-v-1d558611]{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:18px 24px 22px;border-top:1px solid #f0f0f0;margin-top:6px}.edit-cancel-btn[data-v-1d558611]{padding:9px 22px;background:none;border:1.5px solid #e4e4e7;border-radius:9px;font-size:.85rem;font-weight:500;color:#475569;cursor:pointer;font-family:inherit;transition:background .15s,border-color .15s}.edit-cancel-btn[data-v-1d558611]:hover{background:#f5f5f5;border-color:silver}.edit-save-btn[data-v-1d558611]{padding:9px 24px;background:linear-gradient(135deg,#4b5563,#6b7280);color:#fff;border:none;border-radius:9px;font-size:.85rem;font-weight:600;cursor:pointer;font-family:inherit;transition:opacity .15s,box-shadow .15s;box-shadow:0 2px 8px #30353a40}.edit-save-btn[data-v-1d558611]:hover{opacity:.88;box-shadow:0 4px 14px #30353a52}.logout-modal-box[data-v-1d558611]{background:#fff;border-radius:16px;padding:32px 36px 28px;width:340px;max-width:94vw;display:flex;flex-direction:column;align-items:center;gap:6px;box-shadow:0 20px 60px #00000026;text-align:center}.logout-modal-icon[data-v-1d558611]{width:60px;height:60px;border-radius:50%;background:#fff1f1;border:2px solid #ffd6d8;display:flex;align-items:center;justify-content:center;margin-bottom:8px}.logout-modal-title[data-v-1d558611]{font-size:1.1rem;font-weight:700;color:#0f172a;margin:0 0 2px}.logout-modal-sub[data-v-1d558611]{font-size:.82rem;color:#94a3b8;margin:0 0 8px}.logout-modal-actions[data-v-1d558611]{display:flex;gap:10px;margin-top:4px;width:100%}.logout-cancel-btn[data-v-1d558611]{flex:1;background:none;border:1.5px solid #e4e4e7;font-size:.875rem;font-weight:500;color:#475569;cursor:pointer;padding:10px;border-radius:8px;font-family:inherit;transition:background .15s,border-color .15s}.logout-cancel-btn[data-v-1d558611]:hover{background:#f5f5f5;border-color:silver}.logout-confirm-btn[data-v-1d558611]{flex:1;background:#e63946;color:#fff;border:none;font-size:.875rem;font-weight:600;padding:10px;border-radius:8px;font-family:inherit;cursor:pointer;transition:background .15s}.logout-confirm-btn[data-v-1d558611]:hover{background:#c1121f}@media (max-width: 900px){.main[data-v-1d558611]{padding:24px 20px}.sidebar[data-v-1d558611]{width:220px;min-width:220px}.card-hero[data-v-1d558611]{gap:14px}.info-grid[data-v-1d558611]{grid-template-columns:1fr}.info-item[data-v-1d558611]:nth-child(2n){border-right:none}.info-item[data-v-1d558611]:nth-last-child(-n+2){border-bottom:1px solid #e5e7eb}.info-item[data-v-1d558611]:last-child{border-bottom:none}}.clock-trigger[data-v-37be314b]{width:100%;height:46px;border:1px solid #d4d8dc;border-radius:10px;background:linear-gradient(145deg,#fafbfc,#edf0f2);display:flex;align-items:center;gap:8px;padding:0 11px;color:#303942;font:inherit;font-size:.8rem;cursor:pointer;box-shadow:inset 1px 1px #fff;min-width:0}.clock-trigger[data-v-37be314b]:hover{border-color:#7b838b}.clock-trigger .placeholder[data-v-37be314b]{color:#92989e}.clock-trigger-icon[data-v-37be314b]{margin-left:auto;color:#66707a}.clock-trigger>span[data-v-37be314b]:first-of-type{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.clock-overlay[data-v-37be314b]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;background:#1f232794;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:grid;place-items:center;padding:18px}.clock-dialog[data-v-37be314b]{width:min(390px,100%);overflow:hidden;border:1px solid #9da4aa;border-radius:18px;background:#f7f8f9;box-shadow:0 24px 70px #0f141859;font-family:Poppins,Arial,sans-serif}.clock-header[data-v-37be314b]{padding:18px 24px;background:linear-gradient(145deg,#4b5563,#30383f);color:#fff}.clock-header p[data-v-37be314b]{margin:0 0 7px;text-transform:uppercase;font-size:.7rem;letter-spacing:.12em;opacity:.78}.clock-digital[data-v-37be314b]{display:flex;align-items:center;gap:4px}.clock-digital>button[data-v-37be314b]{border:0;background:transparent;color:#d9dde0;font-size:2.9rem;font-weight:500;padding:0 3px;cursor:pointer}.clock-digital>button.active[data-v-37be314b]{color:#fff}.clock-digital>span[data-v-37be314b]{font-size:2.5rem}.period-switch[data-v-37be314b]{display:grid;margin-left:auto;border:1px solid rgba(255,255,255,.28);border-radius:8px;overflow:hidden}.period-switch button[data-v-37be314b]{border:0;background:transparent;color:#d8dcdf;padding:4px 9px;font:inherit;font-size:.68rem;cursor:pointer}.period-switch button.active[data-v-37be314b]{background:#eef1f3;color:#30383f;font-weight:700}.clock-instruction[data-v-37be314b]{text-align:center;padding:14px 0 2px;color:#69727a;font-size:.78rem}.clock-face[data-v-37be314b]{position:relative;width:270px;height:270px;margin:4px auto 12px;border-radius:50%;background:linear-gradient(145deg,#e5e8ea,#f6f7f8);box-shadow:inset 4px 4px 10px #3f464c1a,inset -4px -4px 10px #fff;touch-action:none;cursor:crosshair;-webkit-user-select:none;user-select:none}.clock-number[data-v-37be314b]{position:absolute;left:50%;top:50%;width:38px;height:38px;border:0;border-radius:50%;background:transparent;color:#252b30;font:600 .88rem Poppins,Arial;z-index:3;cursor:pointer}.clock-number.selected[data-v-37be314b]{background:#4b5563;color:#fff;box-shadow:0 4px 9px #30383f4d}.clock-center[data-v-37be314b]{position:absolute;left:50%;top:50%;width:8px;height:8px;transform:translate(-50%,-50%);border-radius:50%;background:#4b5563;z-index:2}.clock-hand[data-v-37be314b]{position:absolute;left:calc(50% - 1px);top:calc(50% - 84px);width:2px;height:84px;background:#4b5563;transform-origin:1px 84px;z-index:1}.clock-hand span[data-v-37be314b]{position:absolute;bottom:-4px;left:-3px;width:8px;height:8px;border-radius:50%;background:#4b5563}.clock-actions[data-v-37be314b]{display:grid;grid-template-columns:auto 1fr auto auto;gap:7px;align-items:center;padding:12px 16px 16px}.clock-actions button[data-v-37be314b]{border:0;background:transparent;color:#4b5563;padding:9px 12px;border-radius:8px;font:700 .78rem Poppins;text-transform:uppercase;letter-spacing:.05em;cursor:pointer}.clock-actions button[data-v-37be314b]:hover{background:#e5e8ea}.clock-actions .set-button[data-v-37be314b]{background:#4b5563;color:#fff}.clock-actions .set-button[data-v-37be314b]:hover{background:#30383f}.date-trigger[data-v-89c39b27]{width:100%;height:46px;border:1px solid #d4d8dc;border-radius:10px;background:linear-gradient(145deg,#fafbfc,#edf0f2);display:flex;align-items:center;gap:8px;padding:0 11px;color:#303942;font:inherit;font-size:.8rem;cursor:pointer;box-shadow:inset 1px 1px #fff;min-width:0;text-align:left}.date-trigger[data-v-89c39b27]:hover{border-color:#7b838b}.placeholder[data-v-89c39b27]{color:#92989e}.chevron[data-v-89c39b27]{margin-left:auto;color:#66707a;flex-shrink:0}.date-trigger>span[data-v-89c39b27]:first-of-type{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.date-overlay[data-v-89c39b27]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;background:#1f232794;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:grid;place-items:center;padding:18px}.date-dialog[data-v-89c39b27]{width:min(390px,100%);overflow:hidden;border:1px solid #9da4aa;border-radius:18px;background:#f7f8f9;box-shadow:0 24px 70px #0f141859;font-family:Poppins,Arial,sans-serif}header[data-v-89c39b27]{padding:19px 24px;background:linear-gradient(145deg,#4b5563,#30383f);color:#fff}header p[data-v-89c39b27]{margin:0 0 7px;text-transform:uppercase;font-size:.7rem;letter-spacing:.12em;opacity:.75}header strong[data-v-89c39b27]{font-size:1.45rem;font-weight:600}.calendar-head[data-v-89c39b27]{display:grid;grid-template-columns:42px 1fr 42px;align-items:center;padding:15px 17px 8px;text-align:center}.calendar-head button[data-v-89c39b27]{border:0;border-radius:50%;background:transparent;color:#4b5563;font-size:1.7rem;cursor:pointer}.calendar-head button[data-v-89c39b27]:hover{background:#e5e8ea}.calendar-head b[data-v-89c39b27]{font-size:.92rem;color:#30383f}.calendar-grid[data-v-89c39b27]{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;padding:0 18px}.weekdays span[data-v-89c39b27]{text-align:center;padding:6px 0;color:#899198;font-size:.69rem;font-weight:700;text-transform:uppercase}.days[data-v-89c39b27]{padding-bottom:12px}.days button[data-v-89c39b27]{aspect-ratio:1;border:0;border-radius:50%;background:transparent;color:#30383f;font:500 .82rem Poppins;cursor:pointer}.days button[data-v-89c39b27]:hover:not(:disabled){background:#dfe3e6}.days button.today[data-v-89c39b27]{box-shadow:inset 0 0 0 1px #65707a}.days button.selected[data-v-89c39b27]{background:#4b5563;color:#fff;box-shadow:0 4px 9px #30383f47}.days button[data-v-89c39b27]:disabled{color:#c5c9cc;cursor:not-allowed}footer[data-v-89c39b27]{display:grid;grid-template-columns:auto 1fr auto auto;gap:7px;padding:10px 16px 16px;border-top:1px solid #e0e3e5}footer button[data-v-89c39b27]{border:0;background:transparent;color:#4b5563;padding:9px 12px;border-radius:8px;font:700 .75rem Poppins;text-transform:uppercase;letter-spacing:.05em;cursor:pointer}footer button[data-v-89c39b27]:hover{background:#e5e8ea}footer .today-button[data-v-89c39b27]{background:#4b5563;color:#fff}.layout[data-v-1f29dc31]{display:flex;height:100vh;overflow:hidden;background:#f5f6f8;font-family:Poppins,sans-serif}.sidebar[data-v-1f29dc31]{width:280px;min-width:280px;background:#fff;border-right:1px solid #ececec;display:flex;flex-direction:column;align-items:center;padding:28px 18px 24px;position:sticky;top:0;height:100vh;overflow-y:auto}.sidebar-profile[data-v-1f29dc31]{display:flex;flex-direction:column;align-items:center;gap:6px;margin-bottom:28px;text-align:center}.avatar-wrap[data-v-1f29dc31]{width:96px;height:96px;border-radius:50%;overflow:hidden;margin-bottom:10px;border:3px solid #c4c9cd}.avatar[data-v-1f29dc31]{width:100%;height:100%;object-fit:cover}.brand[data-v-1f29dc31]{font-size:1.05rem;font-weight:600;color:#4b5563}.role[data-v-1f29dc31]{font-size:.88rem;color:#444;font-weight:500}.email[data-v-1f29dc31]{font-size:.82rem;color:#888;word-break:break-all}.sidebar-nav[data-v-1f29dc31]{display:flex;flex-direction:column;gap:4px;width:100%;flex:1}.nav-item[data-v-1f29dc31]{display:flex;align-items:center;gap:10px;padding:11px 16px;border-radius:10px;font-size:.88rem;font-weight:400;color:#444;text-decoration:none;transition:background .18s,color .18s;cursor:pointer}.nav-item[data-v-1f29dc31]:hover{background:#f8fafc;color:#4b5563}.nav-item.active[data-v-1f29dc31]{background:#4b5563;color:#fff}.nav-item.active .nav-icon[data-v-1f29dc31]{color:#fff}.nav-icon[data-v-1f29dc31]{display:flex;align-items:center;flex-shrink:0}.logout-btn[data-v-1f29dc31]{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:11px 12px;background:#e63946;color:#fff;border:none;border-radius:10px;font-size:.85rem;font-weight:500;font-family:inherit;cursor:pointer;transition:background .2s;margin-top:16px}.logout-btn[data-v-1f29dc31]:hover{background:#c1121f}.main[data-v-1f29dc31]{flex:1;padding:40px 44px 32px;overflow-y:auto;min-width:0;display:flex;flex-direction:column;height:100vh}.main-header[data-v-1f29dc31]{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:28px}.page-title[data-v-1f29dc31]{font-size:2rem;font-weight:600;color:#4b5563;letter-spacing:-.5px;line-height:1.2}.page-sub[data-v-1f29dc31]{font-size:.95rem;color:#777;margin-top:4px}.modal-overlay[data-v-1f29dc31]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:1000}.logout-modal-box[data-v-1f29dc31]{background:#fff;border-radius:20px;padding:36px 40px 32px;width:360px;max-width:94vw;display:flex;flex-direction:column;align-items:center;gap:10px;box-shadow:0 16px 48px #0000002e;text-align:center}.logout-modal-icon[data-v-1f29dc31]{width:68px;height:68px;border-radius:50%;background:#ffeaea;display:flex;align-items:center;justify-content:center;margin-bottom:4px}.logout-modal-title[data-v-1f29dc31]{font-size:1.45rem;font-weight:700;color:#111;margin:0}.logout-modal-sub[data-v-1f29dc31]{font-size:.9rem;color:#777;margin:0 0 8px}.logout-modal-actions[data-v-1f29dc31]{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:6px;width:100%}.logout-cancel-btn[data-v-1f29dc31]{background:none;border:none;font-family:inherit;font-size:1rem;font-weight:600;color:#e63946;cursor:pointer;padding:8px 18px;border-radius:10px;transition:background .15s}.logout-cancel-btn[data-v-1f29dc31]:hover{background:#ffeaea}.logout-confirm-btn[data-v-1f29dc31]{background:#4b5563;color:#fff;border:none;font-family:inherit;font-size:1rem;font-weight:600;padding:10px 32px;border-radius:10px;cursor:pointer;transition:background .18s}.logout-confirm-btn[data-v-1f29dc31]:hover{background:#6b7280}.events-topbar[data-v-1f29dc31]{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;flex-wrap:wrap;gap:12px}.events-tabs[data-v-1f29dc31]{display:flex;gap:6px}.ev-tab[data-v-1f29dc31]{background:none;border:none;font-family:inherit;font-size:.88rem;font-weight:500;color:#888;cursor:pointer;padding:8px 20px;border-radius:10px;transition:background .18s,color .18s;display:flex;align-items:center;gap:6px}.ev-tab[data-v-1f29dc31]:hover{background:#f8fafc;color:#4b5563}.ev-tab.active[data-v-1f29dc31]{background:#4b5563;color:#fff}.ev-tab-count[data-v-1f29dc31]{background:#e63946;color:#fff;font-size:.72rem;font-weight:700;border-radius:20px;padding:1px 7px;line-height:1.5}.add-event-btn[data-v-1f29dc31]{display:flex;align-items:center;gap:7px;background:#4b5563;color:#fff;border:none;font-family:inherit;font-size:.88rem;font-weight:500;padding:10px 20px;border-radius:10px;cursor:pointer;transition:background .18s}.add-event-btn[data-v-1f29dc31]:hover{background:#6b7280}.events-grid[data-v-1f29dc31]{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}@media (max-width: 1100px){.events-grid[data-v-1f29dc31]{grid-template-columns:repeat(2,1fr)}}@media (max-width: 700px){.events-grid[data-v-1f29dc31]{grid-template-columns:1fr}}.event-card[data-v-1f29dc31]{background:#fff;border-radius:16px;padding:22px 24px 20px;box-shadow:0 2px 10px #00000012;display:flex;flex-direction:column;gap:10px;transition:box-shadow .2s}.event-card[data-v-1f29dc31]:hover{box-shadow:0 4px 18px #0000001c}.event-card--archived[data-v-1f29dc31]{opacity:.75}.event-card--archived[data-v-1f29dc31]:hover{opacity:1}.event-card-head[data-v-1f29dc31]{display:flex;align-items:center;justify-content:space-between}.event-badge[data-v-1f29dc31]{font-size:.73rem;font-weight:600;padding:3px 11px;border-radius:20px;letter-spacing:.3px;text-transform:uppercase}.event-badge--active[data-v-1f29dc31]{background:#d8dcdf;color:#4f575f}.event-badge--archived[data-v-1f29dc31]{background:#f0f0f0;color:#888}.event-card-actions[data-v-1f29dc31]{display:flex;gap:6px}.ec-btn[data-v-1f29dc31]{display:flex;align-items:center;gap:5px;font-family:inherit;font-size:.78rem;font-weight:500;padding:5px 11px;border-radius:8px;border:none;cursor:pointer;transition:background .15s,color .15s}.ec-btn--edit[data-v-1f29dc31]{background:#eef4fe;color:#2563eb}.ec-btn--edit[data-v-1f29dc31]:hover{background:#dceafd}.ec-btn--archive[data-v-1f29dc31]{background:#f5f5f5;color:#555}.ec-btn--archive[data-v-1f29dc31]:hover{background:#e8e8e8}.ec-btn--restore[data-v-1f29dc31]{background:#d8dcdf;color:#4f575f}.ec-btn--restore[data-v-1f29dc31]:hover{background:#c0ebd5}.ec-btn--delete[data-v-1f29dc31]{background:#ffeaea;color:#e63946}.ec-btn--delete[data-v-1f29dc31]:hover{background:#fdd}.event-card-title[data-v-1f29dc31]{font-size:1.05rem;font-weight:700;color:#111;line-height:1.3}.event-card-desc[data-v-1f29dc31]{font-size:.84rem;color:#777;line-height:1.5}.event-card-meta[data-v-1f29dc31]{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}.event-meta-item[data-v-1f29dc31]{display:flex;align-items:center;gap:5px;font-size:.8rem;color:#555}.events-empty[data-v-1f29dc31]{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:60px 20px;color:#bbb;font-size:.88rem}.event-card-img-wrap[data-v-1f29dc31]{width:100%;height:160px;border-radius:10px;overflow:hidden;margin-bottom:2px;flex-shrink:0}.event-card-img[data-v-1f29dc31]{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}.event-card:hover .event-card-img[data-v-1f29dc31]{transform:scale(1.03)}.event-card-default-cover[data-v-1f29dc31]{width:100%;height:160px;border-radius:10px;margin-bottom:2px;flex-shrink:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:#fff;overflow:hidden;position:relative}.event-card-default-cover[data-v-1f29dc31]:before{content:"";position:absolute;width:180px;height:180px;border:1px solid rgba(255,255,255,.13);border-radius:50%}.event-card-default-cover span[data-v-1f29dc31]{position:relative;font-size:2.15rem;line-height:1;font-weight:700;letter-spacing:.06em;text-shadow:0 3px 10px rgba(0,0,0,.25)}.event-card-default-cover small[data-v-1f29dc31]{position:relative;font-size:.62rem;font-weight:600;letter-spacing:.18em;opacity:.78}.event-card--clickable[data-v-1f29dc31]{cursor:pointer}.event-card--clickable[data-v-1f29dc31]:hover{box-shadow:0 6px 24px #30353a21;transform:translateY(-2px);transition:box-shadow .2s,transform .2s}.ev-view-box[data-v-1f29dc31]{background:#fff;border-radius:22px;width:540px;max-width:95vw;max-height:90vh;overflow-y:auto;box-shadow:0 24px 80px #00000038;display:flex;flex-direction:column;animation:evModalIn-1f29dc31 .22s cubic-bezier(.34,1.3,.64,1)}@keyframes evModalIn-1f29dc31{0%{opacity:0;transform:scale(.94) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}.ev-view-hero[data-v-1f29dc31]{position:relative;height:230px;background:linear-gradient(135deg,#4b5563,#64748b);background-size:cover;background-position:center;border-radius:22px 22px 0 0;flex-shrink:0;overflow:hidden}.ev-view-hero-overlay[data-v-1f29dc31]{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,#000000b8,#0000002e,#0000000a)}.ev-view-hero-content[data-v-1f29dc31]{position:absolute;bottom:22px;left:26px;right:58px;display:flex;flex-direction:column;gap:10px}.ev-view-badge[data-v-1f29dc31]{display:inline-flex;align-items:center;gap:5px;font-size:.68rem;font-weight:700;letter-spacing:.8px;text-transform:uppercase;padding:4px 12px;border-radius:20px;width:fit-content;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.ev-view-badge--active[data-v-1f29dc31]{background:#535b64e0;color:#fff}.ev-view-badge--archived[data-v-1f29dc31]{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.35)}.ev-view-title[data-v-1f29dc31]{font-size:1.6rem;font-weight:800;color:#fff;line-height:1.2;text-shadow:0 2px 8px rgba(0,0,0,.35);margin:0;letter-spacing:-.3px}.ev-view-close[data-v-1f29dc31]{position:absolute;top:14px;right:14px;width:34px;height:34px;border-radius:10px;background:#0000004d;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;border:1px solid rgba(255,255,255,.18);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s;z-index:2}.ev-view-close[data-v-1f29dc31]:hover{background:#e63946bf}.ev-view-body[data-v-1f29dc31]{padding:26px 28px 28px;display:flex;flex-direction:column;gap:20px}.ev-view-info-row[data-v-1f29dc31]{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.ev-view-info-item[data-v-1f29dc31]{display:flex;flex-direction:column;align-items:flex-start;gap:10px;background:#f7f8fa;border:1.5px solid #f0f0f0;border-radius:14px;padding:14px 16px;transition:border-color .18s,box-shadow .18s}.ev-view-info-item[data-v-1f29dc31]:hover{border-color:#c4c9cd;box-shadow:0 2px 10px #30353a12}.ev-view-info-icon[data-v-1f29dc31]{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ev-view-info-icon--date[data-v-1f29dc31]{background:#e0f2fe;color:#0369a1}.ev-view-info-icon--time[data-v-1f29dc31]{background:#fef3c7;color:#b45309}.ev-view-info-icon--loc[data-v-1f29dc31]{background:#fce7f3;color:#be185d}.ev-view-info-text[data-v-1f29dc31]{display:flex;flex-direction:column;gap:2px;min-width:0}.ev-view-info-label[data-v-1f29dc31]{font-size:.68rem;font-weight:700;color:#aaa;text-transform:uppercase;letter-spacing:.6px}.ev-view-info-val[data-v-1f29dc31]{font-size:.9rem;font-weight:700;color:#1a1a1a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ev-view-desc-wrap[data-v-1f29dc31]{background:#f7f8fa;border:1.5px solid #f0f0f0;border-radius:14px;padding:16px 20px}.ev-view-desc-label[data-v-1f29dc31]{display:flex;align-items:center;gap:6px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#888;margin-bottom:10px}.ev-view-desc[data-v-1f29dc31]{font-size:.92rem;color:#444;line-height:1.7;margin:0}.ev-view-actions[data-v-1f29dc31]{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding-top:6px;border-top:1.5px solid #f0f0f0;margin-top:2px}.ev-view-close-btn[data-v-1f29dc31]{background:none;border:1.5px solid #e0e0e0;font-family:inherit;font-size:.88rem;font-weight:600;color:#666;cursor:pointer;padding:10px 22px;border-radius:10px;transition:background .15s,border-color .15s,color .15s}.ev-view-close-btn[data-v-1f29dc31]:hover{background:#f5f5f5;border-color:#bbb;color:#333}.ev-view-edit-btn[data-v-1f29dc31]{display:flex;align-items:center;gap:7px;background:linear-gradient(135deg,#4b5563,#6b7280);color:#fff;border:none;font-family:inherit;font-size:.88rem;font-weight:600;padding:10px 24px;border-radius:10px;cursor:pointer;box-shadow:0 4px 16px #30353a40;transition:opacity .18s,box-shadow .18s,transform .15s}.ev-view-edit-btn[data-v-1f29dc31]:hover{opacity:.92;box-shadow:0 6px 20px #30353a52;transform:translateY(-1px)}.event-modal-box[data-v-1f29dc31]{background:#fff;border-radius:20px;width:560px;max-width:95vw;max-height:92vh;overflow-y:auto;box-shadow:0 20px 60px #0000002e;position:relative}.ev-modal-banner[data-v-1f29dc31]{background:linear-gradient(135deg,#4b5563,#6b7280);padding:26px 28px 22px;display:flex;align-items:center;gap:16px;border-radius:20px 20px 0 0;position:relative}.ev-modal-banner-icon[data-v-1f29dc31]{width:52px;height:52px;border-radius:14px;background:#ffffff26;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ev-modal-banner-text[data-v-1f29dc31]{flex:1}.ev-modal-banner-title[data-v-1f29dc31]{font-size:1.25rem;font-weight:700;color:#fff;margin:0 0 4px;line-height:1.2}.ev-modal-banner-sub[data-v-1f29dc31]{font-size:.82rem;color:#ffffffb8;margin:0}.ev-modal-close[data-v-1f29dc31]{position:absolute;top:16px;right:18px;width:30px;height:30px;border-radius:8px;background:#ffffff26;color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}.ev-modal-close[data-v-1f29dc31]:hover{background:#ffffff47}.event-form[data-v-1f29dc31]{display:flex;flex-direction:column;gap:18px;padding:26px 28px 28px}.form-group[data-v-1f29dc31]{display:flex;flex-direction:column;gap:7px}.form-row[data-v-1f29dc31]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.form-optional[data-v-1f29dc31]{color:#999;font-weight:400;text-transform:none}.teacher-picker[data-v-1f29dc31]{position:relative}.teacher-picker-trigger[data-v-1f29dc31]{width:100%;min-height:46px;display:flex;align-items:center;gap:10px;padding:0 13px;border:1px solid #e1e5e8;border-radius:10px;background:#f8f9fb;color:#1b4332;font:inherit;cursor:pointer;text-align:left}.teacher-picker-trigger[data-v-1f29dc31]:hover{border-color:#74a98e}.teacher-picker-value[data-v-1f29dc31]{color:#333;font-size:.88rem}.teacher-picker-placeholder[data-v-1f29dc31]{color:#a7adba;font-size:.88rem}.teacher-picker-trigger .td-chevron[data-v-1f29dc31]{margin-left:auto;color:#687178}.teacher-picker-panel[data-v-1f29dc31]{position:absolute;z-index:20;top:calc(100% + 6px);left:0;right:0;padding:10px;border:1px solid #d9e2dd;border-radius:10px;background:#fff;box-shadow:0 12px 28px #12352629}.teacher-picker-search[data-v-1f29dc31]{display:flex;align-items:center;gap:8px;padding:0 9px;border:1px solid #e4e7e9;border-radius:7px;color:#668174}.teacher-picker-search input[data-v-1f29dc31]{width:100%;height:32px;border:0;outline:0;font:inherit;font-size:.82rem;background:transparent}.teacher-picker-all[data-v-1f29dc31]{display:flex;align-items:center;gap:8px;margin:9px 3px 6px;font-size:.78rem;color:#567064;cursor:pointer}.teacher-picker-list[data-v-1f29dc31]{max-height:164px;overflow-y:auto;border-top:1px solid #edf0ee}.teacher-picker-option[data-v-1f29dc31]{display:flex;align-items:center;gap:9px;padding:8px 4px;color:#333;font-size:.84rem;cursor:pointer}.teacher-picker-option[data-v-1f29dc31]:hover{background:#f2f8f4}.teacher-picker-option input[data-v-1f29dc31],.teacher-picker-all input[data-v-1f29dc31]{accent-color:#1b4332}.teacher-picker-avatar[data-v-1f29dc31]{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#dcefe4;color:#1b4332;font-size:.66rem;font-weight:700}.teacher-picker-empty[data-v-1f29dc31]{margin:14px 4px;color:#8b9490;text-align:center;font-size:.8rem}.teacher-picker-help[data-v-1f29dc31]{color:#8b9490;font-size:.74rem}.form-label[data-v-1f29dc31]{font-size:.78rem;font-weight:700;color:#666;letter-spacing:.4px;text-transform:uppercase}.form-required[data-v-1f29dc31]{color:#e63946}.form-input[data-v-1f29dc31]{font-family:inherit;font-size:.88rem;color:#111;background:#f7f8fa;border:1.5px solid #ececec;border-radius:10px;padding:11px 14px;outline:none;width:100%;box-sizing:border-box;transition:border-color .18s,background .18s,box-shadow .18s}.form-input[data-v-1f29dc31]::placeholder{color:#c0c4cc}.form-input[data-v-1f29dc31]:focus{border-color:#6b7280;background:#fff;box-shadow:0 0 0 3px #535b6417}.form-textarea[data-v-1f29dc31]{resize:vertical;min-height:84px;line-height:1.6}.fi-wrap[data-v-1f29dc31]{position:relative;display:flex;align-items:center}.fi-icon[data-v-1f29dc31]{position:absolute;left:13px;color:#6b7280;pointer-events:none;flex-shrink:0}.fi-input[data-v-1f29dc31]{padding-left:38px!important}.time-picker-wrap[data-v-1f29dc31]{position:relative}.time-display[data-v-1f29dc31]{display:flex;align-items:center;gap:9px;background:#f7f8fa;border:1.5px solid #ececec;border-radius:10px;padding:11px 13px;cursor:pointer;transition:border-color .18s,background .18s,box-shadow .18s;-webkit-user-select:none;user-select:none;color:#6b7280}.time-display[data-v-1f29dc31]:hover,.time-display--open[data-v-1f29dc31]{border-color:#6b7280;background:#fff;box-shadow:0 0 0 3px #535b6417}.td-val[data-v-1f29dc31]{flex:1;font-size:.88rem;font-weight:600;color:#111}.td-placeholder[data-v-1f29dc31]{flex:1;font-size:.88rem;color:#c0c4cc}.td-chevron[data-v-1f29dc31]{color:#aaa;transition:transform .2s;flex-shrink:0}.td-chevron--open[data-v-1f29dc31]{transform:rotate(180deg);color:#6b7280}.time-picker-panel[data-v-1f29dc31]{position:absolute;top:calc(100% + 8px);left:0;right:0;background:#fff;border-radius:14px;box-shadow:0 8px 32px #00000024;border:1px solid #ececec;z-index:200;overflow:hidden;padding:16px 14px 14px}.tp-cols[data-v-1f29dc31]{display:flex;align-items:flex-start;gap:4px;margin-bottom:12px}.tp-col[data-v-1f29dc31]{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px}.tp-col--period[data-v-1f29dc31]{flex:0 0 58px}.tp-col-label[data-v-1f29dc31]{font-size:.68rem;font-weight:700;color:#aaa;letter-spacing:.8px;text-transform:uppercase;margin-bottom:2px}.tp-col-scroll[data-v-1f29dc31]{width:100%;max-height:152px;overflow-y:auto;display:flex;flex-direction:column;gap:3px;scrollbar-width:thin;scrollbar-color:#c4c9cd transparent}.tp-col-scroll[data-v-1f29dc31]::-webkit-scrollbar{width:4px}.tp-col-scroll[data-v-1f29dc31]::-webkit-scrollbar-thumb{background:#c4c9cd;border-radius:4px}.tp-cell[data-v-1f29dc31]{padding:7px 6px;border-radius:8px;font-size:.88rem;font-weight:500;color:#444;text-align:center;cursor:pointer;transition:background .12s,color .12s}.tp-cell[data-v-1f29dc31]:hover{background:#f8fafc;color:#4b5563}.tp-cell--active[data-v-1f29dc31]{background:#4b5563;color:#fff;font-weight:700}.tp-sep[data-v-1f29dc31]{font-size:1.15rem;font-weight:700;color:#ccc;padding-top:34px;flex-shrink:0}.tp-ampm[data-v-1f29dc31]{display:flex;flex-direction:column;gap:4px;width:100%}.tp-ampm-cell[data-v-1f29dc31]{padding:8px 6px;border-radius:8px;font-size:.82rem;font-weight:600;text-align:center;cursor:pointer;background:#f5f5f5;color:#666;transition:background .12s,color .12s}.tp-ampm-cell[data-v-1f29dc31]:hover{background:#f8fafc;color:#4b5563}.tp-ampm-cell--active[data-v-1f29dc31]{background:#4b5563;color:#fff}.tp-preview[data-v-1f29dc31]{text-align:center;font-size:1.4rem;font-weight:700;color:#4b5563;letter-spacing:2px;margin-bottom:12px;background:#f8fafc;border-radius:10px;padding:10px 0}.tp-confirm-btn[data-v-1f29dc31]{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;padding:10px 0;background:#4b5563;color:#fff;border:none;border-radius:10px;font-family:inherit;font-size:.88rem;font-weight:600;cursor:pointer;transition:background .18s}.tp-confirm-btn[data-v-1f29dc31]:hover{background:#6b7280}.img-file-input[data-v-1f29dc31]{display:none}.img-upload-icon-wrap[data-v-1f29dc31]{width:50px;height:50px;background:#f3f4f6;border-radius:14px;display:flex;align-items:center;justify-content:center;margin-bottom:2px}.img-upload-area[data-v-1f29dc31]{border:2px dashed #d9dde5;border-radius:12px;padding:28px 16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;cursor:pointer;background:#f7f8fa;position:relative;overflow:hidden;min-height:112px;transition:border-color .18s,background .18s}.img-upload-area[data-v-1f29dc31]:hover{border-color:#6b7280;background:#f8fafc}.img-upload-area--has[data-v-1f29dc31]{padding:0;border-style:solid;border-color:#c4c9cd;min-height:168px}.img-upload-hint[data-v-1f29dc31]{font-size:.85rem;font-weight:600;color:#444}.img-upload-sub[data-v-1f29dc31]{font-size:.75rem;color:#aaa}.img-upload-preview[data-v-1f29dc31]{width:100%;height:168px;object-fit:cover;display:block;border-radius:10px}.img-remove-btn[data-v-1f29dc31]{position:absolute;top:8px;right:8px;width:28px;height:28px;border-radius:50%;background:#00000080;color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s;z-index:2}.img-remove-btn[data-v-1f29dc31]:hover{background:#e63946e0}.form-actions[data-v-1f29dc31]{display:flex;justify-content:flex-end;align-items:center;gap:12px;padding-top:8px;border-top:1px solid #f0f0f0;margin-top:2px}.ev-cancel-btn[data-v-1f29dc31]{background:none;border:1.5px solid #e0e0e0;font-family:inherit;font-size:.88rem;font-weight:600;color:#666;cursor:pointer;padding:10px 22px;border-radius:10px;transition:background .15s,border-color .15s}.ev-cancel-btn[data-v-1f29dc31]:hover{background:#f5f5f5;border-color:#ccc}.ev-submit-btn[data-v-1f29dc31]{display:flex;align-items:center;gap:7px;background:linear-gradient(135deg,#4b5563,#6b7280);color:#fff;border:none;font-family:inherit;font-size:.88rem;font-weight:600;padding:10px 26px;border-radius:10px;cursor:pointer;transition:opacity .18s,box-shadow .18s;box-shadow:0 4px 14px #30353a40}.ev-submit-btn[data-v-1f29dc31]:hover{opacity:.9;box-shadow:0 6px 18px #30353a52}@media (max-width: 720px){.form-row[data-v-1f29dc31]{grid-template-columns:1fr}}.layout[data-v-1f29dc31]{background:radial-gradient(circle at 78% 4%,rgba(255,255,255,.75),transparent 30%),linear-gradient(135deg,#f4f6f7,#dde2e5)}.main[data-v-1f29dc31]{padding:32px 38px 44px}.main-header[data-v-1f29dc31]{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:25px}.page-eyebrow[data-v-1f29dc31]{display:block;margin-bottom:8px;color:#6d7881;font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.page-title[data-v-1f29dc31]{margin:0;color:#202830;font-size:clamp(2rem,3vw,2.6rem);font-weight:700;letter-spacing:-.045em}.page-sub[data-v-1f29dc31]{margin-top:9px;color:#6f7b84;font-size:.93rem}.events-topbar[data-v-1f29dc31]{margin-bottom:20px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.events-tabs[data-v-1f29dc31]{gap:7px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.ev-tab[data-v-1f29dc31]:hover{background:#eef2f5;color:#303a43}.ev-tab.active[data-v-1f29dc31]{border-color:#3f4d57;background:#3f4a55;color:#fff;box-shadow:0 5px 12px #2d384029}.ev-tab-count[data-v-1f29dc31]{display:grid;min-width:20px;height:20px;place-items:center;padding:0 5px;border-radius:99px;background:#e5e9ec;color:#6c7780;font-size:.61rem}.add-event-btn[data-v-1f29dc31]{min-height:46px;padding:0 18px;border:1px solid #3e4d58;border-radius:12px;background:linear-gradient(145deg,#5c6771,#343e47);box-shadow:0 8px 20px #2d373f33;font-size:.78rem;font-weight:750}.add-event-btn[data-v-1f29dc31]:hover{background:linear-gradient(145deg,#687580,#3d4852);transform:translateY(-1px)}.header-add-event-btn[data-v-1f29dc31]{min-height:46px;padding:0 18px;border-radius:12px;box-shadow:0 8px 20px #2d373f33;white-space:nowrap}.events-section[data-v-1f29dc31]{padding:26px 28px 28px;border:1px solid rgba(255,255,255,.95);border-radius:24px;background:linear-gradient(145deg,#f7f9fabd,#dae0e49e);box-shadow:14px 16px 34px #58636b29,-10px -10px 24px #ffffff94,inset 1px 1px #ffffffd1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.events-section-header[data-v-1f29dc31]{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px;padding-bottom:18px;border-bottom:1px solid #e2e8ec}.events-section-title[data-v-1f29dc31]{margin:0;color:#252e35;font-size:1.18rem;font-weight:600;letter-spacing:-.02em}.events-section-sub[data-v-1f29dc31]{margin:7px 0 0;color:#75818a;font-size:.82rem}.event-summary-counts[data-v-1f29dc31]{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.event-summary-counts span[data-v-1f29dc31]{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 12px;border:1px solid rgba(255,255,255,.9);border-radius:12px;background:#eef2f4a6;box-shadow:inset 2px 2px 5px #8d979e1f,inset -2px -2px 5px #ffffffb8;color:#74808a;font-size:.75rem;font-weight:650}.event-summary-counts b[data-v-1f29dc31]{color:#34404a;font-size:.9rem}.event-summary-counts .active[data-v-1f29dc31]{border-color:#cfe7da;background:#eefaf3;color:#35704f}.events-grid[data-v-1f29dc31]{grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:20px;align-items:start}.event-card[data-v-1f29dc31]{position:relative;gap:0;min-height:0;padding:0;overflow:hidden;border:1px solid rgba(255,255,255,.96);border-radius:22px;background:linear-gradient(145deg,#ffffffd1,#e5eaedb8);box-shadow:10px 12px 25px #58636b21,-7px -7px 18px #ffffff9e,inset 1px 1px #ffffffc7;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.event-card[data-v-1f29dc31]:hover,.event-card--clickable[data-v-1f29dc31]:hover{transform:translateY(-3px);border-color:#fffffffa;box-shadow:13px 16px 31px #58636b2e,-8px -8px 19px #ffffffb3,inset 1px 1px #ffffffd1}.event-card--archived[data-v-1f29dc31]{opacity:.72;filter:grayscale(.18)}.event-card-img-wrap[data-v-1f29dc31],.event-card-default-cover[data-v-1f29dc31]{height:182px;margin:0;border-radius:0;background-color:#d9dee2;box-shadow:inset 0 -1px #ffffff80}.event-card-img[data-v-1f29dc31]{filter:saturate(.94) contrast(.98)}.event-card-head[data-v-1f29dc31]{gap:10px;order:2;padding:16px 18px 0;margin-top:0}.event-badge[data-v-1f29dc31]{display:inline-flex;align-items:center;min-height:25px;padding:0 11px;border:1px solid rgba(255,255,255,.9);border-radius:999px;font-size:.64rem;font-weight:850;letter-spacing:.08em}.event-badge--active[data-v-1f29dc31]{border-color:#ffffffe6;background:#eef2f4;box-shadow:inset 2px 2px 4px #8d979e1a,inset -2px -2px 4px #fffc;color:#4e5963}.event-badge--archived[data-v-1f29dc31]{border-color:#e2e5e8;background:#f5f6f7;color:#7a828a}.event-card-actions[data-v-1f29dc31]{margin-left:auto;gap:5px}.ec-btn[data-v-1f29dc31]{min-height:30px;padding:0 10px;border:1px solid #e2e7eb;border-radius:10px;background:#ffffffd1;color:#46525c;font-size:.72rem;font-weight:750}.ec-btn svg[data-v-1f29dc31]{width:14px;height:14px}.ec-btn--edit[data-v-1f29dc31]{border-color:#d8e5ff;background:#f4f8ff;color:#2563eb}.ec-btn--archive[data-v-1f29dc31],.ec-btn--restore[data-v-1f29dc31]{background:#f8fafb;color:#505b64}.ec-btn--delete[data-v-1f29dc31]{border-color:#fee2e2;background:#fff7f7;color:#dc2626}.event-card-title[data-v-1f29dc31]{order:3;margin:12px 18px 0;color:#1f2933;font-size:1rem;font-weight:800;letter-spacing:-.02em;overflow-wrap:anywhere}.event-card-desc[data-v-1f29dc31]{order:4;display:-webkit-box;min-height:40px;margin:7px 18px 0;overflow:hidden;color:#707b84;font-size:.78rem;line-height:1.55;-webkit-box-orient:vertical;-webkit-line-clamp:2}.event-card-meta[data-v-1f29dc31]{order:5;gap:7px;margin:16px 18px 18px;padding-top:14px;border-top:1px solid #e8edf0}.event-meta-item[data-v-1f29dc31]{max-width:100%;min-height:28px;padding:0 9px;border:1px solid #e1e7eb;border-radius:999px;background:#ffffffb3;color:#5c6872;font-size:.72rem;font-weight:650}.event-meta-item svg[data-v-1f29dc31]{color:#6f7b84}.events-empty[data-v-1f29dc31]{min-height:310px;border:1px dashed #cdd5da;border-radius:22px;background:#ffffff75;color:#73808a}.event-modal-box[data-v-1f29dc31],.ev-view-box[data-v-1f29dc31]{border:1px solid rgba(255,255,255,.95);border-radius:18px;box-shadow:0 24px 70px #0f172a42}.ev-modal-banner[data-v-1f29dc31]{border-radius:18px 18px 0 0;background:#fff;border-bottom:1px solid #e5ebef}.ev-modal-banner-icon[data-v-1f29dc31]{background:#eef2f4;color:#45515b}.ev-modal-banner-title[data-v-1f29dc31]{color:#202830}.ev-modal-banner-sub[data-v-1f29dc31]{color:#6d7881}.ev-modal-close[data-v-1f29dc31]{border:1px solid #dbe3e8;background:#fff;color:#475569}.ev-modal-close[data-v-1f29dc31]:hover{background:#f3f6f8}.event-form[data-v-1f29dc31]{gap:16px}.form-label[data-v-1f29dc31]{color:#55616b;font-size:.68rem;letter-spacing:.08em}.form-input[data-v-1f29dc31],.teacher-picker-trigger[data-v-1f29dc31],.time-display[data-v-1f29dc31],.img-upload-area[data-v-1f29dc31]{border:1px solid #d8e0e5;border-radius:12px;background:#fff;box-shadow:none}.form-input[data-v-1f29dc31]:focus,.teacher-picker-trigger[data-v-1f29dc31]:hover,.time-display[data-v-1f29dc31]:hover,.time-display--open[data-v-1f29dc31]{border-color:#7c8994;box-shadow:0 0 0 3px #64748b1a}.form-actions[data-v-1f29dc31]{margin-top:4px;border-top:1px solid #e7edf1}.ev-cancel-btn[data-v-1f29dc31],.ev-submit-btn[data-v-1f29dc31]{border-radius:11px;font-size:.8rem}.ev-submit-btn[data-v-1f29dc31]{background:#3f4a55;box-shadow:0 10px 22px #2d373f2e}.event-modal-box[data-v-1f29dc31]{display:flex;flex-direction:column;width:min(600px,94vw);max-height:min(780px,90vh);overflow:hidden;border:1px solid #e2e8f0;border-radius:14px;background:#fff}.ev-modal-banner[data-v-1f29dc31]{flex:0 0 auto;padding:22px 28px 20px;border-bottom:1px solid #e5eaf0;border-radius:14px 14px 0 0;background:#fff}.ev-modal-banner-icon[data-v-1f29dc31]{width:48px;height:48px;border-radius:13px;background:#eef2f4;color:#475569}.ev-modal-banner-title[data-v-1f29dc31]{color:#202a34;font-size:1.35rem;font-weight:800;letter-spacing:-.035em}.ev-modal-banner-sub[data-v-1f29dc31]{color:#66727e;font-size:.84rem}.ev-modal-close[data-v-1f29dc31]{top:18px;right:20px;width:38px;height:38px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;color:#475569}.ev-modal-close[data-v-1f29dc31]:hover{border-color:#cbd5e1;background:#f8fafc;color:#111827}.event-form[data-v-1f29dc31]{flex:1 1 auto;gap:14px;padding:22px 28px 0;overflow-y:auto;background:#fff}.teacher-picker-trigger[data-v-1f29dc31]{color:#475569}.teacher-picker-trigger[data-v-1f29dc31]:hover{border-color:#94a3b8}.teacher-picker-option input[data-v-1f29dc31],.teacher-picker-all input[data-v-1f29dc31]{accent-color:#4b5563}.teacher-picker-avatar[data-v-1f29dc31]{background:#eef2f4;color:#475569}.teacher-picker-option[data-v-1f29dc31]:hover{background:#f6f8fa}.img-upload-area[data-v-1f29dc31]{min-height:150px;border:1px dashed #cbd5e1;background:#fbfcfd}.img-upload-area[data-v-1f29dc31]:hover{border-color:#94a3b8;background:#f8fafc}.form-actions[data-v-1f29dc31]{position:sticky;bottom:0;z-index:5;margin:8px -28px 0;padding:18px 28px 22px;border-top:1px solid #e5eaf0;background:#fff;box-shadow:0 -10px 20px #ffffffeb}.ev-cancel-btn[data-v-1f29dc31],.ev-submit-btn[data-v-1f29dc31]{min-height:42px;padding:9px 20px;border-radius:6px;font-size:.84rem;font-weight:600;box-shadow:none}.ev-cancel-btn[data-v-1f29dc31]{border:1px solid #e5e7eb;background:#fff;color:#dc2626}.ev-cancel-btn[data-v-1f29dc31]:hover{border-color:#d32f2f;background:#f8fafc}.ev-submit-btn[data-v-1f29dc31]{min-width:132px;justify-content:center;border:0;background:#334155;color:#fff}.ev-submit-btn[data-v-1f29dc31]:hover{background:#1f2937;opacity:1;box-shadow:none}@media (max-width: 720px){.event-modal-box[data-v-1f29dc31]{max-height:92vh}.event-form[data-v-1f29dc31]{padding:20px 20px 0}.form-actions[data-v-1f29dc31]{margin-inline:-20px;padding-inline:20px}}@media (max-width: 700px){.main[data-v-1f29dc31]{padding:26px 20px 34px}.events-topbar[data-v-1f29dc31]{align-items:stretch}.events-tabs[data-v-1f29dc31],.add-event-btn[data-v-1f29dc31]{width:100%}.ev-tab[data-v-1f29dc31]{flex:1;justify-content:center}}.events-section[data-v-1f29dc31]{padding:17px 27px 24px!important;border:1px solid var(--metal-line)!important;border-radius:20px!important;background:var(--metal-surface-soft)!important;box-shadow:var(--metal-shadow)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.events-section-header[data-v-1f29dc31]{margin-bottom:16px;padding-bottom:15px;border-bottom:1px solid #e1e7eb}.events-section-title[data-v-1f29dc31]{color:#202830}.events-section-sub[data-v-1f29dc31]{margin-top:5px;color:#74808a;font-size:.75rem}.event-summary-counts span[data-v-1f29dc31]{display:inline-flex;align-items:center;min-width:78px;justify-content:center;gap:7px;min-height:34px;padding:8px 11px;white-space:nowrap;border:1px solid #dce2e5;border-radius:11px;background:#f7f9fae6;box-shadow:none;color:#66727b;font-size:.64rem;font-weight:600}.event-summary-counts b[data-v-1f29dc31]{color:#34404a;font-size:.95rem;line-height:1}.event-summary-counts small[data-v-1f29dc31]{font-size:.64rem;font-weight:650}.event-summary-counts .event-summary-count--active[data-v-1f29dc31]{border-color:#b9d8c5;background:#eef8f2;color:#34704e}.event-summary-counts .event-summary-count--active b[data-v-1f29dc31]{color:#276743}.event-summary-counts .event-summary-count--archived[data-v-1f29dc31]{border-color:#e2d5b8;background:#f8f3e7;color:#765f2e}.event-summary-counts .event-summary-count--archived b[data-v-1f29dc31]{color:#765f2e}.events-tabs[data-v-1f29dc31]{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.ev-tab[data-v-1f29dc31]{min-height:38px;padding:7px 12px;border:1px solid #d8dee2;border-radius:10px;background:#f7f8f9;color:#59656e;font-size:.72rem;font-weight:600}.ev-tab[data-v-1f29dc31]:hover{background:#f4f6f8}.ev-tab.active[data-v-1f29dc31]{border-color:#3f4d57;background:#3f4d57;box-shadow:0 5px 12px #2d384029}.ev-tab-count[data-v-1f29dc31]{background:#e5e9ec;color:#6c7780}.ev-tab.active .ev-tab-count[data-v-1f29dc31]{background:#fff;color:#27333b}.event-card[data-v-1f29dc31]{border:1px solid #dbe3e8;border-radius:18px;background:#fff;box-shadow:0 10px 24px #2a343d12;-webkit-backdrop-filter:none;backdrop-filter:none}@media (min-width: 701px){.events-grid[data-v-1f29dc31]{grid-template-columns:1fr;gap:14px}.event-card[data-v-1f29dc31]{display:grid;grid-template-columns:205px minmax(0,1fr);grid-template-rows:auto auto auto 1fr;column-gap:0;align-items:start}.event-card-img-wrap[data-v-1f29dc31],.event-card-default-cover[data-v-1f29dc31]{grid-column:1;grid-row:1 / -1;width:205px;height:100%;min-height:174px;border-radius:0}.event-card-head[data-v-1f29dc31]{grid-column:2;grid-row:1;padding:15px 18px 0}.event-card-title[data-v-1f29dc31]{grid-column:2;grid-row:2}.event-card-desc[data-v-1f29dc31]{grid-column:2;grid-row:3}.event-card-meta[data-v-1f29dc31]{grid-column:2;grid-row:4;align-self:end;margin-bottom:16px}}.event-card[data-v-1f29dc31]:hover,.event-card--clickable[data-v-1f29dc31]:hover{transform:translateY(-2px);border-color:#c7d2da;box-shadow:0 14px 28px #2a343d1a}.event-card-img-wrap[data-v-1f29dc31],.event-card-default-cover[data-v-1f29dc31]{height:180px;background-color:#e4e9ed;box-shadow:none}.event-card-head[data-v-1f29dc31]{padding:15px 18px 0}.event-badge[data-v-1f29dc31],.event-meta-item[data-v-1f29dc31]{border:1px solid #dfe6eb;background:#f8fafb;box-shadow:none}.event-badge--active[data-v-1f29dc31]{border-color:#bfe8cf;background:#e6f7ed;color:#23834d;box-shadow:none}.event-badge--archived[data-v-1f29dc31]{background:#eef2f4;color:#65717b}.ec-btn[data-v-1f29dc31]{border:1px solid #dbe3e8;background:#fff;box-shadow:none}.ec-btn[data-v-1f29dc31]:hover{border-color:#c7d2da;background:#f6f8f9}.ec-btn--edit[data-v-1f29dc31]{border-color:#d8e5ff;background:#f4f8ff}.ec-btn--archive[data-v-1f29dc31],.ec-btn--restore[data-v-1f29dc31]{background:#fff}.ec-btn--delete[data-v-1f29dc31]{border-color:#fecaca;background:#fff5f5}.event-card-title[data-v-1f29dc31]{color:#202830}.event-card-desc[data-v-1f29dc31]{color:#74808a}.event-card-meta[data-v-1f29dc31]{border-top:1px solid #e8edf0}.events-empty[data-v-1f29dc31]{border:1px dashed #cbd5dc;background:#fff}.add-event-btn[data-v-1f29dc31],.header-add-event-btn[data-v-1f29dc31]{min-height:46px;padding:0 18px;border:1px solid #3e4d58;border-radius:12px;background:linear-gradient(145deg,#5c6771,#343e47);box-shadow:0 8px 20px #2d373f33}.add-event-btn[data-v-1f29dc31]:hover,.header-add-event-btn[data-v-1f29dc31]:hover{background:linear-gradient(145deg,#687580,#3d4852);transform:translateY(-1px)}.event-modal-box[data-v-1f29dc31]{width:min(680px,94vw);max-height:none;border:1px solid #dce3e8;border-radius:18px;background:#f7f9fa;box-shadow:0 18px 42px #222d363d}.ev-modal-banner[data-v-1f29dc31]{padding:20px 26px 18px;gap:12px;background:linear-gradient(145deg,#f8fafb,#e4e8ea);border-bottom:1px solid #d7dfe3}.ev-modal-banner-icon[data-v-1f29dc31]{width:40px;height:40px;border-radius:11px}.ev-modal-banner-title[data-v-1f29dc31]{color:#202a34;font-size:1.2rem;font-weight:700}.ev-modal-banner-sub[data-v-1f29dc31]{color:#66727e;font-size:.8rem}.ev-modal-banner-icon[data-v-1f29dc31]{background:#e1e6e8;color:#3f4a55}.ev-modal-banner-icon svg[data-v-1f29dc31]{stroke:currentColor}.ev-modal-close[data-v-1f29dc31]{top:12px;right:14px;border:1px solid #cbd5da;background:#fff;color:#3f4a55}.ev-modal-close[data-v-1f29dc31]:hover{border-color:#9da8af;background:#fff}.event-form[data-v-1f29dc31]{gap:14px;padding:20px 26px 18px;overflow:visible;background:#f7f9fa}.form-group[data-v-1f29dc31]{gap:7px}.form-label[data-v-1f29dc31]{font-size:.68rem}.form-row[data-v-1f29dc31]{gap:14px}.form-input[data-v-1f29dc31],.time-display[data-v-1f29dc31],.teacher-picker-trigger[data-v-1f29dc31]{min-height:42px;padding-top:9px;padding-bottom:9px;font-size:.86rem;background:linear-gradient(145deg,#fff,#f0f3f4);box-shadow:none}.fi-input[data-v-1f29dc31]{padding-left:34px!important}.form-textarea[data-v-1f29dc31]{min-height:70px;line-height:1.45}.teacher-picker-value[data-v-1f29dc31],.teacher-picker-placeholder[data-v-1f29dc31],.td-val[data-v-1f29dc31],.td-placeholder[data-v-1f29dc31]{font-size:.86rem}.teacher-picker-help[data-v-1f29dc31]{font-size:.68rem}.img-upload-area[data-v-1f29dc31]{min-height:84px;padding:14px 16px;gap:4px}.img-upload-icon-wrap[data-v-1f29dc31]{width:36px;height:36px;border-radius:9px}.img-upload-hint[data-v-1f29dc31]{font-size:.78rem}.img-upload-sub[data-v-1f29dc31]{font-size:.66rem}.img-upload-area--has[data-v-1f29dc31]{min-height:110px}.img-upload-preview[data-v-1f29dc31]{height:110px}.form-actions[data-v-1f29dc31]{gap:9px;padding-top:12px;margin-top:1px;justify-content:flex-end;padding-bottom:2px}.ev-submit-btn[data-v-1f29dc31]{min-height:40px;padding:9px 18px;font-size:.8rem}.ev-submit-btn[data-v-1f29dc31]{min-width:140px;justify-content:center;background:linear-gradient(145deg,#5c6771,#343e47);border:1px solid #3e4d58;box-shadow:0 6px 12px #2d373f2e}.ev-submit-btn[data-v-1f29dc31]:hover{opacity:1;background:linear-gradient(145deg,#687580,#3d4852)}@media (max-width: 720px){.event-modal-box[data-v-1f29dc31]{max-height:94vh;overflow-y:auto}.ev-modal-banner[data-v-1f29dc31]{padding-inline:18px}.event-form[data-v-1f29dc31]{padding:16px 18px 14px}}.events-loading[data-v-1f29dc31]{display:grid;gap:14px}.event-skeleton[data-v-1f29dc31]{display:grid;grid-template-columns:205px minmax(0,1fr);min-height:174px;overflow:hidden;border:1px solid #e1e7eb;border-radius:18px;background:#fff}.event-skeleton-cover[data-v-1f29dc31],.event-skeleton-line[data-v-1f29dc31],.event-skeleton-meta[data-v-1f29dc31]{background:linear-gradient(100deg,#edf1f3 25%,#f8fafb,#edf1f3 65%);background-size:220% 100%;animation:eventSkeletonShimmer-1f29dc31 1.35s ease-in-out infinite}.event-skeleton-cover[data-v-1f29dc31]{min-height:174px}.event-skeleton-content[data-v-1f29dc31]{display:flex;flex-direction:column;gap:12px;padding:18px}.event-skeleton-line[data-v-1f29dc31]{width:100%;height:12px;border-radius:6px}.event-skeleton-line--short[data-v-1f29dc31]{width:26%;height:22px;border-radius:999px}.event-skeleton-line--title[data-v-1f29dc31]{width:62%;height:18px}.event-skeleton-meta[data-v-1f29dc31]{width:72%;height:28px;margin-top:auto;border-radius:999px}@keyframes eventSkeletonShimmer-1f29dc31{0%{background-position:100% 0}to{background-position:-100% 0}}@media (max-width: 700px){.event-skeleton[data-v-1f29dc31]{grid-template-columns:1fr}.event-skeleton-cover[data-v-1f29dc31]{min-height:120px}}.layout[data-v-f61a80d3]{display:flex;height:100vh;overflow:hidden;background:#f5f6f8;font-family:Poppins,sans-serif}.sidebar[data-v-f61a80d3]{width:280px;min-width:280px;background:#fff;border-right:1px solid #ececec;display:flex;flex-direction:column;align-items:center;padding:28px 18px 24px;height:100vh;overflow-y:auto}.sidebar-profile[data-v-f61a80d3]{display:flex;flex-direction:column;align-items:center;gap:6px;margin-bottom:28px;text-align:center}.avatar-wrap[data-v-f61a80d3]{width:96px;height:96px;border-radius:50%;overflow:hidden;margin-bottom:10px;border:3px solid #c4c9cd}.avatar[data-v-f61a80d3]{width:100%;height:100%;object-fit:cover}.brand[data-v-f61a80d3]{font-size:1.05rem;font-weight:600;color:#4b5563}.role[data-v-f61a80d3]{font-size:.88rem;color:#444;font-weight:500}.email[data-v-f61a80d3]{font-size:.82rem;color:#888;word-break:break-all}.sidebar-nav[data-v-f61a80d3]{display:flex;flex-direction:column;gap:4px;width:100%;flex:1}.nav-item[data-v-f61a80d3]{display:flex;align-items:center;gap:10px;padding:11px 16px;border-radius:10px;font-size:.88rem;font-weight:400;color:#444;text-decoration:none;transition:background .18s,color .18s}.nav-item[data-v-f61a80d3]:hover{background:#f8fafc;color:#4b5563}.nav-item.active[data-v-f61a80d3]{background:#4b5563;color:#fff}.nav-icon[data-v-f61a80d3]{display:flex;align-items:center;flex-shrink:0}.logout-btn[data-v-f61a80d3]{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:11px 12px;background:#e63946;color:#fff;border:none;border-radius:10px;font-size:.85rem;font-weight:500;font-family:inherit;cursor:pointer;transition:background .2s;margin-top:16px}.logout-btn[data-v-f61a80d3]:hover{background:#c1121f}.main[data-v-f61a80d3]{flex:1;padding:40px 44px 32px;overflow-y:auto;min-width:0;display:flex;flex-direction:column}.main-header[data-v-f61a80d3]{margin-bottom:24px}.header-left[data-v-f61a80d3]{display:flex;flex-direction:column;gap:8px}.back-btn[data-v-f61a80d3]{display:inline-flex;align-items:center;gap:6px;background:none;border:1px solid #ddd;border-radius:8px;padding:6px 14px;font-size:.82rem;color:#555;font-family:inherit;cursor:pointer;transition:all .15s;width:fit-content}.back-btn[data-v-f61a80d3]:hover{border-color:#4b5563;color:#4b5563;background:#f8fafc}.page-title[data-v-f61a80d3]{font-size:2rem;font-weight:600;color:#4b5563;letter-spacing:-.5px;line-height:1.2}.page-sub[data-v-f61a80d3]{font-size:.95rem;color:#777;margin-top:4px}.nsw-body[data-v-f61a80d3]{display:grid;grid-template-columns:380px 1fr;gap:24px;flex:1;min-height:0}.form-card[data-v-f61a80d3]{background:#fff;border-radius:16px;box-shadow:0 2px 12px #00000012;padding:28px 28px 24px;display:flex;flex-direction:column;overflow-y:auto}.form-card-header[data-v-f61a80d3]{margin-bottom:20px}.form-card-badge[data-v-f61a80d3]{display:inline-block;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;padding:3px 10px;border-radius:20px;background:#f3f4f6;color:#4b5563;margin-bottom:6px}.form-card-title[data-v-f61a80d3]{font-size:1.2rem;font-weight:700;color:#111;margin:0 0 3px}.form-card-sub[data-v-f61a80d3]{font-size:.84rem;color:#888;margin:0}.sched-form[data-v-f61a80d3]{display:flex;flex-direction:column;gap:13px;margin-bottom:20px}.form-row-inline[data-v-f61a80d3]{display:grid;grid-template-columns:100px 1fr;align-items:center;gap:12px}.form-label[data-v-f61a80d3]{font-size:.95rem;font-weight:700;color:#111}.form-select-wrap[data-v-f61a80d3]{position:relative;display:flex;align-items:center}.form-select[data-v-f61a80d3]{width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #ccc;border-radius:10px;padding:9px 34px 9px 14px;font-size:.88rem;font-family:inherit;color:#333;background:#fff;cursor:pointer;outline:none;transition:border-color .15s}.form-select[data-v-f61a80d3]:focus{border-color:#9ca3af}.sel-arrow[data-v-f61a80d3]{position:absolute;right:12px;pointer-events:none;color:#666}.parallel-slot-divider[data-v-f61a80d3]{font-size:.78rem;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.06em;padding:6px 0 2px;border-top:1px solid #f3f4f6;margin-top:4px}.parallel-row[data-v-f61a80d3]{display:flex;align-items:center;gap:24px;margin-top:4px}.parallel-btn[data-v-f61a80d3]{display:flex;align-items:center;gap:8px;background:none;border:none;font-family:inherit;font-size:.92rem;font-weight:500;color:#444;cursor:pointer;padding:0;transition:color .15s}.parallel-btn.active[data-v-f61a80d3]{color:#4b5563;font-weight:600}.par-radio[data-v-f61a80d3]{width:22px;height:22px;border-radius:50%;border:2px solid #bbb;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s,border-color .15s}.par-radio.checked[data-v-f61a80d3]{background:#4b5563;border-color:#4b5563}.form-actions[data-v-f61a80d3]{display:flex;align-items:center;justify-content:flex-end;gap:12px}.reset-btn[data-v-f61a80d3]{background:none;border:1px solid #ccc;border-radius:8px;padding:8px 16px;font-family:inherit;font-size:.85rem;color:#666;cursor:pointer;transition:all .15s}.reset-btn[data-v-f61a80d3]:hover{border-color:#999;color:#333}.add-btn[data-v-f61a80d3]{display:flex;align-items:center;gap:6px;background:#4b5563;color:#fff;border:none;font-family:inherit;font-size:.88rem;font-weight:600;padding:10px 22px;border-radius:10px;cursor:pointer;transition:background .18s}.add-btn[data-v-f61a80d3]:hover:not(:disabled){background:#6b7280}.add-btn[data-v-f61a80d3]:disabled{opacity:.5;cursor:default}.flash-msg[data-v-f61a80d3]{display:flex;align-items:center;gap:8px;background:#e5e7eb;color:#4b5563;border-radius:8px;padding:10px 16px;font-size:.88rem;font-weight:600;margin-top:14px}.flash-enter-active[data-v-f61a80d3],.flash-leave-active[data-v-f61a80d3]{transition:opacity .3s}.flash-enter-from[data-v-f61a80d3],.flash-leave-to[data-v-f61a80d3]{opacity:0}.preview-card[data-v-f61a80d3]{background:#fff;border-radius:16px;box-shadow:0 2px 12px #00000012;padding:24px 24px 20px;display:flex;flex-direction:column;overflow:hidden}.preview-header[data-v-f61a80d3]{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.preview-title[data-v-f61a80d3]{font-size:1.1rem;font-weight:700;color:#111;margin:0}.sched-select-wrap[data-v-f61a80d3]{position:relative;display:flex;align-items:center}.sched-select[data-v-f61a80d3]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff;border:1px solid #ddd;border-radius:8px;padding:7px 32px 7px 12px;font-size:.85rem;font-family:inherit;color:#333;cursor:pointer;outline:none}.sched-select[data-v-f61a80d3]:focus{border-color:#9ca3af}.sched-select-arrow[data-v-f61a80d3]{position:absolute;right:10px;pointer-events:none;color:#666}.preview-grid-wrap[data-v-f61a80d3]{flex:1;overflow:auto}.sched-grid[data-v-f61a80d3]{width:100%;border-collapse:collapse;table-layout:fixed}.sched-grid th[data-v-f61a80d3]{background:#4b5563;color:#fff;font-size:.78rem;font-weight:600;padding:10px 6px;text-align:center;white-space:nowrap}.th-time[data-v-f61a80d3]{width:90px}.sched-grid td[data-v-f61a80d3]{border:1px solid #ececec;padding:0;vertical-align:middle;height:56px}.td-time[data-v-f61a80d3]{background:#fff;text-align:center;font-size:.72rem;color:#555;font-weight:500;white-space:nowrap;border:1px solid #ececec}.td-cell[data-v-f61a80d3]{position:relative}.sched-entry[data-v-f61a80d3]{margin:0;position:absolute;top:3px;right:3px;bottom:3px;left:3px;border-radius:7px;padding:5px 7px;display:flex;flex-direction:column;gap:2px;overflow:hidden}.entry-teacher[data-v-f61a80d3]{font-size:.72rem;font-weight:700}.entry-subject[data-v-f61a80d3]{font-size:.65rem;opacity:.9}.entry-section-rows[data-v-f61a80d3]{display:flex;flex-direction:column;gap:2px;margin-top:3px;border-top:1px solid rgba(255,255,255,.25);padding-top:3px}.entry-section-row[data-v-f61a80d3]{display:flex;align-items:center;justify-content:space-between;gap:4px}.entry-section-badge[data-v-f61a80d3]{font-size:.58rem;font-weight:700;text-transform:uppercase;opacity:.9}.entry-room[data-v-f61a80d3]{font-size:.6rem;opacity:.75;text-align:right}.entry-time-range[data-v-f61a80d3]{font-size:.58rem;opacity:.7;font-style:italic;margin-top:2px}.click-to-add[data-v-f61a80d3]{display:block}.color-green[data-v-f61a80d3]{background:#2d8a59;color:#fff}.color-yellow[data-v-f61a80d3]{background:#e9c46a;color:#5a3e00}.color-blue[data-v-f61a80d3]{background:#4a90d9;color:#fff}.color-purple[data-v-f61a80d3]{background:#7b5ea7;color:#fff}.color-red[data-v-f61a80d3]{background:#e63946;color:#fff}.modal-overlay[data-v-f61a80d3]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:1000}.logout-modal-box[data-v-f61a80d3]{background:#fff;border-radius:20px;padding:36px 40px 32px;width:360px;max-width:94vw;display:flex;flex-direction:column;align-items:center;gap:10px;box-shadow:0 16px 48px #0000002e;text-align:center}.logout-modal-icon[data-v-f61a80d3]{width:68px;height:68px;border-radius:50%;background:#ffeaea;display:flex;align-items:center;justify-content:center;margin-bottom:4px}.logout-modal-title[data-v-f61a80d3]{font-size:1.45rem;font-weight:700;color:#111;margin:0}.logout-modal-sub[data-v-f61a80d3]{font-size:.9rem;color:#777;margin:0 0 8px}.logout-modal-actions[data-v-f61a80d3]{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:6px;width:100%}.logout-cancel-btn[data-v-f61a80d3]{background:none;border:none;font-family:inherit;font-size:1rem;font-weight:600;color:#e63946;cursor:pointer;padding:8px 18px;border-radius:10px}.logout-cancel-btn[data-v-f61a80d3]:hover{background:#ffeaea}.logout-confirm-btn[data-v-f61a80d3]{background:#4b5563;color:#fff;border:none;font-family:inherit;font-size:1rem;font-weight:600;padding:10px 32px;border-radius:10px;cursor:pointer}.logout-confirm-btn[data-v-f61a80d3]:hover{background:#6b7280}.layout[data-v-3ac28844]{display:flex;height:100vh;overflow:hidden;background:#f5f6f8;font-family:Poppins,sans-serif}.sidebar[data-v-3ac28844]{width:280px;min-width:280px;background:#fff;border-right:1px solid #ececec;display:flex;flex-direction:column;align-items:center;padding:28px 18px 24px;position:sticky;top:0;height:100vh;overflow-y:auto}.sidebar-profile[data-v-3ac28844]{display:flex;flex-direction:column;align-items:center;gap:6px;margin-bottom:28px;text-align:center}.avatar-wrap[data-v-3ac28844]{width:96px;height:96px;border-radius:50%;overflow:hidden;margin-bottom:10px;border:3px solid #c4c9cd}.avatar[data-v-3ac28844]{width:100%;height:100%;object-fit:cover}.brand[data-v-3ac28844]{font-size:1.05rem;font-weight:600;color:#4b5563}.role[data-v-3ac28844]{font-size:.88rem;color:#444;font-weight:500}.email[data-v-3ac28844]{font-size:.82rem;color:#888;word-break:break-all}.sidebar-nav[data-v-3ac28844]{display:flex;flex-direction:column;gap:4px;width:100%;flex:1}.nav-item[data-v-3ac28844]{display:flex;align-items:center;gap:10px;padding:11px 16px;border-radius:10px;font-size:.88rem;font-weight:400;color:#444;text-decoration:none;cursor:pointer;transition:background .18s,color .18s}.nav-item[data-v-3ac28844]:hover{background:#f8fafc;color:#4b5563}.nav-item.active[data-v-3ac28844]{background:#4b5563;color:#fff}.nav-item.active .nav-icon[data-v-3ac28844]{color:#fff}.nav-icon[data-v-3ac28844]{display:flex;align-items:center;flex-shrink:0}.logout-btn[data-v-3ac28844]{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:11px 12px;background:#e63946;color:#fff;border:none;border-radius:10px;font-size:.85rem;font-weight:500;font-family:inherit;cursor:pointer;transition:background .2s;margin-top:16px}.logout-btn[data-v-3ac28844]:hover{background:#c1121f}.main[data-v-3ac28844]{flex:1;padding:40px 44px 32px;overflow-y:auto;min-width:0;display:flex;flex-direction:column}.main-header[data-v-3ac28844]{margin-bottom:24px}.page-title[data-v-3ac28844]{font-size:2rem;font-weight:600;color:#4b5563;letter-spacing:-.5px;line-height:1.2}.page-sub[data-v-3ac28844]{font-size:.95rem;color:#777;margin-top:4px}.schedule-card[data-v-3ac28844]{background:#fff;border-radius:16px;box-shadow:0 2px 12px #00000012;padding:28px 28px 20px;display:flex;flex-direction:column}.sched-topbar[data-v-3ac28844]{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px;flex-wrap:wrap}.sched-grid-title[data-v-3ac28844]{font-size:1.65rem;font-weight:700;color:#111;margin:0 0 2px}.sched-grid-sub[data-v-3ac28844]{font-size:.85rem;color:#666;margin:0;font-weight:400;transition:all .3s ease}.sched-grid-sub.teacher-selected[data-v-3ac28844]{font-size:.92rem;color:#4b5563;font-weight:600;background:linear-gradient(120deg,#f3f4f6,#e1f5fe);padding:10px 14px;border-left:4px solid #9ca3af;border-radius:6px;box-shadow:0 2px 8px #535b6426}.sched-grid-meta[data-v-3ac28844],.sched-topbar-right[data-v-3ac28844]{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.sched-select-wrap[data-v-3ac28844]{position:relative;display:flex;align-items:center}.sched-select[data-v-3ac28844]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff;border:1px solid #ddd;border-radius:8px;padding:7px 32px 7px 12px;font-size:.85rem;font-family:inherit;color:#333;cursor:pointer;outline:none}.sched-select[data-v-3ac28844]:focus{border-color:#9ca3af}.sched-select-arrow[data-v-3ac28844]{position:absolute;right:10px;pointer-events:none;color:#666}.teacher-select-wrap[data-v-3ac28844]{padding:3px 6px;background:linear-gradient(135deg,#f3f4f6,#f1f8f6);border-radius:10px;border:2px solid #9ca3af;box-shadow:0 4px 12px #535b6433;transition:all .2s ease}.teacher-select-wrap[data-v-3ac28844]:hover{border-color:#4b5563;box-shadow:0 6px 16px #30353a40;background:linear-gradient(135deg,#d8dcdf,#f3f4f6)}.teacher-select[data-v-3ac28844]{background:linear-gradient(to bottom,#f8fffe,#eef9f7);border:1px solid #9ca3af!important;border-radius:8px;padding:8px 32px 8px 13px;font-size:.88rem;font-weight:500;color:#4b5563;box-shadow:inset 0 1px 3px #30353a14}.teacher-select[data-v-3ac28844]:hover{background:linear-gradient(to bottom,#f0fdf9,#e8faf6);color:#4b5563}.teacher-select[data-v-3ac28844]:focus{border-color:#4b5563!important;outline:2px solid rgba(83,91,100,.4);outline-offset:1px;color:#4b5563}.teacher-select-wrap .sched-select-arrow[data-v-3ac28844]{color:#9ca3af;font-weight:600}.new-sched-btn[data-v-3ac28844]{display:flex;align-items:center;gap:6px;background:#4b5563;color:#fff;border:none;border-radius:8px;padding:8px 16px;font-size:.85rem;font-weight:500;font-family:inherit;cursor:pointer;transition:background .18s}.new-sched-btn[data-v-3ac28844]:hover{background:#6b7280}.icon-btn[data-v-3ac28844]{background:none;border:1px solid #ddd;border-radius:8px;padding:6px 10px;cursor:pointer;color:#555;display:flex;align-items:center;transition:border-color .15s,color .15s}.icon-btn[data-v-3ac28844]:hover{border-color:#9ca3af;color:#4b5563}.sched-pagination[data-v-3ac28844]{display:flex;align-items:center;justify-content:center;gap:6px;margin-bottom:16px}.page-arrow[data-v-3ac28844]{background:none;border:none;font-size:1.2rem;color:#888;cursor:pointer;padding:2px 6px;border-radius:4px;transition:color .15s}.page-arrow[data-v-3ac28844]:disabled{opacity:.3;cursor:default}.page-arrow[data-v-3ac28844]:not(:disabled):hover{color:#4b5563}.page-dot[data-v-3ac28844]{padding:4px 12px;border-radius:20px;background:#e8f0eb;color:#555;font-size:.78rem;font-weight:500;cursor:pointer;transition:background .2s,color .2s;white-space:nowrap;-webkit-user-select:none;user-select:none;line-height:1.6}.page-dot[data-v-3ac28844]:hover{background:#c4c9cd;color:#4b5563}.page-dot.active[data-v-3ac28844]{background:#4b5563;color:#fff;border-radius:20px;width:auto}.sched-grid-wrap[data-v-3ac28844]{width:100%;overflow-x:auto;margin-top:8px;position:relative}.sched-grid[data-v-3ac28844]{width:100%;border-collapse:collapse;table-layout:fixed;min-width:800px}.sched-grid th[data-v-3ac28844]{background:#4b5563;color:#fff;font-size:.85rem;font-weight:600;padding:12px 10px;text-align:center;white-space:nowrap;position:sticky;top:0;z-index:10}.th-time[data-v-3ac28844]{width:100px;position:sticky;left:0;z-index:20;background:#4b5563}.sched-grid tbody tr[data-v-3ac28844]{height:40px}.sched-grid tbody tr.half-hour .td-time[data-v-3ac28844]{background:#f4f5f6}.sched-grid tbody tr.half-hour td[data-v-3ac28844]{border-top:1px dashed #eee}.sched-grid td[data-v-3ac28844]{border:1px solid #ececec;padding:0;vertical-align:top;position:relative}.sched-grid td.td-time[data-v-3ac28844]{background:#f8f9fa;text-align:center;vertical-align:middle;font-size:.8rem;color:#4b5563;font-weight:600;white-space:nowrap;border:1px solid #ececec;position:sticky;left:0;z-index:15;width:100px;padding:0 8px}.sched-grid td.td-time[data-v-3ac28844]:after{content:"";position:absolute;top:0;right:-2px;height:100%;width:2px;background:linear-gradient(to right,rgba(0,0,0,.05),transparent);pointer-events:none}.time-row:hover .td-time[data-v-3ac28844]{background:#e9ecef}.td-cell[data-v-3ac28844]{cursor:pointer;transition:background .15s;padding:0;position:relative}.td-cell[data-v-3ac28844]:hover{background:#f4f5f5}.td-cell.has-entry[data-v-3ac28844]{padding:0}.td-cell.readonly-entry-cell[data-v-3ac28844]{cursor:default}.td-cell.readonly-entry-cell[data-v-3ac28844]:hover{background:inherit}.sched-entry[data-v-3ac28844]{position:absolute;top:3px;left:3px;right:3px;border-radius:6px;padding:6px 8px;display:flex;flex-direction:column;justify-content:flex-start;cursor:pointer;transition:filter .15s;gap:2px;box-sizing:border-box;overflow:hidden}.sched-entry[data-v-3ac28844]:hover{filter:brightness(.95)}.sched-entry.entry-readonly[data-v-3ac28844]:hover{filter:none}.subbed-badge[data-v-3ac28844]{position:absolute;top:6px;right:6px;z-index:1;padding:2px 6px;border-radius:999px;background:#b42318;color:#fff;font-size:.62rem;font-weight:800;line-height:1.3;letter-spacing:.04em;max-width:58%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;box-shadow:0 1px 2px #0000002e}.entry-teacher[data-v-3ac28844]{font-size:.92rem;font-weight:700;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:60px}.entry-subject[data-v-3ac28844]{font-size:.84rem;opacity:.9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:60px}.entry-time-range[data-v-3ac28844]{font-size:.76rem;opacity:.75;font-style:italic;margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:60px}.entry-section-rows[data-v-3ac28844]{display:flex;flex-direction:column;gap:2px;margin-top:4px;border-top:1px solid rgba(255,255,255,.25);padding-top:4px}.entry-section-row[data-v-3ac28844]{display:flex;align-items:center;justify-content:space-between;gap:4px}.entry-section-badge[data-v-3ac28844]{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;opacity:.9;white-space:nowrap;flex-shrink:0;background:#fff3;padding:1px 4px;border-radius:3px}.entry-room[data-v-3ac28844]{font-size:.78rem;opacity:.75;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:60px}.entry-edit-hint[data-v-3ac28844]{font-size:.6rem;opacity:0;transition:opacity .15s;font-style:italic;position:absolute;bottom:2px;right:6px;background:#0000004d;padding:1px 4px;border-radius:3px;color:#fff;z-index:2}.sched-entry:hover .entry-edit-hint[data-v-3ac28844]{opacity:.9}.entry-timestamp[data-v-3ac28844]{font-size:.55rem;opacity:.6;font-style:italic;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:absolute;bottom:2px;left:6px;background:#0003;padding:1px 4px;border-radius:3px;color:#ffffffe6;z-index:2}.click-to-add[data-v-3ac28844]{display:flex;align-items:center;justify-content:center;height:100%;text-align:center;font-size:.75rem;color:#aaa;-webkit-user-select:none;user-select:none;padding:8px}.form-value-locked[data-v-3ac28844]{display:flex;align-items:center;padding:6px 12px;border-radius:8px;background:#f8fafc;border:1px solid #e5e7eb;font-size:.875rem;color:#4b5563;font-weight:600;min-width:0;flex:1}.schedule-for-text[data-v-3ac28844]{display:flex;align-items:center;justify-content:center;text-align:center;justify-self:center;min-width:0;flex:1;width:min(100%,520px);min-height:42px;padding:10px 14px;border-left:5px solid #626a72;border-radius:10px;background:linear-gradient(135deg,#f3f4f6,#d7efe4);box-shadow:0 6px 14px #2d8a5924;font-size:.94rem;color:#41484f;font-weight:800;letter-spacing:.01em}.free-time-cell[data-v-3ac28844]{background:#ede9fe}.free-time-cell .click-to-add[data-v-3ac28844]{color:#6d28d9}.color-green[data-v-3ac28844]{background:#1f6b45;color:#fff}.color-yellow[data-v-3ac28844]{background:#e9c46a;color:#5a3e00}.color-orange[data-v-3ac28844]{background:#f4a261;color:#5a2d00}.color-blue[data-v-3ac28844]{background:#4a90d9;color:#fff}.color-gray[data-v-3ac28844]{background:#9ca3af;color:#1f2937}.consult-entry[data-v-3ac28844]{cursor:default;pointer-events:none}.consult-cell[data-v-3ac28844]{cursor:default!important}.consult-cell[data-v-3ac28844]:hover{background:inherit!important}.consult-btn[data-v-3ac28844]{background:#4a90d9!important;color:#fff!important;border-color:#4a90d9!important}.consult-btn[data-v-3ac28844]:hover{background:#357abd!important}.consult-modal-box[data-v-3ac28844]{max-width:480px}.consult-slots-list[data-v-3ac28844]{display:flex;flex-direction:column;gap:8px;padding:4px 24px 12px}.consult-slot-item[data-v-3ac28844]{display:flex;align-items:center;gap:10px;background:#f0f6ff;border:1px solid #c8dff8;border-radius:8px;padding:8px 12px}.consult-slot-day[data-v-3ac28844]{font-weight:700;font-size:.82rem;color:#4b5563;min-width:36px}.consult-slot-time[data-v-3ac28844]{flex:1;font-size:.82rem;color:#333}.consult-slot-dur[data-v-3ac28844]{font-size:.78rem;color:#666;white-space:nowrap}.consult-slot-actions[data-v-3ac28844]{display:flex;gap:6px}.consult-edit-btn[data-v-3ac28844]{padding:3px 10px;border-radius:5px;border:1px solid #4a90d9;background:transparent;color:#4a90d9;font-size:.78rem;cursor:pointer}.consult-edit-btn[data-v-3ac28844]:hover{background:#e8f0fb}.consult-del-btn[data-v-3ac28844]{padding:3px 8px;border-radius:5px;border:1px solid #e63946;background:transparent;color:#e63946;cursor:pointer;display:flex;align-items:center}.consult-del-btn[data-v-3ac28844]:hover{background:#fde8e8}.consult-empty[data-v-3ac28844]{padding:8px 24px 12px;color:#888;font-size:.84rem;font-style:italic}.consult-form-title[data-v-3ac28844]{padding:0 24px 8px;font-weight:600;font-size:.88rem;color:#4b5563}.limit-warning[data-v-3ac28844]{color:#e63946;font-weight:600}.limit-ok[data-v-3ac28844]{color:#4b5563}.color-purple[data-v-3ac28844]{background:#7b5ea7;color:#fff}.color-red[data-v-3ac28844]{background:#e63946;color:#fff}.modal-overlay[data-v-3ac28844]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:1000}.sched-modal-box[data-v-3ac28844]{background:#fff;border-radius:20px;padding:32px 36px 28px;width:500px;max-width:96vw;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 16px 48px #0000002e}.sched-modal-header[data-v-3ac28844]{margin-bottom:20px}.sched-modal-mode-badge[data-v-3ac28844]{display:inline-block;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;padding:3px 10px;border-radius:20px;margin-bottom:6px}.badge-add[data-v-3ac28844]{background:#f3f4f6;color:#4b5563}.badge-edit[data-v-3ac28844]{background:#fff3cd;color:#7a5500}.sched-modal-title[data-v-3ac28844]{font-size:1.25rem;font-weight:700;color:#4b5563;margin:0 0 3px}.sched-modal-sub[data-v-3ac28844]{font-size:.84rem;color:#888;margin:0}.sched-form[data-v-3ac28844]{display:flex;flex-direction:column;gap:13px;margin-bottom:22px}.form-row-inline[data-v-3ac28844]{display:grid;grid-template-columns:100px 1fr;align-items:center;gap:12px}.form-row-inline.schedule-for-row[data-v-3ac28844]{grid-template-columns:1fr}.form-label[data-v-3ac28844]{font-size:.95rem;font-weight:700;color:#111}.form-select-wrap[data-v-3ac28844]{position:relative;display:flex;align-items:center}.form-select[data-v-3ac28844]{width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #ccc;border-radius:10px;padding:9px 34px 9px 14px;font-size:.88rem;font-family:inherit;color:#333;background:#fff;cursor:pointer;outline:none;transition:border-color .15s}.form-select[data-v-3ac28844]:focus{border-color:#9ca3af}.form-input[data-v-3ac28844]{width:100%;border:1px solid #ccc;border-radius:10px;padding:9px 14px;font-size:.88rem;font-family:inherit;color:#333;background:#fff;outline:none;transition:border-color .15s}.form-input[data-v-3ac28844]:focus{border-color:#9ca3af}.sel-arrow[data-v-3ac28844]{position:absolute;right:12px;pointer-events:none;color:#666}.campus-toggle[data-v-3ac28844]{display:inline-flex;gap:8px}.campus-btn[data-v-3ac28844]{border:1px solid #d4d4d4;background:#f8f9fa;color:#666;border-radius:8px;padding:7px 12px;font-size:.8rem;font-weight:600;font-family:inherit;cursor:pointer;transition:all .15s}.campus-btn.active[data-v-3ac28844]{background:#f3f4f6;color:#4b5563;border-color:#9ca3af}.parallel-slot-divider[data-v-3ac28844]{font-size:.78rem;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.06em;padding:6px 0 2px;border-top:1px solid #f3f4f6;margin-top:4px}.parallel-row[data-v-3ac28844]{display:flex;align-items:center;gap:24px;margin-top:4px}.parallel-btn[data-v-3ac28844]{display:flex;align-items:center;gap:8px;background:none;border:none;font-family:inherit;font-size:.92rem;font-weight:500;color:#444;cursor:pointer;padding:0;transition:color .15s}.parallel-btn.active[data-v-3ac28844]{color:#4b5563;font-weight:600}.par-radio[data-v-3ac28844]{width:22px;height:22px;border-radius:50%;border:2px solid #bbb;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s,border-color .15s}.par-radio.checked[data-v-3ac28844]{background:#4b5563;border-color:#4b5563}.sched-modal-actions[data-v-3ac28844]{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:4px}.clear-slot-btn[data-v-3ac28844]{margin-right:auto;display:flex;align-items:center;gap:6px;background:none;border:1px solid #e63946;color:#e63946;font-family:inherit;font-size:.85rem;font-weight:600;padding:7px 14px;border-radius:8px;cursor:pointer;transition:background .15s}.clear-slot-btn[data-v-3ac28844]:hover{background:#ffeaea}.cancel-btn-text[data-v-3ac28844]{background:none;border:none;color:#e63946;font-family:inherit;font-size:1rem;font-weight:600;cursor:pointer;padding:8px 12px;transition:opacity .15s}.cancel-btn-text[data-v-3ac28844]:hover{opacity:.75}.save-btn[data-v-3ac28844]{display:flex;align-items:center;gap:6px;background:#4b5563;color:#fff;border:none;font-family:inherit;font-size:.88rem;font-weight:600;padding:10px 26px;border-radius:10px;cursor:pointer;transition:background .18s}.save-btn[data-v-3ac28844]:hover:not(:disabled){background:#6b7280}.save-btn[data-v-3ac28844]:disabled{opacity:.5;cursor:default}.panel-overlay[data-v-3ac28844]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000004d;z-index:900;display:flex;justify-content:flex-end}.add-panel[data-v-3ac28844]{width:420px;max-width:96vw;background:#fff;height:100vh;display:flex;flex-direction:column;box-shadow:-4px 0 32px #00000024;overflow:hidden}.panel-header[data-v-3ac28844]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:24px 28px 20px;border-bottom:1px solid #f0f0f0;flex-shrink:0}.panel-badge[data-v-3ac28844]{display:inline-block;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;padding:3px 10px;border-radius:20px;background:#f3f4f6;color:#4b5563;margin-bottom:6px}.panel-title[data-v-3ac28844]{font-size:1.2rem;font-weight:700;color:#111;margin:0 0 3px}.panel-sub[data-v-3ac28844]{font-size:.84rem;color:#888;margin:0}.panel-close[data-v-3ac28844]{background:none;border:1px solid #ddd;border-radius:8px;padding:6px 8px;cursor:pointer;color:#555;flex-shrink:0;display:flex;align-items:center;transition:all .15s}.panel-close[data-v-3ac28844]:hover{border-color:#e63946;color:#e63946}.panel-form[data-v-3ac28844]{display:flex;flex-direction:column;gap:13px;padding:20px 28px 8px;overflow-y:auto;flex:1}.panel-footer[data-v-3ac28844]{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:14px 28px 20px;border-top:1px solid #f0f0f0;flex-shrink:0;background:#fff}.reset-btn[data-v-3ac28844]{background:none;border:1px solid #ccc;border-radius:8px;padding:8px 16px;font-family:inherit;font-size:.85rem;color:#666;cursor:pointer;transition:all .15s}.reset-btn[data-v-3ac28844]:hover{border-color:#999;color:#333}.time-error[data-v-3ac28844]{display:flex;align-items:center;gap:6px;color:#e63946;font-size:.8rem;font-weight:500;background:#ffeaea;border-radius:8px;padding:8px 12px;margin:0 28px}.flash-msg[data-v-3ac28844]{display:flex;align-items:center;gap:8px;background:#e5e7eb;color:#4b5563;border-radius:8px;padding:10px 16px;font-size:.88rem;font-weight:600;margin:4px 28px 0}.flash-enter-active[data-v-3ac28844],.flash-leave-active[data-v-3ac28844]{transition:opacity .3s}.flash-enter-from[data-v-3ac28844],.flash-leave-to[data-v-3ac28844]{opacity:0}.panel-enter-active[data-v-3ac28844]{transition:opacity .25s ease}.panel-leave-active[data-v-3ac28844]{transition:opacity .2s ease}.panel-enter-from[data-v-3ac28844],.panel-leave-to[data-v-3ac28844]{opacity:0}.panel-enter-active .add-panel[data-v-3ac28844]{animation:slideInPanel-3ac28844 .25s ease}.panel-leave-active .add-panel[data-v-3ac28844]{animation:slideOutPanel-3ac28844 .2s ease}@keyframes slideInPanel-3ac28844{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes slideOutPanel-3ac28844{0%{transform:translate(0)}to{transform:translate(100%)}}.add-year-modal-box[data-v-3ac28844]{background:#fff;border-radius:20px;padding:32px 36px 28px;width:380px;max-width:96vw;box-shadow:0 16px 48px #0000002e}.logout-modal-box[data-v-3ac28844]{background:#fff;border-radius:20px;padding:36px 40px 32px;width:360px;max-width:94vw;display:flex;flex-direction:column;align-items:center;gap:10px;box-shadow:0 16px 48px #0000002e;text-align:center}.logout-modal-icon[data-v-3ac28844]{width:68px;height:68px;border-radius:50%;background:#ffeaea;display:flex;align-items:center;justify-content:center;margin-bottom:4px}.logout-modal-title[data-v-3ac28844]{font-size:1.45rem;font-weight:700;color:#111;margin:0}.logout-modal-sub[data-v-3ac28844]{font-size:.9rem;color:#777;margin:0 0 8px}.logout-modal-actions[data-v-3ac28844]{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:6px;width:100%}.logout-cancel-btn[data-v-3ac28844]{background:none;border:none;font-family:inherit;font-size:1rem;font-weight:600;color:#e63946;cursor:pointer;padding:8px 18px;border-radius:10px}.logout-cancel-btn[data-v-3ac28844]:hover{background:#ffeaea}.logout-confirm-btn[data-v-3ac28844]{background:#4b5563;color:#fff;border:none;font-family:inherit;font-size:1rem;font-weight:600;padding:10px 32px;border-radius:10px;cursor:pointer}.logout-confirm-btn[data-v-3ac28844]:hover{background:#6b7280}.swal-cit-popup{font-family:Poppins,sans-serif!important;border-radius:18px!important;padding:32px 28px 24px!important;box-shadow:0 12px 48px #0000002e!important}.swal-cit-title{font-family:Poppins,sans-serif!important;font-size:1.15rem!important;font-weight:700!important;color:#1a1a2e!important;margin-bottom:8px!important}.swal-cit-btn{font-family:Poppins,sans-serif!important;font-size:.9rem!important;font-weight:600!important;border-radius:10px!important;padding:9px 28px!important;letter-spacing:.02em!important}.layout[data-v-b4465477]{display:flex;height:100vh;overflow:hidden;background:#f5f6f8;font-family:Poppins,sans-serif}.sidebar[data-v-b4465477]{width:280px;min-width:280px;background:#fff;border-right:1px solid #ececec;display:flex;flex-direction:column;align-items:center;padding:28px 18px 24px;position:sticky;top:0;height:100vh;overflow-y:auto}.sidebar-profile[data-v-b4465477]{display:flex;flex-direction:column;align-items:center;gap:6px;margin-bottom:28px;text-align:center}.avatar-wrap[data-v-b4465477]{width:96px;height:96px;border-radius:50%;overflow:hidden;margin-bottom:10px;border:3px solid #c4c9cd}.avatar[data-v-b4465477]{width:100%;height:100%;object-fit:cover}.brand[data-v-b4465477]{font-size:1.05rem;font-weight:600;color:#4b5563}.role[data-v-b4465477]{font-size:.88rem;color:#444;font-weight:500}.email[data-v-b4465477]{font-size:.82rem;color:#888;word-break:break-all}.sidebar-nav[data-v-b4465477]{display:flex;flex-direction:column;gap:4px;width:100%;flex:1}.nav-item[data-v-b4465477]{display:flex;align-items:center;gap:10px;padding:11px 16px;border-radius:10px;font-size:.88rem;font-weight:400;color:#444;text-decoration:none;transition:background .18s,color .18s;cursor:pointer}.nav-item[data-v-b4465477]:hover{background:#f8fafc;color:#4b5563}.nav-item.active[data-v-b4465477]{background:#4b5563;color:#fff}.nav-item.active .nav-icon[data-v-b4465477]{color:#fff}.nav-icon[data-v-b4465477]{display:flex;align-items:center;flex-shrink:0}.logout-btn[data-v-b4465477]{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:11px 12px;background:#e63946;color:#fff;border:none;border-radius:10px;font-size:.85rem;font-weight:500;font-family:inherit;cursor:pointer;transition:background .2s;margin-top:16px}.logout-btn[data-v-b4465477]:hover{background:#c1121f}.main[data-v-b4465477]{flex:1;padding:40px 44px 32px;overflow-y:auto;min-width:0;display:flex;flex-direction:column;height:100vh}.main-header[data-v-b4465477]{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:32px}.page-title[data-v-b4465477]{font-size:2rem;font-weight:600;color:#4b5563;letter-spacing:-.5px;line-height:1.2}.page-sub[data-v-b4465477]{font-size:.95rem;color:#777;margin-top:4px}.settings-body[data-v-b4465477]{display:flex;flex-direction:column;gap:24px;width:100%}.settings-card[data-v-b4465477]{background:#fff;border-radius:16px;padding:28px 32px 30px;box-shadow:0 2px 10px #0000000f}.settings-card-header[data-v-b4465477]{display:flex;align-items:center;gap:12px;margin-bottom:24px}.settings-card-header--between[data-v-b4465477]{justify-content:space-between;margin-bottom:0}.settings-card-header-left[data-v-b4465477]{display:flex;align-items:center;gap:12px}.settings-card-icon[data-v-b4465477]{width:40px;height:40px;border-radius:10px;background:#f3f4f6;display:flex;align-items:center;justify-content:center;flex-shrink:0}.settings-card-title[data-v-b4465477]{font-size:1.1rem;font-weight:700;color:#111;margin:0;line-height:1.3}.settings-card-sub[data-v-b4465477]{font-size:.82rem;color:#888;margin:3px 0 0}.settings-form[data-v-b4465477]{display:flex;flex-direction:column;gap:18px}.settings-row[data-v-b4465477]{display:grid;grid-template-columns:1fr 1fr;gap:20px}.settings-group[data-v-b4465477]{display:flex;flex-direction:column;gap:7px}.settings-label[data-v-b4465477]{font-size:.82rem;font-weight:600;color:#555;letter-spacing:.1px}.settings-input[data-v-b4465477]{font-family:inherit;font-size:.9rem;color:#111;background:#fff;border:1.5px solid #dde2e8;border-radius:8px;padding:10px 14px;outline:none;width:100%;transition:border-color .18s,box-shadow .18s}.settings-input[data-v-b4465477]:focus{border-color:#6b7280;box-shadow:0 0 0 3px #535b6417}.pw-input-wrap[data-v-b4465477]{position:relative;display:flex;align-items:center}.pw-input-wrap .settings-input[data-v-b4465477]{padding-right:42px}.pw-eye[data-v-b4465477]{position:absolute;right:12px;background:none;border:none;cursor:pointer;color:#aaa;display:flex;align-items:center;padding:0;transition:color .15s}.pw-eye[data-v-b4465477]:hover{color:#4b5563}.otp-wrap[data-v-b4465477]{display:flex;align-items:stretch;gap:0}.otp-wrap .settings-input[data-v-b4465477]{border-radius:8px 0 0 8px;border-right:none}.otp-btn[data-v-b4465477]{font-family:inherit;font-size:.78rem;font-weight:600;white-space:nowrap;background:#f0f0f0;color:#444;border:1.5px solid #dde2e8;border-left:none;border-radius:0 8px 8px 0;padding:0 16px;cursor:pointer;transition:background .15s,color .15s}.otp-btn[data-v-b4465477]:hover{background:#4b5563;color:#fff}.otp-btn[data-v-b4465477]:disabled,.update-pw-btn[data-v-b4465477]:disabled{cursor:not-allowed;opacity:.65}.otp-expiry[data-v-b4465477]{font-size:.75rem;color:#b45309;font-weight:500}.settings-msg[data-v-b4465477]{font-size:.83rem;font-weight:500;padding:9px 14px;border-radius:8px}.settings-msg--error[data-v-b4465477]{background:#ffeaea;color:#e63946}.settings-msg--success[data-v-b4465477]{background:#d8dcdf;color:#4f575f}.settings-form-footer[data-v-b4465477]{display:flex;justify-content:center;padding-top:4px}.update-pw-btn[data-v-b4465477]{background:#4b5563;color:#fff;border:none;font-family:inherit;font-size:.95rem;font-weight:600;padding:12px 48px;border-radius:10px;cursor:pointer;transition:background .18s;box-shadow:0 4px 14px #30353a33}.update-pw-btn[data-v-b4465477]:hover{background:#6b7280}.swal-overlay[data-v-b4465477]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:9999}.swal-box[data-v-b4465477]{background:#fff;border-radius:20px;padding:48px 44px 38px;width:480px;max-width:94vw;text-align:center;box-shadow:0 8px 40px #0000002e;display:flex;flex-direction:column;align-items:center;gap:14px}.swal-icon[data-v-b4465477]{width:84px;height:84px;background:#fff0f0;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:6px}.swal-title[data-v-b4465477]{font-size:1.35rem;font-weight:700;color:#111;margin:0}.swal-sub[data-v-b4465477]{font-size:.97rem;color:#888;margin:0;line-height:1.65}.swal-actions[data-v-b4465477]{display:flex;gap:12px;margin-top:10px;width:100%}.swal-cancel[data-v-b4465477]{flex:1;padding:10px 0;border-radius:8px;border:1.5px solid #e63946;background:#fff;color:#e63946;font-weight:600;font-size:.92rem;cursor:pointer;transition:background .15s}.swal-cancel[data-v-b4465477]:hover{background:#fff0f0}.swal-continue[data-v-b4465477]{flex:1;padding:10px 0;border-radius:8px;border:none;background:#4b5563;color:#fff;font-weight:600;font-size:.92rem;cursor:pointer;transition:background .15s}.swal-continue[data-v-b4465477]:hover{background:#6b7280}.toggle-switch[data-v-b4465477]{position:relative;width:50px;height:27px;border-radius:20px;background:#ccc;border:none;cursor:pointer;transition:background .25s;flex-shrink:0;padding:0;outline:none}.toggle-switch--on[data-v-b4465477]{background:#4b5563}.toggle-thumb[data-v-b4465477]{position:absolute;top:3px;left:3px;width:21px;height:21px;border-radius:50%;background:#fff;box-shadow:0 1px 4px #0003;transition:transform .25s}.toggle-switch--on .toggle-thumb[data-v-b4465477]{transform:translate(23px)}.tfa-note[data-v-b4465477]{display:flex;align-items:flex-start;gap:8px;margin-top:18px;padding:12px 16px;background:#f3f4f6;border-radius:10px;font-size:.84rem;color:#4f575f;line-height:1.55}.settings-faq-section[data-v-b4465477]{display:flex;flex-direction:column;gap:0}.faq-header[data-v-b4465477]{display:flex;align-items:center;gap:10px;margin-bottom:16px}.faq-header-icon[data-v-b4465477]{width:38px;height:38px;border-radius:10px;background:#f3f4f6;display:flex;align-items:center;justify-content:center}.faq-title[data-v-b4465477]{font-size:1.1rem;font-weight:700;color:#111;margin:0}.faq-list[data-v-b4465477]{display:flex;flex-direction:column;gap:10px}.faq-item[data-v-b4465477]{background:#fff;border:1.5px solid #ececec;border-radius:12px;overflow:hidden;transition:border-color .18s,box-shadow .18s}.faq-item--open[data-v-b4465477]{border-color:#bdc2c6;box-shadow:0 2px 10px #30353a12}.faq-question[data-v-b4465477]{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;background:none;border:none;padding:16px 20px;font-family:inherit;font-size:.92rem;font-weight:500;color:#222;text-align:left;cursor:pointer;transition:background .15s}.faq-question[data-v-b4465477]:hover{background:#f4f5f5}.faq-chevron[data-v-b4465477]{flex-shrink:0;color:#aaa;transition:transform .22s}.faq-chevron--open[data-v-b4465477]{transform:rotate(180deg);color:#4b5563}.faq-answer[data-v-b4465477]{padding:0 20px 18px;font-size:.875rem;color:#666;line-height:1.7;border-top:1px solid #f0f0f0}.modal-overlay[data-v-b4465477]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:1000}.logout-modal-box[data-v-b4465477]{background:#fff;border-radius:20px;padding:36px 40px 32px;width:360px;max-width:94vw;display:flex;flex-direction:column;align-items:center;gap:10px;box-shadow:0 16px 48px #0000002e;text-align:center;animation:modalIn-b4465477 .22s cubic-bezier(.34,1.3,.64,1)}@keyframes modalIn-b4465477{0%{opacity:0;transform:scale(.94) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}.logout-modal-icon[data-v-b4465477]{width:68px;height:68px;border-radius:50%;background:#ffeaea;display:flex;align-items:center;justify-content:center;margin-bottom:4px}.logout-modal-title[data-v-b4465477]{font-size:1.45rem;font-weight:700;color:#111;margin:0}.logout-modal-sub[data-v-b4465477]{font-size:.9rem;color:#777;margin:0 0 8px}.logout-modal-actions[data-v-b4465477]{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:6px;width:100%}.logout-cancel-btn[data-v-b4465477]{background:none;border:none;font-family:inherit;font-size:1rem;font-weight:600;color:#e63946;cursor:pointer;padding:8px 18px;border-radius:10px;transition:background .15s}.logout-cancel-btn[data-v-b4465477]:hover{background:#ffeaea}.logout-confirm-btn[data-v-b4465477]{background:#4b5563;color:#fff;border:none;font-family:inherit;font-size:1rem;font-weight:600;padding:10px 32px;border-radius:10px;cursor:pointer;transition:background .18s}.logout-confirm-btn[data-v-b4465477]:hover{background:#6b7280}@media (max-width: 800px){.settings-row[data-v-b4465477]{grid-template-columns:1fr}.main[data-v-b4465477]{padding:24px 18px 32px}}.layout[data-v-312299b3]{display:flex;height:100vh;overflow:hidden;background:#f5f6f8;font-family:Poppins,sans-serif}.sidebar[data-v-312299b3]{width:280px;min-width:280px;background:#fff;border-right:1px solid #ececec;display:flex;flex-direction:column;align-items:center;padding:28px 18px 24px;position:sticky;top:0;height:100vh;overflow-y:auto}.sidebar-profile[data-v-312299b3]{display:flex;flex-direction:column;align-items:center;gap:6px;margin-bottom:28px;text-align:center}.avatar-wrap[data-v-312299b3]{width:96px;height:96px;border-radius:50%;overflow:hidden;margin-bottom:10px;border:3px solid #c4c9cd}.avatar[data-v-312299b3]{width:100%;height:100%;object-fit:cover}.brand[data-v-312299b3]{font-size:1.05rem;font-weight:600;color:#4b5563}.role[data-v-312299b3]{font-size:.88rem;color:#444;font-weight:500}.email[data-v-312299b3]{font-size:.82rem;color:#888;word-break:break-all}.sidebar-nav[data-v-312299b3]{display:flex;flex-direction:column;gap:4px;width:100%;flex:1;margin:0;padding:0}.nav-item[data-v-312299b3]{display:flex;align-items:center;gap:10px;padding:11px 16px;border-radius:10px;font-size:.88rem;font-weight:400;color:#444;text-decoration:none;transition:background .18s,color .18s;cursor:pointer;border:none;background:transparent;font-family:inherit;margin:0}.nav-item[data-v-312299b3]:hover{background:#f8fafc;color:#4b5563}.nav-item.active[data-v-312299b3]{background:#4b5563;color:#fff}.nav-item.active .nav-icon[data-v-312299b3]{color:#fff}.nav-icon[data-v-312299b3]{display:flex;align-items:center;flex-shrink:0}.logout-btn[data-v-312299b3]{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:11px 12px;background:#e63946;color:#fff;border:none;border-radius:10px;font-size:.85rem;font-weight:500;font-family:inherit;cursor:pointer;transition:background .2s;margin-top:16px}.logout-btn[data-v-312299b3]:hover{background:#c1121f}.main[data-v-312299b3]{flex:1;padding:24px 32px 32px;overflow-y:auto;min-width:0;display:flex;flex-direction:column;height:100vh}.main-header[data-v-312299b3]{display:flex;align-items:flex-start;margin-bottom:28px}.page-title[data-v-312299b3]{font-size:2rem;font-weight:600;color:#4b5563;letter-spacing:-.5px;line-height:1.2}.page-sub[data-v-312299b3]{font-size:.95rem;color:#777;margin-top:4px}.teachers-section[data-v-312299b3]{background:#fff;border-radius:16px;padding:24px 28px 20px;box-shadow:0 2px 10px #00000012;display:flex;flex-direction:column;flex:1;min-height:0}.section-header[data-v-312299b3]{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.section-title[data-v-312299b3]{font-size:1rem;font-weight:600;color:#111}.section-sub[data-v-312299b3]{font-size:.88rem;color:#777;margin-top:2px}.add-teacher-btn[data-v-312299b3]{display:flex;align-items:center;gap:8px;padding:10px 24px;background-color:#4b5563;color:#fff;border:none;border-radius:10px;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .2s;font-family:inherit}.add-teacher-btn[data-v-312299b3]:hover{background-color:#6b7280}.status-tabs[data-v-312299b3]{display:flex;gap:8px;margin-bottom:24px}.status-tab[data-v-312299b3]{padding:8px 16px;border:1px solid #e0e0e0;border-radius:20px;background:transparent;color:#666;font-size:.88rem;font-weight:500;cursor:pointer;transition:all .2s ease;font-family:inherit}.status-tab[data-v-312299b3]:hover{border-color:#4b5563;color:#4b5563}.status-tab.active[data-v-312299b3]{background-color:#4b5563;color:#fff;border-color:#4b5563}.teachers-carousel-wrap[data-v-312299b3]{display:flex;align-items:flex-start;gap:16px;justify-content:center;flex:1;min-height:0;width:100%}.carousel-arrow[data-v-312299b3]{width:40px;height:40px;border-radius:50%;background-color:#f5f5f5;border:1px solid #e0e0e0;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#666;transition:all .2s ease;flex-shrink:0}.carousel-arrow[data-v-312299b3]:hover{background-color:#4b5563;color:#fff;border-color:#4b5563}.teachers-grid[data-v-312299b3]{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;flex:1;min-height:300px;width:100%;min-width:0;align-items:start}.teacher-card[data-v-312299b3]{border-radius:12px;padding:24px 20px 20px;position:relative;overflow:hidden;border:2px solid #e6e6e6;transition:all .2s ease;display:flex;flex-direction:column;background:#fff;box-shadow:0 2px 8px #00000014;min-height:440px;box-sizing:border-box;min-width:0}.teacher-card[data-v-312299b3]:hover{transform:translateY(-4px);box-shadow:0 8px 20px #0000001f}.card-in-school[data-v-312299b3]{border:2px solid #22c55e;background-color:#f0fdf4}.card-on-leave[data-v-312299b3]{border:2px solid #ef4444;background-color:#fef2f2}.card-on-meeting[data-v-312299b3]{border:2px solid #eab308;background-color:#fefce8}.status-badge[data-v-312299b3]{position:absolute;top:12px;right:12px;padding:4px 12px;border-radius:12px;font-size:.7rem;font-weight:600;text-transform:uppercase}.badge-in-school[data-v-312299b3]{background-color:#16a34a;color:#fff}.badge-on-leave[data-v-312299b3]{background-color:#dc2626;color:#fff}.badge-on-meeting[data-v-312299b3]{background-color:#eab308;color:#422006}.teacher-avatar-wrap[data-v-312299b3]{display:flex;justify-content:center;margin-bottom:20px}.teacher-avatar[data-v-312299b3]{width:100px;height:100px;border-radius:50%;object-fit:cover;border:3px solid #e0e0e0}.teacher-name[data-v-312299b3]{font-size:1.15rem;font-weight:700;color:#111;text-align:center;margin-bottom:6px}.teacher-college[data-v-312299b3]{font-size:.88rem;color:#777;text-align:center;margin-bottom:16px;line-height:1.4}.teacher-email[data-v-312299b3]{display:flex;align-items:center;gap:6px;font-size:.85rem;color:#666;margin-bottom:16px}.teacher-email svg[data-v-312299b3]{color:#999;flex-shrink:0}.teacher-status-wrap[data-v-312299b3]{margin-bottom:16px}.status-dropdown[data-v-312299b3]{width:100%;padding:10px 12px;border:1px solid #d0d0d0;border-radius:4px;font-size:.85rem;color:#333;background-color:#fff;cursor:pointer;transition:all .2s ease;font-family:inherit}.status-dropdown[data-v-312299b3]:hover{border-color:#4b5563}.status-dropdown[data-v-312299b3]:focus{outline:none;border-color:#4b5563;box-shadow:0 0 0 2px #30353a1a}.status-dropdown.status-in-school[data-v-312299b3]{border-color:#22c55e;background-color:#f0fdf4;color:#166534}.status-dropdown.status-on-leave[data-v-312299b3]{border-color:#ef4444;background-color:#fef2f2;color:#991b1b}.status-dropdown.status-on-meeting[data-v-312299b3]{border-color:#eab308;background-color:#fefce8;color:#854d0e}.designated-areas[data-v-312299b3]{margin-top:8px;padding-top:8px;border-top:1px solid #e0e0e0}.designated-label[data-v-312299b3]{font-size:.75rem;font-weight:600;color:#666;margin-bottom:8px;text-transform:uppercase}.areas-list[data-v-312299b3]{display:flex;flex-wrap:wrap;gap:6px}.area-tag[data-v-312299b3]{padding:5px 10px;background-color:#f3f4f6;color:#4b5563;border-radius:4px;font-size:.8rem;font-weight:500}.substitute-info[data-v-312299b3]{display:flex;align-items:center;gap:6px;font-size:.75rem;color:#666;margin-top:8px;padding-top:8px;border-top:1px solid #e0e0e0}.substitute-teacher-wrap[data-v-312299b3]{display:flex;flex-direction:column;gap:6px;margin-top:12px;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid #e0e0e0}.substitute-label[data-v-312299b3]{font-size:.75rem;font-weight:600;color:#666;text-transform:uppercase}.substitute-dropdown[data-v-312299b3]{width:100%;padding:8px 10px;border:1px solid #d0d0d0;border-radius:4px;font-size:.82rem;color:#333;background-color:#fff;cursor:pointer;transition:all .2s ease;font-family:inherit}.substitute-dropdown[data-v-312299b3]:hover{border-color:#4b5563}.substitute-dropdown[data-v-312299b3]:focus{outline:none;border-color:#4b5563;box-shadow:0 0 0 2px #30353a1a}.substitute-select-row[data-v-312299b3]{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.substitute-select-row .substitute-dropdown[data-v-312299b3]{flex:1 1 210px}.substitute-selected-name[data-v-312299b3]{flex:1 1 100%;color:#4b5563;font-size:.75rem;font-weight:600}.substitute-remove-btn[data-v-312299b3]{flex:0 0 auto;border:1px solid #f1aeb5;border-radius:6px;background:#fff5f5;color:#b42318;padding:7px 10px;font:inherit;font-size:.75rem;font-weight:700;cursor:pointer}.substitute-remove-btn[data-v-312299b3]:hover{border-color:#dc3545;background:#ffe3e3}.substitute-save-btn[data-v-312299b3]{margin-top:10px;padding:10px 14px;border:none;border-radius:8px;background-color:#4b5563;color:#fff;cursor:pointer;font-size:.85rem;font-weight:600;transition:background .2s ease}.substitute-save-btn[data-v-312299b3]:disabled{background-color:#9ca3af;cursor:not-allowed}.substitute-schedule-list[data-v-312299b3]{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:6px}.substitute-schedule-item[data-v-312299b3]{display:flex;flex-wrap:wrap;gap:8px;padding:8px 10px;background:#f8fafc;border-radius:8px;font-size:.8rem;color:#333}.carousel-indicators[data-v-312299b3]{display:flex;justify-content:center;gap:8px}.indicator[data-v-312299b3]{width:12px;height:12px;border-radius:50%;background-color:#e0e0e0;border:none;cursor:pointer;transition:all .2s ease}.indicator[data-v-312299b3]:hover,.indicator.active[data-v-312299b3]{background-color:#4b5563}.modal-overlay[data-v-312299b3]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a75;backdrop-filter:none;-webkit-backdrop-filter:none;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-box[data-v-312299b3]{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:0;width:min(560px,95vw);max-width:95vw;max-height:min(720px,92vh);overflow:visible;box-shadow:0 18px 44px #0f172a2e;position:relative}.add-teacher-modal[data-v-312299b3]{display:flex;flex-direction:column;width:min(720px,94vw);overflow:visible}.add-teacher-modal .modal-header[data-v-312299b3],.add-teacher-modal .add-teacher-modal-body[data-v-312299b3],.add-teacher-modal .modal-actions[data-v-312299b3]{background:#fff}.add-teacher-modal .modal-form[data-v-312299b3],.add-teacher-modal .modal-field[data-v-312299b3],.add-teacher-modal .modal-areas-group[data-v-312299b3]{min-width:0}.add-teacher-modal[data-v-312299b3] :is(input,select,textarea),.add-teacher-modal .modal-dropdown-btn[data-v-312299b3]{background:#fff!important;box-shadow:none!important}.logout-modal-box[data-v-312299b3]{width:360px;max-width:94vw;padding:36px 40px 32px;border-radius:20px;background:#fff;box-shadow:0 16px 48px #0000002e;text-align:center}.logout-modal-icon[data-v-312299b3]{display:flex;align-items:center;justify-content:center;width:68px;height:68px;margin:0 auto 14px;border-radius:50%;background:#ffeaea}.logout-modal-title[data-v-312299b3]{margin:0;font-size:1.45rem;color:#111}.logout-modal-sub[data-v-312299b3]{margin:8px 0 18px;color:#777}.logout-modal-actions[data-v-312299b3]{display:flex;justify-content:center;gap:20px}.logout-cancel-btn[data-v-312299b3],.logout-confirm-btn[data-v-312299b3]{border:none;border-radius:10px;padding:10px 22px;font:inherit;font-weight:600;cursor:pointer}.logout-cancel-btn[data-v-312299b3]{background:#ffeaea;color:#e63946}.logout-confirm-btn[data-v-312299b3]{background:#4b5563;color:#fff}.logout-confirm-btn[data-v-312299b3]:hover{background:#6b7280}.modal-header[data-v-312299b3]{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:0;padding:22px 28px 18px;border-bottom:1px solid #e5eaf0;background:#fff;text-align:left;border-radius:10px 10px 0 0}.modal-eyebrow[data-v-312299b3]{display:block;margin-bottom:5px;color:#64748b;font-size:.68rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.modal-title[data-v-312299b3]{font-size:clamp(1.35rem,2.4vw,1.65rem);font-weight:700;color:#202a34;line-height:1.12;letter-spacing:-.035em;margin:0 0 6px}.modal-sub[data-v-312299b3]{max-width:420px;font-size:.82rem;line-height:1.48;color:#66727e;margin:0}.modal-close-btn[data-v-312299b3]{display:grid;width:38px;height:38px;flex:0 0 38px;place-items:center;border:1px solid #e2e8f0;border-radius:8px;background:#fff;color:#475569;font-size:1.55rem;line-height:1;cursor:pointer;transition:background .18s ease,border-color .18s ease,color .18s ease}.modal-close-btn[data-v-312299b3]:hover{border-color:#cbd5e1;background:#f8fafc;color:#111827}.add-teacher-modal-body[data-v-312299b3]{display:grid;grid-template-columns:230px minmax(0,1fr);gap:0;align-items:stretch;padding:0;background:#fff}.modal-avatar-section[data-v-312299b3]{display:flex;align-items:center;flex-direction:column;gap:10px;justify-content:center;margin-bottom:0;min-height:0;padding:26px 24px;border:0;border-right:1px solid #e5eaf0;border-radius:0;background:#f8fafc}.modal-avatar-placeholder[data-v-312299b3]{position:relative;width:118px;height:118px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;border:1px dashed #94a3b8;cursor:pointer;transition:all .2s;overflow:visible}.modal-avatar-placeholder[data-v-312299b3]:hover{background:#f8fafc;border-color:#475569}.modal-avatar-preview[data-v-312299b3]{width:100%;height:100%;object-fit:cover;border-radius:inherit;overflow:hidden}.modal-file-input[data-v-312299b3]{display:none}.modal-avatar-checkmark[data-v-312299b3]{position:absolute;bottom:4px;right:-2px;width:34px;height:34px;border-radius:50%;background:#475569;display:flex;align-items:center;justify-content:center;border:3px solid #fff;box-shadow:0 6px 14px #0f172a2e}.modal-avatar-copy[data-v-312299b3]{display:flex;flex-direction:column;gap:2px;color:#64748b;text-align:center;padding:0 4px}.modal-avatar-copy strong[data-v-312299b3]{color:#334155;font-size:.8rem}.modal-avatar-copy span[data-v-312299b3]{max-width:170px;font-size:.68rem;line-height:1.35}.modal-form[data-v-312299b3]{display:flex;flex-direction:column;gap:13px;margin-bottom:0;padding:26px 28px 28px}.modal-field[data-v-312299b3]{display:flex;flex-direction:column;gap:7px}.modal-field>span[data-v-312299b3],.modal-areas-label[data-v-312299b3]{color:#475569;font-size:.7rem;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.modal-input[data-v-312299b3],.modal-select[data-v-312299b3]{min-height:42px;padding:10px 12px;border:1px solid #d4dce4;border-radius:6px;background:#fff!important;color:#1f2937;font-size:.86rem;font-family:inherit;box-shadow:none!important;transition:border-color .2s,box-shadow .2s,background .2s}.modal-input[data-v-312299b3]::placeholder{color:#9aa4af}.modal-input[data-v-312299b3]:focus,.modal-select[data-v-312299b3]:focus{outline:none;border-color:#64748b;background:#fff!important;box-shadow:0 0 0 2px #64748b24!important}.modal-email-input-wrap[data-v-312299b3]{display:flex;align-items:center;min-height:42px;border:1px solid #d4dce4;border-radius:6px;background:#fff;overflow:hidden;transition:border-color .2s,box-shadow .2s}.modal-email-input-wrap[data-v-312299b3]:focus-within{border-color:#64748b;box-shadow:0 0 0 2px #64748b24}.modal-email-input[data-v-312299b3]{min-width:0;flex:1;border:0!important;border-radius:0;box-shadow:none!important}.modal-email-input[data-v-312299b3]:focus{box-shadow:none!important}.modal-email-suffix[data-v-312299b3]{align-self:stretch;display:inline-flex;align-items:center;padding:0 12px;border-left:1px solid #e5eaf0;background:#f8fafc;color:#64748b;font-size:.82rem;font-weight:700;white-space:nowrap}.modal-areas-group[data-v-312299b3]{display:flex;flex-direction:column;gap:7px}.modal-areas-select[data-v-312299b3]{padding:12px 14px;border:1px solid #d0d0d0;border-radius:8px;font-size:.95rem;font-family:inherit;transition:border-color .2s;background-color:#fff;cursor:pointer;min-height:120px}.modal-areas-select[data-v-312299b3]:focus{outline:none;border-color:#4b5563;box-shadow:0 0 0 2px #30353a1a}.modal-areas-select option[data-v-312299b3]{padding:8px;background:#fff;color:#333}.modal-areas-select option[data-v-312299b3]:checked{background:#4b5563;color:#fff}.modal-areas-hint[data-v-312299b3]{font-size:.8rem;color:#999;margin:0;padding:0}.modal-custom-dropdown[data-v-312299b3]{position:relative;width:100%;z-index:20}.modal-dropdown-btn[data-v-312299b3]{width:100%;min-height:42px;padding:10px 12px;border:1px solid #d4dce4;border-radius:6px;background:#fff!important;font-size:.86rem;font-family:inherit;color:#1f2937;cursor:pointer;box-shadow:none!important;transition:border-color .2s,box-shadow .2s,background .2s;display:flex;justify-content:space-between;align-items:center;text-align:left}.modal-dropdown-btn[data-v-312299b3]:hover{border-color:#94a3b8}.modal-dropdown-btn[data-v-312299b3]:focus{outline:none;border-color:#64748b;box-shadow:0 0 0 2px #64748b24!important}.modal-dropdown-placeholder[data-v-312299b3]{color:#9aa4af}.modal-dropdown-selected[data-v-312299b3]{font-weight:750;color:#334155}.modal-dropdown-icon[data-v-312299b3]{transition:transform .2s;color:#666;flex-shrink:0}.modal-dropdown-icon.open[data-v-312299b3]{transform:rotate(180deg)}.modal-dropdown-menu[data-v-312299b3]{position:absolute;top:calc(100% + 8px);left:0;right:0;background:#fff;border:1px solid #d4dce4;border-radius:6px;box-shadow:0 10px 20px #0f172a1a;z-index:1200;max-height:230px;overflow-y:auto;padding:6px}.modal-dropdown-option[data-v-312299b3]{display:flex;align-items:center;gap:10px;padding:10px 11px;border-radius:4px;cursor:pointer;transition:background .15s;-webkit-user-select:none;user-select:none}.modal-dropdown-option[data-v-312299b3]:hover{background:#f1f5f9}.modal-dropdown-checkbox[data-v-312299b3]{width:18px;height:18px;cursor:pointer;accent-color:#4b5563;flex-shrink:0}.modal-dropdown-label[data-v-312299b3]{font-size:.9rem;color:#333;cursor:pointer;flex:1}.modal-selected-areas[data-v-312299b3]{display:flex;flex-wrap:wrap;gap:6px;min-height:27px}.modal-selected-areas span[data-v-312299b3]{display:inline-flex;align-items:center;min-height:26px;padding:5px 8px;border:1px solid #dbe3ea;border-radius:5px;background:#fff;color:#475569;font-size:.66rem;font-weight:700}.modal-actions[data-v-312299b3]{display:flex;gap:12px;justify-content:flex-end;padding:16px 28px 20px;border-top:1px solid #e5eaf0;background:#fff;border-radius:0 0 10px 10px;position:relative;z-index:1}.modal-cancel-btn[data-v-312299b3],.modal-add-btn[data-v-312299b3]{min-height:42px;padding:9px 20px;border:none;border-radius:6px;font-size:.84rem;font-weight:600;font-family:inherit;cursor:pointer;transition:all .2s}.modal-cancel-btn[data-v-312299b3]{background:#fff;color:#dc2626;border:1px solid #e5e7eb}.modal-cancel-btn[data-v-312299b3]:hover{background:#f0f0f0;border-color:#d32f2f}.modal-add-btn[data-v-312299b3]{min-width:118px;justify-content:center;background:#334155;color:#fff;display:flex;align-items:center;gap:6px}.modal-add-btn[data-v-312299b3]:before{content:"+ "}.modal-add-btn[data-v-312299b3]:hover{background:#1f2937}.layout[data-v-312299b3]{background:linear-gradient(135deg,#f2f4f5,#dfe3e6)}.main[data-v-312299b3]{padding:32px 38px 44px}.main-header[data-v-312299b3]{align-items:center;justify-content:space-between;gap:24px;margin-bottom:25px}.page-eyebrow[data-v-312299b3]{display:block;margin-bottom:5px;color:#68747d;font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.page-title[data-v-312299b3]{margin:0;color:#202830;font-size:clamp(2rem,3vw,2.55rem);font-weight:700;letter-spacing:-.04em}.page-sub[data-v-312299b3]{max-width:650px;margin-top:8px;color:#66727c;font-size:.9rem;line-height:1.5}.header-add-btn[data-v-312299b3]{min-height:46px;padding:0 18px;border:1px solid #3e4d58;border-radius:12px;background:linear-gradient(145deg,#5c6771,#343e47);box-shadow:0 8px 20px #2d373f33;font-size:.78rem}.header-add-btn[data-v-312299b3]:hover{background:linear-gradient(145deg,#687580,#3d4852);transform:translateY(-1px)}.teachers-section[data-v-312299b3]{padding:17px 27px 24px;border:1px solid rgba(255,255,255,.9);border-radius:20px;background:#ffffffc7;box-shadow:0 14px 38px #29333b1a}.section-header[data-v-312299b3]{align-items:center;margin-bottom:16px;padding-bottom:15px;border-bottom:1px solid #e1e6e9}.section-title[data-v-312299b3]{color:#252e35;font-size:1.18rem;letter-spacing:-.02em}.section-sub[data-v-312299b3]{margin-top:5px;color:#78838b;font-size:.75rem}.summary-counts[data-v-312299b3]{display:flex;align-items:stretch;gap:8px}.summary-counts span[data-v-312299b3]{display:inline-flex;min-width:78px;align-items:center;justify-content:center;gap:7px;padding:8px 11px;color:#66727b;border:1px solid #dce2e5;border-radius:11px;background:#f7f9fae6;font-size:.64rem;font-weight:600;white-space:nowrap}.summary-counts b[data-v-312299b3]{color:#2c3740;font-size:.95rem;line-height:1}.summary-counts small[data-v-312299b3]{font-size:.64rem;font-weight:600}.summary-counts .summary-count--total[data-v-312299b3]{border-color:#cfd7dc;background:#f4f6f7}.summary-counts .available[data-v-312299b3]{color:#34704e;border-color:#b9d8c5;background:#eef8f2}.summary-counts .available b[data-v-312299b3]{color:#276743}.summary-counts .summary-count--leave[data-v-312299b3]{color:#95615d;border-color:#e2c9c7;background:#fbf2f1}.summary-counts .summary-count--leave b[data-v-312299b3]{color:#874b47}.status-tabs[data-v-312299b3]{gap:7px;margin-bottom:20px}.status-tab[data-v-312299b3]{display:inline-flex;min-height:38px;padding:7px 12px;align-items:center;gap:7px;color:#59656e;border-color:#d8dee2;border-radius:10px;background:#f7f8f9;font-size:.72rem;font-weight:600}.status-tab span[data-v-312299b3]{display:grid;min-width:20px;height:20px;place-items:center;padding:0 5px;color:#6c7780;border-radius:99px;background:#e5e9ec;font-size:.61rem}.status-tab.active[data-v-312299b3]{color:#fff;border-color:#3f4d57;background:#3f4d57;box-shadow:0 5px 12px #2d384029}.status-tab.active span[data-v-312299b3]{color:#27333b;background:#fff}.teachers-carousel-wrap[data-v-312299b3]{position:relative;align-items:stretch;gap:12px}.teachers-grid[data-v-312299b3]{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;align-items:stretch}.teachers-empty-state[data-v-312299b3]{display:flex;min-height:360px;grid-column:1 / -1;align-items:center;justify-content:center;flex-direction:column;padding:48px 24px;color:#4d5a62;text-align:center}.teachers-empty-icon[data-v-312299b3]{display:grid;width:66px;height:66px;margin-bottom:17px;place-items:center;border:1px solid #d9e0e4;border-radius:18px;background:#f5f7f8;color:#69777f}.teachers-empty-icon svg[data-v-312299b3]{width:31px;height:31px}.teachers-empty-state h3[data-v-312299b3]{margin:0;color:#29333a;font-size:1.05rem;font-weight:700}.teachers-empty-state p[data-v-312299b3]{max-width:430px;margin:7px 0 18px;color:#738089;font-size:.78rem;line-height:1.55}.teachers-empty-state button[data-v-312299b3]{min-height:40px;padding:9px 16px;border:1px solid #cad3d8;border-radius:9px;background:#fff;color:#43515a;font:inherit;font-size:.72rem;font-weight:700;cursor:pointer;transition:background .18s ease,border-color .18s ease,transform .18s ease}.teachers-empty-state button[data-v-312299b3]:hover{border-color:#9eabb2;background:#f5f7f8;transform:translateY(-1px)}.teachers-loading[data-v-312299b3]{display:contents}.teacher-skeleton[data-v-312299b3]{position:relative;display:flex;min-height:360px;align-items:center;flex-direction:column;padding:20px 19px;border:1px solid #dce2e6;border-radius:16px;background:#fff;overflow:hidden}.teacher-skeleton[data-v-312299b3]:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:#d8dee2}.teacher-skeleton-badge[data-v-312299b3],.teacher-skeleton-avatar[data-v-312299b3],.teacher-skeleton-line[data-v-312299b3],.teacher-skeleton-field[data-v-312299b3]{background:linear-gradient(100deg,#edf1f3 25%,#f8fafb,#edf1f3 65%);background-size:220% 100%;animation:teacherSkeletonShimmer-312299b3 1.35s ease-in-out infinite}.teacher-skeleton-badge[data-v-312299b3]{width:58px;height:22px;align-self:flex-end;border-radius:999px}.teacher-skeleton-avatar[data-v-312299b3]{width:82px;height:82px;margin:10px 0 18px;border:3px solid #fff;border-radius:50%}.teacher-skeleton-line[data-v-312299b3]{height:10px;border-radius:6px}.teacher-skeleton-line--name[data-v-312299b3]{width:66%;height:14px}.teacher-skeleton-line--college[data-v-312299b3]{width:78%;margin-top:10px}.teacher-skeleton-line--email[data-v-312299b3]{width:72%;margin-top:24px}.teacher-skeleton-field[data-v-312299b3]{width:100%;height:38px;margin-top:24px;border-radius:9px}.teacher-skeleton-line--tag[data-v-312299b3]{width:48%;align-self:flex-start;margin-top:24px}@keyframes teacherSkeletonShimmer-312299b3{0%{background-position:100% 0}to{background-position:-100% 0}}.carousel-arrow[data-v-312299b3]{align-self:center;width:38px;height:38px;border-color:#d9dfe2;background:#ffffffe6;box-shadow:0 5px 14px #2a343b1a}.teacher-card[data-v-312299b3]{min-height:0;padding:20px 19px;border:1px solid #dce2e6!important;border-radius:16px;background:#fff!important;box-shadow:0 7px 20px #2a343b12}.teacher-card[data-v-312299b3]:hover{transform:translateY(-2px);border-color:#b9c4ca!important;box-shadow:0 12px 27px #2a343b1c}.teacher-card[data-v-312299b3]:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:#8c979f}.teacher-card.card-in-school[data-v-312299b3]:before{background:#499067}.teacher-card.card-on-leave[data-v-312299b3]:before{background:#9b7272}.teacher-card.card-on-meeting[data-v-312299b3]:before{background:#a78c53}.status-badge[data-v-312299b3]{top:14px;right:14px;display:flex;align-items:center;gap:5px;padding:5px 8px;color:#53616a!important;border:1px solid #d8dee2;border-radius:999px;background:#f1f3f4!important;font-size:.58rem;letter-spacing:.04em}.badge-in-school[data-v-312299b3]{color:#276842!important;border-color:#bddbc8;background:#e8f5ed!important}.badge-on-leave[data-v-312299b3]{color:#7d4545!important;border-color:#dec5c5;background:#f7eded!important}.badge-on-meeting[data-v-312299b3]{color:#765f2e!important;border-color:#e1d5b8;background:#f8f3e7!important}.teacher-avatar-wrap[data-v-312299b3]{margin:10px 0 14px}.teacher-avatar[data-v-312299b3]{width:82px;height:82px;border:3px solid #fff;box-shadow:0 0 0 1px #d7dde1,0 6px 15px #232c3321}.teacher-name[data-v-312299b3]{margin-bottom:4px;color:#222a31;font-size:1rem}.teacher-college[data-v-312299b3]{min-height:36px;margin-bottom:10px;color:#77828a;font-size:.73rem}.teacher-email[data-v-312299b3]{justify-content:center;min-width:0;margin-bottom:15px;color:#64717a;font-size:.7rem}.teacher-email span[data-v-312299b3]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.teacher-status-wrap[data-v-312299b3]{display:flex;flex-direction:column;gap:6px;margin-bottom:13px}.teacher-status-wrap>label[data-v-312299b3]{color:#707b83;font-size:.62rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.status-dropdown[data-v-312299b3]{min-height:40px;padding:8px 11px;border-color:#d6dde1!important;border-radius:9px;background:#f8fafb!important;color:#34414a!important;font-size:.72rem}.designated-areas[data-v-312299b3]{margin-top:auto;padding-top:13px;border-color:#e5e9eb}.designated-label[data-v-312299b3],.substitute-label[data-v-312299b3]{color:#727d85;font-size:.62rem;letter-spacing:.06em}.area-tag[data-v-312299b3]{padding:6px 9px;color:#50606b;border:1px solid #dfe5e8;border-radius:8px;background:#f4f7f8;font-size:.67rem}.leave-coverage-block[data-v-312299b3]{margin:3px 0 13px}.leave-coverage-notice[data-v-312299b3]{display:flex;align-items:center;gap:10px;padding:11px 12px;border:1px solid #e0d4d1;border-radius:11px;background:#faf6f4;color:#4a3d3a;text-align:left}.leave-coverage-notice>span[data-v-312299b3]:nth-child(2){display:flex;min-width:0;flex:1;flex-direction:column;gap:2px}.leave-coverage-notice strong[data-v-312299b3]{font-size:.72rem;font-weight:700}.leave-coverage-notice small[data-v-312299b3]{color:#7f706b;font-size:.64rem;line-height:1.35}.leave-coverage-icon[data-v-312299b3]{display:grid;width:32px;height:32px;flex:0 0 32px;place-items:center;border-radius:9px;background:#eee2de;color:#75564d}.leave-coverage-icon svg[data-v-312299b3]{width:17px;height:17px}.manage-coverage-btn[data-v-312299b3]{display:flex;min-height:32px;align-items:center;justify-content:center;gap:4px;padding:6px 9px;flex:0 0 auto;border:1px solid #cdbdb7;border-radius:8px;background:#fff;color:#624b44;font:inherit;font-size:.63rem;font-weight:700;cursor:pointer;box-shadow:0 2px 5px #46322b0f;transition:border-color .18s ease,background .18s ease,transform .18s ease}.manage-coverage-btn svg[data-v-312299b3]{width:15px;height:15px}.manage-coverage-btn[data-v-312299b3]:hover{border-color:#aeb9bf;background:#f6f8f9;transform:translateY(-1px)}.coverage-modal-overlay[data-v-312299b3]{padding:24px;background:#141c2194;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.coverage-modal[data-v-312299b3]{display:flex;width:min(760px,96vw);max-height:min(760px,90vh);flex-direction:column;overflow:hidden;border:1px solid rgba(255,255,255,.72);border-radius:20px;background:#f7f9fa;box-shadow:0 28px 80px #0f171d4d;text-align:left}.coverage-modal-header[data-v-312299b3]{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:24px 26px 20px;border-bottom:1px solid #e1e6e9;background:#fff}.coverage-modal-heading[data-v-312299b3]{display:flex;align-items:center;gap:14px}.coverage-modal-icon[data-v-312299b3]{display:grid;width:46px;height:46px;flex:0 0 46px;place-items:center;border-radius:13px;background:#eee5e1;color:#71584f}.coverage-modal-icon svg[data-v-312299b3]{width:22px;height:22px}.coverage-modal-eyebrow[data-v-312299b3]{display:block;margin-bottom:4px;color:#70574f;font-size:.72rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.coverage-modal-heading h2[data-v-312299b3]{margin:0;color:#20282e;font-size:1.38rem;font-weight:700;line-height:1.25}.coverage-modal-heading p[data-v-312299b3]{margin:5px 0 0;color:#64717a;font-size:.84rem;line-height:1.45}.coverage-modal-close[data-v-312299b3]{display:grid;width:34px;height:34px;flex:0 0 34px;place-items:center;border:0;border-radius:9px;background:#f1f3f4;color:#5b6870;font-size:1.45rem;line-height:1;cursor:pointer}.coverage-modal-close[data-v-312299b3]:hover{background:#e6eaec}.coverage-modal-progress[data-v-312299b3]{display:flex;align-items:center;gap:15px;padding:13px 26px;border-bottom:1px solid #e2e7e9;background:#f7f9fa}.coverage-modal-progress>span[data-v-312299b3]{flex:0 0 auto;color:#49575f;font-size:.76rem;font-weight:700}.coverage-progress-track[data-v-312299b3]{height:6px;flex:1;overflow:hidden;border-radius:999px;background:#e1e5e7}.coverage-progress-track span[data-v-312299b3]{display:block;height:100%;border-radius:inherit;background:#527663;transition:width .25s ease}.coverage-modal-list[data-v-312299b3]{display:grid;gap:10px;padding:18px 26px;overflow-y:auto}.coverage-modal-row[data-v-312299b3]{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(280px,1.2fr);align-items:center;gap:22px;padding:15px 16px;border:1px solid #dfe5e8;border-radius:12px;background:#fff}.coverage-class-details[data-v-312299b3]{display:flex;min-width:0;flex-direction:column;gap:3px}.coverage-class-details strong[data-v-312299b3]{overflow:hidden;color:#252e34;font-size:.9rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.coverage-class-details span[data-v-312299b3]{color:#596770;font-size:.76rem;font-weight:500}.coverage-class-details small[data-v-312299b3]{color:#76828a;font-size:.69rem}.coverage-assignment-field label[data-v-312299b3]{display:block;margin-bottom:7px;color:#56636b;font-size:.68rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.coverage-modal .substitute-dropdown[data-v-312299b3]{min-height:44px;padding:9px 38px 9px 12px;color:#2f3a41;border-color:#cbd3d8;background-color:#fff;font-size:.78rem;font-weight:500}.coverage-modal .substitute-dropdown.is-placeholder[data-v-312299b3]{color:#7c878e}.coverage-modal-footer[data-v-312299b3]{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 26px;border-top:1px solid #dfe5e8;background:#fff}.coverage-modal-footer>span[data-v-312299b3]{color:#66737b;font-size:.7rem}.coverage-modal-footer>div[data-v-312299b3]{display:flex;gap:11px}.coverage-cancel-btn[data-v-312299b3]{min-width:105px;min-height:46px;padding:11px 20px;border:1px solid #cbd4d9;border-radius:10px;background:#fff;color:#3f4d55;font:inherit;font-size:.78rem;font-weight:700;cursor:pointer}.coverage-cancel-btn[data-v-312299b3]:hover{background:#f2f5f6}.coverage-modal .substitute-save-btn[data-v-312299b3]{min-width:175px;min-height:46px;padding:11px 21px;border-radius:10px;font-size:.78rem}.substitute-teacher-wrap[data-v-312299b3]{display:block;margin:7px 0 0;padding:0;overflow:hidden;border:1px solid #e1e6e9;border-radius:11px;background:#f8fafb}.coverage-summary[data-v-312299b3]{display:flex;min-height:40px;align-items:center;justify-content:space-between;padding:0 12px;color:#46545d;font-size:.68rem;font-weight:700;cursor:pointer;list-style:none}.coverage-summary[data-v-312299b3]::-webkit-details-marker{display:none}.coverage-summary[data-v-312299b3]:hover{background:#f1f4f5}.coverage-chevron[data-v-312299b3]{width:16px;height:16px;transition:transform .2s ease}.substitute-teacher-wrap[open] .coverage-chevron[data-v-312299b3]{transform:rotate(180deg)}.coverage-body[data-v-312299b3]{max-height:350px;padding:0 10px 10px;overflow-y:auto;border-top:1px solid #e3e7e9}.substitute-info[data-v-312299b3]{display:block;margin-top:2px;padding-top:0;border:0}.substitute-class-label[data-v-312299b3]{display:block;padding:10px 2px 7px;color:#76828a;font-size:.62rem;font-weight:600}.substitute-schedule-list[data-v-312299b3]{gap:7px}.substitute-schedule-item[data-v-312299b3]{padding:10px;border:1px solid #e1e6e9;border-radius:9px;background:#fff}.substitute-entry-header[data-v-312299b3]{gap:9px}.substitute-entry-header strong[data-v-312299b3]{color:#2f3940;font-size:.7rem}.substitute-entry-meta[data-v-312299b3]{margin-top:2px;color:#7a858d;font-size:.61rem}.substitute-entry-label[data-v-312299b3]{color:#737f87;font-size:.59rem;letter-spacing:.04em;text-transform:uppercase}.substitute-dropdown[data-v-312299b3]{min-height:38px;border-radius:8px;font-size:.7rem}.substitute-remove-btn[data-v-312299b3]{min-height:42px;padding:9px 13px;border-color:#d2dade;border-radius:8px;background:#fff;color:#59676f;font-size:.71rem;font-weight:700}.substitute-remove-btn[data-v-312299b3]:hover{border-color:#adb7bd;background:#f2f5f6;color:#39464e}.coverage-actions[data-v-312299b3]{position:sticky;bottom:-10px;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:9px;padding:10px 2px 1px;border-top:1px solid #e3e7e9;background:#f8fafb}.coverage-actions>span[data-v-312299b3]{color:#818b92;font-size:.58rem;line-height:1.3;text-align:left}.substitute-save-btn[data-v-312299b3]{width:auto;min-height:36px;margin:0;padding:8px 12px;flex:0 0 auto;border-radius:8px;background:#465762;font-size:.66rem}@media (max-width: 650px){.coverage-modal-overlay[data-v-312299b3]{padding:10px}.coverage-modal[data-v-312299b3]{width:100%;max-height:94vh;border-radius:16px}.coverage-modal-header[data-v-312299b3],.coverage-modal-progress[data-v-312299b3],.coverage-modal-list[data-v-312299b3],.coverage-modal-footer[data-v-312299b3]{padding-left:16px;padding-right:16px}.coverage-modal-row[data-v-312299b3]{grid-template-columns:1fr;gap:13px}.coverage-modal-footer[data-v-312299b3]{align-items:stretch;flex-direction:column}.coverage-modal-footer>div[data-v-312299b3]{justify-content:flex-end}.coverage-cancel-btn[data-v-312299b3],.coverage-modal .substitute-save-btn[data-v-312299b3]{flex:1;min-width:0}}.carousel-indicators[data-v-312299b3]{margin-top:16px}.indicator[data-v-312299b3]{width:7px;height:7px;background:#cbd2d6}.indicator.active[data-v-312299b3]{width:22px;border-radius:99px;background:#4b5a64}@media (min-width: 1200px){.teachers-grid[data-v-312299b3]{grid-template-columns:repeat(3,1fr)}}@media (max-width: 1199px) and (min-width: 901px){.teachers-grid[data-v-312299b3]{grid-template-columns:repeat(2,1fr)}}@media (max-width: 900px) and (min-width: 601px){.teachers-grid[data-v-312299b3]{grid-template-columns:repeat(2,1fr)}.main[data-v-312299b3]{padding:28px 24px 32px}.section-header[data-v-312299b3]{flex-direction:column;gap:16px;align-items:flex-start}.add-teacher-btn[data-v-312299b3]{width:100%;justify-content:center}.status-tabs[data-v-312299b3]{flex-wrap:wrap}.teacher-card[data-v-312299b3]{min-height:520px}.carousel-arrow[data-v-312299b3]{display:none}}@media (max-width: 600px){.layout[data-v-312299b3]{flex-direction:column}.main[data-v-312299b3]{padding:16px 20px 32px;height:auto}.sidebar[data-v-312299b3]{width:100%;min-width:100%;height:auto;padding:20px 16px;display:none}.page-title[data-v-312299b3]{font-size:1.5rem}.page-sub[data-v-312299b3]{font-size:.85rem}.section-header[data-v-312299b3]{flex-direction:column;gap:16px;align-items:flex-start}.section-title[data-v-312299b3]{font-size:.95rem}.section-sub[data-v-312299b3]{font-size:.75rem}.teachers-section[data-v-312299b3]{padding:16px 20px;border-radius:12px}.status-tabs[data-v-312299b3]{flex-wrap:wrap;gap:6px;margin-bottom:16px}.status-tab[data-v-312299b3]{padding:6px 12px;font-size:.8rem}.add-teacher-btn[data-v-312299b3]{width:100%;padding:8px 16px;font-size:.85rem;justify-content:center}.teachers-grid[data-v-312299b3]{grid-template-columns:1fr;gap:16px}.teacher-card[data-v-312299b3]{padding:20px 18px 18px;min-height:450px}.teacher-avatar[data-v-312299b3]{width:90px;height:90px}.carousel-arrow[data-v-312299b3]{display:none}.carousel-indicators[data-v-312299b3]{gap:4px}.carousel-dot[data-v-312299b3]{width:6px;height:6px}.modal-box[data-v-312299b3]{width:95vw;max-height:90vh}.add-teacher-modal-body[data-v-312299b3]{display:flex;flex-direction:column;gap:0;padding:0}.modal-header[data-v-312299b3]{padding:20px}.modal-avatar-section[data-v-312299b3]{flex-direction:column;justify-content:center;min-height:0;padding:16px 20px;border-right:0;border-bottom:1px solid #e5eaf0}.modal-form[data-v-312299b3]{padding:18px 20px}.modal-actions[data-v-312299b3]{padding:16px 20px 20px}.modal-form-group[data-v-312299b3]{margin-bottom:12px}.modal-form-label[data-v-312299b3]{font-size:.85rem}.modal-form-input[data-v-312299b3]{font-size:.9rem;padding:8px}}@media (max-width: 479px){.main[data-v-312299b3]{padding:12px 16px 24px}.teachers-section[data-v-312299b3]{padding:12px 16px}.page-title[data-v-312299b3]{font-size:1.25rem}.modal-box[data-v-312299b3]{width:98vw}}.layout[data-v-41cc1753]{display:flex;height:100vh;overflow:hidden;background:#f5f6f8;font-family:Poppins,sans-serif}.sidebar[data-v-41cc1753]{width:280px;min-width:280px;background:#fff;border-right:1px solid #ececec;display:flex;flex-direction:column;align-items:center;padding:28px 18px 24px;position:sticky;top:0;height:100vh;overflow-y:auto}.sidebar-profile[data-v-41cc1753]{display:flex;flex-direction:column;align-items:center;gap:6px;margin-bottom:28px;text-align:center}.avatar-wrap[data-v-41cc1753]{width:96px;height:96px;border-radius:50%;overflow:hidden;margin-bottom:10px;border:3px solid #c4c9cd}.avatar[data-v-41cc1753]{width:100%;height:100%;object-fit:cover}.brand[data-v-41cc1753]{font-size:1.05rem;font-weight:600;color:#4b5563}.role[data-v-41cc1753]{font-size:.88rem;color:#444;font-weight:500}.email[data-v-41cc1753]{font-size:.82rem;color:#888;word-break:break-all}.sidebar-nav[data-v-41cc1753]{display:flex;flex-direction:column;gap:4px;width:100%;flex:1}.nav-item[data-v-41cc1753]{display:flex;align-items:center;gap:10px;padding:11px 16px;border-radius:10px;font-size:.88rem;font-weight:400;color:#444;text-decoration:none;transition:background .18s,color .18s;cursor:pointer}.nav-item[data-v-41cc1753]:hover{background:#f8fafc;color:#4b5563}.nav-item.active[data-v-41cc1753]{background:#4b5563;color:#fff}.nav-item.active .nav-icon[data-v-41cc1753]{color:#fff}.nav-icon[data-v-41cc1753]{display:flex;align-items:center;flex-shrink:0}.logout-btn[data-v-41cc1753]{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:11px 12px;background:#e63946;color:#fff;border:none;border-radius:10px;font-size:.85rem;font-weight:500;font-family:inherit;cursor:pointer;transition:background .2s;margin-top:16px}.logout-btn[data-v-41cc1753]:hover{background:#c1121f}.main[data-v-41cc1753]{flex:1;padding:40px 44px 32px;overflow-y:auto;min-width:0;display:flex;flex-direction:column;height:100vh}.main-header[data-v-41cc1753]{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:28px}.page-title[data-v-41cc1753]{font-size:2rem;font-weight:600;color:#4b5563;letter-spacing:-.5px;line-height:1.2}.page-sub[data-v-41cc1753]{font-size:.95rem;color:#777;margin-top:4px}.um-topbar[data-v-41cc1753]{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;gap:12px;flex-wrap:wrap}.um-topbar-right[data-v-41cc1753]{display:flex;align-items:center;gap:10px}.um-approve-all-btn[data-v-41cc1753]{display:flex;align-items:center;gap:7px;background:#41484f;color:#fff;border:none;font-family:inherit;font-size:.84rem;font-weight:600;padding:10px 16px;border-radius:10px;cursor:pointer;transition:background .18s,opacity .18s}.um-approve-all-btn[data-v-41cc1753]:hover{background:#4b5259}.um-approve-all-btn[disabled][data-v-41cc1753]{opacity:.65;cursor:not-allowed}.um-approve-selected-btn[data-v-41cc1753]{display:inline-flex;align-items:center;gap:7px;padding:9px 13px;border:1px solid #1b4332;border-radius:8px;background:#fff;color:#1b4332;font:inherit;font-size:.82rem;font-weight:700;cursor:pointer}.um-approve-selected-btn[data-v-41cc1753]:hover{background:#edf8f1}.um-approve-selected-btn[disabled][data-v-41cc1753]{opacity:.6;cursor:not-allowed}.um-print-btn[data-v-41cc1753]{display:flex;align-items:center;gap:7px;background:#fff;color:#41484f;border:1.5px solid #d1e7db;font-family:inherit;font-size:.84rem;font-weight:600;padding:9px 14px;border-radius:10px;cursor:pointer;transition:background .18s,border-color .18s}.um-print-btn[data-v-41cc1753]:hover{background:#eff8f3;border-color:#b9dac8}.um-search-wrap[data-v-41cc1753]{position:relative;display:flex;align-items:center}.um-search-icon[data-v-41cc1753]{position:absolute;left:13px;color:#aaa;pointer-events:none;display:flex}.um-search-input[data-v-41cc1753]{font-family:inherit;font-size:.875rem;color:#111;background:#fff;border:1.5px solid #e8e8e8;border-radius:10px;padding:10px 14px 10px 38px;outline:none;width:280px;transition:border-color .18s,box-shadow .18s}.um-search-input[data-v-41cc1753]:focus{border-color:#6b7280;box-shadow:0 0 0 3px #535b6417}.um-filter-select[data-v-41cc1753]{font-family:inherit;font-size:.875rem;color:#555;background:#fff;border:1.5px solid #e8e8e8;border-radius:10px;padding:10px 14px;outline:none;cursor:pointer;transition:border-color .18s}.um-filter-select[data-v-41cc1753]:focus{border-color:#6b7280}.um-add-btn[data-v-41cc1753]{display:flex;align-items:center;gap:7px;background:#4b5563;color:#fff;border:none;font-family:inherit;font-size:.875rem;font-weight:600;padding:10px 20px;border-radius:10px;cursor:pointer;transition:background .18s}.um-add-btn[data-v-41cc1753]:hover{background:#6b7280}.um-stats-row[data-v-41cc1753]{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-bottom:24px}.um-stat-card[data-v-41cc1753]{background:#fff;border-radius:14px;padding:18px 20px;display:flex;align-items:center;gap:16px;box-shadow:0 2px 8px #0000000f}.um-stat-icon[data-v-41cc1753]{width:46px;height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.um-stat-icon--total[data-v-41cc1753]{background:#f3f4f6;color:#4f575f}.um-stat-icon--admin[data-v-41cc1753]{background:#e8eefe;color:#2563eb}.um-stat-icon--archived[data-v-41cc1753]{background:#f3f4f6;color:#6b7280}.um-stat-card--clickable[data-v-41cc1753]{cursor:pointer;transition:box-shadow .18s,transform .15s}.um-stat-card--clickable[data-v-41cc1753]:hover{box-shadow:0 4px 18px #0000001f;transform:translateY(-2px)}.um-stat-icon--teacher[data-v-41cc1753]{background:#fef3c7;color:#b45309}.um-stat-icon--active[data-v-41cc1753]{background:#d8dcdf;color:#4f575f}.um-stat-val[data-v-41cc1753]{font-size:1.6rem;font-weight:800;color:#111;line-height:1}.um-stat-label[data-v-41cc1753]{font-size:.78rem;color:#888;font-weight:500;margin-top:3px}.um-table-wrap[data-v-41cc1753]{background:#fff;border-radius:16px;box-shadow:0 2px 10px #00000012;max-height:62vh;overflow-x:auto;overflow-y:auto}.um-error-banner[data-v-41cc1753]{background:#fee2e2;border:1px solid #fecaca;color:#b91c1c;padding:12px 16px;border-radius:12px;font-size:.9rem;font-weight:600;margin-bottom:14px}.um-info-banner[data-v-41cc1753]{background:#f3f4f6;border:1px solid #b7dfca;color:#4f575f;padding:12px 16px;border-radius:12px;font-size:.9rem;font-weight:600;margin-bottom:14px}.um-submit-btn[disabled][data-v-41cc1753]{opacity:.65;cursor:not-allowed}.um-table[data-v-41cc1753]{width:100%;border-collapse:collapse;font-size:.875rem}.um-table thead tr[data-v-41cc1753]{background:#f7f8fa;border-bottom:1.5px solid #efefef}.um-table th[data-v-41cc1753]{position:sticky;top:0;z-index:2;background:#f7f8fa;text-align:left;font-size:.72rem;font-weight:700;color:#aaa;text-transform:uppercase;letter-spacing:.5px;padding:14px 20px}.um-select-col[data-v-41cc1753]{width:42px;padding-left:14px!important;padding-right:4px!important;text-align:center}.um-select-check[data-v-41cc1753]{width:16px;height:16px;accent-color:#1b4332;cursor:pointer;vertical-align:middle}.um-row[data-v-41cc1753]{border-bottom:1px solid #f4f4f4;transition:background .15s}.um-row[data-v-41cc1753]:last-child{border-bottom:none}.um-row[data-v-41cc1753]:hover{background:#f9fbfa}.um-table td[data-v-41cc1753]{padding:14px 20px;vertical-align:middle}.um-user-cell[data-v-41cc1753]{display:flex;align-items:center;gap:12px}.um-user-avatar[data-v-41cc1753]{width:40px;height:40px;border-radius:50%;object-fit:cover;flex-shrink:0}.um-user-name[data-v-41cc1753]{display:block;font-weight:600;color:#111}.um-user-dept[data-v-41cc1753]{display:block;font-size:.75rem;color:#999;margin-top:2px}.um-email[data-v-41cc1753]{color:#555}.um-date[data-v-41cc1753]{color:#999;font-size:.82rem}.um-role-badge[data-v-41cc1753]{display:inline-block;font-size:.72rem;font-weight:700;padding:3px 12px;border-radius:20px;text-transform:uppercase;letter-spacing:.3px}.um-role-badge--admin[data-v-41cc1753]{background:#e8eefe;color:#2563eb}.um-role-badge--teacher[data-v-41cc1753]{background:#fef3c7;color:#b45309}.um-role-badge--student[data-v-41cc1753]{background:#f0e8fe;color:#7c3aed}.um-status-badge[data-v-41cc1753]{display:inline-flex;align-items:center;gap:6px;font-size:.78rem;font-weight:600;padding:4px 12px;border-radius:20px}.um-status--active[data-v-41cc1753]{background:#d8dcdf;color:#4f575f}.um-status--pending[data-v-41cc1753]{background:#fff7e0;color:#b45309}.um-status--inactive[data-v-41cc1753]{background:#ffeaea;color:#e63946}.um-status--archived[data-v-41cc1753]{background:#f3f4f6;color:#6b7280}.um-status-dot[data-v-41cc1753]{width:7px;height:7px;border-radius:50%;background:currentColor;flex-shrink:0}.um-actions[data-v-41cc1753]{display:flex;flex-direction:column;gap:6px;width:188px}.um-actions-row[data-v-41cc1753]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;width:100%}.um-btn[data-v-41cc1753]{display:flex;align-items:center;justify-content:center;gap:5px;font-family:inherit;font-size:.77rem;font-weight:500;padding:6px 10px;min-height:34px;border-radius:8px;border:none;cursor:pointer;transition:background .15s}.um-actions-row .um-btn[data-v-41cc1753],.um-actions>.um-btn[data-v-41cc1753]{width:100%}.um-btn--edit[data-v-41cc1753]{background:#eef4fe;color:#2563eb}.um-btn--edit[data-v-41cc1753]:hover{background:#dceafd}.um-btn--approve[data-v-41cc1753]{background:#dcfce7;color:#4b5259}.um-btn--approve[data-v-41cc1753]:hover{background:#bbf7d0}.um-btn--deny[data-v-41cc1753]{background:#fee2e2;color:#b91c1c}.um-btn--deny[data-v-41cc1753]:hover{background:#fecaca}.um-btn--archive[data-v-41cc1753]{background:#fff7ed;color:#b45309}.um-btn--archive[data-v-41cc1753]:hover{background:#fde68a}.um-btn--restore[data-v-41cc1753]{background:#f3f4f6;color:#4f575f}.um-btn--restore[data-v-41cc1753]:hover{background:#d1fae5}.um-empty[data-v-41cc1753]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:48px 20px;color:#bbb;font-size:.88rem}.modal-overlay[data-v-41cc1753]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:1000}.um-modal-box[data-v-41cc1753]{background:#fff;border-radius:20px;width:560px;max-width:95vw}.um-modal-box--wide[data-v-41cc1753]{width:660px;max-height:92vh;overflow-y:auto;box-shadow:0 20px 60px #0000002e;position:relative;animation:modalIn-41cc1753 .22s cubic-bezier(.34,1.3,.64,1)}@keyframes modalIn-41cc1753{0%{opacity:0;transform:scale(.94) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}.um-modal-banner[data-v-41cc1753]{background:linear-gradient(135deg,#4b5563,#6b7280);padding:26px 28px 22px;display:flex;align-items:center;gap:16px;border-radius:20px 20px 0 0;position:relative}.um-modal-banner--warning[data-v-41cc1753]{background:linear-gradient(135deg,#92400e,#b45309)}.um-modal-banner-icon[data-v-41cc1753]{width:52px;height:52px;border-radius:14px;background:#ffffff26;display:flex;align-items:center;justify-content:center;flex-shrink:0}.um-modal-banner-text[data-v-41cc1753]{flex:1}.um-modal-banner-title[data-v-41cc1753]{font-size:1.2rem;font-weight:700;color:#fff;margin:0 0 4px;line-height:1.2}.um-modal-banner-sub[data-v-41cc1753]{font-size:.82rem;color:#ffffffb8;margin:0}.um-modal-close[data-v-41cc1753]{position:absolute;top:16px;right:18px;width:30px;height:30px;border-radius:8px;background:#ffffff26;color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}.um-modal-close[data-v-41cc1753]:hover{background:#ffffff47}.um-form[data-v-41cc1753]{display:flex;flex-direction:column;gap:18px;padding:26px 28px 28px}.form-group[data-v-41cc1753]{display:flex;flex-direction:column;gap:7px}.form-row[data-v-41cc1753]{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-row--single[data-v-41cc1753]{grid-template-columns:1fr}.form-label[data-v-41cc1753]{font-size:.78rem;font-weight:700;color:#666;letter-spacing:.4px;text-transform:uppercase}.form-required[data-v-41cc1753]{color:#e63946}.form-input[data-v-41cc1753]{font-family:inherit;font-size:.875rem;color:#111;background:#f7f8fa;border:1.5px solid #ececec;border-radius:10px;padding:11px 14px;outline:none;width:100%;transition:border-color .18s,background .18s,box-shadow .18s}.form-input[data-v-41cc1753]::placeholder{color:#c0c4cc}.form-input[data-v-41cc1753]:focus{border-color:#6b7280;background:#fff;box-shadow:0 0 0 3px #535b6417}.um-pw-error[data-v-41cc1753]{font-size:.82rem;color:#e63946;background:#ffeaea;border-radius:8px;padding:8px 14px;font-weight:500}.reg-avatar-row[data-v-41cc1753]{display:flex;align-items:center;gap:16px;background:#f4f5f5;border:1.5px dashed #c4c9cd;border-radius:14px;padding:14px 18px;margin-bottom:4px}.reg-avatar-wrap[data-v-41cc1753]{width:60px;height:60px;border-radius:50%;background:#e8f0ec;border:2px solid #c4c9cd;display:flex;align-items:center;justify-content:center;flex-shrink:0}.reg-avatar-name[data-v-41cc1753]{font-size:.95rem;font-weight:600;color:#4b5563;margin:0 0 2px}.reg-avatar-role[data-v-41cc1753]{font-size:.78rem;color:#888;margin:0}.reg-section-title[data-v-41cc1753]{display:flex;align-items:center;gap:10px;margin:6px 0 2px}.reg-section-line[data-v-41cc1753]{flex:1;height:1px;background:#ececec}.reg-section-label[data-v-41cc1753]{font-size:.72rem;font-weight:700;color:#aaa;text-transform:uppercase;letter-spacing:.6px;white-space:nowrap}.form-actions[data-v-41cc1753]{display:flex;justify-content:flex-end;align-items:center;gap:12px;padding-top:8px;border-top:1px solid #f0f0f0;margin-top:2px}.um-cancel-btn[data-v-41cc1753]{background:none;border:1.5px solid #e0e0e0;font-family:inherit;font-size:.875rem;font-weight:600;color:#666;cursor:pointer;padding:10px 22px;border-radius:10px;transition:background .15s,border-color .15s}.um-cancel-btn[data-v-41cc1753]:hover{background:#f5f5f5;border-color:#ccc}.um-submit-btn[data-v-41cc1753]{display:flex;align-items:center;gap:7px;background:linear-gradient(135deg,#4b5563,#6b7280);color:#fff;border:none;font-family:inherit;font-size:.875rem;font-weight:600;padding:10px 26px;border-radius:10px;cursor:pointer;transition:opacity .18s,box-shadow .18s;box-shadow:0 4px 14px #30353a40}.um-submit-btn[data-v-41cc1753]:hover{opacity:.9;box-shadow:0 6px 18px #30353a52}.um-delete-box[data-v-41cc1753]{background:#fff;border-radius:20px;padding:36px 40px 32px;width:380px;max-width:94vw;display:flex;flex-direction:column;align-items:center;gap:10px;box-shadow:0 16px 48px #0000002e;text-align:center;animation:modalIn-41cc1753 .22s cubic-bezier(.34,1.3,.64,1)}.um-delete-icon[data-v-41cc1753]{width:72px;height:72px;border-radius:50%;background:#ffeaea;display:flex;align-items:center;justify-content:center;margin-bottom:4px}.um-delete-title[data-v-41cc1753]{font-size:1.4rem;font-weight:700;color:#111;margin:0}.um-delete-sub[data-v-41cc1753]{font-size:.88rem;color:#777;margin:0 0 8px;line-height:1.6}.um-delete-actions[data-v-41cc1753]{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:6px;width:100%}.um-delete-confirm-btn[data-v-41cc1753]{background:#e63946;color:#fff;border:none;font-family:inherit;font-size:.95rem;font-weight:600;padding:10px 32px;border-radius:10px;cursor:pointer;transition:background .18s}.um-delete-confirm-btn[data-v-41cc1753]:hover{background:#c1121f}.um-archive-confirm-btn[data-v-41cc1753]{background:#f59e0b;color:#fff;border:none;font-family:inherit;font-size:.95rem;font-weight:600;padding:10px 32px;border-radius:10px;cursor:pointer;transition:background .18s}.um-archive-confirm-btn[data-v-41cc1753]:hover{background:#d97706}.um-otp-hint[data-v-41cc1753]{font-size:.85rem;color:#666;line-height:1.6;margin:0 0 18px}.otp-input-row[data-v-41cc1753]{display:flex;justify-content:center;margin-bottom:12px}.otp-input[data-v-41cc1753]{text-align:center;letter-spacing:.5em;font-size:1.5rem;font-weight:700;width:290px;padding:12px 18px!important}.otp-resend-row[data-v-41cc1753]{display:flex;align-items:center;gap:6px;justify-content:center;margin-bottom:6px}.otp-resend-text[data-v-41cc1753]{font-size:.83rem;color:#999}.otp-resend-btn[data-v-41cc1753]{background:none;border:none;font-family:inherit;font-size:.83rem;font-weight:600;color:#6b7280;cursor:pointer;padding:0;text-decoration:underline}.um-reset-confirm-btn[data-v-41cc1753]{background:#4b5563;color:#fff;border:none;font-family:inherit;font-size:.95rem;font-weight:600;padding:10px 32px;border-radius:10px;cursor:pointer;transition:background .18s}.um-reset-confirm-btn[data-v-41cc1753]:hover{background:#6b7280}.um-restore-confirm-btn[data-v-41cc1753]{background:#4b5563;color:#fff;border:none;font-family:inherit;font-size:.95rem;font-weight:600;padding:10px 32px;border-radius:10px;cursor:pointer;transition:background .18s}.um-restore-confirm-btn[data-v-41cc1753]:hover{background:#6b7280}.swal-box[data-v-41cc1753]{width:min(430px,calc(100vw - 40px));display:flex;align-items:center;padding:28px 30px 24px;gap:14px;border:1px solid #d5dde1;border-radius:18px;background:#f7f9fa;box-shadow:0 18px 42px #222d3638}.swal-icon[data-v-41cc1753]{display:grid;width:48px;height:48px;place-items:center;flex:0 0 48px;border:1px solid #e2d5b8;border-radius:14px;background:#f8f3e7;color:#765f2e}.swal-text[data-v-41cc1753]{flex:1;color:#202830;font-size:1rem;line-height:1.45;text-align:left}.swal-actions[data-v-41cc1753]{gap:10px;flex:0 0 auto}.swal-cancel[data-v-41cc1753],.swal-continue[data-v-41cc1753]{min-height:40px;border-radius:10px;font-size:.82rem;font-weight:700}.swal-cancel[data-v-41cc1753]{padding:9px 18px;border:1px solid #d6dfe3;background:#fff;color:#59656e}.swal-continue[data-v-41cc1753]{min-width:108px;padding:9px 18px;border:1px solid #3e4d58;background:#44515d;box-shadow:none}.um-toast[data-v-41cc1753]{position:fixed;top:24px;right:24px;z-index:3000;display:flex;align-items:center;gap:10px;min-width:230px;max-width:calc(100vw - 48px);padding:12px 15px;border:1px solid #cbd8d0;border-radius:12px;background:#f7fbf8;color:#3d5547;box-shadow:0 10px 24px #2a343b29;font-size:.78rem;font-weight:650}.um-toast-icon[data-v-41cc1753]{display:grid;width:26px;height:26px;place-items:center;flex:0 0 26px;border-radius:8px;background:#dff1e5;color:#2f8250}.toast-enter-active[data-v-41cc1753],.toast-leave-active[data-v-41cc1753]{transition:opacity .2s ease,transform .2s ease}.toast-enter-from[data-v-41cc1753],.toast-leave-to[data-v-41cc1753]{opacity:0;transform:translateY(-8px)}@media (max-width: 520px){.swal-box[data-v-41cc1753]{flex-wrap:wrap}.swal-text[data-v-41cc1753]{flex-basis:calc(100% - 62px)}.swal-actions[data-v-41cc1753]{width:100%;justify-content:flex-end}}.um-view-tabs[data-v-41cc1753]{display:flex;gap:6px;align-items:center}.um-view-tab[data-v-41cc1753]{display:flex;align-items:center;gap:6px;padding:8px 16px;border-radius:20px;border:1.5px solid #ececec;background:#fff;font-family:inherit;font-size:.84rem;font-weight:500;color:#666;cursor:pointer;transition:all .18s}.um-view-tab[data-v-41cc1753]:hover{border-color:#6b7280;color:#6b7280}.um-view-tab--on[data-v-41cc1753]{background:#4b5563;border-color:#4b5563;color:#fff;font-weight:600}.um-view-tab-badge[data-v-41cc1753]{background:#e63946;color:#fff;font-size:.72rem;font-weight:700;border-radius:20px;padding:1px 7px;min-width:18px;text-align:center}.swal-box[data-v-41cc1753]{background:#fff;border-radius:18px;padding:40px 44px 32px;width:420px;max-width:92vw;display:flex;flex-direction:column;align-items:center;gap:28px;box-shadow:0 20px 60px #0000002e;animation:modalIn-41cc1753 .22s cubic-bezier(.34,1.3,.64,1)}.swal-text[data-v-41cc1753]{font-size:1.15rem;font-weight:700;color:#111;text-align:center;line-height:1.5;margin:0}.swal-actions[data-v-41cc1753]{display:flex;align-items:center;justify-content:center;gap:20px;width:100%}.swal-cancel[data-v-41cc1753]{background:none;border:none;font-family:inherit;font-size:1rem;font-weight:700;color:#e63946;cursor:pointer;padding:10px 28px;border-radius:10px;transition:background .15s}.swal-cancel[data-v-41cc1753]:hover{background:#ffeaea}.swal-continue[data-v-41cc1753]{background:#4b5563;color:#fff;border:none;font-family:inherit;font-size:1rem;font-weight:700;padding:11px 36px;border-radius:10px;cursor:pointer;transition:background .18s;box-shadow:0 4px 14px #30353a38}.swal-continue[data-v-41cc1753]:hover{background:#6b7280}.logout-modal-box[data-v-41cc1753]{background:#fff;border-radius:20px;padding:36px 40px 32px;width:360px;max-width:94vw;display:flex;flex-direction:column;align-items:center;gap:10px;box-shadow:0 16px 48px #0000002e;text-align:center;animation:modalIn-41cc1753 .22s cubic-bezier(.34,1.3,.64,1)}.logout-modal-icon[data-v-41cc1753]{width:68px;height:68px;border-radius:50%;background:#ffeaea;display:flex;align-items:center;justify-content:center;margin-bottom:4px}.logout-modal-title[data-v-41cc1753]{font-size:1.45rem;font-weight:700;color:#111;margin:0}.logout-modal-sub[data-v-41cc1753]{font-size:.9rem;color:#777;margin:0 0 8px}.logout-modal-actions[data-v-41cc1753]{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:6px;width:100%}.logout-cancel-btn[data-v-41cc1753]{background:none;border:none;font-family:inherit;font-size:1rem;font-weight:600;color:#e63946;cursor:pointer;padding:8px 18px;border-radius:10px;transition:background .15s}.logout-cancel-btn[data-v-41cc1753]:hover{background:#ffeaea}.logout-confirm-btn[data-v-41cc1753]{background:#4b5563;color:#fff;border:none;font-family:inherit;font-size:1rem;font-weight:600;padding:10px 32px;border-radius:10px;cursor:pointer;transition:background .18s}.logout-confirm-btn[data-v-41cc1753]:hover{background:#6b7280}@media (max-width: 1100px){.um-stats-row[data-v-41cc1753]{grid-template-columns:repeat(2,1fr)}}@media (max-width: 900px){.main[data-v-41cc1753]{padding:20px 16px 32px}}@media (max-width: 700px){.um-stats-row[data-v-41cc1753]{grid-template-columns:1fr 1fr}.um-table th[data-v-41cc1753]:nth-child(4),.um-table td[data-v-41cc1753]:nth-child(4),.um-table th[data-v-41cc1753]:nth-child(5),.um-table td[data-v-41cc1753]:nth-child(5){display:none}}@media (max-width: 600px){.sidebar[data-v-41cc1753]{width:240px;min-width:240px}.form-row[data-v-41cc1753]{grid-template-columns:1fr}}.layout[data-v-41cc1753]{background:linear-gradient(135deg,#eef1f2,#d7dcdf 48%,#c5ccd0);color:#222a33}.main[data-v-41cc1753]{padding:40px 44px 46px}.main-header[data-v-41cc1753]{display:block;margin-bottom:24px}.main-header[data-v-41cc1753]:before{content:"User management";display:block;margin-bottom:10px;color:#6f7a83;font-size:.72rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.page-title[data-v-41cc1753]{color:#202830;font-size:clamp(2.35rem,3.4vw,2.95rem);line-height:1;letter-spacing:-.06em;font-weight:850}.page-sub[data-v-41cc1753]{margin-top:12px;color:#74808a;font-size:1rem;line-height:1.55}.um-management-panel[data-v-41cc1753]{padding:28px 30px 30px;border:1px solid rgba(255,255,255,.9);border-radius:25px;background:linear-gradient(145deg,#f8fafbe6,#dfe5e9b3);box-shadow:14px 16px 34px #545e6724,-8px -8px 22px #ffffff94,inset 1px 1px #ffffffc2}.um-topbar[data-v-41cc1753]{margin:0 0 22px;padding-bottom:22px;border-bottom:1px solid rgba(151,163,173,.18);gap:16px}.um-view-tabs[data-v-41cc1753]{display:inline-flex;gap:6px;padding:6px;border:1px solid rgba(205,214,220,.9);border-radius:16px;background:#ffffffb8;box-shadow:inset 1px 1px 3px #74808b1f,inset -1px -1px 4px #ffffffe6}.um-view-tab[data-v-41cc1753]{min-height:44px;padding:0 18px;border:1px solid transparent;border-radius:12px;background:transparent;color:#596572;font-size:.82rem;font-weight:850;box-shadow:none}.um-view-tab[data-v-41cc1753]:hover:not(.um-view-tab--on){background:#ffffffb8;border-color:#e2e8ec}.um-view-tab--on[data-v-41cc1753]{border-color:#3d4853;background:linear-gradient(145deg,#5c6873,#36414b);color:#fff;box-shadow:0 8px 18px #3a444e2e,inset 0 1px #ffffff29}.um-view-tab-badge[data-v-41cc1753]{background:#ffffff3d;color:inherit}.um-topbar-right[data-v-41cc1753]{gap:10px;flex-wrap:wrap;justify-content:flex-end}.um-search-input[data-v-41cc1753],.um-filter-select[data-v-41cc1753]{height:46px;border:1px solid #d7e0e6;border-radius:12px;background:#fbfcfd;color:#24303a;font-size:.84rem;box-shadow:inset 0 1px 2px #44505b0f}.um-search-input[data-v-41cc1753]{width:min(330px,32vw);padding-left:40px}.um-search-input[data-v-41cc1753]:focus,.um-filter-select[data-v-41cc1753]:focus{border-color:#6b7884;box-shadow:0 0 0 3px #64717e1f;background:#fff}.um-search-icon[data-v-41cc1753]{left:14px;color:#8a949d}.um-filter-select[data-v-41cc1753]{min-width:145px}.um-add-btn[data-v-41cc1753],.um-approve-all-btn[data-v-41cc1753]{min-height:46px;border:1px solid #3e4a55;border-radius:13px;background:linear-gradient(145deg,#5d6873,#343e48);color:#fff;font-weight:850;box-shadow:0 12px 24px #30394233,inset 0 1px #ffffff2e}.um-add-btn[data-v-41cc1753]:hover,.um-approve-all-btn[data-v-41cc1753]:hover{background:linear-gradient(145deg,#64707b,#3a4650);transform:translateY(-1px)}.um-print-btn[data-v-41cc1753],.um-approve-selected-btn[data-v-41cc1753]{min-height:46px;border:1px solid #dbe3e8;border-radius:13px;background:#fff;color:#4f5b66;font-weight:850;box-shadow:0 8px 16px #58636c14}.um-print-btn[data-v-41cc1753]:hover,.um-approve-selected-btn[data-v-41cc1753]:hover{background:#f7f9fa;border-color:#cfd9df}.um-stats-row[data-v-41cc1753]{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin:0 0 24px}.um-stat-card[data-v-41cc1753]{min-height:94px;padding:18px 20px;border:1px solid rgba(255,255,255,.88);border-radius:18px;background:#ffffffc2;box-shadow:0 14px 28px #525d6617,inset 0 1px #fffc}.um-stat-card[data-v-41cc1753]:hover{transform:translateY(-1px)}.um-stat-icon[data-v-41cc1753]{width:48px;height:48px;border-radius:14px}.um-stat-icon--total[data-v-41cc1753],.um-stat-icon--active[data-v-41cc1753],.um-stat-icon--archived[data-v-41cc1753]{background:linear-gradient(145deg,#eef2f4,#dfe6ea);color:#44515d}.um-stat-val[data-v-41cc1753]{color:#202830;font-size:1.55rem;font-weight:900}.um-stat-label[data-v-41cc1753]{color:#7d8790;font-size:.78rem;font-weight:750}.um-table-wrap[data-v-41cc1753]{border:1px solid rgba(255,255,255,.86);border-radius:22px;background:#ffffffe0;box-shadow:0 16px 30px #525d661a,inset 0 1px #ffffffc7;max-height:58vh}.um-table thead tr[data-v-41cc1753],.um-table th[data-v-41cc1753]{background:#f4f6f7}.um-table th[data-v-41cc1753]{padding:17px 20px;color:#838c94;font-size:.7rem;font-weight:900;letter-spacing:.08em}.um-table td[data-v-41cc1753]{padding:16px 20px}.um-row[data-v-41cc1753]{border-bottom:1px solid #e9eef1;background:#ffffff59}.um-row[data-v-41cc1753]:hover{background:#f8fafbf5}.um-user-avatar[data-v-41cc1753]{width:44px;height:44px;border:2px solid #fff;box-shadow:0 6px 14px #48525b1f}.um-user-name[data-v-41cc1753]{color:#202830;font-size:.92rem;font-weight:850}.um-user-dept[data-v-41cc1753]{color:#8a949d;font-weight:500}.um-email[data-v-41cc1753]{color:#56616b;font-weight:600}.um-date[data-v-41cc1753]{color:#8a949d;font-size:.82rem;font-weight:600}.um-role-badge[data-v-41cc1753],.um-status-badge[data-v-41cc1753]{font-weight:900}.um-status--active[data-v-41cc1753]{background:#e4e8eb;color:#4f5b66}.um-status--denied[data-v-41cc1753]{background:#fee2e2;color:#b91c1c}.um-actions[data-v-41cc1753]{width:196px}.um-btn[data-v-41cc1753]{min-height:36px;border:1px solid transparent;border-radius:11px;font-size:.76rem;font-weight:850}.um-btn--edit[data-v-41cc1753]{background:#edf4ff;color:#2f70e8}.um-btn--archive[data-v-41cc1753]{background:#fff4e8;color:#c4621b}.um-btn--approve[data-v-41cc1753]{background:#eaf7f0;color:#2a8752}.um-btn--deny[data-v-41cc1753]{background:#fff0f0;color:#b91c1c}.um-btn--restore[data-v-41cc1753]{background:#eef2f4;color:#44515d}.um-empty[data-v-41cc1753]{color:#7b858d;font-weight:750}@media (max-width:1280px){.um-stats-row[data-v-41cc1753]{grid-template-columns:repeat(3,minmax(0,1fr))}.um-search-input[data-v-41cc1753]{width:260px}}@media (max-width:900px){.main[data-v-41cc1753]{padding:24px 18px}.um-management-panel[data-v-41cc1753]{padding:20px;border-radius:22px}.um-topbar[data-v-41cc1753]{align-items:flex-start}.um-topbar-right[data-v-41cc1753]{justify-content:flex-start;width:100%}.um-search-wrap[data-v-41cc1753],.um-search-input[data-v-41cc1753],.um-filter-select[data-v-41cc1753],.um-print-btn[data-v-41cc1753],.um-add-btn[data-v-41cc1753]{width:100%}.um-stats-row[data-v-41cc1753]{grid-template-columns:1fr 1fr}.um-table-wrap[data-v-41cc1753]{max-height:none}.um-actions[data-v-41cc1753]{width:170px}}@media (max-width:640px){.um-stats-row[data-v-41cc1753]{grid-template-columns:1fr}.page-title[data-v-41cc1753]{font-size:2.15rem}.um-view-tabs[data-v-41cc1753]{width:100%;overflow:auto}.um-view-tab[data-v-41cc1753]{white-space:nowrap}.um-table th[data-v-41cc1753],.um-table td[data-v-41cc1753]{padding:14px}}.um-status--active[data-v-41cc1753]{background:#e6f7ed;color:#23834d;border:1px solid #bfe8cf}.um-status--active .um-status-dot[data-v-41cc1753]{background:#2fa866}.um-stat-icon--active[data-v-41cc1753]{background:#e6f7ed;color:#23834d}.modal-overlay[data-v-41cc1753]{padding:22px;background:#1f232794;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.um-modal-box--wide[data-v-41cc1753]{display:flex;flex-direction:column;width:min(760px,calc(100vw - 44px));max-height:calc(100vh - 58px);overflow:hidden;border:1px solid rgba(255,255,255,.82);border-radius:22px;background:#fff;box-shadow:0 28px 80px #12181e57}.um-modal-banner[data-v-41cc1753]{flex:0 0 auto;min-height:112px;padding:24px 32px;background:linear-gradient(145deg,#6a7480,#424d58);border-radius:22px 22px 0 0}.um-modal-banner-icon[data-v-41cc1753]{width:58px;height:58px;border-radius:16px;background:#ffffff24}.um-modal-banner-title[data-v-41cc1753]{font-size:1.35rem;font-weight:850;letter-spacing:-.035em}.um-modal-banner-sub[data-v-41cc1753]{font-size:.88rem}.um-modal-close[data-v-41cc1753]{top:18px;right:20px;width:38px;height:38px;border:1px solid rgba(255,255,255,.16);border-radius:12px}.um-modal-box--wide .um-form[data-v-41cc1753]{flex:1;min-height:0;overflow-y:auto;padding:28px 34px 0;gap:20px}.reg-avatar-row[data-v-41cc1753]{align-items:center;gap:18px;margin:0 0 4px;padding:18px 22px;border:1px dashed #bdc7cf;border-radius:18px;background:#f8fafb}.reg-avatar-wrap[data-v-41cc1753]{width:70px;height:70px;background:#eef2f4;border-color:#cfd8de}.reg-avatar-name[data-v-41cc1753]{font-size:1.02rem;font-weight:850;color:#303943}.reg-avatar-role[data-v-41cc1753]{font-size:.82rem;color:#8a949d}.reg-section-title[data-v-41cc1753]{margin:12px 0 0}.reg-section-label[data-v-41cc1753]{color:#9aa2aa;font-size:.72rem;font-weight:900;letter-spacing:.08em}.form-row[data-v-41cc1753]{gap:18px 20px}.form-group[data-v-41cc1753]{gap:8px}.form-label[data-v-41cc1753]{color:#5f6973;font-size:.74rem;font-weight:900;letter-spacing:.045em}.form-input[data-v-41cc1753]{min-height:48px;border:1px solid #dce3e8;border-radius:12px;background:#fbfcfd;color:#26313b;font-size:.88rem;box-shadow:inset 0 1px 2px #44505b0a}.form-input[data-v-41cc1753]:focus{border-color:#6b7884;background:#fff;box-shadow:0 0 0 3px #64717e1f}.form-actions[data-v-41cc1753]{position:sticky;bottom:0;margin:4px -34px 0;padding:18px 34px 22px;border-top:1px solid #e6ecef;background:linear-gradient(180deg,#ffffffeb,#fff);box-shadow:0 -12px 24px #525d660f}.um-cancel-btn[data-v-41cc1753],.um-submit-btn[data-v-41cc1753]{min-height:46px;border-radius:13px;font-size:.88rem;font-weight:850}.um-cancel-btn[data-v-41cc1753]{min-width:120px;background:#fff;color:#4f5b66;border:1px solid #dbe3e8}.um-submit-btn[data-v-41cc1753]{min-width:190px;justify-content:center;background:linear-gradient(145deg,#5d6873,#343e48);box-shadow:0 12px 24px #3039422e,inset 0 1px #ffffff2e}@media (max-width:760px){.um-modal-box--wide[data-v-41cc1753]{width:calc(100vw - 28px);max-height:calc(100vh - 28px)}.um-modal-banner[data-v-41cc1753]{padding:22px 24px}.um-modal-box--wide .um-form[data-v-41cc1753]{padding:24px 24px 0}.form-actions[data-v-41cc1753]{margin-left:-24px;margin-right:-24px;padding:16px 24px 20px}.form-row[data-v-41cc1753]{grid-template-columns:1fr}.reg-avatar-row[data-v-41cc1753]{align-items:flex-start}}.um-table-wrap[data-v-41cc1753]{max-height:none;overflow-x:auto;overflow-y:visible}.um-table th[data-v-41cc1753]{position:static}.um-table tbody tr:first-child td[data-v-41cc1753]{border-top:0}.um-table td[data-v-41cc1753]{height:auto}.um-status--active[data-v-41cc1753]{background:#dcfce7;color:#188246;border-color:#a7e8bd}.um-status--active .um-status-dot[data-v-41cc1753]{background:#22b35d}.um-modal-box--wide[data-v-41cc1753]{width:min(840px,calc(100vw - 44px));max-height:none;overflow:visible}.um-modal-box--wide .um-form[data-v-41cc1753]{overflow:visible;padding:22px 30px 0;gap:13px}.um-modal-banner[data-v-41cc1753]{min-height:96px;padding:20px 30px}.um-modal-banner-icon[data-v-41cc1753]{width:50px;height:50px}.um-modal-banner-title[data-v-41cc1753]{font-size:1.26rem}.um-modal-banner-sub[data-v-41cc1753]{font-size:.84rem}.reg-avatar-row[data-v-41cc1753]{padding:13px 16px;border-radius:15px;margin-bottom:0}.reg-avatar-wrap[data-v-41cc1753]{width:54px;height:54px}.reg-avatar-wrap svg[data-v-41cc1753]{width:28px;height:28px}.reg-avatar-name[data-v-41cc1753]{font-size:.96rem}.reg-avatar-role[data-v-41cc1753]{font-size:.76rem}.reg-section-title[data-v-41cc1753]{margin:5px 0 -2px}.reg-section-label[data-v-41cc1753]{font-size:.68rem}.form-row[data-v-41cc1753]{gap:12px 18px}.form-group[data-v-41cc1753]{gap:6px}.form-label[data-v-41cc1753]{font-size:.7rem}.form-input[data-v-41cc1753]{min-height:42px;padding:9px 13px;border-radius:11px}.form-actions[data-v-41cc1753]{position:static;margin:0 -30px;padding:14px 30px 18px}.um-cancel-btn[data-v-41cc1753],.um-submit-btn[data-v-41cc1753]{min-height:42px}.um-submit-btn[data-v-41cc1753]{min-width:175px}.um-cancel-btn[data-v-41cc1753]{min-width:112px}@media (max-height:760px){.um-modal-box--wide[data-v-41cc1753]{width:min(900px,calc(100vw - 36px))}.um-modal-box--wide .um-form[data-v-41cc1753]{gap:10px;padding-top:18px}.um-modal-banner[data-v-41cc1753]{min-height:86px;padding:16px 28px}.reg-avatar-row[data-v-41cc1753]{padding:10px 14px}.reg-avatar-wrap[data-v-41cc1753]{width:48px;height:48px}.reg-section-title[data-v-41cc1753]{margin:2px 0 -4px}.form-input[data-v-41cc1753]{min-height:38px;padding:7px 12px}.form-actions[data-v-41cc1753]{padding-top:11px;padding-bottom:14px}.um-cancel-btn[data-v-41cc1753],.um-submit-btn[data-v-41cc1753]{min-height:38px}}@media (max-width:760px){.um-modal-box--wide[data-v-41cc1753]{max-height:none;overflow:visible}.um-modal-box--wide .um-form[data-v-41cc1753]{overflow:visible}.form-actions[data-v-41cc1753]{position:static}.um-table-wrap[data-v-41cc1753]{overflow-x:auto}}.main-header[data-v-41cc1753]:before{display:none}.main[data-v-41cc1753]{padding:32px 38px 44px}.main-header[data-v-41cc1753]{margin-bottom:25px}.um-management-panel[data-v-41cc1753]{padding:17px 27px 24px!important;border:1px solid var(--metal-line)!important;border-radius:20px!important;background:var(--metal-surface-soft)!important;box-shadow:var(--metal-shadow)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.um-topbar[data-v-41cc1753]{margin-bottom:16px;padding-bottom:15px;border-bottom:1px solid #e1e6e9}.um-view-tabs[data-v-41cc1753]{gap:7px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.um-view-tab[data-v-41cc1753]{min-height:38px;padding:7px 12px;border:1px solid #d8dee2;border-radius:10px;background:#f7f8f9;color:#59656e;font-size:.72rem;font-weight:600}.um-view-tab[data-v-41cc1753]:hover:not(.um-view-tab--on){background:#eef2f4}.um-view-tab--on[data-v-41cc1753]{border-color:#3f4d57;background:#3f4d57;box-shadow:0 5px 12px #2d384029}.um-topbar-right[data-v-41cc1753]{gap:8px}.um-search-input[data-v-41cc1753],.um-filter-select[data-v-41cc1753],.um-print-btn[data-v-41cc1753]{height:42px;border:1px solid #d8e0e5;border-radius:10px;background:linear-gradient(145deg,#fff,#f0f3f4);color:#3f4d57;box-shadow:none}.um-search-input[data-v-41cc1753]:focus,.um-filter-select[data-v-41cc1753]:focus{border-color:#7c8994;box-shadow:0 0 0 3px #64748b1a}.um-print-btn[data-v-41cc1753]{padding:0 14px}.um-add-btn[data-v-41cc1753],.um-approve-all-btn[data-v-41cc1753],.um-approve-selected-btn[data-v-41cc1753]{min-height:42px;border:1px solid #3e4d58;border-radius:11px;background:linear-gradient(145deg,#5c6771,#343e47);box-shadow:0 7px 14px #2d373f2e}.um-add-btn[data-v-41cc1753]:hover,.um-approve-all-btn[data-v-41cc1753]:hover,.um-approve-selected-btn[data-v-41cc1753]:hover{background:linear-gradient(145deg,#687580,#3d4852)}.um-stats-row[data-v-41cc1753]{gap:12px;margin-bottom:20px}.um-stat-card[data-v-41cc1753]{min-height:86px;padding:15px 16px;border:1px solid #e0e6e9;border-radius:15px;background:#fff;box-shadow:0 7px 18px #2a343b12}.um-stat-card[data-v-41cc1753]:hover{transform:translateY(-1px);box-shadow:0 10px 22px #2a343b1a}.um-stat-card--selected[data-v-41cc1753]{border-color:#7c8994;box-shadow:0 0 0 2px #64748b1f,0 8px 18px #2a343b14}.um-stat-icon[data-v-41cc1753]{width:42px;height:42px;border-radius:12px}.um-stat-val[data-v-41cc1753]{font-size:1.35rem;font-weight:800}.um-stat-label[data-v-41cc1753]{font-size:.7rem;font-weight:650}.um-table-wrap[data-v-41cc1753]{border:1px solid #dce3e7;border-radius:17px;background:#fff;box-shadow:0 10px 24px #2a343b14}.um-table thead tr[data-v-41cc1753],.um-table th[data-v-41cc1753]{background:#f3f6f7}.um-table th[data-v-41cc1753]{padding:14px 17px;color:#78848c;font-size:.66rem}.um-table td[data-v-41cc1753]{padding:14px 17px}.um-row[data-v-41cc1753]:hover{background:#f7f9fa}.um-btn[data-v-41cc1753]{min-height:34px;border-radius:9px}.um-view-tabs[data-v-41cc1753]{display:flex;align-items:center;gap:7px}.um-view-tab[data-v-41cc1753]{min-width:112px;justify-content:center}.um-view-tab--on[data-v-41cc1753]{color:#fff}.um-table[data-v-41cc1753]{table-layout:fixed}.um-table th[data-v-41cc1753]:nth-child(1),.um-table td[data-v-41cc1753]:nth-child(1){width:26px}.um-table th[data-v-41cc1753]:nth-child(2),.um-table td[data-v-41cc1753]:nth-child(2){width:25%}.um-table th[data-v-41cc1753]:nth-child(3),.um-table td[data-v-41cc1753]:nth-child(3){width:29%}.um-table th[data-v-41cc1753]:nth-child(4),.um-table td[data-v-41cc1753]:nth-child(4){width:11%}.um-table th[data-v-41cc1753]:nth-child(5),.um-table td[data-v-41cc1753]:nth-child(5){width:12%}.um-table th[data-v-41cc1753]:nth-child(6),.um-table td[data-v-41cc1753]:nth-child(6){width:10%}.um-table th[data-v-41cc1753]:nth-child(7),.um-table td[data-v-41cc1753]:nth-child(7){width:88px}.um-user-info[data-v-41cc1753]{min-width:0}.um-table th[data-v-41cc1753]:nth-child(2),.um-table td[data-v-41cc1753]:nth-child(2){padding-left:10px}.um-user-cell[data-v-41cc1753]{gap:7px}.um-table th[data-v-41cc1753],.um-table td[data-v-41cc1753]{padding-top:10px;padding-bottom:10px}.um-table th[data-v-41cc1753]:nth-child(2),.um-table td[data-v-41cc1753]:nth-child(2){padding-right:10px}.um-table th[data-v-41cc1753]:nth-child(3),.um-table td[data-v-41cc1753]:nth-child(3){padding-left:10px;padding-right:10px}.um-user-avatar[data-v-41cc1753]{width:36px;height:36px}.um-user-name[data-v-41cc1753],.um-user-dept[data-v-41cc1753],.um-email[data-v-41cc1753]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem}.um-actions[data-v-41cc1753]{width:64px}.um-actions-row[data-v-41cc1753]{display:flex;justify-content:flex-end;gap:4px}.um-actions .um-btn[data-v-41cc1753]{width:30px!important;height:30px;min-height:30px;padding:0;font-size:0;flex:0 0 34px}.um-actions .um-btn svg[data-v-41cc1753]{width:14px;height:14px;flex:0 0 auto}.um-actions .um-btn[data-v-41cc1753]:hover{transform:translateY(-1px)}@media (max-width: 900px){.main[data-v-41cc1753]{padding:24px 18px 32px}.um-management-panel[data-v-41cc1753]{padding:17px 20px 20px}}.page-title[data-v-41cc1753]{display:flex;flex-direction:column;gap:3px;line-height:1}.page-title-kicker[data-v-41cc1753]{color:#68747d;font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.page-title-main[data-v-41cc1753]{color:#202830;font-size:clamp(2rem,3vw,2.55rem);font-weight:700;letter-spacing:-.04em}.um-management-panel[data-v-41cc1753]{background:#f3f5f6!important;border-color:#d5dde1!important;box-shadow:0 10px 26px #2a343b14!important}.um-view-tabs[data-v-41cc1753]{background:transparent;box-shadow:none}.um-view-tab--on[data-v-41cc1753],.um-add-btn[data-v-41cc1753],.um-approve-all-btn[data-v-41cc1753],.um-approve-selected-btn[data-v-41cc1753]{background:#44515d;box-shadow:none}.um-view-tab--on[data-v-41cc1753]:hover,.um-add-btn[data-v-41cc1753]:hover,.um-approve-all-btn[data-v-41cc1753]:hover,.um-approve-selected-btn[data-v-41cc1753]:hover{background:#35424d}.um-search-input[data-v-41cc1753],.um-filter-select[data-v-41cc1753],.um-print-btn[data-v-41cc1753]{background:#fff;box-shadow:none}.um-stats-row[data-v-41cc1753]{gap:12px}.um-stats-row[data-v-41cc1753]{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.um-stat-card[data-v-41cc1753]{background:#fff;border-color:#dbe3e7;box-shadow:0 5px 14px #2a343b0f}.um-stat-card[data-v-41cc1753]:hover{box-shadow:0 8px 18px #2a343b14}.um-table-wrap[data-v-41cc1753]{border-color:#d5dde1;background:#fff;box-shadow:0 7px 18px #2a343b12}.um-table thead tr[data-v-41cc1753],.um-table th[data-v-41cc1753]{background:#edf1f2}.um-row[data-v-41cc1753]{background:#fff}.um-user-avatar[data-v-41cc1753]{box-shadow:none}.um-stat-icon--admin-teacher[data-v-41cc1753]{background:#e6eef2;color:#4a6875}.um-stat-card .um-stat-label[data-v-41cc1753]{line-height:1.2}.um-stat-card[data-v-41cc1753]{gap:9px;padding:13px 10px}.um-stat-icon[data-v-41cc1753]{width:36px;height:36px;border-radius:10px}.um-stat-val[data-v-41cc1753]{font-size:1.2rem}.um-stat-label[data-v-41cc1753]{font-size:.6rem;white-space:nowrap}@media (max-width: 1280px){.um-stats-row[data-v-41cc1753]{grid-template-columns:repeat(6,minmax(0,1fr))}}@media (max-width: 900px){.um-stats-row[data-v-41cc1753]{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 700px){.um-stats-row[data-v-41cc1753]{grid-template-columns:repeat(2,minmax(0,1fr))}}.um-modal-box--wide[data-v-41cc1753]{border-color:#d5dde1;border-radius:18px;background:#f7f9fa;box-shadow:0 18px 42px #222d3638}.um-modal-banner[data-v-41cc1753]{min-height:88px;padding:18px 28px;border-radius:18px 18px 0 0;border-bottom:1px solid #d7dfe3;background:linear-gradient(145deg,#f8fafb,#e4e8ea)}.um-modal-banner-icon[data-v-41cc1753]{width:46px;height:46px;border-radius:12px;background:#dfe5e8}.um-modal-banner-icon svg[data-v-41cc1753]{stroke:#3f4d57}.um-modal-banner-title[data-v-41cc1753]{color:#202830;font-size:1.25rem;font-weight:700}.um-modal-banner-sub[data-v-41cc1753]{color:#68747d;font-size:.82rem}.um-modal-close[data-v-41cc1753]{border-color:#cbd5da;border-radius:9px;background:#fff;color:#3f4d57}.um-modal-box--wide .um-form[data-v-41cc1753]{padding:20px 30px 0;gap:13px;background:#f7f9fa}.reg-avatar-row[data-v-41cc1753]{padding:12px 16px;border-color:#d3dde2;border-radius:13px;background:#fff}.reg-section-line[data-v-41cc1753]{background:#d6dfe3}.form-input[data-v-41cc1753]{background:#fff;box-shadow:none}.form-input[data-v-41cc1753]:focus{box-shadow:0 0 0 3px #64748b1a}.form-actions[data-v-41cc1753]{margin:0 -30px;padding:14px 30px 18px;border-top-color:#dce3e7;background:#f7f9fa;box-shadow:none}.um-cancel-btn[data-v-41cc1753],.um-submit-btn[data-v-41cc1753]{min-height:40px;border-radius:10px}.um-submit-btn[data-v-41cc1753]{background:#44515d;box-shadow:none}.um-submit-btn[data-v-41cc1753]:hover{background:#35424d}@media (max-width: 640px){.page-title-main[data-v-41cc1753]{font-size:2.15rem}}.swal-box[data-v-41cc1753]{width:min(420px,calc(100vw - 40px));display:flex;flex-direction:column;align-items:center;gap:12px;padding:26px 28px 22px;border:1px solid #d5dde1;border-radius:18px;background:#f7f9fa;box-shadow:0 18px 42px #222d3638}.swal-icon[data-v-41cc1753]{width:60px;height:60px;flex-basis:60px;border:1px solid #dfcfaa;border-radius:16px;background:#f8f3e7;color:#765f2e}.swal-icon svg[data-v-41cc1753]{width:28px;height:28px}.swal-text[data-v-41cc1753]{flex:none;max-width:290px;margin:0;color:#202830;font-size:1rem;font-weight:700;line-height:1.4;text-align:center}.swal-actions[data-v-41cc1753]{gap:8px;margin-top:2px}.swal-cancel[data-v-41cc1753],.swal-continue[data-v-41cc1753]{min-height:38px;border-radius:10px;font-size:.8rem}.swal-cancel[data-v-41cc1753]{min-width:82px;padding:8px 16px;border:1px solid #d6dfe3;background:#fff;color:#59656e}.swal-continue[data-v-41cc1753]{min-width:108px;padding:8px 16px;border:1px solid #3e4d58;background:#44515d;box-shadow:0 5px 10px #2d373f24}.swal-cancel[data-v-41cc1753]:hover{background:#eef2f4}.swal-continue[data-v-41cc1753]:hover{background:#35424d}.layout[data-v-8bd144c7]{display:flex;height:100vh;overflow:hidden;background:#f5f6f8;font-family:Poppins,sans-serif}.sidebar[data-v-8bd144c7]{width:280px;min-width:280px;background:#fff;border-right:1px solid #ececec;display:flex;flex-direction:column;align-items:center;padding:28px 18px 24px;position:sticky;top:0;height:100vh;overflow-y:auto}.sidebar-profile[data-v-8bd144c7]{display:flex;flex-direction:column;align-items:center;gap:6px;margin-bottom:28px;text-align:center}.avatar-wrap[data-v-8bd144c7]{width:96px;height:96px;border-radius:50%;overflow:hidden;margin-bottom:10px;border:3px solid #c4c9cd}.avatar[data-v-8bd144c7]{width:100%;height:100%;object-fit:cover}.brand[data-v-8bd144c7]{font-size:1.05rem;font-weight:600;color:#4b5563}.role[data-v-8bd144c7]{font-size:.88rem;color:#444;font-weight:500}.email[data-v-8bd144c7]{font-size:.82rem;color:#888;word-break:break-all}.sidebar-nav[data-v-8bd144c7]{display:flex;flex-direction:column;gap:4px;width:100%;flex:1}.nav-item[data-v-8bd144c7]{display:flex;align-items:center;gap:10px;padding:11px 16px;border-radius:10px;font-size:.88rem;font-weight:400;color:#444;text-decoration:none;cursor:pointer;transition:background .18s,color .18s}.nav-item[data-v-8bd144c7]:hover{background:#f8fafc;color:#4b5563}.nav-item.active[data-v-8bd144c7]{background:#4b5563;color:#fff}.nav-item.active .nav-icon[data-v-8bd144c7]{color:#fff}.nav-icon[data-v-8bd144c7]{display:flex;align-items:center;flex-shrink:0}.logout-btn[data-v-8bd144c7]{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:11px 12px;background:#e63946;color:#fff;border:none;border-radius:10px;font-size:.85rem;font-weight:500;font-family:inherit;cursor:pointer;transition:background .2s;margin-top:16px}.logout-btn[data-v-8bd144c7]:hover{background:#c1121f}.main[data-v-8bd144c7]{flex:1;padding:40px 44px 32px;overflow-y:auto;min-width:0;display:flex;flex-direction:column}.main-header[data-v-8bd144c7]{margin-bottom:28px;display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.header-left[data-v-8bd144c7]{display:flex;flex-direction:column;gap:4px;max-width:780px}.header-right[data-v-8bd144c7]{flex-shrink:0;padding-top:4px;display:flex;flex-direction:column;align-items:flex-end;gap:10px}.term-banner[data-v-8bd144c7]{color:#334155;font-size:.95rem;font-weight:600}.page-eyebrow[data-v-8bd144c7]{color:#707c85;font-size:.63rem;font-weight:750;letter-spacing:.11em;line-height:1;text-transform:uppercase}.page-title[data-v-8bd144c7]{margin-top:8px;color:#1f2933;font-size:clamp(2rem,3vw,2.65rem);font-weight:500;letter-spacing:-.04em;line-height:1.08}.page-sub[data-v-8bd144c7]{max-width:760px;margin-top:9px;color:#66727c;font-size:.94rem;line-height:1.55}.breadcrumb[data-v-8bd144c7]{display:flex;align-items:center;gap:6px;margin-bottom:6px}.bc-btn[data-v-8bd144c7]{background:none;border:none;font-family:inherit;font-size:.83rem;color:#9ca3af;font-weight:500;cursor:pointer;padding:0;transition:color .15s;text-decoration:underline;text-underline-offset:2px}.bc-btn[data-v-8bd144c7]:hover{color:#4b5563}.bc-active[data-v-8bd144c7]{color:#4b5563!important;text-decoration:none;cursor:default}.bc-current[data-v-8bd144c7]{font-size:.83rem;font-weight:700;color:#4b5563}.icon-btn[data-v-8bd144c7]{background:linear-gradient(145deg,#eef6ff,#d8eaff);border:1px solid #9fc4ee;border-radius:8px;padding:6px 10px;cursor:pointer;color:#2f7ed8;display:flex;align-items:center;box-shadow:0 3px 8px #2f7ed81f,inset 0 1px #fffc;transition:border-color .15s,color .15s,background .15s,transform .15s}.icon-btn[data-v-8bd144c7]:hover{border-color:#6ea8e8;color:#1f6ec4;background:linear-gradient(145deg,#f6fbff,#cfe5ff);transform:translateY(-1px)}.mode-select-container[data-v-8bd144c7]{display:flex;flex-direction:column;gap:16px}.mode-grid[data-v-8bd144c7]{display:flex;gap:24px;flex-wrap:wrap}.mode-card[data-v-8bd144c7]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;width:260px;min-height:220px;padding:36px 28px;background:#fff;border:2px solid #e0e0e0;border-radius:18px;cursor:pointer;transition:all .2s;font-family:inherit;box-shadow:0 2px 8px #0000000f}.mode-card[data-v-8bd144c7]:hover{border-color:#9ca3af;background:#f8fafc;transform:translateY(-2px);box-shadow:0 6px 20px #535b6426}.mode-icon-wrap[data-v-8bd144c7]{width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,#f3f4f6,#d8dcdf);display:flex;align-items:center;justify-content:center;color:#4b5563}.mode-label[data-v-8bd144c7]{font-size:1.1rem;font-weight:700;color:#4b5563}.mode-desc[data-v-8bd144c7]{font-size:.85rem;color:#888;text-align:center;line-height:1.4}.teacher-search-wrap[data-v-8bd144c7]{display:flex;align-items:center;gap:10px;width:min(420px,100%);padding:12px 14px;border:1.5px solid #dce8e1;border-radius:999px;background:#f4f5f5;margin-bottom:16px}.teacher-search-icon[data-v-8bd144c7]{color:#9ca3af;flex-shrink:0}.teacher-search-input[data-v-8bd144c7]{border:none;outline:none;background:transparent;width:100%;font-size:.95rem;color:#4b5563;font-family:inherit}.teacher-grid[data-v-8bd144c7]{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;width:100%;max-width:1200px}.teacher-card[data-v-8bd144c7]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:180px;padding:20px 16px;width:100%;box-sizing:border-box;min-width:0;background:#fff;border:1.5px solid #e0e0e0;border-radius:16px;cursor:pointer;transition:all .18s;font-family:inherit;box-shadow:0 1px 4px #0000000d}.teacher-card[data-v-8bd144c7]:hover{border-color:#9ca3af;background:#f8fafc;transform:translateY(-2px);box-shadow:0 4px 14px #535b6424}.teacher-avatar-img[data-v-8bd144c7]{width:88px;height:88px;border-radius:50%;object-fit:cover;border:3px solid #dfe2e4;box-shadow:0 4px 12px #30353a1f}.teacher-avatar[data-v-8bd144c7]{width:88px;height:88px;border-radius:50%;background:linear-gradient(135deg,#4b5563,#9ca3af);color:#fff;font-size:1.15rem;font-weight:700;display:flex;align-items:center;justify-content:center;letter-spacing:.03em}.teacher-name[data-v-8bd144c7]{font-size:.95rem;font-weight:600;color:#4b5563;text-align:center;line-height:1.3}.small-empty-state[data-v-8bd144c7]{padding:18px 20px;border-radius:12px;background:#f4f5f5;border:1px dashed #cfe3d8;color:#5d7a6d}@media (max-width: 900px){.teacher-grid[data-v-8bd144c7]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 560px){.teacher-grid[data-v-8bd144c7]{grid-template-columns:1fr}}.step-container[data-v-8bd144c7]{display:flex;flex-direction:column;gap:20px}.step-hint[data-v-8bd144c7]{font-size:.9rem;color:#888;margin:0}.floor-grid[data-v-8bd144c7]{display:flex;gap:20px;flex-wrap:wrap;flex-direction:column}.floor-card[data-v-8bd144c7]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;width:220px;min-height:190px;padding:32px 24px;background:#fff;border:2px solid #e0e0e0;border-radius:18px;cursor:pointer;transition:all .2s;box-shadow:0 2px 8px #0000000f;font-family:inherit}.floor-card[data-v-8bd144c7]:hover{border-color:#9ca3af;background:#f8fafc;transform:translateY(-2px);box-shadow:0 6px 20px #535b6426}.floor-card-expanded[data-v-8bd144c7]{width:100%;min-height:auto;align-items:flex-start;justify-content:flex-start;padding:24px 28px}.floor-card-header[data-v-8bd144c7]{display:flex;align-items:center;gap:12px;margin-bottom:16px}.floor-card-meta[data-v-8bd144c7]{display:flex;flex-direction:column;gap:4px}.floor-room-buttons[data-v-8bd144c7]{display:flex;flex-wrap:wrap;gap:10px;width:100%}.floor-room-btn[data-v-8bd144c7]{border:1px solid #dce8e1;background:#f4f5f5;color:#4b5563;border-radius:999px;padding:8px 14px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .18s;font-family:inherit}.floor-room-btn[data-v-8bd144c7]:hover{border-color:#9ca3af;background:#e8f5ea;transform:translateY(-1px)}.floor-number[data-v-8bd144c7]{width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,#4b5563,#9ca3af);color:#fff;font-size:1.5rem;font-weight:700;display:flex;align-items:center;justify-content:center;margin-bottom:4px}.floor-label[data-v-8bd144c7]{font-size:1rem;font-weight:600;color:#4b5563}.floor-room-count[data-v-8bd144c7]{font-size:.78rem;color:#888}.room-grid[data-v-8bd144c7]{display:flex;flex-wrap:wrap;gap:14px}.room-card[data-v-8bd144c7]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;width:155px;min-height:140px;padding:20px 14px;background:#fff;border:1.5px solid #e0e0e0;border-radius:14px;cursor:pointer;transition:all .18s;box-shadow:0 1px 4px #0000000d;font-family:inherit}.room-card[data-v-8bd144c7]:hover{border-color:#9ca3af;background:#f8fafc;transform:translateY(-2px);box-shadow:0 4px 14px #535b6424}.room-card-comlab[data-v-8bd144c7]{border-color:#c5e1f9;background:#f0f8ff}.room-card-comlab[data-v-8bd144c7]:hover{border-color:#4a90d9;background:#e8f4ff}.room-card-icon[data-v-8bd144c7]{color:#4b5563;opacity:.5}.room-card-comlab .room-card-icon[data-v-8bd144c7]{color:#4a90d9}.room-card-number[data-v-8bd144c7]{font-size:1rem;font-weight:700;color:#4b5563;text-align:center}.room-card-floor[data-v-8bd144c7]{font-size:.72rem;color:#888}.schedule-card[data-v-8bd144c7]{background:#eef1f2;border:1px solid rgba(255,255,255,.88);border-radius:18px;box-shadow:0 14px 34px #262e341c,inset 0 1px #fff;padding:0;overflow:visible;display:flex;flex-direction:column;flex:1}.sched-topbar[data-v-8bd144c7]{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0;padding:18px 20px;border:0;border-bottom:1px solid #d7dde1;border-radius:17px 17px 0 0;background:linear-gradient(135deg,#fff,#eceff0);box-shadow:inset 0 1px #fff;flex-wrap:wrap}.sched-topbar-left[data-v-8bd144c7]{min-width:0;flex:1}.sched-topbar-right[data-v-8bd144c7]{display:flex;align-items:center;gap:10px;padding:4px;border:1px solid #d3dade;border-radius:11px;background:#eef1f2}.sched-grid-title[data-v-8bd144c7]{display:flex;align-items:center;color:#252d33;font-size:1.3rem;font-weight:750;line-height:1.25;letter-spacing:-.025em;margin:0 0 4px}.sched-grid-title svg[data-v-8bd144c7]{width:19px;height:19px;flex:0 0 19px;margin-right:9px!important}.sched-grid-sub[data-v-8bd144c7]{color:#707b83;font-size:.72rem;font-weight:500;margin:0}.schedule-back-btn[data-v-8bd144c7]{display:grid;width:40px;height:40px;flex:0 0 40px;place-items:center;padding:0;color:#46535c;border:1px solid #c8d0d5;border-radius:10px;background:linear-gradient(145deg,#fff,#e2e6e8);box-shadow:0 3px 8px #272f3514,inset 0 1px #fff;font:inherit;font-size:1rem;cursor:pointer;transition:border-color .16s ease,background .16s ease,transform .16s ease}.schedule-back-btn[data-v-8bd144c7]:hover{color:#202a31;border-color:#939fa7;background:#fff;transform:translate(-2px)}.schedule-back-btn[data-v-8bd144c7]:focus-visible{outline:3px solid rgba(49,70,83,.18);outline-offset:2px}.sched-context-label[data-v-8bd144c7]{display:block;margin:0 0 7px;color:#76818a;font-size:.64rem;font-weight:700;letter-spacing:.1em;line-height:1;text-transform:uppercase}.loading-state[data-v-8bd144c7]{display:flex;align-items:center;gap:10px;color:#9ca3af;font-size:.9rem;padding:40px 0;justify-content:center}.spin-icon[data-v-8bd144c7]{animation:spin-8bd144c7 1s linear infinite}@keyframes spin-8bd144c7{to{transform:rotate(360deg)}}.empty-state[data-v-8bd144c7]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:60px 20px;color:#aaa;font-size:.9rem;text-align:center}.empty-state strong[data-v-8bd144c7]{color:#555}.sched-grid-wrap[data-v-8bd144c7]{width:100%;overflow-x:auto;margin:0;padding:18px;position:relative;background:#eef1f2;border:0;border-radius:0 0 17px 17px;box-shadow:none}.sched-grid[data-v-8bd144c7]{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;min-width:800px;overflow:hidden;border:1px solid #ccd4d9;border-radius:12px;background:#fff;box-shadow:0 5px 16px #272f350f}.sched-grid th[data-v-8bd144c7]{height:48px;background:#424c55;color:#fff;font-size:.75rem;font-weight:750;letter-spacing:.01em;padding:11px 9px;text-align:center;white-space:nowrap;position:sticky;top:0;z-index:10;border:0;border-right:1px solid rgba(255,255,255,.1);text-shadow:0 1px rgba(0,0,0,.22)}.sched-grid thead th[data-v-8bd144c7]:first-child{border-radius:12px 0 0}.sched-grid thead th[data-v-8bd144c7]:last-child{border-radius:0 12px 0 0;border-right:0}.th-time[data-v-8bd144c7]{width:90px;position:sticky;left:0;z-index:20;background:#424c55}.sched-grid tbody tr[data-v-8bd144c7]{height:44px}.sched-grid tbody tr.half-hour .td-time[data-v-8bd144c7]{background:#f7f8f9}.sched-grid tbody tr.half-hour td[data-v-8bd144c7]{border-top:1px dashed #dfe4e7}.sched-grid td[data-v-8bd144c7]{border-width:0 1px 1px 0;border-style:solid;border-color:#e0e4e7;padding:0;vertical-align:top;position:relative}.sched-grid td.td-time[data-v-8bd144c7]{overflow:visible;background:#f7f8f9;text-align:center;vertical-align:middle;font-size:.66rem;color:#536069;font-weight:750;white-space:nowrap;border-width:0 1px 1px 0;border-style:solid;border-color:#e0e4e7;border-right-color:#cfd6da;position:sticky;left:0;z-index:15;width:90px;padding:0 6px;box-shadow:none}.td-cell[data-v-8bd144c7]{padding:0;position:relative;background:#fff;transition:background .15s ease}.td-cell.has-entry[data-v-8bd144c7]{padding:0}.time-row:hover .td-time[data-v-8bd144c7]{background:#f7f8f9}.time-row:hover .td-cell[data-v-8bd144c7]:not(.has-entry){background:#f8f9fa}.consult-cell[data-v-8bd144c7]{background:#f4f9ff}.consult-entry[data-v-8bd144c7]{border:1px solid rgba(74,144,217,.28);box-shadow:inset 0 0 0 1px #4a90d929}.sched-entry[data-v-8bd144c7]{position:absolute;top:4px;left:4px;right:4px;border-radius:7px;padding:7px 8px;display:flex;flex-direction:column;justify-content:flex-start;gap:2px;box-sizing:border-box;overflow:hidden;cursor:default;border:0;box-shadow:0 3px 8px #1e272c24}.sched-entry-clickable[data-v-8bd144c7]{cursor:pointer;transition:transform .15s ease,filter .15s ease,box-shadow .15s ease}.sched-entry-clickable[data-v-8bd144c7]:hover,.sched-entry-clickable[data-v-8bd144c7]:focus-visible{filter:brightness(1.04);transform:none;box-shadow:0 6px 14px #1e272c2e;outline:2px solid rgba(255,255,255,.9);outline-offset:-3px}.subbed-badge[data-v-8bd144c7]{position:relative;width:100%;flex:0 0 auto;padding:3px 6px;border:1px solid rgba(255,255,255,.72);border-radius:5px;background:#b42318;color:#fff;font-size:.66rem;font-weight:800;line-height:1.25;letter-spacing:.04em;text-align:center;white-space:normal;overflow-wrap:anywhere;box-sizing:border-box;box-shadow:0 1px 2px #0000002e}.sched-entry:has(.subbed-badge) .entry-teacher[data-v-8bd144c7],.sched-entry:has(.subbed-badge) .entry-subject[data-v-8bd144c7]{padding-right:0}.entry-teacher[data-v-8bd144c7]{display:-webkit-box;overflow:hidden;font-size:.72rem;font-weight:800;line-height:1.25;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}.entry-subject[data-v-8bd144c7]{display:-webkit-box;overflow:hidden;font-size:.67rem;opacity:.92;line-height:1.3;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}.entry-time-range[data-v-8bd144c7]{font-size:.62rem;opacity:.82;font-style:normal;font-weight:550;margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.entry-section-rows[data-v-8bd144c7]{display:flex;flex-direction:column;gap:2px;margin-top:4px;border-top:1px solid rgba(255,255,255,.25);padding-top:4px}.entry-section-row[data-v-8bd144c7]{display:flex;align-items:center;gap:4px}.entry-section-badge[data-v-8bd144c7]{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;opacity:.9;background:#ffffff3d;padding:2px 6px;border-radius:5px}.entry-room[data-v-8bd144c7]{font-size:.72rem;opacity:.75;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:56px}.free-time-cell[data-v-8bd144c7]{position:relative;vertical-align:middle!important;background:linear-gradient(135deg,#eee8ffe0,#f5f1ffbd)!important}.free-time-cell[data-v-8bd144c7]:hover{background:linear-gradient(135deg,#e6dcfff0,#f0ebffd1)!important}.free-time-label[data-v-8bd144c7]{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;margin:0;padding:0 6px;color:#6d28d9;font-size:.78rem;font-weight:750;line-height:1.2;text-align:center;pointer-events:none}.color-green[data-v-8bd144c7]{background:#1f6b45;color:#fff}.color-yellow[data-v-8bd144c7]{background:#e9c46a;color:#5a3e00}.color-orange[data-v-8bd144c7]{background:#f4a261;color:#5a2d00}.color-blue[data-v-8bd144c7]{background:#4a90d9;color:#fff}.color-gray[data-v-8bd144c7]{background:#626c76;color:#fff}.color-purple[data-v-8bd144c7]{background:#7b5ea7;color:#fff}.color-red[data-v-8bd144c7]{background:#e63946;color:#fff}.modal-overlay[data-v-8bd144c7]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:1000}.schedule-details-overlay[data-v-8bd144c7]{background:#161c228a;backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px);padding:20px}.schedule-details-modal[data-v-8bd144c7]{position:relative;width:min(600px,calc(100vw - 32px));max-width:calc(100vw - 32px);max-height:calc(100vh - 32px);overflow-y:auto;border:1px solid #dfe4ea;border-radius:22px;background:#fff;padding:28px;box-shadow:0 24px 70px #0f172a47}.schedule-modal-close[data-v-8bd144c7]{position:absolute;top:18px;right:18px;z-index:1;width:44px;height:44px;border:1px solid #e2e8f0;border-radius:50%;background:#f8fafc;color:#475569;font-size:1.8rem;line-height:1;cursor:pointer;transition:background .18s ease,border-color .18s ease,color .18s ease}.schedule-modal-close[data-v-8bd144c7]:hover{border-color:#cbd5e1;background:#eef2f7;color:#111827}.schedule-modal-teacher[data-v-8bd144c7]{display:flex;align-items:center;gap:13px;min-height:66px;margin:0 58px 18px 0;border-bottom:1px solid #e5e7eb;padding:0 0 18px}.schedule-modal-avatar[data-v-8bd144c7]{display:inline-flex;align-items:center;justify-content:center;flex:0 0 42px;width:42px;height:42px;border-radius:13px;background:#334155;color:#fff;font-size:1.05rem;font-weight:900;text-transform:uppercase}.schedule-modal-teacher span[data-v-8bd144c7]:not(.schedule-modal-avatar){display:block;color:#64748b;font-size:.7rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.schedule-modal-teacher strong[data-v-8bd144c7]{display:block;margin-top:3px;color:#20262d;font-size:1.02rem;line-height:1.18;overflow-wrap:anywhere}.schedule-modal-focus[data-v-8bd144c7]{position:relative;margin-bottom:16px;border:1px solid #dde4ec;border-left:5px solid #334155;border-radius:18px;background:#f8fafc;padding:22px 24px 20px}.schedule-focus-kicker[data-v-8bd144c7]{display:flex;align-items:center;min-height:26px;margin-bottom:12px;color:#64748b;font-size:.72rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.schedule-modal-focus h2[data-v-8bd144c7]{max-width:94%;margin:0;color:#20262d;font-size:clamp(1.5rem,2.35vw,1.95rem);line-height:1.12;letter-spacing:-.04em}.schedule-focus-meta[data-v-8bd144c7]{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}.schedule-focus-meta span[data-v-8bd144c7]{display:inline-flex;align-items:center;min-height:34px;border:1px solid #dbe3eb;border-radius:999px;background:#fff;color:#475569;padding:7px 13px;font-size:.92rem;font-weight:800}.schedule-modal-subbed[data-v-8bd144c7]{display:inline-block;padding:6px 11px;border-radius:999px;background:#fee2e2;color:#991b1b;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.schedule-detail-grid[data-v-8bd144c7]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.schedule-detail-grid-minimal[data-v-8bd144c7]{grid-template-columns:repeat(2,minmax(0,1fr))}.schedule-detail-item[data-v-8bd144c7]{display:flex;min-width:0;min-height:76px;flex-direction:column;justify-content:center;gap:6px;border:1px solid #e2e8f0;border-radius:15px;background:#fff;padding:14px 15px}.schedule-detail-item span[data-v-8bd144c7]{color:#64748b;font-size:.68rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.schedule-detail-item strong[data-v-8bd144c7]{overflow-wrap:anywhere;color:#232a32;font-size:.95rem;line-height:1.25}.schedule-detail-wide[data-v-8bd144c7]{grid-column:1 / -1;min-height:72px}@media (max-width: 520px){.schedule-details-modal[data-v-8bd144c7]{border-radius:22px;padding:28px 20px 22px}.schedule-modal-teacher[data-v-8bd144c7]{margin-right:48px;align-items:flex-start}.schedule-modal-focus[data-v-8bd144c7]{padding:20px 18px}.schedule-detail-grid[data-v-8bd144c7]{grid-template-columns:1fr}.schedule-detail-wide[data-v-8bd144c7]{grid-column:auto}}.logout-modal-box[data-v-8bd144c7]{background:#fff;border-radius:20px;padding:36px 40px 32px;width:360px;max-width:94vw;display:flex;flex-direction:column;align-items:center;gap:10px;box-shadow:0 16px 48px #0000002e;text-align:center}.logout-modal-icon[data-v-8bd144c7]{width:68px;height:68px;border-radius:50%;background:#ffeaea;display:flex;align-items:center;justify-content:center;margin-bottom:4px}.logout-modal-title[data-v-8bd144c7]{font-size:1.45rem;font-weight:700;color:#111;margin:0}.logout-modal-sub[data-v-8bd144c7]{font-size:.9rem;color:#777;margin:0 0 8px}.logout-modal-actions[data-v-8bd144c7]{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:6px;width:100%}.logout-cancel-btn[data-v-8bd144c7]{background:none;border:none;font-family:inherit;font-size:1rem;font-weight:600;color:#e63946;cursor:pointer;padding:8px 18px;border-radius:10px}.logout-cancel-btn[data-v-8bd144c7]:hover{background:#ffeaea}.logout-confirm-btn[data-v-8bd144c7]{background:#4b5563;color:#fff;border:none;font-family:inherit;font-size:1rem;font-weight:600;padding:10px 32px;border-radius:10px;cursor:pointer}.logout-confirm-btn[data-v-8bd144c7]:hover{background:#6b7280}.mobile-app[data-v-040466d3]{max-width:430px;min-height:100%;margin:0 auto;background:radial-gradient(1100px 380px at 50% -260px,#e7e9ea,#e7f4ed00 70%),#f5f6f8;display:flex;flex-direction:column;padding-bottom:16px;padding-top:env(safe-area-inset-top,0px);font-family:Poppins,sans-serif}.app-header[data-v-040466d3]{display:flex;align-items:center;justify-content:space-between;background:#ffffffeb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:16px 18px;border-bottom:1px solid #e8ece9;position:sticky;top:0;z-index:20}.back-btn[data-v-040466d3]{background:none;border:none;cursor:pointer;color:#444;padding:4px;display:flex;align-items:center;border-radius:6px;margin-left:-4px;transition:color .15s}.back-btn[data-v-040466d3]:hover{color:#4b5563}.header-title[data-v-040466d3]{font-weight:700;font-size:1rem;color:#4b5563}.tabs-row[data-v-040466d3]{display:flex;gap:8px;background:#ffffffe6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid #e9eeeb;padding:10px 16px;overflow-x:auto;scrollbar-width:none;position:sticky;top:65px;z-index:19}.tabs-row[data-v-040466d3]::-webkit-scrollbar{display:none}.tab-btn[data-v-040466d3]{flex:0 0 auto;padding:8px 15px;background:#fff;border:1.5px solid #e4e8e6;border-radius:20px;font-family:inherit;font-size:.8rem;font-weight:600;color:#666;cursor:pointer;transition:all .16s ease}.tab-btn[data-v-040466d3]:hover{border-color:#cbd0d4;color:#34423b}.tab-btn.active[data-v-040466d3]{color:#fff;font-weight:700;background:#4b5563;border-color:#4b5563;box-shadow:0 6px 14px #30353a38}.sessions-list[data-v-040466d3]{display:flex;flex-direction:column;gap:12px;padding:16px 18px 10px}.empty-state[data-v-040466d3]{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;color:#9ba3ab;font-size:.9rem;padding:54px 0}.empty-icon[data-v-040466d3]{font-size:2.5rem}.session-card[data-v-040466d3]{background:#fff;border-radius:16px;border:1px solid #e8ece9;padding:16px;box-shadow:0 10px 22px #1018280d}.session-top[data-v-040466d3]{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px}.session-avatar[data-v-040466d3]{width:42px;height:42px;flex-shrink:0;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:.95rem}.session-meta[data-v-040466d3]{flex:1}.session-subject[data-v-040466d3]{font-weight:700;font-size:.95rem;color:#111}.session-teacher[data-v-040466d3]{font-size:.79rem;color:#66727c;margin:2px 0 8px}.session-info-row[data-v-040466d3]{display:flex;gap:8px;flex-wrap:wrap}.info-chip[data-v-040466d3]{font-size:.73rem;color:#6b7280;background:#eef0f1;border:1px solid #d9dde0;padding:3px 8px;border-radius:999px;font-weight:600}.queue-row[data-v-040466d3]{margin-top:6px}.queue-chip[data-v-040466d3]{display:inline-flex;align-items:center;font-size:.74rem;font-weight:600;color:#4b5259;background:#e9ebec;border:1px solid #d0d4d7;padding:4px 10px;border-radius:999px}.queue-chip.queue-next[data-v-040466d3]{color:#0b6b3a;background:#d8dcdf;border-color:#9fd6b4}.queue-note[data-v-040466d3]{display:block;margin-top:5px;font-size:.72rem;color:#5f6b76}.status-pill[data-v-040466d3]{font-size:.71rem;font-weight:700;padding:4px 11px;border-radius:999px;white-space:nowrap;flex-shrink:0}.pill-green[data-v-040466d3]{background:#d8dcdf;color:#4f575f}.pill-orange[data-v-040466d3]{background:#fff3e0;color:#b35e00}.pill-red[data-v-040466d3]{background:#ffeaea;color:#e63946}.pill-gray[data-v-040466d3]{background:#f0f0f0;color:#666}.rejection-msg[data-v-040466d3]{background:#fff1f2;color:#c0392b;border:1px solid #ffd8dd;font-size:.8rem;padding:9px 12px;border-radius:10px;margin-bottom:10px}.session-actions[data-v-040466d3]{display:flex;gap:8px}.act-btn[data-v-040466d3]{flex:1;padding:10px;border-radius:10px;border:none;font-family:inherit;font-size:.82rem;font-weight:600;cursor:pointer;transition:transform .16s ease,background .16s ease,border-color .16s ease}.act-btn[data-v-040466d3]:active{transform:translateY(1px)}.act-btn.outline[data-v-040466d3]{background:#fff;color:#333;border:1.5px solid #ddd}.act-btn.red[data-v-040466d3]{background:#e63946;color:#fff}.act-btn.green[data-v-040466d3]{background:#4b5563;color:#fff}.act-btn.full[data-v-040466d3]{flex:1}.reviewed-badge[data-v-040466d3]{flex:1;text-align:center;font-size:.82rem;font-weight:600;color:#6b7280;padding:10px}.modal-overlay[data-v-040466d3]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:100;display:flex;align-items:flex-end;justify-content:center}.alert-overlay[data-v-040466d3]{align-items:center;-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px)}.modal-sheet[data-v-040466d3]{width:100%;max-width:430px;background:#fff;border-radius:22px 22px 0 0;max-height:92dvh;overflow-y:auto;padding-bottom:24px;border:1px solid #edf1ee}.modal-handle[data-v-040466d3]{width:40px;height:4px;background:#ddd;border-radius:2px;margin:12px auto 0}.modal-header[data-v-040466d3]{display:flex;justify-content:space-between;align-items:center;padding:16px 20px 14px;font-weight:700;font-size:1rem;border-bottom:1px solid #eef0f1}.modal-close[data-v-040466d3]{background:none;border:none;font-size:1.1rem;cursor:pointer;color:#999;line-height:1}.modal-body[data-v-040466d3]{padding:16px 20px;display:flex;flex-direction:column;gap:14px}.modal-footer[data-v-040466d3]{display:flex;gap:10px;padding:12px 20px 0}.modal-cancel[data-v-040466d3]{flex:1;padding:12px;background:#f0f0f0;color:#555;border:none;border-radius:10px;font-family:inherit;font-weight:600;font-size:.88rem;cursor:pointer}.modal-submit[data-v-040466d3]{flex:2;padding:12px;background:#4b5563;color:#fff;border:none;border-radius:10px;font-family:inherit;font-weight:600;font-size:.88rem;cursor:pointer}.modal-danger[data-v-040466d3]{flex:2;padding:12px;background:#e63946;color:#fff;border:none;border-radius:10px;font-family:inherit;font-weight:600;font-size:.88rem;cursor:pointer}.full-btn[data-v-040466d3]{flex:1}.cancel-alert[data-v-040466d3]{width:270px;background:#fff;border:1px solid #6f7b85;border-radius:14px;padding:14px 12px 10px;box-shadow:0 12px 28px #00000038}.cancel-alert-icon[data-v-040466d3]{width:48px;height:48px;margin:2px auto 10px;border:3px solid #f0c541;border-radius:14px;color:#f0c541;font-weight:700;font-size:1.45rem;display:flex;align-items:center;justify-content:center}.cancel-alert-text[data-v-040466d3]{text-align:center;font-size:.95rem;line-height:1.4;color:#30343a;margin-bottom:10px}.cancel-alert-actions[data-v-040466d3]{display:flex;justify-content:center;gap:10px}.alert-cancel[data-v-040466d3],.alert-continue[data-v-040466d3]{border:none;background:transparent;font-size:1rem;font-family:inherit;cursor:pointer;padding:2px 4px}.alert-cancel[data-v-040466d3]{color:#f4434f}.alert-continue[data-v-040466d3]{color:#fff;background:#1b7741;border-radius:999px;padding:2px 12px}.field-group[data-v-040466d3]{display:flex;flex-direction:column;gap:6px}.field-label[data-v-040466d3]{font-size:.8rem;font-weight:600;color:#444}.optional[data-v-040466d3]{font-weight:400;color:#aaa}.field-input[data-v-040466d3]{width:100%;padding:10px 12px;border:1.5px solid #e5e7eb;border-radius:8px;font-family:inherit;font-size:.87rem;outline:none;box-sizing:border-box}.field-input[data-v-040466d3]:focus{border-color:#4b5563;box-shadow:0 0 0 3px #30353a1f}.field-textarea[data-v-040466d3]{resize:none}.form-row-2[data-v-040466d3]{display:grid;grid-template-columns:1fr 1fr;gap:12px}.msg-err[data-v-040466d3]{color:#e63946;font-size:.8rem;font-weight:500}.teacher-pill[data-v-040466d3]{display:flex;align-items:center;gap:12px;background:#f6f8f7;border:1px solid #e7ece9;border-radius:12px;padding:12px}.tp-avatar[data-v-040466d3]{width:44px;height:44px;border-radius:50%;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1rem;flex-shrink:0}.tp-name[data-v-040466d3]{font-weight:700;font-size:.9rem;color:#111}.tp-subj[data-v-040466d3]{font-size:.75rem;color:#777;margin-top:2px}.detail-hero[data-v-040466d3]{display:flex;align-items:center;gap:12px;padding:4px 0 8px;border-bottom:1px solid #f0f0f0}.session-avatar-lg[data-v-040466d3]{width:50px;height:50px;border-radius:50%;color:#fff;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1rem}.detail-main[data-v-040466d3]{flex:1}.detail-subject[data-v-040466d3]{font-weight:700;font-size:.95rem;color:#111}.detail-teacher[data-v-040466d3]{font-size:.8rem;color:#666;margin-top:2px}.detail-row[data-v-040466d3]{display:flex;justify-content:space-between;align-items:flex-start;padding:10px 0;border-bottom:1px solid #f0f3f1}.detail-row[data-v-040466d3]:last-child{border-bottom:none}.detail-label[data-v-040466d3]{font-size:.8rem;color:#888;flex-shrink:0}.detail-val[data-v-040466d3]{font-size:.85rem;font-weight:600;color:#1a1d21;text-align:right;max-width:60%}.confirm-icon[data-v-040466d3]{font-size:2.5rem;text-align:center}.confirm-text[data-v-040466d3]{font-size:.92rem;color:#111;text-align:center;line-height:1.5}.confirm-sub[data-v-040466d3]{font-size:.8rem;color:#aaa;text-align:center}.star-row[data-v-040466d3]{display:flex;gap:6px}.star-btn[data-v-040466d3]{background:none;border:none;font-size:2rem;cursor:pointer;color:#ddd;padding:2px;line-height:1;transition:color .15s}.star-btn.active[data-v-040466d3]{color:#f4a261}.star-label[data-v-040466d3]{font-size:.82rem;font-weight:700;color:#f4a261;margin-top:2px}.toast[data-v-040466d3]{position:fixed;bottom:80px;left:50%;transform:translate(-50%);background:#4b5563;color:#fff;padding:10px 22px;border-radius:20px;font-size:.85rem;font-weight:600;z-index:200;white-space:nowrap;box-shadow:0 10px 22px #30353a3d;animation:fadeUp-040466d3 .25s ease}@keyframes fadeUp-040466d3{0%{opacity:0;transform:translate(-50%) translateY(10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.queue-card[data-v-040466d3]{margin-top:14px;border:1px solid #e5e7eb;border-radius:14px;padding:12px;background:linear-gradient(135deg,#f8fafc,#f4f7fb)}.queue-card-header[data-v-040466d3]{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.queue-card-title[data-v-040466d3]{font-size:.9rem;font-weight:700;color:#1f2937}.queue-card-subtitle[data-v-040466d3]{font-size:.76rem;color:#6b7280;margin-top:2px}.queue-ticket-badge[data-v-040466d3]{background:#4b5563;color:#fff;border-radius:999px;padding:5px 9px;font-size:.72rem;font-weight:700}.queue-qr-panel[data-v-040466d3]{display:flex;justify-content:center;align-items:center;padding:12px;border-radius:12px;background:#fff;border:1px solid #e5e7eb}.qr-grid[data-v-040466d3]{display:grid;grid-template-columns:repeat(9,8px);gap:2px}.qr-cell[data-v-040466d3]{width:8px;height:8px;border-radius:2px;background:#e5e7eb}.qr-cell.filled[data-v-040466d3]{background:#111827}.queue-ticket-details[data-v-040466d3]{margin-top:10px;display:grid;gap:6px}.queue-ticket-line[data-v-040466d3]{display:flex;justify-content:space-between;gap:8px;font-size:.76rem;color:#4b5563}.queue-ticket-line strong[data-v-040466d3]{color:#111827;text-align:right}.mobile-app[data-v-abe1c6d5]{max-width:430px;min-height:100%;margin:0 auto;background:#f3f5f7;display:flex;flex-direction:column;padding-bottom:16px;padding-top:env(safe-area-inset-top,0px);font-family:Poppins,sans-serif}.app-header[data-v-abe1c6d5]{display:flex;align-items:center;justify-content:space-between;background:#fff;padding:16px 18px;border-bottom:1px solid #e4e7eb}.header-left[data-v-abe1c6d5]{display:flex;align-items:center;gap:12px}.avatar-sm[data-v-abe1c6d5]{width:42px;height:42px;background:#30353a;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.9rem;font-weight:700;flex-shrink:0}.header-title[data-v-abe1c6d5]{font-weight:700;font-size:.97rem;color:#30353a}.header-sub[data-v-abe1c6d5]{font-size:.78rem;color:#777}.header-notif-btn[data-v-abe1c6d5]{width:36px;height:36px;border-radius:50%;border:1px solid #d1d5d8;background:#fff;color:#4b5563;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;position:relative}.header-notif-btn .notif-dot[data-v-abe1c6d5]{position:absolute;top:6px;right:6px;width:8px;height:8px;border-radius:50%;background:#ef4444;box-shadow:0 0 0 3px #ffffffe6}.stats-grid[data-v-abe1c6d5]{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:16px}.stat-card[data-v-abe1c6d5]{background:#fff;border-radius:12px;padding:12px 14px;border-left:4px solid;box-shadow:0 2px 8px #0000000f}.stat-card.green[data-v-abe1c6d5]{border-color:#6b7280}.stat-card.red[data-v-abe1c6d5]{border-color:#e63946}.stat-card.blue[data-v-abe1c6d5]{border-color:#3a86ff}.stat-card.orange[data-v-abe1c6d5]{border-color:#f4a261}.stat-label[data-v-abe1c6d5]{font-size:.75rem;color:#777;margin-bottom:4px}.stat-num[data-v-abe1c6d5]{font-size:1.7rem;font-weight:800;color:#111;line-height:1}.stat-desc[data-v-abe1c6d5]{font-size:.7rem;color:#aaa;margin-top:4px}.section-card[data-v-abe1c6d5]{background:#fff;border-radius:14px;margin:0 16px;padding:14px;box-shadow:0 2px 8px #0000000f}.section-title[data-v-abe1c6d5]{font-weight:700;font-size:.92rem;margin-bottom:12px;color:#30353a}.consult-row[data-v-abe1c6d5]{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid #f0f0f0}.consult-row[data-v-abe1c6d5]:last-child{border-bottom:none}.consult-name[data-v-abe1c6d5]{font-size:.85rem;font-weight:600;color:#222}.consult-teacher[data-v-abe1c6d5]{font-size:.75rem;color:#888;margin-top:2px}.badge[data-v-abe1c6d5]{font-size:.7rem;font-weight:600;padding:3px 10px;border-radius:20px;white-space:nowrap}.badge-green[data-v-abe1c6d5]{background:#d8dcdf;color:#4f575f}.badge-orange[data-v-abe1c6d5]{background:#fff3e0;color:#b35e00}.badge-red[data-v-abe1c6d5]{background:#ffeaea;color:#e63946}.badge-gray[data-v-abe1c6d5]{background:#f0f0f0;color:#666}.cta-row[data-v-abe1c6d5]{display:flex;gap:10px;padding:16px}.cta-btn[data-v-abe1c6d5]{flex:1;padding:13px;border:none;border-radius:10px;font-family:inherit;font-weight:700;font-size:.88rem;cursor:pointer;transition:opacity .15s}.cta-btn[data-v-abe1c6d5]:active{opacity:.85}.cta-btn.primary[data-v-abe1c6d5]{background:#30353a;color:#fff}.cta-btn.secondary[data-v-abe1c6d5]{background:#e63946;color:#fff;border:1.5px solid #e63946}.events-card[data-v-abe1c6d5]{margin:0 16px 16px}.view-events-btn[data-v-abe1c6d5]{width:100%;margin-top:10px;border:1.5px solid #b8ddc4;background:#e4e7e9;color:#30353a;border-radius:10px;padding:11px;font-family:inherit;font-weight:700;font-size:.84rem;cursor:pointer}.mobile-app[data-v-ba42cd85]{background:#fff}.app-header[data-v-ba42cd85]{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid #e5e5e5;position:sticky;top:0;background:#fff;z-index:10}.back-btn[data-v-ba42cd85],.add-event-mobile-btn[data-v-ba42cd85]{width:32px;height:32px;border-radius:8px;border:none;background:#f5f5f5;color:#333;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.back-btn[data-v-ba42cd85]:active,.add-event-mobile-btn[data-v-ba42cd85]:active{background:#e5e5e5}.header-title[data-v-ba42cd85]{font-size:1rem;font-weight:600;color:#333;flex:1;text-align:center}.events-wrap[data-v-ba42cd85]{padding:16px 16px 24px}.events-head[data-v-ba42cd85]{margin-bottom:16px}.events-title[data-v-ba42cd85]{font-size:1.5rem;font-weight:700;color:#1a1a1a;margin:0 0 4px}.events-sub[data-v-ba42cd85]{font-size:.85rem;color:#666;margin:0}.events-tabs-mobile[data-v-ba42cd85]{display:flex;gap:8px;margin-bottom:16px}.tab-btn[data-v-ba42cd85]{flex:1;padding:8px 12px;background:#f5f5f5;border:none;border-radius:8px;font-size:.88rem;font-weight:500;color:#666;cursor:pointer;transition:all .2s}.tab-btn.active[data-v-ba42cd85]{background:#333;color:#fff}.events-grid[data-v-ba42cd85]{display:flex;flex-direction:column;gap:12px}.event-card[data-v-ba42cd85]{background:#fff;border:1px solid #e5e5e5;border-radius:12px;padding:14px;cursor:pointer;transition:all .2s}.event-card[data-v-ba42cd85]:active{background:#f9f9f9;box-shadow:0 2px 8px #00000014}.event-card--archived[data-v-ba42cd85]{opacity:.7}.event-card-head[data-v-ba42cd85]{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.event-badge[data-v-ba42cd85]{font-size:.65rem;font-weight:700;padding:2px 8px;border-radius:12px;background:#d8dcdf;color:#4f575f;text-transform:uppercase;letter-spacing:.3px}.event-badge--archived[data-v-ba42cd85]{background:#f0f0f0;color:#888}.event-card-actions[data-v-ba42cd85]{display:flex;gap:4px}.ec-btn[data-v-ba42cd85]{padding:4px 8px;border:none;border-radius:6px;background:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#2563eb;font-size:.75rem}.ec-btn--edit[data-v-ba42cd85]{color:#2563eb}.ec-btn--archive[data-v-ba42cd85],.ec-btn--restore[data-v-ba42cd85]{color:#666}.ec-btn--delete[data-v-ba42cd85]{color:#e63946}.event-card-title[data-v-ba42cd85]{font-size:.95rem;font-weight:700;color:#1a1a1a;margin:0 0 4px;line-height:1.3}.event-card-desc[data-v-ba42cd85]{font-size:.8rem;color:#666;margin:0 0 8px;line-height:1.4}.event-card-meta[data-v-ba42cd85]{display:flex;flex-wrap:wrap;gap:8px;font-size:.75rem}.meta-item[data-v-ba42cd85]{display:flex;align-items:center;gap:3px;color:#555}.modal-overlay-mobile[data-v-ba42cd85]{position:fixed;top:0;bottom:0;left:50%;width:min(430px,100vw);transform:translate(-50%);background:#00000080;display:flex;align-items:flex-end;justify-content:center;z-index:1000}@keyframes slideUp-ba42cd85{0%{transform:translateY(100%)}to{transform:translateY(0)}}.modal-box-mobile[data-v-ba42cd85],.event-modal-mobile[data-v-ba42cd85]{background:#fff;border-radius:20px 20px 0 0;width:100%;max-width:430px;max-height:88dvh;overflow-y:auto;animation:slideUp-ba42cd85 .3s ease-out;box-shadow:0 -12px 35px #0003}.modal-header-mobile[data-v-ba42cd85]{display:flex;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid #e5e5e5}.modal-header-mobile h2[data-v-ba42cd85]{margin:0;font-size:1.1rem;color:#1a1a1a}.modal-close-btn[data-v-ba42cd85]{width:32px;height:32px;border:none;border-radius:50%;background:#f5f5f5;color:#333;cursor:pointer;display:flex;align-items:center;justify-content:center}.modal-body-mobile[data-v-ba42cd85]{padding:16px}.modal-desc[data-v-ba42cd85]{font-size:.9rem;color:#666;line-height:1.6;margin:0 0 16px}.modal-info-grid[data-v-ba42cd85]{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}.info-item[data-v-ba42cd85]{display:flex;flex-direction:column;gap:4px;padding:10px;background:#f9f9f9;border-radius:8px}.info-label[data-v-ba42cd85]{font-size:.72rem;font-weight:700;color:#999;text-transform:uppercase;letter-spacing:.3px}.info-val[data-v-ba42cd85]{font-size:.9rem;font-weight:600;color:#1a1a1a}.modal-edit-btn[data-v-ba42cd85]{width:100%;padding:12px;background:#333;color:#fff;border:none;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px}.event-form-mobile[data-v-ba42cd85]{padding:16px;display:flex;flex-direction:column;gap:14px}.form-group[data-v-ba42cd85]{display:flex;flex-direction:column;gap:6px}.form-group label[data-v-ba42cd85]{font-size:.8rem;font-weight:600;color:#333;text-transform:uppercase;letter-spacing:.3px}.form-group input[data-v-ba42cd85],.form-group textarea[data-v-ba42cd85]{padding:10px 12px;border:1px solid #ddd;border-radius:8px;font-size:.9rem;font-family:inherit;color:#1a1a1a;outline:none}.form-group input[data-v-ba42cd85]:focus,.form-group textarea[data-v-ba42cd85]:focus{border-color:#333;box-shadow:0 0 0 2px #0000000d}.form-group textarea[data-v-ba42cd85]{resize:vertical;min-height:80px;line-height:1.5}.form-actions-mobile[data-v-ba42cd85]{display:flex;gap:10px;padding-top:10px;border-top:1px solid #e5e5e5}.btn-cancel[data-v-ba42cd85],.btn-submit[data-v-ba42cd85]{flex:1;padding:12px;border:none;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-cancel[data-v-ba42cd85]{background:#f5f5f5;color:#333}.btn-cancel[data-v-ba42cd85]:active{background:#e5e5e5}.btn-submit[data-v-ba42cd85]{background:#333;color:#fff}.btn-submit[data-v-ba42cd85]:active{opacity:.9}.mobile-app[data-v-6eef2f32]{max-width:430px;min-height:100%;margin:0 auto;background:#f3f5f7;display:flex;flex-direction:column;padding-bottom:16px;padding-top:env(safe-area-inset-top,0px);font-family:Poppins,sans-serif}.app-header[data-v-6eef2f32]{display:flex;align-items:center;justify-content:space-between;background:#fff;padding:16px 18px;border-bottom:1px solid #e5e7eb}.back-btn[data-v-6eef2f32]{background:none;border:none;cursor:pointer;color:#444;padding:4px;display:flex;align-items:center}.header-title[data-v-6eef2f32]{font-weight:700;font-size:1rem;color:#22272d}.mark-btn[data-v-6eef2f32]{border:1px solid #d8dde3;border-radius:8px;background:#fff;color:#4a525b;font-size:.74rem;font-weight:600;padding:5px 10px}.unread-banner[data-v-6eef2f32]{background:#e4e7e9;color:#4f575f;font-size:.8rem;font-weight:700;padding:8px 16px}.notif-list[data-v-6eef2f32]{flex:1}.group-label[data-v-6eef2f32]{font-size:.7rem;font-weight:800;color:#8f99a4;letter-spacing:.08em;padding:9px 14px 4px}.notif-item[data-v-6eef2f32]{display:flex;gap:10px;padding:11px 14px;background:#fff;border-bottom:1px solid #edf1f4}.notif-item.unread[data-v-6eef2f32]{background:#f7fcf9}.notif-dot[data-v-6eef2f32]{width:8px;height:8px;border-radius:50%;background:#d2d8de;margin-top:6px;flex-shrink:0}.notif-dot.on[data-v-6eef2f32]{background:#626a72}.notif-title[data-v-6eef2f32]{font-size:.91rem;font-weight:700;color:#252b31}.notif-desc[data-v-6eef2f32]{font-size:.79rem;color:#74808d;margin-top:2px;line-height:1.4}.notif-time[data-v-6eef2f32]{font-size:.72rem;color:#a4adb7;margin-top:4px}.mobile-app[data-v-b576e1b9]{max-width:430px;min-height:100%;margin:0 auto;background:#f3f5f7;display:flex;flex-direction:column;padding-bottom:16px;padding-top:env(safe-area-inset-top,0px);font-family:Poppins,sans-serif}.app-header[data-v-b576e1b9]{display:flex;align-items:center;justify-content:space-between;background:#fff;padding:16px 18px;border-bottom:1px solid #e5e7eb}.back-btn[data-v-b576e1b9]{background:none;border:none;cursor:pointer;color:#444;padding:4px;display:flex;align-items:center}.header-title[data-v-b576e1b9]{font-weight:700;color:#252a2f;font-size:1rem}.edit-btn[data-v-b576e1b9]{border:none;background:#4b5563;color:#fff;border-radius:8px;padding:6px 14px;font-size:.8rem;font-weight:600}.profile-card[data-v-b576e1b9],.info-card[data-v-b576e1b9]{background:#fff;border:1px solid #e3e8ed;border-radius:12px;margin:12px 16px 0}.profile-card[data-v-b576e1b9]{padding:16px 14px;display:flex;flex-direction:column;align-items:center}.avatar-wrap[data-v-b576e1b9]{position:relative;width:58px;height:58px;border:none;background:transparent;padding:0;border-radius:50%;cursor:pointer}.avatar-lg[data-v-b576e1b9]{width:58px;height:58px;border-radius:50%;background:#4b5563;color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.7rem;font-weight:700}.avatar-img[data-v-b576e1b9]{width:58px;height:58px;border-radius:50%;object-fit:cover;border:2px solid #4b5563}.avatar-plus[data-v-b576e1b9]{position:absolute;right:-3px;bottom:-3px;width:20px;height:20px;border-radius:50%;background:#4b5563;color:#fff;font-size:.95rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center;border:2px solid #fff}.avatar-input[data-v-b576e1b9]{display:none}.profile-name[data-v-b576e1b9]{margin-top:8px;font-size:1.05rem;font-weight:700;color:#171b20}.profile-email[data-v-b576e1b9]{margin-top:2px;font-size:.79rem;color:#89939d}.active-badge[data-v-b576e1b9]{margin-top:6px;background:#4b5563;color:#fff;border-radius:999px;font-size:.72rem;padding:3px 10px;font-weight:700}.info-card[data-v-b576e1b9]{padding:12px}.info-title[data-v-b576e1b9]{font-weight:700;color:#2e343a;margin-bottom:10px}.info-row[data-v-b576e1b9]{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid #eef1f4}.info-row[data-v-b576e1b9]:last-child{border-bottom:none}.info-label[data-v-b576e1b9]{color:#8a93a0;font-size:.84rem}.info-val[data-v-b576e1b9]{color:#2b3035;font-size:.84rem;font-weight:600;text-align:right}.action-row[data-v-b576e1b9]{display:flex;gap:8px;padding:12px 16px 0}.act-btn[data-v-b576e1b9]{flex:1;border:none;border-radius:9px;padding:11px;color:#fff;font-weight:700;font-family:inherit}.act-btn.green[data-v-b576e1b9]{background:#4b5563}.act-btn.red[data-v-b576e1b9]{background:#be404a}.modal-overlay[data-v-b576e1b9]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000004d;display:flex;align-items:flex-end;justify-content:center;z-index:100}.modal-sheet[data-v-b576e1b9]{width:100%;max-width:430px;background:#fff;border-radius:18px 18px 0 0;border:1px solid #d7dde4;padding-bottom:18px}.modal-header[data-v-b576e1b9]{font-size:1.85rem;font-weight:700;color:#171c21;padding:16px 18px 8px}.modal-body[data-v-b576e1b9]{display:flex;flex-direction:column;gap:10px;padding:0 18px}.modal-avatar-row[data-v-b576e1b9]{display:flex;align-items:center;gap:10px;padding:4px 0 2px}.modal-avatar-wrap[data-v-b576e1b9]{position:relative;width:56px;height:56px;border-radius:50%;cursor:pointer}.modal-avatar-img[data-v-b576e1b9],.modal-avatar-fallback[data-v-b576e1b9]{width:56px;height:56px;border-radius:50%}.modal-avatar-img[data-v-b576e1b9]{object-fit:cover;border:2px solid #4b5563}.modal-avatar-fallback[data-v-b576e1b9]{background:#4b5563;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.2rem}.modal-avatar-plus[data-v-b576e1b9]{position:absolute;right:-2px;bottom:-2px;width:18px;height:18px;border-radius:50%;background:#4b5563;color:#fff;border:2px solid #fff;display:inline-flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:700}.change-photo-btn[data-v-b576e1b9]{border:1px solid #cfd6de;background:#f8fafb;color:#4b5563;border-radius:8px;padding:8px 10px;font-family:inherit;font-size:.82rem;font-weight:600;cursor:pointer}.field-group[data-v-b576e1b9]{display:flex;flex-direction:column;gap:4px}.field-label[data-v-b576e1b9]{font-size:.76rem;color:#636e79;font-weight:600}.field-input[data-v-b576e1b9]{border:1px solid #d2d8df;border-radius:9px;padding:8px 10px;font-family:inherit;font-size:.95rem}.field-select[data-v-b576e1b9]{border:1px solid #d2d8df;border-radius:9px;padding:8px 10px;font-family:inherit;font-size:.95rem;background:#fff}.modal-save[data-v-b576e1b9]:disabled{opacity:.65;cursor:not-allowed}.msg-err[data-v-b576e1b9]{color:#be404a;font-size:.8rem;font-weight:600}.modal-footer[data-v-b576e1b9]{display:flex;justify-content:flex-end;gap:10px;padding:14px 18px 0}.modal-cancel[data-v-b576e1b9],.modal-save[data-v-b576e1b9]{border:none;background:none;font-family:inherit;font-size:1.05rem;cursor:pointer}.modal-cancel[data-v-b576e1b9]{color:#be404a;font-weight:600}.modal-save[data-v-b576e1b9]{color:#fff;background:#4b5563;border-radius:10px;padding:7px 12px;font-size:1rem;font-weight:600}.admin-managed-note[data-v-b576e1b9]{display:block;margin-top:6px;color:#7a8289;font-size:.7rem;line-height:1.4}.field-select[data-v-b576e1b9]:disabled{cursor:not-allowed;opacity:.72;background:#eef0f2}.mobile-app[data-v-b51763b8]{max-width:430px;min-height:100%;margin:0 auto;background:#f3f5f7;display:flex;flex-direction:column;padding-bottom:16px;padding-top:env(safe-area-inset-top,0px);font-family:Poppins,sans-serif}.app-header[data-v-b51763b8]{display:flex;align-items:center;justify-content:space-between;background:#fff;padding:16px 18px;border-bottom:1px solid #e5e7eb}.back-btn[data-v-b51763b8]{background:none;border:none;cursor:pointer;color:#444;padding:4px;display:flex;align-items:center;border-radius:6px;margin-left:-4px}.header-title[data-v-b51763b8]{font-weight:700;font-size:1rem;color:#23272c}.user-card[data-v-b51763b8]{background:#fff;margin:14px 16px 0;border-radius:12px;padding:12px;display:flex;align-items:center;gap:12px;border:1px solid #e4e7eb}.user-avatar[data-v-b51763b8]{width:38px;height:38px;border-radius:50%;background:#4b5563;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700}.user-info[data-v-b51763b8]{flex:1}.user-name[data-v-b51763b8]{font-weight:700;font-size:.9rem;color:#181c20}.user-email[data-v-b51763b8]{font-size:.75rem;color:#85909b}.profile-link[data-v-b51763b8]{background:#4b5563;color:#fff;border:none;border-radius:8px;padding:7px 14px;font-size:.76rem;font-weight:600}.section-card[data-v-b51763b8]{background:#fff;margin:10px 16px 0;border-radius:12px;border:1px solid #e4e7eb;padding:14px}.section-title[data-v-b51763b8]{font-weight:700;color:#262b30;margin-bottom:12px;font-size:1rem}.pw-form[data-v-b51763b8]{display:flex;flex-direction:column;gap:10px}.field-group[data-v-b51763b8]{display:flex;flex-direction:column;gap:6px}.field-label[data-v-b51763b8]{font-size:.8rem;color:#606a75;font-weight:600}.field-input[data-v-b51763b8]{width:100%;box-sizing:border-box;border:1px solid #d8dde3;border-radius:9px;padding:10px 38px 10px 12px;background:#f8fafb;font-size:.86rem;font-family:inherit}.pw-wrap[data-v-b51763b8]{position:relative}.eye-btn[data-v-b51763b8]{position:absolute;right:10px;top:50%;transform:translateY(-50%);border:none;background:transparent;color:#77828f;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0}.update-btn[data-v-b51763b8]{border:none;background:#4b5563;color:#fff;border-radius:9px;padding:11px;font-weight:700;margin-top:2px}.msg[data-v-b51763b8]{font-size:.78rem;padding:8px 10px;border-radius:8px}.msg-err[data-v-b51763b8]{color:#d0414f;background:#fff1f3}.msg-ok[data-v-b51763b8]{color:#4b5563;background:#f8fafc}.toggle-row[data-v-b51763b8]{display:flex;align-items:center;justify-content:space-between}.toggle-label[data-v-b51763b8]{font-size:.9rem;font-weight:600;color:#23282d}.toggle-sub[data-v-b51763b8]{font-size:.75rem;color:#8a949f;margin-top:1px}.toggle-switch[data-v-b51763b8]{position:relative;display:inline-block;width:44px;height:24px}.toggle-switch input[data-v-b51763b8]{opacity:0;width:0;height:0}.toggle-slider[data-v-b51763b8]{position:absolute;top:0;right:0;bottom:0;left:0;background:#9aa3ad;border-radius:24px;transition:.2s}.toggle-slider[data-v-b51763b8]:before{content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s}.toggle-switch input:checked+.toggle-slider[data-v-b51763b8]{background:#4b5563}.toggle-switch input:checked+.toggle-slider[data-v-b51763b8]:before{transform:translate(20px)}.twofa-msg[data-v-b51763b8]{margin-top:12px;font-size:.76rem;border-radius:8px;padding:10px;line-height:1.45}.msg-on[data-v-b51763b8]{background:#f8fafc;color:#4b5563;border:1px solid #4b5563}.msg-off[data-v-b51763b8]{background:#fff1f1;color:#e14d56;border:1px solid #f3c3c7}.modal-overlay[data-v-b51763b8]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;background:#00000057;display:flex;align-items:center;justify-content:center;padding:16px}.success-modal[data-v-b51763b8]{width:min(320px,100%);background:#fff;border:2px solid #4b5563;border-radius:14px;box-shadow:0 16px 28px #0003;padding:18px 16px 16px;text-align:center}.success-icon-wrap[data-v-b51763b8]{width:72px;height:72px;margin:0 auto 10px;border:4px solid #4b5563;color:#4b5563;border-radius:50%;display:flex;align-items:center;justify-content:center}.success-title[data-v-b51763b8]{font-size:2rem;font-weight:800;color:#161b20;margin-bottom:8px}.success-text[data-v-b51763b8]{margin:0;color:#5e6975;font-size:.86rem;line-height:1.4}.success-btn[data-v-b51763b8]{margin-top:14px;border:none;background:#4b5563;color:#fff;border-radius:999px;padding:9px 22px;font-family:inherit;font-size:1rem;font-weight:700;cursor:pointer}.mobile-app[data-v-a1015e79]{max-width:430px;min-height:100%;margin:0 auto;background:#f5f6f8;display:flex;flex-direction:column;padding-bottom:16px;padding-top:env(safe-area-inset-top,0px);font-family:Poppins,sans-serif}.app-header[data-v-a1015e79]{display:flex;align-items:center;justify-content:space-between;background:#fff;padding:16px 18px;border-bottom:1px solid #eee}.back-btn[data-v-a1015e79]{background:none;border:none;cursor:pointer;color:#444;padding:4px;display:flex;align-items:center;border-radius:6px;margin-left:-4px;transition:color .15s}.back-btn[data-v-a1015e79]:hover{color:#4b5563}.header-title[data-v-a1015e79]{font-weight:700;font-size:1rem;color:#4b5563}.search-wrap[data-v-a1015e79]{position:relative;margin:14px 16px 0}.search-icon[data-v-a1015e79]{position:absolute;left:12px;top:50%;transform:translateY(-50%)}.search-input[data-v-a1015e79]{width:100%;box-sizing:border-box;padding:11px 14px 11px 36px;border:1.5px solid #e5e7eb;border-radius:10px;font-size:.87rem;background:#fff;outline:none;font-family:inherit}.search-input[data-v-a1015e79]:focus{border-color:#6b7280}.filter-row[data-v-a1015e79]{display:flex;gap:8px;padding:12px 18px 0;overflow-x:auto;scrollbar-width:none}.filter-row[data-v-a1015e79]::-webkit-scrollbar{display:none}.filter-chip[data-v-a1015e79]{white-space:nowrap;padding:6px 14px;background:#fff;border:1.5px solid #e5e7eb;border-radius:20px;font-size:.8rem;font-weight:500;cursor:pointer;font-family:inherit;color:#555;transition:all .15s}.filter-chip.active[data-v-a1015e79]{background:#4b5563;color:#fff;border-color:#4b5563}.teacher-list[data-v-a1015e79]{display:flex;flex-direction:column;gap:12px;padding:14px 18px 0}.empty-state-card[data-v-a1015e79]{background:#fff;border-radius:12px;padding:14px;text-align:center;color:#666;border:1px solid #ececec}.empty-state-card.error[data-v-a1015e79]{color:#b23a48;border-color:#f3c3ca;background:#fff4f5}.teacher-card[data-v-a1015e79]{background:#fff;border-radius:14px;padding:16px;box-shadow:0 2px 8px #00000012}.teacher-top[data-v-a1015e79]{display:flex;align-items:flex-start;gap:12px;margin-bottom:10px}.teacher-avatar[data-v-a1015e79]{width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:1rem;flex-shrink:0}.teacher-meta[data-v-a1015e79]{flex:1}.teacher-name[data-v-a1015e79]{font-weight:700;font-size:.9rem;color:#111}.teacher-subjects-clean[data-v-a1015e79]{margin-top:6px;display:flex;flex-wrap:wrap;gap:5px}.subject-chip[data-v-a1015e79]{display:inline-flex;align-items:center;padding:3px 8px;border-radius:999px;background:#edf0f1;border:1px solid #d5d9dc;color:#4b5259;font-size:.68rem;font-weight:600;line-height:1.2}.subject-chip.more[data-v-a1015e79]{background:#f5f6f8;border-color:#e2e6ea;color:#586572}.status-pill[data-v-a1015e79]{font-size:.7rem;font-weight:600;padding:3px 10px;border-radius:20px;white-space:nowrap;flex-shrink:0}.pill-green[data-v-a1015e79]{background:#d8dcdf;color:#4f575f}.pill-orange[data-v-a1015e79]{background:#fff3e0;color:#b35e00}.pill-red[data-v-a1015e79]{background:#ffeaea;color:#e63946}.pill-gray[data-v-a1015e79]{background:#f0f0f0;color:#666}.teacher-footer[data-v-a1015e79]{display:flex;align-items:center;justify-content:space-between;gap:10px}.price[data-v-a1015e79]{font-size:.82rem;font-weight:600;color:#4b5563;min-width:12px}.action-btn[data-v-a1015e79]{padding:9px 14px;border-radius:8px;border:none;font-family:inherit;font-size:.8rem;font-weight:600;cursor:pointer;transition:opacity .15s}.action-btn[data-v-a1015e79]:active{opacity:.8}.action-btn.green[data-v-a1015e79]{background:#4b5563;color:#fff}.action-btn.disabled[data-v-a1015e79]{background:#7b8794;color:#fff;cursor:not-allowed}.status-badge[data-v-a1015e79]{width:10px;height:10px;border-radius:50%;background:#e63946;display:inline-block;margin-left:8px;margin-top:6px;flex-shrink:0;box-shadow:0 0 0 3px #e639461f}.modal-overlay[data-v-a1015e79]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:100;display:flex;align-items:flex-end;justify-content:center}.modal-sheet[data-v-a1015e79]{width:100%;max-width:430px;background:#fff;border-radius:20px 20px 0 0;max-height:92dvh;overflow-y:auto;padding-bottom:28px}.modal-handle[data-v-a1015e79]{width:40px;height:4px;background:#ddd;border-radius:2px;margin:12px auto 0}.modal-header[data-v-a1015e79]{display:flex;justify-content:space-between;align-items:center;padding:16px 20px 14px;font-weight:700;font-size:1rem;border-bottom:1px solid #f0f0f0}.modal-close[data-v-a1015e79]{background:none;border:none;font-size:1.1rem;cursor:pointer;color:#999;line-height:1}.modal-body[data-v-a1015e79]{padding:16px 20px;display:flex;flex-direction:column;gap:14px}.modal-footer[data-v-a1015e79]{display:flex;gap:10px;padding:12px 20px 0}.modal-cancel[data-v-a1015e79]{flex:1;padding:12px;background:#f0f0f0;color:#555;border:none;border-radius:10px;font-family:inherit;font-weight:600;font-size:.88rem;cursor:pointer}.modal-submit[data-v-a1015e79]{flex:2;padding:12px;background:#4b5563;color:#fff;border:none;border-radius:10px;font-family:inherit;font-weight:600;font-size:.88rem;cursor:pointer}.field-group[data-v-a1015e79]{display:flex;flex-direction:column;gap:6px}.field-label[data-v-a1015e79]{font-size:.8rem;font-weight:600;color:#444}.optional[data-v-a1015e79]{font-weight:400;color:#aaa}.field-input[data-v-a1015e79]{width:100%;padding:10px 12px;border:1.5px solid #e5e7eb;border-radius:8px;font-family:inherit;font-size:.87rem;outline:none;box-sizing:border-box}.field-input[data-v-a1015e79]:focus{border-color:#4b5563}.field-textarea[data-v-a1015e79]{resize:none}.form-row-2[data-v-a1015e79]{display:grid;grid-template-columns:1fr 1fr;gap:12px}.msg-err[data-v-a1015e79]{color:#e63946;font-size:.8rem;font-weight:500}.teacher-pill[data-v-a1015e79]{display:flex;align-items:center;gap:12px;background:#f5f6f8;border-radius:12px;padding:12px}.tp-avatar[data-v-a1015e79]{width:44px;height:44px;border-radius:50%;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1rem;flex-shrink:0}.tp-name[data-v-a1015e79]{font-weight:700;font-size:.9rem;color:#111}.tp-subjects-clean[data-v-a1015e79]{margin-top:6px;display:flex;flex-wrap:wrap;gap:5px}.profile-hero[data-v-a1015e79]{display:flex;flex-direction:column;align-items:center;padding:8px 0 12px;gap:4px}.profile-avatar-lg[data-v-a1015e79]{width:72px;height:72px;border-radius:50%;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.6rem;margin-bottom:8px}.profile-hero-name[data-v-a1015e79]{font-weight:700;font-size:1rem;color:#111}.profile-subjects-clean[data-v-a1015e79]{margin-top:4px;display:flex;justify-content:center;flex-wrap:wrap;gap:5px}.prof-row[data-v-a1015e79]{display:flex;flex-direction:column;gap:5px;padding:12px 0;border-bottom:1px solid #f0f0f0}.prof-row[data-v-a1015e79]:last-child{border-bottom:none}.prof-label[data-v-a1015e79]{font-size:.73rem;font-weight:700;color:#aaa;text-transform:uppercase;letter-spacing:.05em}.prof-value[data-v-a1015e79]{font-size:.88rem;color:#111;font-weight:500}.prof-avail[data-v-a1015e79]{font-size:.88rem;font-weight:600}.avail-yes[data-v-a1015e79]{color:#6b7280}.avail-no[data-v-a1015e79]{color:#e63946}.toast[data-v-a1015e79]{position:fixed;bottom:80px;left:50%;transform:translate(-50%);background:#4b5563;color:#fff;padding:10px 22px;border-radius:20px;font-size:.85rem;font-weight:600;z-index:200;white-space:nowrap;box-shadow:0 4px 20px #0000002e;animation:fadeUp-a1015e79 .25s ease}@keyframes fadeUp-a1015e79{0%{opacity:0;transform:translate(-50%) translateY(10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.student-app-shell[data-v-3e8a5e54]{position:relative;width:100%;max-width:430px;height:100%;min-height:100dvh;margin:0 auto;overflow:hidden;background:#f3f5f7;box-shadow:0 0 28px #25292e24}.student-tab-bar[data-v-3e8a5e54]{height:calc(66px + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);border-top:1px solid #e5e7eb;--background: #ffffff;--border: 0;box-shadow:0 -2px 12px #0000000f}ion-tab-button[data-v-3e8a5e54]{--background: #ffffff;--color: #9aa0a6;--color-selected: #30363d;max-width:none;font-family:Poppins,sans-serif}ion-tab-button[data-v-3e8a5e54]::part(native){padding:7px 2px 6px}ion-icon[data-v-3e8a5e54]{width:21px;height:21px}ion-label[data-v-3e8a5e54]{margin-top:3px;font-size:.61rem;font-weight:500;line-height:1}.term-prompt-overlay[data-v-3e8a5e54]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10000;background:#1f23279e;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:grid;place-items:center;padding:20px}.term-prompt[data-v-3e8a5e54]{width:100%;max-width:360px;background:#fff;border-radius:20px;padding:24px;box-shadow:0 24px 70px #0000004d}.term-prompt-icon[data-v-3e8a5e54]{width:50px;height:50px;border-radius:14px;background:#e8ebed;color:#30383f;display:grid;place-items:center;font-size:1.5rem}.term-prompt h2[data-v-3e8a5e54]{margin:15px 0 6px;color:#252b30;font-size:1.25rem}.term-prompt>p[data-v-3e8a5e54]{margin:0 0 18px;color:#687078;font-size:.82rem;line-height:1.5}.term-prompt label[data-v-3e8a5e54]{display:block;margin-top:12px}.term-prompt label span[data-v-3e8a5e54]{display:block;margin-bottom:5px;font-size:.72rem;font-weight:700;text-transform:uppercase;color:#454c53}.term-prompt select[data-v-3e8a5e54]{width:100%;height:44px;border:1px solid #cdd2d6;border-radius:10px;padding:0 12px;background:#f7f8f9;font:inherit;font-size:.84rem}.term-prompt button[data-v-3e8a5e54]{width:100%;height:44px;margin-top:20px;border:0;border-radius:10px;background:#4b5563;color:#fff;font:700 .85rem Poppins;cursor:pointer}.term-prompt button[data-v-3e8a5e54]:disabled{opacity:.55}.term-prompt .term-prompt-error[data-v-3e8a5e54]{color:#c1121f;margin:10px 0 0}@media (max-width: 430px){.student-app-shell[data-v-3e8a5e54]{box-shadow:none}}.teacher-sidebar-status[data-v-a362d4ae]{width:100%;margin:-10px 0 12px;padding:10px 0 12px}.sidebar-status-panel[data-v-a362d4ae]{width:100%;margin-top:0;padding:8px;border:1px solid rgba(255,255,255,.62);border-radius:11px;background:linear-gradient(145deg,#f5f7f7b8,#c7ccd094);box-shadow:inset 0 1px #ffffffc2,0 4px 10px #2a30361a;text-align:left}.sidebar-status-panel+.sidebar-status-panel[data-v-a362d4ae]{margin-top:7px}.sidebar-status-head[data-v-a362d4ae]{display:flex;align-items:center;justify-content:space-between;gap:7px;margin-bottom:6px;color:#30353a;font-size:.68rem;font-weight:700;letter-spacing:.04em;line-height:1;text-transform:uppercase}.sidebar-status-dot[data-v-a362d4ae]{width:7px;height:7px;border-radius:50%}.sidebar-status-dot.is-in-school[data-v-a362d4ae]{background:#40916c}.sidebar-status-dot.is-on-leave[data-v-a362d4ae]{background:#e63946}.sidebar-status-dot.is-offline[data-v-a362d4ae]{background:#98a2b3}.sidebar-status-action-row[data-v-a362d4ae]{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px}.sidebar-status-value[data-v-a362d4ae],.sidebar-status-select[data-v-a362d4ae]{min-height:28px;color:#30353a;background:#ffffffbd;border:1px solid rgba(116,123,129,.28);border-radius:8px;font:inherit;font-size:.72rem;font-weight:700}.sidebar-status-value[data-v-a362d4ae]{display:inline-flex;min-width:0;align-items:center;justify-content:flex-start;padding:0 9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-status-select[data-v-a362d4ae]{width:100%;height:28px;padding:0 8px}.sidebar-status-button[data-v-a362d4ae]{min-width:74px;height:28px;padding:0 10px;border:1px solid #30353a;border-radius:8px;background:linear-gradient(145deg,#424950,#23282e);color:#fff;font:inherit;font-size:.68rem;font-weight:700;cursor:pointer;transition:background .2s ease,transform .2s ease}.sidebar-status-button[data-v-a362d4ae]:disabled{cursor:not-allowed;opacity:.55;background:#8d949a;border-color:#747b81}.sidebar-time-in[data-v-a362d4ae],.sidebar-status-subtext[data-v-a362d4ae]{margin-top:5px;color:#69727c;font-size:.62rem;line-height:1.25}.teacher-status-toast[data-v-a362d4ae]{position:fixed;top:22px;right:24px;z-index:3000;max-width:min(320px,calc(100vw - 32px));margin:0;padding:12px 14px;color:#173f2a;background:linear-gradient(145deg,#f6fbf8,#dcefe4);border:1px solid rgba(64,145,108,.28);border-radius:12px;box-shadow:0 16px 34px #1f23272e,inset 0 1px #ffffffd1;font-size:.78rem;font-weight:600;line-height:1.35}.teacher-status-toast.is-error[data-v-a362d4ae]{color:#8a1f18;background:linear-gradient(145deg,#fff7f6,#ffe2df);border-color:#e6394647}.layout[data-v-16db1211]{display:flex;height:100vh;overflow:hidden;background:#f5f6f8;font-family:Poppins,sans-serif}.sidebar[data-v-16db1211]{width:280px;min-width:280px;background:#fff;border-right:1px solid #ececec;display:flex;flex-direction:column;align-items:center;padding:28px 18px 24px;position:sticky;top:0;height:100vh;overflow-y:auto}.sidebar-profile[data-v-16db1211]{display:flex;flex-direction:column;align-items:center;gap:6px;margin-bottom:28px;text-align:center}.avatar-wrap[data-v-16db1211]{width:96px;height:96px;border-radius:50%;overflow:hidden;margin-bottom:10px;border:3px solid #c4c9cd}.avatar[data-v-16db1211]{width:100%;height:100%;object-fit:cover}.brand[data-v-16db1211]{font-size:1.05rem;font-weight:600;color:#4b5563}.role[data-v-16db1211]{font-size:.88rem;color:#444;font-weight:500}.email[data-v-16db1211]{font-size:.82rem;color:#888;word-break:break-all}.sidebar-nav[data-v-16db1211]{display:flex;flex-direction:column;gap:4px;width:100%;flex:1}.nav-item[data-v-16db1211]{display:flex;align-items:center;gap:10px;padding:11px 16px;border-radius:10px;font-size:.88rem;font-weight:400;color:#444;text-decoration:none;transition:background .18s,color .18s;cursor:pointer}.nav-item[data-v-16db1211]:hover{background:#f8fafc;color:#4b5563}.nav-item.active[data-v-16db1211]{background:#4b5563;color:#fff}.nav-item.active .nav-icon[data-v-16db1211]{color:#fff}.nav-icon[data-v-16db1211]{display:flex;align-items:center;flex-shrink:0}.logout-btn[data-v-16db1211]{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:11px 12px;background:#e63946;color:#fff;border:none;border-radius:10px;font-size:.85rem;font-weight:500;font-family:inherit;cursor:pointer;transition:background .2s;margin-top:16px}.logout-btn[data-v-16db1211]:hover{background:#c1121f}.main[data-v-16db1211]{flex:1;padding:40px 44px 32px;overflow-y:auto;min-width:0;display:flex;flex-direction:column;height:100vh}.main-header[data-v-16db1211]{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:28px}.page-title[data-v-16db1211]{font-size:2.4rem;font-weight:700;color:#4b5563;letter-spacing:-.5px;line-height:1.2}.page-sub[data-v-16db1211]{font-size:.95rem;color:#777;margin-top:4px}.consult-card[data-v-16db1211]{background:#fff;border:1.5px solid #e0e0e0;border-radius:16px;padding:24px 24px 28px;flex:1;min-height:0;overflow-y:auto}.card-header[data-v-16db1211]{margin-bottom:18px}.card-title[data-v-16db1211]{font-size:1.05rem;font-weight:700;color:#111}.card-sub[data-v-16db1211]{font-size:.82rem;color:#888;margin-top:2px}.controls-row[data-v-16db1211]{display:flex;align-items:center;gap:12px;margin-bottom:20px}.filter-tabs[data-v-16db1211]{display:flex;align-items:center;gap:6px;padding:6px 8px;background:#f5f6f8;border-radius:10px;flex:1;flex-wrap:nowrap;overflow-x:auto}.filter-tabs[data-v-16db1211]::-webkit-scrollbar{height:0}.btn-approve-all[data-v-16db1211]{display:inline-flex;align-items:center;justify-content:center;min-width:150px;padding:11px 16px;border:none;border-radius:6px;background:#6b7280;color:#fff;font-family:inherit;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .15s,opacity .15s;flex-shrink:0}.btn-approve-all[data-v-16db1211]:hover{background:#4b5563}.btn-approve-all[data-v-16db1211]:disabled{cursor:not-allowed;opacity:.65}.filter-tab[data-v-16db1211]{padding:7px 16px;border:none;border-radius:8px;font-family:inherit;font-size:.85rem;font-weight:500;color:#555;background:transparent;cursor:pointer;transition:background .15s,color .15s;white-space:nowrap}.filter-tab[data-v-16db1211]:hover{background:#f3f4f6;color:#4b5563}.filter-tab.active[data-v-16db1211]{background:#4b5563;color:#fff;font-weight:600}.request-list[data-v-16db1211]{display:flex;flex-direction:column;gap:14px}.request-card[data-v-16db1211]{padding:16px 18px;border-radius:12px;border:1.5px solid #e8e8e8;border-left-width:5px;background:#fff;transition:box-shadow .15s;cursor:pointer}.request-card[data-v-16db1211]:hover{box-shadow:0 4px 16px #00000012}.border-pending[data-v-16db1211]{border-left-color:#e8a020;background:#fffdf5}.border-approved[data-v-16db1211]{border-left-color:#4b5563;background:#f8fafc}.border-resched[data-v-16db1211]{border-left-color:#e63946;background:#fff8f8}.border-completed[data-v-16db1211]{border-left-color:#cbd5e1;background:#f8fafc}.border-cancelled[data-v-16db1211]{border-left-color:#8d99ae;background:#f6f7f9}.req-top[data-v-16db1211]{display:flex;align-items:center;gap:12px;margin-bottom:10px}.req-avatar-wrap[data-v-16db1211]{width:44px;height:44px;border-radius:50%;overflow:hidden;flex-shrink:0;background:#ddd}.req-avatar[data-v-16db1211]{width:100%;height:100%;object-fit:cover}.req-info[data-v-16db1211]{flex:1;min-width:0}.req-name-row[data-v-16db1211]{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.req-name[data-v-16db1211]{font-size:.98rem;font-weight:700;color:#111}.req-id[data-v-16db1211]{font-size:.8rem;color:#888;margin-top:2px}.req-ticket[data-v-16db1211]{font-size:.78rem;color:#6b7280;font-weight:600;margin-top:4px}.req-queue[data-v-16db1211]{font-size:.78rem;color:#4b5563;font-weight:600;margin-top:4px}.status-badge[data-v-16db1211]{display:inline-block;padding:3px 12px;border-radius:20px;font-size:.75rem;font-weight:600}.badge-pending[data-v-16db1211]{background:#fff0cc;color:#b06000}.badge-approved[data-v-16db1211]{background:#e5e7eb;color:#4b5563}.badge-resched[data-v-16db1211]{background:#ffd6d8;color:#c1121f}.badge-completed[data-v-16db1211]{background:#f3f4f6;color:#6b7280}.badge-cancelled[data-v-16db1211]{background:#e9ecef;color:#5c677d}.req-actions[data-v-16db1211]{display:flex;align-items:center;gap:8px;flex-shrink:0}.btn-approve[data-v-16db1211]{display:flex;align-items:center;gap:5px;padding:7px 16px;background:#4b5563;color:#fff;border:none;border-radius:8px;font-family:inherit;font-size:.82rem;font-weight:600;cursor:pointer;transition:background .15s}.btn-approve[data-v-16db1211]:hover{background:#6b7280}.btn-reject[data-v-16db1211]{display:flex;align-items:center;gap:5px;padding:7px 16px;background:#e63946;color:#fff;border:none;border-radius:8px;font-family:inherit;font-size:.82rem;font-weight:600;cursor:pointer;transition:background .15s}.btn-reject[data-v-16db1211]:hover{background:#c1121f}.btn-edit[data-v-16db1211]{display:flex;align-items:center;justify-content:center;width:34px;height:34px;background:#f0f0f0;border:none;border-radius:8px;color:#444;cursor:pointer;transition:background .15s}.btn-edit[data-v-16db1211]:hover{background:#e0e0e0}.btn-done[data-v-16db1211]{display:flex;align-items:center;gap:5px;padding:7px 16px;background:#4b5563;color:#fff;border:none;border-radius:8px;font-family:inherit;font-size:.82rem;font-weight:600;cursor:pointer;transition:background .15s}.btn-done[data-v-16db1211]:hover{background:#6b7280}.req-subject[data-v-16db1211]{font-size:.9rem;font-weight:600;color:#9ca3af;margin-bottom:5px}.req-message[data-v-16db1211]{font-size:.88rem;color:#444;line-height:1.5;margin-bottom:8px}.req-time[data-v-16db1211]{display:flex;align-items:center;gap:5px;font-size:.8rem;color:#888}.empty-state[data-v-16db1211]{text-align:center;padding:40px 20px;font-size:.9rem;color:#aaa}.modal-overlay[data-v-16db1211]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:1000}.logout-modal-box[data-v-16db1211]{background:#fff;border-radius:20px;padding:36px 40px 32px;width:360px;max-width:94vw;display:flex;flex-direction:column;align-items:center;gap:10px;box-shadow:0 16px 48px #0000002e;text-align:center}.logout-modal-icon[data-v-16db1211]{width:68px;height:68px;border-radius:50%;background:#ffeaea;display:flex;align-items:center;justify-content:center;margin-bottom:4px}.logout-modal-title[data-v-16db1211]{font-size:1.45rem;font-weight:700;color:#111;margin:0}.logout-modal-sub[data-v-16db1211]{font-size:.9rem;color:#777;margin:0 0 8px}.logout-modal-actions[data-v-16db1211]{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:6px;width:100%}.logout-cancel-btn[data-v-16db1211]{background:none;border:none;font-family:inherit;font-size:1rem;font-weight:600;color:#e63946;cursor:pointer;padding:8px 18px;border-radius:10px;transition:background .15s}.logout-cancel-btn[data-v-16db1211]:hover{background:#ffeaea}.logout-confirm-btn[data-v-16db1211]{background:#4b5563;color:#fff;border:none;font-family:inherit;font-size:1rem;font-weight:600;padding:10px 32px;border-radius:10px;cursor:pointer;transition:background .18s}.logout-confirm-btn[data-v-16db1211]:hover{background:#6b7280}.reject-modal[data-v-16db1211]{width:460px;max-width:94vw;padding:36px 40px 32px;background:#fff;border-radius:20px;box-shadow:0 24px 60px #0000002e;font-family:Poppins,sans-serif}.reject-modal-title[data-v-16db1211]{font-size:1.4rem;font-weight:700;color:#111;margin:0 0 6px;text-align:center}.reject-modal-sub[data-v-16db1211]{font-size:.85rem;color:#888;text-align:center;margin:0 0 22px}.reject-student-box[data-v-16db1211]{padding:14px 18px;border:1.5px solid #e63946;border-radius:10px;margin-bottom:22px;background:#fff}.reject-student-name[data-v-16db1211]{font-size:1rem;font-weight:600;color:#111;margin-bottom:4px}.reject-student-subject[data-v-16db1211]{font-size:.9rem;color:#444}.reject-label[data-v-16db1211]{display:block;font-size:.85rem;font-weight:500;color:#333;margin-bottom:8px}.reject-select-wrap[data-v-16db1211]{position:relative;margin-bottom:28px}.reject-select[data-v-16db1211]{width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:10px 36px 10px 14px;border:1.5px solid #d0d0d0;border-radius:8px;font-family:inherit;font-size:.88rem;color:#333;background:#fff;cursor:pointer;outline:none}.reject-select[data-v-16db1211]:focus{border-color:#4b5563}.reject-select-arrow[data-v-16db1211]{position:absolute;right:12px;top:50%;transform:translateY(-50%);pointer-events:none;color:#555}.reject-modal-actions[data-v-16db1211]{display:flex;align-items:center;justify-content:flex-end;gap:12px}.reject-cancel-btn[data-v-16db1211]{padding:9px 22px;background:none;border:1.5px solid #d0d0d0;border-radius:10px;font-family:inherit;font-size:.9rem;font-weight:500;color:#555;cursor:pointer;transition:background .15s}.reject-cancel-btn[data-v-16db1211]:hover{background:#f5f5f5}.reject-confirm-btn[data-v-16db1211]{display:flex;align-items:center;gap:6px;padding:9px 22px;background:#e63946;color:#fff;border:none;border-radius:10px;font-family:inherit;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .15s}.reject-confirm-btn[data-v-16db1211]:hover{background:#c1121f}.reject-other-wrap[data-v-16db1211]{margin-top:-16px;margin-bottom:28px}.reject-other-input[data-v-16db1211]{width:100%;padding:10px 14px;border:1.5px solid #d0d0d0;border-radius:8px;font-family:inherit;font-size:.88rem;color:#333;outline:none;transition:border-color .15s}.reject-other-input[data-v-16db1211]::placeholder{color:#bbb}.reject-other-input[data-v-16db1211]:focus{border-color:#4b5563}.approve-modal[data-v-16db1211]{width:400px;max-width:94vw;padding:44px 44px 40px;background:#fff;border-radius:20px;box-shadow:0 20px 56px #00000029;text-align:center}.approve-modal-icon[data-v-16db1211]{width:60px;height:60px;border-radius:50%;background:#e5e7eb;display:flex;align-items:center;justify-content:center;margin:0 auto 20px}.approve-modal-title[data-v-16db1211]{font-size:1.25rem;font-weight:700;color:#111;margin:0 0 10px}.approve-modal-text[data-v-16db1211]{font-size:.88rem;color:#888;line-height:1.65;margin:0 0 32px}.approve-modal-actions[data-v-16db1211]{display:flex;align-items:center;justify-content:center;gap:12px}.approve-cancel-btn[data-v-16db1211]{background:none;border:1.5px solid #e0e0e0;font-family:inherit;font-size:.92rem;font-weight:600;color:#555;cursor:pointer;padding:10px 28px;border-radius:10px;transition:background .15s,border-color .15s}.approve-cancel-btn[data-v-16db1211]:hover{background:#f5f5f5;border-color:#c8c8c8}.approve-ok-btn[data-v-16db1211]{padding:10px 28px;background:#4b5563;color:#fff;border:none;border-radius:10px;font-family:inherit;font-size:.92rem;font-weight:600;cursor:pointer;transition:background .15s}.approve-ok-btn[data-v-16db1211]:hover{background:#6b7280}.reject-required[data-v-16db1211]{color:#e63946;margin-left:2px}.reject-reason-error[data-v-16db1211]{font-size:.82rem;color:#e63946;margin:-12px 0 16px;display:flex;align-items:center;gap:5px}.reject-reason-error[data-v-16db1211]:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:#e63946;flex-shrink:0}.done-modal[data-v-16db1211]{width:460px;max-width:94vw;background:#fff;border-radius:20px;padding:28px 28px 24px;border:1px solid #eef0f1;box-shadow:0 20px 56px #00000029}.done-modal-icon[data-v-16db1211]{width:58px;height:58px;border-radius:50%;background:#e9ebec;display:flex;align-items:center;justify-content:center;margin:0 auto 14px}.done-modal-title[data-v-16db1211]{margin:0;text-align:center;font-size:1.28rem;font-weight:700;color:#111}.done-modal-sub[data-v-16db1211]{margin:8px 0 18px;color:#666;font-size:.9rem;line-height:1.5;text-align:center}.done-label[data-v-16db1211]{display:block;margin-bottom:6px;font-size:.83rem;font-weight:600;color:#444}.done-textarea[data-v-16db1211]{width:100%;border:1.5px solid #d7dadd;border-radius:12px;padding:12px 13px;font-family:inherit;font-size:.88rem;line-height:1.45;color:#2b2f33;background:#fbfcfb;resize:vertical;box-sizing:border-box;min-height:112px}.done-textarea[data-v-16db1211]:focus{outline:none;border-color:#4b5563;background:#fff;box-shadow:0 0 0 3px #30353a1f}.done-note-count[data-v-16db1211]{margin-top:6px;text-align:right;font-size:.76rem;color:#98a0a7}.done-modal-actions[data-v-16db1211]{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.done-cancel-btn[data-v-16db1211],.done-confirm-btn[data-v-16db1211]{border:1px solid transparent;border-radius:10px;padding:10px 18px;font-family:inherit;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .16s ease}.done-cancel-btn[data-v-16db1211]{background:#f3f4f5;border-color:#e0e3e6;color:#555}.done-cancel-btn[data-v-16db1211]:hover{background:#eceff1}.done-confirm-btn[data-v-16db1211]{background:#4b5563;color:#fff}.done-confirm-btn[data-v-16db1211]:hover{background:#245a42}.confirm-modal[data-v-16db1211]{width:400px;max-width:94vw;padding:44px 44px 40px;background:#fff;border-radius:20px;box-shadow:0 20px 56px #00000029;text-align:center}.confirm-modal-icon[data-v-16db1211]{width:60px;height:60px;border-radius:50%;background:#ffeaea;display:flex;align-items:center;justify-content:center;margin:0 auto 20px}.confirm-modal-title[data-v-16db1211]{font-size:1.25rem;font-weight:700;color:#111;margin:0 0 10px}.confirm-modal-text[data-v-16db1211]{font-size:.88rem;color:#888;line-height:1.65;margin:0 0 32px}.confirm-modal-actions[data-v-16db1211]{display:flex;align-items:center;justify-content:center;gap:12px}.confirm-cancel-btn[data-v-16db1211]{background:none;border:1.5px solid #e0e0e0;font-family:inherit;font-size:.92rem;font-weight:600;color:#555;cursor:pointer;padding:10px 28px;border-radius:10px;transition:background .15s,border-color .15s}.confirm-cancel-btn[data-v-16db1211]:hover{background:#f5f5f5;border-color:#c8c8c8}.confirm-ok-btn[data-v-16db1211]{padding:10px 28px;background:#e63946;color:#fff;border:none;border-radius:10px;font-family:inherit;font-size:.92rem;font-weight:600;cursor:pointer;transition:background .15s}.confirm-ok-btn[data-v-16db1211]:hover{background:#c1121f}.detail-modal[data-v-16db1211]{width:460px;max-width:94vw;padding:32px 36px 36px;background:#fff;border-radius:20px;box-shadow:0 24px 60px #0000002e;font-family:Poppins,sans-serif;position:relative}.detail-close[data-v-16db1211]{position:absolute;top:14px;right:14px;background:#f5f5f5;border:none;border-radius:8px;width:34px;height:34px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#555;transition:background .15s}.detail-close[data-v-16db1211]:hover{background:#ebebeb}.detail-head[data-v-16db1211]{display:flex;align-items:center;gap:16px;margin-bottom:20px;padding-right:40px}.detail-avatar[data-v-16db1211]{width:64px;height:64px;border-radius:50%;object-fit:cover;border:2.5px solid #c4c9cd;flex-shrink:0}.detail-identity[data-v-16db1211]{flex:1;min-width:0}.detail-name[data-v-16db1211]{font-size:1.1rem;font-weight:700;color:#111;margin-bottom:2px}.detail-sid[data-v-16db1211]{font-size:.82rem;color:#888;margin-bottom:8px}.detail-divider[data-v-16db1211]{height:1px;background:#f0f0f0;margin:0 0 20px}.detail-row[data-v-16db1211]{margin-bottom:16px}.detail-label[data-v-16db1211]{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:#aaa;margin-bottom:4px}.detail-value[data-v-16db1211]{font-size:.92rem;color:#222;line-height:1.55}.detail-msg[data-v-16db1211]{color:#555}.detail-label-reject[data-v-16db1211]{color:#e63946}.detail-reject-reason[data-v-16db1211]{color:#c1121f;background:#fff0f0;border-left:3px solid #e63946;padding:8px 12px;border-radius:6px;font-size:.88rem}.edit-modal[data-v-16db1211]{width:500px;max-width:96vw;background:#fff;border-radius:20px;box-shadow:0 20px 56px #00000029;overflow:hidden}.edit-modal-header[data-v-16db1211]{display:flex;align-items:flex-start;justify-content:space-between;padding:28px 32px 0}.edit-modal-title[data-v-16db1211]{font-size:1.2rem;font-weight:700;color:#111;margin:0 0 4px}.edit-modal-sub[data-v-16db1211]{font-size:.82rem;color:#888;margin:0}.edit-modal-close[data-v-16db1211]{background:#f5f6f8;border:none;border-radius:8px;width:34px;height:34px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#555;flex-shrink:0;transition:background .15s}.edit-modal-close[data-v-16db1211]:hover{background:#e8e8e8}.edit-modal-body[data-v-16db1211]{padding:24px 32px 8px;display:flex;flex-direction:column;gap:6px}.edit-label[data-v-16db1211]{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#888;margin-bottom:2px;margin-top:10px}.edit-label[data-v-16db1211]:first-child{margin-top:0}.edit-status-options[data-v-16db1211]{display:flex;flex-direction:column;gap:10px;margin-top:4px}.edit-status-opt[data-v-16db1211]{display:flex;align-items:center;gap:12px;padding:12px 16px;border:1.5px solid #e8e8e8;border-radius:10px;cursor:pointer;font-size:.9rem;font-weight:500;color:#444;transition:border-color .15s,background .15s;-webkit-user-select:none;user-select:none}.edit-status-opt[data-v-16db1211]:hover{background:#f9f9f9}.edit-status-opt.selected[data-v-16db1211]{border-color:currentColor;font-weight:700}.opt-pending[data-v-16db1211]{color:#b06000}.opt-approved[data-v-16db1211]{color:#4b5563}.opt-resched[data-v-16db1211]{color:#c1121f}.opt-completed[data-v-16db1211]{color:#6b7280}.opt-cancelled[data-v-16db1211]{color:#5c677d}.opt-pending.selected[data-v-16db1211]{background:#fffdf5}.opt-approved.selected[data-v-16db1211]{background:#f8fafc}.opt-resched.selected[data-v-16db1211]{background:#fff8f8}.opt-completed.selected[data-v-16db1211]{background:#f8fafc}.opt-cancelled.selected[data-v-16db1211]{background:#f4f5f7}.opt-dot[data-v-16db1211]{width:10px;height:10px;border-radius:50%;background:currentColor;flex-shrink:0}.edit-modal-actions[data-v-16db1211]{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:20px 32px 28px}.edit-cancel-btn[data-v-16db1211]{background:none;border:1.5px solid #e0e0e0;font-family:inherit;font-size:.9rem;font-weight:600;color:#555;cursor:pointer;padding:9px 22px;border-radius:10px;transition:background .15s,border-color .15s}.edit-cancel-btn[data-v-16db1211]:hover{background:#f5f5f5;border-color:#c8c8c8}.edit-save-btn[data-v-16db1211]{display:flex;align-items:center;gap:6px;padding:9px 22px;background:#4b5563;color:#fff;border:none;border-radius:10px;font-family:inherit;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .15s}.edit-save-btn[data-v-16db1211]:hover{background:#6b7280}@media (max-width: 900px){.main[data-v-16db1211]{padding:20px 16px 32px}.sidebar[data-v-16db1211]{width:200px;min-width:200px}}.layout[data-v-3a689240]{display:flex;height:100vh;overflow:hidden;background:#f5f6f8;font-family:Poppins,sans-serif}.layout button[data-v-3a689240],.layout input[data-v-3a689240],.layout select[data-v-3a689240],.layout textarea[data-v-3a689240]{font-family:inherit}.sidebar[data-v-3a689240]{width:280px;min-width:280px;background:#fff;border-right:1px solid #ececec;display:flex;flex-direction:column;align-items:center;padding:28px 18px 24px;position:sticky;top:0;height:100vh;overflow-y:auto}.sidebar-profile[data-v-3a689240]{display:flex;flex-direction:column;align-items:center;gap:6px;margin-bottom:28px;text-align:center}.avatar-wrap[data-v-3a689240]{width:96px;height:96px;border-radius:50%;overflow:hidden;margin-bottom:10px;border:3px solid #c4c9cd}.avatar[data-v-3a689240]{width:100%;height:100%;object-fit:cover}.brand[data-v-3a689240]{font-size:1.05rem;font-weight:600;color:#30353a}.role[data-v-3a689240]{font-size:.88rem;color:#444;font-weight:500}.email[data-v-3a689240]{font-size:.82rem;color:#888;word-break:break-all}.sidebar-presence-wrap[data-v-3a689240]{position:relative;width:100%;margin-top:10px}.sidebar-presence-btn[data-v-3a689240]{display:flex;align-items:center;gap:8px;width:100%;height:34px;padding:0 10px;border:0;border-radius:8px;background:#f2f4f3;color:#475467;font:inherit;font-size:.78rem;cursor:pointer}.sidebar-presence-btn[data-v-3a689240]:hover{background:#e8f1eb;color:#1b4332}.sidebar-presence-btn .presence-arrow[data-v-3a689240]{margin-left:auto;font-size:1.25rem;line-height:1}.presence-menu[data-v-3a689240]{position:absolute;z-index:20;width:245px;padding:8px;border:1px solid #d9dedb;border-radius:10px;background:#fff;box-shadow:0 10px 28px #00000029;text-align:left}.presence-menu[data-v-3a689240]{top:calc(100% + 7px);left:0}.presence-option[data-v-3a689240]{display:flex;align-items:center;gap:10px;width:100%;min-height:36px;padding:7px 9px;border:0;border-radius:6px;background:transparent;color:#344054;font:inherit;font-size:.78rem;text-align:left;cursor:pointer}.presence-option[data-v-3a689240]:hover{background:#f1f7f3;color:#1b4332}.presence-arrow[data-v-3a689240]{margin-left:auto;font-size:1.2rem;color:#667085}.presence-dot[data-v-3a689240]{width:10px;height:10px;border-radius:50%;flex:0 0 auto}.presence-dot.online[data-v-3a689240]{background:#40a86b}.presence-dot.leave[data-v-3a689240]{background:#e63946}.presence-dot.unavailable[data-v-3a689240]{border:3px solid #98a2b3;background:transparent}.presence-clock[data-v-3a689240]{width:10px;color:#667085;font-size:1rem}.presence-separator[data-v-3a689240]{height:1px;margin:6px 4px;background:#eaecf0}.presence-time[data-v-3a689240]{padding:4px 9px 2px 29px;color:#98a2b3;font-size:.68rem}.presence-feedback[data-v-3a689240]{position:fixed;top:22px;right:24px;z-index:3000;max-width:min(320px,calc(100vw - 32px));margin:0;padding:12px 14px;color:#173f2a;background:linear-gradient(145deg,#f6fbf8,#dcefe4);border:1px solid rgba(64,145,108,.28);border-radius:12px;box-shadow:0 16px 34px #1f23272e,inset 0 1px #ffffffd1;font-size:.78rem;font-weight:600;line-height:1.35}.presence-feedback.is-error[data-v-3a689240]{color:#8a1f18;background:linear-gradient(145deg,#fff7f6,#ffe2df);border-color:#e6394647}.sidebar-status-panel[data-v-3a689240]{grid-column:1 / -1;width:100%;margin-top:8px;padding:8px;border:1px solid rgba(255,255,255,.62);border-radius:11px;background:linear-gradient(145deg,#f5f7f7b8,#c7ccd094);box-shadow:inset 0 1px #ffffffc2,0 4px 10px #2a30361a;text-align:left}.sidebar-status-head[data-v-3a689240]{display:flex;align-items:center;justify-content:space-between;gap:7px;margin-bottom:6px;color:#30353a;font-size:.68rem;font-weight:700;letter-spacing:.04em;line-height:1;text-transform:uppercase}.sidebar-status-dot[data-v-3a689240]{width:7px;height:7px;border-radius:50%}.sidebar-status-dot.is-in-school[data-v-3a689240]{background:#40916c}.sidebar-status-dot.is-on-leave[data-v-3a689240]{background:#e63946}.sidebar-status-dot.is-offline[data-v-3a689240]{background:#98a2b3}.sidebar-status-select[data-v-3a689240]{width:100%;height:28px;margin-top:0;padding:0 8px;border:1px solid rgba(116,123,129,.32);border-radius:8px;background:#ffffffc7;color:#30353a;font:inherit;font-size:.7rem;font-weight:600}.sidebar-status-action-row[data-v-3a689240]{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;margin-top:0}.sidebar-status-value[data-v-3a689240]{display:inline-flex;min-width:0;min-height:28px;align-items:center;justify-content:flex-start;padding:0 9px;overflow:hidden;color:#30353a;background:#ffffffbd;border:1px solid rgba(116,123,129,.28);border-radius:8px;font:inherit;font-size:.72rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.sidebar-status-button[data-v-3a689240]{min-width:74px;height:28px;padding:0 10px;border:1px solid #30353a;border-radius:8px;background:linear-gradient(145deg,#424950,#23282e);color:#fff;font:inherit;font-size:.68rem;font-weight:700;cursor:pointer;transition:background .2s ease,transform .2s ease}.sidebar-status-button[data-v-3a689240]:disabled{cursor:not-allowed;opacity:.55;background:#8d949a;border-color:#747b81}.sidebar-time-in[data-v-3a689240],.sidebar-status-subtext[data-v-3a689240]{margin-top:5px;color:#69727c;font-size:.62rem;line-height:1.25}.sidebar-status-actions[data-v-3a689240]{display:flex;gap:6px;margin-top:9px}.sidebar-status-actions button[data-v-3a689240]{flex:1;height:30px;border:1px solid #1b4332;border-radius:6px;background:#fff;color:#1b4332;font:inherit;font-size:.72rem;font-weight:600;cursor:pointer}.sidebar-status-actions .sidebar-save-status[data-v-3a689240]{background:#1b4332;color:#fff}.sidebar-status-actions button[data-v-3a689240]:disabled{cursor:not-allowed;opacity:.65}.sidebar-toggle-available[data-v-3a689240]{height:30px;padding:6px 10px;border-radius:6px;background:#1b4332;color:#fff;border:none;cursor:pointer}.sidebar-toggle-unavailable[data-v-3a689240]{height:30px;padding:6px 10px;border-radius:6px;background:transparent;color:#344054;border:1px solid #cfe3d8;cursor:pointer}.status-row[data-v-3a689240]{display:flex;flex-direction:column;gap:5px;margin-top:0}.status-label[data-v-3a689240]{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.sidebar-status-message[data-v-3a689240]{margin:8px 0 0;color:#1b4332;font-size:.68rem;line-height:1.35}.sidebar-status-message.is-error[data-v-3a689240]{color:#b42318}.sidebar-nav[data-v-3a689240]{display:flex;flex-direction:column;gap:4px;width:100%;flex:1}.nav-item[data-v-3a689240]{display:flex;align-items:center;gap:10px;padding:11px 16px;border-radius:10px;font-size:.88rem;font-weight:400;color:#444;text-decoration:none;transition:background .18s,color .18s;cursor:pointer}.nav-item[data-v-3a689240]:hover{background:#f1f2f2;color:#30353a}.nav-item.active[data-v-3a689240]{background:#30353a;color:#fff}.nav-item.active .nav-icon[data-v-3a689240]{color:#fff}.nav-icon[data-v-3a689240]{display:flex;align-items:center;flex-shrink:0}.logout-btn[data-v-3a689240]{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:11px 12px;background:#e63946;color:#fff;border:none;border-radius:10px;font-size:.85rem;font-weight:500;font-family:inherit;cursor:pointer;transition:background .2s;margin-top:16px}.logout-btn[data-v-3a689240]:hover{background:#c1121f}.main[data-v-3a689240]{flex:1;padding:40px 44px 32px;overflow-y:auto;min-width:0;display:flex;flex-direction:column;height:100vh}.main-header[data-v-3a689240]{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:32px}.page-title[data-v-3a689240]{font-size:2.4rem;font-weight:700;color:#30353a;letter-spacing:-.5px;line-height:1.2}.page-sub[data-v-3a689240]{font-size:.95rem;color:#777;margin-top:4px}.notif-wrap[data-v-3a689240]{position:relative;padding-top:6px}.notif-btn[data-v-3a689240]{position:relative;background:none;border:none;cursor:pointer;color:#444;padding:4px;display:flex;align-items:center;transition:color .2s}.notif-btn[data-v-3a689240]:hover{color:#30353a}.notif-dot[data-v-3a689240]{position:absolute;top:4px;right:4px;width:13px;height:13px;background:#e8a020;border-radius:50%;border:1.5px solid #fff}.notif-panel[data-v-3a689240]{position:absolute;top:calc(100% + 12px);right:0;width:620px;max-width:calc(100vw - 32px);background:#fff;border-radius:16px;box-shadow:0 8px 32px #00000024;z-index:5000;overflow:hidden;max-height:min(680px,calc(100vh - 110px))}.notif-panel-header[data-v-3a689240]{padding:22px 22px 0}.notif-panel-title[data-v-3a689240]{font-size:1.4rem;font-weight:700;color:#111}.notif-tabs[data-v-3a689240]{display:flex;align-items:center;gap:8px;padding:14px 22px 0}.notif-tab[data-v-3a689240]{background:none;border:none;font-family:inherit;font-size:.92rem;font-weight:500;color:#666;cursor:pointer;padding:5px 18px;border-radius:20px;transition:background .18s,color .18s}.notif-tab.active[data-v-3a689240]{background:#30353a;color:#fff}.notif-section-label[data-v-3a689240]{font-size:.88rem;font-weight:600;color:#333;padding:14px 22px 6px}.notif-list-wrap[data-v-3a689240]{max-height:340px;overflow-y:auto;padding-bottom:12px}.notif-list[data-v-3a689240]{list-style:none;padding:0;margin:0}.notif-empty[data-v-3a689240]{text-align:center;font-size:.85rem;color:#aaa;padding:24px 20px}.notif-item[data-v-3a689240]{display:flex;align-items:flex-start;gap:14px;padding:12px 22px;cursor:pointer;transition:background .15s}.notif-item[data-v-3a689240]:hover{background:#f4f5f5}.notif-avatar[data-v-3a689240]{width:48px;height:48px;border-radius:50%;object-fit:cover;flex-shrink:0}.notif-text[data-v-3a689240]{flex:1;font-size:.9rem;color:#222;line-height:1.5;padding-top:2px}.notif-unread-dot[data-v-3a689240]{width:12px;height:12px;border-radius:50%;background:#40916c;flex-shrink:0;margin-top:6px}.stat-cards[data-v-3a689240]{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-bottom:32px}.stat-card[data-v-3a689240]{background:linear-gradient(145deg,#20252a,#090c0f);border:1px solid #343b42;border-radius:16px;padding:24px;box-shadow:0 4px 14px #0000002e,inset 0 1px #ffffff0d;display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.stat-left[data-v-3a689240]{display:flex;flex-direction:column;gap:8px}.stat-label[data-v-3a689240]{font-size:.95rem;color:#f0f2f4;font-weight:600;letter-spacing:.02em}.stat-value[data-v-3a689240]{font-size:2.8rem;font-weight:800;color:#fff;line-height:1}.stat-sub[data-v-3a689240]{font-size:.85rem;color:#d2d6da;margin-top:2px}.stat-icon[data-v-3a689240]{display:flex;align-items:center;justify-content:center;width:64px;height:64px;flex-shrink:0;color:#d2d6da}.today-class[data-v-3a689240]{flex:1;display:flex;flex-direction:column}.today-class-header[data-v-3a689240]{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.today-class-title[data-v-3a689240]{font-size:1.32rem;font-weight:700;color:#111827;margin:0}.today-class-sub[data-v-3a689240]{margin-top:4px;font-size:.9rem;color:#6b7280}.legend[data-v-3a689240]{display:flex;align-items:center;gap:18px}.legend-item[data-v-3a689240]{display:flex;align-items:center;gap:7px;font-size:.85rem;color:#6b7280;font-weight:500}.legend-dot[data-v-3a689240]{width:11px;height:11px;border-radius:50%}.legend-dot.lecture[data-v-3a689240]{background:#fbbf24}.legend-dot.laboratory[data-v-3a689240]{background:#6b7280}.legend-dot.main-campus[data-v-3a689240]{background:#f97316}.carousel-shell[data-v-3a689240]{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:20px;box-shadow:0 1px 3px #0000001a}.carousel-topbar[data-v-3a689240]{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:18px}.carousel-nav-btn[data-v-3a689240]{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #e5e7eb;border-radius:8px;background:#f9fafb;color:#374151;cursor:pointer;transition:all .2s ease}.carousel-nav-btn[data-v-3a689240]:hover:not(:disabled){background:#f3f4f6;border-color:#d1d5db}.carousel-nav-btn[data-v-3a689240]:disabled{cursor:not-allowed;opacity:.5}.carousel-day-badge[data-v-3a689240]{padding:10px 18px;border-radius:8px;background:#1f2937;color:#fff;font-size:.95rem;font-weight:700;letter-spacing:.01em;min-width:200px;text-align:center}.carousel-content[data-v-3a689240]{min-height:260px;border-radius:12px;background:#f9fafb;padding:16px}.carousel-state[data-v-3a689240]{display:flex;align-items:center;justify-content:center;min-height:260px;color:#9ca3af;font-weight:500;text-align:center}.classes-grid[data-v-3a689240]{display:grid;gap:12px}.class-item[data-v-3a689240]{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:12px;background:#fff;border:1px solid #e5e7eb;box-shadow:0 1px 2px #0000000d}.class-time-badge[data-v-3a689240]{display:flex;align-items:center;gap:7px;white-space:nowrap;color:#374151;font-size:.9rem;font-weight:700;min-width:140px;padding:8px 12px;border-radius:8px;background:#f3f4f6}.class-details[data-v-3a689240]{flex:1;min-width:0}.class-subject[data-v-3a689240]{color:#111827;font-weight:700;font-size:.95rem;margin:0 0 3px}.class-section[data-v-3a689240]{color:#6b7280;font-size:.85rem;margin:0}.consultation-badge[data-v-3a689240]{display:inline-flex;align-items:center;justify-content:center;padding:6px 12px;border-radius:6px;background:#dbeafe;border:1px solid #93c5fd;color:#1e40af;font-size:.85rem;font-weight:700}.class-meta[data-v-3a689240]{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.badge[data-v-3a689240]{display:inline-block;padding:5px 10px;border-radius:6px;font-size:.78rem;font-weight:700}.badge-parallel[data-v-3a689240]{background:#f3f4f6;color:#374151}.badge-single[data-v-3a689240]{background:#f0fdf4;color:#166534}.badge-room[data-v-3a689240]{font-size:.8rem}.badge-room.room-green[data-v-3a689240]{background:#dbeafe;color:#0c4a6e}.badge-room.room-orange[data-v-3a689240]{background:#fed7aa;color:#9a3412}.badge-room.room-yellow[data-v-3a689240]{background:#fef3c7;color:#92400e}.badge-room.room-beige[data-v-3a689240]{background:#f3e8ff;color:#6b21a8}.carousel-indicators[data-v-3a689240]{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:14px}.indicator-dot[data-v-3a689240]{width:8px;height:8px;border:none;border-radius:999px;background:#d1d5db;cursor:pointer;padding:0;transition:all .2s ease}.indicator-dot[data-v-3a689240]:hover{background:#9ca3af}.indicator-dot.active[data-v-3a689240]{width:24px;background:#1f2937}.modal-overlay[data-v-3a689240]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:1000}.logout-modal-box[data-v-3a689240]{background:#fff;border-radius:20px;padding:36px 40px 32px;width:360px;max-width:94vw;display:flex;flex-direction:column;align-items:center;gap:10px;box-shadow:0 16px 48px #0000002e;text-align:center}.logout-modal-icon[data-v-3a689240]{width:68px;height:68px;border-radius:50%;background:#ffeaea;display:flex;align-items:center;justify-content:center;margin-bottom:4px}.logout-modal-title[data-v-3a689240]{font-size:1.45rem;font-weight:700;color:#111;margin:0}.logout-modal-sub[data-v-3a689240]{font-size:.9rem;color:#777;margin:0 0 8px}.logout-modal-actions[data-v-3a689240]{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:6px;width:100%}.logout-cancel-btn[data-v-3a689240]{background:none;border:none;font-family:inherit;font-size:1rem;font-weight:600;color:#e63946;cursor:pointer;padding:8px 18px;border-radius:10px;transition:background .15s}.logout-cancel-btn[data-v-3a689240]:hover{background:#ffeaea}.logout-confirm-btn[data-v-3a689240]{background:#30353a;color:#fff;border:none;font-family:inherit;font-size:1rem;font-weight:600;padding:10px 32px;border-radius:10px;cursor:pointer;transition:background .18s}.logout-confirm-btn[data-v-3a689240]:hover{background:#4b5259}@media (max-width: 900px){.stat-cards[data-v-3a689240]{grid-template-columns:1fr}}@media (max-width: 600px){.main[data-v-3a689240]{padding:20px 16px 32px}.sidebar[data-v-3a689240]{width:200px;min-width:200px}.class-table[data-v-3a689240]{font-size:.78rem}}.layout[data-v-1c3b1994]{display:flex;height:100vh;overflow:hidden;background:#f5f6f8;font-family:Poppins,sans-serif}.sidebar[data-v-1c3b1994]{width:280px;min-width:280px;background:#fff;border-right:1px solid #ececec;display:flex;flex-direction:column;align-items:center;padding:28px 18px 24px;position:sticky;top:0;height:100vh;overflow-y:auto}.sidebar-profile[data-v-1c3b1994]{display:flex;flex-direction:column;align-items:center;gap:6px;margin-bottom:28px;text-align:center}.avatar-wrap[data-v-1c3b1994]{width:96px;height:96px;border-radius:50%;overflow:hidden;margin-bottom:10px;border:3px solid #c4c9cd}.avatar[data-v-1c3b1994]{width:100%;height:100%;object-fit:cover}.brand[data-v-1c3b1994]{font-size:1.05rem;font-weight:600;color:#4b5563}.role[data-v-1c3b1994]{font-size:.88rem;color:#444;font-weight:500}.email[data-v-1c3b1994]{font-size:.82rem;color:#888;word-break:break-all}.sidebar-nav[data-v-1c3b1994]{display:flex;flex-direction:column;gap:4px;width:100%;flex:1}.nav-item[data-v-1c3b1994]{display:flex;align-items:center;gap:10px;padding:11px 16px;border-radius:10px;font-size:.88rem;font-weight:400;color:#444;text-decoration:none;transition:background .18s,color .18s;cursor:pointer}.nav-item[data-v-1c3b1994]:hover{background:#f8fafc;color:#4b5563}.nav-item.active[data-v-1c3b1994]{background:#4b5563;color:#fff}.nav-item.active .nav-icon[data-v-1c3b1994]{color:#fff}.nav-icon[data-v-1c3b1994]{display:flex;align-items:center;flex-shrink:0}.logout-btn[data-v-1c3b1994]{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:11px 12px;background:#e63946;color:#fff;border:none;border-radius:10px;font-size:.85rem;font-weight:500;font-family:inherit;cursor:pointer;transition:background .2s;margin-top:16px}.logout-btn[data-v-1c3b1994]:hover{background:#c1121f}.main[data-v-1c3b1994]{flex:1;padding:40px 44px 32px;overflow-y:auto;min-width:0;display:flex;flex-direction:column;height:100vh}.main-header[data-v-1c3b1994]{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:28px}.page-title[data-v-1c3b1994]{font-size:2rem;font-weight:600;color:#4b5563;letter-spacing:-.5px;line-height:1.2}.page-sub[data-v-1c3b1994]{font-size:.95rem;color:#777;margin-top:4px}.modal-overlay[data-v-1c3b1994]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:1000}.logout-modal-box[data-v-1c3b1994]{background:#fff;border-radius:20px;padding:36px 40px 32px;width:360px;max-width:94vw;display:flex;flex-direction:column;align-items:center;gap:10px;box-shadow:0 16px 48px #0000002e;text-align:center}.logout-modal-icon[data-v-1c3b1994]{width:68px;height:68px;border-radius:50%;background:#ffeaea;display:flex;align-items:center;justify-content:center;margin-bottom:4px}.logout-modal-title[data-v-1c3b1994]{font-size:1.45rem;font-weight:700;color:#111;margin:0}.logout-modal-sub[data-v-1c3b1994]{font-size:.9rem;color:#777;margin:0 0 8px}.logout-modal-actions[data-v-1c3b1994]{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:6px;width:100%}.logout-cancel-btn[data-v-1c3b1994]{background:none;border:none;font-family:inherit;font-size:1rem;font-weight:600;color:#e63946;cursor:pointer;padding:8px 18px;border-radius:10px;transition:background .15s}.logout-cancel-btn[data-v-1c3b1994]:hover{background:#ffeaea}.logout-confirm-btn[data-v-1c3b1994]{background:#4b5563;color:#fff;border:none;font-family:inherit;font-size:1rem;font-weight:600;padding:10px 32px;border-radius:10px;cursor:pointer;transition:background .18s}.logout-confirm-btn[data-v-1c3b1994]:hover{background:#6b7280}.events-topbar[data-v-1c3b1994]{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;flex-wrap:wrap;gap:12px}.events-tabs[data-v-1c3b1994]{display:flex;gap:6px}.ev-tab[data-v-1c3b1994]{background:none;border:none;font-family:inherit;font-size:.88rem;font-weight:500;color:#888;cursor:pointer;padding:8px 20px;border-radius:10px;transition:background .18s,color .18s;display:flex;align-items:center;gap:6px}.ev-tab[data-v-1c3b1994]:hover{background:#f8fafc;color:#4b5563}.ev-tab.active[data-v-1c3b1994]{background:#4b5563;color:#fff}.ev-tab-count[data-v-1c3b1994]{background:#e63946;color:#fff;font-size:.72rem;font-weight:700;border-radius:20px;padding:1px 7px;line-height:1.5}.add-event-btn[data-v-1c3b1994]{display:flex;align-items:center;gap:7px;background:#4b5563;color:#fff;border:none;font-family:inherit;font-size:.88rem;font-weight:500;padding:10px 20px;border-radius:10px;cursor:pointer;transition:background .18s}.add-event-btn[data-v-1c3b1994]:hover{background:#6b7280}.events-grid[data-v-1c3b1994]{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}@media (max-width: 1100px){.events-grid[data-v-1c3b1994]{grid-template-columns:repeat(2,1fr)}}@media (max-width: 700px){.events-grid[data-v-1c3b1994]{grid-template-columns:1fr}}.event-card[data-v-1c3b1994]{background:#fff;border-radius:16px;padding:22px 24px 20px;box-shadow:0 2px 10px #00000012;display:flex;flex-direction:column;gap:10px;transition:box-shadow .2s}.event-card[data-v-1c3b1994]:hover{box-shadow:0 4px 18px #0000001c}.event-card--archived[data-v-1c3b1994]{opacity:.75}.event-card--archived[data-v-1c3b1994]:hover{opacity:1}.event-card-head[data-v-1c3b1994]{display:flex;align-items:center;justify-content:space-between}.event-badge[data-v-1c3b1994]{font-size:.73rem;font-weight:600;padding:3px 11px;border-radius:20px;letter-spacing:.3px;text-transform:uppercase}.event-badge--active[data-v-1c3b1994]{background:#d8dcdf;color:#4f575f}.event-badge--archived[data-v-1c3b1994]{background:#f0f0f0;color:#888}.event-card-actions[data-v-1c3b1994]{display:flex;gap:6px}.ec-btn[data-v-1c3b1994]{display:flex;align-items:center;gap:5px;font-family:inherit;font-size:.78rem;font-weight:500;padding:5px 11px;border-radius:8px;border:none;cursor:pointer;transition:background .15s,color .15s}.ec-btn--edit[data-v-1c3b1994]{background:#eef4fe;color:#2563eb}.ec-btn--edit[data-v-1c3b1994]:hover{background:#dceafd}.ec-btn--archive[data-v-1c3b1994]{background:#f5f5f5;color:#555}.ec-btn--archive[data-v-1c3b1994]:hover{background:#e8e8e8}.ec-btn--restore[data-v-1c3b1994]{background:#d8dcdf;color:#4f575f}.ec-btn--restore[data-v-1c3b1994]:hover{background:#c0ebd5}.ec-btn--delete[data-v-1c3b1994]{background:#ffeaea;color:#e63946}.ec-btn--delete[data-v-1c3b1994]:hover{background:#fdd}.event-card-title[data-v-1c3b1994]{font-size:1.05rem;font-weight:700;color:#111;line-height:1.3}.event-card-desc[data-v-1c3b1994]{font-size:.84rem;color:#777;line-height:1.5}.event-card-meta[data-v-1c3b1994]{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}.event-meta-item[data-v-1c3b1994]{display:flex;align-items:center;gap:5px;font-size:.8rem;color:#555}.events-empty[data-v-1c3b1994]{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:60px 20px;color:#bbb;font-size:.88rem}.event-card-img-wrap[data-v-1c3b1994]{width:100%;height:160px;border-radius:10px;overflow:hidden;margin-bottom:2px;flex-shrink:0}.event-card-img[data-v-1c3b1994]{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}.event-card:hover .event-card-img[data-v-1c3b1994]{transform:scale(1.03)}.event-card--clickable[data-v-1c3b1994]{cursor:pointer}.event-card--clickable[data-v-1c3b1994]:hover{box-shadow:0 6px 24px #30353a21;transform:translateY(-2px);transition:box-shadow .2s,transform .2s}.ev-view-box[data-v-1c3b1994]{background:#fff;border-radius:22px;width:540px;max-width:95vw;max-height:90vh;overflow-y:auto;box-shadow:0 24px 80px #00000038;display:flex;flex-direction:column;animation:evModalIn-1c3b1994 .22s cubic-bezier(.34,1.3,.64,1)}@keyframes evModalIn-1c3b1994{0%{opacity:0;transform:scale(.94) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}.ev-view-hero[data-v-1c3b1994]{position:relative;height:230px;background:linear-gradient(135deg,#4b5563,#64748b);background-size:cover;background-position:center;border-radius:22px 22px 0 0;flex-shrink:0;overflow:hidden}.ev-view-hero-overlay[data-v-1c3b1994]{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,#000000b8,#0000002e,#0000000a)}.ev-view-hero-content[data-v-1c3b1994]{position:absolute;bottom:22px;left:26px;right:58px;display:flex;flex-direction:column;gap:10px}.ev-view-badge[data-v-1c3b1994]{display:inline-flex;align-items:center;gap:5px;font-size:.68rem;font-weight:700;letter-spacing:.8px;text-transform:uppercase;padding:4px 12px;border-radius:20px;width:fit-content;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.ev-view-badge--active[data-v-1c3b1994]{background:#535b64e0;color:#fff}.ev-view-badge--archived[data-v-1c3b1994]{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.35)}.ev-view-title[data-v-1c3b1994]{font-size:1.6rem;font-weight:800;color:#fff;line-height:1.2;text-shadow:0 2px 8px rgba(0,0,0,.35);margin:0;letter-spacing:-.3px}.ev-view-close[data-v-1c3b1994]{position:absolute;top:14px;right:14px;width:34px;height:34px;border-radius:10px;background:#0000004d;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;border:1px solid rgba(255,255,255,.18);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s;z-index:2}.ev-view-close[data-v-1c3b1994]:hover{background:#e63946bf}.ev-view-body[data-v-1c3b1994]{padding:26px 28px 28px;display:flex;flex-direction:column;gap:20px}.ev-view-info-row[data-v-1c3b1994]{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.ev-view-info-item[data-v-1c3b1994]{display:flex;flex-direction:column;align-items:flex-start;gap:10px;background:#f7f8fa;border:1.5px solid #f0f0f0;border-radius:14px;padding:14px 16px;transition:border-color .18s,box-shadow .18s}.ev-view-info-item[data-v-1c3b1994]:hover{border-color:#c4c9cd;box-shadow:0 2px 10px #30353a12}.ev-view-info-icon[data-v-1c3b1994]{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ev-view-info-icon--date[data-v-1c3b1994]{background:#e0f2fe;color:#0369a1}.ev-view-info-icon--time[data-v-1c3b1994]{background:#fef3c7;color:#b45309}.ev-view-info-icon--loc[data-v-1c3b1994]{background:#fce7f3;color:#be185d}.ev-view-info-text[data-v-1c3b1994]{display:flex;flex-direction:column;gap:2px;min-width:0}.ev-view-info-label[data-v-1c3b1994]{font-size:.68rem;font-weight:700;color:#aaa;text-transform:uppercase;letter-spacing:.6px}.ev-view-info-val[data-v-1c3b1994]{font-size:.9rem;font-weight:700;color:#1a1a1a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ev-view-desc-wrap[data-v-1c3b1994]{background:#f7f8fa;border:1.5px solid #f0f0f0;border-radius:14px;padding:16px 20px}.ev-view-desc-label[data-v-1c3b1994]{display:flex;align-items:center;gap:6px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#888;margin-bottom:10px}.ev-view-desc[data-v-1c3b1994]{font-size:.92rem;color:#444;line-height:1.7;margin:0}.ev-view-actions[data-v-1c3b1994]{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding-top:6px;border-top:1.5px solid #f0f0f0;margin-top:2px}.ev-view-close-btn[data-v-1c3b1994]{background:none;border:1.5px solid #e0e0e0;font-family:inherit;font-size:.88rem;font-weight:600;color:#666;cursor:pointer;padding:10px 22px;border-radius:10px;transition:background .15s,border-color .15s,color .15s}.ev-view-close-btn[data-v-1c3b1994]:hover{background:#f5f5f5;border-color:#bbb;color:#333}.ev-view-edit-btn[data-v-1c3b1994]{display:flex;align-items:center;gap:7px;background:linear-gradient(135deg,#4b5563,#6b7280);color:#fff;border:none;font-family:inherit;font-size:.88rem;font-weight:600;padding:10px 24px;border-radius:10px;cursor:pointer;box-shadow:0 4px 16px #30353a40;transition:opacity .18s,box-shadow .18s,transform .15s}.ev-view-edit-btn[data-v-1c3b1994]:hover{opacity:.92;box-shadow:0 6px 20px #30353a52;transform:translateY(-1px)}.event-modal-box[data-v-1c3b1994]{background:#fff;border-radius:20px;width:560px;max-width:95vw;max-height:92vh;overflow-y:auto;box-shadow:0 20px 60px #0000002e;position:relative}.ev-modal-banner[data-v-1c3b1994]{background:linear-gradient(135deg,#4b5563,#6b7280);padding:26px 28px 22px;display:flex;align-items:center;gap:16px;border-radius:20px 20px 0 0;position:relative}.ev-modal-banner-icon[data-v-1c3b1994]{width:52px;height:52px;border-radius:14px;background:#ffffff26;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ev-modal-banner-text[data-v-1c3b1994]{flex:1}.ev-modal-banner-title[data-v-1c3b1994]{font-size:1.25rem;font-weight:700;color:#fff;margin:0 0 4px;line-height:1.2}.ev-modal-banner-sub[data-v-1c3b1994]{font-size:.82rem;color:#ffffffb8;margin:0}.ev-modal-close[data-v-1c3b1994]{position:absolute;top:16px;right:18px;width:30px;height:30px;border-radius:8px;background:#ffffff26;color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}.ev-modal-close[data-v-1c3b1994]:hover{background:#ffffff47}.event-form[data-v-1c3b1994]{display:flex;flex-direction:column;gap:18px;padding:26px 28px 28px}.form-group[data-v-1c3b1994]{display:flex;flex-direction:column;gap:7px}.form-row[data-v-1c3b1994]{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-optional[data-v-1c3b1994]{color:#999;font-weight:400;text-transform:none}.form-label[data-v-1c3b1994]{font-size:.78rem;font-weight:700;color:#666;letter-spacing:.4px;text-transform:uppercase}.form-required[data-v-1c3b1994]{color:#e63946}.form-input[data-v-1c3b1994]{font-family:inherit;font-size:.88rem;color:#111;background:#f7f8fa;border:1.5px solid #ececec;border-radius:10px;padding:11px 14px;outline:none;width:100%;box-sizing:border-box;transition:border-color .18s,background .18s,box-shadow .18s}.form-input[data-v-1c3b1994]::placeholder{color:#c0c4cc}.form-input[data-v-1c3b1994]:focus{border-color:#6b7280;background:#fff;box-shadow:0 0 0 3px #535b6417}.form-textarea[data-v-1c3b1994]{resize:vertical;min-height:84px;line-height:1.6}.fi-wrap[data-v-1c3b1994]{position:relative;display:flex;align-items:center}.fi-icon[data-v-1c3b1994]{position:absolute;left:13px;color:#6b7280;pointer-events:none;flex-shrink:0}.fi-input[data-v-1c3b1994]{padding-left:38px!important}.time-picker-wrap[data-v-1c3b1994]{position:relative}.time-display[data-v-1c3b1994]{display:flex;align-items:center;gap:9px;background:#f7f8fa;border:1.5px solid #ececec;border-radius:10px;padding:11px 13px;cursor:pointer;transition:border-color .18s,background .18s,box-shadow .18s;-webkit-user-select:none;user-select:none;color:#6b7280}.time-display[data-v-1c3b1994]:hover,.time-display--open[data-v-1c3b1994]{border-color:#6b7280;background:#fff;box-shadow:0 0 0 3px #535b6417}.td-val[data-v-1c3b1994]{flex:1;font-size:.88rem;font-weight:600;color:#111}.td-placeholder[data-v-1c3b1994]{flex:1;font-size:.88rem;color:#c0c4cc}.td-chevron[data-v-1c3b1994]{color:#aaa;transition:transform .2s;flex-shrink:0}.td-chevron--open[data-v-1c3b1994]{transform:rotate(180deg);color:#6b7280}.time-picker-panel[data-v-1c3b1994]{position:absolute;top:calc(100% + 8px);left:0;right:0;background:#fff;border-radius:14px;box-shadow:0 8px 32px #00000024;border:1px solid #ececec;z-index:200;overflow:hidden;padding:16px 14px 14px}.tp-cols[data-v-1c3b1994]{display:flex;align-items:flex-start;gap:4px;margin-bottom:12px}.tp-col[data-v-1c3b1994]{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px}.tp-col--period[data-v-1c3b1994]{flex:0 0 58px}.tp-col-label[data-v-1c3b1994]{font-size:.68rem;font-weight:700;color:#aaa;letter-spacing:.8px;text-transform:uppercase;margin-bottom:2px}.tp-col-scroll[data-v-1c3b1994]{width:100%;max-height:152px;overflow-y:auto;display:flex;flex-direction:column;gap:3px;scrollbar-width:thin;scrollbar-color:#c4c9cd transparent}.tp-col-scroll[data-v-1c3b1994]::-webkit-scrollbar{width:4px}.tp-col-scroll[data-v-1c3b1994]::-webkit-scrollbar-thumb{background:#c4c9cd;border-radius:4px}.tp-cell[data-v-1c3b1994]{padding:7px 6px;border-radius:8px;font-size:.88rem;font-weight:500;color:#444;text-align:center;cursor:pointer;transition:background .12s,color .12s}.tp-cell[data-v-1c3b1994]:hover{background:#f8fafc;color:#4b5563}.tp-cell--active[data-v-1c3b1994]{background:#4b5563;color:#fff;font-weight:700}.tp-sep[data-v-1c3b1994]{font-size:1.15rem;font-weight:700;color:#ccc;padding-top:34px;flex-shrink:0}.tp-ampm[data-v-1c3b1994]{display:flex;flex-direction:column;gap:4px;width:100%}.tp-ampm-cell[data-v-1c3b1994]{padding:8px 6px;border-radius:8px;font-size:.82rem;font-weight:600;text-align:center;cursor:pointer;background:#f5f5f5;color:#666;transition:background .12s,color .12s}.tp-ampm-cell[data-v-1c3b1994]:hover{background:#f8fafc;color:#4b5563}.tp-ampm-cell--active[data-v-1c3b1994]{background:#4b5563;color:#fff}.tp-preview[data-v-1c3b1994]{text-align:center;font-size:1.4rem;font-weight:700;color:#4b5563;letter-spacing:2px;margin-bottom:12px;background:#f8fafc;border-radius:10px;padding:10px 0}.tp-confirm-btn[data-v-1c3b1994]{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;padding:10px 0;background:#4b5563;color:#fff;border:none;border-radius:10px;font-family:inherit;font-size:.88rem;font-weight:600;cursor:pointer;transition:background .18s}.tp-confirm-btn[data-v-1c3b1994]:hover{background:#6b7280}.img-file-input[data-v-1c3b1994]{display:none}.img-upload-icon-wrap[data-v-1c3b1994]{width:50px;height:50px;background:#f3f4f6;border-radius:14px;display:flex;align-items:center;justify-content:center;margin-bottom:2px}.img-upload-area[data-v-1c3b1994]{border:2px dashed #d9dde5;border-radius:12px;padding:28px 16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;cursor:pointer;background:#f7f8fa;position:relative;overflow:hidden;min-height:112px;transition:border-color .18s,background .18s}.img-upload-area[data-v-1c3b1994]:hover{border-color:#6b7280;background:#f8fafc}.img-upload-area--has[data-v-1c3b1994]{padding:0;border-style:solid;border-color:#c4c9cd;min-height:168px}.img-upload-hint[data-v-1c3b1994]{font-size:.85rem;font-weight:600;color:#444}.img-upload-sub[data-v-1c3b1994]{font-size:.75rem;color:#aaa}.img-upload-preview[data-v-1c3b1994]{width:100%;height:168px;object-fit:cover;display:block;border-radius:10px}.img-remove-btn[data-v-1c3b1994]{position:absolute;top:8px;right:8px;width:28px;height:28px;border-radius:50%;background:#00000080;color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s;z-index:2}.img-remove-btn[data-v-1c3b1994]:hover{background:#e63946e0}.form-actions[data-v-1c3b1994]{display:flex;justify-content:flex-end;align-items:center;gap:12px;padding-top:8px;border-top:1px solid #f0f0f0;margin-top:2px}.ev-cancel-btn[data-v-1c3b1994]{background:none;border:1.5px solid #e0e0e0;font-family:inherit;font-size:.88rem;font-weight:600;color:#666;cursor:pointer;padding:10px 22px;border-radius:10px;transition:background .15s,border-color .15s}.ev-cancel-btn[data-v-1c3b1994]:hover{background:#f5f5f5;border-color:#ccc}.ev-submit-btn[data-v-1c3b1994]{display:flex;align-items:center;gap:7px;background:linear-gradient(135deg,#4b5563,#6b7280);color:#fff;border:none;font-family:inherit;font-size:.88rem;font-weight:600;padding:10px 26px;border-radius:10px;cursor:pointer;transition:opacity .18s,box-shadow .18s;box-shadow:0 4px 14px #30353a40}.ev-submit-btn[data-v-1c3b1994]:hover{opacity:.9;box-shadow:0 6px 18px #30353a52}@media (max-width: 900px){.main[data-v-1c3b1994]{padding:20px 16px 32px}.sidebar[data-v-1c3b1994]{width:200px;min-width:200px}}[data-v-49c5dbb7]:root{--green-900: #4b5563;--green-700: #6b7280;--green-500: #9ca3af;--green-200: #c4c9cd;--green-50: #f8fafc;--red: #e63946;--red-dark: #c1121f;--bg: #f0f2f5;--surface: #ffffff;--border: #e4e4e7;--text-head: #0f172a;--text-body: #475569;--text-muted:#94a3b8}.layout[data-v-49c5dbb7]{display:flex;height:100vh;overflow:hidden;background:#f5f6f8;font-family:Poppins,sans-serif}.layout button[data-v-49c5dbb7],.layout input[data-v-49c5dbb7],.layout select[data-v-49c5dbb7],.layout textarea[data-v-49c5dbb7]{font-family:inherit}.sidebar[data-v-49c5dbb7]{width:280px;min-width:280px;background:#fff;border-right:1px solid #ececec;display:flex;flex-direction:column;align-items:center;padding:28px 18px 24px;position:sticky;top:0;height:100vh;overflow-y:auto}.sidebar-profile[data-v-49c5dbb7]{display:flex;flex-direction:column;align-items:center;gap:6px;margin-bottom:28px;text-align:center}.avatar-wrap[data-v-49c5dbb7]{width:96px;height:96px;border-radius:50%;overflow:hidden;margin-bottom:10px;border:3px solid #c4c9cd;cursor:pointer;transition:opacity .18s}.avatar-wrap[data-v-49c5dbb7]:hover{opacity:.85}.avatar[data-v-49c5dbb7]{width:100%;height:100%;object-fit:cover}.brand[data-v-49c5dbb7]{font-size:1.05rem;font-weight:600;color:#4b5563}.role[data-v-49c5dbb7]{font-size:.88rem;color:#444;font-weight:500}.email[data-v-49c5dbb7]{font-size:.82rem;color:#888;word-break:break-all}.sidebar-nav[data-v-49c5dbb7]{display:flex;flex-direction:column;gap:4px;width:100%;flex:1}.nav-item[data-v-49c5dbb7]{display:flex;align-items:center;gap:10px;padding:11px 16px;border-radius:10px;font-size:.88rem;font-weight:400;color:#444;text-decoration:none;transition:background .18s,color .18s;cursor:pointer}.nav-item[data-v-49c5dbb7]:hover{background:#f8fafc;color:#4b5563}.nav-item.active[data-v-49c5dbb7]{background:#4b5563;color:#fff}.nav-item.active .nav-icon[data-v-49c5dbb7]{color:#fff}.nav-icon[data-v-49c5dbb7]{display:flex;align-items:center;flex-shrink:0}.logout-btn[data-v-49c5dbb7]{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:11px 12px;background:#e63946;color:#fff;border:none;border-radius:10px;font-size:.85rem;font-weight:500;font-family:inherit;cursor:pointer;transition:background .2s;margin-top:16px}.logout-btn[data-v-49c5dbb7]:hover{background:#c1121f}.main[data-v-49c5dbb7]{flex:1;padding:40px 44px;overflow-y:auto;min-width:0;height:100vh;box-sizing:border-box}.main-header[data-v-49c5dbb7]{margin-bottom:32px}.page-title[data-v-49c5dbb7]{font-size:1.75rem;font-weight:700;color:#111827;letter-spacing:-.3px;margin:0 0 4px}.page-sub[data-v-49c5dbb7]{font-size:.85rem;color:#6b7280;margin:0}.profile-card[data-v-49c5dbb7]{background:#fff;border:1px solid #e5e7eb;border-radius:16px;overflow:hidden;box-shadow:0 1px 3px #0000000f,0 1px 2px #0000000a;width:100%;box-sizing:border-box;position:relative}.card-banner[data-v-49c5dbb7]{height:148px;background:linear-gradient(135deg,#4b5563,#6b7280);display:flex;align-items:center;justify-content:flex-end;padding:0 24px}.edit-btn[data-v-49c5dbb7]{display:inline-flex;align-items:center;gap:6px;padding:8px 15px;background:#ffffff26;color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:8px;font-size:.83rem;font-weight:500;cursor:pointer;font-family:inherit;transition:background .15s;flex-shrink:0;align-self:center}.edit-btn[data-v-49c5dbb7]:hover{background:#ffffff40}.card-body[data-v-49c5dbb7]{padding:16px 28px 30px}.card-top[data-v-49c5dbb7]{display:flex;align-items:flex-end;gap:20px;margin-bottom:28px}.hero-sub[data-v-49c5dbb7]{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.role-chip[data-v-49c5dbb7]{display:inline-flex;align-items:center;padding:4px 12px;background:#f3f4f6;color:#4b5563;border:1px solid #c4c9cd;border-radius:20px;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.hero-id[data-v-49c5dbb7],.hero-email[data-v-49c5dbb7]{display:inline-flex;align-items:center;gap:5px;font-size:.82rem;color:#374151;font-weight:500}.profile-avatar-wrap[data-v-49c5dbb7]{width:120px;height:120px;border-radius:50%;overflow:hidden;border:4px solid #fff;box-shadow:0 4px 14px #00000038;flex-shrink:0;margin-top:-88px;position:relative;z-index:2}.profile-avatar[data-v-49c5dbb7]{width:100%;height:100%;object-fit:cover;display:block}.hero-name[data-v-49c5dbb7]{font-size:1.32rem;font-weight:700;color:#111827;line-height:1.2;margin-bottom:6px}.profile-info[data-v-49c5dbb7]{padding-bottom:4px}.info-grid[data-v-49c5dbb7]{display:grid;grid-template-columns:repeat(2,1fr);border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.info-item[data-v-49c5dbb7]{padding:16px 20px;border-right:1px solid #e5e7eb;border-bottom:1px solid #e5e7eb}.info-item[data-v-49c5dbb7]:nth-child(2n){border-right:none}.info-item[data-v-49c5dbb7]:nth-last-child(-n+2){border-bottom:none}.info-label[data-v-49c5dbb7]{font-size:.69rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#9ca3af;margin-bottom:4px}.info-value[data-v-49c5dbb7]{font-size:.92rem;font-weight:500;color:#111827}.modal-overlay[data-v-49c5dbb7]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:1000}.edit-modal[data-v-49c5dbb7]{width:500px;max-width:96vw;background:#fff;border-radius:18px;box-shadow:0 24px 64px #0000002e;overflow:hidden}.edit-modal-header[data-v-49c5dbb7]{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 18px;background:linear-gradient(135deg,#4b5563,#6b7280)}.edit-modal-title[data-v-49c5dbb7]{font-size:1.05rem;font-weight:700;color:#fff;margin:0 0 2px}.edit-modal-sub[data-v-49c5dbb7]{font-size:.76rem;color:#ffffffa6;margin:0}.edit-modal-close[data-v-49c5dbb7]{background:#ffffff26;border:1px solid rgba(255,255,255,.25);border-radius:8px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;flex-shrink:0;transition:background .15s}.edit-modal-close[data-v-49c5dbb7]:hover{background:#ffffff47}.edit-modal-body[data-v-49c5dbb7]{padding:22px 24px 8px;display:flex;flex-direction:column;gap:16px}.edit-row[data-v-49c5dbb7]{display:flex;gap:14px}.edit-row.two-col .edit-field[data-v-49c5dbb7]{flex:1}.edit-field[data-v-49c5dbb7]{display:flex;flex-direction:column;gap:5px;flex:1}.edit-label[data-v-49c5dbb7]{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#4b5563}.edit-input[data-v-49c5dbb7]{padding:10px 13px;border:1.5px solid #e4e4e7;border-radius:9px;font-size:.875rem;color:#0f172a;background:#f9fafb;outline:none;font-family:inherit;transition:border-color .15s,box-shadow .15s,background .15s;box-sizing:border-box;width:100%}.edit-input[data-v-49c5dbb7]:focus{border-color:#4b5563;background:#fff;box-shadow:0 0 0 3px #30353a1a}.select-wrap[data-v-49c5dbb7]{position:relative}.edit-select[data-v-49c5dbb7]{width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:10px 36px 10px 13px;border:1.5px solid #e4e4e7;border-radius:9px;font-size:.875rem;color:#0f172a;background:#f9fafb;outline:none;cursor:pointer;font-family:inherit;transition:border-color .15s,box-shadow .15s,background .15s}.edit-select[data-v-49c5dbb7]:focus{border-color:#4b5563;background:#fff;box-shadow:0 0 0 3px #30353a1a}.photo-help[data-v-49c5dbb7]{color:#64748b;font-size:.74rem;margin-top:2px}.photo-preview-wrap[data-v-49c5dbb7]{width:100%;height:110px;border:1.5px solid #e4e4e7;border-radius:10px;background:#f9fafb;display:flex;align-items:center;justify-content:center;overflow:hidden}.photo-preview[data-v-49c5dbb7]{width:100%;height:100%;object-fit:cover}.select-arrow[data-v-49c5dbb7]{position:absolute;right:11px;top:50%;transform:translateY(-50%);pointer-events:none;color:#94a3b8}.edit-modal-actions[data-v-49c5dbb7]{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:18px 24px 22px;border-top:1px solid #f0f0f0;margin-top:6px}.edit-cancel-btn[data-v-49c5dbb7]{padding:9px 22px;background:none;border:1.5px solid #e4e4e7;border-radius:9px;font-size:.85rem;font-weight:500;color:#475569;cursor:pointer;font-family:inherit;transition:background .15s,border-color .15s}.edit-cancel-btn[data-v-49c5dbb7]:hover{background:#f5f5f5;border-color:silver}.edit-save-btn[data-v-49c5dbb7]{padding:9px 24px;background:linear-gradient(135deg,#4b5563,#6b7280);color:#fff;border:none;border-radius:9px;font-size:.85rem;font-weight:600;cursor:pointer;font-family:inherit;transition:opacity .15s,box-shadow .15s;box-shadow:0 2px 8px #30353a40}.edit-save-btn[data-v-49c5dbb7]:hover{opacity:.88;box-shadow:0 4px 14px #30353a52}.logout-modal-box[data-v-49c5dbb7]{background:#fff;border-radius:16px;padding:32px 36px 28px;width:340px;max-width:94vw;display:flex;flex-direction:column;align-items:center;gap:6px;box-shadow:0 20px 60px #00000026;text-align:center}.logout-modal-icon[data-v-49c5dbb7]{width:60px;height:60px;border-radius:50%;background:#fff1f1;border:2px solid #ffd6d8;display:flex;align-items:center;justify-content:center;margin-bottom:8px}.logout-modal-title[data-v-49c5dbb7]{font-size:1.1rem;font-weight:700;color:#0f172a;margin:0 0 2px}.logout-modal-sub[data-v-49c5dbb7]{font-size:.82rem;color:#94a3b8;margin:0 0 8px}.logout-modal-actions[data-v-49c5dbb7]{display:flex;gap:10px;margin-top:4px;width:100%}.logout-cancel-btn[data-v-49c5dbb7]{flex:1;background:none;border:1.5px solid #e4e4e7;font-size:.875rem;font-weight:500;color:#475569;cursor:pointer;padding:10px;border-radius:8px;font-family:inherit;transition:background .15s,border-color .15s}.logout-cancel-btn[data-v-49c5dbb7]:hover{background:#f5f5f5;border-color:silver}.logout-confirm-btn[data-v-49c5dbb7]{flex:1;background:#e63946;color:#fff;border:none;font-size:.875rem;font-weight:600;padding:10px;border-radius:8px;font-family:inherit;cursor:pointer;transition:background .15s}.logout-confirm-btn[data-v-49c5dbb7]:hover{background:#c1121f}@media (max-width: 900px){.main[data-v-49c5dbb7]{padding:24px 20px}.sidebar[data-v-49c5dbb7]{width:220px;min-width:220px}.card-hero[data-v-49c5dbb7]{gap:14px}.info-grid[data-v-49c5dbb7]{grid-template-columns:1fr}.info-item[data-v-49c5dbb7]:nth-child(2n){border-right:none}.info-item[data-v-49c5dbb7]:nth-last-child(-n+2){border-bottom:1px solid #e5e7eb}.info-item[data-v-49c5dbb7]:last-child{border-bottom:none}}.layout[data-v-8f8e5708]{display:flex;height:100vh;overflow:hidden;background:#f5f6f8;font-family:Poppins,sans-serif}.sidebar[data-v-8f8e5708]{width:280px;min-width:280px;background:#fff;border-right:1px solid #ececec;display:flex;flex-direction:column;align-items:center;padding:28px 18px 24px;position:sticky;top:0;height:100vh;overflow-y:auto}.sidebar-profile[data-v-8f8e5708]{display:flex;flex-direction:column;align-items:center;gap:6px;margin-bottom:28px;text-align:center}.avatar-wrap[data-v-8f8e5708]{width:96px;height:96px;border-radius:50%;overflow:hidden;margin-bottom:10px;border:3px solid #c4c9cd}.avatar[data-v-8f8e5708]{width:100%;height:100%;object-fit:cover}.brand[data-v-8f8e5708]{font-size:1.05rem;font-weight:600;color:#4b5563}.role[data-v-8f8e5708]{font-size:.88rem;color:#444;font-weight:500}.email[data-v-8f8e5708]{font-size:.82rem;color:#888;word-break:break-all}.sidebar-nav[data-v-8f8e5708]{display:flex;flex-direction:column;gap:4px;width:100%;flex:1}.nav-item[data-v-8f8e5708]{display:flex;align-items:center;gap:10px;padding:11px 16px;border-radius:10px;font-size:.88rem;font-weight:400;color:#444;text-decoration:none;transition:background .18s,color .18s;cursor:pointer}.nav-item[data-v-8f8e5708]:hover{background:#f8fafc;color:#4b5563}.nav-item.active[data-v-8f8e5708]{background:#4b5563;color:#fff}.nav-item.active .nav-icon[data-v-8f8e5708]{color:#fff}.nav-icon[data-v-8f8e5708]{display:flex;align-items:center;flex-shrink:0}.logout-btn[data-v-8f8e5708]{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:11px 12px;background:#e63946;color:#fff;border:none;border-radius:10px;font-size:.85rem;font-weight:500;font-family:inherit;cursor:pointer;transition:background .2s;margin-top:16px}.logout-btn[data-v-8f8e5708]:hover{background:#c1121f}.main[data-v-8f8e5708]{flex:1;padding:40px 44px 32px;overflow:hidden;min-width:0;display:flex;flex-direction:column;height:100vh;box-sizing:border-box}.main-header[data-v-8f8e5708]{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:28px}.page-title[data-v-8f8e5708]{font-size:2.4rem;font-weight:700;color:#4b5563;letter-spacing:-.5px;line-height:1.2}.page-sub[data-v-8f8e5708]{font-size:.95rem;color:#777;margin-top:4px}.schedule-card[data-v-8f8e5708]{background:#fff;border:1.5px solid #e0e0e0;border-radius:16px;padding:24px 24px 0;flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.card-top[data-v-8f8e5708]{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:20px;flex-shrink:0}.card-title[data-v-8f8e5708]{font-size:1.05rem;font-weight:700;color:#111}.card-sub[data-v-8f8e5708]{font-size:.82rem;color:#888;margin-top:2px}.sched-topbar[data-v-8f8e5708]{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px;padding-bottom:12px;border-bottom:1px solid #e5e7eb}.sched-topbar-left[data-v-8f8e5708]{min-width:240px}.sched-grid-title[data-v-8f8e5708]{font-size:1.1rem;font-weight:700;color:#111827;margin:0 0 6px}.sched-grid-sub[data-v-8f8e5708]{margin:0;font-size:.92rem;color:#6b7280}.sched-topbar-right[data-v-8f8e5708]{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.filter-wrap[data-v-8f8e5708]{position:relative;display:flex;align-items:center}.subject-select[data-v-8f8e5708]{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1.5px solid #d0d0d0;border-radius:8px;padding:10px 38px 10px 14px;font-family:inherit;font-size:.92rem;color:#333;background:#fff;cursor:pointer;outline:none;min-width:220px}.subject-select[data-v-8f8e5708]:focus{border-color:#4b5563}.select-arrow[data-v-8f8e5708]{position:absolute;right:12px;pointer-events:none;color:#555}.icon-btn[data-v-8f8e5708]{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid #d1d5db;background:#fff;color:#1f2937;border-radius:10px;padding:10px 16px;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .2s ease,border-color .2s ease,transform .2s ease}.icon-btn[data-v-8f8e5708]:hover{background:#f8fafc;border-color:#9ca3af;transform:translateY(-1px)}.print-btn[data-v-8f8e5708]{white-space:nowrap}.table-scroll[data-v-8f8e5708]{flex:1;overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.table-scroll[data-v-8f8e5708]::-webkit-scrollbar{width:0;height:0}.sched-table[data-v-8f8e5708]{width:100%;border-collapse:collapse;table-layout:auto}.th-time[data-v-8f8e5708]{background:#4b5563;color:#fff;font-size:.82rem;font-weight:600;text-align:center;padding:14px 12px;white-space:nowrap;width:110px;position:sticky;top:0;z-index:2;border-right:1px solid #6b7280}.th-day[data-v-8f8e5708]{background:#4b5563;color:#fff;font-size:.82rem;font-weight:600;text-align:center;padding:14px 8px;cursor:pointer;white-space:nowrap;position:sticky;top:0;z-index:2;border-left:1px solid #6b7280;-webkit-user-select:none;user-select:none;transition:background .2s ease,width .4s cubic-bezier(.4,0,.2,1)}.th-day[data-v-8f8e5708]:hover,.th-day-active[data-v-8f8e5708]{background:#6b7280}.td-time[data-v-8f8e5708]{background:#f9fafb;font-size:.78rem;color:#555;text-align:center;padding:0 10px;white-space:nowrap;border:1px solid #e8e8e8;height:40px;vertical-align:middle}.td-empty[data-v-8f8e5708]{border:1px solid #e8e8e8;vertical-align:top;width:120px;min-width:120px;height:48px;padding:10px;background:#fafafa;transition:width .4s cubic-bezier(.4,0,.2,1),min-width .4s cubic-bezier(.4,0,.2,1)}.td-empty.col-expanded[data-v-8f8e5708]{width:300px;min-width:300px}.free-time-label[data-v-8f8e5708]{display:inline-flex;align-items:center;justify-content:center;width:100%;height:100%;color:#4b5563;font-size:.78rem;font-weight:600;opacity:.85}.td-class[data-v-8f8e5708]{border:1px solid rgba(0,0,0,.08);vertical-align:middle;padding:6px 10px;cursor:pointer;width:120px;min-width:120px;max-width:120px;transition:filter .2s ease,width .4s cubic-bezier(.4,0,.2,1),min-width .4s cubic-bezier(.4,0,.2,1),max-width .4s cubic-bezier(.4,0,.2,1),padding .4s cubic-bezier(.4,0,.2,1)}.td-class[data-v-8f8e5708]:hover{filter:brightness(.94)}.teacher-subbed-indication[data-v-8f8e5708]{display:block;width:100%;margin-bottom:5px;border:1px solid rgba(255,255,255,.75);border-radius:5px;background:#b42318;color:#fff;padding:3px 5px;box-sizing:border-box;font-size:.63rem;font-weight:800;line-height:1.25;letter-spacing:.035em;text-align:center;overflow-wrap:anywhere}.teacher-subbed-indication-expanded[data-v-8f8e5708]{font-size:.72rem;padding:5px 8px}.modal-subbed-indication[data-v-8f8e5708]{margin:0 0 16px;font-size:.76rem;padding:7px 10px}.td-class.col-expanded[data-v-8f8e5708]{width:300px;min-width:300px;max-width:300px;padding:14px 16px}.cell-green[data-v-8f8e5708]{background:#4b5563;color:#fff}.cell-yellow[data-v-8f8e5708]{background:#e8a020;color:#251500}.cell-orange[data-v-8f8e5708]{background:#f4a261;color:#2e1700}.cell-blue[data-v-8f8e5708]{background:#4a90d9;color:#fff}.cell-room-sm[data-v-8f8e5708]{font-size:.78rem;font-weight:700;margin-bottom:3px;text-align:left}.cell-subject-sm[data-v-8f8e5708]{font-size:.75rem;line-height:1.35;margin-bottom:4px;text-align:left}.cell-tag-sm[data-v-8f8e5708]{font-size:.7rem;opacity:.85;text-align:left}.cell-campus-sm[data-v-8f8e5708]{font-size:.68rem;font-weight:800;letter-spacing:.03em;text-transform:uppercase;margin:1px 0 4px;text-align:left}.consult-approved-chip[data-v-8f8e5708]{display:inline-flex;align-items:center;gap:5px;margin:2px 0 4px;padding:3px 9px;border-radius:999px;background:#ffffff3d;border:1px solid rgba(255,255,255,.45);font-size:.72rem;font-weight:700;color:#fff;width:fit-content}.consult-approved-chip-expanded[data-v-8f8e5708]{margin-top:8px;margin-left:24px;font-size:.74rem}.consult-approved-icon[data-v-8f8e5708]{opacity:.95;flex-shrink:0}.cell-badge-row[data-v-8f8e5708]{display:flex;justify-content:flex-start;margin-bottom:10px}.cell-badge[data-v-8f8e5708]{font-size:.72rem;font-weight:600;padding:3px 10px;border-radius:20px}.badge-campus[data-v-8f8e5708]{background:#ffffffdb;color:#6e2f00;margin-left:6px}.badge-np[data-v-8f8e5708]{background:#ffffffe6;color:#4b5563}.badge-p[data-v-8f8e5708]{background:#ffffffe6;color:#e8a020}.badge-consult[data-v-8f8e5708]{background:#ffffffeb;color:#2f6fb0}.cell-exp-line[data-v-8f8e5708]{display:flex;align-items:center;gap:7px;margin-bottom:8px}.cell-exp-icon[data-v-8f8e5708]{flex-shrink:0;opacity:.9}.cell-exp-room[data-v-8f8e5708]{font-size:.9rem;font-weight:500}.cell-exp-subject[data-v-8f8e5708]{font-size:.92rem;font-weight:700;line-height:1.3}.cell-exp-section[data-v-8f8e5708]{font-size:.82rem;opacity:.85;margin-top:4px;margin-left:24px}.cell-yellow .cell-room-sm[data-v-8f8e5708],.cell-yellow .cell-subject-sm[data-v-8f8e5708],.cell-yellow .cell-tag-sm[data-v-8f8e5708],.cell-yellow .cell-exp-room[data-v-8f8e5708],.cell-yellow .cell-exp-subject[data-v-8f8e5708],.cell-yellow .cell-exp-section[data-v-8f8e5708],.cell-orange .cell-room-sm[data-v-8f8e5708],.cell-orange .cell-subject-sm[data-v-8f8e5708],.cell-orange .cell-tag-sm[data-v-8f8e5708],.cell-orange .cell-exp-room[data-v-8f8e5708],.cell-orange .cell-exp-subject[data-v-8f8e5708],.cell-orange .cell-exp-section[data-v-8f8e5708]{color:inherit;opacity:1}.cell-yellow .cell-tag-sm[data-v-8f8e5708],.cell-orange .cell-tag-sm[data-v-8f8e5708]{font-weight:700}.cell-yellow .cell-exp-icon[data-v-8f8e5708],.cell-orange .cell-exp-icon[data-v-8f8e5708]{color:#000000b8;opacity:1}.cell-yellow .cell-badge[data-v-8f8e5708],.cell-orange .cell-badge[data-v-8f8e5708]{background:#ffffffd1;color:#2b2b2b}.cell-blue .cell-room-sm[data-v-8f8e5708],.cell-blue .cell-subject-sm[data-v-8f8e5708],.cell-blue .cell-tag-sm[data-v-8f8e5708],.cell-blue .cell-exp-room[data-v-8f8e5708],.cell-blue .cell-exp-subject[data-v-8f8e5708],.cell-blue .cell-exp-section[data-v-8f8e5708]{color:#fff;opacity:1}.cell-blue .cell-room-sm[data-v-8f8e5708]{font-size:.8rem;font-weight:800}.cell-blue .cell-subject-sm[data-v-8f8e5708]{font-size:.8rem;font-weight:600}.cell-blue .cell-tag-sm[data-v-8f8e5708]{font-size:.74rem;font-weight:700}.cell-blue .cell-exp-icon[data-v-8f8e5708]{opacity:1}.cell-blue .consult-approved-chip[data-v-8f8e5708]{background:#11396785;border-color:#ffffff9e}.modal-overlay[data-v-8f8e5708]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:1000}.view-modal[data-v-8f8e5708],.teacher-modal[data-v-8f8e5708]{position:relative;width:420px;max-width:94vw;padding:32px 32px 28px;background:#fff;border-radius:24px;border-top:5px solid #4b5563;box-shadow:0 24px 60px #0003}.modal-close[data-v-8f8e5708]{position:absolute;top:18px;right:18px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#ffeaea;border:none;border-radius:50%;font-size:.88rem;font-weight:700;line-height:1;color:#e63946;cursor:pointer;transition:background .15s,transform .15s}.modal-close[data-v-8f8e5708]:hover{background:#e63946;color:#fff;transform:scale(1.08)}.modal-title[data-v-8f8e5708]{font-size:1.5rem;font-weight:700;color:#4b5563;margin:0 0 20px;padding-bottom:16px;border-bottom:1.5px solid #e6f2ec;letter-spacing:-.3px}.modal-info-row[data-v-8f8e5708]{display:flex;align-items:center;gap:12px;margin-bottom:10px;padding:10px 14px;background:#f8fafc;border-radius:10px;font-size:.92rem}.modal-key[data-v-8f8e5708]{min-width:80px;font-size:.78rem;font-weight:700;color:#9ca3af;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.modal-val[data-v-8f8e5708]{font-weight:500;color:#1a1a1a}.modal-time-row[data-v-8f8e5708]{display:inline-flex;align-items:center;gap:8px;margin-top:18px;padding:9px 20px;background:#4b5563;color:#fff;border-radius:20px;font-size:.92rem;font-weight:600}.modal-teacher-row[data-v-8f8e5708]{display:flex;align-items:center;gap:16px;margin-bottom:20px;padding:16px;background:#f3faf5;border-radius:14px}.modal-teacher-avatar[data-v-8f8e5708]{width:68px;height:68px;border-radius:50%;object-fit:cover;border:3px solid #cbd5e1;flex-shrink:0}.modal-teacher-info[data-v-8f8e5708]{display:flex;flex-direction:column;gap:6px}.modal-teacher-name[data-v-8f8e5708]{font-size:1.1rem;font-weight:700;color:#111}.modal-year-line[data-v-8f8e5708]{font-size:.78rem;color:#5f6b76;font-weight:600}.modal-parallel-label[data-v-8f8e5708]{display:inline-block;padding:3px 12px;background:#e5e7eb;color:#4b5563;border-radius:20px;font-size:.8rem;font-weight:600;width:fit-content}.modal-section-row[data-v-8f8e5708]{display:flex;align-items:center;gap:12px;margin-bottom:10px;padding:10px 14px;background:#f8fafc;border-radius:10px;font-size:.92rem}.modal-section-val[data-v-8f8e5708]{font-weight:600;color:#9ca3af}.logout-modal-box[data-v-8f8e5708]{background:#fff;border-radius:20px;padding:36px 40px 32px;width:360px;max-width:94vw;display:flex;flex-direction:column;align-items:center;gap:10px;box-shadow:0 16px 48px #0000002e;text-align:center}.logout-modal-icon[data-v-8f8e5708]{width:68px;height:68px;border-radius:50%;background:#ffeaea;display:flex;align-items:center;justify-content:center;margin-bottom:4px}.logout-modal-title[data-v-8f8e5708]{font-size:1.45rem;font-weight:700;color:#111;margin:0}.logout-modal-sub[data-v-8f8e5708]{font-size:.9rem;color:#777;margin:0 0 8px}.logout-modal-actions[data-v-8f8e5708]{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:6px;width:100%}.logout-cancel-btn[data-v-8f8e5708]{background:none;border:none;font-family:inherit;font-size:1rem;font-weight:600;color:#e63946;cursor:pointer;padding:8px 18px;border-radius:10px;transition:background .15s}.logout-cancel-btn[data-v-8f8e5708]:hover{background:#ffeaea}.logout-confirm-btn[data-v-8f8e5708]{background:#4b5563;color:#fff;border:none;font-family:inherit;font-size:1rem;font-weight:600;padding:10px 32px;border-radius:10px;cursor:pointer;transition:background .18s}.logout-confirm-btn[data-v-8f8e5708]:hover{background:#2d6a4f}@media (max-width: 900px){.main[data-v-8f8e5708]{padding:20px 16px 32px}.sidebar[data-v-8f8e5708]{width:200px;min-width:200px}}@media print{@page{size:landscape;margin:10mm}html,body,#app{width:100%!important;height:auto!important;margin:0!important;padding:0!important;background:#fff!important;overflow:visible!important}.layout[data-v-8f8e5708]{display:block!important;width:100%!important;height:auto!important;min-height:0!important;background:#fff!important}.sidebar[data-v-8f8e5708],.main-header[data-v-8f8e5708],.sched-topbar-right[data-v-8f8e5708],.modal-overlay[data-v-8f8e5708]{display:none!important}.main[data-v-8f8e5708]{display:block!important;width:100%!important;height:auto!important;min-width:0!important;margin:0!important;padding:0!important;overflow:visible!important}.schedule-card[data-v-8f8e5708]{display:block!important;width:100%!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;overflow:visible!important;box-shadow:none!important}.schedule-card[data-v-8f8e5708]:before{content:"CIT Scheduler — Weekly Teaching Schedule";display:block;margin-bottom:3mm;color:#111;font-size:17pt;font-weight:700;text-align:center}.sched-topbar[data-v-8f8e5708]{display:block!important;margin:0 0 3mm!important;padding:0 0 2mm!important;border-bottom:1px solid #777!important;text-align:center}.sched-topbar-left[data-v-8f8e5708]{min-width:0!important}.sched-grid-title[data-v-8f8e5708]{margin:0!important;font-size:11pt!important}.sched-grid-sub[data-v-8f8e5708]{display:none!important}.table-scroll[data-v-8f8e5708]{width:100%!important;height:auto!important;overflow:visible!important}.sched-table[data-v-8f8e5708]{width:100%!important;table-layout:fixed!important;border-collapse:collapse!important;font-size:7pt!important}.th-time[data-v-8f8e5708],.th-day[data-v-8f8e5708]{position:static!important;width:auto!important;padding:2mm 1mm!important;color:#fff!important;background:#4b5563!important;border:1px solid #333!important;font-size:7pt!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}.th-time[data-v-8f8e5708]{width:16mm!important}.td-time[data-v-8f8e5708],.td-empty[data-v-8f8e5708],.td-class[data-v-8f8e5708]{width:auto!important;min-width:0!important;height:6.5mm!important;padding:1mm!important;border:1px solid #aaa!important;font-size:6.5pt!important;overflow:hidden!important;break-inside:avoid;print-color-adjust:exact;-webkit-print-color-adjust:exact}.free-time-label[data-v-8f8e5708]{font-size:6pt!important}}.layout[data-v-6533b931]{display:flex;height:100vh;overflow:hidden;background:#f5f6f8;font-family:Poppins,sans-serif}.layout button[data-v-6533b931],.layout input[data-v-6533b931],.layout select[data-v-6533b931]{font-family:inherit}.sidebar[data-v-6533b931]{width:280px;min-width:280px;background:#fff;border-right:1px solid #ececec;display:flex;flex-direction:column;align-items:center;padding:28px 18px 24px;position:sticky;top:0;height:100vh;overflow-y:auto}.sidebar-profile[data-v-6533b931]{display:flex;flex-direction:column;align-items:center;gap:6px;margin-bottom:28px;text-align:center}.avatar-wrap[data-v-6533b931]{width:96px;height:96px;border-radius:50%;overflow:hidden;margin-bottom:10px;border:3px solid #c4c9cd;cursor:pointer;transition:opacity .18s}.avatar-wrap[data-v-6533b931]:hover{opacity:.85}.avatar[data-v-6533b931]{width:100%;height:100%;object-fit:cover}.brand[data-v-6533b931]{font-size:1.05rem;font-weight:600;color:#4b5563}.role[data-v-6533b931]{font-size:.88rem;color:#444;font-weight:500}.email[data-v-6533b931]{font-size:.82rem;color:#888;word-break:break-all}.sidebar-nav[data-v-6533b931]{display:flex;flex-direction:column;gap:4px;width:100%;flex:1}.nav-item[data-v-6533b931]{display:flex;align-items:center;gap:10px;padding:11px 16px;border-radius:10px;font-size:.88rem;font-weight:400;color:#444;text-decoration:none;transition:background .18s,color .18s}.nav-item[data-v-6533b931]:hover{background:#f8fafc;color:#4b5563}.nav-item.active[data-v-6533b931]{background:#4b5563;color:#fff}.nav-item.active .nav-icon[data-v-6533b931]{color:#fff}.nav-icon[data-v-6533b931]{display:flex;align-items:center;flex-shrink:0}.logout-btn[data-v-6533b931]{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:11px 12px;background:#e63946;color:#fff;border:none;border-radius:10px;font-size:.85rem;font-weight:500;cursor:pointer;transition:background .2s;margin-top:16px}.logout-btn[data-v-6533b931]:hover{background:#c1121f}.main[data-v-6533b931]{flex:1;padding:40px 44px 32px;overflow-y:auto;min-width:0;height:100vh;box-sizing:border-box}.main-header[data-v-6533b931]{margin-bottom:32px}.page-title[data-v-6533b931]{font-size:2rem;font-weight:600;color:#4b5563;letter-spacing:-.5px;line-height:1.2;margin:0 0 4px}.page-sub[data-v-6533b931]{font-size:.95rem;color:#777;margin:0}.settings-body[data-v-6533b931]{display:flex;flex-direction:column;gap:24px}.settings-card[data-v-6533b931]{background:#fff;border-radius:16px;padding:28px 32px 30px;box-shadow:0 2px 10px #0000000f}.settings-card-header[data-v-6533b931]{display:flex;align-items:center;gap:12px;margin-bottom:24px}.settings-card-header--between[data-v-6533b931]{justify-content:space-between;margin-bottom:0}.settings-card-header-left[data-v-6533b931]{display:flex;align-items:center;gap:12px}.settings-card-icon[data-v-6533b931]{width:40px;height:40px;border-radius:10px;background:#f3f4f6;display:flex;align-items:center;justify-content:center;flex-shrink:0}.settings-card-title[data-v-6533b931]{font-size:1.1rem;font-weight:700;color:#111;margin:0}.settings-card-sub[data-v-6533b931]{font-size:.82rem;color:#888;margin:3px 0 0}.settings-form[data-v-6533b931]{display:flex;flex-direction:column;gap:18px}.settings-row[data-v-6533b931]{display:grid;grid-template-columns:1fr 1fr;gap:20px}.settings-row--otp[data-v-6533b931]{grid-template-columns:1fr auto;align-items:end}.settings-group[data-v-6533b931]{display:flex;flex-direction:column;gap:7px}.settings-group--btn[data-v-6533b931]{justify-content:flex-end}.settings-label[data-v-6533b931]{font-size:.82rem;font-weight:600;color:#555}.settings-input[data-v-6533b931]{font-family:inherit;font-size:.9rem;color:#111;background:#fff;border:1.5px solid #dde2e8;border-radius:8px;padding:10px 14px;outline:none;width:100%;box-sizing:border-box;transition:border-color .18s,box-shadow .18s}.settings-input[data-v-6533b931]:focus{border-color:#6b7280;box-shadow:0 0 0 3px #535b6417}.pw-input-wrap[data-v-6533b931]{position:relative;display:flex;align-items:center}.pw-input-wrap .settings-input[data-v-6533b931]{padding-right:42px}.pw-eye[data-v-6533b931]{position:absolute;right:12px;background:none;border:none;cursor:pointer;color:#aaa;display:flex;align-items:center;padding:0;transition:color .15s}.pw-eye[data-v-6533b931]:hover{color:#4b5563}.send-otp-btn[data-v-6533b931]{font-family:inherit;font-size:.82rem;font-weight:600;white-space:nowrap;width:fit-content;background:linear-gradient(135deg,#4b5563,#6b7280);color:#fff;border:none;border-radius:8px;padding:10px 20px;cursor:pointer;transition:opacity .15s;box-shadow:0 2px 6px #30353a33}.send-otp-btn[data-v-6533b931]:hover{opacity:.85}.otp-sent-badge[data-v-6533b931]{display:inline-flex;align-items:center;gap:6px;background:#d8dcdf;color:#4f575f;border-radius:8px;padding:9px 14px;font-size:.83rem;font-weight:600}.resend-text-btn[data-v-6533b931]{background:none;border:none;color:#4b5563;font-size:.8rem;font-weight:600;text-decoration:underline;cursor:pointer;padding:0;margin-left:4px}.resend-text-btn[data-v-6533b931]:hover{color:#6b7280}.otp-hint[data-v-6533b931]{font-weight:400;font-size:.78rem;color:#6b7280;margin-left:8px}.otp-boxes-inline[data-v-6533b931]{display:flex;gap:8px;margin-top:2px}.otp-box-sm[data-v-6533b931]{width:44px;height:44px;text-align:center;font-size:1.1rem;font-weight:700;border:1.5px solid #dde2e8;border-radius:8px;background:#f9fafb;color:#4b5563;outline:none;transition:border-color .15s,box-shadow .15s}.otp-box-sm[data-v-6533b931]:focus{border-color:#6b7280;box-shadow:0 0 0 3px #535b6426;background:#fff}.settings-msg[data-v-6533b931]{font-size:.83rem;font-weight:500;padding:9px 14px;border-radius:8px}.settings-msg--error[data-v-6533b931]{background:#ffeaea;color:#e63946}.settings-msg--success[data-v-6533b931]{background:#d8dcdf;color:#4f575f}.settings-form-footer[data-v-6533b931]{display:flex;justify-content:center;padding-top:4px}.update-pw-btn[data-v-6533b931]{background:#4b5563;color:#fff;border:none;font-family:inherit;font-size:.95rem;font-weight:600;padding:12px 48px;border-radius:10px;cursor:pointer;transition:background .18s,opacity .18s;box-shadow:0 4px 14px #30353a33}.update-pw-btn[data-v-6533b931]:hover:not(:disabled){background:#6b7280}.update-pw-btn[data-v-6533b931]:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.toggle-switch[data-v-6533b931]{position:relative;width:50px;height:27px;border-radius:20px;background:#ccc;border:none;cursor:pointer;transition:background .25s;flex-shrink:0;padding:0;outline:none}.toggle-switch--on[data-v-6533b931]{background:#4b5563}.toggle-thumb[data-v-6533b931]{position:absolute;top:3px;left:3px;width:21px;height:21px;border-radius:50%;background:#fff;box-shadow:0 1px 4px #0003;transition:transform .25s}.toggle-switch--on .toggle-thumb[data-v-6533b931]{transform:translate(23px)}.tfa-note[data-v-6533b931]{display:flex;align-items:flex-start;gap:8px;margin-top:18px;padding:12px 16px;background:#f3f4f6;border-radius:10px;font-size:.84rem;color:#4f575f;line-height:1.55}.settings-faq-section[data-v-6533b931]{display:flex;flex-direction:column}.faq-header[data-v-6533b931]{display:flex;align-items:center;gap:10px;margin-bottom:16px}.faq-header-icon[data-v-6533b931]{width:38px;height:38px;border-radius:10px;background:#f3f4f6;display:flex;align-items:center;justify-content:center}.faq-title[data-v-6533b931]{font-size:1.1rem;font-weight:700;color:#111;margin:0}.faq-list[data-v-6533b931]{display:flex;flex-direction:column;gap:10px}.faq-item[data-v-6533b931]{background:#fff;border:1.5px solid #ececec;border-radius:12px;overflow:hidden;transition:border-color .18s,box-shadow .18s}.faq-item--open[data-v-6533b931]{border-color:#bdc2c6;box-shadow:0 2px 10px #30353a12}.faq-question[data-v-6533b931]{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;background:none;border:none;padding:16px 20px;font-family:inherit;font-size:.92rem;font-weight:500;color:#222;text-align:left;cursor:pointer;transition:background .15s}.faq-question[data-v-6533b931]:hover{background:#f4f5f5}.faq-chevron[data-v-6533b931]{flex-shrink:0;color:#aaa;transition:transform .22s}.faq-chevron--open[data-v-6533b931]{transform:rotate(180deg);color:#4b5563}.faq-answer[data-v-6533b931]{padding:0 20px 18px;font-size:.875rem;color:#666;line-height:1.7;border-top:1px solid #f0f0f0}.modal-overlay[data-v-6533b931]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000}.tfa-modal[data-v-6533b931]{background:#fff;border-radius:20px;padding:36px 40px 32px;width:420px;max-width:94vw;display:flex;flex-direction:column;align-items:center;gap:10px;box-shadow:0 16px 48px #0000002e;text-align:center;animation:modalIn-6533b931 .22s cubic-bezier(.34,1.3,.64,1)}.tfa-modal-icon[data-v-6533b931]{width:64px;height:64px;border-radius:50%;background:#f3f4f6;display:flex;align-items:center;justify-content:center;margin-bottom:4px}.tfa-modal-title[data-v-6533b931]{font-size:1.35rem;font-weight:700;color:#111;margin:0}.tfa-modal-sub[data-v-6533b931]{font-size:.88rem;color:#777;margin:0 0 6px;line-height:1.5}.otp-boxes[data-v-6533b931]{display:flex;gap:10px;margin:6px 0 2px}.otp-box[data-v-6533b931]{width:46px;height:52px;border:2px solid #dde2e8;border-radius:10px;text-align:center;font-size:1.25rem;font-weight:700;color:#4b5563;outline:none;font-family:inherit;transition:border-color .15s,box-shadow .15s;background:#f9fafb}.otp-box[data-v-6533b931]:focus{border-color:#4b5563;box-shadow:0 0 0 3px #30353a1f;background:#fff}.resend-btn[data-v-6533b931]{display:inline-flex;align-items:center;gap:6px;background:none;border:none;color:#4b5563;font-family:inherit;font-size:.85rem;font-weight:600;cursor:pointer;padding:4px 8px;border-radius:6px;transition:background .15s}.resend-btn[data-v-6533b931]:hover{background:#f3f4f6}.tfa-modal-actions[data-v-6533b931]{display:flex;gap:12px;margin-top:8px;width:100%}.disable-modal[data-v-6533b931]{background:#fff;border-radius:20px;padding:40px 44px 36px;width:400px;max-width:94vw;display:flex;flex-direction:column;align-items:center;gap:10px;box-shadow:0 16px 48px #0000002e;text-align:center;animation:modalIn-6533b931 .22s cubic-bezier(.34,1.3,.64,1)}.disable-modal-icon[data-v-6533b931]{width:72px;height:72px;border-radius:50%;background:#fff0f0;border:2px solid #ffd6d8;display:flex;align-items:center;justify-content:center;margin-bottom:6px}.disable-modal-title[data-v-6533b931]{font-size:1.4rem;font-weight:700;color:#111;margin:0}.disable-modal-sub[data-v-6533b931]{font-size:.9rem;color:#888;margin:0 0 8px;line-height:1.6}.disable-modal-actions[data-v-6533b931]{display:flex;gap:12px;width:100%;margin-top:6px}.tfa-cancel-btn[data-v-6533b931]{flex:1;padding:10px 0;border-radius:9px;border:1.5px solid #e63946;background:#fff;color:#e63946;font-weight:600;font-size:.92rem;font-family:inherit;cursor:pointer;transition:background .15s}.tfa-cancel-btn[data-v-6533b931]:hover{background:#fff0f0}.tfa-continue-btn[data-v-6533b931]{flex:1;padding:10px 0;border-radius:9px;border:none;background:#4b5563;color:#fff;font-weight:600;font-size:.92rem;font-family:inherit;cursor:pointer;transition:background .15s}.tfa-continue-btn[data-v-6533b931]:hover{background:#6b7280}.logout-modal-box[data-v-6533b931]{background:#fff;border-radius:20px;padding:36px 40px 32px;width:360px;max-width:94vw;display:flex;flex-direction:column;align-items:center;gap:10px;box-shadow:0 16px 48px #0000002e;text-align:center;animation:modalIn-6533b931 .22s cubic-bezier(.34,1.3,.64,1)}.logout-modal-icon[data-v-6533b931]{width:68px;height:68px;border-radius:50%;background:#ffeaea;display:flex;align-items:center;justify-content:center;margin-bottom:4px}.logout-modal-title[data-v-6533b931]{font-size:1.45rem;font-weight:700;color:#111;margin:0}.logout-modal-sub[data-v-6533b931]{font-size:.9rem;color:#777;margin:0 0 8px}.logout-modal-actions[data-v-6533b931]{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:6px;width:100%}.logout-cancel-btn[data-v-6533b931]{background:none;border:none;font-family:inherit;font-size:1rem;font-weight:600;color:#e63946;cursor:pointer;padding:8px 18px;border-radius:10px;transition:background .15s}.logout-cancel-btn[data-v-6533b931]:hover{background:#ffeaea}.logout-confirm-btn[data-v-6533b931]{background:#4b5563;color:#fff;border:none;font-family:inherit;font-size:1rem;font-weight:600;padding:10px 32px;border-radius:10px;cursor:pointer;transition:background .18s}.logout-confirm-btn[data-v-6533b931]:hover{background:#6b7280}@keyframes modalIn-6533b931{0%{opacity:0;transform:scale(.94) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}@media (max-width: 800px){.settings-row[data-v-6533b931]{grid-template-columns:1fr}.main[data-v-6533b931]{padding:24px 18px 32px}}
