@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-space-y-reverse:0;--tw-border-style:solid;--tw-font-weight:initial;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-500:oklch(63.7% .237 25.331);--spacing:.25rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--font-weight-semibold:600;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--radius-3xl:1.5rem;--shadow-xs:0 1px 2px 0 #0000000d;--shadow-sm:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-4{margin-top:calc(var(--spacing)*4)}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.table-row{display:table-row}.w-full{width:100%}.flex-grow-0{flex-grow:0}.resize{resize:both}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}.border{border-style:var(--tw-border-style);border-width:1px}.border-red-500{border-color:var(--color-red-500)}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.text-red-500{color:var(--color-red-500)}.italic{font-style:italic}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.focus\:border-red-500:focus{border-color:var(--color-red-500)}}:root{--brand-primary:#005249;--brand-primary-light:#006156;--brand-primary-dark:#003d3a;--brand-secondary:#ffa600;--brand-secondary-light:#fb3;--brand-secondary-dark:#e69500;--white:#fff;--gray-50:#fafbfc;--gray-100:#f1f5f9;--gray-200:#e2e8f0;--gray-300:#cbd5e1;--gray-400:#94a3b8;--gray-500:#64748b;--gray-600:#475569;--gray-700:#334155;--gray-800:#1e293b;--gray-900:#0f172a;--text-primary:#1e293b;--text-secondary:#475569;--text-muted:#64748b;--text-light:#94a3b8;--text-inverse:#fff;--bg-primary:#fff;--bg-secondary:#fafbfc;--bg-tertiary:#f1f5f9;--bg-hover:#f1f5f9;--bg-active:#ffa6001a;--border-light:#e2e8f0;--border-medium:#cbd5e1;--border-focus:#005249;--success:#10b981;--success-bg:#d1fae5;--warning:#f59e0b;--warning-bg:#fef3c7;--error:#ef4444;--error-bg:#fee2e2;--info:#3b82f6;--info-bg:#dbeafe;--shadow-xs:0 1px 2px #0000000a;--shadow-sm:0 1px 3px #0000000f;--shadow-md:0 4px 12px #00000014;--shadow-lg:0 8px 24px #0000001a;--shadow-xl:0 16px 48px #0000001f;--shadow-brand:0 4px 16px #00524926;--shadow-accent:0 4px 16px #ffa60033;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-size-xs:11px;--font-size-sm:13px;--font-size-base:14px;--font-size-md:15px;--font-size-lg:16px;--font-size-xl:18px;--font-size-2xl:22px;--font-size-3xl:28px;--font-size-4xl:36px;--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--line-height-tight:1.25;--line-height-normal:1.5;--line-height-relaxed:1.625;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:10px;--radius-2xl:12px;--radius-3xl:16px;--radius-full:9999px;--transition-fast:.15s ease;--transition-normal:.2s ease;--transition-slow:.3s ease;font-family:var(--font-family);line-height:var(--line-height-normal);font-weight:var(--font-normal);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-secondary);min-width:320px;min-height:100vh;color:var(--text-primary);margin:0}html,body,#root{width:100%;height:100%}:focus-visible{outline:2px solid var(--brand-secondary);outline-offset:2px}::selection{color:var(--brand-primary);background-color:#ffa60033}@keyframes slideUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.animate-fadeIn{animation:.2s ease-out fadeIn}.animate-slideDown{animation:.2s ease-out slideDown}.animate-slideUp{animation:.2s ease-out slideUp}.animate-scaleIn{animation:.2s ease-out scaleIn}@media(prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.1s!important;animation-duration:.01ms!important}}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}[class$=-page]{width:100%;max-width:100%;padding:28px;background:transparent;min-height:100%}[class$=-header]{margin-bottom:28px;padding-bottom:0;border-bottom:none}[class$=-title]{font-size:32px;font-weight:700;margin:0 0 8px;color:#005249;letter-spacing:-.5px;line-height:1.2}[class$=-subtitle]{margin:0;font-size:15px;color:#64748b;line-height:1.5}.state-toolbar,.page-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px;flex-wrap:wrap}.toolbar-left{display:flex;align-items:center;gap:12px;flex:1;min-width:240px}.search-box{display:flex;align-items:center;width:100%;height:42px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:0 14px;gap:10px;transition:all .2s ease;max-width:380px;position:relative!important}.search-box:hover{border-color:#cbd5e1}.search-box:focus-within{border-color:#005249;box-shadow:0 0 0 3px #0052491a}.search-icon{font-size:16px;color:#94a3b8}.search-box .search-icon{position:static!important;display:inline-flex!important;align-items:center;justify-content:center;flex-shrink:0!important;margin:0!important;transform:none!important;pointer-events:none!important}.search-input{flex:1;border:none!important;background:transparent!important;font-size:14px;color:#1e293b;outline:none!important;box-shadow:none!important;font-family:inherit;font-weight:500}.search-input::placeholder{color:#94a3b8}.search-clear-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:#f1f5f9;border-radius:6px;font-size:12px;cursor:pointer;color:#64748b;transition:all .15s ease}.search-clear-btn:hover{background:#005249;color:#fff}.toolbar-right{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.items-per-page-select{height:42px;padding:0 14px;border:1px solid #e2e8f0;border-radius:10px;font-size:14px;font-weight:500;color:#475569;background:#fff;cursor:pointer;font-family:inherit;transition:all .2s ease}.items-per-page-select:focus{outline:none;border-color:#005249;box-shadow:0 0 0 3px #0052491a}.btn-primary:hover{background:#003d3a;transform:translateY(-2px);box-shadow:0 6px 16px #00524940}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{background:#94a3b8;cursor:not-allowed;transform:none;box-shadow:none}.btn-danger{background:#ef4444;color:#fff;box-shadow:0 4px 12px #ef444426}.btn-danger:hover{background:#dc2626;transform:translateY(-2px)}.btn-danger:disabled{background:#fca5a5;cursor:not-allowed}.btn-icon{font-size:16px}.datatable-wrapper{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0000000a;margin-bottom:24px}.datatable{width:100%;border-collapse:separate;border-spacing:0;font-size:14px}.datatable-head{background:#f8fafc;position:sticky;top:0;z-index:10}.datatable-head tr{height:48px}.datatable-head .datatable-cell{padding:12px 16px;text-align:left;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#005249;border-bottom:1px solid #e2e8f0;vertical-align:middle}.datatable-head .datatable-cell:nth-child(2),.datatable-head .datatable-cell:nth-child(4),.datatable-head .datatable-cell:nth-child(5),.datatable-head .datatable-cell:last-child{text-align:center}.datatable-head .datatable-cell:nth-child(2) .header-content,.datatable-head .datatable-cell:nth-child(4) .header-content,.datatable-head .datatable-cell:nth-child(5) .header-content{justify-content:center}.datatable-cell.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .2s ease}.datatable-cell.sortable:hover{background:#f1f5f9}.header-content{display:flex;align-items:center;gap:8px;white-space:nowrap}.sort-indicator{font-size:10px;font-weight:700;transition:all .2s ease}.sort-indicator.inactive{color:#94a3b8;opacity:.4}.sort-indicator.active{color:#ffa600;opacity:1}.datatable-cell.sortable:hover .sort-indicator.inactive{opacity:.8;color:#64748b}.datatable-body{display:table-row-group}.datatable-row{transition:all .2s ease}.datatable-row:not(:last-child) .datatable-cell{border-bottom:1px solid #f1f5f9}.datatable-row:hover{background:#f8fafc}.datatable-row.even,.datatable-row.odd{background:#fff}.datatable-cell{padding:14px 16px;color:#475569;vertical-align:middle}.datatable-row .datatable-cell:nth-child(2),.datatable-row .datatable-cell:nth-child(4),.datatable-row .datatable-cell:nth-child(5){text-align:center}.cell-content{font-weight:500;color:#1e293b}.cell-badge{display:inline-block;padding:4px 8px;background:#f1f5f9;color:#005249;border:1px solid #e2e8f0;border-radius:6px;font-size:12px;font-weight:600;font-family:monospace}.cell-status{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:20px;font-size:12px;font-weight:600}.cell-status.status-active{background:#10b9811a;color:#059669;border:1px solid rgba(16,185,129,.2)}.cell-status.status-inactive{background:#ef44441a;color:#dc2626;border:1px solid rgba(239,68,68,.2)}.cell-date{color:#64748b;font-size:13px}.action-cell{text-align:center;padding:14px 16px}.action-buttons{display:flex;align-items:center;justify-content:center;gap:8px}.btn-icon-edit,.btn-icon-delete,.btn-icon-restore{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;cursor:pointer;font-size:15px;color:#64748b;transition:all .2s ease}.btn-icon-edit:hover{background:#f0f9ff;border-color:#bae6fd;color:#0284c7;transform:translateY(-2px)}.btn-icon-delete:hover{background:#fef2f2;border-color:#fecaca;color:#dc2626;transform:translateY(-2px)}.btn-icon-restore:hover{background:#f0fdf4;border-color:#bbf7d0;color:#10b981;transform:translateY(-2px)}.datatable-empty .datatable-cell{padding:64px 20px;text-align:center}.empty-state{display:flex;flex-direction:column;align-items:center;gap:12px}.empty-icon{font-size:48px;opacity:.5;margin-bottom:8px}.empty-text{font-size:15px;color:#64748b;font-weight:500}.pagination-wrapper{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-wrap:wrap;box-shadow:0 1px 2px #0000000a}.pagination-info{font-size:13px;color:#64748b;font-weight:500}.pagination-info strong{color:#005249;font-weight:700}.pagination{display:flex;align-items:center;gap:6px}.pagination-numbers{display:flex;align-items:center;gap:4px}.pagination-btn,.pagination-number{display:flex;align-items:center;justify-content:center;min-width:36px;height:36px;border:1px solid #e2e8f0;background:#fff;border-radius:8px;font-size:13px;font-weight:500;color:#475569;cursor:pointer;transition:all .2s ease;padding:0 8px;white-space:nowrap}.pagination-btn:hover:not(:disabled),.pagination-number:hover:not(.active){background:#f1f5f9;border-color:#cbd5e1;color:#005249}.pagination-btn:disabled{opacity:.5;cursor:not-allowed;background:#f8fafc}.pagination-number.active{background:#005249;color:#fff;border-color:#005249;box-shadow:0 2px 4px #00524933}.modal-overlay{position:fixed;inset:0;background:#0f172a66;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px}.modal-content{background:#fff;border-radius:16px;box-shadow:0 20px 50px #00000026;max-width:480px;width:100%;max-height:90vh;overflow-y:auto;animation:slideUp .3s ease-out;border:1px solid #e2e8f0}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e2e8f0;background:#f8fafc}.modal-title{font-size:18px;font-weight:700;color:#005249;margin:0}.modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:#fff;border:1px solid #e2e8f0;border-radius:8px;font-size:14px;color:#64748b;cursor:pointer;transition:all .2s ease}.modal-close:hover{background:#ef4444;border-color:#ef4444;color:#fff}.modal-body{padding:24px;display:flex;flex-direction:column;gap:18px}.form-group{display:flex;flex-direction:column;gap:8px}.form-input,.form-select{padding:10px 14px;border:1px solid #e2e8f0;border-radius:8px;font-size:14px;color:#1e293b;background:#fff;transition:all .2s ease;outline:none;height:42px}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid #e2e8f0;background:#f8fafc}.modal-confirm{max-width:400px;text-align:center}.modal-confirm .modal-body{padding:32px 24px 24px;gap:12px}.confirm-icon{font-size:42px;margin-bottom:8px}.confirm-icon.restore-icon{color:#10b981}.confirm-title{font-size:20px;font-weight:700;color:#1e293b}.confirm-message{font-size:15px;color:#64748b;line-height:1.5}.modal-confirm .modal-footer{justify-content:center}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px 20px;gap:16px;color:#64748b;font-size:14px;font-weight:500}.loading-spinner{width:40px;height:40px;border:3px solid #e2e8f0;border-top-color:#005249;border-radius:50%;animation:spin .8s linear infinite}.error-toast{position:fixed;top:24px;right:24px;display:flex;align-items:center;gap:12px;padding:16px 20px;background:#fff;color:#ef4444;border-left:4px solid #ef4444;border-radius:8px;box-shadow:0 10px 30px #0000001a;z-index:1100;max-width:400px;animation:slideInRight .3s ease-out}.error-icon{font-size:20px}.error-close{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:transparent;color:#94a3b8;font-size:14px;cursor:pointer;margin-left:auto;border-radius:4px;transition:all .2s ease}.error-close:hover{background:#f1f5f9;color:#64748b}.form-error{display:flex;align-items:center;gap:10px;padding:12px 16px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#b91c1c;font-size:13px;font-weight:500}.btn-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}@media(max-width:1024px){[class$=-page]{padding:24px}[class$=-title]{font-size:28px}.btn{padding:9px 16px;height:38px;font-size:13px}.datatable-head .datatable-cell,.datatable-cell{padding:10px 16px}}@media(max-width:768px){[class$=-page]{padding:20px}[class$=-title]{font-size:24px}.state-toolbar,.page-toolbar{flex-direction:column;align-items:stretch;gap:12px}.toolbar-left{width:100%;min-width:unset}.search-box{max-width:100%}.toolbar-right{width:100%;justify-content:flex-start}.btn{flex:1}.datatable-wrapper{overflow-x:auto;border-radius:8px}.datatable{min-width:650px}.pagination-wrapper{flex-direction:column;align-items:center;gap:16px}.modal-content{max-width:95vw}}@media(max-width:640px){[class$=-page]{padding:16px}[class$=-title]{font-size:22px}.search-box,.btn,.items-per-page-select{height:38px}.datatable{font-size:13px;min-width:550px}.datatable-head .datatable-cell,.datatable-cell{padding:10px 12px}.btn-icon-edit,.btn-icon-delete{width:30px;height:30px;font-size:13px}.pagination-btn,.pagination-number{min-width:32px;height:32px}.modal-footer{flex-direction:column;gap:10px}.modal-footer .btn{width:100%;flex:none}}.btn:focus-visible,.form-input:focus-visible,.form-select:focus-visible,.pagination-btn:focus-visible{outline:2px solid #FFA600;outline-offset:2px}.app-container{display:flex;flex-direction:row;height:100vh;background:#f8fafc;overflow:hidden;width:100%}.app-body{display:flex;flex-direction:column;flex:1;height:100vh;overflow:hidden;position:relative;transition:margin-left .3s ease}.app-body.sidebar-open{margin-left:280px}.app-body.sidebar-closed{margin-left:72px}.app-content-wrapper{flex:1;height:100%;overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth;display:flex;flex-direction:column;padding:0;margin:0}.app-content-wrapper::-webkit-scrollbar{width:6px}.app-content-wrapper::-webkit-scrollbar-track{background:transparent}.app-content-wrapper::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.app-content-wrapper::-webkit-scrollbar-thumb:hover{background:#94a3b8}@media(max-width:1440px){.app-body.sidebar-open{margin-left:280px}}@media(max-width:1024px){.app-body.sidebar-open{margin-left:260px}.app-body.sidebar-closed{margin-left:68px}}@media(max-width:768px){.app-body.sidebar-open,.app-body.sidebar-closed{margin-left:0!important;width:100vw!important;min-width:100vw!important;position:relative;z-index:1}.app-content-wrapper{height:100%}}@media(max-width:640px){.app-body{margin-left:0;height:100vh}.app-body.sidebar-open,.app-body.sidebar-closed{margin-left:0;padding-top:0}}@media(prefers-color-scheme:dark){.app-container{background:#0f172a}}.sidebar{position:fixed;left:0;top:0;height:100vh;background:#ffffffbf;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);display:flex;flex-direction:column;z-index:40;transition:width .3s cubic-bezier(.16,1,.3,1);border-right:1px solid rgba(0,82,73,.08);box-shadow:4px 0 24px #0052490a;margin:0;padding:0;overflow:hidden}.sidebar-open{width:280px}.sidebar-closed{width:72px}.sidebar-header{padding:0 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#00524905;border-bottom:1px solid rgba(0,82,73,.06);height:72px;flex-shrink:0;margin:0}.sidebar-overlay{position:fixed;inset:0;background:#0006;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:35;display:none}@media(max-width:1024px){.sidebar-overlay{display:block}}.logo-container{display:flex;align-items:center;gap:12px;flex:1;margin:0;padding:0;min-width:0}.logo-icon-wrapper{width:44px;height:44px;min-width:44px;display:flex;align-items:center;justify-content:center;position:relative;flex-shrink:0;margin:0;padding:4px;background:#ffffffe6;border-radius:12px;border:1px solid rgba(0,82,73,.08);box-shadow:0 2px 8px #0052490a;transition:all .3s cubic-bezier(.16,1,.3,1)}.logo-icon-wrapper:hover{border-color:var(--brand-secondary);box-shadow:0 4px 12px #ffa60026;transform:scale(1.05)}.logo-gradient-bg{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:transparent}.logo-gradient-bg img{width:100%;height:100%;object-fit:contain}.logo-text{display:flex;flex-direction:column;align-items:flex-start;flex:1;min-width:0;gap:2px}.logo-text h1{font-size:18px;color:#005249;margin:0;font-weight:700;line-height:1.2;letter-spacing:-.3px}.logo-text p{margin:0;color:#ffa600;font-weight:600;font-size:9px;letter-spacing:1.2px;text-transform:uppercase}.toggle-btn{background:#f1f5f9;color:#64748b;border:1px solid #e2e8f0;width:36px;height:36px;border-radius:8px;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.toggle-btn:hover{background:#005249;color:#fff;border-color:#005249}.sidebar-nav{flex:1;padding:12px 10px;display:flex;flex-direction:column;gap:4px;overflow-y:auto;overflow-x:hidden;background:transparent;scrollbar-width:thin;scrollbar-color:rgba(0,82,73,.15) transparent}.sidebar-nav::-webkit-scrollbar{width:4px}.sidebar-nav::-webkit-scrollbar-track{background:transparent}.sidebar-nav::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.nav-item{display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:10px;border:none;cursor:pointer;font-size:14.5px;font-weight:500;color:#475569;background:transparent;transition:all .3s cubic-bezier(.16,1,.3,1);width:100%;text-align:left;position:relative}.nav-item-inactive:hover{color:var(--brand-primary);background:#0052490a;transform:translate(3px)}.nav-item-active{background:linear-gradient(135deg,var(--brand-primary) 0%,var(--brand-primary-light) 100%)!important;color:#fff!important;font-weight:600;box-shadow:0 4px 12px #00524926;transform:translateY(-1px)}.nav-item-active .nav-icon{color:#fff!important;opacity:1!important}.nav-item-active .dropdown-arrow{color:#fff!important}.nav-icon{font-size:18px;min-width:22px;display:flex;align-items:center;justify-content:center;color:#005249;opacity:.7;transition:all .15s ease}.nav-item:hover .nav-icon{opacity:1}.nav-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.dropdown-arrow{font-size:9px;margin-left:auto;color:#94a3b8;transition:transform .2s ease}.dropdown-arrow.open{transform:rotate(-180deg);color:#ffa600}.submenu{display:flex;flex-direction:column;gap:0;margin:4px 0 4px 18px;padding:0 0 0 16px;position:relative;border-left:1px dashed rgba(0,82,73,.15)}.submenu-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;border:none;cursor:pointer;font-size:13px;font-weight:500;color:#64748b;background:transparent;transition:all .25s cubic-bezier(.16,1,.3,1);text-decoration:none;font-family:inherit;position:relative;margin-left:8px}.submenu-item:before{content:"";position:absolute;left:-24px;top:50%;width:16px;height:1px;background:#00524926}.submenu-item:after{content:"";position:absolute;left:-11px;top:50%;transform:translateY(-50%);width:6px;height:6px;border-radius:50%;background:#00524926;border:2px solid rgba(255,255,255,.8);transition:all .2s ease}.submenu-item:hover{color:var(--brand-primary);background:#0052490a}.submenu-item:hover:after{background:var(--brand-primary);border-color:#fff}.submenu-item.active{color:var(--brand-primary);font-weight:700;background:#0052490f;border-radius:6px;box-shadow:inset 0 0 0 1px #00524914}.submenu-item.active:after{background:var(--brand-secondary);border-color:#fff;box-shadow:0 0 0 2px #ffa6004d}.submenu-icon{font-size:14px;min-width:18px;display:flex;align-items:center;justify-content:center;opacity:.7}.submenu-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.sidebar-divider{height:1px;background:#0052490f;margin:8px 14px}.sidebar-bottom{padding:12px 10px;border-top:1px solid rgba(0,82,73,.06);background:#00524905;flex-shrink:0}.user-profile{display:flex;align-items:center;gap:12px;padding:12px;border-radius:12px;background:#ffffffe6;border:1px solid rgba(0,82,73,.08);box-shadow:0 4px 12px #00524908;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s cubic-bezier(.16,1,.3,1);cursor:pointer;width:100%}.user-profile:hover{border-color:#ffa600;box-shadow:0 2px 8px #ffa6001a}.user-avatar{width:40px;height:40px;border-radius:10px;background:linear-gradient(135deg,#ffa600,#ff8c00);display:flex;align-items:center;justify-content:center;font-size:16px;color:#fff;flex-shrink:0;box-shadow:0 2px 8px #ffa60033}.user-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.user-name{color:#005249;font-weight:600;font-size:13px;line-height:1.2}.user-role{color:#ffa600;font-size:10px;text-transform:capitalize;font-weight:600}.toggle-mobile-btn{display:none}@media(max-width:1024px){.sidebar-open{width:260px}.sidebar-closed{width:68px}.sidebar-header{padding:0 14px}.logo-icon-wrapper{width:40px;height:40px;min-width:40px}.logo-text h1{font-size:16px}.nav-item{padding:10px 12px;font-size:13px}.submenu-item{padding:9px 10px;font-size:12px}}@media(max-width:768px){.sidebar{position:fixed;top:0;height:100vh;width:280px}.sidebar-open{width:280px;left:0}.sidebar-closed{width:280px;left:-100%}.sidebar-nav{padding:10px 8px}}@media(max-width:640px){.sidebar{top:0;height:100vh;width:100%}.sidebar-open{width:100%;left:0}.sidebar-closed{width:100%;left:-100%}.sidebar-header{height:64px;padding:0 12px}.logo-icon-wrapper{width:38px;height:38px;min-width:38px}.logo-text h1{font-size:15px}.nav-item{padding:10px 12px;font-size:13px}.nav-icon{font-size:16px;min-width:20px}.submenu{margin-left:16px;padding-left:14px}.submenu-item{padding:9px 10px;font-size:12px}.user-avatar{width:36px;height:36px;font-size:14px}.user-name{font-size:12px}.user-role{font-size:9px}}.sidebar-closed .logo-text,.sidebar-closed .nav-label,.sidebar-closed .dropdown-arrow,.sidebar-closed .submenu,.sidebar-closed .user-info{display:none}.sidebar-closed .nav-item{justify-content:center;padding:12px}.sidebar-closed .user-profile{justify-content:center;padding:10px}.sidebar-closed .sidebar-header,.sidebar-closed .logo-container{justify-content:center}.sidebar-closed .toggle-btn{display:none}.nav-item:focus-visible,.submenu-item:focus-visible,.toggle-btn:focus-visible,.user-profile:focus-visible{outline:2px solid #FFA600;outline-offset:2px}@media(prefers-reduced-motion:reduce){*{transition-duration:.1s!important}}.topbar{position:relative;width:100%;height:72px;background:#ffffffbf;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);display:flex;flex-direction:column;z-index:30;border-bottom:1px solid rgba(0,82,73,.08);box-shadow:0 4px 20px #00524905;flex-shrink:0;padding:0;margin:0}.topbar-container{flex:1;padding:0 24px;display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0}.topbar-left{display:flex;align-items:center;gap:16px;flex:1;max-width:500px;margin:0;padding:0}.search-container{position:relative;display:flex;align-items:center;gap:10px;background:#00524908;border:1px solid rgba(0,82,73,.08);padding:0 14px;height:42px;border-radius:99px;transition:all .3s cubic-bezier(.16,1,.3,1);flex:1;max-width:360px;margin:0}.search-container:hover{border-color:#00524926;background:#0052490d}.search-container:focus-within{background:#fff;border-color:var(--brand-primary);box-shadow:0 0 0 4px #00524914;transform:translateY(-1px)}.search-icon{font-size:16px;color:#64748b;flex-shrink:0}.search-container:focus-within .search-icon{color:#005249}.search-input{flex:1;background:transparent;border:none;color:#1e293b;font-size:14px;outline:none;font-family:inherit;font-weight:500;min-width:0}.search-input::placeholder{color:#94a3b8;font-weight:400}.search-clear{background:#e2e8f0;border:none;color:#64748b;cursor:pointer;font-size:11px;padding:5px 8px;border-radius:4px;font-weight:600;transition:all .15s ease;flex-shrink:0}.search-clear:hover{background:#005249;color:#fff}.topbar-right{display:flex;align-items:center;gap:12px;flex-shrink:0}.topbar-action-group{position:relative;display:flex;align-items:center}.topbar-icon-btn{position:relative;background:#00524908;border:1px solid rgba(0,82,73,.06);color:#475569;width:42px;height:42px;min-width:42px;border-radius:12px;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s cubic-bezier(.16,1,.3,1)}.topbar-icon-btn:hover{background:linear-gradient(135deg,var(--brand-primary) 0%,var(--brand-primary-light) 100%);border-color:var(--brand-primary);color:#fff;box-shadow:0 4px 12px #00524926;transform:translateY(-2px)}.icon{display:flex;align-items:center;justify-content:center}.notification-badge{position:absolute;top:-4px;right:-4px;background:#ef4444;color:#fff;font-size:10px;font-weight:700;min-width:18px;height:18px;border-radius:9px;display:flex;align-items:center;justify-content:center;border:2px solid #ffffff;padding:0 4px}.topbar-divider{width:1px;height:28px;background:#0052490f;margin:0 4px;flex-shrink:0}.profile-section{position:relative;flex-shrink:0}.profile-btn{display:flex;align-items:center;gap:10px;background:#00524908;border:1px solid rgba(0,82,73,.06);color:#1e293b;padding:5px 14px 5px 5px;border-radius:99px;cursor:pointer;transition:all .3s cubic-bezier(.16,1,.3,1);font-size:14px;font-weight:500}.profile-btn:hover{background:#fff;border-color:var(--brand-primary);box-shadow:0 4px 12px #00524914;transform:translateY(-2px)}.profile-avatar{width:34px;height:34px;min-width:34px;border-radius:99px;background:linear-gradient(135deg,var(--brand-primary) 0%,var(--brand-primary-light) 100%);display:flex;align-items:center;justify-content:center;font-size:14px;color:#fff;box-shadow:0 2px 6px #00524933}.profile-info{display:flex;flex-direction:column;gap:1px}.profile-name{font-weight:600;font-size:13px;color:#005249;line-height:1.2}.profile-role{font-size:11px;color:#ffa600;font-weight:600;line-height:1.2}.dropdown-arrow{font-size:9px;color:#94a3b8;transition:transform .2s ease}.profile-btn:hover .dropdown-arrow{color:#ffa600}.dropdown-menu{position:absolute;top:100%;min-width:280px;background:#ffffffd9;backdrop-filter:blur(25px);-webkit-backdrop-filter:blur(25px);border:1px solid rgba(0,82,73,.08);border-radius:16px;margin-top:8px;box-shadow:0 16px 48px #0052491f;z-index:1000;animation:premiumScaleIn .3s cubic-bezier(.34,1.56,.64,1);overflow:hidden}@keyframes premiumScaleIn{0%{opacity:0;transform:scale(.92) translateY(-12px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.notifications-dropdown{right:0;min-width:340px}.profile-dropdown{right:0;min-width:280px}.dropdown-header{padding:16px;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center;background:#fafbfc}.dropdown-header h3{margin:0;color:#005249;font-size:15px;font-weight:600}.close-btn{background:#f1f5f9;border:none;color:#64748b;cursor:pointer;font-size:14px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .15s ease}.close-btn:hover{background:#005249;color:#fff}.notifications-list{max-height:360px;overflow-y:auto;padding:8px 0;scrollbar-width:thin;scrollbar-color:#e2e8f0 transparent}.notification-item{padding:12px 16px;border-bottom:1px solid #f1f5f9;display:flex;gap:12px;transition:all .15s ease;cursor:pointer}.notification-item:last-child{border-bottom:none}.notification-item:hover{background:#f8fafc}.notif-icon{font-size:20px;min-width:24px;color:#ffa600}.notif-content{flex:1;min-width:0}.notif-message{margin:0 0 4px;color:#1e293b;font-size:13px;font-weight:500;line-height:1.4}.notif-time{margin:0;color:#94a3b8;font-size:11px}.dropdown-footer{padding:12px 16px;border-top:1px solid #e2e8f0;background:#fafbfc}.view-all-btn{background:#005249;border:none;color:#fff;padding:10px 20px;border-radius:8px;cursor:pointer;font-size:13px;font-weight:600;transition:all .2s ease;width:100%}.view-all-btn:hover{background:#003d3a}.profile-header-content{display:flex;align-items:center;gap:12px;padding:12px 0}.profile-avatar-lg{width:48px;height:48px;border-radius:12px;background:linear-gradient(135deg,#ffa600,#ff8c00);display:flex;align-items:center;justify-content:center;font-size:22px;color:#fff;box-shadow:0 4px 12px #ffa60040}.profile-email{margin:0;color:#94a3b8;font-size:12px}.profile-menu-items{padding:8px 0}.profile-menu-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;background:transparent;border:none;color:#475569;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease;text-align:left}.profile-menu-item:hover{background:#f1f5f9;color:#005249}.menu-icon{font-size:16px;min-width:20px;color:#64748b}.profile-menu-item:hover .menu-icon{color:#005249}.menu-label{flex:1}.topbar-toggle-btn{width:44px;height:44px;border-radius:10px;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;flex-shrink:0;border:none}.topbar-toggle-btn.active{background:linear-gradient(135deg,var(--brand-primary) 0%,var(--brand-primary-light) 100%);color:#fff;box-shadow:0 4px 12px #00524926;border:none}.topbar-toggle-btn.inactive{background:#ffffffe6;color:#64748b;border:1px solid rgba(0,82,73,.08);box-shadow:0 2px 6px #0052490a}.topbar-toggle-btn.inactive:hover{background:#00524908;color:var(--brand-primary);box-shadow:0 4px 12px #00524914;transform:translateY(-2px)}.topbar-toggle-btn span{display:flex;align-items:center;justify-content:center}@media(max-width:1024px){.topbar{height:68px}.topbar-container{padding:0 20px;gap:16px}.search-container{max-width:280px;height:40px}.topbar-icon-btn{width:40px;height:40px;min-width:40px}.profile-info{display:none}.profile-btn{padding:6px}.topbar-toggle-btn{width:40px;height:40px;font-size:18px}}@media(max-width:768px){.topbar{height:64px}.topbar-container{padding:0 16px;gap:12px}.search-container{max-width:200px;height:38px;padding:0 12px}.search-input{font-size:13px}.topbar-icon-btn{width:38px;height:38px;min-width:38px;font-size:16px}.topbar-divider{display:none}.profile-avatar{width:32px;height:32px;min-width:32px;font-size:13px}.dropdown-menu{min-width:260px}.notifications-dropdown{right:-40px;min-width:300px}}@media(max-width:640px){.topbar{height:60px}.topbar-container{padding:0 12px;gap:10px}.search-container{display:none}.topbar-icon-btn{width:36px;height:36px;min-width:36px;font-size:15px;border-radius:8px}.profile-btn{padding:5px;border-radius:8px}.profile-avatar{width:30px;height:30px;min-width:30px;border-radius:6px}.topbar-toggle-btn{width:36px;height:36px;min-width:36px;font-size:16px;border-radius:8px}.notifications-dropdown{right:-80px;min-width:calc(100vw - 24px);max-width:320px}}.topbar-icon-btn:focus-visible,.profile-btn:focus-visible,.topbar-toggle-btn:focus-visible{outline:2px solid #FFA600;outline-offset:2px}.app-main{width:100%;background:transparent;font-family:Outfit,Inter,-apple-system,BlinkMacSystemFont,sans-serif}.content-wrapper{padding:28px;max-width:100%;width:100%;display:flex;flex-direction:column;gap:28px}.dashboard-hero{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px;flex-wrap:wrap;gap:20px}.text-gradient{font-size:32px;font-weight:700;margin:0 0 8px;color:#005249;line-height:1.2;letter-spacing:-.5px}.time-filter-capsule{display:flex;background:#ffffffb3;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(0,82,73,.08);border-radius:99px;padding:4px;gap:4px;box-shadow:0 4px 12px #00524908}.btn-time-filter{padding:8px 16px;background:transparent;border:none;font-size:13px;font-weight:700;color:#64748b;border-radius:99px;cursor:pointer;transition:all .25s cubic-bezier(.16,1,.3,1)}.btn-time-filter:hover{color:#005249;background:#0052490a}.btn-time-filter.active{background:#005249;color:#fff!important;box-shadow:0 4px 10px #00524926}.dashboard-cards .card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px}.dashboard-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:22px;display:flex;flex-direction:column;justify-content:space-between;gap:16px;box-shadow:0 4px 12px #00000004;transition:all .3s cubic-bezier(.16,1,.3,1);cursor:pointer;position:relative;overflow:hidden}.dashboard-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:transparent;transition:background .3s ease}.dashboard-card:hover{border-color:#00524926;box-shadow:0 16px 36px #0052490f;transform:translateY(-3px)}.dashboard-card:hover:before{background:linear-gradient(90deg,#005249,#ffa600)}.card-top-row{display:flex;justify-content:space-between;align-items:center;width:100%}.card-icon-frame{font-size:20px;width:36px;height:36px;background:#f1f5f9;border-radius:10px;display:flex;align-items:center;justify-content:center}.badge-trend{font-size:11px;font-weight:700;padding:4px 8px;border-radius:6px}.badge-trend.positive{background:#d1fae5;color:#065f46}.badge-live-pulse{font-size:11px;font-weight:700;padding:4px 8px;border-radius:6px;background:#10b98114;color:#10b981;display:inline-flex;align-items:center;gap:6px}.pulse-dot{width:6px;height:6px;border-radius:50%;background:#10b981;display:inline-block;animation:pulse-live 1.5s infinite}@keyframes pulse-live{0%{transform:scale(.9);opacity:1}50%{transform:scale(1.3);opacity:.4}to{transform:scale(.9);opacity:1}}.card-center h3{font-size:12px;color:#64748b;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin:0 0 6px}.card-value{font-size:34px;font-weight:800;color:#0f172a;margin:0;line-height:1.1;letter-spacing:-1px}.card-bottom-viz{display:flex;flex-direction:column;gap:8px;border-top:1px solid #f1f5f9;padding-top:12px;width:100%}.sparkline{width:100px;height:20px;align-self:flex-start}.linear-mini-bar{width:100%;height:6px;background:#e2e8f0;border-radius:10px;overflow:hidden}.mini-bar-fill{height:100%;border-radius:10px;transition:width .8s ease}.card-meta{font-size:11.5px;color:#94a3b8;margin:0}.mini-radial-gauge{width:24px;height:24px;transform:rotate(-90deg)}.gauge-bg{stroke:#f1f5f9}.gauge-fill{stroke-dashoffset:0;transition:stroke-dasharray .6s ease}.flat-val-row{display:flex;justify-content:space-between;font-size:11.5px;color:#475569}.analytics-hub-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:28px;align-items:start}.portal-chart-card,.portal-donut-card{background:#fff;border:1px solid #e2e8f0;border-radius:20px;padding:28px;box-shadow:0 4px 16px #00000003;transition:all .3s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column;gap:20px}.portal-chart-card:hover,.portal-donut-card:hover{border-color:#0052491f;box-shadow:0 16px 40px #0052490d}.chart-header-row{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:16px}.chart-header-row h2,.donut-header h2{font-size:18px;font-weight:700;color:#0f172a;margin:0}.chart-legend{display:flex;gap:16px}.legend-item{font-size:12.5px;font-weight:600;color:#475569;display:inline-flex;align-items:center;gap:6px}.legend-dot{width:8px;height:8px;border-radius:50%}.legend-dot.attendance{background:#007d70}.legend-dot.gpa{background:#ffa600}.svg-combined-container{width:100%;margin-top:10px}.main-combined-svg{width:100%;height:auto;overflow:visible}.bar-rect{transition:all .3s ease;cursor:pointer}.bar-rect:hover{fill:#009c8d;filter:drop-shadow(0 2px 8px rgba(0,125,112,.3))}.bar-rect.bar-selected{fill:#005249;filter:drop-shadow(0 4px 12px rgba(0,82,73,.4))}.chart-node-g{cursor:pointer}.node-dot{transition:all .25s cubic-bezier(.175,.885,.32,1.275)}.node-hover-trigger{cursor:pointer}.chart-node-g:hover .node-dot{r:8px;fill:#ffa600;stroke:#fff}.node-dot.node-selected{r:8px;fill:#fff;stroke:#ffa600;stroke-width:3.5px;filter:drop-shadow(0 0 6px rgba(255,166,0,.6))}.axis-lbl{font-size:9px;font-weight:700;fill:#64748b}.chart-drilldown-row{border-top:1px dashed #e2e8f0;padding-top:20px;margin-top:6px}.drilldown-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.drilldown-header h4{font-size:13.5px;color:#1e293b;margin:0;font-weight:700}.badge-tag{font-size:10px;font-weight:700;background:#f1f5f9;color:#475569;padding:4px 8px;border-radius:4px;text-transform:uppercase}.drilldown-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.dd-stat-pill{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:2px;text-align:center}.dd-lbl{font-size:10px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.dd-val{font-size:14px;font-weight:800;color:#0f172a}.dd-val.text-orange{color:#ffa600}.dd-val.text-teal{color:#007d70}.dd-val.text-green{color:#10b981}.donut-interactive-area{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}.svg-donut-wrapper{position:relative;width:140px;height:140px;flex-shrink:0;margin:0 auto}.main-donut-svg{width:100%;height:100%;transform:rotate(-90deg)}.donut-segment{cursor:pointer;transition:stroke-width .25s ease,filter .25s ease}.donut-segment:hover{stroke-width:4px;filter:drop-shadow(0 0 4px rgba(0,0,0,.15))}.segment-hover{stroke-width:4px;filter:drop-shadow(0 0 5px rgba(0,0,0,.2))}.donut-center-lbl{transform:rotate(90deg);transform-origin:18px 18px}.donut-center-title{font-size:6px;font-weight:800;fill:#0f172a}.donut-center-sub{font-size:3px;font-weight:700;fill:#64748b;text-transform:uppercase;letter-spacing:.3px}.donut-legends-stack{display:flex;flex-direction:column;gap:12px;flex-grow:1;min-width:180px}.donut-legend-item{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:transparent;border:1px solid transparent;border-radius:10px;cursor:pointer;transition:all .2s ease}.donut-legend-item:hover,.donut-legend-item.item-active{background:#f8fafc;border-color:#e2e8f0;box-shadow:0 4px 10px #00000005}.legend-left{display:flex;align-items:flex-start;gap:10px}.legend-indicator-dot{width:10px;height:10px;border-radius:50%;margin-top:4px;flex-shrink:0}.legend-info{display:flex;flex-direction:column}.legend-tier{font-size:13px;font-weight:700;color:#0f172a}.legend-desc{font-size:11px;color:#64748b;margin-top:1px}.legend-count{font-size:13.5px;font-weight:800;color:#1e293b}.dashboard-gateways-panel{display:flex;flex-direction:column;gap:20px}.dashboard-gateways-panel .section-header{display:flex;flex-direction:column;gap:4px}.dashboard-gateways-panel .section-header h2{font-size:22px;font-weight:700;color:#005249;margin:0}.gateways-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.gateway-card{background:#fff;border:1px solid #e2e8f0;border-radius:20px;padding:26px;display:flex;flex-direction:column;justify-content:space-between;gap:20px;text-decoration:none;box-shadow:0 4px 12px #00000004;transition:all .35s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden}.gateway-card:hover{transform:translateY(-4px);box-shadow:0 20px 48px #00524914;border-color:#00524933}.gateway-card:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:6px;transition:all .3s ease}.gateway-card.accent-teal:after{background:#005249}.gateway-card.accent-orange:after{background:#ffa600}.gateway-card.accent-teal-dark:after{background:#003d3a}.gateway-header{display:flex;justify-content:space-between;align-items:center}.gate-icon-wrapper{font-size:28px;width:52px;height:52px;background:#f1f5f9;border-radius:14px;display:flex;align-items:center;justify-content:center;transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.gateway-card:hover .gate-icon-wrapper{transform:scale(1.1) rotate(4deg)}.gate-tag{font-size:11px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.gateway-body h3{font-size:18px;font-weight:700;color:#0f172a;margin:0 0 8px}.gateway-body p{font-size:13.5px;color:#566a7f;margin:0;line-height:1.5}.gateway-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #f1f5f9;padding-top:16px;width:100%}.live-stat-pill{font-size:11.5px;font-weight:700;color:#005249;background:#e6f4f1;padding:4px 10px;border-radius:20px}.live-stat-pill.orange{color:#e69500;background:#ffa60014}.gate-action-arrow{font-size:13px;font-weight:700;color:#005249;transition:transform .25s ease}.gateway-card:hover .gate-action-arrow{transform:translate(4px);color:#ffa600}.notifications-feed-desk{width:100%}.feed-card{display:flex;flex-direction:column;gap:16px}.feeds-stack{display:flex;flex-direction:column;gap:12px}.feed-item{display:flex;justify-content:space-between;align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:16px 20px;cursor:pointer;transition:all .25s cubic-bezier(.16,1,.3,1);gap:16px}.feed-item:hover{border-color:#0052491f;box-shadow:0 4px 12px #00524905;transform:translateY(-1px)}.feed-left-col{display:flex;align-items:flex-start;gap:14px}.feed-status-dot{font-size:11px;margin-top:4px}.feed-info .feed-status-dot{color:#3b82f6}.feed-success .feed-status-dot{color:#10b981}.feed-warning .feed-status-dot{color:#f59e0b}.feed-content-block{display:flex;flex-direction:column}.feed-title{font-size:13.5px;font-weight:700;color:#0f172a}.feed-msg{font-size:12.5px;color:#64748b;margin:2px 0 0;line-height:1.4}.feed-time{font-size:11px;font-weight:600;color:#94a3b8;white-space:nowrap}.active-feed{background:#f8fafc;border-color:#00524933}@media(max-width:1150px){.analytics-hub-grid{grid-template-columns:1fr}.gateways-grid{grid-template-columns:1fr 1fr}}@media(max-width:768px){.content-wrapper{padding:20px;gap:20px}.text-gradient{font-size:26px}.dashboard-cards .card-grid{grid-template-columns:1fr 1fr;gap:16px}.gateways-grid{grid-template-columns:1fr}.donut-interactive-area{justify-content:center}}@media(max-width:540px){.dashboard-cards .card-grid{grid-template-columns:1fr;gap:12px}.drilldown-stats-grid{grid-template-columns:1fr 1fr}.btn-time-filter{padding:6px 12px;font-size:12px}}.state-page{width:100%;max-width:100%;padding:28px;background:transparent;min-height:100%}.state-header{margin-bottom:28px;padding-bottom:0;border-bottom:none}.state-title{font-size:32px;font-weight:700;margin:0 0 8px;color:#005249;letter-spacing:-.5px;line-height:1.2}.state-subtitle{margin:0;font-size:15px;color:#64748b;line-height:1.5}.district-page{width:100%;max-width:100%;padding:28px;background:transparent;min-height:100%}.district-header{margin-bottom:28px;padding-bottom:0;border-bottom:none}.district-title{font-size:32px;font-weight:700;margin:0 0 8px;color:#005249;letter-spacing:-.5px;line-height:1.2}.district-subtitle{margin:0;font-size:15px;color:#64748b;line-height:1.5}.city-page{width:100%;max-width:100%;padding:28px;background:transparent;min-height:100%}.city-header{margin-bottom:28px;padding-bottom:0;border-bottom:none}.city-title{font-size:32px;font-weight:700;margin:0 0 8px;color:#005249;letter-spacing:-.5px;line-height:1.2}.city-subtitle{margin:0;font-size:15px;color:#64748b;line-height:1.5}.certificate-page{width:100%;max-width:100%;padding:28px;background:transparent;min-height:100%}.certificate-header{margin-bottom:28px;padding-bottom:0;border-bottom:none}.certificate-title{font-size:32px;font-weight:700;margin:0 0 8px;color:#005249;letter-spacing:-.5px;line-height:1.2}.certificate-subtitle{margin:0;font-size:15px;color:#64748b;line-height:1.5}.religion-page{width:100%;max-width:100%;padding:28px;background:transparent;min-height:100%}.religion-header{margin-bottom:28px;padding-bottom:0;border-bottom:none}.religion-title{font-size:32px;font-weight:700;margin:0 0 8px;color:#005249;letter-spacing:-.5px;line-height:1.2}.religion-subtitle{margin:0;font-size:15px;color:#64748b;line-height:1.5}.caste-page{width:100%;max-width:100%;padding:28px;background:transparent;min-height:100%}.caste-header{margin-bottom:28px;padding-bottom:0;border-bottom:none}.caste-title{font-size:32px;font-weight:700;margin:0 0 8px;color:#005249;letter-spacing:-.5px;line-height:1.2}.caste-subtitle{margin:0;font-size:15px;color:#64748b;line-height:1.5}.qualification-page{width:100%;max-width:100%;padding:28px;background:transparent;min-height:100%}.qualification-header{margin-bottom:28px;padding-bottom:0;border-bottom:none}.qualification-title{font-size:32px;font-weight:700;margin:0 0 8px;color:#005249;letter-spacing:-.5px;line-height:1.2}.qualification-subtitle{margin:0;font-size:15px;color:#64748b;line-height:1.5}.occupation-page{width:100%;max-width:100%;padding:28px;background:transparent;min-height:100%}.occupation-header{margin-bottom:28px;padding-bottom:0;border-bottom:none}.occupation-title{font-size:32px;font-weight:700;margin:0 0 8px;color:#005249;letter-spacing:-.5px;line-height:1.2}.occupation-subtitle{margin:0;font-size:15px;color:#64748b;line-height:1.5}.class-page{width:100%;max-width:100%;padding:28px;background:transparent;min-height:100%}.class-header{margin-bottom:28px;padding-bottom:0;border-bottom:none}.class-title{font-size:32px;font-weight:700;margin:0 0 8px;color:#005249;letter-spacing:-.5px;line-height:1.2}.class-subtitle{margin:0;font-size:15px;color:#64748b;line-height:1.5}.classsection-page{width:100%;max-width:100%;padding:28px;background:transparent;min-height:100%}.classsection-header{margin-bottom:28px;padding-bottom:0;border-bottom:none}.classsection-title{font-size:32px;font-weight:700;margin:0 0 8px;color:#005249;letter-spacing:-.5px;line-height:1.2}.classsection-subtitle{margin:0;font-size:15px;color:#64748b;line-height:1.5}.schoolhouse-page{width:100%;max-width:100%;padding:28px;background:transparent;min-height:100%}.schoolhouse-header{margin-bottom:28px;padding-bottom:0;border-bottom:none}.schoolhouse-title{font-size:32px;font-weight:700;margin:0 0 8px;color:#005249;letter-spacing:-.5px;line-height:1.2}.schoolhouse-subtitle{margin:0;font-size:15px;color:#64748b;line-height:1.5}.classgroup-page{width:100%;max-width:100%;padding:28px;background:transparent;min-height:100%}.classgroup-header{margin-bottom:28px;padding-bottom:0;border-bottom:none}.classgroup-title{font-size:32px;font-weight:700;margin:0 0 8px;color:#005249;letter-spacing:-.5px;line-height:1.2}.classgroup-subtitle{margin:0;font-size:15px;color:#64748b;line-height:1.5}.document-page{width:100%;max-width:100%;padding:28px;background:transparent;min-height:100%}.document-header{margin-bottom:28px;padding-bottom:0;border-bottom:none}.document-title{font-size:32px;font-weight:700;margin:0 0 8px;color:#005249;letter-spacing:-.5px;line-height:1.2}.document-subtitle{margin:0;font-size:15px;color:#64748b;line-height:1.5}.educationboard-page{width:100%;max-width:100%;padding:28px;background:transparent;min-height:100%}.educationboard-header{margin-bottom:28px;padding-bottom:0;border-bottom:none}.educationboard-title{font-size:32px;font-weight:700;margin:0 0 8px;color:#005249;letter-spacing:-.5px;line-height:1.2}.educationboard-subtitle{margin:0;font-size:15px;color:#64748b;line-height:1.5}.activity-page{width:100%;max-width:100%;padding:28px;background:transparent;min-height:100%}.activity-header{margin-bottom:28px;padding-bottom:0;border-bottom:none}.activity-title{font-size:32px;font-weight:700;margin:0 0 8px;color:#005249;letter-spacing:-.5px;line-height:1.2}.activity-subtitle{margin:0;font-size:15px;color:#64748b;line-height:1.5}.scholartype-page{width:100%;max-width:100%;padding:28px;background:transparent;min-height:100%}.scholartype-header{margin-bottom:28px;padding-bottom:0;border-bottom:none}.scholartype-title{font-size:32px;font-weight:700;margin:0 0 8px;color:#005249;letter-spacing:-.5px;line-height:1.2}.scholartype-subtitle{margin:0;font-size:15px;color:#64748b;line-height:1.5}.login-page-container{display:flex;justify-content:center;align-items:center;min-height:100vh;width:100%;position:relative;background:radial-gradient(circle at 10% 20%,#f4fbf7,#eaf5ee);overflow:hidden;font-family:Outfit,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;padding:2rem 1.5rem}.ambient-blob{position:absolute;border-radius:50%;filter:blur(120px);opacity:.12;mix-blend-mode:multiply;pointer-events:none;z-index:0}.blob-1{width:500px;height:500px;background:radial-gradient(circle,#00524940,#0000 70%);top:-10%;left:-5%;animation:float-blob-1 25s infinite alternate ease-in-out}.blob-2{width:600px;height:600px;background:radial-gradient(circle,#10b98133,#0000 70%);bottom:-15%;right:-5%;animation:float-blob-2 30s infinite alternate ease-in-out}.blob-3{width:400px;height:400px;background:radial-gradient(circle,#34d39933,#0000 70%);top:40%;left:50%;transform:translate(-50%,-50%);animation:float-blob-3 20s infinite alternate ease-in-out}@keyframes float-blob-1{0%{transform:translate(0) scale(1)}to{transform:translate(80px,50px) scale(1.1)}}@keyframes float-blob-2{0%{transform:translate(0) scale(1.1)}to{transform:translate(-100px,-60px) scale(.9)}}@keyframes float-blob-3{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-40%,-30%) rotate(180deg)}}.login-card-wrapper{display:grid;grid-template-columns:1.1fr 1fr;width:100%;max-width:1100px;min-height:650px;background:#ffffffbf;border:1px solid rgba(0,82,73,.08);border-radius:24px;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 20px 50px #00524914;overflow:hidden;z-index:10}.login-branding-panel{position:relative;background:linear-gradient(135deg,#e6f4f1,#ccece6);padding:3rem;display:flex;flex-direction:column;justify-content:space-between;border-right:1px solid rgba(0,82,73,.08)}.branding-overlay{position:absolute;inset:0;background:radial-gradient(circle at 0% 0%,rgba(16,185,129,.1) 0%,transparent 60%);pointer-events:none}.branding-content{display:flex;flex-direction:column;height:100%;justify-content:space-between;position:relative;z-index:2}.branding-logo{display:flex;align-items:center;gap:.75rem}.branding-logo .logo-icon{font-size:2rem;filter:drop-shadow(0 0 8px rgba(0,82,73,.15))}.branding-logo .logo-image{height:2.25rem;width:auto;object-fit:contain;filter:drop-shadow(0 2px 8px rgba(0,82,73,.08))}.branding-logo .logo-text{font-size:1.5rem;font-weight:700;color:#005249;letter-spacing:-.5px}.branding-text-group{margin-top:1.5rem}.branding-title{font-size:2.25rem;font-weight:800;color:#005249;line-height:1.2;letter-spacing:-1px}.branding-subtitle{color:#004d40;opacity:.8;font-size:1rem;line-height:1.6;margin-top:1rem}.branding-features{display:flex;flex-direction:column;gap:1.5rem;margin:2.5rem 0}.feature-item{display:flex;align-items:flex-start;gap:1rem}.feature-icon{font-size:1.25rem;background:#fff9;padding:.5rem;border-radius:10px;border:1px solid rgba(0,82,73,.1);box-shadow:0 4px 12px #0052490d}.feature-item h4{color:#004d40;font-size:.95rem;font-weight:600;margin:0 0 .25rem}.feature-item p{color:#374151;font-size:.85rem;margin:0;line-height:1.4}.branding-footer{color:#005249;opacity:.6;font-size:.8rem}.login-form-panel{padding:3.5rem 3rem;display:flex;flex-direction:column;justify-content:space-between;background:#ffffffe6}.form-panel-header h2{font-size:2rem;font-weight:700;color:#111827;margin:0 0 .5rem;letter-spacing:-.5px}.form-panel-header p{color:#4b5563;font-size:.95rem;margin:0}.login-alert{display:flex;align-items:center;gap:.75rem;padding:.85rem 1rem;border-radius:12px;font-size:.88rem;margin-top:1.5rem}.login-alert.error{background:#fef2f2;border:1px solid #fee2e2;color:#991b1b}.login-alert.success{background:#ecfdf5;border:1px solid #d1fae5;color:#065f46}.alert-icon{font-size:1.1rem}.login-form{display:flex;flex-direction:column;gap:1.25rem;margin-top:2rem}.form-group-custom{display:flex;flex-direction:column;gap:.5rem;text-align:left}.form-label-custom{color:#374151;font-size:.88rem;font-weight:500}.input-with-icon{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:1rem;font-size:1.1rem;color:#6b7280;pointer-events:none}.custom-input{width:100%;padding:.85rem 1rem .85rem 2.75rem;background:#fff;border:1px solid #d1d5db;border-radius:12px;color:#1f2937;font-size:.95rem;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:inset 0 1px 2px #0000000d}.custom-input:focus{outline:none;background:#fff;border-color:#10b981;box-shadow:0 0 0 4px #10b9811a,inset 0 1px 2px #00000005}.custom-input.has-error{border-color:#ef4444;background:#fef2f2}.custom-input.has-error:focus{box-shadow:0 0 0 4px #ef44441a}.password-toggle-btn{position:absolute;right:1rem;background:none;border:none;color:#6b7280;cursor:pointer;font-size:1.1rem;display:flex;align-items:center;justify-content:center;transition:color .2s ease;padding:.25rem}.password-toggle-btn:hover{color:#111827}.error-text-custom{color:#ef4444;font-size:.78rem;margin-top:.25rem}.form-row-utils{display:flex;justify-content:space-between;align-items:center;font-size:.85rem;margin-top:.25rem}.checkbox-container-custom{display:flex;align-items:center;position:relative;padding-left:1.75rem;cursor:pointer;-webkit-user-select:none;user-select:none;color:#4b5563}.checkbox-container-custom input{position:absolute;opacity:0;cursor:pointer;height:0;width:0}.checkmark-custom{position:absolute;top:50%;left:0;transform:translateY(-50%);height:18px;width:18px;background-color:#f3f4f6;border:1px solid #d1d5db;border-radius:5px;transition:all .2s cubic-bezier(.4,0,.2,1)}.checkbox-container-custom:hover input~.checkmark-custom{background-color:#e5e7eb}.checkbox-container-custom input:checked~.checkmark-custom{background-color:#10b981;border-color:#10b981;box-shadow:0 2px 8px #10b98166}.checkmark-custom:after{content:"";position:absolute;display:none}.checkbox-container-custom input:checked~.checkmark-custom:after{display:block}.checkbox-container-custom .checkmark-custom:after{left:5px;top:2px;width:5px;height:9px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}.forgot-password-link{color:#059669;text-decoration:none;font-weight:500;transition:color .2s ease}.forgot-password-link:hover{color:#047857}.login-submit-btn{background:linear-gradient(135deg,#005249,#003d3a);color:#fff;padding:.95rem;border:none;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;gap:.75rem;margin-top:1rem;box-shadow:0 4px 15px #00524926}.login-submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #00524940;background:linear-gradient(135deg,#006156,#005249)}.login-submit-btn:active:not(:disabled){transform:translateY(0)}.login-submit-btn:disabled{opacity:.7;cursor:not-allowed}.loader-spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin-loader .8s infinite linear}@keyframes spin-loader{to{transform:rotate(360deg)}}.login-submit-btn.btn-success{background:linear-gradient(135deg,#10b981,#059669)!important;box-shadow:0 8px 25px #10b98173!important}.form-panel-footer{color:#6b7280;font-size:.78rem;margin-top:2rem;text-align:center}.form-panel-footer a{color:#005249;text-decoration:underline;transition:color .2s ease}.form-panel-footer a:hover{color:#003d3a}@media(max-width:1024px){.login-card-wrapper{grid-template-columns:1fr;max-width:550px;min-height:auto}.login-branding-panel{display:none}.login-form-panel{padding:3.5rem 2.5rem}}@media(max-width:480px){.login-page-container{padding:1rem}.login-form-panel{padding:2.5rem 1.5rem}}.teacher-main{width:100%;background:transparent;font-family:Outfit,Inter,-apple-system,BlinkMacSystemFont,sans-serif}.teacher-wrapper{padding:28px;max-width:100%;width:100%;display:flex;flex-direction:column;gap:28px}.teacher-hero{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.teacher-title-gradient{font-size:32px;font-weight:700;margin:0 0 8px;color:#005249;line-height:1.2;letter-spacing:-.5px}.teacher-tag{display:inline-flex;align-items:center;background:#e6f4f1;border:1px solid rgba(0,82,73,.15);color:#005249;padding:8px 16px;border-radius:50px;font-size:13px;font-weight:600}.focus-tab-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start}.focus-left-col,.focus-right-col{display:flex;flex-direction:column;gap:28px}.analytics-tab-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:28px;align-items:start}.analytics-left-col,.analytics-right-col{display:flex;flex-direction:column;gap:28px}.syllabus-tab-grid{max-width:800px;margin:0 auto}.teacher-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:28px;box-shadow:0 1px 3px #0000000a}.teacher-card h2{font-size:18px;font-weight:700;color:#0f172a;margin:0 0 4px;letter-spacing:-.3px}.punch-card{position:relative;overflow:hidden}.punch-header-row{display:flex;align-items:center;gap:16px;border-bottom:1px solid #f1f5f9;padding-bottom:16px;margin-bottom:16px}.punch-status-indicator{width:16px;height:16px;border-radius:50%;flex-shrink:0;position:relative}.punch-status-indicator.status-in{background:#10b981;box-shadow:0 0 0 4px #10b98140;animation:pulse-active 2s infinite}.punch-status-indicator.status-out{background:#cbd5e1;box-shadow:0 0 0 4px #cbd5e133}@keyframes pulse-active{0%{transform:scale(.95);box-shadow:0 0 #10b98180}70%{transform:scale(1);box-shadow:0 0 0 6px #10b98100}to{transform:scale(.95);box-shadow:0 0 #10b98100}}.punch-card-body{display:flex;flex-direction:column;gap:20px}.punch-display{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:16px;display:flex;justify-content:space-between;align-items:center}.status-badge-txt{font-size:15px;font-weight:700;color:#1e293b}.time-badge-txt{font-size:13.5px;font-weight:600;color:#005249;background:#e6f4f1;padding:4px 12px;border-radius:6px}.punch-action-btn-large{font-size:14px;font-weight:700;padding:14px 24px;border-radius:12px;cursor:pointer;border:none;transition:all .2s cubic-bezier(.4,0,.2,1);text-transform:uppercase;letter-spacing:.5px;width:100%}.btn-punch-in{background:#005249;color:#fff;box-shadow:0 4px 12px #00524933}.btn-punch-in:hover{background:#007d70;box-shadow:0 6px 18px #0052494d;transform:translateY(-1.5px)}.btn-punch-out{background:#ef444414;border:1px solid rgba(239,68,68,.15);color:#ef4444}.btn-punch-out:hover{background:#ef4444;color:#fff;box-shadow:0 6px 18px #ef444440;transform:translateY(-1.5px)}.svg-chart-container{width:100%;margin:20px 0;background:#fafbfc;border:1px solid #f1f5f9;border-radius:12px;padding:12px}.chart-node{fill:#fff;stroke:#005249;stroke-width:2.5px;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1)}.chart-node:hover{fill:#005249;stroke:#fff;stroke-width:3px;transform:scale(1.3);transform-origin:center}.node-selected{fill:#ffa600!important;stroke:#005249!important;stroke-width:3.5px!important;filter:drop-shadow(0 2px 8px rgba(255,166,0,.4))}.chart-axis-label{font-size:11px;font-weight:600;fill:#64748b;font-family:inherit}.selected-month-details{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:18px;margin-top:16px}.details-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e2e8f0;padding-bottom:12px;margin-bottom:12px}.details-header h4{font-size:14.5px;font-weight:700;color:#1e293b;margin:0}.details-tag{font-size:11px;font-weight:700;background:#e2e8f0;color:#475569;padding:4px 10px;border-radius:6px}.details-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.detail-item{display:flex;flex-direction:column;gap:4px}.item-lbl{font-size:11.5px;color:#64748b;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.item-val{font-size:18px;font-weight:700;color:#334155}.text-red{color:#ef4444}.grade-spectrum-container{display:flex;flex-direction:column;gap:16px}.spectrum-item{display:flex;flex-direction:column;gap:6px}.spectrum-labels{display:flex;justify-content:space-between;font-size:13px;color:#475569}.spectrum-tier-name{font-weight:600;color:#334155}.spectrum-tier-count{font-size:12px;color:#64748b}.spectrum-progress-track{height:8px;background:#f1f5f9;border-radius:100px;overflow:hidden;border:1px solid #e2e8f0}.spectrum-progress-fill{height:100%;border-radius:100px;transition:width .6s cubic-bezier(.4,0,.2,1)}.attendance-bar-chart-container{height:220px;background:#fafbfc;border:1px solid #f1f5f9;border-radius:12px;margin-top:16px;display:flex;align-items:flex-end;justify-content:center;padding:24px 12px 12px}.bars-flex{display:flex;justify-content:space-between;width:100%;max-width:320px;height:100%;align-items:flex-end}.bar-column-wrapper{display:flex;flex-direction:column;align-items:center;gap:8px;position:relative;cursor:pointer;flex:1}.bar-track-vertical{width:18px;height:120px;background:#cbd5e1;border-radius:100px;display:flex;align-items:flex-end;overflow:hidden;transition:background-color .2s ease}.bar-column-wrapper:hover .bar-track-vertical{background:#e2e8f0}.bar-fill-vertical{width:100%;background:linear-gradient(to top,#005249,#007d70);border-radius:100px;transition:height .6s cubic-bezier(.4,0,.2,1),background .2s ease}.bar-column-wrapper:hover .bar-fill-vertical{background:linear-gradient(to top,#007d70,#ffa600)}.bar-label{font-size:12px;font-weight:600;color:#64748b}.bar-tooltip{position:absolute;bottom:145px;background:#005249;color:#fff;padding:6px 12px;border-radius:6px;box-shadow:0 4px 12px #00524933;pointer-events:none;opacity:0;transform:translateY(4px);transition:all .2s cubic-bezier(.4,0,.2,1);white-space:nowrap;text-align:center;z-index:10}.bar-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:#005249}.bar-tooltip p{margin:0;font-size:11.5px;font-weight:700}.bar-tooltip span{font-size:9.5px;opacity:.8;display:block}.tooltip-visible{opacity:1!important;transform:translateY(0)!important}.live-status-tag{background:#ef444414;color:#ef4444;font-size:11.5px;font-weight:700;padding:4px 10px;border-radius:100px;border:1px solid rgba(239,68,68,.15);display:inline-flex;align-items:center;gap:6px}.pulse-fast{animation:flash 1s infinite alternate}@keyframes flash{0%{opacity:.5}to{opacity:1}}.live-classes-stack{display:flex;flex-direction:column;gap:20px;margin-top:16px}.live-period-box{border-radius:14px;padding:20px;border:1px solid #e2e8f0;display:flex;flex-direction:column;gap:14px}.active-box{background:#fffdf9;border-color:#ffa60033}.upcoming-box{background:#f8fafc;border-color:#e2e8f0}.box-header{display:flex;justify-content:space-between;align-items:center}.period-badge-live{font-size:10.5px;font-weight:800;background:#ffa600;color:#fff;padding:4px 10px;border-radius:6px;text-transform:uppercase}.period-badge-upcoming{font-size:10.5px;font-weight:800;background:#00524914;color:#005249;padding:4px 10px;border-radius:6px;text-transform:uppercase}.room-badge{font-size:11.5px;font-weight:700;color:#475569;background:#fff;border:1px solid #e2e8f0;padding:3px 8px;border-radius:6px}.box-body h3{font-size:16px;font-weight:700;color:#1e293b;margin:0 0 6px}.time-block{font-size:12.5px;color:#475569;font-weight:600;margin:0 0 12px}.lecture-progress-container{background:#fff;border:1px solid rgba(0,0,0,.04);border-radius:10px;padding:12px;display:flex;flex-direction:column;gap:8px}.lecture-progress-container .lbl-row{display:flex;justify-content:space-between;font-size:11.5px;font-weight:600;color:#64748b}.progress-bar-track{height:6px;background:#e2e8f0;border-radius:100px;overflow:hidden}.progress-bar-fill{height:100%;border-radius:100px}.progress-orange{background:linear-gradient(to right,#007d70,#ffa600)}.remaining-alert{font-size:11px;font-weight:700;color:#b45309}.upcoming-lesson-topic{font-size:13px;color:#64748b;margin:0}.box-footer{display:flex;gap:10px;border-top:1px dashed #e2e8f0;padding-top:14px}.active-box .box-footer{border-top-color:#ffa60026}.btn-launch-class{background:#005249;color:#fff;border:none;font-size:12px;font-weight:700;padding:8px 16px;border-radius:8px;cursor:pointer;width:100%;text-align:center;transition:all .25s ease}.btn-launch-class:hover{background:#007d70;box-shadow:0 4px 12px #00524933}.btn-secondary-outline{flex:1;background:#fff;border:1px solid #cbd5e1;color:#475569;font-size:11.5px;font-weight:600;padding:8px 10px;border-radius:8px;cursor:pointer;transition:all .2s ease}.btn-secondary-outline:hover{border-color:#005249;color:#005249;background:#e6f4f1}.syllabus-header-row{border-bottom:1px solid #f1f5f9;padding-bottom:12px;margin-bottom:16px}.course-toggles{display:flex;gap:8px;margin:16px 0 20px;background:#f1f5f9;padding:4px;border-radius:8px}.course-toggle-btn{flex:1;border:none;background:transparent;padding:8px 12px;font-size:12px;font-weight:700;color:#64748b;border-radius:6px;cursor:pointer;transition:all .2s ease}.course-toggle-btn:hover{color:#334155}.course-toggle-btn.active{background:#fff;color:var(--btn-brand-color, #005249);box-shadow:0 2px 6px #0000000d}.radial-gauge-wrapper{display:flex;align-items:center;gap:24px;background:#fafbfc;border:1px solid #f1f5f9;border-radius:12px;padding:24px;margin-bottom:24px}.radial-svg-box{width:96px;height:96px;position:relative;flex-shrink:0}.radial-progress-svg{width:100%;height:100%;transform:rotate(-90deg)}.radial-bg-circle{fill:none;stroke:#e2e8f0;stroke-width:8}.radial-fill-circle{fill:none;stroke-width:8;stroke-linecap:round;transition:stroke-dashoffset .6s cubic-bezier(.4,0,.2,1),stroke .3s ease}.radial-inner-content{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;line-height:1}.radial-pct{font-size:20px;font-weight:800;color:#1e293b}.radial-lbl{font-size:9.5px;text-transform:uppercase;color:#64748b;font-weight:700;margin-top:2px}.gauge-insights-card{display:flex;flex-direction:column;gap:8px;flex:1}.gauge-insights-card h3{font-size:16px;font-weight:700;color:#1e293b;margin:0}.insight-milestone{font-size:13px;color:#475569;margin:0}.insight-milestone strong{color:#005249;font-weight:600}.gauge-meters-stack{display:flex;flex-direction:column;gap:8px;margin-top:4px}.gauge-sub-meter{display:flex;flex-direction:column;gap:4px}.gauge-sub-meter span{font-size:11px;color:#64748b;font-weight:500}.track-linear{height:4px;background:#e2e8f0;border-radius:100px;overflow:hidden}.fill-linear{height:100%;border-radius:100px}.l-green{background:#10b981}.l-orange{background:#ffa600}.syllabus-comparative-grid{display:flex;flex-direction:column;gap:12px}.comp-card{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#fafbfc;border:1px solid #f1f5f9;border-radius:12px;cursor:pointer;transition:all .2s ease}.comp-card:hover{background:#fff;border-color:#0052491f;box-shadow:0 4px 12px #00524908}.active-comp{background:#fff;border-color:#00524933;box-shadow:0 4px 12px #0052490a}.comp-info h4{font-size:14px;font-weight:700;color:#1e293b;margin:0 0 2px}.comp-info span{font-size:12px;color:#64748b}.comp-value{font-size:18px;font-weight:800}.teacher-attendance-wrapper{display:flex;flex-direction:column;gap:24px;margin-top:16px}.dots-row{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;background:#fafbfc;border:1px solid #f1f5f9;border-radius:12px;padding:16px;text-align:center}.day-dot-item{display:flex;flex-direction:column;align-items:center;gap:6px}.dot-status{width:10px;height:10px;border-radius:50%;background:#cbd5e1}.dot-status.dot-present{background:#10b981;box-shadow:0 0 0 2.5px #10b98126}.dot-status.dot-active{background:#10b981;box-shadow:0 0 0 3px #10b9814d;animation:pulse-dot 1.5s infinite}.dot-status.dot-offline{background:#ef4444;box-shadow:0 0 0 2.5px #ef444426}.dot-status.dot-pending{background:#cbd5e1}.dot-day{font-size:11.5px;font-weight:700;color:#475569}.dot-time{font-size:10.5px;font-weight:600;color:#64748b}.dot-lbl{font-size:9px;font-weight:700;color:#94a3b8;text-transform:uppercase}.dot-active~.dot-lbl{color:#10b981}.teacher-monthly-gauge-box{display:flex;justify-content:space-between;align-items:center;background:#e6f4f1;border:1px solid rgba(0,82,73,.12);border-radius:12px;padding:16px;transition:all .2s ease}.teacher-monthly-gauge-box:hover{box-shadow:0 6px 18px #0052490d}.gauge-desc h4{font-size:14.5px;font-weight:700;color:#005249;margin:0 0 4px}.gauge-desc p{font-size:12.5px;color:#334155;margin:0 0 4px}.gauge-remark{font-size:11px;font-weight:700;color:#007d70;text-transform:uppercase}.small-radial-box{width:50px;height:50px;flex-shrink:0}.circular-chart{display:block;margin:0 auto;max-width:100%;max-height:100%}.circle-bg{fill:none;stroke:#00524914;stroke-width:3.8}.circle{fill:none;stroke:#005249;stroke-width:3.8;stroke-linecap:round}.percentage{fill:#005249;font-family:inherit;font-size:9px;font-weight:700;text-anchor:middle}@media(max-width:1150px){.focus-tab-grid,.analytics-tab-grid{grid-template-columns:1fr}}@media(max-width:768px){.teacher-wrapper{padding:20px;gap:20px}.teacher-title-gradient{font-size:26px}.dashboard-tab-bar{flex-direction:column;padding:4px}.tab-btn{padding:8px 12px}.teacher-stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.teacher-stat-card{padding:18px}.stat-value{font-size:24px}.teacher-card{padding:20px}.radial-gauge-wrapper{flex-direction:column;align-items:center;text-align:center}}@media(max-width:480px){.teacher-hero{flex-direction:column;align-items:flex-start;gap:12px}.card-header-actions{flex-direction:column;gap:12px}.dots-row{grid-template-columns:1fr;gap:12px}}.attendance-desk-card{display:flex;flex-direction:column;gap:20px}.desk-header{margin-bottom:4px}.punch-mini-console{display:flex;justify-content:space-between;align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:14px 18px;transition:all .2s ease}.punch-status-block{display:flex;align-items:center;gap:12px}.punch-dot-indicator{width:10px;height:10px;border-radius:50%;position:relative}.punch-dot-indicator.status-in{background:#10b981;box-shadow:0 0 0 3px #10b98133}.punch-dot-indicator.status-out{background:#cbd5e1}.punch-status-text{display:flex;flex-direction:column}.punch-status-lbl{font-size:13.5px;font-weight:700;color:#1e293b}.punch-time-lbl{font-size:11.5px;color:#64748b;margin-top:1px}.punch-mini-btn{font-size:12px;font-weight:700;padding:8px 16px;border-radius:8px;border:none;cursor:pointer;transition:all .2s ease}.btn-punch-mini-in{background:#005249;color:#fff}.btn-punch-mini-in:hover{background:#007d70;transform:translateY(-1px)}.btn-punch-mini-out{background:#ef444414;border:1px solid rgba(239,68,68,.15);color:#ef4444}.btn-punch-mini-out:hover{background:#ef4444;color:#fff;transform:translateY(-1px)}.divider-line{height:1px;background:#f1f5f9;width:100%}.weekly-attendance-row{display:flex;flex-direction:column;gap:12px}.section-small-title{font-size:13px;font-weight:700;color:#475569;margin:0;text-transform:uppercase;letter-spacing:.5px}.mini-dots-row{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:12px;text-align:center}.mini-dot-item{display:flex;flex-direction:column;align-items:center;gap:4px}.mini-dot-day{font-size:11px;font-weight:700;color:#64748b}.mini-dot{width:8px;height:8px;border-radius:50%;background:#cbd5e1}.mini-dot.dot-present,.mini-dot.dot-active{background:#10b981;box-shadow:0 0 0 2px #10b98126}.mini-dot.dot-offline{background:#ef4444;box-shadow:0 0 0 2px #ef444426}.mini-dot-time{font-size:10px;color:#94a3b8;font-weight:500}.details-flat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:14px;margin-top:16px}.flat-lbl{font-size:10px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.flat-val{font-size:15px;font-weight:800;color:#1e293b}.syllabus-desk-card{display:flex;flex-direction:column;gap:20px}.syllabus-list-stack{display:flex;flex-direction:column;gap:14px}.syllabus-row-item{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:16px 20px;cursor:pointer;transition:all .25s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column;gap:12px}.syllabus-row-item:hover{border-color:#00524933;box-shadow:0 6px 18px #0052490a}.active-row{border-color:#0052494d!important;background:#fafbfc;box-shadow:0 6px 18px #0052490d!important}.syllabus-row-main{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}.course-info-block{display:flex;align-items:center;gap:12px}.course-color-pill{width:4px;height:36px;border-radius:4px;flex-shrink:0}.course-info-block h3{font-size:15px;font-weight:700;color:#1e293b;margin:0}.active-chapter-txt{font-size:12px;color:#64748b;margin:2px 0 0}.course-progress-block{display:flex;flex-direction:column;align-items:flex-end;gap:6px;width:180px}.progress-pct{font-size:12px;font-weight:700}.linear-progress-track{width:100%;height:6px;background:#e2e8f0;border-radius:10px;overflow:hidden}.syllabus-row-expanded{border-top:1px dashed #e2e8f0;padding-top:12px}.expanded-metrics-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;background:#fff;padding:10px 14px;border-radius:8px;border:1px solid #f1f5f9}.expanded-metric{display:flex;flex-direction:column;gap:2px}.expanded-lbl{font-size:10.5px;font-weight:600;color:#64748b}.expanded-val{font-size:13.5px;font-weight:700;color:#1e293b}.student-main{width:100%;background:transparent;font-family:Outfit,Inter,-apple-system,BlinkMacSystemFont,sans-serif}.student-wrapper{padding:28px;max-width:100%;width:100%;display:flex;flex-direction:column;gap:28px}.student-hero{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.student-title-gradient{font-size:32px;font-weight:700;margin:0 0 8px;color:#005249;line-height:1.2;letter-spacing:-.5px}.hero-subtitle{font-size:15px;color:#64748b;margin:0;line-height:1.5}.student-tag{display:inline-flex;align-items:center;background:#e6f4f1;border:1px solid rgba(0,82,73,.15);color:#005249;padding:8px 16px;border-radius:50px;font-size:13px;font-weight:600}.dashboard-tab-bar{display:flex;background:#ffffffb3;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(0,82,73,.08);border-radius:99px;padding:6px;gap:6px;box-shadow:0 12px 30px #0052490d,0 2px 4px #00524905;transition:all .4s cubic-bezier(.16,1,.3,1);margin:0 auto;width:100%;max-width:600px;box-sizing:border-box}.tab-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:10px;padding:12px 24px;background:transparent;border:none;border-radius:99px;cursor:pointer;position:relative;overflow:hidden;transition:all .35s cubic-bezier(.34,1.56,.64,1)}.tab-icon{font-size:18px;transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.tab-label{font-size:14.5px;font-weight:700;color:#566a7f;transition:color .3s ease}.tab-btn:hover{background:#0052490d}.tab-btn:hover .tab-label{color:#005249}.tab-btn.active{background:linear-gradient(135deg,#005249,#007d70)!important;box-shadow:0 6px 18px #007d7047!important}.tab-btn.active .tab-label{color:#fff!important}.schedule-tab-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:28px;align-items:start}.schedule-left-col,.schedule-right-col{display:flex;flex-direction:column;gap:28px}.coursework-tab-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:28px;align-items:start}.coursework-left-col,.coursework-right-col{display:flex;flex-direction:column;gap:28px}.reports-tab-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:28px;align-items:start}.reports-left-col,.reports-right-col{display:flex;flex-direction:column;gap:28px}.student-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:28px;box-shadow:0 1px 3px #0000000a}.student-card h2{font-size:18px;font-weight:700;color:#0f172a;margin:0 0 4px;letter-spacing:-.3px}.card-meta{font-size:13px;color:#64748b;margin:0}.card-meta-bottom{font-size:13px;color:#64748b;margin:0 0 24px}.card-header-actions{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}.active-indicator{font-size:12px;font-weight:600;color:#005249;background:#e6f4f1;padding:4px 12px;border-radius:100px;display:flex;align-items:center;gap:6px}.bullet-active{animation:pulse-dot 1.5s infinite;color:#007d70}@keyframes pulse-dot{0%{opacity:.3}50%{opacity:1}to{opacity:.3}}.timetable-card,.timeline-stack{display:flex;flex-direction:column;gap:16px}.timeline-item{display:flex;background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;transition:all .25s ease}.timeline-item.active{border-left:4px solid #FFA600;background:#fffdf9}.timeline-item.upcoming{border-left:4px solid #005249;background:#fff}.timeline-time-col{padding:18px 14px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-right:1px solid #f1f5f9;width:90px;flex-shrink:0;text-align:center}.time-range{font-size:12px;font-weight:700;color:#334155}.timeline-status-badge{font-size:9.5px;font-weight:800;padding:2px 6px;border-radius:4px;text-transform:uppercase;margin-top:6px}.timeline-status-badge.live{background:#ffa600;color:#fff}.timeline-status-badge.wait{background:#00524914;color:#005249}.timeline-content-col{padding:16px 20px;flex-grow:1;display:flex;flex-direction:column;justify-content:center}.timeline-title-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.timeline-title-row h3{font-size:14.5px;font-weight:700;color:#1e293b;margin:0}.room-lbl{font-size:11px;font-weight:700;color:#475569;background:#f1f5f9;padding:2px 6px;border-radius:4px}.timeline-desc{font-size:12.5px;color:#64748b;margin:0}.btn-timeline-action{font-size:11px;font-weight:700;background:#005249;color:#fff;border:none;padding:6px 12px;border-radius:6px;cursor:pointer;align-self:flex-start;margin-top:10px;transition:all .2s ease}.btn-timeline-action:hover{background:#007d70;box-shadow:0 4px 8px #00524926}.attendance-desk-card{display:flex;flex-direction:column;gap:16px}.weekly-attendance-row{background:#fafbfc;border:1px solid #f1f5f9;border-radius:12px;padding:16px}.mini-dots-row{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;text-align:center}.mini-dot-item{display:flex;flex-direction:column;align-items:center;gap:8px}.mini-dot-day{font-size:11.5px;font-weight:700;color:#475569}.mini-dot{width:10px;height:10px;border-radius:50%;background:#cbd5e1;transition:all .3s ease}.mini-dot.dot-present{background:#10b981;box-shadow:0 0 0 3px #10b98126}.mini-dot.dot-pending{background:#cbd5e1}.mini-dot-time{font-size:10px;font-weight:600;color:#64748b}.divider-line{height:1px;background:#e2e8f0;margin:8px 0}.attendance-metric-bar{display:flex;flex-direction:column;gap:8px}.metric-header-row{display:flex;justify-content:space-between;align-items:center;font-size:13.5px;font-weight:700;color:#334155}.metric-header-row strong{color:#005249;font-size:16px}.linear-progress-track{height:6px;background:#e2e8f0;border-radius:10px;overflow:hidden}.linear-progress-fill{height:100%;border-radius:10px;transition:width .6s cubic-bezier(.4,0,.2,1)}.metric-remark-txt{font-size:11px;font-weight:600;color:#64748b;font-style:italic}.assignments-card{display:flex;flex-direction:column}.assignments-list-stack{display:flex;flex-direction:column;gap:16px}.assignment-row-box{background:#fafbfc;border:1px solid #f1f5f9;border-radius:12px;padding:16px 20px;display:flex;flex-direction:column;gap:8px;transition:all .25s ease}.assignment-row-box:hover{background:#fff;border-color:#00524926;box-shadow:0 6px 18px #0052490a}.asg-row-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.asg-row-info h3{font-size:14.5px;font-weight:700;color:#1e293b;margin:0 0 2px}.asg-row-subj{font-size:11px;font-weight:600;color:#64748b}.asg-row-badge{font-size:10.5px;font-weight:800;padding:3px 8px;border-radius:6px;text-transform:uppercase;flex-shrink:0}.badge-submitted{background:#10b98114;color:#10b981}.badge-pending{background:#ffa60014;color:#ffa600}.badge-graded{background:#3b82f614;color:#3b82f6}.asg-row-desc{font-size:12.5px;color:#475569;line-height:1.5;margin:0}.asg-row-due{font-size:11.5px;color:#64748b}.asg-row-due strong{color:#1e293b}.milestones-card{display:flex;flex-direction:column}.milestones-stack-list{display:flex;flex-direction:column;gap:16px}.milestone-row-item{display:flex;flex-direction:column;gap:6px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:14px 18px}.milestone-row-header{display:flex;justify-content:space-between;align-items:center}.milestone-course-name{font-size:13.5px;font-weight:700;color:#1e293b}.milestone-pct-val{font-size:13.5px;font-weight:800}.milestone-chapter-sub{font-size:11px;color:#64748b;margin-top:2px}.upload-console-card{display:flex;flex-direction:column;gap:8px}.upload-box-wrapper{background:#fafbfc;border:2px dashed #cbd5e1;border-radius:12px;padding:24px;transition:all .2s ease}.upload-box-wrapper:hover{border-color:#005249;background:#f8fafc}.upload-success-state{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}.success-icon{width:44px;height:44px;background:#e6f4f1;color:#005249;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700}.success-meta{font-size:12px;color:#64748b;margin:0}.upload-form-state{display:flex;flex-direction:column;gap:16px}.upload-zone{display:flex;flex-direction:column;align-items:center;gap:6px;cursor:pointer;padding:16px 0}.zone-icon{font-size:28px}.zone-text{font-size:13px;font-weight:700;color:#334155;margin:0}.zone-limit{font-size:10.5px;color:#94a3b8}.upload-file-preview{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:10px 14px}.file-info-row{display:flex;align-items:center;gap:8px;font-size:12px}.file-icon{font-size:14px}.file-name{font-weight:600;color:#334155;flex-grow:1;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-size{color:#94a3b8}.btn-upload-submit{width:100%;background:#005249;color:#fff;border:none;font-size:13px;font-weight:700;padding:11px 20px;border-radius:8px;cursor:pointer;transition:all .2s ease}.btn-upload-submit:hover:not(:disabled){background:#007d70;box-shadow:0 4px 12px #00524926}.btn-upload-submit:disabled{opacity:.6;cursor:not-allowed}.svg-chart-container{width:100%;margin:16px 0;background:#fafbfc;border:1px solid #f1f5f9;border-radius:12px;padding:12px}.chart-node-group{cursor:pointer}.chart-node{fill:#fff;stroke:#005249;stroke-width:2.5px;transition:all .2s cubic-bezier(.4,0,.2,1)}.chart-node:hover{fill:#005249;stroke:#fff;stroke-width:3px}.node-selected{fill:#ffa600!important;stroke:#005249!important;stroke-width:3.5px!important;filter:drop-shadow(0 2px 6px rgba(255,166,0,.3))}.chart-axis-label{font-size:10.5px;font-weight:600;fill:#64748b;font-family:inherit}.selected-month-details{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:16px;margin-top:16px}.details-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e2e8f0;padding-bottom:10px;margin-bottom:12px}.details-header h4{font-size:13.5px;font-weight:700;color:#1e293b;margin:0}.details-tag{font-size:10.5px;font-weight:700;background:#00524914;color:#005249;padding:2px 8px;border-radius:4px}.flat-lbl{font-size:9.5px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.3px}.flat-val{font-size:14.5px;font-weight:800;color:#1e293b}.metric-primary{color:#005249}.text-green{color:#10b981}.tuition-fee-card{display:flex;flex-direction:column}.fee-simple-ledger{background:#fafbfc;border:1px solid #f1f5f9;border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:12px}.ledger-row{display:flex;justify-content:space-between;align-items:center;font-size:13px;font-weight:600;color:#475569}.ledger-row.highlight{border-bottom:1px solid #e2e8f0;padding-bottom:10px;margin-bottom:2px}.ledger-row.highlight span{font-weight:700;color:#1e293b}.ledger-row strong{color:#1e293b;font-weight:700}.ledger-row strong.due{color:#ffa600;font-size:15px}.ledger-row strong.paid{color:#10b981;font-size:15px}.fee-payment-desk-footer{margin-top:8px}.btn-pay-dues-mini{width:100%;background:#ffa600;color:#fff;border:none;font-size:13px;font-weight:700;padding:11px 20px;border-radius:8px;cursor:pointer;transition:all .2s ease}.btn-pay-dues-mini:hover{background:#e69500;box-shadow:0 4px 12px #ffa60033}.payment-settled-alert{background:#e6f4f1;border:1px solid rgba(0,82,73,.1);color:#005249;font-weight:700;font-size:13px;padding:10px 16px;border-radius:8px;display:flex;align-items:center;justify-content:center;gap:8px}.check-badge{width:16px;height:16px;background:#005249;color:#fff;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:9px;font-weight:700}@media(max-width:1150px){.schedule-tab-grid,.coursework-tab-grid,.reports-tab-grid{grid-template-columns:1fr}}@media(max-width:768px){.student-wrapper{padding:20px;gap:20px}.student-title-gradient{font-size:26px}.dashboard-tab-bar{flex-direction:column;padding:4px}.tab-btn{padding:8px 12px}.student-card{padding:20px}.fee-radial-wrapper{flex-direction:column;align-items:center;text-align:center}}@media(max-width:480px){.student-hero{flex-direction:column;align-items:flex-start;gap:12px}.card-header-actions{flex-direction:column;gap:12px}.dots-row{grid-template-columns:1fr;gap:12px}}:root{--principal-glass-bg: rgba(255, 255, 255, .75);--principal-glass-border: rgba(255, 255, 255, .6);--principal-card-shadow: 0 8px 32px 0 rgba(0, 82, 73, .06);--principal-hover-shadow: 0 12px 40px 0 rgba(0, 82, 73, .12);--principal-radius: 16px;--transition-speed: .3s}.principal-main{width:100%;padding:1.5rem;box-sizing:border-box}.principal-wrapper{max-width:1300px;margin:0 auto;display:flex;flex-direction:column;gap:1.5rem}.animate-fadeIn{animation:principalFadeIn .5s ease-out forwards}.animate-slideIn{animation:principalSlideIn .4s cubic-bezier(.16,1,.3,1) forwards}@keyframes principalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes principalSlideIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.principal-hero{background:linear-gradient(135deg,#0052490a,#fffc,#ffa60008);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.75);border-radius:24px;padding:2.25rem 2.5rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1.5rem;box-shadow:0 10px 40px #00524908,inset 0 1px 1px #fffc}.hero-left{display:flex;flex-direction:column;gap:.5rem}.principal-brand-container{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.principal-hero-logo{height:56px;width:auto;object-fit:contain;filter:drop-shadow(0 6px 16px rgba(0,82,73,.1));transition:transform .4s cubic-bezier(.34,1.56,.64,1)}.principal-hero-logo:hover{transform:scale(1.08) rotate(2deg)}.principal-title-gradient{font-size:2.35rem;font-weight:800;color:var(--brand-primary);margin:0;letter-spacing:-.8px;background:linear-gradient(135deg,var(--brand-primary) 0%,#007D70 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.hero-subtitle{color:#566a7f;font-size:1.05rem;margin:0;font-weight:400}.principal-tag{background:#0052490f;color:var(--brand-primary);border:1px solid rgba(0,82,73,.12);font-size:.82rem;font-weight:700;padding:.5rem 1.25rem;border-radius:99px;letter-spacing:.3px;box-shadow:0 4px 10px #00524905}.dashboard-tab-bar{display:flex;background:#ffffffa6;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(0,82,73,.06);border-radius:99px;padding:.35rem;gap:.35rem;box-shadow:0 10px 30px #0052490a;transition:all .4s cubic-bezier(.16,1,.3,1);margin:.5rem auto 1rem;width:100%;max-width:580px;box-sizing:border-box}.dashboard-tab-bar:hover{box-shadow:0 16px 40px #00524914,0 0 0 1px #0052491f;transform:translateY(-2px)}.tab-btn{background:transparent;border:none;padding:.75rem 1.75rem;border-radius:99px;cursor:pointer;display:flex;align-items:center;gap:.6rem;font-weight:700;color:#566a7f;font-size:.95rem;position:relative;overflow:hidden;transition:all .35s cubic-bezier(.34,1.56,.64,1)}.tab-icon{font-size:1.1rem;transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.tab-btn:hover{background:#0052490d;color:var(--brand-primary)}.tab-btn:hover .tab-icon{transform:scale(1.15) translateY(-1px)}.tab-btn:active{transform:scale(.96)}.tab-btn.active{background:linear-gradient(135deg,var(--brand-primary) 0%,#007D70 100%)!important;color:#fff!important;box-shadow:0 6px 18px #007d7047!important}.tab-btn.active .tab-icon{filter:drop-shadow(0 2px 4px rgba(0,0,0,.15));transform:scale(1.05)}.hover-lift{transition:transform var(--transition-speed) cubic-bezier(.16,1,.3,1),box-shadow var(--transition-speed) ease}.hover-lift:hover{transform:translateY(-4px);box-shadow:var(--principal-hover-shadow)}.tab-viewport-container{width:100%}.overview-tab-grid,.approvals-tab-grid,.analytics-tab-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:1.5rem;width:100%}.overview-left-col,.approvals-left-col,.analytics-left-col,.overview-right-col,.approvals-right-col,.analytics-right-col{display:flex;flex-direction:column;gap:1.5rem}.kpi-cards-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;width:100%;box-sizing:border-box;margin-bottom:.5rem}.kpi-card{background:#ffffffa6;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.6);border-radius:18px;padding:1.25rem 1.5rem;display:flex;flex-direction:column;gap:.85rem;box-shadow:0 8px 32px #00524908;transition:all .35s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden}.kpi-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,rgba(0,82,73,.03) 0%,transparent 100%);opacity:0;transition:opacity .35s ease}.kpi-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px #00524914;border-color:#00524926;background:#fff}.kpi-card:hover:before{opacity:1}.kpi-card-header{display:flex;justify-content:space-between;align-items:center;width:100%;position:relative;z-index:1}.kpi-card-icon{font-size:1.2rem;width:38px;height:38px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .3s ease}.kpi-card:hover .kpi-card-icon{transform:scale(1.1) rotate(5deg)}.bg-light-green{background:#00875a14}.bg-light-blue{background:#0052490f}.bg-light-teal{background:#007d7014}.bg-light-orange{background:#ffa60014}.kpi-card-trend{font-size:.75rem;font-weight:700;padding:.25rem .6rem;border-radius:99px;letter-spacing:.1px}.kpi-card-trend.text-green{background:#00875a14;color:#00875a}.kpi-card-trend.text-teal{background:#007d7014;color:#007d70}.kpi-card-trend.text-orange{background:#ffa60014;color:#ffa600}.kpi-card-body{display:flex;flex-direction:column;gap:.25rem;position:relative;z-index:1}.kpi-card-label{font-size:.72rem;font-weight:700;color:#7e8b9b;text-transform:uppercase;letter-spacing:.5px}.kpi-card-val{font-size:1.65rem;font-weight:800;color:var(--brand-primary);line-height:1.2}.text-green{color:#00875a}.text-teal{color:#007d70}.text-orange{color:#ffa600}.student-card{background:var(--principal-glass-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--principal-glass-border);border-radius:var(--principal-radius);padding:1.75rem;box-shadow:var(--principal-card-shadow);display:flex;flex-direction:column}.student-card h2{font-size:1.3rem;font-weight:700;color:var(--brand-primary);margin:0}.card-meta-bottom{font-size:.85rem;color:#7e8b9b;margin:.2rem 0 1.25rem}.alerts-stack{display:flex;flex-direction:column;gap:.85rem}.alert-box{padding:1rem 1.25rem;border-radius:12px;display:flex;align-items:flex-start;gap:1rem;border:1px solid transparent}.alert-high{background:#df33330d;border-color:#df333326}.alert-high .alert-badge{background:#df3333;color:#fff}.alert-medium{background:#ffa6000d;border-color:#ffa6002e}.alert-medium .alert-badge{background:#ffa600;color:#fff}.alert-low{background:#007d700a;border-color:#007d7026}.alert-low .alert-badge{background:#007d70;color:#fff}.alert-badge{font-size:.75rem;font-weight:700;text-transform:uppercase;padding:.2rem .6rem;border-radius:6px;letter-spacing:.3px;flex-shrink:0}.alert-msg{font-size:.9rem;color:#2c3e50;margin:0;line-height:1.4;font-weight:500}.broadcaster-card{display:flex;flex-direction:column;gap:1.5rem;border:1px solid rgba(0,82,73,.12);background:linear-gradient(180deg,#ffffffd9,#fff9)}.broadcaster-form{display:flex;flex-direction:column;gap:1.25rem}.broadcaster-field-group{display:flex;flex-direction:column;gap:.5rem;width:100%}.field-title-label{font-size:.72rem;font-weight:700;text-transform:uppercase;color:#475569;letter-spacing:.6px}.segment-pills-bar{display:flex;background:#00524908;border:1px solid rgba(0,82,73,.06);border-radius:12px;padding:.25rem;gap:.25rem;width:100%}.segment-btn{flex:1;background:transparent;border:none;color:#64748b;font-weight:700;font-size:.78rem;padding:.5rem .25rem;border-radius:9px;cursor:pointer;transition:all .25s cubic-bezier(.16,1,.3,1);white-space:nowrap}.segment-btn:hover{color:var(--brand-primary);background:#0052490a}.segment-btn.active{background:#fff;color:var(--brand-primary);box-shadow:0 3px 8px #0052490f,0 0 0 1px #0052490f}.priority-pills-bar{display:flex;gap:.5rem;width:100%}.priority-btn{flex:1;border:1px solid rgba(0,82,73,.08);background:#fff;color:#64748b;font-weight:700;font-size:.8rem;padding:.5rem;border-radius:10px;cursor:pointer;transition:all .25s cubic-bezier(.16,1,.3,1);display:flex;align-items:center;justify-content:center;gap:6px}.priority-btn:hover{transform:translateY(-1px);box-shadow:0 4px 8px #00000005}.priority-btn.active.p-general{background:#00875a0f;color:#00875a;border-color:#00875a4d;box-shadow:0 0 0 3px #00875a0f}.priority-btn.active.p-important{background:#ffa6000f;color:#d97706;border-color:#ffa6004d;box-shadow:0 0 0 3px #ffa6000f}.priority-btn.active.p-critical{background:#ef44440f;color:#dc2626;border-color:#ef44444d;box-shadow:0 0 0 3px #ef44440f}.presets-chips-row{display:flex;flex-wrap:wrap;gap:.35rem}.preset-chip-btn{background:#00524908;border:1px solid rgba(0,82,73,.06);color:#475569;font-weight:600;font-size:.72rem;padding:.35rem .75rem;border-radius:20px;cursor:pointer;transition:all .2s ease}.preset-chip-btn:hover{background:#00524914;color:var(--brand-primary);border-color:#00524926;transform:scale(1.02)}.preset-chip-btn:active{transform:scale(.98)}.textarea-label-row{display:flex;justify-content:space-between;align-items:center;width:100%}.char-counter{font-size:.7rem;font-weight:700;color:#94a3b8;background:#00524908;padding:.1rem .5rem;border-radius:6px;letter-spacing:.2px}.char-counter.warning{color:#d97706;background:#ffa6000f}.char-counter.danger{color:#dc2626;background:#ef44440f}.broadcaster-textarea{width:100%;border:1px solid rgba(0,82,73,.12);border-radius:12px;padding:.85rem 1rem;font-family:inherit;font-size:.88rem;line-height:1.45;resize:none;box-sizing:border-box;background:#fff9;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);color:#1e293b;transition:all .25s cubic-bezier(.16,1,.3,1);box-shadow:inset 0 2px 4px #00524903}.broadcaster-textarea:hover{background:#ffffffd9;border-color:#00524938}.broadcaster-textarea:focus{outline:none;border-color:#005249;background:#fff;box-shadow:0 0 0 3px #0052490f,0 4px 12px #00524905}.btn-publish-notice{background:linear-gradient(135deg,#005249,#007d70);color:#fff;border:none;font-weight:700;font-size:.88rem;letter-spacing:.4px;padding:.85rem 1.5rem;border-radius:12px;cursor:pointer;transition:all .25s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 12px #00524929;display:flex;align-items:center;justify-content:center;gap:8px;position:relative;overflow:hidden}.btn-publish-notice:after{content:"";position:absolute;top:0;left:-50%;width:200%;height:100%;background:linear-gradient(to right,transparent,rgba(255,255,255,.15),transparent);transform:skew(-25deg);transition:.75s;opacity:0}.btn-publish-notice:hover{background:linear-gradient(135deg,#007d70,#005249);transform:translateY(-2px);box-shadow:0 6px 16px #0052493d}.btn-publish-notice:hover:after{left:125%;opacity:1}.btn-publish-notice:active{transform:translateY(0)}.btn-publish-notice:disabled{background:#e2e8f0!important;color:#94a3b8!important;box-shadow:none!important;cursor:not-allowed;transform:none!important}.broadcast-feed-wrapper{margin-top:.25rem;display:flex;flex-direction:column;gap:.75rem;border-top:1px dashed rgba(0,82,73,.12);padding-top:1.25rem}.broadcast-feed-wrapper h3{font-size:11.5px;font-weight:800;color:#005249;margin:0;text-transform:uppercase;letter-spacing:.8px;display:flex;align-items:center;gap:6px}.broadcast-feed-wrapper h3:before{content:"📡";font-size:13px}.empty-notices-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2.25rem 1rem;background:#00524903;border:1px dashed rgba(0,82,73,.08);border-radius:12px}.empty-icon{font-size:1.6rem;margin-bottom:.4rem;filter:drop-shadow(0 2px 4px rgba(0,82,73,.05))}.empty-title{font-size:.85rem;font-weight:700;color:#475569;margin:0 0 .15rem}.empty-sub{font-size:.72rem;color:#94a3b8;margin:0;max-width:180px;line-height:1.35}.broadcast-notices-list{display:flex;flex-direction:column;gap:10px;max-height:340px;overflow-y:auto;padding-right:5px}.broadcast-notices-list::-webkit-scrollbar{width:4px}.broadcast-notices-list::-webkit-scrollbar-track{background:#00524903;border-radius:99px}.broadcast-notices-list::-webkit-scrollbar-thumb{background:#0052491f;border-radius:99px}.broadcast-notices-list::-webkit-scrollbar-thumb:hover{background:#00524940}.broadcast-notice-item{background:#fff;border:1px solid rgba(0,82,73,.05);border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:6px;transition:all .25s cubic-bezier(.16,1,.3,1);box-shadow:0 2px 8px #00000003}.broadcast-notice-item:hover{transform:translate(2px);box-shadow:0 6px 16px #0052490a;border-color:#0052491f}.notice-priority-general{border-left:4px solid #007D70}.notice-priority-important{border-left:4px solid #FFA600}.notice-priority-critical{border-left:4px solid #ef4444}.notice-header{display:flex;justify-content:space-between;align-items:center;width:100%}.notice-sender-group{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.notice-sender{font-size:11px;font-weight:800;color:#005249;letter-spacing:.1px}.notice-badge{font-size:8px;font-weight:800;padding:1px 5px;border-radius:4px;text-transform:uppercase;letter-spacing:.2px;white-space:nowrap}.notice-badge.audience-all{background:#0052490d;color:#005249}.notice-badge.audience-staff{background:#007d700f;color:#007d70}.notice-badge.audience-students{background:#ffa6000f;color:#b45309}.notice-badge-priority{font-size:8px;font-weight:800;padding:1px 5px;border-radius:4px;text-transform:uppercase;letter-spacing:.2px;white-space:nowrap}.notice-badge-priority.priority-general{background:#00875a0f;color:#00875a}.notice-badge-priority.priority-important{background:#ffa6000f;color:#d97706}.notice-badge-priority.priority-critical{background:#ef44440f;color:#dc2626;animation:pulseCritical 2s infinite}@keyframes pulseCritical{0%{opacity:.75}50%{opacity:1}to{opacity:.75}}.notice-date{font-size:9.5px;font-weight:600;color:#94a3b8}.notice-content{font-size:12.5px;color:#334155;margin:0;line-height:1.45;font-weight:500}.notice-item-footer{display:flex;justify-content:flex-end;margin-top:.15rem;border-top:1px solid rgba(0,0,0,.02);padding-top:.35rem}.btn-retract-notice{background:transparent;border:none;color:#94a3b8;font-size:10px;font-weight:700;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:3px;padding:2px 6px;border-radius:4px}.btn-retract-notice:hover{color:#df3333;background:#df33330d;transform:scale(1.02)}.btn-retract-notice:active{transform:scale(.98)}.requests-card{width:100%}.ledger-stack{display:flex;flex-direction:column;gap:12px}.ledger-row{display:flex;background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:16px 20px;align-items:center;justify-content:space-between;gap:20px;transition:all .25s cubic-bezier(.16,1,.3,1)}.ledger-row:hover{border-color:#00524926;box-shadow:0 6px 18px #0052490a;transform:translateY(-1px)}.ledger-col-profile{display:flex;align-items:center;gap:12px;width:25%;flex-shrink:0}.ledger-type-pill{font-size:10px;font-weight:700;padding:3px 8px;border-radius:6px;text-transform:uppercase;white-space:nowrap}.ledger-type-pill.type-leave{background:#007d7014;color:#007d70}.ledger-type-pill.type-expense{background:#ffa60014;color:#ffa600}.profile-info{display:flex;flex-direction:column;gap:2px}.profile-info h3{font-size:13.5px;font-weight:700;color:var(--brand-primary);margin:0}.profile-role{font-size:11px;color:#7e8b9b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px}.ledger-col-details{flex-grow:1;display:flex;flex-direction:column;gap:4px}.detail-msg{font-size:12.5px;color:#4a5568;margin:0;line-height:1.4;font-weight:500}.meta-time{font-size:11px;color:#7e8b9b}.ledger-col-actions{display:flex;align-items:center;justify-content:flex-end;width:20%;flex-shrink:0}.action-pills{display:flex;gap:8px}.btn-action-pill{font-size:11px;font-weight:700;padding:6px 12px;border-radius:6px;cursor:pointer;transition:all .2s ease;border:none}.btn-action-pill.approve{background:var(--brand-primary);color:#fff}.btn-action-pill.approve:hover{background:#007d70;box-shadow:0 4px 8px #00524926}.btn-action-pill.reject{background:transparent;color:#df3333;border:1px solid rgba(223,51,51,.25)}.btn-action-pill.reject:hover{background:#df33330d;border-color:#df3333}.status-pill{font-size:11px;font-weight:700;padding:4px 10px;border-radius:20px;text-transform:uppercase;letter-spacing:.3px}.status-pill.status-approved{background:#00875a14;color:#00875a;border:1px solid rgba(0,135,90,.18)}.status-pill.status-rejected{background:#df333314;color:#df3333;border:1px solid rgba(223,51,51,.18)}.syllabus-bars-stack{display:flex;flex-direction:column;gap:1.35rem}.syll-item{display:flex;flex-direction:column;gap:.45rem}.syll-labels{display:flex;justify-content:space-between;align-items:center}.syll-name{font-size:.95rem;font-weight:700;color:var(--brand-primary)}.syll-val{font-size:.92rem;font-weight:700;color:#566a7f}.track-linear{background:#0052490d;height:8px;border-radius:99px;overflow:hidden;width:100%}.fill-linear{height:100%;border-radius:99px;transition:width .8s cubic-bezier(.16,1,.3,1)}.syll-chapter{font-size:.78rem;color:#7e8b9b;margin-top:.15rem}.card-header-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem}.active-indicator{display:flex;align-items:center;gap:.4rem;font-size:.8rem;font-weight:700;color:#7e8b9b;text-transform:uppercase;background:#0052490d;padding:.35rem .75rem;border-radius:99px}.bullet-active{color:#00875a;animation:principalPulse 2s infinite}@keyframes principalPulse{0%{opacity:.4}50%{opacity:1}to{opacity:.4}}.svg-chart-container{width:100%;padding:.5rem 0}.performance-curve-svg{width:100%;height:auto;overflow:visible}.chart-node{fill:#fff;stroke:var(--brand-primary);stroke-width:3px;cursor:pointer;transition:all .25s cubic-bezier(.16,1,.3,1)}.chart-node:hover,.node-selected{fill:var(--brand-primary);stroke:var(--brand-primary);r:7px;filter:drop-shadow(0 2px 8px rgba(0,82,73,.35))}.hover-trigger{cursor:pointer}.chart-axis-label{font-size:.65rem;font-weight:700;fill:#7e8b9b}.selected-month-details{background:#00524905;border:1px dashed rgba(0,82,73,.15);border-radius:12px;padding:1.25rem;margin-top:1rem;display:flex;flex-direction:column;gap:.85rem}.details-header{display:flex;justify-content:space-between;align-items:center}.details-header h4{font-size:1rem;font-weight:700;color:var(--brand-primary);margin:0}.details-tag{background:#0052490f;color:var(--brand-primary);font-size:.75rem;font-weight:700;padding:.25rem .6rem;border-radius:6px;text-transform:uppercase}.details-flat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.flat-detail-item{display:flex;flex-direction:column;gap:2px;text-align:center}.flat-lbl{font-size:9.5px;font-weight:700;color:#7e8b9b;text-transform:uppercase;letter-spacing:.3px}.flat-val{font-size:14px;font-weight:800;color:#2c3e50}.metric-primary{color:var(--brand-primary);font-size:1.1rem}.grade-spectrum-stack{display:flex;flex-direction:column;gap:1.25rem}.spectrum-item{display:flex;flex-direction:column;gap:.4rem}.spectrum-label-row{display:flex;justify-content:space-between;font-size:.88rem;font-weight:600;color:#2c3e50}.progress-green{background-color:#00875a}.progress-teal{background-color:#007d70}.progress-orange{background-color:#ffa600}.progress-red{background-color:#df3333}@media(max-width:1024px){.overview-tab-grid,.approvals-tab-grid,.analytics-tab-grid{grid-template-columns:1fr}}@media(max-width:640px){.kpi-cards-grid{grid-template-columns:1fr}.dashboard-tab-bar{width:100%;flex-direction:column;border-radius:var(--principal-radius);padding:.5rem}.tab-btn{width:100%;justify-content:center}.principal-hero{padding:1.25rem}.principal-title-gradient{font-size:1.75rem}}.student-attendance-container{padding:28px;max-width:100%;width:100%;box-sizing:border-box;color:#334155;display:flex;flex-direction:column;gap:28px;font-family:Outfit,Inter,-apple-system,BlinkMacSystemFont,sans-serif}@media(max-width:768px){.student-attendance-container{padding:20px;gap:20px}.attendance-hero-card{flex-direction:column;align-items:flex-start;padding:1.25rem 1.5rem}.hero-semester-badge{align-self:flex-end}.calendar-weekdays-row{font-size:.7rem}.calendar-days-grid{gap:.4rem}.day-cell{border-radius:8px;font-size:.85rem}.form-double-fields{grid-template-columns:1fr}.attendance-radial-panel-content{flex-direction:column;align-items:center;gap:1.5rem}}@media(prefers-color-scheme:dark){.student-attendance-container{color:#f1f5f9}.attendance-glass-card{background:#0f172a73;border:1px solid rgba(255,255,255,.08);box-shadow:0 8px 32px #0006}.attendance-glass-card:hover{border-color:#10b98133;box-shadow:0 12px 40px #00524940}.attendance-hero-card{background:#0f172a73;border:1px solid rgba(255,255,255,.08);border-left:5px solid #10b981;box-shadow:0 8px 32px #0006}.attendance-hero-card:hover{border-color:#10b98133;box-shadow:0 12px 40px #00524940}.hero-icon-plate{background:#10b98114;border-color:#10b98133;color:#34d399}.hero-titles h2{background:linear-gradient(135deg,#fff 40%,#a7f3d0);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.hero-titles p{color:#94a3b8}.hero-semester-badge{background:#10b98114;border-color:#10b98140;color:#34d399}.kpi-glass-card{background:#0f172a59;border:1px solid rgba(255,255,255,.05);box-shadow:0 4px 20px #0000004d}.kpi-glass-card:hover{border-color:#ffffff1f}.kpi-growth-badge.bg-total{background:#ffffff14;color:#eceff1}.kpi-growth-badge.bg-present{background:#10b9811f;color:#34d399}.kpi-growth-badge.bg-leave{background:#2196f31f;color:#64b5f6}.kpi-growth-badge.bg-absent{background:#ef44441f;color:#f87171}.kpi-growth-badge.bg-holiday{background:#ffa6001f;color:#ffb833}.kpi-growth-badge.bg-weekoff{background:#607d8b1f;color:#b0bec5}.kpi-metric-info h3{color:#fff}.kpi-metric-info p{color:#90a4ae}.kpi-card-icon-wrapper.text-total{background:#ffffff0d;color:#fff;border:1px solid rgba(255,255,255,.1)}.card-header-bar{border-bottom:1px solid rgba(255,255,255,.05)}.header-meta h4{color:#fff}.header-meta p{color:#90a4ae}.month-selector-pill{background:#10b9811f;border:1px solid rgba(16,185,129,.25);color:#34d399}.calendar-weekdays-row{color:#90a4ae}.day-cell{background:#ffffff03}.status-present{background:#10b98114;border-color:#10b9812e;color:#10b981}.status-present:hover{background:#10b98140;border-color:#10b98173;box-shadow:0 0 12px #10b9814d}.status-holiday{background:#ffa60014;border-color:#ffa6002e;color:#ffa600}.status-holiday:hover{background:#ffa60040;border-color:#ffa60073;box-shadow:0 0 12px #ffa6004d}.status-leave{background:#2196f314;border-color:#2196f32e;color:#2196f3}.status-leave:hover{background:#2196f340;border-color:#2196f373;box-shadow:0 0 12px #2196f34d}.status-absent{background:#ef444414;border-color:#ef44442e;color:#ef4444}.status-absent:hover{background:#ef444440;border-color:#ef444473;box-shadow:0 0 12px #ef44444d}.status-weekoff{background:#ffffff03;border:1px dashed rgba(255,255,255,.08);color:#607d8b}.status-upcoming{background:#ffffff03;border-color:transparent;color:#455a64}.legend-item{color:#b0bec5}.legend-indicator.weekoff{background:#ffffff03;border:1px dashed rgba(255,255,255,.15)}.course-name{color:#e0f2f1}.progress-bar-track{background:#ffffff0a}.drilldown-periods-stack::-webkit-scrollbar-thumb{background:#ffffff26}.period-detail-row{background:#ffffff05;border:1px solid rgba(255,255,255,.05)}.period-detail-row:hover{background:#ffffff0a}.period-slot-label{color:#90a4ae}.period-detail-row.status-present .period-status-badge{color:#10b981}.period-detail-row.status-leave .period-status-badge{color:#2196f3}.period-detail-row.status-absent .period-status-badge{color:#ef4444}.period-subject-name{color:#fff}.period-faculty-meta{color:#b0bec5}.period-punch-time{color:#b0bec5;background:#ffffff08;border:1px solid rgba(255,255,255,.05)}.drilldown-empty-desk{background:#ffffff03;border:1px dashed rgba(255,255,255,.06)}.empty-title{color:#fff}.empty-desc{color:#90a4ae}.form-field-wrapper label{color:#b0bec5}.form-field-wrapper input[type=date],.form-field-wrapper textarea{background:#ffffff08;border:1px solid rgba(255,255,255,.08);color:#fff}.form-field-wrapper input[type=date]:focus,.form-field-wrapper textarea:focus{border-color:#10b981;background:#ffffff0d;box-shadow:0 0 10px #10b98126}.leave-category-segmented-bar{background:#ffffff08;border:1px solid rgba(255,255,255,.06)}.segment-btn{color:#90a4ae}.segment-btn:hover{color:#fff;background:#ffffff08}.segment-btn.active-segment{background:#10b981cc;border:1px solid rgba(16,185,129,.25);color:#fff;box-shadow:0 2px 8px #00524933}.upload-certificate-box{background:#ffffff03;border:1px dashed rgba(255,255,255,.15)}.upload-certificate-box:hover{border-color:#10b981;background:#10b98105}.upload-main-text{color:#e0f2f1}.file-success{color:#10b981;background:#10b9811a;border:1px solid rgba(16,185,129,.25)}.upload-sub-text{color:#78909c}.leave-submit-cta{background:linear-gradient(135deg,#10b981,#059669);border:1px solid rgba(16,185,129,.2);box-shadow:0 4px 15px #00524940}.leave-submit-cta:hover:not(:disabled){box-shadow:0 6px 20px #10b98159;border-color:#10b98166}.gauge-track-ring{stroke:#ffffff0d!important}.gauge-percentage-number{color:#fff;background:linear-gradient(135deg,#fff 40%,#10b981);-webkit-background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 2px 8px rgba(16,185,129,.25))}.gauge-sublabel{color:#90a4ae}.gauge-detail-cell{background:#ffffff05;border:1px solid rgba(255,255,255,.04)}.gauge-detail-cell:hover{background:#ffffff0a}.cell-num{color:#fff}.gauge-detail-cell:nth-child(4) .cell-num{color:#cbd5e1}.cell-label{color:#90a4ae}.gauge-feedback-pill{color:#b0bec5;background:#10b98114;border:1px solid rgba(16,185,129,.15)}.leave-ledger-table-wrapper{border:1px solid rgba(255,255,255,.05)}.leave-ledger-table th{background:#ffffff08;color:#90a4ae}.leave-ledger-table td{border-bottom:1px solid rgba(255,255,255,.04);color:#f1f5f9}.leave-ledger-table tr:hover{background:#ffffff05}.table-reason-text{color:#b0bec5}.status-badge.status-pending{background:#ffa6001f;color:#ffb833;border:1px solid rgba(255,166,0,.2)}.status-badge.status-approved{background:#10b9811f;color:#34d399;border:1px solid rgba(16,185,129,.2)}.status-badge.status-rejected{background:#ef44441f;color:#f87171;border:1px solid rgba(239,68,68,.2)}.type-badge.badge-medical{background:#2196f326;color:#64b5f6;border-color:#2196f340}.type-badge.badge-personal{background:#ffa60026;color:#ffb833;border-color:#ffa60040}.type-badge.badge-event{background:#ff704326;color:#ff8a65;border-color:#ff704340}.month-nav-btn{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);color:#f1f5f9}.month-nav-btn:hover{background:#10b981;border-color:#10b981;color:#fff;box-shadow:0 4px 12px #10b98159}.modal-backdrop-overlay{background:#00000080}.modal-content-container{background:#0f172ad9;border:1px solid rgba(255,255,255,.08);box-shadow:0 20px 50px #0009}.modal-header-bar-custom{border-bottom:1px solid rgba(255,255,255,.05)}.modal-close-btn{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);color:#94a3b8}.modal-close-btn:hover{background:#ef4444;color:#fff;border-color:#ef4444}.modal-action-buttons{border-top:1px solid rgba(255,255,255,.05)}.modal-cancel-cta{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);color:#cbd5e1}.modal-cancel-cta:hover{background:#ffffff14;color:#fff}.modal-submit-cta{background:linear-gradient(135deg,#10b981,#059669);border:1px solid rgba(16,185,129,.2);box-shadow:0 4px 12px #00524933}.modal-submit-cta:hover:not(:disabled){box-shadow:0 6px 16px #10b98159}.btn-trigger-apply-leave{background:linear-gradient(135deg,#10b981,#059669);border:1px solid rgba(16,185,129,.2);box-shadow:0 4px 12px #00524933}.btn-trigger-apply-leave:hover{box-shadow:0 6px 16px #10b98159}.compact-percentage-details h4{color:#fff}.compact-percentage-details p{color:#94a3b8}.compact-percentage-icon{background:#10b9811f;border-color:#10b98140}.compact-percentage-status-tag{color:#34d399;background:#10b9811f;border-color:#10b98140}}.teacher-attendance-container{padding:28px;max-width:100%;width:100%;box-sizing:border-box;color:#334155;display:flex;flex-direction:column;gap:28px;font-family:Outfit,Inter,-apple-system,BlinkMacSystemFont,sans-serif}.attendance-glass-card{background:#ffffffbf;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(0,82,73,.08);border-radius:16px;padding:1.5rem;box-shadow:0 10px 30px #0052490a;display:flex;flex-direction:column;gap:1.25rem;transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s cubic-bezier(.16,1,.3,1),border-color .4s cubic-bezier(.16,1,.3,1)}.attendance-glass-card:hover{border-color:#0052492e;box-shadow:0 16px 40px #00524914}.attendance-hero-card{background:#ffffffbf;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(0,82,73,.08);border-left:5px solid #005249;border-radius:16px;padding:1.25rem 1.75rem;display:flex;justify-content:space-between;align-items:center;gap:1.5rem;box-shadow:0 8px 32px #00524908;position:relative;overflow:hidden;transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s cubic-bezier(.16,1,.3,1),border-color .4s cubic-bezier(.16,1,.3,1)}.attendance-hero-card:hover{border-color:#00524926;box-shadow:0 12px 40px #0052490f}.hero-icon-plate{font-size:1.75rem;background:#0052490a;width:52px;height:52px;display:flex;align-items:center;justify-content:center;border-radius:12px;border:1px solid rgba(0,82,73,.1);box-shadow:inset 0 1px 3px #00524905;color:#005249}.hero-semester-badge{background:#0052490a;color:#005249;border:1px solid rgba(0,82,73,.1);padding:.4rem .85rem;border-radius:99px;font-size:.78rem;font-weight:700;display:flex;align-items:center;gap:.4rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);text-transform:uppercase;letter-spacing:.03em}.attendance-kpi-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:1rem}.kpi-glass-card{background:#ffffffbf;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(0,82,73,.08);border-radius:14px;padding:1.1rem 1.25rem;position:relative;overflow:hidden;box-shadow:0 4px 20px #00524908;display:flex;flex-direction:column;gap:.65rem;transition:transform .3s cubic-bezier(.16,1,.3,1),border-color .3s ease}.kpi-glass-card:hover{transform:translateY(-4px);border-color:#0052492e;box-shadow:0 8px 30px #00524914}.kpi-card-header{display:flex;justify-content:space-between;align-items:center}.kpi-card-icon-wrapper{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:8px;font-size:1.1rem}.kpi-card-icon-wrapper.text-total{background:#0052490f;color:#005249;border:1px solid rgba(0,82,73,.12)}.kpi-card-icon-wrapper.text-present{background:#10b98126;color:#10b981;border:1px solid rgba(16,185,129,.2)}.kpi-card-icon-wrapper.text-leave{background:#2196f326;color:#2196f3;border:1px solid rgba(33,150,243,.2)}.kpi-card-icon-wrapper.text-absent{background:#ef444426;color:#ef4444;border:1px solid rgba(239,68,68,.2)}.kpi-card-icon-wrapper.text-holiday{background:#ffa60026;color:#ffa600;border:1px solid rgba(255,166,0,.2)}.kpi-card-icon-wrapper.text-weekoff{background:#607d8b26;color:#607d8b;border:1px solid rgba(96,125,139,.2)}.kpi-growth-badge{font-size:.7rem;font-weight:600;padding:.15rem .45rem;border-radius:5px}.kpi-growth-badge.bg-total{background:#00524914;color:#005249}.kpi-growth-badge.bg-present{background:#10b9811f;color:#047857}.kpi-growth-badge.bg-leave{background:#2196f31f;color:#1d4ed8}.kpi-growth-badge.bg-absent{background:#ef44441f;color:#b91c1c}.kpi-growth-badge.bg-holiday{background:#ffa6001f;color:#b45309}.kpi-growth-badge.bg-weekoff{background:#607d8b1f;color:#37474f}.kpi-metric-info h3{font-size:1.4rem;font-weight:800;letter-spacing:-.02em;margin:0;color:#005249}.kpi-metric-info p{font-size:.75rem;color:#64748b;margin:0;font-weight:500}.kpi-card-accent-bar{position:absolute;bottom:0;left:0;width:100%;height:3px}.kpi-card-accent-bar.accent-total{background:#00524940}.kpi-card-accent-bar.accent-present{background:#10b981}.kpi-card-accent-bar.accent-leave{background:#2196f3}.kpi-card-accent-bar.accent-absent{background:#ef4444}.kpi-card-accent-bar.accent-holiday{background:#ffa600}.kpi-card-accent-bar.accent-weekoff{background:#607d8b}.border-total{border-bottom:1px solid rgba(0,82,73,.1)}.border-present:hover{border-color:#10b98159}.border-leave:hover{border-color:#2196f359}.border-absent:hover{border-color:#ef444459}.border-holiday:hover{border-color:#ffa60059}.border-weekoff:hover{border-color:#607d8b59}.attendance-layout-split{display:grid;grid-template-columns:1.15fr .85fr;gap:1.5rem;align-items:start}.attendance-column-left,.attendance-column-right{display:flex;flex-direction:column;gap:1.5rem}.card-header-bar{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid rgba(0,82,73,.06);padding-bottom:1rem}.header-meta h4{font-size:1.15rem;font-weight:700;margin:0 0 .2rem;color:#005249}.header-meta p{font-size:.8rem;color:#64748b;margin:0}.month-selector-pill{background:#0052490f;border:1px solid rgba(0,82,73,.15);color:#005249;padding:.35rem .85rem;border-radius:99px;font-size:.8rem;font-weight:600}.month-navigation-controls{display:flex;align-items:center;gap:.65rem}.month-nav-btn{background:#0052490d;border:1px solid rgba(0,82,73,.12);color:#005249;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:.75rem;transition:all .3s cubic-bezier(.16,1,.3,1);outline:none}.month-nav-btn:hover{background:#005249;color:#fff;border-color:#005249;box-shadow:0 4px 12px #00524933;transform:scale(1.1)}.month-nav-btn:active{transform:scale(.95)}.calendar-grid-container{display:flex;flex-direction:column;gap:.75rem}.calendar-weekdays-row{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;font-size:.8rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.05em;padding-bottom:.25rem}.calendar-days-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.65rem}.day-cell{aspect-ratio:1;border-radius:12px;font-size:.95rem;font-weight:600;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;border:1px solid transparent;transition:all .3s cubic-bezier(.16,1,.3,1);background:#00524905}.pad-cell{background:transparent;pointer-events:none}.day-btn{cursor:pointer;outline:none}.status-present{background:#10b98114;border-color:#10b98140;color:#047857}.status-present:hover{background:#10b98133;border-color:#10b98173;box-shadow:0 0 12px #10b98133}.status-holiday{background:#ffa60014;border-color:#ffa60040;color:#b45309}.status-holiday:hover{background:#ffa60033;border-color:#ffa60073;box-shadow:0 0 12px #ffa60033}.status-leave{background:#2196f314;border-color:#2196f340;color:#1d4ed8}.status-leave:hover{background:#2196f333;border-color:#2196f373;box-shadow:0 0 12px #2196f333}.status-absent{background:#ef444414;border-color:#ef444440;color:#b91c1c}.status-absent:hover{background:#ef444433;border-color:#ef444473;box-shadow:0 0 12px #ef444433}.status-weekoff{background:#00000005;border:1px dashed rgba(96,125,139,.35);color:#607d8b}.status-upcoming{background:transparent;border-color:transparent;color:#cbd5e1;cursor:not-allowed}.day-selected.status-present{background:#10b981!important;border-color:#047857!important;color:#fff!important;box-shadow:0 4px 14px #10b98166!important;transform:scale(1.08)}.day-selected.status-leave{background:#2196f3!important;border-color:#1d4ed8!important;color:#fff!important;box-shadow:0 4px 14px #2196f366!important;transform:scale(1.08)}.day-selected.status-absent{background:#ef4444!important;border-color:#b91c1c!important;color:#fff!important;box-shadow:0 4px 14px #ef444466!important;transform:scale(1.08)}.status-dot{position:absolute;bottom:6px;width:5px;height:5px;border-radius:50%}.present-dot{background:#10b981;box-shadow:0 0 6px #10b981}.holiday-dot{background:#ffa600;box-shadow:0 0 6px #ffa600}.leave-dot{background:#2196f3;box-shadow:0 0 6px #2196f3}.absent-dot{background:#ef4444;box-shadow:0 0 6px #ef4444}.weekoff-dot{background:#607d8b}.calendar-legend-bar{display:flex;flex-wrap:wrap;gap:1.25rem;justify-content:center;padding-top:.5rem;border-top:1px solid rgba(0,82,73,.06)}.select-legend-bar{margin-top:.5rem}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:#64748b;font-weight:600}.legend-indicator{width:12px;height:12px;border-radius:3px}.legend-indicator.present{background:#10b98133;border:1px solid #10b981}.legend-indicator.holiday{background:#ffa60033;border:1px solid #ffa600}.legend-indicator.leave{background:#2196f333;border:1px solid #2196f3}.legend-indicator.absent{background:#ef444433;border:1px solid #ef4444}.legend-indicator.weekoff{background:#00000005;border:1px dashed rgba(96,125,139,.4)}.courses-progress-list{display:flex;flex-direction:column;gap:1rem}.course-progress-row{display:flex;flex-direction:column;gap:.4rem}.course-progress-meta{display:flex;justify-content:space-between;align-items:center;font-size:.85rem;font-weight:600}.course-name{color:#0f172a}.course-ratio-percent{font-weight:700}.progress-bar-track{height:7px;background:#0052490d;border-radius:99px;overflow:hidden}.progress-bar-fill{height:100%;border-radius:99px;transition:width 1s cubic-bezier(.1,.8,.1,1)}.active-drilldown-card{border-left:4px solid #10b981}.drilldown-date-pouch{padding:.3rem .75rem;border-radius:8px;font-size:.8rem;font-weight:700;border:1px solid transparent}.drilldown-date-pouch.status-present{background:#10b9811f;border-color:#10b98140;color:#047857}.drilldown-date-pouch.status-holiday{background:#ffa6001f;border-color:#ffa60040;color:#b45309}.drilldown-date-pouch.status-leave{background:#2196f31f;border-color:#2196f340;color:#1d4ed8}.drilldown-date-pouch.status-absent{background:#ef44441f;border-color:#ef444440;color:#b91c1c}.drilldown-periods-stack{display:flex;flex-direction:column;gap:.85rem;max-height:420px;overflow-y:auto;padding-right:.25rem}.drilldown-periods-stack::-webkit-scrollbar{width:4px}.drilldown-periods-stack::-webkit-scrollbar-thumb{background:#00524926;border-radius:4px}.period-detail-row{display:flex;align-items:center;background:#00524905;border:1px solid rgba(0,82,73,.06);border-radius:12px;padding:.75rem 1rem;gap:1rem;position:relative;overflow:hidden;transition:background .3s ease}.period-detail-row:hover{background:#0052490a}.period-bar-indicator{position:absolute;left:0;top:0;width:4px;height:100%}.period-detail-row.status-present .period-bar-indicator{background:#10b981}.period-detail-row.status-leave .period-bar-indicator{background:#2196f3}.period-detail-row.status-absent .period-bar-indicator{background:#ef4444}.period-timing-meta{display:flex;flex-direction:column;gap:.15rem;min-width:110px}.period-slot-label{font-size:.75rem;color:#64748b;font-weight:500}.period-status-badge{font-size:.75rem;font-weight:700;text-transform:uppercase}.period-detail-row.status-present .period-status-badge{color:#047857}.period-detail-row.status-leave .period-status-badge{color:#1d4ed8}.period-detail-row.status-absent .period-status-badge{color:#b91c1c}.period-subject-details{flex-grow:1;display:flex;flex-direction:column;gap:.15rem}.period-subject-name{font-size:.9rem;font-weight:700;margin:0;color:#0f172a}.period-faculty-meta{font-size:.75rem;color:#64748b;margin:0}.period-punch-time{font-size:.75rem;color:#475569;font-weight:600;display:flex;align-items:center;gap:.35rem;background:#0052490a;padding:.3rem .65rem;border-radius:6px;border:1px solid rgba(0,82,73,.08)}.drilldown-empty-desk{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem 1.5rem;background:#00524903;border:1px dashed rgba(0,82,73,.12);border-radius:12px}.empty-symbol{font-size:2.5rem;margin-bottom:1rem;opacity:.6}.empty-title{font-size:1rem;font-weight:700;color:#005249;margin:0 0 .4rem}.empty-desc{font-size:.8rem;color:#64748b;margin:0;max-width:280px;line-height:1.4}.leave-planner-form{display:flex;flex-direction:column;gap:1.25rem}.form-field-wrapper{display:flex;flex-direction:column;gap:.5rem}.form-field-wrapper input[type=date],.form-field-wrapper textarea{background:#fff;border:1px solid #cbd5e1;color:#0f172a;border-radius:10px;padding:.75rem;font-family:inherit;font-size:.85rem;outline:none;transition:all .3s ease}.form-field-wrapper input[type=date]:focus,.form-field-wrapper textarea:focus{border-color:#007d70;background:#fff;box-shadow:0 0 10px #007d701f}.form-field-wrapper textarea{min-height:80px;resize:vertical}.leave-category-segmented-bar{display:grid;grid-template-columns:repeat(3,1fr);background:#00524908;border:1px solid rgba(0,82,73,.08);border-radius:10px;padding:.25rem}.segment-btn{background:transparent;border:none;outline:none;cursor:pointer;color:#64748b;font-size:.8rem;font-weight:600;padding:.5rem;border-radius:7px;transition:all .3s ease}.segment-btn:hover{color:#005249;background:#0052490a}.segment-btn.active-segment{background:#005249;border:1px solid rgba(0,82,73,.2);color:#fff;box-shadow:0 2px 8px #00524940}.upload-certificate-box{background:#00524903;border:1px dashed rgba(0,82,73,.18);border-radius:10px;padding:1.25rem;text-align:center;cursor:pointer;transition:all .3s ease}.upload-certificate-box:hover{border-color:#007d70;background:#00524908}.upload-arrow{font-size:1.5rem;margin-bottom:.5rem;display:inline-block}.upload-main-text{font-size:.8rem;font-weight:600;margin:0 0 .25rem;color:#005249}.file-success{color:#047857;background:#10b9811a;padding:.25rem .5rem;border-radius:4px;border:1px solid rgba(16,185,129,.25);display:inline-block}.upload-sub-text{font-size:.7rem;color:#64748b;margin:0}.leave-submit-cta{background:linear-gradient(135deg,#005249,#007d70);border:1px solid rgba(0,82,73,.2);color:#fff;font-weight:700;font-size:.9rem;padding:.85rem;border-radius:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .3s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 15px #00524933}.leave-submit-cta:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #0052494d;border-color:#00524966}.leave-submit-cta:disabled{opacity:.6;cursor:not-allowed}.btn-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.2);border-top-color:#fff;border-radius:50%;animation:spinnerRotate .8s linear infinite;display:inline-block}.apply-leave-btn-container{display:flex;justify-content:flex-end;margin-top:1.25rem}.btn-trigger-apply-leave{background:linear-gradient(135deg,#005249,#007d70);border:1px solid rgba(0,82,73,.15);color:#fff;font-weight:700;font-size:.85rem;padding:.65rem 1.25rem;border-radius:10px;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem;transition:all .3s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 12px #0052491f}.btn-trigger-apply-leave:hover{transform:translateY(-2px);box-shadow:0 6px 16px #00524940;border-color:#0052494d}.btn-trigger-apply-leave:active{transform:translateY(0)}.modal-backdrop-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00141240;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1.5rem;animation:modalFadeIn .3s ease both}.modal-content-container{background:#ffffffd9;backdrop-filter:blur(25px);-webkit-backdrop-filter:blur(25px);border:1px solid rgba(0,82,73,.12);border-radius:20px;width:100%;max-width:520px;padding:2rem;box-shadow:0 20px 50px #00282426;display:flex;flex-direction:column;gap:1.5rem}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.animate-scale-in{animation:modalScaleIn .4s cubic-bezier(.16,1,.3,1) both}@keyframes modalScaleIn{0%{opacity:0;transform:scale(.92) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-header-bar-custom{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid rgba(0,82,73,.08);padding-bottom:1rem}.modal-close-btn{background:#0052490d;border:1px solid rgba(0,82,73,.1);color:#64748b;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:.75rem;transition:all .3s ease}.leave-modal-form{display:flex;flex-direction:column;gap:1.25rem}.modal-action-buttons{display:flex;justify-content:flex-end;gap:.75rem;margin-top:.5rem;border-top:1px solid rgba(0,82,73,.08);padding-top:1.25rem}.modal-cancel-cta{background:#0052490a;border:1px solid rgba(0,82,73,.1);color:#475569;font-weight:600;font-size:.85rem;padding:.65rem 1.25rem;border-radius:10px;cursor:pointer;transition:all .3s ease}.modal-cancel-cta:hover{background:#00524914;color:#0f172a}.modal-submit-cta{background:linear-gradient(135deg,#005249,#007d70);border:1px solid rgba(0,82,73,.15);color:#fff;font-weight:700;font-size:.85rem;padding:.65rem 1.5rem;border-radius:10px;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem;transition:all .3s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 12px #00524926}.modal-submit-cta:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #00524940}.overall-percentage-compact-card{padding:1rem 1.25rem!important;border-left:4px solid #10b981!important}.compact-percentage-content{display:flex;align-items:center;justify-content:space-between;gap:1rem;width:100%}.compact-percentage-info{display:flex;align-items:center;gap:.85rem}.compact-percentage-icon{font-size:1.25rem;background:#10b98114;width:38px;height:38px;display:flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid rgba(16,185,129,.15);box-shadow:inset 0 1px 3px #10b9810d}.compact-percentage-details h4{font-size:.95rem;font-weight:700;color:#0f172a;margin:0}.compact-percentage-details p{font-size:.75rem;color:#64748b;margin:.15rem 0 0;font-weight:500}.compact-percentage-badge-wrapper{display:flex;align-items:center;gap:.75rem}.compact-percentage-rectangle{background:linear-gradient(135deg,#10b981,#059669);border:1px solid rgba(5,150,105,.2);border-radius:8px;padding:.45rem .85rem;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 10px #10b98133;transition:all .3s cubic-bezier(.16,1,.3,1)}.compact-percentage-rectangle:hover{transform:translateY(-1px);box-shadow:0 6px 14px #10b9814d}.compact-percentage-val{font-size:1.1rem;font-weight:800;color:#fff;letter-spacing:-.01em}.compact-percentage-status-tag{font-size:.7rem;font-weight:700;color:#047857;background:#10b98114;border:1px solid rgba(16,185,129,.15);padding:.25rem .5rem;border-radius:6px;text-transform:uppercase;letter-spacing:.03em}.leave-ledger-card{min-height:380px}.leave-ledger-table-wrapper{overflow-x:auto;border-radius:12px;border:1px solid rgba(0,82,73,.06)}.leave-ledger-table{width:100%;border-collapse:collapse;text-align:left;font-size:.85rem}.leave-ledger-table th,.leave-ledger-table td{padding:.85rem 1rem;border-bottom:1px solid rgba(0,82,73,.06)}.leave-ledger-table th{background:#00524908;font-weight:700;color:#005249;font-size:.75rem;text-transform:uppercase;letter-spacing:.03em}.leave-ledger-table tr{transition:background .3s ease}.leave-ledger-table tr:hover{background:#00524905}.table-reason-text{color:#64748b;max-width:250px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.type-badge{font-size:.75rem;font-weight:600;padding:.2rem .55rem;border-radius:99px;display:inline-block;border:1px solid transparent}.type-badge.badge-medical{background:#2196f31a;color:#2196f3;border-color:#2196f333}.type-badge.badge-personal{background:#ffa6001a;color:#ffa600;border-color:#ffa60033}.type-badge.badge-event{background:#ff70431a;color:#ff7043;border-color:#ff704333}.status-badge{font-size:.75rem;font-weight:700;padding:.25rem .65rem;border-radius:6px;display:inline-flex;align-items:center;gap:.4rem}.status-badge.status-pending{background:#ffa6001f;color:#b45309;border:1px solid rgba(255,166,0,.2)}.status-badge.status-approved{background:#10b9811f;color:#047857;border:1px solid rgba(16,185,129,.2)}.status-badge.status-rejected{background:#ef44441f;color:#b91c1c;border:1px solid rgba(239,68,68,.2)}.pulsing-bullet{width:6px;height:6px;border-radius:50%;display:inline-block}.pulsing-bullet.warn{background:#ffa600;box-shadow:0 0 6px #ffa600;animation:bulletPulse 1.5s infinite ease-in-out}.pulsing-bullet.success{background:#10b981;box-shadow:0 0 6px #10b981}@keyframes bulletPulse{0%{transform:scale(.9);opacity:.7}50%{transform:scale(1.3);opacity:1;box-shadow:0 0 10px #ffa600}to{transform:scale(.9);opacity:.7}}@media(max-width:1400px){.attendance-kpi-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:1200px){.attendance-layout-split{grid-template-columns:1fr}.attendance-bottom-layout{width:100%}}@media(max-width:768px){.teacher-attendance-container{padding:20px;gap:20px}.attendance-hero-card{flex-direction:column;align-items:flex-start;padding:1.25rem 1.5rem}.hero-semester-badge{align-self:flex-end}.calendar-weekdays-row{font-size:.7rem}.calendar-days-grid{gap:.4rem}.day-cell{border-radius:8px;font-size:.85rem}.form-double-fields{grid-template-columns:1fr}.attendance-radial-panel-content{flex-direction:column;align-items:center;gap:1.5rem}}@media(max-width:580px){.attendance-kpi-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.leave-category-segmented-bar{grid-template-columns:1fr;gap:.25rem}.day-cell{border-radius:6px;font-size:.75rem}.attendance-kpi-grid{grid-template-columns:1fr}}@media(prefers-color-scheme:dark){.teacher-attendance-container{color:#f1f5f9}.attendance-glass-card{background:#0f172a73;border:1px solid rgba(255,255,255,.08);box-shadow:0 8px 32px #0006}.attendance-glass-card:hover{border-color:#10b98133;box-shadow:0 12px 40px #00524940}.attendance-hero-card{background:#0f172a73;border:1px solid rgba(255,255,255,.08);border-left:5px solid #10b981;box-shadow:0 8px 32px #0006}.attendance-hero-card:hover{border-color:#10b98133;box-shadow:0 12px 40px #00524940}.hero-icon-plate{background:#10b98114;border-color:#10b98133;color:#34d399}.hero-titles h2{background:linear-gradient(135deg,#fff 40%,#a7f3d0);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.hero-titles p{color:#94a3b8}.hero-semester-badge{background:#10b98114;border-color:#10b98140;color:#34d399}.kpi-glass-card{background:#0f172a59;border:1px solid rgba(255,255,255,.05);box-shadow:0 4px 20px #0000004d}.kpi-glass-card:hover{border-color:#ffffff1f}.kpi-growth-badge.bg-total{background:#ffffff14;color:#eceff1}.kpi-growth-badge.bg-present{background:#10b9811f;color:#34d399}.kpi-growth-badge.bg-leave{background:#2196f31f;color:#64b5f6}.kpi-growth-badge.bg-absent{background:#ef44441f;color:#f87171}.kpi-growth-badge.bg-holiday{background:#ffa6001f;color:#ffb833}.kpi-growth-badge.bg-weekoff{background:#607d8b1f;color:#b0bec5}.kpi-metric-info h3{color:#fff}.kpi-metric-info p{color:#90a4ae}.kpi-card-icon-wrapper.text-total{background:#ffffff0d;color:#fff;border:1px solid rgba(255,255,255,.1)}.card-header-bar{border-bottom:1px solid rgba(255,255,255,.05)}.header-meta h4{color:#fff}.header-meta p{color:#90a4ae}.month-selector-pill{background:#10b9811f;border:1px solid rgba(16,185,129,.25);color:#34d399}.calendar-weekdays-row{color:#90a4ae}.day-cell{background:#ffffff03}.status-present{background:#10b98114;border-color:#10b9812e;color:#10b981}.status-present:hover{background:#10b98140;border-color:#10b98173;box-shadow:0 0 12px #10b9814d}.status-holiday{background:#ffa60014;border-color:#ffa6002e;color:#ffa600}.status-holiday:hover{background:#ffa60040;border-color:#ffa60073;box-shadow:0 0 12px #ffa6004d}.status-leave{background:#2196f314;border-color:#2196f32e;color:#2196f3}.status-leave:hover{background:#2196f340;border-color:#2196f373;box-shadow:0 0 12px #2196f34d}.status-absent{background:#ef444414;border-color:#ef44442e;color:#ef4444}.status-absent:hover{background:#ef444440;border-color:#ef444473;box-shadow:0 0 12px #ef44444d}.status-weekoff{background:#ffffff03;border:1px dashed rgba(255,255,255,.08);color:#607d8b}.status-upcoming{background:#ffffff03;border-color:transparent;color:#455a64}.legend-item{color:#b0bec5}.legend-indicator.weekoff{background:#ffffff03;border:1px dashed rgba(255,255,255,.15)}.course-name{color:#e0f2f1}.progress-bar-track{background:#ffffff0a}.drilldown-periods-stack::-webkit-scrollbar-thumb{background:#ffffff26}.period-detail-row{background:#ffffff05;border:1px solid rgba(255,255,255,.05)}.period-detail-row:hover{background:#ffffff0a}.period-slot-label{color:#90a4ae}.period-detail-row.status-present .period-status-badge{color:#10b981}.period-detail-row.status-leave .period-status-badge{color:#2196f3}.period-detail-row.status-absent .period-status-badge{color:#ef4444}.period-subject-name{color:#fff}.period-faculty-meta{color:#b0bec5}.period-punch-time{color:#b0bec5;background:#ffffff08;border:1px solid rgba(255,255,255,.05)}.drilldown-empty-desk{background:#ffffff03;border:1px dashed rgba(255,255,255,.06)}.empty-title{color:#fff}.empty-desc{color:#90a4ae}.form-field-wrapper label{color:#b0bec5}.form-field-wrapper input[type=date],.form-field-wrapper textarea{background:#ffffff08;border:1px solid rgba(255,255,255,.08);color:#fff}.form-field-wrapper input[type=date]:focus,.form-field-wrapper textarea:focus{border-color:#10b981;background:#ffffff0d;box-shadow:0 0 10px #10b98126}.leave-category-segmented-bar{background:#ffffff08;border:1px solid rgba(255,255,255,.06)}.segment-btn{color:#90a4ae}.segment-btn:hover{color:#fff;background:#ffffff08}.segment-btn.active-segment{background:#10b981cc;border:1px solid rgba(16,185,129,.25);color:#fff;box-shadow:0 2px 8px #00524933}.upload-certificate-box{background:#ffffff03;border:1px dashed rgba(255,255,255,.15)}.upload-certificate-box:hover{border-color:#10b981;background:#10b98105}.upload-main-text{color:#e0f2f1}.file-success{color:#10b981;background:#10b9811a;border:1px solid rgba(16,185,129,.25)}.upload-sub-text{color:#78909c}.leave-submit-cta{background:linear-gradient(135deg,#10b981,#059669);border:1px solid rgba(16,185,129,.2);box-shadow:0 4px 15px #00524940}.leave-submit-cta:hover:not(:disabled){box-shadow:0 6px 20px #10b98159;border-color:#10b98166}.gauge-track-ring{stroke:#ffffff0d!important}.gauge-percentage-number{color:#fff;background:linear-gradient(135deg,#fff 40%,#10b981);-webkit-background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 2px 8px rgba(16,185,129,.25))}.gauge-sublabel{color:#90a4ae}.gauge-detail-cell{background:#ffffff05;border:1px solid rgba(255,255,255,.04)}.gauge-detail-cell:hover{background:#ffffff0a}.cell-num{color:#fff}.gauge-detail-cell:nth-child(4) .cell-num{color:#cbd5e1}.cell-label{color:#90a4ae}.gauge-feedback-pill{color:#b0bec5;background:#10b98114;border:1px solid rgba(16,185,129,.15)}.leave-ledger-table-wrapper{border:1px solid rgba(255,255,255,.05)}.leave-ledger-table th{background:#ffffff08;color:#90a4ae}.leave-ledger-table td{border-bottom:1px solid rgba(255,255,255,.04);color:#f1f5f9}.leave-ledger-table tr:hover{background:#ffffff05}.table-reason-text{color:#b0bec5}.status-badge.status-pending{background:#ffa6001f;color:#ffb833;border:1px solid rgba(255,166,0,.2)}.status-badge.status-approved{background:#10b9811f;color:#34d399;border:1px solid rgba(16,185,129,.2)}.status-badge.status-rejected{background:#ef44441f;color:#f87171;border:1px solid rgba(239,68,68,.2)}.type-badge.badge-medical{background:#2196f326;color:#64b5f6;border-color:#2196f340}.type-badge.badge-personal{background:#ffa60026;color:#ffb833;border-color:#ffa60040}.type-badge.badge-event{background:#ff704326;color:#ff8a65;border-color:#ff704340}.month-nav-btn{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);color:#f1f5f9}.month-nav-btn:hover{background:#10b981;border-color:#10b981;color:#fff;box-shadow:0 4px 12px #10b98159}.modal-backdrop-overlay{background:#00000080}.modal-content-container{background:#0f172ad9;border:1px solid rgba(255,255,255,.08);box-shadow:0 20px 50px #0009}.modal-header-bar-custom{border-bottom:1px solid rgba(255,255,255,.05)}.modal-close-btn{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);color:#94a3b8}.modal-close-btn:hover{background:#ef4444;color:#fff;border-color:#ef4444}.modal-action-buttons{border-top:1px solid rgba(255,255,255,.05)}.modal-cancel-cta{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);color:#cbd5e1}.modal-cancel-cta:hover{background:#ffffff14;color:#fff}.modal-submit-cta{background:linear-gradient(135deg,#10b981,#059669);border:1px solid rgba(16,185,129,.2);box-shadow:0 4px 12px #00524933}.modal-submit-cta:hover:not(:disabled){box-shadow:0 6px 16px #10b98159}.btn-trigger-apply-leave{background:linear-gradient(135deg,#10b981,#059669);border:1px solid rgba(16,185,129,.2);box-shadow:0 4px 12px #00524933}.btn-trigger-apply-leave:hover{box-shadow:0 6px 16px #10b98159}.compact-percentage-details h4{color:#fff}.compact-percentage-details p{color:#94a3b8}.compact-percentage-icon{background:#10b9811f;border-color:#10b98140}.compact-percentage-status-tag{color:#34d399;background:#10b9811f;border-color:#10b98140}}.teacher-timetable-container{padding:28px;max-width:100%;width:100%;box-sizing:border-box;color:#334155;display:flex;flex-direction:column;gap:28px;font-family:Outfit,Inter,-apple-system,BlinkMacSystemFont,sans-serif;position:relative}.teacher-timetable-container .date-scroller-outer-card{gap:.75rem;padding:1rem 1.25rem!important;background:#0052490a!important;border-color:#00524924!important;box-shadow:0 8px 32px #0052490a}@media(max-width:768px){.teacher-timetable-container{padding:16px;gap:20px}.timetable-period-card{padding:1rem!important}.period-card-main-row{flex-direction:column;align-items:flex-start;gap:12px}.period-left-badge-group{min-width:auto;width:100%}.period-right-status-badge{align-self:flex-end;margin-top:-30px}.timetable-timeline-stack:before{left:24px}.timeline-connector-emblem{left:-28px}.print-modal-card{height:95vh}.pdf-paper-page{padding:24px 16px}.pdf-metadata-grid{grid-template-columns:1fr}.pdf-timetable-table{display:block;overflow-x:auto}}.teacher-homework-container{padding:28px;max-width:100%;width:100%;box-sizing:border-box;color:#334155;display:flex;flex-direction:column;gap:28px;font-family:Outfit,Inter,-apple-system,BlinkMacSystemFont,sans-serif;position:relative}@media(max-width:1024px){.teacher-homework-container{padding:20px;gap:20px}}.attendance-page{padding:2rem;padding-bottom:60px;min-height:100vh;background:linear-gradient(180deg,#f8fafc,#f1f5f9);display:flex;flex-direction:column;gap:1.5rem}.attendance-header{display:flex;justify-content:center;align-items:center;text-align:center}.attendance-title-section{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#ffffff40;border-radius:1rem;padding:1.5rem 2rem;box-shadow:0 8px 32px #1f26875e}.attendance-title{font-family:Inter,sans-serif;font-size:2rem;font-weight:700;color:#0f172a;margin:0}.attendance-subtitle{font-family:Inter,sans-serif;font-size:1rem;color:#334155;margin-top:.5rem}.attendance-card{background:#fff3;border-radius:.75rem;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:1.25rem;box-shadow:0 4px 30px #0000001a}.attendance-controls{display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.attendance-control-group{flex:1 1 200px;display:flex;flex-direction:column}.control-label{font-weight:600;margin-bottom:.25rem;color:#1e293b}.form-input,.form-select{padding:.5rem .75rem;border:none;border-radius:.5rem;background:#fff6;color:#0f172a;font-size:.9rem;appearance:none}.form-input:focus,.form-select:focus{outline:none;box-shadow:0 0 0 2px #6366f166}.attendance-set-for-all{align-self:flex-end}.set-all-row{display:flex;gap:.5rem;align-items:center}.icon-button{background:#6366f1;color:#fff;border:none;border-radius:.35rem;padding:.35rem .6rem;cursor:pointer;font-size:1rem}.icon-button:disabled{background:#c7c9e1;cursor:not-allowed}.attendance-actions{margin-top:.5rem}.btn-primary{background:#10b981;color:#fff;border:none;border-radius:.5rem;padding:.6rem 1.2rem;font-weight:600;cursor:pointer;transition:background .2s ease}.btn-primary:hover{background:#059669}.attendance-table-card{overflow:visible;min-height:calc(100vh - 300px);background:transparent;border:none;box-shadow:none;padding:0}.attendance-table-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;flex-wrap:wrap}.summary-chip{padding:.25rem .5rem;border-radius:.35rem;font-size:.85rem;font-weight:500;margin-right:.4rem;color:#fff}.summary-holiday{background:#8b5cf6}.summary-unmarked{background:#6b7280}.attendance-table{width:100%;border-collapse:separate;border-spacing:0 .5rem}.attendance-table th{background:#ffffff4d;font-weight:600;color:#1e293b;padding:.5rem}.attendance-table td{background:#fff3;padding:.5rem;text-align:center}.status-radio{display:inline-flex;align-items:center;cursor:pointer}.status-radio input{display:none}.status-radio-dot{width:1rem;height:1rem;border-radius:50%;border:2px solid #64748b;background:#fff;transition:background .2s}.status-radio.active .status-radio-dot{background:currentColor;border-color:currentColor}.status-present{color:#10b981}.status-absent{color:#ef4444}.status-halfday{color:#f59e0b}.status-leave{color:#3b82f6}.status-holiday{color:#8b5cf6}.remark-input{width:100%;padding:.35rem .5rem;border:1px solid rgba(0,0,0,.1);border-radius:.35rem;background:#ffffff4d}@media(max-width:768px){.attendance-controls{flex-direction:column}.attendance-set-for-all{align-self:flex-start}}.exam-entry-page{padding:2rem;padding-bottom:80px;min-height:100vh;background:linear-gradient(180deg,#f8fafc,#f1f5f9);display:flex;flex-direction:column;gap:1.5rem}.exam-entry-header{display:flex;justify-content:center;align-items:center;text-align:center}.exam-title-section{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#ffffff73;border:1px solid rgba(255,255,255,.6);border-radius:1.25rem;padding:1.5rem 3rem;box-shadow:var(--shadow-lg);max-width:800px}.exam-title{font-family:var(--font-family);font-size:2.25rem;font-weight:800;color:var(--brand-primary);margin:0;letter-spacing:-.025em;background:linear-gradient(135deg,var(--brand-primary) 0%,var(--brand-primary-light) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.exam-subtitle{font-size:.95rem;color:var(--text-secondary);margin-top:.5rem;font-weight:500}.exam-card{background:#fff9;border-radius:1rem;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:1.5rem;border:1px solid rgba(255,255,255,.5);box-shadow:var(--shadow-md);transition:transform var(--transition-normal),box-shadow var(--transition-normal)}.exam-card:hover{box-shadow:var(--shadow-lg)}.exam-controls-grid{display:flex;flex-wrap:wrap;gap:1.25rem;align-items:flex-end}.control-group{flex:1 1 200px;display:flex;flex-direction:column;gap:.35rem}.max-marks-group{flex:0 1 120px}.load-btn-group{flex:0 1 auto}.control-label{font-size:.85rem;font-weight:var(--font-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;padding-left:2px}.form-input,.form-select{width:100%;padding:.65rem .85rem;border:1px solid var(--border-light);border-radius:.75rem;background:#ffffffd9;color:var(--text-primary);font-size:var(--font-size-base);font-family:var(--font-family);font-weight:var(--font-medium);transition:all var(--transition-fast);box-shadow:var(--shadow-xs)}.form-input:focus,.form-select:focus{outline:none;border-color:var(--brand-primary);background:var(--white);box-shadow:0 0 0 3px #00524926}.form-select{cursor:pointer;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23475569' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .75rem center;background-repeat:no-repeat;background-size:1.25rem;padding-right:2.25rem}.btn-load-list{background:linear-gradient(135deg,var(--brand-primary) 0%,var(--brand-primary-light) 100%);color:var(--white);border:none;border-radius:.75rem;padding:.65rem 1.5rem;font-weight:var(--font-semibold);font-size:var(--font-size-base);cursor:pointer;height:42px;display:flex;align-items:center;justify-content:center;gap:.5rem;box-shadow:var(--shadow-brand);transition:all var(--transition-normal);white-space:nowrap}.btn-load-list:hover{background:linear-gradient(135deg,var(--brand-primary-light) 0%,var(--brand-primary-dark) 100%);transform:translateY(-2px);box-shadow:0 6px 20px #00524940}.btn-load-list:active{transform:translateY(0)}.stats-overview-card{border-left:5px solid var(--brand-primary)}.stats-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem;border-bottom:1px solid rgba(0,82,73,.1);padding-bottom:.75rem}.stats-header h3{font-size:1.15rem;font-weight:var(--font-bold);color:var(--brand-primary)}.badge-mock-indicator{background:var(--warning-bg);color:var(--warning);font-size:.8rem;font-weight:var(--font-semibold);padding:.3rem .75rem;border-radius:var(--radius-full);border:1px solid rgba(245,158,11,.3)}.badge-modified-indicator{background:#eff6ff;color:var(--info);font-size:.8rem;font-weight:var(--font-semibold);padding:.3rem .75rem;border-radius:var(--radius-full);border:1px solid rgba(59,130,246,.3)}.badge-saved-indicator{background:var(--success-bg);color:var(--success);font-size:.8rem;font-weight:var(--font-semibold);padding:.3rem .75rem;border-radius:var(--radius-full);border:1px solid rgba(16,185,129,.3)}.stats-metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.25rem}.stat-metric-box{background:#ffffff80;border-radius:.75rem;padding:1rem;border:1px solid rgba(255,255,255,.4);display:flex;flex-direction:column;justify-content:center;min-height:90px}.metric-avg{grid-column:span 1}.metric-lbl{font-size:.8rem;font-weight:var(--font-semibold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem}.metric-val{font-size:1.75rem;font-weight:800;color:var(--gray-900);line-height:1.1}.metric-val .denom{font-size:.95rem;font-weight:var(--font-semibold);color:var(--text-muted)}.metric-sub-lbl{font-size:.75rem;color:var(--text-light);margin-top:.25rem}.metric-bar-track{width:100%;height:6px;background:var(--gray-200);border-radius:var(--radius-full);margin-top:.5rem;overflow:hidden}.metric-bar-fill{height:100%;background:linear-gradient(90deg,var(--brand-primary) 0%,var(--brand-primary-light) 100%);border-radius:var(--radius-full);transition:width .5s ease-out}.text-primary-theme{color:var(--brand-primary)}.text-warning-theme{color:#d97706}.status-distributions{justify-content:flex-start}.status-chips-flex{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.35rem}.status-chips-flex .chip{padding:.2rem .5rem;border-radius:.5rem;font-size:.75rem;font-weight:var(--font-semibold);color:var(--white)}.chip-passed{background:var(--success)}.chip-failed{background:var(--error)}.chip-absent{background:var(--warning)}.chip-unmarked{background:var(--gray-500)}.bulk-operations-bar{background:#ffa6000d;border:1px dashed rgba(255,166,0,.3);border-radius:.75rem;padding:1rem;margin-bottom:1.5rem}.bulk-operations-bar h4{font-size:.9rem;font-weight:var(--font-bold);color:var(--brand-secondary-dark);margin-bottom:.75rem;display:flex;align-items:center;gap:.35rem}.bulk-inputs-row{display:flex;flex-wrap:wrap;gap:1.5rem}.bulk-tool-group{display:flex;gap:.5rem;align-items:center;flex:1 1 280px}.bulk-num-input{max-width:150px}.bulk-txt-input{flex-grow:1}.btn-bulk-apply{background:var(--brand-secondary);color:var(--gray-900);border:none;padding:.65rem 1rem;border-radius:.75rem;font-weight:var(--font-bold);font-size:var(--font-size-base);cursor:pointer;transition:all var(--transition-fast)}.btn-bulk-apply:hover{background:var(--brand-secondary-light);box-shadow:var(--shadow-accent)}.exam-table-card{padding-bottom:1rem}.table-header-toolbar{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;flex-wrap:wrap;gap:1rem}.table-header-toolbar h3{font-size:1.25rem;font-weight:var(--font-bold);color:var(--brand-primary);margin:0}.table-header-toolbar p{font-size:.85rem;color:var(--text-muted);margin-top:.15rem}.toolbar-right-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.selected-info-tag{background:var(--gray-200);color:var(--text-secondary);font-size:.8rem;font-weight:var(--font-semibold);padding:.35rem .75rem;border-radius:.5rem}.items-per-page-wrapper{display:flex;align-items:center;gap:.5rem;font-size:.85rem;font-weight:var(--font-medium);color:var(--text-secondary)}.items-per-page-select{padding:.3rem .5rem;border:1px solid var(--border-light);border-radius:.35rem;background:var(--white);cursor:pointer}.exam-table-wrapper{overflow-x:auto;margin-bottom:1rem}.exam-table{width:100%;border-collapse:collapse;text-align:left}.exam-table th{background:#00524914;color:var(--brand-primary);font-weight:var(--font-bold);padding:.85rem 1rem;font-size:.9rem;border-bottom:2px solid rgba(0,82,73,.15)}.exam-table td{padding:.85rem 1rem;border-bottom:1px solid var(--border-light);font-size:.9rem;color:var(--text-primary);vertical-align:middle}.exam-table tbody tr{transition:background-color var(--transition-fast)}.exam-table tbody tr:hover{background-color:#00524905}.exam-table tbody tr.row-absent{background-color:#ef444408}.cell-center{text-align:center}.cell-student-name{font-weight:var(--font-semibold);color:var(--gray-800)}.max-marks-cell{color:var(--text-muted);font-weight:var(--font-semibold)}.marks-input-wrapper{position:relative;max-width:130px}.marks-score-input{width:100%;padding:.45rem .65rem;border:1px solid var(--border-medium);border-radius:.5rem;background:var(--white);font-weight:var(--font-bold);font-size:.95rem;text-align:center;transition:all var(--transition-fast)}.marks-score-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 2px #0052491f}.marks-score-input.input-error{border-color:var(--error);background-color:var(--error-bg);color:var(--error)}.marks-score-input:disabled{background-color:var(--gray-200);border-color:var(--gray-300);color:var(--text-light);cursor:not-allowed}.tooltip-error{position:absolute;top:100%;left:50%;transform:translate(-50%);background:var(--error);color:var(--white);font-size:.75rem;font-weight:var(--font-bold);padding:.2rem .5rem;border-radius:.25rem;white-space:nowrap;box-shadow:var(--shadow-sm);z-index:10;margin-top:4px}.tooltip-error:after{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-bottom-color:var(--error)}.grade-badge{display:inline-block;padding:.25rem .65rem;border-radius:var(--radius-lg);font-size:.8rem;font-weight:var(--font-bold);text-align:center;min-width:36px}.grade-o{background:var(--success-bg);color:var(--success);border:1px solid rgba(16,185,129,.2)}.grade-a\+{background:#ecfdf5;color:#047857;border:1px solid rgba(4,120,87,.2)}.grade-a{background:#f0fdf4;color:#16a34a;border:1px solid rgba(22,163,74,.2)}.grade-b\+{background:#fef8e7;color:#b45309;border:1px solid rgba(180,83,9,.2)}.grade-b{background:#fffbeb;color:#d97706;border:1px solid rgba(217,119,6,.2)}.grade-c{background:#fff7ed;color:#ea580c;border:1px solid rgba(234,88,12,.2)}.grade-d{background:#fff5f5;color:#e11d48;border:1px solid rgba(225,29,72,.2)}.grade-f{background:var(--error-bg);color:var(--error);border:1px solid rgba(239,68,68,.2)}.grade-ab{background:#f1f5f9;color:#475569;border:1px solid #cbd5e1}.grade-—{background:transparent;color:var(--text-light)}.btn-absent-toggle{background:var(--success-bg);color:var(--success);border:1px solid rgba(16,185,129,.3);padding:.35rem .75rem;border-radius:.5rem;font-size:.8rem;font-weight:var(--font-bold);cursor:pointer;transition:all var(--transition-fast);min-width:75px}.btn-absent-toggle:hover{background:var(--success);color:var(--white)}.btn-absent-toggle.active-absent{background:var(--error-bg);color:var(--error);border-color:#ef44444d}.btn-absent-toggle.active-absent:hover{background:var(--error);color:var(--white)}.table-remark-input{width:100%;padding:.45rem .65rem;border:1px solid var(--border-light);border-radius:.5rem;background:#ffffff80;font-size:.85rem;transition:all var(--transition-fast)}.table-remark-input:focus{outline:none;background:var(--white);border-color:var(--brand-primary)}.table-footer-pagination{margin-top:1rem;border-top:1px solid var(--border-light);padding-top:1rem}.exam-form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:1.5rem;border-top:1px solid rgba(0,82,73,.1);padding-top:1.25rem}.btn-secondary{background:var(--white);color:var(--text-secondary);border:1px solid var(--border-medium);padding:.65rem 1.25rem;border-radius:.75rem;font-weight:var(--font-bold);font-size:var(--font-size-base);cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-sm)}.btn-secondary:hover{background:var(--gray-100);color:var(--gray-900)}.btn-primary-save{background:linear-gradient(135deg,var(--brand-primary) 0%,var(--brand-primary-light) 100%);color:var(--white);border:none;padding:.65rem 1.75rem;border-radius:.75rem;font-weight:var(--font-bold);font-size:var(--font-size-base);cursor:pointer;transition:all var(--transition-normal);box-shadow:var(--shadow-brand)}.btn-primary-save:hover{background:linear-gradient(135deg,var(--brand-primary-light) 0%,var(--brand-primary-dark) 100%);box-shadow:0 6px 20px #00524940}.btn-primary-save:disabled{background:var(--gray-300);color:var(--text-light);cursor:not-allowed;box-shadow:none}.placeholder-card{padding:4rem 2rem;text-align:center}.placeholder-content{max-width:450px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:1rem}.placeholder-icon{font-size:3.5rem;background:#00524914;width:90px;height:90px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-3xl);color:var(--brand-primary);margin-bottom:.5rem}.placeholder-content h3{font-size:1.35rem;font-weight:var(--font-bold);color:var(--brand-primary);margin:0}.placeholder-content p{font-size:.9rem;color:var(--text-muted);line-height:var(--line-height-relaxed);margin:0}.success-toast{position:fixed;top:24px;right:24px;z-index:1100;display:flex;align-items:center;gap:.75rem;background:var(--white);border-left:4px solid var(--success);box-shadow:var(--shadow-xl);padding:1rem 1.25rem;border-radius:.75rem;max-width:400px}.success-icon{font-size:1.25rem}.success-message{font-size:.9rem;font-weight:var(--font-semibold);color:var(--gray-800);line-height:var(--line-height-tight)}.success-close{background:transparent;border:none;color:var(--text-light);cursor:pointer;padding:.25rem;font-size:.9rem;transition:color var(--transition-fast);margin-left:auto}.success-close:hover{color:var(--text-muted)}.hover-lift{transition:transform var(--transition-normal),box-shadow var(--transition-normal)}.hover-lift:hover{transform:translateY(-2px)}@media(max-width:768px){.exam-controls-grid{flex-direction:column;align-items:stretch}.max-marks-group{flex:1 1 auto}.btn-load-list{width:100%}.stats-metrics-grid{grid-template-columns:1fr}.bulk-tool-group{flex:1 1 100%}.bulk-num-input{max-width:100%}.table-header-toolbar{flex-direction:column;align-items:stretch}.toolbar-right-actions{justify-content:space-between}}.student-circulars-container{padding:28px;max-width:100%;width:100%;box-sizing:border-box;color:#334155;display:flex;flex-direction:column;gap:28px;font-family:Outfit,Inter,-apple-system,BlinkMacSystemFont,sans-serif;position:relative}.circular-glass-card{background:#ffffffbf;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(0,82,73,.08);border-radius:16px;padding:1.5rem;box-shadow:0 8px 32px #00524908;display:flex;flex-direction:column;gap:1.25rem;transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s cubic-bezier(.16,1,.3,1),border-color .4s cubic-bezier(.16,1,.3,1)}.circular-glass-card:hover{border-color:#00524926;box-shadow:0 12px 40px #0052490f}.circulars-hero-card{background:#ffffffbf;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(0,82,73,.08);border-left:5px solid #005249;border-radius:16px;padding:1.25rem 1.75rem;display:flex;justify-content:space-between;align-items:center;gap:1.5rem;box-shadow:0 8px 32px #00524908;position:relative;overflow:hidden;flex-wrap:wrap}.circulars-hero-card .hero-branding{display:flex;align-items:center;gap:1.25rem}.circulars-hero-card .hero-icon-plate{font-size:1.75rem;background:#0052490a;width:52px;height:52px;display:flex;align-items:center;justify-content:center;border-radius:12px;border:1px solid rgba(0,82,73,.1);color:#005249}.circulars-hero-card .hero-titles h2{font-size:1.35rem;font-weight:800;letter-spacing:-.02em;color:#005249;margin:0 0 4px}.circulars-hero-card .hero-titles p{font-size:.88rem;color:#64748b;margin:0;font-weight:400}.circulars-filters-card{padding:1rem 1.25rem!important;background:#0052490a!important;border-color:#00524924!important;box-shadow:0 8px 32px #0052490a}.filters-group-row{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;flex-wrap:wrap}.search-bar-wrapper{position:relative;flex:1;min-width:280px;display:flex;align-items:center}.search-icon{position:absolute;left:14px;font-size:.95rem;color:#94a3b8;pointer-events:none}.search-input{width:100%;padding:10px 40px;border-radius:12px;border:1px solid rgba(0,82,73,.15);background:#fff;font-size:.88rem;font-weight:500;color:#1e293b;outline:none;transition:all .3s ease;box-sizing:border-box}.search-input:focus{border-color:#005249;box-shadow:0 0 0 3px #0052491a;transform:translateY(-1px)}.clear-search-btn{position:absolute;right:12px;background:#f1f5f9;border:none;color:#94a3b8;font-size:1.1rem;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:all .2s}.clear-search-btn:hover{background:#e2e8f0;color:#475569}.category-pill-track{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.category-pill{padding:8px 16px;border-radius:99px;border:1px solid rgba(0,82,73,.1);background:#fff;color:#005249;font-size:.82rem;font-weight:700;cursor:pointer;transition:all .3s cubic-bezier(.16,1,.3,1);box-shadow:0 2px 4px #00524905}.category-pill:hover{border-color:#005249;background:#00524908;transform:translateY(-1px)}.category-pill.active-pill{background:linear-gradient(135deg,#005249,#0f766e);border-color:#005249;color:#fff;box-shadow:0 4px 12px #00524926;transform:translateY(-1px)}.circulars-list-wrapper{position:relative;min-height:250px}.circulars-timeline-feed{display:flex;flex-direction:column;gap:24px;position:relative;padding-left:20px}.circulars-timeline-feed:before{content:"";position:absolute;left:2px;top:15px;bottom:15px;width:2px;background:linear-gradient(to bottom,#0052490a,#00524926,#0052490a);z-index:1}.circular-feed-card{position:relative;z-index:2;border-left:5px solid #005249;padding:1.5rem!important;gap:1rem!important;overflow:hidden}.circular-feed-card:before{content:"";position:absolute;left:-24px;top:30px;width:8px;height:8px;border-radius:50%;background:#fff;border:3px solid #005249;box-shadow:0 0 0 2px #00524914;z-index:5;transition:transform .3s ease}.circular-feed-card:hover:before{transform:scale(1.25);box-shadow:0 0 8px #00524940}.card-header-meta{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px}.meta-badge-date{font-size:.8rem;font-weight:700;color:#64748b;display:flex;align-items:center;gap:6px}.meta-badge-icon{font-size:.9rem}.circular-card-title{font-size:1.25rem;font-weight:800;letter-spacing:-.01em;color:#0f172a;margin:0;display:flex;align-items:center;gap:10px}.circular-emoji-icon{font-size:1.4rem}.circular-card-body{display:flex;flex-direction:column}.circular-text-preview{font-size:.92rem;line-height:1.6;color:#475569;margin:0}.circular-text-preview.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.circular-expanded-block{max-height:0;opacity:0;overflow:hidden;transition:max-height .4s cubic-bezier(.16,1,.3,1),opacity .4s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column;gap:1.25rem}.circular-expanded-block.show-full{max-height:2000px;opacity:1;padding-top:4px}.circular-full-text{font-size:.92rem;line-height:1.6;color:#334155;white-space:pre-line;margin:0}.circular-attachments-section{border-top:1px dashed rgba(0,82,73,.12);padding-top:1.25rem;display:flex;flex-direction:column;gap:.75rem}.attachments-title{font-size:.85rem;font-weight:800;text-transform:uppercase;letter-spacing:.03em;color:#005249;margin:0;display:flex;align-items:center;gap:6px}.attachments-icon{font-size:1rem}.attachments-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.attachment-file-pill{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:10px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px}.attachment-file-pill:hover{background:#f1f5f9;border-color:#cbd5e1}.file-info-group{display:flex;align-items:center;gap:12px;overflow:hidden}.file-type-emblem{font-size:1.4rem;flex-shrink:0}.file-texts{display:flex;flex-direction:column;overflow:hidden}.file-name{font-size:.82rem;font-weight:700;color:#334155;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-size{font-size:.72rem;color:#64748b;font-weight:500}.attachment-actions-group{display:flex;gap:8px;align-items:center;flex-shrink:0}.file-action-btn{background:#fff;border:1px solid rgba(0,82,73,.08);width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 1px 4px #00000008;flex-shrink:0;transition:all .3s cubic-bezier(.16,1,.3,1);padding:0}.file-preview-btn{color:#0d9488}.file-preview-btn:hover{background:#0d9488;color:#fff;border-color:#0d9488;transform:scale(1.08)}.file-download-btn{color:#005249}.file-download-btn:hover{background:#005249;color:#fff;border-color:#005249;transform:scale(1.08)}.circular-card-footer{display:flex;justify-content:flex-end;border-top:1px solid rgba(0,82,73,.04);padding-top:.75rem}.expand-toggle-btn{background:#0052490d;border:1px solid rgba(0,82,73,.08);color:#005249;padding:6px 16px;border-radius:8px;font-size:.82rem;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:8px}.expand-toggle-btn:hover{background:#005249;color:#fff;border-color:#005249;box-shadow:0 4px 10px #0052491a}.expand-toggle-btn .arrow-icon{font-size:.65rem;transition:transform .3s ease}.empty-circulars-state{align-items:center;text-align:center;padding:4rem 2rem;gap:.75rem;background:#00524905!important;border-color:#00524914!important}.empty-circulars-state .empty-state-icon{font-size:2.75rem;animation:noticeFloat 3s infinite ease-in-out}@keyframes noticeFloat{0%{transform:translateY(0) rotate(0)}50%{transform:translateY(-6px) rotate(2deg)}to{transform:translateY(0) rotate(0)}}.empty-circulars-state h4{font-size:1.15rem;font-weight:800;color:#005249;margin:0}.empty-circulars-state p{font-size:.88rem;color:#64748b;max-width:400px;margin:0;line-height:1.5}.reset-filters-btn{background:#005249;color:#fff;border:1px solid #005249;padding:8px 20px;border-radius:8px;font-size:.82rem;font-weight:700;cursor:pointer;margin-top:8px;box-shadow:0 4px 12px #0052491f}.reset-filters-btn:hover{background:#0f766e;border-color:#0f766e;transform:translateY(-1px)}.document-preview-overlay{position:fixed;inset:0;background:#0f172a99;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px}.document-preview-modal{background:#fff;border-radius:20px;border:1px solid rgba(255,255,255,.8);width:100%;max-width:800px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 24px 64px #00000026;overflow:hidden}.preview-modal-header{padding:16px 24px;background:#0052490a;border-bottom:1px solid rgba(0,82,73,.08);display:flex;justify-content:space-between;align-items:center}.preview-file-title{display:flex;align-items:center;gap:12px}.preview-file-title .file-icon{font-size:1.5rem}.preview-file-title .file-name{font-size:.95rem;font-weight:700;color:#0f172a}.preview-close-btn{background:#0052490d;border:none;width:28px;height:28px;border-radius:50%;font-size:1.25rem;color:#005249;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;padding:0}.preview-close-btn:hover{background:#005249;color:#fff}.preview-modal-body{padding:24px;overflow-y:auto;background:#f1f5f9;flex:1;display:flex;justify-content:center;align-items:flex-start;min-height:350px}.preview-modal-footer{padding:14px 24px;border-top:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center;background:#fff}.preview-status-text{font-size:.8rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.05em}.preview-download-btn{background:linear-gradient(135deg,#005249,#0f766e);color:#fff;border:none;padding:8px 20px;border-radius:8px;font-size:.88rem;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:8px;box-shadow:0 4px 12px #00524926}.preview-download-btn:hover{background:linear-gradient(135deg,#0f766e,#0e7490);transform:translateY(-1px)}.pdf-preview-container{width:100%;display:flex;flex-direction:column;gap:16px;align-items:center}.pdf-toolbar{width:100%;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:8px 16px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 4px #00000005}.pdf-toolbar-left,.pdf-toolbar-right{display:flex;align-items:center;gap:12px;font-size:.82rem;font-weight:600;color:#475569}.pdf-toolbar-center{font-size:.85rem;font-weight:700;color:#1e293b}.toolbar-action-icon{cursor:pointer;padding:4px;border-radius:4px;transition:background .2s}.toolbar-action-icon:hover{background:#f1f5f9}.pdf-page-sheet{background:#fff;border:1px solid #e2e8f0;border-radius:4px;width:100%;max-width:600px;min-height:700px;box-shadow:0 4px 20px #0000000a;padding:40px;box-sizing:border-box;display:flex;flex-direction:column;position:relative}.pdf-letterhead{display:flex;flex-direction:column;align-items:center;border-bottom:2px double rgba(0,82,73,.15);padding-bottom:16px;margin-bottom:24px;text-align:center}.pdf-letterhead .school-title{font-family:Outfit,sans-serif;font-size:1.15rem;font-weight:800;color:#005249;letter-spacing:.05em}.pdf-letterhead .school-subtitle{font-size:.7rem;font-weight:600;color:#64748b;text-transform:uppercase;margin-top:2px}.pdf-doc-meta{display:flex;justify-content:space-between;font-size:.75rem;font-weight:600;color:#64748b;margin-bottom:20px}.pdf-doc-title{font-size:1rem;font-weight:800;color:#0f172a;margin:0 0 16px;text-align:center}.pdf-doc-paragraphs{display:flex;flex-direction:column;gap:14px}.pdf-paragraph{font-size:.85rem;line-height:1.6;color:#334155;text-align:justify}.pdf-signature-block{margin-top:auto;align-self:flex-end;text-align:right;font-size:.8rem;color:#475569;border-top:1px dashed rgba(0,0,0,.1);padding-top:12px;width:150px}.word-preview-container{width:100%;display:flex;flex-direction:column;gap:16px;align-items:center}.word-ribbon{width:100%;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:10px 16px;box-shadow:0 2px 4px #00000005;display:flex;flex-direction:column;gap:8px}.word-ribbon-tabs{display:flex;gap:16px;border-bottom:1px solid #f1f5f9;padding-bottom:4px}.word-tab{font-size:.72rem;font-weight:700;color:#475569;text-transform:uppercase;cursor:pointer}.word-tab.active-word-tab{color:#005249;border-bottom:2px solid #005249}.word-ribbon-tools{display:flex;gap:12px;align-items:center;font-size:.82rem}.word-page-sheet{background:#fff;border:1px solid #e2e8f0;border-radius:4px;width:100%;max-width:600px;min-height:700px;box-shadow:0 4px 20px #0000000a;padding:48px;box-sizing:border-box;display:flex;flex-direction:column}.word-heading-1{font-size:1.25rem;font-weight:800;color:#1e3a8a;border-bottom:1px solid #e2e8f0;padding-bottom:6px;margin-bottom:16px}.word-heading-2{font-size:.95rem;font-weight:700;color:#2563eb;margin:14px 0 8px}.word-body-text{font-size:.85rem;line-height:1.6;color:#334155;margin-bottom:12px}.word-bullet-list{display:flex;flex-direction:column;gap:6px;margin:8px 0 16px 20px}.word-bullet-item{font-size:.85rem;color:#334155;display:flex;gap:8px}.poster-preview-container{width:100%;max-width:500px;background:linear-gradient(135deg,#020617,#0f172a);border-radius:12px;border:1px solid rgba(255,255,255,.1);padding:32px;box-sizing:border-box;box-shadow:0 10px 30px #00000040;display:flex;flex-direction:column;align-items:center;text-align:center;position:relative;overflow:hidden}.poster-preview-container:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(13,148,136,.1) 0%,transparent 60%);pointer-events:none}.poster-tagline{font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.15em;color:#0d9488;margin-bottom:16px}.poster-title{font-family:Outfit,sans-serif;font-size:1.85rem;font-weight:900;background:linear-gradient(135deg,#fff,#94a3b8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin:0 0 8px;letter-spacing:-.02em}.poster-subtitle{font-size:.85rem;color:#cbd5e1;max-width:320px;margin-bottom:24px;line-height:1.4}.poster-details-box{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:8px;width:100%;padding:16px;display:flex;flex-direction:column;gap:8px}.poster-detail-item{font-size:.78rem;color:#94a3b8;display:flex;justify-content:space-between}.poster-detail-item strong{color:#f8fafc}.teacher-task-page{width:100%;padding:28px;box-sizing:border-box;color:#1e293b;display:flex;flex-direction:column;gap:22px}.task-page-header{background:#fff;border:1px solid rgba(0,82,73,.1);border-left:5px solid #005249;border-radius:14px;padding:20px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;box-shadow:0 10px 30px #0f172a0d}.task-page-header h1{margin:0;color:#005249;font-size:1.55rem;font-weight:800}.task-page-header p{margin:6px 0 0;color:#64748b;font-size:.92rem}.task-primary-btn,.task-secondary-btn{border:none;border-radius:10px;min-height:40px;padding:0 16px;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease}.task-primary-btn{background:#005249;color:#fff;box-shadow:0 8px 18px #0052492e}.task-secondary-btn{background:#f1f5f9;color:#334155}.task-primary-btn:hover,.task-secondary-btn:hover{transform:translateY(-1px)}.task-primary-btn:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}.task-tabs{width:fit-content;background:#0052490f;border:1px solid rgba(0,82,73,.12);border-radius:12px;padding:5px;display:flex;gap:5px}.task-tab{border:none;border-radius:9px;padding:10px 16px;min-width:120px;background:transparent;color:#005249;font-weight:800;cursor:pointer;display:inline-flex;justify-content:center;gap:8px}.task-tab span{min-width:22px;height:22px;border-radius:999px;background:#0052491a;display:inline-flex;align-items:center;justify-content:center;font-size:.78rem}.task-tab.active{background:#fff;box-shadow:0 4px 12px #0f172a14}.task-list{display:flex;flex-direction:column;gap:14px}.task-card{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:14px;box-shadow:0 10px 26px #0f172a0a;overflow:hidden}.task-card.expanded{border-color:#00524938}.task-summary-row{width:100%;border:none;background:transparent;color:inherit;padding:16px;cursor:pointer;display:grid;grid-template-columns:18px 145px 145px minmax(180px,1fr) minmax(190px,240px) auto 24px;align-items:center;gap:14px;text-align:left}.task-list-bullet{width:10px;height:10px;border-radius:50%;background:#005249;box-shadow:0 0 0 4px #0052491a;justify-self:center}.task-date-cell,.task-title-cell,.task-person-cell{display:flex;flex-direction:column;gap:4px;font-size:.94rem;font-weight:800}.task-date-cell small,.task-title-cell small,.task-person-cell small,.detail-label,.task-reply-box label{color:#64748b;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.task-person-cell em{color:#64748b;font-size:.82rem;font-style:normal;font-weight:600}.task-completed-badge{border-radius:999px;background:#dcfce7;color:#166534;padding:7px 12px;font-size:.78rem;font-weight:900}.task-expand-icon{color:#005249;font-size:.82rem;font-weight:900}.task-detail-panel{border-top:1px solid rgba(15,23,42,.08);padding:18px;background:#f8fafc;display:flex;flex-direction:column;gap:18px}.task-detail-grid{display:grid;grid-template-columns:minmax(180px,240px) 1fr;gap:20px}.task-detail-single{grid-template-columns:1fr}.task-detail-grid strong{display:block;margin-top:7px;color:#0f172a}.task-detail-grid p,.task-reply-readonly p{margin:6px 0 0;color:#475569;line-height:1.6}.task-reply-box,.task-reply-readonly{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:12px;padding:14px}.task-reply-box textarea,.task-modal textarea,.task-modal input,.task-modal select{width:100%;border:1px solid #cbd5e1;border-radius:10px;padding:11px 12px;box-sizing:border-box;color:#0f172a;background:#fff;font:inherit;outline:none}.task-reply-box textarea{margin-top:8px;resize:vertical}.task-reply-box textarea:focus,.task-modal textarea:focus,.task-modal input:focus,.task-modal select:focus{border-color:#005249;box-shadow:0 0 0 3px #0052491a}.reply-actions{display:flex;justify-content:flex-end;margin-top:12px}.task-empty-state{background:#fff;border:1px dashed rgba(0,82,73,.24);border-radius:14px;padding:42px 20px;text-align:center;color:#64748b}.task-empty-icon{font-size:2rem}.task-empty-state h3{color:#005249;margin:10px 0 6px}.task-modal-overlay{position:fixed;inset:0;z-index:1200;background:#0f172a8a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:20px}.task-modal{width:min(720px,100%);max-height:92vh;overflow:auto;background:#fff;border-radius:16px;box-shadow:0 24px 70px #0f172a47}.task-modal-header,.task-modal-footer{padding:18px 22px;display:flex;align-items:center;justify-content:space-between;gap:14px}.task-modal-header{border-bottom:1px solid #e2e8f0}.task-modal-header h2{margin:0;color:#005249}.task-modal-header p{margin:4px 0 0;color:#64748b}.task-modal-close{border:none;background:#f1f5f9;color:#334155;width:34px;height:34px;border-radius:50%;font-size:1.25rem;cursor:pointer}.task-modal-grid{padding:22px;display:grid;grid-template-columns:1fr 1fr;gap:16px}.task-modal-grid label{color:#334155;font-size:.86rem;font-weight:800;display:flex;flex-direction:column;gap:7px}.task-modal-full{grid-column:1 / -1}.task-modal textarea{resize:vertical}.task-modal-footer{border-top:1px solid #e2e8f0;justify-content:flex-end}@media(max-width:900px){.teacher-task-page{padding:18px}.task-page-header{align-items:flex-start;flex-direction:column}.task-summary-row{grid-template-columns:18px 1fr}.task-summary-row .task-date-cell,.task-summary-row .task-title-cell,.task-summary-row .task-person-cell,.task-summary-row .task-completed-badge,.task-summary-row .task-expand-icon{grid-column:2}.task-completed-badge{width:fit-content}.task-detail-grid,.task-modal-grid{grid-template-columns:1fr}.task-tabs{width:100%}.task-tab{flex:1;min-width:0}}.student-fee-container{padding:28px;max-width:100%;width:100%;box-sizing:border-box;color:#334155;display:flex;flex-direction:column;gap:28px;font-family:Outfit,Inter,-apple-system,BlinkMacSystemFont,sans-serif;position:relative}.animate-fade-in{animation:feeFadeIn .5s cubic-bezier(.16,1,.3,1) both}.animate-scale-in{animation:feeScaleIn .4s cubic-bezier(.34,1.56,.64,1) both}@keyframes feeFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes feeScaleIn{0%{opacity:0;transform:scale(.95) translateY(15px)}to{opacity:1;transform:scale(1) translateY(0)}}.fee-glass-card{background:#ffffffbf;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(0,82,73,.08);border-radius:16px;padding:1.5rem;box-shadow:0 8px 32px #00524908;display:flex;flex-direction:column;gap:1.25rem;transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s cubic-bezier(.16,1,.3,1),border-color .4s cubic-bezier(.16,1,.3,1)}.fee-glass-card:hover{border-color:#00524926;box-shadow:0 12px 40px #0052490f}.fee-hero-card{background:#ffffffbf;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(0,82,73,.08);border-left:5px solid #005249;border-radius:16px;padding:1.25rem 1.75rem;display:flex;justify-content:space-between;align-items:center;gap:1.5rem;box-shadow:0 8px 32px #00524908;position:relative;overflow:hidden}.hero-titles h2{font-size:1.35rem;font-weight:800;letter-spacing:-.02em;color:#005249;margin:0 0 .15rem;background:linear-gradient(135deg,#005249 30%,#007d70);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.hero-semester-badge{background:#0052490a;color:#005249;border:1px solid rgba(0,82,73,.1);padding:.4rem .85rem;border-radius:99px;font-size:.78rem;font-weight:700;display:flex;align-items:center;gap:.4rem;text-transform:uppercase;letter-spacing:.03em}.badge-bullet{width:7px;height:7px;background:#10b981;border-radius:50%;display:inline-block;box-shadow:0 0 6px #10b981}.fee-toast-notification{position:fixed;top:1.5rem;right:1.5rem;z-index:1100;background:#ffffffe6;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(16,185,129,.25);border-left:4px solid #10b981;border-radius:12px;padding:1rem 1.5rem;color:#0f172a;font-weight:600;font-size:.88rem;box-shadow:0 10px 25px #00524914;display:flex;align-items:center;gap:.75rem;animation:toastSlideIn .3s cubic-bezier(.16,1,.3,1) both}@keyframes toastSlideIn{0%{transform:translate(100%) translateY(-10px);opacity:0}to{transform:translate(0) translateY(0);opacity:1}}.fee-tab-navigation-bar{background:#00524908;padding:.35rem;border-radius:99px;display:inline-flex;align-self:flex-start;border:1px solid rgba(0,82,73,.05);gap:.25rem}.fee-tab-btn{background:transparent;border:none;padding:.65rem 1.5rem;border-radius:99px;font-size:.88rem;font-weight:750;color:#64748b;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:all .3s cubic-bezier(.16,1,.3,1)}.fee-tab-btn:hover{color:#005249;background:#00524905}.fee-tab-btn.active-tab{background:linear-gradient(135deg,#005249,#007d70);color:#fff;box-shadow:0 4px 12px #0052491f}.due-count-indicator{font-size:.75rem;font-weight:800;background:#ef4444;color:#fff;padding:.1rem .4rem;border-radius:99px;line-height:1}.fee-opening-page{gap:20px}.fee-opening-panel,.fee-opening-table-card{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:12px;box-shadow:0 8px 28px #0f172a0a}.fee-opening-panel{padding:20px}.fee-opening-filter-grid{display:grid;grid-template-columns:minmax(180px,240px) minmax(200px,1fr) minmax(220px,1fr) auto;gap:16px;align-items:end}.fee-opening-filter-grid label{display:flex;flex-direction:column;gap:8px;color:#334155;font-size:.84rem;font-weight:800}.fee-opening-filter-grid select,.fee-opening-filter-grid input{width:100%;min-height:42px;border:1px solid #cbd5e1;border-radius:10px;box-sizing:border-box;padding:10px 12px;color:#0f172a;font:inherit;font-weight:600;outline:none}.fee-opening-filter-grid select:focus,.fee-opening-filter-grid input:focus{border-color:#005249;box-shadow:0 0 0 3px #0052491a}.fee-opening-filter-grid input:disabled{background:#f8fafc;color:#94a3b8}.fee-opening-filter-actions button{min-height:42px;border:none;border-radius:10px;padding:0 18px;background:#f1f5f9;color:#334155;font-weight:800;cursor:pointer}.fee-opening-table-card{overflow:hidden}.fee-opening-table-wrap{width:100%;overflow-x:auto}.fee-opening-table{width:100%;border-collapse:collapse}.fee-opening-table th,.fee-opening-table td{padding:14px 16px;border-bottom:1px solid #e2e8f0;text-align:left;vertical-align:middle;white-space:nowrap}.fee-opening-table thead th{background:#f4f7fb;color:#0f172a;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.fee-opening-table tbody tr:nth-child(2n){background:#f8fafc}.fee-opening-table tbody tr:hover{background:#eef6f7}.fee-opening-empty{padding:42px 20px;color:#64748b;font-weight:700;text-align:center}.fee-split-layout{display:grid;grid-template-columns:1fr 360px;gap:1.5rem;align-items:start}.select-all-bar{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(0,82,73,.06);padding-bottom:1rem}.select-all-label{display:flex;align-items:center;gap:1rem}.select-all-label h4{font-size:.95rem;font-weight:750;color:#0f172a;margin:0}.select-all-label p{font-size:.75rem;color:#64748b;margin:.15rem 0 0;font-weight:500}.due-list-summary{font-size:.8rem;font-weight:700;color:#005249;background:#0052490a;padding:.35rem .75rem;border-radius:8px;border:1px solid rgba(0,82,73,.08)}.fee-cards-stack{display:flex;flex-direction:column;gap:1rem;margin-top:.5rem}.fee-monthly-card{background:#ffffff73;border:1px solid rgba(0,82,73,.06);border-radius:12px;padding:1rem 1.25rem;transition:all .3s cubic-bezier(.16,1,.3,1);overflow:hidden}.fee-monthly-card.border-overdue{border-left:4px solid #ef4444}.fee-monthly-card.border-unpaid{border-left:4px solid #f59e0b}.fee-monthly-card.selected-bg{background:#10b9810a!important;border-color:#10b98140!important;border-left-color:#10b981!important;box-shadow:0 4px 15px #10b9810a}.fee-monthly-card:hover{background:#ffffffb3;border-color:#0052491f}.fee-card-main-row{display:flex;align-items:center;gap:1rem}.card-select-cb{flex-shrink:0}.fee-card-info{flex-grow:1;cursor:pointer}.fee-month-title{display:flex;align-items:center;gap:.75rem}.fee-month-title h4{font-size:1.05rem;font-weight:750;color:#0f172a;margin:0}.fee-status-badge{font-size:.68rem;font-weight:750;padding:.15rem .5rem;border-radius:6px}.fee-status-badge.status-overdue{background:#ef444414;color:#ef4444;border:1px solid rgba(239,68,68,.15)}.fee-status-badge.status-unpaid{background:#f59e0b14;color:#b45309;border:1px solid rgba(245,158,11,.15)}.fee-due-date-meta{font-size:.78rem;color:#64748b;margin-top:.25rem}.fee-due-date-meta strong{color:#475569}.fee-card-sum{display:flex;align-items:center;gap:1rem;cursor:pointer}.due-price-number{font-size:1.25rem;font-weight:850;color:#005249}.arrow-expand-btn{background:#00524908;border:1px solid rgba(0,82,73,.05);color:#64748b;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;cursor:pointer;font-size:.65rem;transition:all .3s cubic-bezier(.16,1,.3,1)}.arrow-expand-btn:hover{background:#00524914;color:#005249}.arrow-expand-btn.rotated{transform:rotate(180deg);background:#005249;color:#fff;border-color:#005249}.checkbox-container{display:block;position:relative;width:20px;height:20px;cursor:pointer;-webkit-user-select:none;user-select:none}.checkbox-container input{position:absolute;opacity:0;cursor:pointer;height:0;width:0}.checkmark{position:absolute;top:0;left:0;height:20px;width:20px;background-color:#ffffffd9;border:1px dashed rgba(0,82,73,.25);border-radius:6px;transition:all .3s cubic-bezier(.16,1,.3,1)}.checkbox-container:hover input~.checkmark{border-color:#005249;background-color:#fff}.checkbox-container input:checked~.checkmark{background-color:#10b981;border-color:#10b981;box-shadow:0 0 8px #10b98159}.checkmark:after{content:"";position:absolute;display:none}.checkbox-container input:checked~.checkmark:after{display:block}.checkbox-container .checkmark:after{left:6.5px;top:3px;width:5px;height:9px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}.fee-expandable-details-grid{transition:all .4s cubic-bezier(.16,1,.3,1);overflow:hidden}.details-hide{max-height:0;opacity:0;margin-top:0}.details-show{max-height:500px;opacity:1;margin-top:1rem;border-top:1px dashed rgba(0,82,73,.08);padding-top:1rem}.breakdown-details-table{width:100%;border-collapse:collapse}.breakdown-details-table th{font-size:.72rem;color:#64748b;text-transform:uppercase;font-weight:700;letter-spacing:.03em;padding:.5rem 0;border-bottom:1px solid rgba(0,82,73,.04)}.breakdown-details-table td{padding:.65rem 0;font-size:.85rem;color:#475569;border-bottom:1px solid rgba(0,82,73,.04)}.breakdown-details-table tr:last-child td{border-bottom:none}.align-right{text-align:right}.bold-text{font-weight:600;color:#334155}.total-breakdown-row td{font-weight:750;color:#005249;border-top:1px solid rgba(0,82,73,.08)!important;font-size:.9rem;padding-top:.85rem}.grand-total{font-size:1.05rem}.billing-summary-card{position:sticky;top:1.5rem;border-top:4px solid #f59e0b!important}.billing-summary-computations{display:flex;flex-direction:column;gap:1.25rem}.summary-row{display:flex;justify-content:space-between;align-items:center;font-size:.88rem;color:#64748b;font-weight:600}.deep-brand-color{color:#005249;font-weight:750}.selected-months-pillbox{display:flex;flex-wrap:wrap;gap:.45rem}.selected-month-pill{font-size:.72rem;font-weight:750;color:#b45309;background:#f59e0b14;border:1px solid rgba(245,158,11,.15);padding:.3rem .65rem;border-radius:6px}.no-selection-placeholder{font-size:.8rem;color:#94a3b8;font-style:italic;padding:.5rem 0}.divider-line{height:1px;background:#0052490f}.summary-itemized-list{display:flex;flex-direction:column;gap:.65rem;background:#00524905;border:1px solid rgba(0,82,73,.04);padding:.75rem;border-radius:8px}.summary-itemized-row{display:flex;justify-content:space-between;align-items:center;font-size:.8rem;color:#475569;font-weight:550}.grand-payout-total-row{display:flex;justify-content:space-between;align-items:center;background:#10b9810a;border:1px solid rgba(16,185,129,.1);padding:.85rem 1rem;border-radius:10px}.total-labels span{font-size:.88rem;font-weight:750;color:#0f172a;display:block}.total-labels p{font-size:.7rem;color:#64748b;margin:.15rem 0 0;font-weight:500}.total-payout-price{font-size:1.5rem;font-weight:900;color:#10b981}.btn-trigger-pay-dues{width:100%;background:linear-gradient(135deg,#005249,#007d70);border:1px solid rgba(0,82,73,.15);color:#fff;font-weight:750;font-size:.95rem;padding:.85rem;border-radius:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .3s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 16px #0052491f}.btn-trigger-pay-dues:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px #00524938}.btn-trigger-pay-dues:disabled{opacity:.5;background:#cbd5e1;border-color:#e2e8f0;color:#94a3b8;cursor:not-allowed;box-shadow:none}.receipt-ledger-table-wrapper{overflow-x:auto;border:1px solid rgba(0,82,73,.05);border-radius:10px}.receipt-ledger-table{width:100%;border-collapse:collapse;text-align:left}.receipt-ledger-table th{background:#00524905;color:#005249;font-weight:750;font-size:.82rem;padding:1rem 1.25rem;border-bottom:1px solid rgba(0,82,73,.05);text-transform:uppercase;letter-spacing:.03em}.receipt-ledger-table td{padding:1rem 1.25rem;font-size:.88rem;color:#475569;border-bottom:1px solid rgba(0,82,73,.04)}.receipt-ledger-table tr:hover{background:#00524903}.pay-method-badge{font-size:.78rem;font-weight:700;color:#475569;background:#0052490a;padding:.25rem .5rem;border-radius:6px;border:1px solid rgba(0,82,73,.06)}.ref-code{font-family:Courier New,Courier,monospace;font-weight:700;color:#475569;background:#00000008;padding:.2rem .4rem;border-radius:4px}.success-amount{color:#10b981;font-weight:750}.align-center{text-align:center}.btn-action-receipt-download{background:#fff;border:1px solid rgba(0,82,73,.12);color:#005249;padding:.45rem 1rem;border-radius:8px;font-size:.78rem;font-weight:750;cursor:pointer;display:inline-flex;align-items:center;gap:.4rem;transition:all .3s ease}.btn-action-receipt-download:hover{background:#0052490a;border-color:#00524940;color:#005249}.fee-empty-state{text-align:center;padding:3rem 1.5rem}.empty-icon{font-size:3rem;display:block;margin-bottom:1rem}.fee-empty-state h3{font-size:1.15rem;font-weight:800;color:#0f172a;margin:0 0 .5rem}.fee-empty-state p{font-size:.88rem;color:#64748b;max-width:420px;margin:0 auto}.modal-backdrop-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0f172a4d;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:1.5rem}.modal-content-container{background:#ffffffd9;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid rgba(0,82,73,.1);border-radius:20px;padding:2rem;box-shadow:0 24px 70px #00000026;display:flex;flex-direction:column;gap:1.5rem;position:relative;overflow:hidden}.checkout-modal-width{width:100%;max-width:520px}.modal-header-bar-custom{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid rgba(0,82,73,.06);padding-bottom:1rem}.modal-header-meta h4{font-size:1.15rem;font-weight:800;color:#005249;margin:0}.modal-header-meta p{font-size:.78rem;color:#64748b;margin:.25rem 0 0;font-weight:500}.modal-close-btn{background:#00524908;border:1px solid rgba(0,82,73,.05);color:#64748b;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;cursor:pointer;transition:all .3s ease}.modal-close-btn:hover{background:#ef4444;color:#fff;border-color:#ef4444}.checkout-modal-form{display:flex;flex-direction:column;gap:1.25rem}.checkout-value-display-banner{background:#0052490a;border:1px solid rgba(0,82,73,.08);padding:1rem 1.25rem;border-radius:12px;display:flex;justify-content:space-between;align-items:center}.checkout-banner-info span{font-size:.75rem;color:#64748b;font-weight:600;display:block}.checkout-banner-info h3{font-size:1.75rem;font-weight:900;color:#005249;margin:.25rem 0 0}.checkout-badge-secure{font-size:.72rem;font-weight:750;color:#047857;background:#10b98114;border:1px solid rgba(16,185,129,.15);padding:.35rem .65rem;border-radius:8px;text-transform:uppercase}.form-field-wrapper{display:flex;flex-direction:column;gap:.5rem;width:100%}.form-field-wrapper label{font-size:.78rem;font-weight:750;color:#475569;text-transform:uppercase;letter-spacing:.03em}.form-field-wrapper input,.form-field-wrapper select{background:#fff;border:1px solid #cbd5e1;padding:.65rem .85rem;border-radius:8px;font-family:inherit;font-size:.88rem;color:#0f172a;outline:none;transition:all .3s ease}.form-field-wrapper input:focus,.form-field-wrapper select:focus{border-color:#005249;box-shadow:0 0 0 3px #0052490f}.form-double-fields{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.payment-method-segmented-bar{display:grid;grid-template-columns:repeat(3,1fr);background:#00524908;padding:.25rem;border-radius:10px;border:1px solid rgba(0,82,73,.05);gap:.25rem}.payment-segment-btn{background:transparent;border:none;padding:.55rem .25rem;font-size:.75rem;font-weight:750;color:#64748b;border-radius:8px;cursor:pointer;transition:all .2s ease}.payment-segment-btn:hover{color:#005249}.payment-segment-btn.active-segment{background:#fff;color:#005249;box-shadow:0 2px 6px #0052490f}.payment-channel-details-pane{background:#00524905;border:1px solid rgba(0,82,73,.05);padding:1rem;border-radius:12px;display:flex;flex-direction:column;gap:1rem}.mock-qr-wrapper{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:.5rem 0}.mock-qr-code{width:130px;height:130px;background:#fff;border:1px solid #cbd5e1;border-radius:12px;position:relative;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 15px #0000000a}.qr-corner{position:absolute;width:18px;height:18px;border:3px solid #005249}.qr-corner.top-left{top:12px;left:12px;border-right:none;border-bottom:none}.qr-corner.top-right{top:12px;right:12px;border-left:none;border-bottom:none}.qr-corner.bottom-left{bottom:12px;left:12px;border-right:none;border-top:none}.qr-corner.bottom-right{bottom:12px;right:12px;border-left:none;border-top:none}.qr-center-box{width:50px;height:50px;background:#0052490a;border:1px dashed rgba(0,82,73,.25);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:.65rem;font-weight:850;color:#005249;letter-spacing:.05em}.mock-qr-wrapper p{font-size:.75rem;color:#64748b;margin:0;text-align:center}.upe-vpa-wrapper{margin-top:.25rem}.modal-action-buttons{border-top:1px solid rgba(0,82,73,.06);padding-top:1.25rem;display:grid;grid-template-columns:1.2fr 1.8fr;gap:1rem}.modal-cancel-cta{background:#00524908;border:1px solid rgba(0,82,73,.05);color:#64748b;font-weight:700;font-size:.85rem;padding:.75rem;border-radius:10px;cursor:pointer;transition:all .3s ease}.modal-cancel-cta:hover{background:#00524914;color:#005249}.modal-submit-cta{background:linear-gradient(135deg,#005249,#007d70);border:1px solid rgba(0,82,73,.15);color:#fff;font-weight:750;font-size:.85rem;padding:.75rem;border-radius:10px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;transition:all .3s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 12px #0052491f}.modal-submit-cta:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 16px #00524938}.modal-submit-cta:disabled{opacity:.6;cursor:not-allowed}.btn-spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.25);border-top-color:#fff;border-radius:50%;animation:spinnerSpin .7s linear infinite;display:inline-block}@keyframes spinnerSpin{to{transform:rotate(360deg)}}.checkout-success-view-pane{display:flex;flex-direction:column;align-items:center;text-align:center;padding:1.5rem .5rem}.success-icon-badge-glowing{width:64px;height:64px;background:#10b98114;border:1px solid rgba(16,185,129,.25);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 0 20px #10b98133;margin-bottom:1.25rem;animation:successPulse 1.5s infinite ease-in-out}.success-checkmark-thick{font-size:2rem;font-weight:700;color:#10b981}@keyframes successPulse{0%{transform:scale(.95);box-shadow:0 0 15px #10b98126}50%{transform:scale(1.05);box-shadow:0 0 25px #10b98159}to{transform:scale(.95);box-shadow:0 0 15px #10b98126}}.checkout-success-view-pane h3{font-size:1.25rem;font-weight:850;color:#005249;margin:0 0 .5rem}.checkout-success-view-pane p{font-size:.85rem;color:#64748b;margin:0;max-width:380px}.settlement-receipt-summary-badge{background:#00524908;border:1px solid rgba(0,82,73,.05);padding:1rem;border-radius:12px;width:100%;margin-top:1.5rem;display:flex;flex-direction:column;gap:.65rem}.receipt-sum-row{display:flex;justify-content:space-between;align-items:center;font-size:.82rem;color:#475569}.receipt-sum-row span{font-weight:550;color:#64748b}.receipt-sum-row strong{font-weight:750;color:#0f172a}.receipt-sum-row strong.status-success-text{color:#10b981}.receipt-sum-row code{font-family:Courier New,Courier,monospace;font-weight:700;background:#0000000a;padding:.15rem .35rem;border-radius:4px}.success-action-triggers{margin-top:1.75rem;width:100%}.btn-trigger-action-dismiss{width:100%;background:linear-gradient(135deg,#10b981,#059669);border:1px solid rgba(16,185,129,.2);color:#fff;font-weight:750;padding:.8rem;border-radius:10px;cursor:pointer;box-shadow:0 4px 14px #10b98133;transition:all .3s cubic-bezier(.16,1,.3,1)}.btn-trigger-action-dismiss:hover{transform:translateY(-1px);box-shadow:0 6px 18px #10b98159}@media(max-width:1200px){.fee-split-layout{grid-template-columns:1fr}.fee-opening-filter-grid{grid-template-columns:repeat(2,minmax(180px,1fr))}.billing-summary-card{position:static}}@media(max-width:768px){.student-fee-container{padding:20px;gap:20px}.fee-hero-card{flex-direction:column;align-items:flex-start;padding:1.25rem 1.5rem}.hero-semester-badge{align-self:flex-end}.fee-monthly-card{padding:1rem}.breakdown-details-table th,.breakdown-details-table td{font-size:.78rem}.fee-opening-filter-grid{grid-template-columns:1fr}.fee-opening-filter-actions button{width:100%}.fee-opening-table{min-width:940px}}@media(prefers-color-scheme:dark){.student-fee-container{color:#f1f5f9}.fee-glass-card{background:#0f172a73;border:1px solid rgba(255,255,255,.08);box-shadow:0 8px 32px #0006}.fee-glass-card:hover{border-color:#10b98133;box-shadow:0 12px 40px #00524940}.fee-hero-card{background:#0f172a73;border:1px solid rgba(255,255,255,.08);border-left:5px solid #10b981;box-shadow:0 8px 32px #0006}.hero-icon-plate{background:#10b98114;border-color:#10b98133;color:#34d399}.hero-titles h2{background:linear-gradient(135deg,#fff 40%,#a7f3d0);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.hero-titles p{color:#94a3b8}.hero-semester-badge{background:#10b98114;border-color:#10b98140;color:#34d399}.fee-toast-notification{background:#0f172ae6;border-color:#10b98159;color:#fff;box-shadow:0 10px 25px #00000080}.fee-tab-navigation-bar{background:#ffffff08;border-color:#ffffff0d}.fee-tab-btn{color:#94a3b8}.fee-tab-btn:hover{color:#fff;background:#ffffff05}.fee-tab-btn.active-tab{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 4px 12px #10b98140}.select-all-bar{border-bottom:1px solid rgba(255,255,255,.05)}.select-all-label h4{color:#fff}.select-all-label p{color:#94a3b8}.due-list-summary{color:#34d399;background:#10b9811f;border-color:#10b98133}.fee-monthly-card{background:#0f172a40;border-color:#ffffff0d}.fee-monthly-card.selected-bg{background:#10b98114!important}.fee-monthly-card:hover{background:#0f172a59;border-color:#ffffff1a}.fee-month-title h4{color:#fff}.fee-due-date-meta{color:#94a3b8}.fee-due-date-meta strong{color:#cbd5e1}.due-price-number{color:#34d399}.arrow-expand-btn{background:#ffffff08;border-color:#ffffff0d;color:#94a3b8}.arrow-expand-btn:hover{background:#ffffff14;color:#fff}.arrow-expand-btn.rotated{background:#10b981;border-color:#10b981}.checkmark{background-color:#0f172acc;border-color:#fff3}.checkbox-container:hover input~.checkmark{border-color:#10b981}.fee-expandable-details-grid{border-top-color:#ffffff0d}.breakdown-details-table th{color:#94a3b8;border-bottom-color:#ffffff0d}.breakdown-details-table td{color:#cbd5e1;border-bottom-color:#ffffff0d}.bold-text{color:#fff}.total-breakdown-row td{color:#34d399;border-top-color:#ffffff1a!important}.billing-summary-card{border-top-color:#f59e0b!important}.summary-row{color:#94a3b8}.deep-brand-color{color:#34d399}.divider-line{background:#ffffff0d}.summary-itemized-list{background:#ffffff05;border-color:#ffffff0a}.summary-itemized-row{color:#cbd5e1}.grand-payout-total-row{background:#10b98114;border-color:#10b98126}.total-labels span{color:#fff}.total-labels p{color:#94a3b8}.receipt-ledger-table-wrapper{border-color:#ffffff0d}.receipt-ledger-table th{background:#ffffff05;color:#34d399;border-bottom-color:#ffffff0d}.receipt-ledger-table td{color:#cbd5e1;border-bottom-color:#ffffff0a}.receipt-ledger-table tr:hover{background:#ffffff03}.pay-method-badge{color:#cbd5e1;background:#ffffff0a;border-color:#ffffff0f}.ref-code{color:#cbd5e1;background:#ffffff0d}.btn-action-receipt-download{background:#ffffff08;border-color:#ffffff14;color:#34d399}.btn-action-receipt-download:hover{background:#10b98114;border-color:#10b98140}.fee-empty-state h3{color:#fff}.fee-empty-state p{color:#94a3b8}.modal-backdrop-overlay{background:#0009}.modal-content-container{background:#0f172ad9;border-color:#ffffff14;box-shadow:0 24px 70px #00000080}.modal-header-bar-custom{border-bottom-color:#ffffff0d}.modal-header-meta h4{color:#34d399}.modal-header-meta p{color:#94a3b8}.modal-close-btn{background:#ffffff08;border-color:#ffffff0d;color:#94a3b8}.checkout-value-display-banner{background:#10b98114;border-color:#10b98126}.checkout-banner-info span{color:#94a3b8}.checkout-banner-info h3{color:#34d399}.checkout-badge-secure{color:#34d399;background:#10b9811f;border-color:#10b98140}.form-field-wrapper label{color:#cbd5e1}.form-field-wrapper input,.form-field-wrapper select{background:#0f172a99;border-color:#ffffff26;color:#fff}.form-field-wrapper input:focus,.form-field-wrapper select:focus{border-color:#10b981;box-shadow:0 0 0 3px #10b98126}.payment-method-segmented-bar{background:#ffffff05;border-color:#ffffff0d}.payment-segment-btn{color:#94a3b8}.payment-segment-btn:hover{color:#fff}.payment-segment-btn.active-segment{background:#ffffff14;color:#34d399;box-shadow:none}.payment-channel-details-pane{background:#ffffff03;border-color:#ffffff0a}.mock-qr-code{background:#fff;border-color:#475569}.modal-action-buttons{border-top-color:#ffffff0d}.modal-cancel-cta{background:#ffffff08;border-color:#ffffff0d;color:#cbd5e1}.modal-cancel-cta:hover{background:#ffffff14;color:#fff}.modal-submit-cta{background:linear-gradient(135deg,#10b981,#059669);border-color:#10b98133;box-shadow:0 4px 12px #00524933}.modal-submit-cta:hover:not(:disabled){box-shadow:0 6px 16px #10b98159}.checkout-success-view-pane h3{color:#34d399}.checkout-success-view-pane p{color:#94a3b8}.settlement-receipt-summary-badge{background:#ffffff05;border-color:#ffffff0a}.receipt-sum-row{color:#cbd5e1}.receipt-sum-row span{color:#94a3b8}.receipt-sum-row strong{color:#fff}.receipt-sum-row code{background:#ffffff0f;color:#fff}}.preadmission-enquiry-page{width:100%;max-width:100%;padding:28px;box-sizing:border-box;color:#1e293b}.enquiry-form{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:16px;box-shadow:0 10px 28px #0f172a0d}.enquiry-toggle-bar{display:inline-flex;gap:4px;padding:4px;margin-bottom:18px;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:12px}.enquiry-toggle-bar button{min-height:38px;border:none;border-radius:9px;padding:0 18px;background:transparent;color:#475569;font-weight:800;cursor:pointer}.enquiry-toggle-bar button.active{background:#005249;color:#fff;box-shadow:0 6px 14px #00524924}.enquiry-action-bar{position:sticky;top:0;z-index:5;background:#fffffff5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid #e2e8f0;border-radius:16px 16px 0 0;padding:18px 22px;display:flex;justify-content:space-between;align-items:center;gap:16px}.enquiry-action-bar h2{margin:0;color:#005249;font-size:1.25rem}.enquiry-action-bar p{margin:4px 0 0;color:#64748b;font-size:.88rem;font-weight:700}.enquiry-actions{display:flex;gap:10px;align-items:center}.enquiry-save-btn,.enquiry-reset-btn{min-height:42px;border:none;border-radius:10px;padding:0 18px;font-weight:800;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.enquiry-save-btn{background:#005249;color:#fff;box-shadow:0 8px 18px #0052492e}.enquiry-reset-btn{background:#f1f5f9;color:#334155}.enquiry-save-btn:hover,.enquiry-reset-btn:hover{transform:translateY(-1px)}.enquiry-section{padding:22px;border-bottom:1px solid #eef2f7}.enquiry-section:last-child{border-bottom:none}.section-heading{margin-bottom:16px}.section-heading h3{margin:0;color:#0f172a;font-size:1.04rem;font-weight:800}.enquiry-grid{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:16px}.enquiry-grid label{display:flex;flex-direction:column;gap:8px;color:#334155;font-size:.84rem;font-weight:800}.enquiry-grid input,.enquiry-grid select,.enquiry-grid textarea{width:100%;min-height:42px;box-sizing:border-box;border:1px solid #cbd5e1;border-radius:10px;background:#fff;color:#0f172a;padding:10px 12px;font:inherit;font-weight:600;outline:none}.enquiry-grid textarea{resize:vertical;line-height:1.5}.enquiry-grid input:focus,.enquiry-grid select:focus,.enquiry-grid textarea:focus{border-color:#005249;box-shadow:0 0 0 3px #0052491a}.enquiry-grid input[readonly]{background:#f8fafc;color:#64748b}.enquiry-field-wide{grid-column:span 2}.enquiry-search-grid{grid-template-columns:minmax(220px,1.3fr) minmax(180px,1fr) minmax(180px,1fr) auto;align-items:end}.confirm-registration-grid{grid-template-columns:repeat(5,minmax(160px,1fr))}.confirm-registration-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.admission-test-marks-form{max-width:980px}.admission-test-marks-grid{grid-template-columns:repeat(2,minmax(220px,1fr))}.admission-test-marks-actions{justify-content:flex-end;margin-top:20px}.scholar-selection-filter-form{margin-bottom:22px}.scholar-selection-grid{grid-template-columns:repeat(4,minmax(180px,1fr))}.scholar-selection-actions{justify-content:flex-end;margin-top:20px}.scholar-selection-table th:first-child,.scholar-selection-table td:first-child{width:82px;text-align:center}.enquiry-save-btn:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}.enquiry-search-table input[type=checkbox]{width:18px;height:18px;accent-color:#005249;cursor:pointer}.enquiry-view-action{display:flex;align-items:flex-end}.enquiry-view-btn{width:46px;height:46px;border:none;border-radius:10px;background:#005249;color:#fff;font-size:1.15rem;font-weight:900;cursor:pointer;box-shadow:0 8px 18px #0052492e;transition:transform .2s ease,background .2s ease}.enquiry-view-btn:hover{background:#007d70;transform:translateY(-1px)}.enquiry-results-card{margin-top:22px;background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:16px;box-shadow:0 10px 28px #0f172a0d;overflow:hidden}.enquiry-results-header{padding:18px 22px;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center;gap:16px}.enquiry-results-header h2{margin:0;color:#005249;font-size:1.18rem}.enquiry-results-header p{margin:4px 0 0;color:#64748b;font-size:.88rem;font-weight:700}.enquiry-table-wrapper{width:100%}.enquiry-search-table{width:100%;border-collapse:collapse}.enquiry-search-table th,.enquiry-search-table td{padding:14px 16px;border-bottom:1px solid #e2e8f0;text-align:left;vertical-align:middle}.enquiry-search-table thead th{background:#f4f7fb;color:#0f172a;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.enquiry-search-table tbody tr:nth-child(2n){background:#f8fafc}.enquiry-search-table tbody tr:hover{background:#eef6f7}.enquiry-empty-state{padding:46px 20px;color:#64748b;text-align:center}.enquiry-empty-state div{font-size:2.25rem;margin-bottom:12px}.enquiry-empty-state h3{margin:0 0 6px;color:#005249}.enquiry-empty-state p{margin:0}@media(max-width:1180px){.enquiry-grid,.enquiry-search-grid,.confirm-registration-grid,.admission-test-marks-grid,.scholar-selection-grid{grid-template-columns:repeat(2,minmax(180px,1fr))}}@media(max-width:720px){.preadmission-enquiry-page{padding:18px 16px}.enquiry-action-bar{position:static;flex-direction:column;align-items:stretch}.enquiry-toggle-bar{display:flex;width:100%}.enquiry-toggle-bar button{flex:1}.enquiry-actions{width:100%}.enquiry-save-btn,.enquiry-reset-btn{flex:1}.enquiry-grid{grid-template-columns:1fr}.enquiry-field-wide{grid-column:span 1}.enquiry-search-grid,.confirm-registration-grid,.admission-test-marks-grid{grid-template-columns:1fr}.admission-test-marks-actions{justify-content:stretch}.scholar-selection-grid{grid-template-columns:1fr}.scholar-selection-actions{justify-content:stretch}.enquiry-results-header{align-items:stretch;flex-direction:column}.confirm-registration-actions{width:100%}.confirm-registration-actions .enquiry-save-btn,.confirm-registration-actions .enquiry-reset-btn{flex:1}.enquiry-view-action,.enquiry-view-btn{width:100%}.enquiry-search-table{min-width:760px}.enquiry-table-wrapper{overflow-x:auto}}.btn-action-edit,.btn-action-delete{padding:6px 12px;font-size:.8rem;font-weight:700;border:none;border-radius:6px;cursor:pointer;display:inline-flex;align-items:center;gap:4px;transition:background-color .2s ease,transform .1s ease}.btn-action-edit{background:#ecfdf5;color:#047857;border:1px solid #a7f3d0}.btn-action-edit:hover{background:#d1fae5;transform:translateY(-1px)}.btn-action-delete{background:#fef2f2;color:#b91c1c;border:1px solid #fecaca}.btn-action-delete:hover{background:#fee2e2;transform:translateY(-1px)}.modal-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0f172a73;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;display:flex;justify-content:center;align-items:center}.modal-container{background:#fff;border-radius:18px;width:90%;max-width:680px;max-height:90vh;box-shadow:0 20px 40px #0f172a33;display:flex;flex-direction:column;overflow:hidden}.modal-header{padding:20px 24px;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center;background:#f8fafc}.modal-header h2{margin:0;color:#005249;font-size:1.25rem;font-weight:800}.modal-close-btn{background:transparent;border:none;font-size:1.2rem;color:#64748b;cursor:pointer;transition:color .2s;padding:4px}.modal-close-btn:hover{color:#0f172a}.modal-form{display:flex;flex-direction:column;overflow-y:auto;padding:24px}.modal-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:24px}.modal-grid label{display:flex;flex-direction:column;gap:8px;color:#334155;font-size:.85rem;font-weight:800}.modal-grid input,.modal-grid select,.modal-grid textarea{width:100%;min-height:42px;box-sizing:border-box;border:1px solid #cbd5e1;border-radius:10px;background:#fff;color:#0f172a;padding:10px 12px;font:inherit;font-weight:600;outline:none}.modal-grid input:focus,.modal-grid select:focus,.modal-grid textarea:focus{border-color:#005249;box-shadow:0 0 0 3px #0052491a}.modal-actions{display:flex;justify-content:flex-end;gap:12px;border-top:1px solid #e2e8f0;padding-top:18px}.btn-cancel,.btn-save{min-height:42px;padding:0 20px;border-radius:10px;font-weight:800;font-size:.9rem;cursor:pointer;transition:all .2s}.btn-cancel{background:#f1f5f9;color:#475569;border:1px solid #cbd5e1}.btn-cancel:hover{background:#e2e8f0}.btn-save{background:#005249;color:#fff;border:none;box-shadow:0 6px 16px #0052492e}.btn-save:hover{background:#00443d;transform:translateY(-1px)}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.animate-scaleIn{animation:scaleIn .2s cubic-bezier(.16,1,.3,1) forwards}@media(max-width:600px){.modal-grid{grid-template-columns:1fr}}.class-fee-table{width:100%;border-collapse:collapse!important;text-align:center!important}.class-fee-table th,.class-fee-table td{border:1px solid #cbd5e1!important;text-align:center!important;padding:10px 12px!important;font-size:.85rem}.class-fee-table th.class-label-cell{background:#f4f7fb!important;color:#005249!important;font-weight:900!important;font-size:.95rem!important;width:110px}.class-fee-table th.fee-head-cell{background:#f1f5f9!important;color:#0f172a!important;font-size:.8rem!important;font-weight:800!important;letter-spacing:.04em;text-transform:uppercase}.class-fee-table th.sub-head-cell{background:#f8fafc!important;color:#475569!important;font-size:.74rem!important;font-weight:800!important}.class-fee-table th.sub-head-cell.new-scholar-header{color:#0284c7!important}.class-fee-table th.sub-head-cell.old-scholar-header{color:#475569!important}.class-fee-table th.sub-head-cell.receipt-header{color:#0d9488!important}.class-fee-table td.row-label-cell{background:#f8fafc!important;font-weight:800!important;color:#334155!important;font-size:.8rem!important;text-align:left!important;padding-left:14px!important}.fee-table-input{width:100%;min-height:36px;border:1px solid transparent;background:transparent;border-radius:6px;padding:6px 8px;box-sizing:border-box;text-align:right;font-family:inherit;font-weight:700;font-size:.88rem;color:#334155;outline:none;transition:all .2s ease}.fee-table-input:hover{background:#00524905;border-color:#cbd5e1}.fee-table-input:focus{background:#fff;border-color:#005249;box-shadow:0 0 0 2px #0052491a;color:#005249}.fee-table-input::-webkit-outer-spin-button,.fee-table-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.fee-table-input[type=number]{-moz-appearance:textfield}.class-fee-table tr.closed-month-row{background:#f8fafc!important}.class-fee-table tr.closed-month-row td{color:#94a3b8!important;font-weight:800!important}.fee-cell-checkbox{width:18px;height:18px;accent-color:#005249;cursor:pointer;display:block;margin:0 auto}.preadmission-enquiry-page .btn-primary{min-height:46px!important;padding:0 20px!important;border:none!important;border-radius:var(--radius-md)!important;background:var(--brand-secondary)!important;color:var(--white)!important;font-weight:var(--font-semibold)!important;box-shadow:none!important;cursor:pointer!important;transition:transform var(--transition-fast),background var(--transition-fast)!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}.preadmission-enquiry-page .btn-primary:hover{background:var(--brand-secondary-dark)!important;transform:translateY(-1px)!important;box-shadow:none!important}.concession-table{width:100%;border-collapse:collapse!important;text-align:center!important}.concession-table th,.concession-table td{border:1px solid #cbd5e1!important;text-align:center!important;padding:10px 8px!important;font-size:.82rem;min-width:90px}.concession-table td.row-label-cell{background:#f8fafc!important;font-weight:800!important;color:#334155!important;font-size:.8rem!important;text-align:left!important;padding-left:14px!important;min-width:120px;position:sticky;left:0;z-index:2;box-shadow:2px 0 5px #00000005}.concession-table th.class-label-cell{background:#f4f7fb!important;color:#005249!important;font-weight:900!important;font-size:.95rem!important;width:120px;position:sticky;left:0;z-index:3}.concession-table th.fee-head-cell{background:#f1f5f9!important;color:#0f172a!important;font-size:.8rem!important;font-weight:800!important;letter-spacing:.04em;text-transform:uppercase}.concession-table th.sub-head-cell{background:#f8fafc!important;color:#475569!important;font-size:.72rem!important;font-weight:800!important;padding:8px 4px!important}.concession-table th.sub-head-cell.new-scholar-header{color:#0284c7!important;background:#f0f9ff!important}.concession-table th.sub-head-cell.old-scholar-header{color:#475569!important;background:#f8fafc!important}.concession-table th.sub-head-cell.concession-header{color:#0d9488!important;background:#f0fdfa!important}.concession-table-input{width:100%;min-height:32px;border:1px solid #e2e8f0;background:#fff;border-radius:4px;padding:4px 6px;box-sizing:border-box;text-align:right;font-family:inherit;font-weight:700;font-size:.82rem;color:#334155;outline:none;transition:all .15s ease}.concession-table-input:hover:not(:disabled){border-color:#cbd5e1;background:#fafbfc}.concession-table-input:focus:not(:disabled){background:#fff;border-color:#005249;box-shadow:0 0 0 2px #0052491a;color:#005249}.concession-table-input:disabled{background:#f1f5f9;color:#94a3b8;border-color:transparent;cursor:not-allowed}.concession-table tr.closed-month-row{background:#f8fafc!important}.concession-table tr.closed-month-row td{color:#94a3b8!important;font-weight:800!important}.concession-table td.disabled-cell{background:#f1f5f9!important;color:#94a3b8!important;font-weight:800!important;cursor:not-allowed}.preadmission-enquiry-page .btn-concession-save{min-height:46px!important;padding:0 20px!important;border:none!important;border-radius:var(--radius-md)!important;background:var(--brand-secondary)!important;color:var(--white)!important;font-weight:var(--font-semibold)!important;box-shadow:none!important;cursor:pointer!important;transition:transform var(--transition-fast),background var(--transition-fast)!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}.preadmission-enquiry-page .btn-concession-save:hover{background:var(--brand-secondary-dark)!important;transform:translateY(-1px)!important;box-shadow:none!important}.preadmission-enquiry-page .btn-concession-load{width:46px!important;height:46px!important;border:none!important;border-radius:var(--radius-md)!important;background:var(--brand-secondary)!important;color:var(--white)!important;cursor:pointer!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;transition:transform var(--transition-fast),background var(--transition-fast)!important}.preadmission-enquiry-page .btn-concession-load:hover{background:var(--brand-secondary-dark)!important;transform:translateY(-1px)!important}.preadmission-enquiry-page .btn-concession-load svg{width:20px;height:20px;fill:currentColor}.radio-filter-group{display:flex;gap:16px;align-items:center;margin-bottom:8px}.radio-filter-label{display:inline-flex;align-items:center;gap:8px;font-weight:800;font-size:.88rem;color:#334155;cursor:pointer}.radio-filter-label input[type=radio]{width:18px;height:18px;accent-color:#005249;cursor:pointer}.concession-table-wrapper{width:100%;overflow-x:auto;border-radius:12px;border:1px solid rgba(15,23,42,.08)}.btn-action-view{background:#f0fdf4;color:#16a34a;border:1px solid #bbf7d0}.btn-action-view:hover{background:#dcfce7;transform:translateY(-1px)}.concession-table th[colspan="6"]:nth-of-type(1){border-bottom:2px solid #0284c7!important}.concession-table th[colspan="6"]:nth-of-type(2){border-bottom:2px solid #475569!important}.concession-table th[colspan="6"]:nth-of-type(3){border-bottom:2px solid #d97706!important}.student-homework-container{padding:28px;max-width:100%;width:100%;box-sizing:border-box;color:#334155;display:flex;flex-direction:column;gap:28px;font-family:Outfit,Inter,-apple-system,BlinkMacSystemFont,sans-serif;position:relative}.hw-glass-card{background:#ffffffbf;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(0,82,73,.08);border-radius:16px;padding:1.5rem;box-shadow:0 8px 32px #00524908;display:flex;flex-direction:column;gap:1.25rem;transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s cubic-bezier(.16,1,.3,1),border-color .4s cubic-bezier(.16,1,.3,1)}.hw-glass-card:hover{border-color:#00524926;box-shadow:0 12px 40px #0052490f}.hw-hero-card{background:#ffffffbf;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(0,82,73,.08);border-left:5px solid #005249;border-radius:16px;padding:1.25rem 1.75rem;display:flex;justify-content:space-between;align-items:center;gap:1.5rem;box-shadow:0 8px 32px #00524908;position:relative;overflow:hidden}.hero-stats-badge{background:#0052490f;border:1px solid rgba(0,82,73,.12);color:#005249;padding:8px 16px;border-radius:99px;font-size:.82rem;font-weight:600;display:flex;align-items:center;gap:8px}.pulse-dot{width:8px;height:8px;background:#10b981;border-radius:50%;display:inline-block;animation:pulseLight 2s infinite ease-in-out}@keyframes pulseLight{0%{transform:scale(.9);opacity:.6}50%{transform:scale(1.2);opacity:1}to{transform:scale(.9);opacity:.6}}.animate-fade-in{animation:hwFadeIn .5s cubic-bezier(.16,1,.3,1) both}.animate-scale-in{animation:hwScaleIn .4s cubic-bezier(.34,1.56,.64,1) both}@keyframes hwFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes hwScaleIn{0%{opacity:0;transform:scale(.96) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}.date-scroller-outer-card{gap:.75rem;padding:1rem 1.25rem!important;background:#0052490a!important;border-color:#00524924!important;box-shadow:0 8px 32px #0052490a}.pill-dot-indicator{position:absolute;bottom:4px;width:4px;height:4px;border-radius:50%;background:#f59e0b}.hw-summary-banner-row{display:flex;align-items:center}.summary-status-capsule{font-size:.95rem;font-weight:600;color:#475569;display:flex;align-items:center;gap:12px;background:#fff9;padding:8px 16px;border-radius:99px;border:1px solid rgba(0,82,73,.05)}.total-count-badge{padding:4px 12px;border-radius:99px;font-size:.85rem;font-weight:700}.total-count-badge.has-items{background:#005249;color:#fff;box-shadow:0 4px 10px #0052491f}.total-count-badge.zero-items{background:#e2e8f0;color:#64748b}.homework-list-wrapper{min-height:200px}.homework-cards-stack{display:flex;flex-direction:column;gap:16px}.homework-card{padding:0;overflow:hidden;display:flex;flex-direction:column;gap:0;transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s cubic-bezier(.16,1,.3,1),border-color .4s cubic-bezier(.16,1,.3,1)}.hw-card-header{padding:1.25rem 1.5rem;display:flex;justify-content:space-between;align-items:center;cursor:pointer;gap:1.5rem;-webkit-user-select:none;user-select:none}.hw-header-left{display:flex;align-items:center;flex:1}.hw-subject-badge{display:flex;align-items:center;gap:8px;padding:8px 16px;border-radius:10px;font-size:1.05rem;font-weight:800;white-space:nowrap;letter-spacing:-.01em}.hw-subject-emoji{font-size:1.2rem}.hw-header-right{display:flex;align-items:center}.view-homework-toggle-btn{background:#0052490d;border:1px solid rgba(0,82,73,.08);color:#005249;padding:8px 18px;border-radius:8px;font-size:.85rem;font-weight:700;display:flex;align-items:center;gap:6px;cursor:pointer;outline:none}.view-homework-toggle-btn:hover{background:#005249;color:#fff;border-color:#005249}.chevron-icon{font-size:.65rem;transition:transform .3s ease}.view-homework-toggle-btn.active-open .chevron-icon{transform:rotate(0)}.hw-card-expanded-content{overflow:hidden;transition:max-height .4s cubic-bezier(.16,1,.3,1),opacity .4s cubic-bezier(.16,1,.3,1)}.hw-card-expanded-content.collapsed{max-height:0;opacity:0;pointer-events:none}.hw-card-expanded-content.expanded{max-height:800px;opacity:1}.expanded-divider{height:1px;background:#0052490f;margin:0 1.5rem}.expanded-details-grid-simple{padding:1.5rem;display:flex;flex-direction:column;gap:1.25rem}.instruction-section{display:flex;flex-direction:column;gap:12px}.section-subtitle{font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;color:#64748b;margin:0;font-weight:800}.instruction-text{font-size:.98rem;line-height:1.6;color:#334155;margin:0;white-space:pre-line}.attachment-box{background:#00524908;border:1px dashed rgba(0,82,73,.15);border-radius:12px;padding:12px 18px;display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:8px}.attachment-left{display:flex;align-items:center;gap:12px}.attachment-icon{font-size:1.6rem}.attachment-meta{display:flex;flex-direction:column}.attachment-name{font-size:.9rem;font-weight:700;color:#0f172a}.attachment-size{font-size:.78rem;color:#64748b}.view-attachment-btn{background:#fff;border:1px solid rgba(0,82,73,.2);color:#005249;padding:8px 16px;border-radius:6px;font-size:.82rem;font-weight:700;cursor:pointer}.view-attachment-btn:hover{background:#005249;color:#fff;border-color:#005249}.empty-homework-state{align-items:center;text-align:center;padding:3.5rem 2rem;gap:.75rem}.empty-state-icon{font-size:2.75rem;animation:floatEffect 3s infinite ease-in-out}@keyframes floatEffect{0%{transform:translateY(0)}50%{transform:translateY(-8px)}to{transform:translateY(0)}}.empty-homework-state h4{font-size:1.2rem;font-weight:800;color:#005249;margin:0}.empty-homework-state p{font-size:.88rem;color:#64748b;max-width:400px;margin:0;line-height:1.5}.attachment-modal-overlay{position:fixed;inset:0;background:#001e1a40;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;padding:24px;z-index:10000;animation:hwFadeIn .35s cubic-bezier(.16,1,.3,1)}.attachment-modal-card{width:100%;max-width:820px;height:85vh;background:#ffffffe6;backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);border:1px solid rgba(255,255,255,.5);border-radius:20px;box-shadow:0 32px 80px #00322c26;display:flex;flex-direction:column;overflow:hidden}.modal-pdf-toolbar{background:#0f172a;padding:12px 20px;display:flex;justify-content:space-between;align-items:center;color:#f8fafc;border-bottom:1px solid #1e293b}.toolbar-left{display:flex;align-items:center;gap:10px}.pdf-doc-icon{background:#ef4444;color:#fff;font-size:.65rem;font-weight:900;padding:2px 6px;border-radius:4px;letter-spacing:.05em}.modal-pdf-body-viewer{flex:1;overflow-y:auto;background:#475569;padding:32px 16px;display:flex;justify-content:center}.pdf-school-header h5{font-size:.85rem;font-weight:700;margin:0;color:#475569;letter-spacing:.02em}.pdf-doc-watermark{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(-35deg);font-size:2.25rem;font-weight:900;color:#00524909;letter-spacing:.1em;white-space:nowrap;pointer-events:none;-webkit-user-select:none;user-select:none}.pdf-assignment-metadata-grid-simple{display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:.88rem;color:#334155;background:#f8fafc;padding:16px;border-radius:6px;border:1px solid #e2e8f0}.pdf-assignment-metadata-grid-simple div strong{color:#0f172a}.pdf-questions-container{display:flex;flex-direction:column;gap:16px;margin-top:12px}.pdf-section-title{font-size:.82rem;font-weight:600;color:#475569;line-height:1.5;margin:0;font-style:italic}.pdf-questions-list{display:flex;flex-direction:column;gap:20px}.pdf-question-item{display:flex;flex-direction:column;gap:4px}.question-text{font-size:.9rem;line-height:1.5;font-weight:500;color:#0f172a;margin:0}.pdf-points-indicator{font-size:.72rem;font-weight:700;color:#64748b;text-align:right}.pdf-paper-footer{margin-top:auto;border-top:1px solid #e2e8f0;padding-top:16px;display:flex;justify-content:space-between;align-items:center;font-size:.7rem;color:#94a3b8}.modal-pdf-footer-actions{background:#f8fafc;padding:16px 24px;display:flex;justify-content:space-between;align-items:center;border-top:1px solid #e2e8f0}.simulated-note{font-size:.78rem;color:#64748b}.btn-modal-close-action{background:#0f172a;color:#fff;border:1px solid #0f172a;padding:8px 20px;border-radius:8px;font-size:.82rem;font-weight:700;cursor:pointer}.btn-modal-close-action:hover{background:#1e293b;border-color:#1e293b}@media(prefers-color-scheme:dark){.hw-glass-card{background:#0f172abf;border-color:#ffffff0d;box-shadow:0 8px 32px #0003}.hw-glass-card:hover{border-color:#00524959;box-shadow:0 12px 40px #0000004d}.date-scroller-outer-card{background:#0d948814!important;border-color:#0d948840!important;box-shadow:0 8px 32px #00000040!important}.hw-hero-card{background:#0f172abf;border-color:#ffffff0d;border-left:5px solid #0d9488;box-shadow:0 8px 32px #0003}.hero-icon-plate{background:#0d94881a;border-color:#0d948833;color:#2dd4bf}.hero-titles h2{color:#2dd4bf}.hero-titles p{color:#94a3b8}.hero-stats-badge{background:#0d94881f;border-color:#0d948840;color:#2dd4bf}.date-scroller-header h3{color:#2dd4bf}.month-navigation-controls{background:#1e293b;border-color:#ffffff0d}.month-nav-btn{background:#0f172a;border-color:#ffffff0d;color:#2dd4bf}.month-nav-btn:hover{background:#0d9488;color:#fff}.current-month-indicator{color:#cbd5e1}.date-pill-btn{background:#0f172a;border-color:#ffffff0a}.date-pill-btn:hover{border-color:#0d94884d}.date-pill-btn.active-pill{background:linear-gradient(135deg,#0d9488,#0f766e);border-color:#0d9488;box-shadow:0 8px 20px #0d948840}.pill-day{color:#94a3b8}.pill-number{color:#f1f5f9}.hw-summary-banner-row .summary-status-capsule{background:#0f172a80;border-color:#ffffff08;color:#94a3b8}.total-count-badge.has-items{background:#0d9488}.total-count-badge.zero-items{background:#1e293b;color:#64748b}.view-homework-toggle-btn{background:#0d948814;border-color:#0d948826;color:#2dd4bf}.view-homework-toggle-btn:hover{background:#0d9488;color:#fff;border-color:#0d9488}.expanded-divider{background:#ffffff0d}.instruction-text{color:#cbd5e1}.attachment-box{background:#0d948808;border-color:#0d948833}.attachment-name{color:#f1f5f9}.view-attachment-btn{background:#1e293b;border-color:#0d94884d;color:#2dd4bf}.view-attachment-btn:hover{background:#0d9488;color:#fff;border-color:#0d9488}.empty-homework-state h4{color:#2dd4bf}.empty-homework-state p{color:#94a3b8}.attachment-modal-overlay{background:#000000a6}.attachment-modal-card{background:#0f172ad9;border-color:#ffffff14;box-shadow:0 32px 80px #0009}.modal-pdf-toolbar{background:#090d16;border-bottom:1px solid #1e293b}.modal-pdf-footer-actions{background:#0f172a;border-top:1px solid #1e293b}.btn-modal-close-action{background:#ef4444;border-color:#ef4444}.btn-modal-close-action:hover{background:#dc2626;border-color:#dc2626}}@media(max-width:1024px){.student-homework-container{padding:20px;gap:20px}}@media(max-width:768px){.hw-hero-card{flex-direction:column;align-items:flex-start;gap:12px}.hero-stats-badge{align-self:flex-end}.date-scroller-header{flex-direction:column;align-items:flex-start}.month-navigation-controls{width:100%;justify-content:space-between}.date-pill-btn{flex:0 0 60px;min-width:60px;height:70px}.hw-card-header{flex-direction:column;align-items:flex-start;gap:12px}.hw-header-right{width:100%;justify-content:flex-end}.attachment-box{flex-direction:column;align-items:flex-start;gap:12px}.view-attachment-btn{width:100%}.attachment-modal-card{height:95vh}.pdf-paper-page{padding:24px}}.student-query-container{padding:28px;max-width:100%;width:100%;box-sizing:border-box;color:#334155;display:flex;flex-direction:column;gap:28px;font-family:Outfit,Inter,-apple-system,BlinkMacSystemFont,sans-serif;position:relative}.query-glass-card{background:#ffffffbf;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(0,82,73,.08);border-radius:16px;padding:1.5rem;box-shadow:0 8px 32px #00524908;display:flex;flex-direction:column;gap:1.25rem;transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s cubic-bezier(.16,1,.3,1),border-color .4s cubic-bezier(.16,1,.3,1)}.query-glass-card:hover{border-color:#00524926;box-shadow:0 12px 40px #0052490f}.query-hero-card{background:#ffffffbf;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(0,82,73,.08);border-left:5px solid #005249;border-radius:16px;padding:1.25rem 1.75rem;display:flex;justify-content:space-between;align-items:center;gap:1.5rem;box-shadow:0 8px 32px #00524908;position:relative;overflow:hidden}.hero-icon-plate{font-size:1.75rem;background:#0052490a;width:52px;height:52px;display:flex;align-items:center;justify-content:center;border-radius:12px;border:1px solid rgba(0,82,73,.1);color:#005249}.hero-titles h2{font-size:1.35rem;font-weight:800;letter-spacing:-.02em;color:#005249;margin:0 0 4px}.hero-titles p{font-size:.88rem;color:#64748b;margin:0;font-weight:400}.query-toast-wrapper{position:fixed;top:24px;right:24px;z-index:100000;pointer-events:none}.toast-content{background:#0f172a;color:#f8fafc;padding:12px 20px;border-radius:12px;display:flex;align-items:center;gap:10px;box-shadow:0 10px 25px #00000026;font-size:.88rem;font-weight:600;border:1px solid #1e293b}.animate-fade-in{animation:qFadeIn .5s cubic-bezier(.16,1,.3,1) both}.animate-scale-in{animation:qScaleIn .4s cubic-bezier(.34,1.56,.64,1) both}@keyframes qFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes qScaleIn{0%{opacity:0;transform:scale(.96) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}.query-filters-outer-card{padding:10px 14px!important;background:#00524908!important;border-color:#0052491a!important;box-shadow:0 2px 8px #00524905;gap:0!important}.filters-grid{display:flex;flex-direction:row;align-items:center;gap:12px;width:100%}@media(max-width:720px){.filters-grid{flex-direction:column;gap:8px}}.search-box-wrapper{position:relative;display:flex;align-items:center;width:280px;min-width:200px;flex-shrink:0}@media(max-width:720px){.search-box-wrapper{width:100%}}.student-query-container .search-icon{position:absolute;left:10px;color:#94a3b8;font-size:.8rem;pointer-events:none}.student-query-container .search-input{width:100%;padding:7px 32px 7px 30px;font-size:.82rem;color:#1e293b;background:#fff;border:1px solid rgba(0,82,73,.1);border-radius:8px;outline:none;font-family:inherit;transition:all .25s ease}.student-query-container .search-input:focus{border-color:#005249;box-shadow:0 0 0 3px #0052491a,inset 0 2px 4px #00000003}.clear-search-btn{position:absolute;right:12px;background:#0052490d;border:none;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.65rem;color:#475569;cursor:pointer}.clear-search-btn:hover{background:#ef4444;color:#fff}.category-filter-chips{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;flex:1;min-width:0}.category-filter-chips::-webkit-scrollbar{display:none}.filter-chip{flex-shrink:0;background:transparent;border:1px solid rgba(0,82,73,.08);border-radius:99px;padding:4px 11px;font-size:.72rem;font-weight:600;color:#64748b;cursor:pointer;outline:none;display:flex;align-items:center;gap:4px}.filter-chip:hover{border-color:#00524940;color:#005249}.filter-chip.active{background:#005249;color:#fff;border-color:#005249;box-shadow:0 2px 8px #0052491f}.chip-emoji{font-size:.82rem}.query-logs-section{display:flex;flex-direction:column;gap:16px}.query-logs-header{display:flex;justify-content:space-between;align-items:center}.query-logs-header h3{font-size:1.05rem;font-weight:800;margin:0;color:#005249;display:flex;align-items:center;gap:8px}.desk-icon{font-size:1.15rem}.logs-count{font-size:.82rem;color:#64748b}.query-cards-stack{display:flex;flex-direction:column;gap:16px}.query-log-card{border-radius:14px;padding:1.25rem 1.5rem!important;display:flex;flex-direction:column;gap:12px;border:none!important}.query-card-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px}.header-badge-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.category-badge{padding:4px 10px;border-radius:6px;font-size:.72rem;font-weight:800;letter-spacing:.01em;display:flex;align-items:center;gap:5px}.badge-emoji{font-size:.85rem}.query-date-filed{font-size:.78rem;color:#64748b;font-weight:500}.query-status-badge{padding:4px 12px;border-radius:99px;font-size:.75rem;font-weight:700;display:flex;align-items:center;gap:6px}.status-dot{width:6px;height:6px;border-radius:50%}.query-card-subject-row{display:flex;justify-content:space-between;align-items:center;gap:16px;width:100%}.query-card-subject{font-size:1.05rem;font-weight:800;color:#0f172a;margin:0;letter-spacing:-.01em;flex:1}.btn-view-query-toggle{background:#0052490d;border:1px solid rgba(0,82,73,.12);border-radius:8px;color:#005249;padding:6px 14px;font-size:.8rem;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:6px;outline:none;white-space:nowrap}.btn-view-query-toggle:hover{background:#0052491a;border-color:#00524933}.btn-view-query-toggle.active{background:#005249;border-color:#005249;color:#fff}.btn-view-query-toggle.active:hover{background:#0f766e;border-color:#0f766e}.query-card-expanded-content{display:flex;flex-direction:column;gap:12px;width:100%;margin-top:4px;border-top:1px solid rgba(0,82,73,.06);padding-top:12px}.query-card-body-wrapper{display:flex;flex-direction:column;gap:6px}.query-card-message-text{font-size:.88rem;line-height:1.6;color:#475569;margin:0;white-space:pre-line}.query-card-message-text.truncated{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.toggle-expand-msg-btn{align-self:flex-start;background:none;border:none;padding:0;font-size:.78rem;font-weight:700;color:#005249;cursor:pointer;display:flex;align-items:center;gap:4px;margin-top:2px}.toggle-expand-msg-btn:hover{text-decoration:underline}.btn-chevron{font-size:.6rem}.query-attachment-box{background:#00524905;border:1px dashed rgba(0,82,73,.12);border-radius:10px;padding:8px 14px;display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:4px}.attachment-left{display:flex;align-items:center;gap:10px}.attachment-type-icon{font-size:1.25rem}.attachment-details{display:flex;flex-direction:column}.attachment-name{font-size:.82rem;font-weight:700;color:#1e293b;max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-size{font-size:.72rem;color:#64748b}.btn-view-query-attachment{background:#fff;border:1px solid rgba(0,82,73,.2);color:#005249;padding:6px 12px;border-radius:6px;font-size:.75rem;font-weight:700;cursor:pointer}.btn-view-query-attachment:hover{background:#005249;color:#fff;border-color:#005249}.btn-submit-query-trigger{background:#005249;border:none;border-radius:10px;color:#fff;padding:10px 18px;font-size:.85rem;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:6px;box-shadow:0 4px 12px #00524926}.btn-submit-query-trigger:hover{transform:translateY(-1px);box-shadow:0 6px 16px #00524938}.plus-icon{font-weight:800;font-size:.95rem}.query-modal-overlay{position:fixed;inset:0;background:#00141259;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;padding:24px;z-index:10000}.query-modal-card{background:#ffffffeb;border:1px solid rgba(255,255,255,.4);border-radius:20px;box-shadow:0 32px 80px #0028242e;width:100%;max-width:620px;display:flex;flex-direction:column;overflow:hidden}.student-query-container .modal-header{background:#ffffffb3;border-bottom:1px solid rgba(0,82,73,.06);padding:16px 24px;display:flex;justify-content:space-between;align-items:center}.student-query-container .modal-header h3{font-size:1.15rem;font-weight:800;color:#005249;margin:0}.modal-header-icon{font-size:1.25rem;margin-right:8px}.btn-close-modal-icon{background:#0000000a;border:none;width:28px;height:28px;border-radius:50%;font-size:.75rem;font-weight:800;color:#64748b;cursor:pointer;display:flex;align-items:center;justify-content:center}.btn-close-modal-icon:hover{background:#ef4444;color:#fff}.modal-form-body{padding:24px;display:flex;flex-direction:column;gap:16px;max-height:calc(85vh - 70px);overflow-y:auto;box-sizing:border-box}.form-row-two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:580px){.form-row-two-col{grid-template-columns:1fr}}.student-query-container .form-group{display:flex;flex-direction:column;gap:6px}.student-query-container .form-group label{font-size:.8rem;font-weight:700;color:#475569}.label-with-counter{display:flex;justify-content:space-between;align-items:center}.char-counter{font-size:.72rem;color:#94a3b8}.form-control-input,.form-control-select,.form-control-textarea{font-family:inherit;font-size:.88rem;padding:10px 12px;border:1px solid rgba(0,82,73,.12);border-radius:8px;outline:none;background:#fff;color:#1e293b;box-shadow:inset 0 1px 3px #00000003;transition:all .2s ease}.form-control-input:focus,.form-control-select:focus,.form-control-textarea:focus{border-color:#005249;box-shadow:0 0 0 3px #00524914,inset 0 1px 3px #00000003}.form-control-textarea{resize:vertical}.file-upload-dropzone{border:2px dashed rgba(0,82,73,.15);border-radius:12px;padding:18px;text-align:center;cursor:pointer;background:#00524903;display:flex;flex-direction:column;align-items:center;gap:4px}.file-upload-dropzone:hover{background:#00524908;border-color:#005249}.upload-cloud-icon{font-size:1.75rem;margin-bottom:2px}.main-upload-instruction{font-size:.85rem;font-weight:700;color:#0f172a;margin:0}.sub-upload-instruction{font-size:.72rem;color:#64748b;margin:0}.attached-file-preview-card{border:1px solid rgba(0,82,73,.15);background:#fff;border-radius:10px;padding:12px 14px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}.file-info-col{display:flex;align-items:center;gap:10px}.attached-icon{font-size:1.5rem}.attached-text-meta{display:flex;flex-direction:column}.attached-filename{font-size:.82rem;font-weight:700;color:#1e293b;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attached-size{font-size:.72rem;color:#64748b}.upload-progress-wrapper{flex:1;min-width:150px;display:flex;flex-direction:column;gap:4px}.progress-percentage{font-size:.72rem;font-weight:700;color:#005249;text-align:right}.progress-bar-track{height:6px;background:#f1f5f9;border-radius:99px;overflow:hidden;width:100%}.progress-bar-fill{height:100%;background:linear-gradient(90deg,#005249,#0f766e);border-radius:99px;transition:width .15s ease-out}.upload-actions-wrapper{display:flex;align-items:center;gap:8px}.check-success-badge{font-size:.75rem;font-weight:700;color:#0d9488;background:#ccfbf1;padding:3px 8px;border-radius:4px}.btn-discard-attachment{background:#ef44440f;border:1px solid rgba(239,68,68,.15);color:#ef4444;padding:4px 10px;border-radius:6px;font-size:.75rem;font-weight:700;cursor:pointer}.btn-discard-attachment:hover{background:#ef4444;color:#fff;border-color:#ef4444}.modal-footer-actions{border-top:1px solid rgba(0,82,73,.06);padding:16px 24px 0;display:flex;justify-content:flex-end;gap:12px;margin-top:6px}.btn-modal-cancel{background:#f1f5f9;border:1px solid #e2e8f0;color:#475569;padding:10px 20px;border-radius:8px;font-size:.85rem;font-weight:700;cursor:pointer}.btn-modal-cancel:hover{background:#e2e8f0}.btn-modal-cancel:disabled{opacity:.6;cursor:not-allowed}.btn-modal-submit{background:#005249;border:none;color:#fff;padding:10px 22px;border-radius:8px;font-size:.85rem;font-weight:700;cursor:pointer;box-shadow:0 4px 12px #0052491f;display:flex;align-items:center;gap:6px}.btn-modal-submit:hover:not(:disabled){background:#0f766e;box-shadow:0 6px 16px #00524933}.btn-modal-submit:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.submitting-spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;display:inline-block;animation:spinnerRotate .8s linear infinite}@keyframes spinnerRotate{to{transform:rotate(360deg)}}.empty-queries-state{align-items:center;text-align:center;padding:3.5rem 2rem;gap:.75rem}.empty-state-icon{font-size:2.75rem;animation:qFloatEffect 3s infinite ease-in-out}@keyframes qFloatEffect{0%{transform:translateY(0)}50%{transform:translateY(-8px)}to{transform:translateY(0)}}.empty-queries-state h4{font-size:1.2rem;font-weight:800;color:#005249;margin:0}.empty-queries-state p{font-size:.88rem;color:#64748b;max-width:400px;margin:0;line-height:1.5}.attachment-viewer-overlay{position:fixed;inset:0;background:#00141240;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;padding:24px;z-index:10000;animation:qFadeIn .35s cubic-bezier(.16,1,.3,1)}.viewer-modal-card{width:100%;max-width:820px;height:85vh;background:#ffffffe6;backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);border:1px solid rgba(255,255,255,.5);border-radius:20px;box-shadow:0 32px 80px #00322c26;display:flex;flex-direction:column;overflow:hidden}.viewer-pdf-toolbar{background:#0f172a;padding:12px 20px;display:flex;justify-content:space-between;align-items:center;color:#f8fafc;border-bottom:1px solid #1e293b}.pdf-doc-icon{color:#fff;font-size:.65rem;font-weight:900;padding:2px 6px;border-radius:4px;letter-spacing:.05em}.pdf-doc-title{font-size:.88rem;font-weight:700;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pdf-doc-size{font-size:.72rem;color:#94a3b8}.toolbar-actions{display:flex;align-items:center;gap:8px}.toolbar-btn{background:#ffffff0f;border:1px solid rgba(255,255,255,.04);color:#e2e8f0;width:32px;height:32px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.8rem;transition:background .2s}.toolbar-btn:hover{background:#ffffff26}.btn-close-modal{background:#ef444426;border:1px solid rgba(239,68,68,.25);color:#fca5a5;font-size:.75rem;font-weight:700}.btn-close-modal:hover{background:#ef4444;color:#fff}.viewer-pdf-body{flex:1;overflow-y:auto;background:#475569;padding:32px 16px;display:flex;justify-content:center;box-sizing:border-box}.pdf-paper-page{width:100%;max-width:680px;min-height:800px;background:#fff;box-shadow:0 10px 25px #00000026;padding:48px;box-sizing:border-box;display:flex;flex-direction:column;gap:20px;position:relative;font-family:Inter,-apple-system,sans-serif;color:#0f172a;text-align:left}.pdf-paper-header{display:flex;flex-direction:column;gap:4px}.pdf-school-header h5{font-size:.85rem;font-weight:700;margin:0;color:#475569}.pdf-doc-watermark{position:absolute;top:48px;right:48px;font-size:.65rem;font-weight:800;color:#94a3b8;border:1px solid #cbd5e1;padding:2px 6px;border-radius:4px;letter-spacing:.02em}.pdf-paper-divider{height:2px;background:#0f172a;width:100%}.pdf-assignment-metadata-grid-simple{display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:.85rem;color:#334155;background:#f8fafc;padding:16px;border-radius:8px;border:1px solid #e2e8f0}.pdf-questions-container{display:flex;flex-direction:column;gap:14px;flex:1}.pdf-section-title{font-size:.88rem;font-weight:800;color:#0f172a;margin:0;text-transform:uppercase;letter-spacing:.03em}.pdf-records-table{border:1px solid #cbd5e1;border-radius:6px;overflow:hidden;display:flex;flex-direction:column}.table-row{display:grid;grid-template-columns:1.2fr 1fr 1.2fr .8fr;padding:10px 12px;border-bottom:1px solid #e2e8f0;font-size:.78rem;color:#334155}.table-row:last-child{border-bottom:none}.table-header-row{background:#f1f5f9;font-weight:800;color:#0f172a;border-bottom:1px solid #cbd5e1}.highlight-log-row{background:#0f766e0f;font-weight:700}.extracted-footer-note{font-size:.72rem;color:#64748b;font-style:italic;line-height:1.4;margin:4px 0 0}.pdf-paper-footer{border-top:1px solid #e2e8f0;padding-top:14px;display:flex;justify-content:space-between;align-items:center;font-size:.68rem;color:#94a3b8}.pdf-paper-footer p{margin:0}.simulated-image-view{display:flex;align-items:center;justify-content:center;width:100%}.mock-image-container{background:#1e293b;padding:24px;border-radius:36px;box-shadow:0 10px 30px #00000040;display:flex;justify-content:center}.mock-image-frame{width:320px;height:600px;background:#fff;border-radius:28px;box-shadow:inset 0 0 12px #0000001a;overflow:hidden;position:relative;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:#000}.camera-header{height:32px;background:#fff;display:flex;justify-content:space-between;align-items:center;padding:0 18px;font-size:.7rem;font-weight:600;position:relative;border-bottom:1px solid #f1f5f9}.notch{width:100px;height:18px;background:#000;border-bottom-left-radius:12px;border-bottom-right-radius:12px;position:absolute;left:50%;transform:translate(-50%);top:0}.screenshot-receipt-content{flex:1;padding:24px 20px;display:flex;flex-direction:column;align-items:center}.checkmark-circle{width:56px;height:56px;border-radius:50%;background:#ccfbf1;color:#0d9488;font-size:1.75rem;font-weight:800;display:flex;align-items:center;justify-content:center;margin-top:16px;margin-bottom:12px}.receipt-success-title{font-size:.95rem;font-weight:800;color:#1e293b;margin:0 0 4px}.receipt-amount{font-size:1.75rem;font-weight:900;color:#0f172a;margin-bottom:24px}.receipt-details-table{width:100%;display:flex;flex-direction:column;gap:12px;border-top:1px dashed #e2e8f0;border-bottom:1px dashed #e2e8f0;padding:16px 0;margin-bottom:auto}.receipt-row{display:flex;justify-content:space-between;font-size:.75rem}.receipt-row .label{color:#64748b;font-weight:500}.receipt-row .value{color:#1e293b;font-weight:700;text-align:right;max-width:170px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.receipt-bank-footer{font-size:.65rem;color:#94a3b8;font-weight:600;margin-top:12px}.viewer-pdf-footer{background:#fffc;border-top:1px solid rgba(0,82,73,.06);padding:12px 20px;display:flex;justify-content:space-between;align-items:center}.simulated-note{font-size:.72rem;color:#64748b}.btn-modal-close-action{background:#005249;border:none;color:#fff;padding:8px 16px;border-radius:6px;font-size:.8rem;font-weight:700;cursor:pointer}.btn-modal-close-action:hover{background:#0f766e}.query-pagination-card{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;padding:1rem 1.5rem!important;border-radius:14px;margin-top:8px}.pagination-info-side{font-size:.82rem;color:#475569}.pagination-controls-side{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.items-per-page-wrapper{display:flex;align-items:center;gap:8px}.items-per-page-label{font-size:.78rem;font-weight:700;color:#64748b}.student-query-container .items-per-page-select{padding:5px 28px 5px 10px;border:1px solid rgba(0,82,73,.12);border-radius:8px;font-size:.78rem;font-weight:700;color:#005249;background:#fff;outline:none;cursor:pointer;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg fill='%23005249' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/><path d='M0 0h24v24H0z' fill='none'/></svg>");background-repeat:no-repeat;background-position:right 8px center;background-size:16px}.student-query-container .items-per-page-select:focus{border-color:#005249}.pagination-buttons{display:flex;align-items:center;gap:6px}.student-query-container .pagination-btn{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(0,82,73,.1);border-radius:8px;cursor:pointer;background:#fff;color:#005249;font-weight:700;font-size:.8rem;outline:none}.student-query-container .pagination-btn:hover:not(:disabled){background:#0052490d;border-color:#00524933}.student-query-container .pagination-btn.active{background:#005249;border-color:#005249;color:#fff;box-shadow:0 4px 12px #00524926}.student-query-container .pagination-btn:disabled{opacity:.35;cursor:not-allowed;background:#f1f5f9;border-color:#e2e8f0}.arrow-btn{font-size:.65rem}@media(max-width:680px){.query-pagination-card{flex-direction:column;align-items:center;text-align:center;gap:12px}.pagination-controls-side{flex-direction:column;gap:12px}}@media(prefers-color-scheme:dark){.query-glass-card,.query-hero-card{background:#0f172acc;border-color:#00524933;color:#e2e8f0;box-shadow:0 8px 32px #0003}.query-glass-card:hover{border-color:#00736659;box-shadow:0 12px 40px #0000004d}.query-hero-card{border-left-color:#008f80}.hero-icon-plate{background:#008f8014;border-color:#008f8033;color:#00bfae}.hero-titles h2{color:#00bfae}.hero-titles p{color:#94a3b8}.query-filters-outer-card{background:#00524926!important;border-color:#0052494d!important}.query-logs-header h3{color:#00bfae}.logs-count{color:#94a3b8}.student-query-container .search-input{background:#0f172a;border-color:#0052494d;color:#cbd5e1}.student-query-container .search-input:focus{border-color:#008f80;box-shadow:0 0 0 3px #008f8026}.filter-chip{background:#0f172a;border-color:#00524933;color:#94a3b8}.filter-chip:hover{border-color:#008f8066;color:#00bfae}.filter-chip.active{background:#005249;border-color:#008f80;color:#fff;box-shadow:0 4px 12px #0000004d}.query-card-subject{color:#f8fafc}.btn-view-query-toggle{background:#008f8014;border-color:#008f8033;color:#00bfae}.btn-view-query-toggle:hover{background:#008f8026;border-color:#008f8059}.btn-view-query-toggle.active{background:#008f80;border-color:#008f80;color:#fff}.btn-view-query-toggle.active:hover{background:#00bfae;border-color:#00bfae}.query-card-expanded-content{border-top-color:#ffffff14}.query-card-message-text{color:#cbd5e1}.query-date-filed{color:#94a3b8}.toggle-expand-msg-btn{color:#00bfae}.btn-submit-query-trigger{background:#005249;border:1px solid #008f80;box-shadow:0 4px 12px #0003}.btn-submit-query-trigger:hover{background:#0f766e;box-shadow:0 6px 16px #00000059}.query-attachment-box{background:#0052490d;border-color:#00524940}.attachment-name{color:#e2e8f0}.btn-view-query-attachment{background:#0f172a;border-color:#008f804d;color:#00bfae}.btn-view-query-attachment:hover{background:#005249;color:#fff}.query-modal-card{background:#0f172af2;border-color:#ffffff1a;box-shadow:0 32px 80px #00000080}.student-query-container .modal-header{background:#0f172acc;border-bottom-color:#ffffff0f}.student-query-container .modal-header h3{color:#00bfae}.student-query-container .form-group label{color:#94a3b8}.form-control-input,.form-control-select,.form-control-textarea{background:#0f172a;border-color:#ffffff1a;color:#e2e8f0}.form-control-input:focus,.form-control-select:focus,.form-control-textarea:focus{border-color:#008f80;box-shadow:0 0 0 3px #008f8026}.file-upload-dropzone{background:#00524908;border-color:#008f8040}.file-upload-dropzone:hover{background:#00524914;border-color:#00bfae}.main-upload-instruction{color:#e2e8f0}.attached-file-preview-card{background:#0f172a;border-color:#ffffff1a}.attached-filename{color:#e2e8f0}.btn-discard-attachment{background:#ef44441a;border-color:#ef44444d}.btn-modal-cancel{background:#1e293b;border-color:#ffffff14;color:#94a3b8}.btn-modal-cancel:hover{background:#334155;color:#cbd5e1}.btn-modal-submit{background:#005249;border:1px solid #008f80}.btn-modal-submit:hover:not(:disabled){background:#0f766e}.empty-queries-state h4{color:#00bfae}.empty-queries-state p{color:#94a3b8}.viewer-modal-card{background:#0f172af2;border-color:#ffffff1a;box-shadow:0 32px 80px #00000080}.viewer-pdf-footer{background:#0f172ae6;border-top-color:#ffffff0f}.pagination-info-side,.items-per-page-label{color:#94a3b8}.student-query-container .items-per-page-select{background:#0f172a;border-color:#0052494d;color:#00bfae;background-image:url("data:image/svg+xml;utf8,<svg fill='%2300bfae' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/><path d='M0 0h24v24H0z' fill='none'/></svg>")}.student-query-container .items-per-page-select:focus{border-color:#00bfae}.student-query-container .pagination-btn{background:#0f172a;border-color:#00524940;color:#00bfae}.student-query-container .pagination-btn:hover:not(:disabled){background:#008f8026;border-color:#008f8059}.student-query-container .pagination-btn.active{background:#008f80;border-color:#008f80;color:#fff;box-shadow:0 4px 12px #0000004d}.student-query-container .pagination-btn:disabled{background:#1e293b;border-color:#ffffff14;color:#475569}}.student-timetable-container{padding:28px;max-width:100%;width:100%;box-sizing:border-box;color:#334155;display:flex;flex-direction:column;gap:28px;font-family:Outfit,Inter,-apple-system,BlinkMacSystemFont,sans-serif;position:relative}.timetable-glass-card{background:#ffffffbf;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(0,82,73,.08);border-radius:16px;padding:1.5rem;box-shadow:0 8px 32px #00524908;display:flex;flex-direction:column;gap:1.25rem;transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s cubic-bezier(.16,1,.3,1),border-color .4s cubic-bezier(.16,1,.3,1)}.timetable-glass-card:hover{border-color:#00524926;box-shadow:0 12px 40px #0052490f}.timetable-hero-card{background:#ffffffbf;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(0,82,73,.08);border-left:5px solid #005249;border-radius:16px;padding:1.25rem 1.75rem;display:flex;justify-content:space-between;align-items:center;gap:1.5rem;box-shadow:0 8px 32px #00524908;position:relative;overflow:hidden;flex-wrap:wrap}.timetable-hero-card .hero-branding{display:flex;align-items:center;gap:1.25rem}.timetable-hero-card .hero-icon-plate{font-size:1.75rem;background:#0052490a;width:52px;height:52px;display:flex;align-items:center;justify-content:center;border-radius:12px;border:1px solid rgba(0,82,73,.1);color:#005249}.timetable-hero-card .hero-titles h2{font-size:1.35rem;font-weight:800;letter-spacing:-.02em;color:#005249;margin:0 0 4px}.timetable-hero-card .hero-titles p{font-size:.88rem;color:#64748b;margin:0;font-weight:400}.fixed-class-hero-badge{display:flex;align-items:center;gap:12px;background:#0052490d;border:1.5px solid rgba(0,82,73,.12);padding:8px 18px;border-radius:12px;transition:all .3s ease}.fixed-class-hero-badge:hover{background:#00524914;border-color:#00524940;transform:translateY(-1px);box-shadow:0 4px 12px #0052490a}.badge-school-icon{font-size:1.5rem}.badge-meta{display:flex;flex-direction:column}.badge-sub-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#64748b}.badge-main-label{font-size:1.05rem;font-weight:800;color:#005249;letter-spacing:-.01em}.student-timetable-container .date-scroller-outer-card{gap:.75rem;padding:1rem 1.25rem!important;background:#0052490a!important;border-color:#00524924!important;box-shadow:0 8px 32px #0052490a}.date-scroller-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(0,82,73,.06);padding-bottom:.5rem;flex-wrap:wrap;gap:10px}.date-scroller-header h3{font-size:1.05rem;font-weight:700;margin:0;color:#005249;display:flex;align-items:center;gap:6px}.calendar-icon{font-size:1.15rem}.scroller-controls-group{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.month-navigation-controls,.date-navigation-controls{display:flex;align-items:center;gap:8px;background:#f1f5f9;padding:4px 8px;border-radius:99px;border:1px solid #e2e8f0}.month-nav-btn,.date-nav-btn{background:#fff;border:1px solid rgba(0,82,73,.08);width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.65rem;color:#005249;cursor:pointer;box-shadow:0 1px 4px #00000008}.month-nav-btn:hover,.date-nav-btn:hover{background:#005249;color:#fff;border-color:#005249}.current-month-indicator,.current-date-indicator{font-size:.85rem;font-weight:700;color:#334155;padding:0 8px;text-align:center;-webkit-user-select:none;user-select:none}.current-month-indicator{min-width:110px}.current-date-indicator{min-width:120px}.date-scroller-track-container{display:flex;align-items:center;gap:8px;width:100%}.date-track-nav-btn{background:#0052490a;border:1px solid rgba(0,82,73,.08);width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.6rem;color:#005249;cursor:pointer;box-shadow:0 1px 4px #00000008;flex-shrink:0;-webkit-user-select:none;user-select:none}.date-track-nav-btn:hover{background:#005249;color:#fff;border-color:#005249;transform:scale(1.08)}.date-scroller-track{flex:1;display:flex;gap:8px;overflow-x:auto;padding:2px 2px 8px;scrollbar-width:thin;scrollbar-color:rgba(0,82,73,.15) transparent}.date-scroller-track::-webkit-scrollbar{height:6px}.date-scroller-track::-webkit-scrollbar-track{background:transparent}.date-scroller-track::-webkit-scrollbar-thumb{background:#0052491f;border-radius:99px}.date-scroller-track::-webkit-scrollbar-thumb:hover{background:#00524940}.date-pill-btn{flex:0 0 54px;min-width:54px;height:58px;background:#fff;border:1px solid rgba(0,82,73,.06);border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;cursor:pointer;outline:none;position:relative;transition:all .3s cubic-bezier(.16,1,.3,1);box-shadow:0 2px 6px #00524903}.date-pill-btn:hover{transform:translateY(-2px);border-color:#00524926;box-shadow:0 3px 8px #00524908}.date-pill-btn.active-pill{background:linear-gradient(135deg,#005249,#0f766e);border-color:#005249;color:#fff;box-shadow:0 6px 15px #0052491f;transform:scale(1.03) translateY(-2px)}.pill-day{font-size:.65rem;text-transform:uppercase;font-weight:700;letter-spacing:.02em;color:#64748b}.active-pill .pill-day{color:#ffffffd9}.pill-number{font-size:1.05rem;font-weight:800;letter-spacing:-.01em;color:#0f172a}.active-pill .pill-number{color:#fff}.pill-dot-indicator{position:absolute;bottom:4px;width:4px;height:4px;border-radius:50%;background:#107b0d}.active-pill .pill-dot-indicator{background:#fff;box-shadow:0 0 6px #fff}.timetable-summary-banner-row{display:flex;align-items:center}.timetable-summary-banner-row .summary-status-capsule{font-size:.95rem;font-weight:600;color:#475569;display:flex;align-items:center;gap:12px;background:#fff9;padding:8px 16px;border-radius:99px;border:1px solid rgba(0,82,73,.05)}.timetable-summary-banner-row .total-count-badge{padding:4px 12px;border-radius:99px;font-size:.85rem;font-weight:700}.timetable-summary-banner-row .total-count-badge.has-items{background:#005249;color:#fff;box-shadow:0 4px 10px #0052491f}.timetable-summary-banner-row .total-count-badge.zero-items{background:#e2e8f0;color:#64748b}.timetable-list-wrapper{min-height:200px;position:relative}.timetable-timeline-stack{display:flex;flex-direction:column;gap:20px;position:relative;padding-left:20px}.timetable-timeline-stack:before{content:"";position:absolute;left:28px;top:15px;bottom:15px;width:2px;background:linear-gradient(to bottom,#0052490f,#0052492e,#0052490f);z-index:1}.timetable-period-card{padding:1.25rem 1.5rem!important;display:flex;align-items:center;position:relative;overflow:visible;z-index:2}.timeline-connector-emblem{position:absolute;left:-24px;top:50%;transform:translateY(-50%);width:10px;height:10px;border-radius:50%;border:3px solid #ffffff;box-shadow:0 0 0 2px #0052490f;z-index:5}.timetable-period-card:hover .timeline-connector-emblem{transform:translateY(-50%) scale(1.3);box-shadow:0 0 10px #00524940}.period-left-badge-group{display:flex;align-items:center;gap:16px;min-width:190px;flex-shrink:0}.period-circle-marker{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.1rem;letter-spacing:-.01em;flex-shrink:0;background:#fff}.period-time-container{display:flex;flex-direction:column;gap:2px}.period-time-range{font-size:.98rem;font-weight:700;color:#0f172a;white-space:nowrap}.period-duration-text{font-size:.76rem;color:#64748b;font-weight:500}.period-center-subject-details{flex:1;display:flex;flex-direction:column;gap:6px}.period-subject-title{font-size:1.12rem;font-weight:800;color:#0f172a;margin:0;letter-spacing:-.01em;display:flex;align-items:center;gap:8px}.subject-emoji-prefix{font-size:1.25rem}.period-meta-badges{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.period-meta-tag{font-size:.8rem;font-weight:600;padding:4px 10px;border-radius:6px}.tag-teacher{background:#0052490a;color:#005249;border:1px solid rgba(0,82,73,.08)}.tag-room{background:#f59e0b14!important;color:#b45309!important;border:1px solid rgba(245,158,11,.2)!important;font-weight:700!important}.timetable-period-card.break-card{background:#f8fafccc!important;border-left-style:dashed!important;box-shadow:0 4px 12px #00000003!important}.timetable-period-card.break-card:hover{transform:none}.tag-break{background:#e2e8f099;color:#64748b;border:1px dashed #cbd5e1}.period-card-main-row{display:flex;align-items:center;justify-content:space-between;width:100%;gap:20px}.period-right-status-badge{display:flex;align-items:center}.status-pill{font-size:.78rem;font-weight:700;padding:6px 14px;border-radius:99px;display:inline-flex;align-items:center;gap:6px;text-transform:uppercase;letter-spacing:.04em}.status-pill.completed{background:#f1f5f9;color:#94a3b8;border:1px solid #e2e8f0}.status-completed{opacity:.8}.status-pill.upcoming{background:#0052490a;color:#005249;border:1px solid rgba(0,82,73,.08)}.status-pill.active-now{background:#e3f8e2;color:#175609;border:1.5px solid #175609;box-shadow:0 4px 12px #d9770614;font-weight:800}.timetable-period-card.status-active-now{background:#f2fef187!important;border-color:#107b0d!important;box-shadow:0 12px 30px #d977060d!important;transform:translateY(-2px)}.status-pill.next{background:#f8ba00;color:#fcf9cf;border:1.5px solid #ffe772;box-shadow:0 4px 12px #0d948814;font-weight:800}.timetable-period-card.status-next{background:#faf9e999!important;border-color:#f8ba00!important;box-shadow:0 12px 30px #0d94880d!important;transform:translateY(-2px)}.active-pulse-dot{width:6px;height:6px;background:#107b0d;border-radius:50%;display:inline-block;animation:beaconPulse 1.6s infinite ease-in-out}@keyframes beaconPulse{0%{transform:scale(.9);opacity:.4;box-shadow:0 0 #2fc007ed}70%{transform:scale(1.15);opacity:1;box-shadow:0 0 0 6px #f59e0b00}to{transform:scale(.9);opacity:.4;box-shadow:0 0 #f59e0b00}}.empty-timetable-state{align-items:center;text-align:center;padding:3.5rem 2rem;gap:.75rem;background:#00524905!important;border-color:#00524914!important}.empty-timetable-state .empty-state-icon{font-size:2.75rem;animation:weekendFloat 3s infinite ease-in-out}@keyframes weekendFloat{0%{transform:translateY(0) rotate(0)}50%{transform:translateY(-8px) rotate(3deg)}to{transform:translateY(0) rotate(0)}}.empty-timetable-state h4{font-size:1.2rem;font-weight:800;color:#005249;margin:0}.empty-timetable-state p{font-size:.88rem;color:#64748b;max-width:400px;margin:0;line-height:1.5}.print-modal-overlay{position:fixed;inset:0;background:#001e1a40;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;padding:24px;z-index:10000;animation:timetableFadeIn .35s cubic-bezier(.16,1,.3,1)}.print-modal-card{width:100%;max-width:820px;height:85vh;background:#ffffffe6;backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);border:1px solid rgba(255,255,255,.5);border-radius:20px;box-shadow:0 32px 80px #00322c26;display:flex;flex-direction:column;overflow:hidden}.modal-print-toolbar{background:#0f172a;padding:12px 20px;display:flex;justify-content:space-between;align-items:center;color:#f8fafc;border-bottom:1px solid #1e293b}.modal-print-toolbar .toolbar-left{display:flex;align-items:center;gap:10px}.modal-print-toolbar .pdf-doc-icon{background:#ef4444;color:#fff;font-size:.65rem;font-weight:900;padding:2px 6px;border-radius:4px;letter-spacing:.05em}.modal-print-toolbar .pdf-doc-title{font-size:.88rem;font-weight:700;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal-print-toolbar .pdf-doc-size{font-size:.72rem;color:#94a3b8}.modal-print-toolbar .toolbar-actions{display:flex;align-items:center;gap:8px}.modal-print-toolbar .toolbar-btn{background:#ffffff0f;border:1px solid rgba(255,255,255,.04);color:#e2e8f0;padding:6px 14px;border-radius:6px;cursor:pointer;font-size:.8rem;font-weight:600;transition:all .2s}.modal-print-toolbar .toolbar-btn:hover{background:#ffffff26}.modal-print-toolbar .btn-close-modal{background:#ef444426;border:1px solid rgba(239,68,68,.25);color:#fca5a5}.modal-print-toolbar .btn-close-modal:hover{background:#ef4444;color:#fff}.modal-print-body-viewer{flex:1;overflow-y:auto;background:#475569;padding:32px 16px;display:flex;justify-content:center}.pdf-paper-page{width:100%;max-width:680px;min-height:800px;background:#fff;box-shadow:0 10px 25px #00000026;padding:48px;box-sizing:border-box;display:flex;flex-direction:column;gap:20px;position:relative;font-family:Inter,-apple-system,sans-serif;color:#0f172a}.pdf-paper-header{display:flex;flex-direction:column;gap:8px}.pdf-school-header h4{font-size:1.15rem;font-weight:900;margin:0;letter-spacing:.05em;color:#005249}.pdf-school-header h5{font-size:.85rem;font-weight:700;margin:0;color:#b45309;letter-spacing:.02em;text-transform:uppercase}.pdf-metadata-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;margin-top:6px;font-size:.82rem;color:#475569}.pdf-divider{height:2px;background:#e2e8f0;width:100%}.pdf-timetable-table{width:100%;border-collapse:collapse;margin-top:10px;font-size:.8rem}.pdf-timetable-table th,.pdf-timetable-table td{border:1px solid #cbd5e1;padding:10px 8px;text-align:center;vertical-align:middle}.pdf-timetable-table th{background:#0052490a;color:#005249;font-weight:800}.pdf-timetable-table td{color:#1e293b;line-height:1.4}.pdf-timetable-table td.time-td{background:#f8fafc;font-size:.76rem;width:105px;text-align:left}.pdf-timetable-table .sub-detail{font-size:.7rem;color:#64748b;font-weight:500;display:block;margin-top:2px}.pdf-timetable-table .pdf-break-row{background:#f1f5f9;font-weight:700}.pdf-timetable-table .break-td{color:#64748b;font-size:.78rem;letter-spacing:.05em;text-transform:uppercase}.pdf-paper-footer{margin-top:auto;display:flex;flex-direction:column;gap:16px;font-size:.72rem;color:#64748b;line-height:1.5}.pdf-paper-footer p{margin:0;border-top:1px solid #e2e8f0;padding-top:12px}.pdf-paper-footer .signatures{display:flex;justify-content:flex-end;font-weight:700;color:#475569;margin-top:10px}.animate-fade-in{animation:timetableFadeIn .5s cubic-bezier(.16,1,.3,1) both}.animate-scale-in{animation:timetableScaleIn .4s cubic-bezier(.34,1.56,.64,1) both}@keyframes timetableFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes timetableScaleIn{0%{opacity:0;transform:scale(.96) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}.transition-smooth{transition:all .35s cubic-bezier(.16,1,.3,1)}@media(max-width:1024px){.timetable-hero-card{flex-direction:column;align-items:flex-start;gap:1.25rem}.hero-controls-row{width:100%;justify-content:space-between}}@media(max-width:768px){.student-timetable-container{padding:16px;gap:20px}.timetable-period-card{padding:1rem!important}.period-card-main-row{flex-direction:column;align-items:flex-start;gap:12px}.period-left-badge-group{min-width:auto;width:100%}.period-right-status-badge{align-self:flex-end;margin-top:-30px}.timetable-timeline-stack:before{left:24px}.timeline-connector-emblem{left:-28px}.print-modal-card{height:95vh}.pdf-paper-page{padding:24px 16px}.pdf-metadata-grid{grid-template-columns:1fr}.pdf-timetable-table{display:block;overflow-x:auto}}@media(max-width:480px){.date-scroller-header{flex-direction:column;align-items:flex-start}.scroller-controls-group{width:100%;flex-direction:column;align-items:stretch}.month-navigation-controls,.date-navigation-controls{justify-content:space-between}.hero-controls-row{flex-direction:column;align-items:stretch}.class-selector-wrapper{justify-content:space-between}.class-select-dropdown{flex:1;text-align:right}.print-timetable-btn{justify-content:center}.period-right-status-badge{align-self:flex-start;margin-top:0}}.student-results-container{padding:28px;max-width:100%;width:100%;box-sizing:border-box;color:#334155;display:flex;flex-direction:column;gap:28px;font-family:Outfit,Inter,-apple-system,BlinkMacSystemFont,sans-serif}.animate-fade-in{animation:premiumFadeIn .6s cubic-bezier(.16,1,.3,1) both}@keyframes premiumFadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.results-hero-card{background:#ffffffbf;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(0,82,73,.08);border-left:5px solid var(--brand-primary, #005249);border-radius:16px;padding:1.25rem 1.75rem;display:flex;justify-content:space-between;align-items:center;gap:1.5rem;box-shadow:0 8px 32px #00524908}.hero-branding{display:flex;align-items:center;gap:1.25rem}.hero-icon-plate{font-size:1.75rem;background:#0052490a;width:52px;height:52px;display:flex;align-items:center;justify-content:center;border-radius:12px;border:1px solid rgba(0,82,73,.1);color:var(--brand-primary, #005249)}.hero-titles h2{font-size:1.35rem;font-weight:800;letter-spacing:-.02em;color:var(--brand-primary, #005249);margin:0 0 .15rem;background:linear-gradient(135deg,#005249 30%,#007d70);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.hero-titles p{font-size:.85rem;color:#64748b;margin:0;line-height:1.45;font-weight:500}.hero-actions-container{display:flex;align-items:center;gap:1rem}.static-class-badge{background:#0052490f;border:1px solid rgba(0,82,73,.15);color:var(--brand-primary, #005249);padding:.45rem 2rem;border-radius:99px;font-size:.8rem;font-weight:750;letter-spacing:.02em}.btn-trigger-report-modal{display:flex;align-items:center;gap:.5rem;background:var(--brand-primary, #005249);color:#fff;border:1px solid var(--brand-primary-light, #006156);padding:.6rem 1rem;border-radius:10px;font-size:.85rem;font-weight:600;cursor:pointer;box-shadow:0 4px 12px #00524926;transition:all .3s ease}.btn-trigger-report-modal:hover{background:var(--brand-primary-light, #006156);box-shadow:0 6px 16px #00524940;transform:translateY(-2px)}.results-glass-card{background:#ffffffbf;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(0,82,73,.08);border-radius:16px;padding:1.5rem;box-shadow:0 10px 30px #0052490a;display:flex;flex-direction:column;gap:1.25rem;transition:all .3s ease}.results-glass-card:hover{border-color:#00524926;box-shadow:0 16px 40px #00524912}.results-layout-split{display:grid;grid-template-columns:320px 1fr;gap:1.75rem;align-items:start}.results-column-left,.results-column-right{display:flex;flex-direction:column;gap:1.5rem}.card-header-bar{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid rgba(0,82,73,.06);padding-bottom:.85rem}.header-meta h4{font-size:1.1rem;font-weight:700;margin:0 0 .15rem;color:var(--brand-primary, #005249)}.header-meta p{font-size:.78rem;color:#64748b;margin:0}.filter-inputs-stack{display:flex;flex-direction:column;gap:1rem}.form-field-wrapper{display:flex;flex-direction:column;gap:.4rem}.form-field-wrapper label{font-size:.8rem;font-weight:600;color:#475569}.select-container{position:relative;width:100%}.styled-select{width:100%;background:#fff;border:1px solid #cbd5e1;color:#0f172a;border-radius:10px;padding:.65rem 2.25rem .65rem .85rem;font-family:inherit;font-size:.85rem;font-weight:500;outline:none;cursor:pointer;transition:all .3s ease;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23475569' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;background-size:1rem}.styled-select:focus{border-color:var(--brand-primary, #005249);box-shadow:0 0 0 3px #0052491a}.student-quick-info{background:#00524905;border:1px solid rgba(0,82,73,.06);border-radius:12px;padding:.85rem 1rem}.student-quick-info h5{font-size:.8rem;font-weight:700;color:var(--brand-primary, #005249);margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.03em}.info-grid{display:flex;flex-direction:column;gap:.35rem;font-size:.8rem}.info-grid div{display:flex;justify-content:space-between}.info-grid span{color:#64748b}.info-grid strong{color:#1e293b;font-weight:600}.summary-kpi-card{border:.5px solid var(--brand-secondary, #FFA600);background:linear-gradient(135deg,#ffffffd9,#fff5e180);box-shadow:0 8px 28px #ffffff14,0 4px 12px #0404040a}.summary-kpi-card:hover{box-shadow:0 12px 36px #ffffff24,0 6px 18px #0052490f}.ledger-metrics-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.metric-box{border-radius:14px;padding:.85rem .9rem;display:flex;flex-direction:column;gap:.25rem;border:1px solid rgba(0,0,0,.04);position:relative;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease}.metric-box:hover{transform:translateY(-2px);box-shadow:0 6px 16px #00524914}.metric-box:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:3px;border-radius:0 0 14px 14px}.metric-lbl{font-size:.7rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.04em}.metric-val{font-size:1.35rem;font-weight:850;color:var(--brand-primary, #005249);line-height:1.1}.bg-total-score{background:#0052490d}.bg-total-score:after{background:var(--brand-primary, #005249)}.bg-percentage{background:#ffa60012}.bg-percentage:after{background:var(--brand-secondary, #FFA600)}.bg-percentage .metric-val{color:#b45309}.bg-grade{background:#10b98112}.bg-grade:after{background:var(--success, #10b981)}.bg-rank{background:#3b82f60f}.bg-rank:after{background:#3b82f6}.bg-rank .metric-val{color:#1d4ed8}.grade-val{color:var(--success, #10b981)!important;font-size:1.5rem}.status-progress-zone{display:flex;flex-direction:column;gap:.75rem}.progress-bar-track{height:6px;background:#e2e8f0;border-radius:99px;overflow:hidden}.progress-bar-fill{height:100%;border-radius:99px;transition:width .8s cubic-bezier(.16,1,.3,1)}.status-badge-row{display:flex;justify-content:space-between;align-items:center;font-size:.82rem;font-weight:600}.status-badge-row span:first-child{color:#64748b}.status-badge-val{display:flex;align-items:center;gap:.35rem;font-size:.78rem;font-weight:700;padding:.2rem .6rem;border-radius:6px;text-transform:uppercase}.status-badge-val.passed{background:#10b9811a;color:var(--success, #10b981)}.status-badge-val.failed{background:#ef44441a;color:var(--error, #ef4444)}.pulse-bullet{width:6px;height:6px;border-radius:50%;display:inline-block}.pulse-bullet.success{background:var(--success, #10b981);box-shadow:0 0 6px var(--success);animation:pulse-glow 2s infinite}.pulse-bullet.error{background:var(--error, #ef4444);box-shadow:0 0 6px var(--error)}@keyframes pulse-glow{0%{transform:scale(.95);box-shadow:0 0 #10b98180}70%{transform:scale(1);box-shadow:0 0 0 5px #10b98100}to{transform:scale(.95);box-shadow:0 0 #10b98100}}.cards-grid-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:.25rem}.cards-grid-header h3{font-size:1.15rem;font-weight:800;color:var(--brand-primary, #005249)}.active-filter-badge{font-size:.75rem;font-weight:700;color:var(--brand-primary, #005249);background:#0052490d;border:1px solid rgba(0,82,73,.12);padding:.3rem .65rem;border-radius:99px;text-transform:uppercase;letter-spacing:.02em}.subject-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:1.25rem}.subject-card{gap:1rem;transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease}.subject-card:hover{transform:translateY(-4px)}.subject-card.border-excel{border-top:4px solid var(--success, #10b981)}.subject-card.border-warn{border-top:4px solid var(--error, #ef4444)}.subject-card-header{display:flex;justify-content:space-between;align-items:flex-start}.subject-title-grp{display:flex;align-items:center;gap:.75rem}.subject-emoji{font-size:1.5rem;background:#0052490a;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:10px}.subject-title-grp h4{font-size:1rem;font-weight:700;color:#1e293b;margin:0}.card-remarks-short{font-size:.72rem;color:#64748b;margin:0;line-height:1.3}.subject-grade-badge{font-size:1.1rem;font-weight:800;width:38px;height:38px;border-radius:8px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px #0000000d}.grade-O{background:#10b98126;color:#047857;border:1px solid rgba(16,185,129,.25)}.grade-A\+{background:#10b9811a;color:#059669;border:1px solid rgba(16,185,129,.2)}.grade-A{background:#3b82f61f;color:#1d4ed8;border:1px solid rgba(59,130,246,.2)}.grade-B\+{background:#f59e0b1f;color:#b45309;border:1px solid rgba(245,158,11,.2)}.grade-B{background:#f59e0b14;color:#d97706;border:1px solid rgba(245,158,11,.15)}.grade-C{background:#64748b1a;color:#475569;border:1px solid rgba(100,116,139,.15)}.grade-D{background:#ef444414;color:#dc2626;border:1px solid rgba(239,68,68,.15)}.grade-F{background:#ef444426;color:#b91c1c;border:1px solid rgba(239,68,68,.25)}.subject-card-body{display:flex;flex-direction:column;gap:.85rem}.marks-focus-display{display:flex;justify-content:space-between;align-items:flex-end;background:#00524905;border:1px solid rgba(0,82,73,.05);padding:.75rem 1rem;border-radius:12px}.big-marks-number{display:flex;align-items:baseline;gap:.2rem}.obtained-num{font-size:1.5rem;font-weight:850;color:var(--brand-primary, #005249);line-height:1}.divider-slash{font-size:1.25rem;color:#94a3b8;font-weight:500}.max-num{font-size:1.25rem;color:#64748b;font-weight:600}.pct-capsule{background:#ffffff1f;color:var(--brand-secondary-dark, #b6f5b2);font-size:.85rem;font-weight:800;padding:.3rem .75rem;border-radius:8px;border:1px solid rgba(3,144,24,.25);line-height:1}.subparts-container{background:#00000004;border-radius:10px;padding:.65rem .75rem;border:1px solid rgba(0,0,0,.03)}.subparts-heading{font-size:.7rem;font-weight:700;text-transform:uppercase;color:#64748b;margin-bottom:.5rem;letter-spacing:.03em}.subparts-marks-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.subpart-marks-card{background:#ffffffe6;border:1px solid rgba(0,82,73,.08);border-radius:10px;padding:.6rem .75rem;display:flex;flex-direction:column;align-items:center;gap:.35rem;text-align:center;transition:border-color .2s ease,box-shadow .2s ease}.subpart-marks-card:hover{border-color:#0052492e;box-shadow:0 4px 12px #0052490f}.subpart-label{font-size:.7rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.02em}.subpart-big-marks{display:flex;align-items:baseline;gap:.15rem}.subpart-obtained{font-size:1.25rem;font-weight:850;color:var(--brand-primary, #005249);line-height:1}.subpart-divider{font-size:.9rem;color:#94a3b8;font-weight:500}.subpart-max{font-size:1rem;color:#64748b;font-weight:600}.progress-bar-track.micro{height:4px;width:100%;background:#e2e8f0}.progress-bar-fill.micro{height:100%}.subpart-grade-tag{font-size:.65rem;font-weight:800;padding:.1rem .35rem;border-radius:4px;min-width:20px;text-align:center}.single-assessment-marker{font-size:.72rem;font-weight:500;color:#64748b;display:flex;align-items:center;gap:.35rem;background:#00524903;padding:.4rem;border-radius:6px}.marker-dot{width:5px;height:5px;background:var(--brand-primary, #005249);border-radius:50%;display:inline-block}.report-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00282373;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1100;display:flex;align-items:center;justify-content:center;padding:1.5rem}.report-modal-content{background:#fff;border-radius:20px;width:100%;max-width:840px;max-height:90vh;box-shadow:0 24px 64px #00282333;display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(255,255,255,.2)}.modal-actions-header-bar{background:#fafbfc;border-bottom:1px solid #cbd5e1;padding:.85rem 1.5rem;display:flex;justify-content:space-between;align-items:center}.modal-header-meta h4{font-size:1rem;font-weight:700;color:var(--brand-primary, #005249);margin:0}.modal-header-meta p{font-size:.75rem;color:#64748b;margin:0}.modal-actions-group{display:flex;align-items:center;gap:.75rem}.btn-print-cta{display:flex;align-items:center;gap:.4rem;background:var(--brand-secondary, #FFA600);color:var(--brand-primary, #005249);border:1px solid var(--brand-secondary-dark, #E69500);padding:.5rem 1rem;border-radius:8px;font-size:.8rem;font-weight:700;cursor:pointer;box-shadow:var(--shadow-accent)}.btn-print-cta:hover{background:var(--brand-secondary-light, #FFBB33);transform:translateY(-1px)}.modal-close-btn-round{background:#e2e8f0;border:none;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.8rem;cursor:pointer;color:#475569}.modal-close-btn-round:hover{background:#cbd5e1;color:#0f172a}.report-card-sheet{padding:2.25rem 2.5rem;overflow-y:auto;flex-grow:1;background:#fff;color:#000}.school-letterhead-center{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.5rem}.letterhead-crest{font-size:2.25rem}.letterhead-text h2{font-size:1.25rem;font-weight:800;letter-spacing:.05em;color:#0f172a;margin:0}.letterhead-text p{font-size:.7rem;color:#475569;margin:.15rem 0 .4rem;text-transform:uppercase;letter-spacing:.02em}.official-report-card-title{font-size:.85rem;font-weight:800;background:#0f172a;color:#fff;padding:.25rem 1.25rem;border-radius:99px;display:inline-block;letter-spacing:.08em;margin-top:.35rem}.letterhead-divider{height:2px;background:#0f172a;margin:1.25rem 0;position:relative}.letterhead-divider:after{content:"";position:absolute;left:0;bottom:-4px;width:100%;height:1px;background:#475569}.report-card-metadata{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.25rem}.meta-row{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.meta-col{font-size:.8rem;display:flex;gap:.5rem;border-bottom:1px dotted #cbd5e1;padding-bottom:.15rem}.meta-col span{color:#475569;font-weight:500;min-width:120px}.meta-col strong{color:#000;font-weight:700}.printable-results-table{width:100%;border-collapse:collapse;margin:1.5rem 0;font-size:.8rem;border:2px solid #000000}.printable-results-table th,.printable-results-table td{border:1px solid #94a3b8;padding:.5rem .75rem;text-align:center}.printable-results-table th{background:#f1f5f9;color:#0f172a;font-weight:700}.printable-results-table tbody tr:nth-child(2n){background:#fafbfc}.printable-results-table .totals-row td{border-top:2px double #000000;background:#f8fafc}.printable-remarks-area{display:grid;grid-template-columns:1fr 220px;gap:1.5rem;margin-top:1.5rem}.remarks-box{border:1px solid #94a3b8;border-radius:8px;padding:.75rem;font-size:.75rem}.remarks-box strong{display:block;margin-bottom:.25rem;color:#0f172a}.remarks-box p{color:#334155;line-height:1.4;margin:0;font-style:italic}.kpi-flat-badges{display:flex;flex-direction:column;gap:.5rem}.flat-badge{display:flex;justify-content:space-between;font-size:.75rem;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:6px;padding:.4rem .75rem}.flat-badge span{color:#475569}.flat-badge strong{color:#000;font-weight:700}.signatures-row{display:flex;justify-content:space-between;margin-top:3.5rem;padding:0 1rem}.signature-col{display:flex;flex-direction:column;align-items:center;width:180px}.sig-line{width:100%;height:1px;background:#64748b;margin-bottom:.4rem}.signature-col span{font-size:.7rem;color:#475569;font-weight:600}@media(max-width:1024px){.results-layout-split{grid-template-columns:1fr}.results-column-left{display:grid;grid-template-columns:1.2fr .8fr;gap:1.25rem}}@media(max-width:768px){.student-results-container{padding:16px}.results-hero-card{flex-direction:column;align-items:flex-start;gap:1rem}.hero-actions-container{width:100%;flex-direction:column;align-items:stretch;gap:.75rem}.static-class-badge{text-align:center}.btn-trigger-report-modal{width:100%;justify-content:center}.results-column-left,.ledger-metrics-grid{grid-template-columns:1fr}.report-modal-content{max-height:98vh}.report-card-sheet{padding:1.25rem 1.5rem}.meta-row{grid-template-columns:1fr;gap:.5rem}.printable-remarks-area{grid-template-columns:1fr}.signatures-row{flex-direction:column;align-items:center;gap:2rem;margin-top:2rem}.signature-col{width:100%;max-width:240px}}@media print{body *{visibility:hidden}.report-modal-overlay,.report-modal-content,.report-card-sheet,.report-card-sheet *{visibility:visible}.report-modal-overlay{position:absolute;left:0;top:0;width:100%;height:auto;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;padding:0;z-index:auto;display:block}.report-modal-content{box-shadow:none;border:none;max-height:none;width:100%;max-width:none;border-radius:0;overflow:visible}.report-card-sheet{padding:0;overflow:visible;width:100%}.print-exclude{display:none!important}}.department-page{width:100%;max-width:100%;padding:28px;background:transparent;min-height:100%}.department-header{margin-bottom:28px;padding-bottom:0;border-bottom:none}.department-title{font-size:32px;font-weight:700;margin:0 0 8px;color:#005249;letter-spacing:-.5px;line-height:1.2}.department-subtitle{margin:0;font-size:15px;color:#64748b;line-height:1.5}.designation-page{width:100%;max-width:100%;padding:28px;background:transparent;min-height:100%}.designation-header{margin-bottom:28px;padding-bottom:0;border-bottom:none}.designation-title{font-size:32px;font-weight:700;margin:0 0 8px;color:#005249;letter-spacing:-.5px;line-height:1.2}.designation-subtitle{margin:0;font-size:15px;color:#64748b;line-height:1.5}.employee-category-page{width:100%;max-width:100%;padding:28px;background:transparent;min-height:100%}.employee-category-header{margin-bottom:28px;padding-bottom:0;border-bottom:none}.employee-category-title{font-size:32px;font-weight:700;margin:0 0 8px;color:#005249;letter-spacing:-.5px;line-height:1.2}.employee-category-subtitle{margin:0;font-size:15px;color:#64748b;line-height:1.5}.holiday-page{width:100%;max-width:100%;padding:28px;background:transparent;min-height:100%}.holiday-header{margin-bottom:28px;padding-bottom:0;border-bottom:none}.holiday-title{font-size:32px;font-weight:700;margin:0 0 8px;color:#005249;letter-spacing:-.5px;line-height:1.2}.holiday-subtitle{margin:0;font-size:15px;color:#64748b;line-height:1.5}.leavecategory-page{width:100%;max-width:100%;padding:28px;background:transparent;min-height:100%}.leavecategory-header{margin-bottom:28px;padding-bottom:0;border-bottom:none}.leavecategory-title{font-size:32px;font-weight:700;margin:0 0 8px;color:#005249;letter-spacing:-.5px;line-height:1.2}.leavecategory-subtitle{margin:0;font-size:15px;color:#64748b;line-height:1.5}.paycharge-page{width:100%;max-width:100%;padding:28px;background:transparent;min-height:100%}.paycharge-header{margin-bottom:28px;padding-bottom:0;border-bottom:none}.paycharge-title{font-size:32px;font-weight:700;margin:0 0 8px;color:#005249;letter-spacing:-.5px;line-height:1.2}.paycharge-subtitle{margin:0;font-size:15px;color:#64748b;line-height:1.5}.performancecategory-page{width:100%;max-width:100%;padding:28px;background:transparent;min-height:100%}.performancecategory-header{margin-bottom:28px;padding-bottom:0;border-bottom:none}.performancecategory-title{font-size:32px;font-weight:700;margin:0 0 8px;color:#005249;letter-spacing:-.5px;line-height:1.2}.performancecategory-subtitle{margin:0;font-size:15px;color:#64748b;line-height:1.5}.performancesubcategory-page{width:100%;max-width:100%;padding:28px;background:transparent;min-height:100%}.performancesubcategory-header{margin-bottom:28px;padding-bottom:0;border-bottom:none}.performancesubcategory-title{font-size:32px;font-weight:700;margin:0 0 8px;color:#005249;letter-spacing:-.5px;line-height:1.2}.performancesubcategory-subtitle{margin:0;font-size:15px;color:#64748b;line-height:1.5}.employee-page{width:100%;max-width:100%;padding:28px;background:transparent;min-height:100%}.employee-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px;padding-bottom:0;border-bottom:none}.employee-title-section{display:flex;flex-direction:column;gap:6px}.employee-title{font-size:32px;font-weight:700;margin:0 0 8px;color:#005249;letter-spacing:-.5px;line-height:1.2}.employee-subtitle{margin:0;font-size:15px;color:#64748b;line-height:1.5}.employee-filters{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:20px 24px;margin-bottom:20px;box-shadow:0 1px 3px #0000000a;animation:fadeIn .3s ease-out}.filter-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;align-items:end}.filter-item{display:flex;flex-direction:column;gap:6px}.filter-item-small{max-width:160px}.filter-label{font-size:12px;font-weight:600;color:#475569;text-transform:uppercase;letter-spacing:.4px}.filter-input{height:38px!important;font-size:13px!important}.success-toast{position:fixed;top:24px;right:24px;display:flex;align-items:center;gap:12px;padding:16px 20px;background:#fff;color:#059669;border-left:4px solid #10b981;border-radius:8px;box-shadow:0 10px 30px #0000001a;z-index:1100;max-width:400px;animation:slideInRight .3s ease-out}.success-icon{font-size:20px}.success-message{font-size:14px;font-weight:600;color:#059669}.success-close{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:#f0fdf4;border-radius:6px;font-size:12px;cursor:pointer;color:#059669;transition:all .15s ease;margin-left:auto}.success-close:hover{background:#059669;color:#fff}.emp-leave-badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:20px;font-size:12px;font-weight:600;background:#00524914;color:#005249;border:1px solid rgba(0,82,73,.15)}.employee-form-container{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 16px #0000000f;overflow:hidden}.emp-tabs{display:flex;background:linear-gradient(135deg,#005249,#006156);padding:0;gap:0;overflow-x:auto;scrollbar-width:none}.emp-tabs::-webkit-scrollbar{display:none}.emp-tab{display:flex;align-items:center;gap:8px;padding:16px 24px;border:none;background:transparent;color:#ffffffa6;font-size:14px;font-weight:600;cursor:pointer;transition:all .25s ease;white-space:nowrap;font-family:inherit;position:relative;border-bottom:3px solid transparent}.emp-tab:hover{color:#ffffffe6;background:#ffffff0f}.emp-tab-disabled{color:#ffffff4d!important;cursor:not-allowed!important;background:transparent!important}.emp-tab-disabled:hover{color:#ffffff4d!important;background:transparent!important}.emp-tab-active{color:#fff;background:#ffffff1a;border-bottom-color:#ffa600}.emp-tab-active .emp-tab-icon{transform:scale(1.15)}.emp-tab-icon{font-size:18px;transition:transform .2s ease}.emp-tab-label{font-size:14px}.emp-tab-content{padding:28px 32px}.form-section-title{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:700;color:#005249;margin-bottom:24px;padding-bottom:12px;border-bottom:2px solid #f1f5f9}.section-icon{font-size:22px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group.span-full{grid-column:1 / -1}.form-label{font-size:13px;font-weight:600;color:#334155}.required{color:#ef4444;font-weight:700}.form-input,.form-select{padding:10px 14px;border:1px solid #e2e8f0;border-radius:8px;font-size:14px;color:#1e293b;background:#fff;transition:all .2s ease;outline:none;height:42px;font-family:inherit}.form-textarea{height:auto!important;min-height:80px;resize:vertical;line-height:1.5}.form-input:hover,.form-select:hover{border-color:#cbd5e1}.form-input:focus,.form-select:focus{border-color:#005249;box-shadow:0 0 0 3px #0052491a}.form-input::placeholder{color:#94a3b8}.input-error{border-color:#ef4444!important}.input-error:focus{box-shadow:0 0 0 3px #ef44441a!important}.field-error{color:#ef4444;font-size:12px;font-weight:500;margin-top:2px}input[type=date]{position:relative;padding-right:12px}input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.6;transition:opacity .2s}input[type=date]::-webkit-calendar-picker-indicator:hover{opacity:1}.emp-form-actions{display:flex;align-items:center;justify-content:space-between;padding:20px 32px;background:#f8fafc;border-top:1px solid #e2e8f0}.emp-form-actions-left,.emp-form-actions-right{display:flex;align-items:center;gap:12px}.btn-save{min-width:180px;background:linear-gradient(135deg,#005249,#006156)!important;box-shadow:0 4px 16px #00524940!important}.btn-save:hover{box-shadow:0 6px 20px #00524959!important}.btn-spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite;margin-right:8px}@keyframes spin{to{transform:rotate(360deg)}}.animate-fade-in{animation:fadeIn .3s ease-out}.animate-fadeIn{animation:fadeIn .25s ease-out}.animate-scaleIn{animation:scaleIn .25s ease-out}@keyframes scaleIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}@media(max-width:1024px){.form-grid,.filter-row{grid-template-columns:repeat(2,1fr)}.emp-tab{padding:14px 18px}.emp-tab-content{padding:24px 20px}.emp-form-actions{padding:16px 20px}}@media(max-width:768px){.employee-page{padding:16px}.employee-header{flex-direction:column}.employee-title{font-size:24px}.form-grid,.filter-row{grid-template-columns:1fr}.filter-item-small{max-width:100%}.emp-tabs{flex-wrap:nowrap;overflow-x:auto}.emp-tab{padding:12px 14px;font-size:13px}.emp-tab-icon{font-size:16px}.emp-tab-label{font-size:12px}.emp-tab-content{padding:20px 16px}.emp-form-actions{flex-direction:column;gap:12px}.emp-form-actions-left,.emp-form-actions-right{width:100%;justify-content:center}}@media(max-width:480px){.emp-tab-label{display:none}.emp-tab{padding:12px 16px;justify-content:center;flex:1}}.ctc-page{width:100%;max-width:100%;padding:32px;background:#f8fafc;min-height:100vh;font-family:Inter,system-ui,sans-serif;animation:fadeIn .4s ease-out}.ctc-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px;padding-bottom:0;border-bottom:none}.ctc-title-section{display:flex;flex-direction:column;gap:6px}.ctc-title{font-size:32px;font-weight:700;margin:0 0 8px;color:#005249;letter-spacing:-.5px;line-height:1.2}.ctc-subtitle{margin:0;font-size:15px;color:#64748b;line-height:1.5}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 18px;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;font-family:inherit;height:42px;white-space:nowrap}.btn-primary{background:#005249;color:#fff;box-shadow:0 4px 12px #00524926}.btn-primary:hover:not(:disabled){background:#003d3a;transform:translateY(-2px);box-shadow:0 6px 16px #00524940}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{background:#94a3b8;cursor:not-allowed}.btn-secondary{background:#fff;color:#475569;border:1px solid #e2e8f0}.btn-secondary:hover{background:#f8fafc;border-color:#cbd5e1;color:#005249}.ctc-form-container{background:#fff;border-radius:20px;box-shadow:0 10px 40px -10px #00000014;border:1px solid rgba(226,232,240,.8);overflow:hidden;position:relative}.ctc-form-container:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#005249,#00b4a1)}.ctc-form-content{padding:32px 40px}.ctc-section-title{display:flex;align-items:center;gap:12px;font-size:18px;font-weight:700;color:#0f172a;margin-bottom:24px;padding-bottom:12px;border-bottom:2px solid #f1f5f9}.ctc-section-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:#f0fdfa;color:#0f766e;border-radius:10px;font-size:18px}.ctc-form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:32px}.ctc-form-group{display:flex;flex-direction:column;gap:8px}.ctc-form-label{font-size:13px;font-weight:600;color:#475569}.ctc-required{color:#ef4444}.ctc-form-input,.ctc-form-select{padding:12px 16px;border:1px solid #cbd5e1;border-radius:10px;font-size:15px;color:#1e293b;background:#fff;transition:all .2s ease;outline:none;height:48px;font-family:inherit;box-shadow:0 1px 2px #00000003;width:100%;min-width:0;box-sizing:border-box}.ctc-form-input:hover,.ctc-form-select:hover{border-color:#94a3b8}.ctc-form-input:focus,.ctc-form-select:focus{border-color:#005249;box-shadow:0 0 0 4px #0052491a;background:#fff}.ctc-form-input:disabled,.ctc-form-select:disabled{background:#f1f5f9;color:#94a3b8;cursor:not-allowed;border-color:#e2e8f0}.ctc-form-input::placeholder{color:#94a3b8}.ctc-charge-grid{display:flex;flex-direction:column;gap:16px}.ctc-charge-row{display:grid;grid-template-columns:2fr 2fr 1fr 1.5fr 1.5fr auto;gap:20px;align-items:start;padding:24px;border-radius:16px;background:#f8fafc;border:1px solid #e2e8f0;transition:all .3s ease;animation:scaleIn .3s ease-out}.ctc-charge-row:hover{background:#fff;border-color:#cbd5e1;box-shadow:0 4px 20px #0000000a;transform:translateY(-2px)}.ctc-btn-remove{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border:none;border-radius:12px;background:#fee2e2;color:#ef4444;cursor:pointer;transition:all .2s;margin-top:27px;font-size:18px}.ctc-btn-remove:hover{background:#ef4444;color:#fff;transform:scale(1.05)}.ctc-add-line-btn{margin-left:auto;height:36px;font-size:13px;border-radius:8px}.ctc-form-actions{display:flex;align-items:center;justify-content:flex-end;gap:16px;padding:24px 40px;background:#f8fafc;border-top:1px solid #e2e8f0}.ctc-charge-summary{display:flex;flex-wrap:wrap;gap:8px}.ctc-charge-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:#fff;border:1px solid #e2e8f0;border-radius:20px;font-size:13px;color:#334155;box-shadow:0 1px 2px #00000005;transition:all .2s ease}.ctc-charge-badge:hover{border-color:#cbd5e1;transform:translateY(-1px);box-shadow:0 2px 4px #0000000a}.ctc-badge-title{font-weight:700;color:#0f172a}.ctc-badge-meta{color:#64748b;font-size:12px;background:#f1f5f9;padding:2px 6px;border-radius:10px}.ctc-table-actions{display:flex;align-items:center;justify-content:center;gap:8px}.ctc-btn-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;border:1px solid #e2e8f0;background:#fff;cursor:pointer;transition:all .2s ease}.ctc-btn-icon.edit{color:#0284c7}.ctc-btn-icon.edit:hover{background:#f0f9ff;border-color:#bae6fd;transform:translateY(-2px)}.ctc-btn-icon.delete{color:#dc2626}.ctc-btn-icon.delete:hover{background:#fef2f2;border-color:#fecaca;transform:translateY(-2px)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.97) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@media(max-width:1024px){.ctc-form-grid,.ctc-charge-row{grid-template-columns:repeat(2,1fr)}.ctc-btn-remove{grid-column:1 / -1;width:100%;margin-top:0}}@media(max-width:768px){.ctc-page{padding:20px}.ctc-header{flex-direction:column;align-items:flex-start;gap:16px}.ctc-form-grid,.ctc-charge-row{grid-template-columns:1fr}.ctc-form-content{padding:24px}.ctc-form-actions{padding:20px 24px;flex-direction:column}.ctc-form-actions button{width:100%}}.ctc-modal-overlay{position:fixed;inset:0;background:#0f172a66;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1050;padding:24px;animation:fadeIn .2s ease-out}.ctc-modal-content{background:#fff;border-radius:20px;box-shadow:0 20px 50px #00000026;max-width:500px;width:100%;overflow:hidden;animation:scaleIn .3s ease-out;border:1px solid #e2e8f0}.ctc-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e2e8f0;background:#f8fafc}.ctc-modal-title{font-size:18px;font-weight:700;color:#0f172a;margin:0}.ctc-modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:#fff;border:1px solid #e2e8f0;border-radius:8px;font-size:14px;color:#64748b;cursor:pointer;transition:all .2s ease}.ctc-modal-close:hover{background:#ef4444;border-color:#ef4444;color:#fff}.ctc-modal-body{padding:0;background:#f8fafc;max-height:60vh;overflow-y:auto}.ctc-modal-charge-list{display:flex;flex-direction:column;padding:24px;gap:16px}.ctc-modal-charge-item{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:16px;box-shadow:0 2px 4px #00000005}.ctc-modal-charge-header{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px dashed #e2e8f0}.ctc-modal-charge-index{background:#005249;color:#fff;font-size:11px;font-weight:700;text-transform:uppercase;padding:4px 8px;border-radius:6px;letter-spacing:.5px}.ctc-modal-charge-type{font-size:16px;font-weight:700;color:#0f172a}.ctc-modal-charge-details{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.ctc-modal-detail-item{display:flex;flex-direction:column;gap:4px}.ctc-modal-detail-label{font-size:12px;color:#64748b;font-weight:600;text-transform:uppercase}.ctc-modal-detail-value{font-size:14px;color:#1e293b;font-weight:600}.ctc-btn-icon.view{color:#059669}.ctc-btn-icon.view:hover{background:#ecfdf5;border-color:#a7f3d0;transform:translateY(-2px)}.attendance-page{width:100%;max-width:100%;padding:28px;background:transparent;min-height:100%}.attendance-header{margin-bottom:28px;padding-bottom:0;border-bottom:none}.attendance-title{font-size:32px;font-weight:700;margin:0 0 8px;color:#005249;letter-spacing:-.5px;line-height:1.2}.attendance-subtitle{margin:0;font-size:15px;color:#64748b;line-height:1.5}.attendance-card{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);padding:22px;margin-bottom:24px}.attendance-controls{display:flex;flex-wrap:wrap;align-items:flex-end;gap:18px}.attendance-control-group{display:flex;flex-direction:column;gap:10px;min-width:220px;flex:1 1 220px}.control-label{font-size:var(--font-size-sm);color:var(--text-secondary);font-weight:var(--font-semibold)}.date-mode-group{display:flex;gap:12px;flex-wrap:wrap}.radio-label{display:flex;align-items:center;gap:8px;padding:10px 14px;background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-md);font-size:var(--font-size-sm);cursor:pointer}.radio-label input{accent-color:var(--brand-primary)}.form-input,.form-select,.remark-input{width:100%;min-height:40px;padding:10px 12px;border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--white);color:var(--text-primary);font-size:var(--font-size-base)}.form-select{appearance:none}.attendance-set-for-all{display:flex;flex-direction:column;gap:10px;min-width:260px;flex:1 1 260px}.set-all-row{display:flex;gap:12px;align-items:center}.icon-button{width:46px;height:46px;border:none;background:var(--brand-primary);color:var(--white);border-radius:var(--radius-md);cursor:pointer;font-size:18px;transition:background var(--transition-fast)}.icon-button:hover{background:var(--brand-primary-light)}.attendance-actions{display:flex;align-items:flex-end;margin-top:18px;margin-left:auto}.btn-primary{min-height:46px;padding:0 20px;border:none;border-radius:var(--radius-md);background:var(--brand-secondary);color:var(--white);font-weight:var(--font-semibold);cursor:pointer;transition:transform var(--transition-fast),background var(--transition-fast)}.btn-primary:hover{background:var(--brand-secondary-dark);transform:translateY(-1px)}.attendance-message{color:var(--success);font-weight:var(--font-semibold);margin-bottom:16px}.attendance-table-card{margin-bottom:24px;overflow:visible;background:transparent;border:none;box-shadow:none;padding:0}.attendance-table-toolbar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;margin-bottom:18px}.attendance-table-toolbar h2{margin:0;font-size:var(--font-size-xl)}.attendance-table-toolbar p{color:var(--text-secondary);margin:0;font-size:var(--font-size-sm)}.attendance-summary-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:flex-end;margin-left:auto}.summary-chip{display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border-radius:var(--radius-lg);font-size:var(--font-size-sm);font-weight:var(--font-semibold);color:var(--white)}.summary-present{background:#10b981}.summary-absent{background:#ef4444}.summary-halfday{background:#f59e0b}.summary-leave{background:#3b82f6}.summary-holiday{background:#64748b}.summary-unmarked{background:#94a3b8}.attendance-table-wrapper{width:100%;overflow:visible}.attendance-table{width:100%;border-collapse:collapse}.attendance-table th,.attendance-table td{padding:14px 16px;border-bottom:1px solid var(--border-light);text-align:left;vertical-align:middle}.attendance-table thead th{background:#f4f7fb;color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.04em;border-bottom-width:2px}.attendance-table tbody tr:nth-child(2n){background:var(--gray-50)}.attendance-table tbody tr:hover{background:#eef6f7}.status-radio{position:relative;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;border:1px solid var(--border-light);box-sizing:border-box;cursor:pointer}.status-radio input{position:absolute;opacity:0;pointer-events:none}.status-radio-dot{display:inline-block;width:14px;height:14px;border-radius:999px;background:transparent;box-shadow:inset 0 0 0 1px var(--text-secondary);transition:background var(--transition-fast),box-shadow var(--transition-fast)}.status-radio.status-present{border-color:#10b981}.status-radio.status-absent{border-color:#ef4444}.status-radio.status-halfday{border-color:#f59e0b}.status-radio.status-leave{border-color:#3b82f6}.status-radio.status-holiday{border-color:#64748b}.status-radio.active{border-width:1px;box-shadow:0 0 0 2px #10b9812e}.status-radio.status-present.active{background:#10b981}.status-radio.status-present.active .status-radio-dot{background:var(--white)}.status-radio.status-absent.active{background:#ef4444}.status-radio.status-absent.active .status-radio-dot{background:var(--white)}.status-radio.status-halfday.active{background:#f59e0b}.status-radio.status-halfday.active .status-radio-dot{background:var(--white)}.status-radio.status-leave.active{background:#3b82f6}.status-radio.status-leave.active .status-radio-dot{background:var(--white)}.status-radio.status-holiday.active{background:#64748b}.status-radio.status-holiday.active .status-radio-dot{background:var(--white)}.remark-input{width:100%}@media(max-width:1280px){.attendance-controls{grid-template-columns:repeat(3,minmax(180px,1fr))}}@media(max-width:900px){.attendance-controls{grid-template-columns:1fr}.attendance-card,.attendance-header{padding:18px}.attendance-table{min-width:720px}}@media(max-width:640px){.attendance-page{padding:18px 16px}.attendance-header,.attendance-card{padding:16px}.attendance-table{min-width:640px}}.admission-page{width:100%;max-width:100%;padding:28px;background:transparent;min-height:100%}.admission-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:28px}.admission-title-section{display:flex;flex-direction:column;gap:6px}.admission-title{font-size:32px;font-weight:700;margin:0;color:var(--brand-primary);line-height:1.2}.admission-subtitle{margin:0;font-size:15px;color:var(--text-muted)}.admission-filter-card,.admission-form-card{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-2xl);box-shadow:var(--shadow-sm)}.admission-filter-card{padding:20px;margin-bottom:22px}.admission-filter-grid{display:grid;grid-template-columns:repeat(6,minmax(130px,1fr));gap:14px;align-items:end}.admission-form-card{overflow:hidden}.admission-section{padding:20px 22px;border-bottom:1px solid var(--border-light)}.admission-section h2{margin:0 0 14px;font-size:17px;font-weight:700;color:var(--brand-primary)}.admission-grid{display:grid;gap:14px;align-items:end}.admission-grid.five-col{grid-template-columns:repeat(5,minmax(120px,1fr))}.admission-grid.four-col{grid-template-columns:repeat(4,minmax(150px,1fr))}.admission-grid.three-col{grid-template-columns:1.2fr .6fr 1fr}.admission-grid.two-col{grid-template-columns:repeat(2,minmax(180px,1fr))}.admission-grid.one-col{grid-template-columns:1fr}.admission-grid.eight-col{grid-template-columns:.55fr 1fr 2fr 1fr .75fr .75fr 1fr .85fr}.admission-scholar-fields{display:flex;flex-direction:column;gap:14px}.admission-field{display:flex;flex-direction:column;gap:6px;min-width:0}.admission-field span,.admission-radio-field legend{font-size:13px;font-weight:600;color:var(--text-secondary)}.admission-field b{color:var(--error);margin-left:4px}.admission-field .form-input,.admission-field .form-select{width:100%;min-width:0}.admission-radio-field{min-width:0;border:1px solid var(--border-light);border-radius:var(--radius-md);padding:9px 12px 10px;min-height:42px}.admission-radio-options{display:flex;align-items:center;gap:18px;min-height:22px}.admission-radio-options label,.admission-radio-group label,.admission-check{display:inline-flex;align-items:center;gap:8px;color:var(--text-primary);font-size:14px;font-weight:500;white-space:nowrap}.admission-radio-options input,.admission-radio-group input,.admission-check input{accent-color:var(--brand-primary)}.admission-check.inline-check{min-height:42px}.admission-radio-group{display:flex;align-items:center;gap:16px;min-height:42px}.admission-form-actions{display:flex;justify-content:flex-end;gap:12px;padding:18px 22px;background:var(--bg-secondary)}.admission-name{color:var(--brand-primary)}.admission-page .datatable-wrapper{overflow-x:auto}.admission-page .datatable{min-width:1180px}.btn-icon-manage{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid var(--border-light);border-radius:var(--radius-lg);background:var(--white);cursor:pointer;font-size:15px;color:var(--text-muted);transition:all var(--transition-normal)}.btn-icon-manage:hover{background:#fff7ed;border-color:#fed7aa;color:var(--brand-secondary-dark);transform:translateY(-2px)}.admission-manage-card{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-2xl);box-shadow:var(--shadow-sm);overflow:hidden}.manage-summary{display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));gap:14px;padding:18px 22px;background:var(--bg-secondary);border-bottom:1px solid var(--border-light)}.manage-summary div{display:flex;flex-direction:column;gap:4px}.manage-summary span{font-size:12px;font-weight:700;color:var(--text-muted);text-transform:uppercase}.manage-summary strong{color:var(--text-primary);font-size:14px}.manage-tabs{display:flex;align-items:stretch;overflow-x:auto;background:linear-gradient(135deg,#005249,#006156);scrollbar-width:none}.manage-tabs::-webkit-scrollbar{display:none}.manage-tab{display:flex;align-items:center;gap:8px;flex:0 0 auto;padding:16px 24px;border:none;background:transparent;border-bottom:3px solid transparent;color:#ffffffad;font-size:14px;font-weight:600;cursor:pointer;white-space:nowrap;font-family:inherit;position:relative;transition:all .25s ease}.manage-tab:hover{color:#ffffffeb;background:#ffffff0f}.manage-tab.active{color:var(--white);background:#ffffff1a;border-bottom-color:var(--brand-secondary)}.manage-tab-icon{font-size:11px;letter-spacing:.6px;transition:transform .2s ease}.manage-tab.active .manage-tab-icon{transform:scale(1.15)}.manage-tab-label{font-size:14px}.manage-panel{min-height:230px;padding:22px}.manage-stack{display:flex;flex-direction:column;gap:18px}.manage-subsection{display:flex;flex-direction:column;gap:12px}.manage-subsection h3,.plain-subtitle{margin:0;color:var(--brand-primary);font-size:16px;font-weight:700}.manage-doc-layout{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:18px;align-items:start}.document-controls{grid-template-columns:220px minmax(280px,1fr);margin-bottom:12px}.document-path-field{min-width:0}.browse-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.browse-button{position:relative;overflow:hidden;margin:0}.browse-button input{position:absolute;inset:0;opacity:0;cursor:pointer}.document-preview{display:flex;flex-direction:column;gap:10px}.document-preview-box{display:flex;align-items:center;justify-content:center;height:124px;border:1px solid var(--border-medium);border-radius:var(--radius-md);background:#f8fafc;color:var(--text-muted);font-size:13px;overflow:hidden}.document-preview-box img{width:100%;height:100%;object-fit:contain;display:block}.mini-table-wrap{width:100%;overflow-x:auto;border:1px solid var(--border-light);border-radius:var(--radius-md)}.mini-table{width:100%;min-width:640px;border-collapse:collapse;font-size:13px}.compact-table{max-width:620px}.compact-table .mini-table{min-width:420px}.mini-table th,.mini-table td{padding:10px 12px;border-bottom:1px solid var(--border-light);border-right:1px solid var(--border-light);text-align:left;color:var(--text-secondary)}.mini-table th{background:#f8fafc;color:var(--brand-primary);font-weight:700}.mini-table tr:last-child td{border-bottom:none}.mini-select{width:100%;min-height:30px;border:1px solid var(--border-light);border-radius:var(--radius-sm);background:var(--white)}.link-button{border:none;background:transparent;color:#2563eb;font-weight:700;cursor:pointer;text-decoration:underline}.admission-modal-overlay{position:fixed;inset:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:24px;background:#0f172a73;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.admission-modal{width:min(760px,96vw);max-height:88vh;overflow:hidden;background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-3xl);box-shadow:var(--shadow-xl)}.admission-modal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;background:var(--bg-secondary);border-bottom:1px solid var(--border-light)}.admission-modal-header h2{margin:0;color:var(--brand-primary);font-size:18px;font-weight:700}.admission-modal-body{padding:22px;max-height:calc(88vh - 72px);overflow:auto}.document-zoom-frame{display:flex;align-items:center;justify-content:center;min-height:420px;background:#f8fafc;border:1px solid var(--border-light);border-radius:var(--radius-lg)}.document-zoom-frame img{max-width:100%;max-height:70vh;object-fit:contain}.schedule-modal-list{display:grid;grid-template-columns:repeat(2,minmax(180px,1fr));gap:8px}.schedule-modal-row{display:flex;align-items:center;gap:10px;min-height:38px;padding:8px 10px;border:1px solid var(--border-light);border-radius:var(--radius-md);color:var(--text-secondary);font-size:14px;font-weight:600}.schedule-modal-row input{accent-color:var(--brand-primary)}.schedule-modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.manage-siblings{display:grid;grid-template-columns:360px minmax(0,1fr);gap:18px;align-items:start}.sibling-search{grid-template-columns:1fr}.secondary-admission-layout{display:grid;grid-template-columns:minmax(360px,520px) minmax(180px,260px);gap:40px;align-items:center}.signature-grid{display:grid;grid-template-columns:repeat(3,minmax(160px,1fr));gap:14px;max-width:620px}.signature-box{border:1px solid var(--border-light);border-radius:var(--radius-md);overflow:hidden}.signature-box h3{margin:0;padding:10px 12px;font-size:13px;color:var(--text-secondary);background:#f8fafc}.signature-canvas{display:flex;align-items:center;justify-content:center;height:108px;background:var(--white);border-top:1px solid var(--border-light);border-bottom:1px solid var(--border-light);color:var(--text-muted);font-size:13px;overflow:hidden}.signature-canvas img{width:100%;height:100%;object-fit:contain;display:block}.signature-actions{display:flex;gap:8px;padding:8px}.signature-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:1;min-height:30px;border:1px solid var(--border-light);border-radius:var(--radius-sm);background:#f8fafc;cursor:pointer;color:var(--text-secondary);font-size:13px;font-weight:700;overflow:hidden}.signature-btn input{position:absolute;inset:0;opacity:0;cursor:pointer}.signature-btn.danger{color:var(--error)}.manage-form-actions{display:flex;align-items:center;justify-content:space-between;padding:20px 32px;background:var(--bg-secondary);border-top:1px solid var(--border-light)}.manage-form-actions-left,.manage-form-actions-right{display:flex;align-items:center;gap:12px}@media(max-width:1280px){.admission-filter-grid,.admission-grid.five-col{grid-template-columns:repeat(3,minmax(150px,1fr))}.admission-grid.four-col{grid-template-columns:repeat(2,minmax(180px,1fr))}.admission-grid.eight-col{grid-template-columns:repeat(4,minmax(120px,1fr))}}@media(max-width:900px){.admission-page{padding:20px}.admission-header{align-items:flex-start;flex-direction:column}.admission-filter-grid,.admission-grid.five-col,.admission-grid.four-col,.admission-grid.three-col,.admission-grid.two-col,.admission-grid.eight-col,.manage-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.manage-doc-layout,.manage-siblings,.secondary-admission-layout,.document-controls,.signature-grid{grid-template-columns:1fr}}@media(max-width:640px){.admission-page{padding:16px}.admission-title{font-size:24px}.admission-filter-grid,.admission-grid.five-col,.admission-grid.four-col,.admission-grid.three-col,.admission-grid.two-col,.admission-grid.eight-col,.manage-summary{grid-template-columns:1fr}.admission-section{padding:16px}.admission-form-actions{flex-direction:column}.admission-form-actions .btn{width:100%}.manage-panel{padding:16px}.manage-tab{padding:14px 18px}.manage-form-actions{padding:16px;flex-direction:column;gap:12px}.manage-form-actions-left,.manage-form-actions-right{width:100%;justify-content:center}.schedule-modal-list,.browse-row{grid-template-columns:1fr}}.roll-no-assignment-page{width:100%;max-width:100%;padding:28px;background:transparent;min-height:100%}.roll-no-assignment-header{margin-bottom:28px}.roll-no-assignment-title-section{display:flex;flex-direction:column;gap:6px}.roll-no-assignment-title{font-size:32px;font-weight:700;margin:0;color:#005249;letter-spacing:-.5px;line-height:1.2}.roll-no-assignment-subtitle{margin:0;font-size:15px;color:#64748b;line-height:1.5}.roll-no-assignment-filter-card{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-2xl);box-shadow:var(--shadow-sm);padding:20px 22px;margin-bottom:22px}.roll-no-assignment-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:16px;align-items:end}.roll-no-assignment-field{display:flex;flex-direction:column;gap:8px;min-width:0}.roll-no-assignment-field-label{font-size:13px;font-weight:600;color:var(--text-secondary)}.roll-no-assignment-field b{color:var(--error);margin-left:4px}.roll-no-assignment-autofill{display:flex;align-items:center;min-height:42px;padding-bottom:2px}.roll-no-assignment-check{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--text-secondary);cursor:pointer;margin:0;white-space:nowrap}.roll-no-assignment-check input{width:16px;height:16px;accent-color:var(--brand-primary)}.roll-no-assignment-filter-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:flex-end;margin-top:18px;padding-top:18px;border-top:1px solid var(--border-light)}.roll-no-assignment-filter-actions .btn{min-height:42px;min-width:140px}.roll-no-assignment-success-toast{position:fixed;top:24px;right:24px;z-index:1100}.roll-no-assignment-list-meta{margin-bottom:16px}.roll-no-assignment-list-meta p{margin:0;font-size:14px;color:#64748b;line-height:1.5}.roll-no-assignment-page .state-toolbar{margin-bottom:18px}.roll-no-assignment-page .roll-no-input{width:100%;min-width:88px;max-width:110px;min-height:38px;padding:8px 12px;font-size:14px}.roll-no-assignment-page .roll-no-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 3px #0052491f}@media(max-width:1280px){.roll-no-assignment-filter-grid{grid-template-columns:repeat(2,minmax(180px,1fr))}}@media(max-width:768px){.roll-no-assignment-page{padding:18px 16px}.roll-no-assignment-filter-grid{grid-template-columns:1fr}.roll-no-assignment-filter-actions{justify-content:stretch}.roll-no-assignment-filter-actions .btn{flex:1 1 100%}}.student-promote-page{width:100%;max-width:100%;padding:28px;background:transparent;min-height:100%}.student-promote-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:28px}.student-promote-title-section{display:flex;flex-direction:column;gap:6px}.student-promote-title{font-size:32px;font-weight:700;margin:0;color:#005249;letter-spacing:-.5px;line-height:1.2}.student-promote-subtitle{margin:0;font-size:15px;color:#64748b;line-height:1.5}.student-promote-success-toast{position:fixed;top:24px;right:24px;z-index:1100}.student-promote-form-card{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-2xl);box-shadow:var(--shadow-sm);overflow:hidden}.student-promote-form{display:flex;flex-direction:column}.student-promote-section{padding:22px 24px;border-bottom:1px solid var(--border-light)}.student-promote-section h2{margin:0 0 14px;font-size:17px;font-weight:700;color:var(--brand-primary)}.student-promote-section-note{margin:-6px 0 16px;font-size:13px;color:var(--text-secondary);line-height:1.5}.student-promote-grid{display:grid;gap:16px;align-items:end}.student-promote-grid.three-col{grid-template-columns:repeat(3,minmax(180px,1fr))}.student-promote-field{display:flex;flex-direction:column;gap:8px;min-width:0}.student-promote-field span{font-size:13px;font-weight:600;color:var(--text-secondary)}.student-promote-field b{color:var(--error);margin-left:4px}.student-promote-field .form-input{width:100%;min-height:42px}.student-promote-validation{margin:14px 0 0;font-size:13px;color:var(--error)}.student-promote-fee-list{display:flex;flex-direction:column;gap:12px;margin-top:16px}.student-promote-fee-label{font-size:13px;font-weight:600;color:var(--text-secondary)}.student-promote-fee-grid{display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));gap:12px}.student-promote-fee-item{display:inline-flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--gray-50);font-size:13px;color:var(--text-primary);cursor:pointer}.student-promote-fee-item input{accent-color:var(--brand-primary)}.student-promote-form-actions{display:flex;justify-content:flex-end;gap:10px;padding:20px 24px;background:var(--gray-50)}.student-promote-form-actions .btn{min-height:42px;min-width:150px}@media(max-width:1100px){.student-promote-grid.three-col{grid-template-columns:repeat(2,minmax(160px,1fr))}.student-promote-fee-grid{grid-template-columns:repeat(2,minmax(140px,1fr))}}@media(max-width:768px){.student-promote-page{padding:18px 16px}.student-promote-header{flex-direction:column}.student-promote-grid.three-col,.student-promote-fee-grid{grid-template-columns:1fr}.student-promote-form-actions{flex-direction:column}.student-promote-form-actions .btn{width:100%}}.house-assign-page{width:100%;max-width:100%;padding:28px;background:transparent;min-height:100%}.house-assign-header{margin-bottom:28px}.house-assign-title-section{display:flex;flex-direction:column;gap:6px}.house-assign-title{font-size:32px;font-weight:700;margin:0;color:#005249;letter-spacing:-.5px;line-height:1.2}.house-assign-subtitle{margin:0;font-size:15px;color:#64748b;line-height:1.5}.house-assign-filter-card{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-2xl);box-shadow:var(--shadow-sm);padding:20px 22px;margin-bottom:22px}.house-assign-filter-grid{display:grid;grid-template-columns:repeat(3,minmax(200px,1fr));gap:16px;align-items:end}.house-assign-field{display:flex;flex-direction:column;gap:8px;min-width:0}.house-assign-field-label{font-size:13px;font-weight:600;color:var(--text-secondary)}.house-assign-field b{color:var(--error);margin-left:4px}.house-assign-filter-actions{display:flex;justify-content:flex-end;margin-top:18px;padding-top:18px;border-top:1px solid var(--border-light)}.house-assign-filter-actions .btn{min-height:42px;min-width:190px}.house-assign-success-toast{position:fixed;top:24px;right:24px;z-index:1100}.house-assign-list-meta{margin-bottom:16px}.house-assign-list-meta p{margin:0;font-size:14px;color:#64748b}.house-assign-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;flex-wrap:wrap}.house-assign-toolbar .search-box{flex:1 1 280px;max-width:420px}.house-assign-checkbox{display:inline-flex;align-items:center;justify-content:center;margin:0;cursor:pointer}.house-assign-checkbox input{width:16px;height:16px;accent-color:var(--brand-primary);cursor:pointer}.house-assign-empty-panel{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:48px 24px;background:var(--white);border:1px dashed var(--border-light);border-radius:var(--radius-2xl);color:var(--text-secondary)}.house-assign-empty-panel .empty-icon{font-size:36px}.house-assign-empty-panel p{margin:0;font-size:15px}@media(max-width:900px){.house-assign-filter-grid{grid-template-columns:1fr}.house-assign-filter-actions{justify-content:stretch}.house-assign-filter-actions .btn{width:100%}}@media(max-width:768px){.house-assign-page{padding:18px 16px}.house-assign-toolbar{flex-direction:column;align-items:stretch}.house-assign-toolbar .search-box{max-width:none}}.scholar-left-page{width:100%;max-width:100%;padding:28px;background:transparent;min-height:100%}.scholar-left-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:28px}.scholar-left-title-section{display:flex;flex-direction:column;gap:6px}.scholar-left-title{font-size:32px;font-weight:700;margin:0;color:#005249;letter-spacing:-.5px;line-height:1.2}.scholar-left-subtitle{margin:0;font-size:15px;color:#64748b;line-height:1.5}.scholar-left-success-toast{position:fixed;top:24px;right:24px;z-index:1100}.scholar-left-form-card{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-2xl);box-shadow:var(--shadow-sm);overflow:hidden}.scholar-left-form{display:flex;flex-direction:column}.scholar-left-section{padding:22px 24px;border-bottom:1px solid var(--border-light)}.scholar-left-section h2{margin:0 0 14px;font-size:17px;font-weight:700;color:var(--brand-primary)}.scholar-left-section-note{margin:-6px 0 16px;font-size:13px;color:var(--text-secondary);line-height:1.5}.scholar-left-grid{display:grid;gap:16px;align-items:end}.scholar-left-grid.three-col{grid-template-columns:repeat(3,minmax(180px,1fr))}.scholar-left-grid.two-col{grid-template-columns:repeat(2,minmax(220px,1fr))}.scholar-left-field{display:flex;flex-direction:column;gap:8px;min-width:0}.scholar-left-field span{font-size:13px;font-weight:600;color:var(--text-secondary)}.scholar-left-field b{color:var(--error);margin-left:4px}.scholar-left-field .form-input{width:100%;min-height:42px}.scholar-left-readonly{background:var(--gray-50);color:var(--text-secondary);cursor:not-allowed}.scholar-left-validation{margin:14px 0 0;font-size:13px;color:var(--error)}.scholar-left-form-actions{display:flex;justify-content:flex-end;gap:10px;padding:20px 24px;background:var(--gray-50)}.scholar-left-form-actions .btn{min-height:42px;min-width:140px}@media(max-width:1100px){.scholar-left-grid.three-col,.scholar-left-grid.two-col{grid-template-columns:repeat(2,minmax(160px,1fr))}}@media(max-width:768px){.scholar-left-page{padding:18px 16px}.scholar-left-header{flex-direction:column}.scholar-left-grid.three-col,.scholar-left-grid.two-col{grid-template-columns:1fr}.scholar-left-form-actions{flex-direction:column}.scholar-left-form-actions .btn{width:100%}}.gate-pass-page{width:100%;max-width:100%;padding:28px;background:transparent;min-height:100%}.gate-pass-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:28px}.gate-pass-title-section{display:flex;flex-direction:column;gap:6px}.gate-pass-title{font-size:32px;font-weight:700;margin:0;color:#005249;letter-spacing:-.5px;line-height:1.2}.gate-pass-subtitle{margin:0;font-size:15px;color:#64748b;line-height:1.5}.gate-pass-success-toast{position:fixed;top:24px;right:24px;z-index:1100}.gate-pass-filter-card{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-2xl);box-shadow:var(--shadow-sm);padding:20px 22px;margin-bottom:22px}.gate-pass-type-tabs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}.gate-pass-type-tab{min-height:42px;padding:0 18px;border:1px solid var(--border-light);border-radius:var(--radius-lg);background:var(--gray-50);color:var(--text-secondary);font-size:14px;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.gate-pass-type-tab.active{background:var(--brand-primary);border-color:var(--brand-primary);color:var(--white)}.gate-pass-date-filters{display:grid;grid-template-columns:repeat(2,minmax(180px,280px));gap:16px;align-items:end}.gate-pass-field{display:flex;flex-direction:column;gap:8px;min-width:0}.gate-pass-field span{font-size:13px;font-weight:600;color:var(--text-secondary)}.gate-pass-field b{color:var(--error);margin-left:4px}.gate-pass-field .form-input{width:100%;min-height:42px}.gate-pass-form-card{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-2xl);box-shadow:var(--shadow-sm);overflow:hidden}.gate-pass-form{display:flex;flex-direction:column}.gate-pass-section{padding:22px 24px;border-bottom:1px solid var(--border-light)}.gate-pass-section h2{margin:0 0 14px;font-size:17px;font-weight:700;color:var(--brand-primary)}.gate-pass-type-options{display:flex;flex-wrap:wrap;gap:14px}.gate-pass-type-option{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--gray-50);font-size:14px;font-weight:600;color:var(--text-secondary);cursor:pointer}.gate-pass-type-option input{accent-color:var(--brand-primary)}.gate-pass-grid{display:grid;gap:16px;align-items:end}.gate-pass-grid.four-col{grid-template-columns:repeat(4,minmax(160px,1fr))}.gate-pass-grid.three-col{grid-template-columns:repeat(3,minmax(180px,1fr))}.gate-pass-grid.two-col{grid-template-columns:repeat(2,minmax(220px,1fr))}.gate-pass-grid+.gate-pass-grid{margin-top:16px}.gate-pass-readonly{background:var(--gray-50);color:var(--text-secondary);cursor:not-allowed}.gate-pass-form-actions{display:flex;justify-content:flex-end;gap:10px;padding:20px 24px;background:var(--gray-50)}.gate-pass-form-actions .btn{min-height:42px;min-width:150px}@media(max-width:1200px){.gate-pass-grid.four-col{grid-template-columns:repeat(2,minmax(160px,1fr))}}@media(max-width:768px){.gate-pass-page{padding:18px 16px}.gate-pass-header{flex-direction:column}.gate-pass-date-filters,.gate-pass-grid.four-col,.gate-pass-grid.three-col,.gate-pass-grid.two-col{grid-template-columns:1fr}.gate-pass-type-tabs{flex-direction:column}.gate-pass-type-tab{width:100%}.gate-pass-form-actions{flex-direction:column}.gate-pass-form-actions .btn{width:100%}}.tc-issue-page{width:100%;max-width:100%;padding:28px;background:transparent;min-height:100%}.tc-issue-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:28px}.tc-issue-title-section{display:flex;flex-direction:column;gap:6px}.tc-issue-title{font-size:32px;font-weight:700;margin:0;color:#005249;letter-spacing:-.5px;line-height:1.2}.tc-issue-subtitle{margin:0;font-size:15px;color:#64748b;line-height:1.5}.tc-issue-success-toast{position:fixed;top:24px;right:24px;z-index:1100}.tc-issue-filter-card{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-2xl);box-shadow:var(--shadow-sm);padding:20px 22px;margin-bottom:22px}.tc-issue-date-filters{display:grid;grid-template-columns:repeat(2,minmax(180px,280px));gap:16px;align-items:end}.tc-issue-form-card{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-2xl);box-shadow:var(--shadow-sm);overflow:hidden}.tc-issue-form{display:flex;flex-direction:column}.tc-issue-section{padding:22px 24px;border-bottom:1px solid var(--border-light)}.tc-issue-section h2{margin:0 0 14px;font-size:17px;font-weight:700;color:var(--brand-primary)}.tc-issue-section-note{margin:-6px 0 16px;font-size:13px;color:var(--text-secondary)}.tc-issue-grid{display:grid;gap:16px;align-items:end}.tc-issue-grid+.tc-issue-grid{margin-top:16px}.tc-issue-grid.four-col{grid-template-columns:repeat(4,minmax(160px,1fr))}.tc-issue-grid.three-col{grid-template-columns:repeat(3,minmax(180px,1fr))}.tc-issue-field{display:flex;flex-direction:column;gap:8px;min-width:0}.tc-issue-field span{font-size:13px;font-weight:600;color:var(--text-secondary)}.tc-issue-field b{color:var(--error);margin-left:4px}.tc-issue-field .form-input{width:100%;min-height:42px}.tc-issue-check-group{display:flex;flex-direction:column;gap:10px;min-height:42px;justify-content:center;padding-bottom:2px}.tc-issue-check{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--text-secondary);cursor:pointer}.tc-issue-check input{accent-color:var(--brand-primary)}.tc-particulars-table-wrapper{width:100%;overflow-x:auto}.tc-particulars-table{width:100%;border-collapse:collapse;min-width:720px}.tc-particulars-table th,.tc-particulars-table td{padding:12px 14px;border-bottom:1px solid var(--border-light);text-align:left;vertical-align:middle}.tc-particulars-table thead th{background:#f4f7fb;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.tc-particulars-table tbody tr:nth-child(2n){background:var(--gray-50)}.tc-particulars-table .form-input{min-height:38px;font-size:14px}.tc-particulars-blank{color:var(--text-muted)}.tc-particulars-title-row td{font-weight:600}.tc-particulars-subrow td{background:#fafbfc}.tc-particulars-value-box{display:flex;flex-direction:column;gap:6px}.tc-value-type-label{font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em}.tc-preview-modal{max-width:1120px;width:min(96vw,1120px)}.tc-preview-modal .modal-body{padding:20px 24px 24px}.tc-preview-subrow td{background:#fafbfc}.tc-preview-value-type{display:inline-block;font-size:12px;font-weight:600;color:#475569;text-transform:uppercase;letter-spacing:.03em}.tc-issue-form-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px;padding:20px 24px;background:var(--gray-50)}.tc-issue-form-actions .btn{min-height:42px;min-width:130px}.tc-preview-document{background:#fff;border:2px solid #1e293b;padding:28px 32px;color:#0f172a;font-family:Times New Roman,Georgia,serif}.tc-preview-header{text-align:center;border-bottom:2px double #1e293b;padding-bottom:16px;margin-bottom:18px}.tc-preview-school-name{font-size:28px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.tc-preview-school-address,.tc-preview-school-contact{font-size:14px;margin-top:6px}.tc-preview-title-block{text-align:center;margin-bottom:18px}.tc-preview-title-block h2{margin:0 0 10px;font-size:22px;text-decoration:underline;text-transform:uppercase}.tc-preview-meta{display:flex;flex-wrap:wrap;justify-content:center;gap:18px;font-size:14px}.tc-preview-intro{font-size:15px;line-height:1.6;margin:0 0 18px}.tc-preview-table{width:100%;border-collapse:collapse;margin-bottom:18px}.tc-preview-table th,.tc-preview-table td{border:1px solid #334155;padding:10px 12px;font-size:14px;vertical-align:top}.tc-preview-table thead th{background:#f8fafc;font-weight:700}.tc-preview-payment{border:1px solid #cbd5e1;padding:14px 16px;margin-bottom:24px;font-size:14px;line-height:1.7}.tc-preview-payment p{margin:0 0 6px}.tc-preview-footer{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:36px}.tc-preview-sign{display:flex;flex-direction:column;gap:36px;text-align:center;font-size:14px}.tc-preview-sign span{border-top:1px solid #334155;padding-top:8px}.tc-preview-note{margin:24px 0 0;font-size:12px;color:#64748b;text-align:center;font-style:italic}@media(max-width:1200px){.tc-issue-grid.four-col,.tc-issue-grid.three-col{grid-template-columns:repeat(2,minmax(160px,1fr))}}@media(max-width:768px){.tc-issue-page{padding:18px 16px}.tc-issue-header{flex-direction:column}.tc-issue-date-filters,.tc-issue-grid.four-col,.tc-issue-grid.three-col{grid-template-columns:1fr}.tc-issue-form-actions{flex-direction:column}.tc-issue-form-actions .btn{width:100%}.tc-preview-footer{grid-template-columns:1fr}}@media print{body *{visibility:hidden}.tc-preview-document,.tc-preview-document *{visibility:visible}.tc-preview-document{position:absolute;left:0;top:0;width:100%;border:none;padding:20px}}
