@import"https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap";.login-container .theme-toggle-btn{position:fixed;top:var(--spacing-lg);right:var(--spacing-lg);z-index:1000;display:flex;align-items:center;justify-content:center;width:48px;height:48px;border:none;border-radius:var(--radius-full);background-color:var(--md-sys-color-surface-container);color:var(--md-sys-color-on-surface-variant);cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-sm);border:1px solid var(--md-sys-color-outline-variant)}.login-container .theme-toggle-btn:hover{background-color:var(--md-sys-color-surface-variant);color:var(--md-sys-color-on-surface);box-shadow:var(--shadow-md)}.login-container .theme-toggle-btn:active{transform:scale(.95)}.login-container .theme-toggle-btn .material-symbols-outlined{font-size:24px}.login-container{height:100vh;display:flex;align-items:stretch;justify-content:stretch;background-image:url(./login-bg.Swwugc1C.svg);background-position:center;background-repeat:no-repeat;position:relative;padding:0;transition:background-image .3s ease}[data-theme=dark] .login-container{background-image:url(./login-bg-dark.BZCnGtd5.svg)}[data-theme=dark] .left-side{background:#0006;-webkit-backdrop-filter:blur(10px) brightness(1);backdrop-filter:blur(10px) brightness(1)}[data-theme=dark] .custom-text-button{color:#fffc}[data-theme=dark] .custom-text-button:hover{background-color:#ffffff14;color:#ffffffe6}[data-theme=dark] .custom-text-button:focus-visible{background-color:#ffffff1f}[data-theme=dark] .custom-text-button:active{background-color:#ffffff1f}[data-theme=dark] .custom-filled-button{background-color:#ffffffe6;color:#1a1a1a}[data-theme=dark] .custom-filled-button:hover{background-color:#fff;box-shadow:0 1px 2px #ffffff4d,0 1px 3px 1px #ffffff26}[data-theme=dark] .custom-filled-button:active{background-color:#fffc;box-shadow:0 1px 2px #ffffff4d,0 1px 3px 1px #ffffff26;transform:scale(.98)}.left-side{flex:0 0 35%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#ffffff26;backdrop-filter:blur(20px) brightness(.6);-webkit-backdrop-filter:blur(20px);padding:var(--spacing-2xl);box-shadow:0 8px 32px #0000005e;position:relative;z-index:1;transition:backdrop-filter var(--transition-normal)}.login-bg{background-repeat:no-repeat;background-size:cover;background-position:right center}.login-header{width:100%;margin-bottom:var(--spacing-xl)}.school-logo{margin-bottom:var(--spacing-md)}.school-logo img{width:100px;height:100px;background:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary);border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;margin:0 auto}.login-title{font-family:poppins;font-size:60px;font-weight:700;color:#fff;margin-bottom:var(--spacing-lg);line-height:1.2}.login-subtitle{font-family:poppins;font-weight:500;font-size:var(--md-sys-typescale-body-large-size);color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.3);margin:0}.user-type-selector{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-sm);margin-bottom:var(--spacing-xl)}.login-form{display:flex;flex-direction:column;gap:var(--spacing-lg);width:100%}.form-field{width:100%}.form-options{display:flex;justify-content:space-between;align-items:center;margin:var(--spacing-sm) 0}.custom-checkbox:checked+.checkbox-checkmark{background-color:var(--md-sys-color-primary);border-color:var(--md-sys-color-primary)}.checkbox-checkmark:after{content:"";position:absolute;display:none;left:5px;top:0;width:4px;height:8px;border:solid var(--md-sys-color-on-primary);border-width:0 2px 2px 0;transform:rotate(45deg)}.custom-checkbox:checked+.checkbox-checkmark:after{display:block}.custom-text-field{position:relative;display:flex;align-items:center;width:100%;min-height:60px;background-color:#707070;border-radius:4px 4px 0 0;border-bottom:1px solid rgba(255,255,255,.3);border:1px solid rgba(255,255,255,.2);transition:all .2s ease;padding:0 16px;box-sizing:border-box}[data-theme=dark] .custom-text-field{background-color:#090909}.custom-text-field:focus-within{border-bottom:2px solid var(--md-sys-color-primary);transition:none}.custom-text-field.error{border-bottom:2px solid var(--md-sys-color-error)}.custom-text-field.error:focus-within{border-bottom:2px solid var(--md-sys-color-error)}.leading-icon{color:#fffc;font-size:24px;margin-right:12px;flex-shrink:0}.custom-text-field:focus-within .leading-icon{color:#fff}.custom-text-field.error .leading-icon{color:var(--md-sys-color-error)}.text-input{flex:1;border:none;outline:none;background:transparent;font-size:16px;line-height:24px;color:#fff;padding:16px 0 0;font-family:var(--md-sys-typescale-body-large-font);transition:background-color var(--transition-normal),box-shadow .2s,color var(--transition-slow)}[data-theme=dark] input:-webkit-autofill,[data-theme=dark] input:-webkit-autofill:hover,[data-theme=dark] input:-webkit-autofill:focus,[data-theme=dark] input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 1000px #090909 inset!important;-webkit-text-fill-color:#f1f5f9!important;caret-color:#f1f5f9}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 1000px #707070 inset!important;-webkit-text-fill-color:#f1f5f9!important;caret-color:#f1f5f9}.text-input::placeholder{color:#fff9}.text-label{position:absolute;left:52px;top:50%;transform:translateY(-50%);font-size:16px;color:#ffffffb3;pointer-events:none;transition:all .1s ease;font-family:var(--md-sys-typescale-body-large-font)}.text-input:focus+.text-label,.text-input:not(:placeholder-shown)+.text-label{top:12px;font-size:12px;color:#ffffffe6;transform:translateY(-6px)}.custom-text-field.error .text-input:focus+.text-label,.custom-text-field.error .text-input:not(:placeholder-shown)+.text-label{color:var(--md-sys-color-error)}.trailing-icon-button{background:none;border:none;padding:8px;margin-left:8px;border-radius:50%;cursor:pointer;color:#fffc;transition:all .2s ease;display:flex;align-items:center;justify-content:center;flex-shrink:0}.trailing-icon-button .material-symbols-outlined{font-size:24px}.error-text{font-size:12px;color:var(--md-sys-color-error);font-family:var(--md-sys-typescale-body-small-font);margin-top:4px;margin-left:16px;padding-left:36px;line-height:16px}.forgot-password{width:50%;transform:translate(50%)}.custom-filled-button{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:10px 24px;border:none;border-radius:20px;background-color:#1a1a1ae6;color:#fff;font-family:var(--md-sys-typescale-label-large-font);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);line-height:var(--md-sys-typescale-label-large-line-height);letter-spacing:var(--md-sys-typescale-label-large-tracking);text-decoration:none;cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .2s cubic-bezier(.2,0,0,1);overflow:hidden;outline:none}.custom-filled-button:hover{background-color:#1a1a1a;box-shadow:0 1px 2px #0000004d,0 1px 3px 1px #00000026}.custom-filled-button:active{background-color:#1a1a1acc;box-shadow:0 1px 2px #0000004d,0 1px 3px 1px #00000026;transform:scale(.98)}.custom-filled-button:disabled{background-color:color-mix(in srgb,var(--md-sys-color-on-surface) 12%,transparent);color:color-mix(in srgb,var(--md-sys-color-on-surface) 38%,transparent);cursor:not-allowed;box-shadow:none;transform:none}.custom-filled-button:disabled:hover{background-color:color-mix(in srgb,var(--md-sys-color-on-surface) 12%,transparent);box-shadow:none}.loading-spinner{width:20px;height:20px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite}.custom-text-button{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:10px 12px;border:none;border-radius:20px;background-color:transparent;color:#1a1a1acc;font-family:var(--md-sys-typescale-label-large-font);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);line-height:var(--md-sys-typescale-label-large-line-height);letter-spacing:var(--md-sys-typescale-label-large-tracking);text-decoration:none;cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .2s cubic-bezier(.2,0,0,1);overflow:hidden;outline:none}.custom-text-button:hover{background-color:#1a1a1a14;color:#1a1a1ae6}.custom-text-button:focus-visible{background-color:#1a1a1a1f;outline-offset:2px}.custom-text-button:active{background-color:#1a1a1a1f;transform:scale(.98)}.custom-text-button:disabled{color:color-mix(in srgb,var(--md-sys-color-on-surface) 38%,transparent);cursor:not-allowed;transform:none}.custom-text-button:disabled:hover{background-color:transparent}.login-submit{width:100%;height:48px;margin-top:var(--spacing-md)}.right-side{display:flex;align-items:start;padding-top:7rem;flex:1;padding:4rem 12rem}.welcome-text{z-index:2}.welcome-title{display:flex;color:#fff;font-family:Poppins,sans-serif;font-size:6rem;font-weight:700;margin:0;text-shadow:0 2px 8px rgba(0,0,0,.3)}.welcome-subtitle{font-family:Poppins,sans-serif;font-size:18px;font-weight:400;color:#fff;margin-top:-12px;text-shadow:0 1px 4px rgba(0,0,0,.3)}@media (min-width: 768px){.login-container{background-size:cover}}@media (max-width: 768px){.login-container{flex-direction:column;height:100vh}.checkbox-checkmark:after{top:4px;left:8px}.left-side{padding-top:6rem;padding-bottom:9rem;max-width:none;justify-content:center;height:100%}.left-side h1{font-size:50px}.login-submit{height:58px;font-size:20px}.custom-text-button{font-size:15px}.right-side{flex:0 0 120px;padding:var(--spacing-sm)}.user-type-selector{grid-template-columns:1fr;gap:var(--spacing-sm)}.form-options{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.custom-text-field{min-height:70px;padding:0 20px}.text-label{left:56px;font-size:18px}.text-input:focus+.text-label,.text-input:not(:placeholder-shown)+.text-label{font-size:14px;top:14px}.trailing-icon-button .material-symbols-outlined{font-size:28px}}.student-navbar{position:fixed;left:0;right:0;top:0;z-index:var(--z-modal);background-color:var(--md-sys-color-surface);border-bottom:1px solid var(--md-sys-color-outline-variant);box-shadow:var(--shadow-sm);height:64px;overflow:visible}@media (min-width: 768px){.user-profile-container,.user-profile{background-color:transparent}.student-navbar{border-bottom:none;box-shadow:none;background-color:var(--md-sys-color-primary-container)}.user-dropdown-menu{background-color:var(--md-sys-color-primary-container)}[data-theme=dark] .student-navbar,[data-theme=dark] .user-dropdown-menu{background-color:var(--md-sys-color-surface-container-low)}}.navigation-rail{position:fixed;top:64px;left:0;bottom:0;width:73px;z-index:var(--z-sticky);padding:var(--spacing-sm) var(--spacing-sm);background-color:var(--md-sys-color-surface);border-right:none;box-shadow:none;display:none;transition:background-color var(--transition-normal),gap .3s,width .15s cubic-bezier(.2,.9,.2,1);overflow-y:auto;overflow-x:hidden}.rail-container{display:flex;flex-direction:column;align-items:start;justify-content:start;gap:var(--spacing-sm);height:100%;width:100%}.rail-item{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-md) var(--spacing-sm);border:none;background:transparent;border-radius:var(--radius-full);cursor:pointer;width:56px;height:56px;position:relative}.rail-item:hover{background-color:var(--md-sys-color-surface-variant);border-radius:var(--radius-full)}.rail-item.active{background-color:var(--md-sys-color-on-primary);color:var(--md-sys-color-on-primary-container);border-radius:var(--radius-full)}.rail-icon-container{position:relative;display:flex;align-items:center;justify-content:center;width:32px;height:32px}.rail-icon{font-size:24px;color:var(--md-sys-color-on-surface-variant)}.rail-item.active .rail-icon{color:var(--md-sys-color-on-primary-container);font-variation-settings:"FILL" 1}.rail-label{font-family:var(--md-sys-typescale-label-small-font);font-size:10px;font-weight:var(--md-sys-typescale-label-small-weight);color:var(--md-sys-color-on-surface-variant);text-align:center;line-height:1.2;max-width:64px;word-wrap:break-word}.navigation-rail:not(.collapsed) .rail-label{display:none}.navigation-rail:not(.collapsed) .rail-item{display:flex;align-items:center;justify-content:center}.navigation-rail.collapsed{width:230px}.navigation-rail.collapsed .rail-item{display:flex;flex-direction:row;justify-content:start;align-items:center;width:100%;padding:var(--spacing-md) var(--spacing-md);border-radius:var(--radius-full)}.navigation-rail.collapsed .rail-icon-container{justify-content:start}.navigation-rail.collapsed .rail-label{font-size:14px;max-width:none;white-space:nowrap}.rail-item.active .rail-label{color:var(--md-sys-color-on-primary-container);font-weight:600}.bottom-navigation{position:fixed;bottom:0;left:0;right:0;z-index:var(--z-sticky);background-color:var(--md-sys-color-surface);border-top:1px solid var(--md-sys-color-outline-variant);box-shadow:var(--shadow-sm);display:block;transition:background-color var(--transition-normal),border-color var(--transition-fast),box-shadow var(--transition-fast)}.nav-container{display:flex;justify-content:space-around;align-items:center;padding:var(--spacing-sm) var(--spacing-md);max-width:600px;margin:0 auto;height:64px}.nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:var(--spacing-sm);border:none;background:transparent;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast),background-color var(--transition-fast),color var(--transition-fast);min-width:64px;position:relative}.nav-item:active{transform:scale(.95)}.nav-item.active{color:var(--md-sys-color-on-primary-container);transition:background-color var(--transition-fast),color var(--transition-fast)}.nav-icon-container{position:relative;display:flex;align-items:center;justify-content:center;width:32px;height:32px}.nav-icon{font-size:24px;color:var(--md-sys-color-on-surface-variant);transition:color var(--transition-fast)}.nav-item.active .nav-icon{color:var(--md-sys-color-on-primary-container);font-variation-settings:"FILL" 1}.nav-label{font-family:var(--md-sys-typescale-label-large-font);font-size:12px;font-weight:var(--md-sys-typescale-label-large-weight);color:var(--md-sys-color-on-surface-variant);transition:color var(--transition-fast);text-align:center;line-height:1.2}.nav-item.active .nav-label{color:var(--md-sys-color-on-primary-container);font-weight:600}@media (min-width: 768px){.navigation-rail{display:block;background-color:var(--md-sys-color-primary-container)}.bottom-navigation{display:none}[data-theme=dark] .navigation-rail{background-color:var(--md-sys-color-surface-container-low)}}@media (max-width: 767px){.navigation-rail{display:none}.bottom-navigation{display:block}}@media (max-width: 480px){.nav-container{padding:var(--spacing-xs) var(--spacing-sm)}.nav-item{min-width:56px;padding:6px}.nav-icon{font-size:22px}}[data-theme=dark] .bottom-navigation{box-shadow:0 -2px 8px #0000004d}@supports (padding-bottom: env(safe-area-inset-bottom)){.bottom-navigation{padding-bottom:env(safe-area-inset-bottom)}}Student Profile Component Styles .notification-container{position:fixed;top:20px;right:20px;z-index:1000}.modal-button-group{display:flex;flex-direction:column;gap:0;width:100%}.modal-action-btn{display:flex;align-items:center;justify-content:center;padding:var(--spacing-lg) var(--spacing-xl);border:none;background:transparent;color:var(--md-sys-color-on-surface);font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);font-weight:400;cursor:pointer;transition:background-color .2s ease;border-radius:0;min-height:48px;width:100%;text-align:center}.modal-action-btn:hover{background-color:var(--md-sys-color-surface-container-high)}.modal-action-btn:not(:last-child){border-bottom:1px solid var(--md-sys-color-outline-variant)}.modal-action-btn.upload-btn{color:var(--md-sys-color-primary)}.modal-action-btn.remove-btn{color:var(--md-sys-color-error)}.modal-action-btn.cancel-btn{color:var(--md-sys-color-on-surface-variant);font-weight:500}.profile-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);padding:var(--spacing-lg);background:var(--school-secondary);border-radius:var(--radius-lg);color:#ffffffe6!important;box-shadow:var(--shadow-md)}.profile-header *{color:#ffffffe6!important}.page-title{font-family:var(--md-sys-typescale-headline-large-font);font-size:var(--md-sys-typescale-headline-large-size);font-weight:var(--md-sys-typescale-headline-large-weight);margin:0 0 var(--spacing-xs) 0;color:#fff}.page-subtitle{font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);margin:0;opacity:.9;color:#fff}.profile-avatar{display:flex;align-items:center;justify-content:center}.avatar-circle{width:80px;height:80px;border-radius:50%;background-color:#fff3;display:flex;align-items:center;justify-content:center;border:3px solid rgba(255,255,255,.3);transition:all var(--transition-normal);position:relative;cursor:pointer}.avatar-circle:hover{background-color:#ffffff4d}.avatar-circle .material-symbols-outlined{font-size:40px;color:#fff}.avatar-overlay{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:50%;background-color:#0009;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity var(--transition-normal)}.avatar-circle:hover .avatar-overlay{opacity:1}.edit-icon{font-size:24px!important;color:#fff!important}.section-title{font-family:var(--md-sys-typescale-title-large-font);font-size:var(--md-sys-typescale-title-large-size);font-weight:var(--md-sys-typescale-title-large-weight);color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-lg) 0;display:flex;align-items:center;gap:var(--spacing-sm)}.profile-info-section{margin-bottom:var(--spacing-xl)}.info-cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.profile-contact-section{margin-bottom:2rem}.contact-cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:1.5rem;margin-top:1.5rem}.contact-card{background:var(--card-background);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem;transition:all .3s ease}.contact-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0000001a;border-color:var(--school-primary)}.contact-icon{width:48px;height:48px;background:linear-gradient(135deg,var(--school-primary),var(--school-secondary));border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:1rem}.contact-icon .material-symbols-outlined{font-size:24px;color:#fff}.contact-content{flex:1}.contact-label{font-size:.875rem;color:var(--text-secondary);margin-bottom:.5rem;font-weight:500}.contact-value{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.contact-sub{font-size:.875rem;color:var(--text-secondary);margin-bottom:1rem}.contact-details{display:flex;flex-direction:column;gap:.5rem}.contact-detail{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--text-secondary)}.contact-detail .material-symbols-outlined{font-size:16px;color:var(--school-primary)}.profile-academic-section{margin-bottom:2rem}.profile-modal-actions{display:flex;flex-direction:column;gap:0}.profile-modal-action-btn{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:1rem 1.5rem;border:none;background:transparent;color:var(--text-primary);font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s ease;border-bottom:1px solid var(--border-color);width:100%}.profile-modal-action-btn:last-child{border-bottom:none}.profile-modal-action-btn:hover{background:var(--hover-background, rgba(0, 0, 0, .05))}.profile-modal-action-btn .material-symbols-outlined{font-size:20px}.upload-btn{color:var(--school-primary)}.upload-btn:hover{background:rgba(var(--school-primary-rgb, 59, 130, 246),.1)}.remove-btn{color:#ef4444}.remove-btn:hover{background:#ef44441a}.cancel-btn{color:var(--text-secondary);font-weight:400}.cancel-btn:hover{background:var(--hover-background, rgba(0, 0, 0, .05))}.info-card{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg);background-color:var(--md-sys-color-surface-container);border-radius:var(--radius-md);border:1px solid var(--md-sys-color-outline-variant);transition:all var(--transition-normal);box-shadow:var(--shadow-sm)}.info-card:hover{background-color:var(--md-sys-color-surface-container-hover);transform:translateY(-2px);box-shadow:var(--shadow-md)}.info-icon{width:48px;height:48px;border-radius:var(--radius-md);background-color:var(--school-primary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.info-icon .material-symbols-outlined{font-size:24px;color:#fff}.info-content{flex:1}.info-label{font-family:var(--md-sys-typescale-label-large-font);font-size:var(--md-sys-typescale-label-large-size);font-weight:500;color:var(--md-sys-color-on-surface-variant);margin-bottom:var(--spacing-xs);text-transform:uppercase;letter-spacing:.5px}.info-value{font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);font-weight:500;color:var(--md-sys-color-on-surface);word-break:break-word}.profile-subjects-section{margin-bottom:var(--spacing-xl)}.subjects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:var(--spacing-lg)}.subject-card{display:flex;align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-lg);background-color:var(--md-sys-color-surface-container);border-radius:var(--radius-md);border:1px solid var(--md-sys-color-outline-variant);transition:all var(--transition-normal);box-shadow:var(--shadow-sm)}.subject-card:hover{background-color:var(--md-sys-color-surface-container-hover);transform:translateY(-2px);box-shadow:var(--shadow-md)}.subject-icon-column{flex-shrink:0}.subject-icon{width:48px;height:48px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;transition:all var(--transition-normal)}.subject-icon .material-symbols-outlined{font-size:24px}.subject-details-column{flex:1;min-width:0}.subject-name{font-family:var(--md-sys-typescale-title-large-font);font-size:18px;font-weight:500;color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-xs) 0;word-break:break-word}.teacher-name{font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);color:var(--md-sys-color-on-surface-variant);margin:0 0 var(--spacing-sm) 0}.subject-id{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background-color:var(--md-sys-color-surface-variant);border-radius:var(--radius-sm);width:fit-content}.subject-id .material-symbols-outlined{font-size:16px;color:var(--md-sys-color-on-surface-variant)}.subject-id-text{font-family:var(--md-sys-typescale-label-large-font);font-size:12px;font-weight:500;color:var(--md-sys-color-on-surface-variant);letter-spacing:.5px}@media (max-width: 768px){.profile-container{padding:var(--spacing-md)}.profile-header{flex-direction:column;text-align:center;gap:var(--spacing-md)}.info-cards-grid,.subjects-grid{grid-template-columns:1fr}.page-title{font-size:24px}.avatar-circle{width:60px;height:60px}.avatar-circle .material-symbols-outlined{font-size:30px}}@media (max-width: 480px){.profile-container{padding:var(--spacing-sm)}.profile-header,.info-card,.subject-card{padding:var(--spacing-md)}.subject-card{flex-direction:column;text-align:center}.subject-icon-column{align-self:center}}@media (prefers-contrast: high){.info-card,.subject-card{border-width:2px}.info-icon,.subject-icon{border:2px solid var(--md-sys-color-outline)}}@media (prefers-reduced-motion: reduce){.info-card,.subject-card,.avatar-circle{transition:none}.info-card:hover,.subject-card:hover,.avatar-circle:hover{transform:none}}.grades-container{height:100%;box-sizing:border-box;padding:var(--spacing-sm);overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth}.grades-container::-webkit-scrollbar{width:8px}.grades-container::-webkit-scrollbar-track{background:var(--md-sys-color-surface-variant);border-radius:var(--radius-sm)}.grades-container::-webkit-scrollbar-thumb{background:var(--md-sys-color-outline-variant);border-radius:var(--radius-sm);transition:background-color var(--transition-normal)}.grades-container::-webkit-scrollbar-thumb:hover{background:var(--md-sys-color-outline)}.quarter-selector{display:flex;width:10rem;justify-content:center;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);border-radius:var(--radius-full);font-weight:500;font-size:14px}.dropdown-button{background:transparent;border:none;color:var(--md-sys-color-on-primary-container);font-weight:500;font-size:14px;cursor:pointer;outline:none;padding:0;display:flex;justify-content:center;align-items:center;gap:4px;transition:color var(--transition-normal)}.dropdown-button:hover{opacity:.8}.dropdown-text{white-space:nowrap}.dropdown-arrow{font-size:18px;transition:transform .2s ease,}.dropdown-menu-quarter{position:absolute;top:170%;left:-15px;right:0;background:var(--md-sys-color-surface-container);border-radius:var(--radius-xl);box-shadow:0 8px 24px #0000001f,0 4px 8px #00000014;min-width:160px;z-index:1000;overflow:hidden;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:dropdownSlideIn .3s cubic-bezier(.2,0,.2,1)}@keyframes dropdownSlideIn{0%{opacity:0;transform:translateY(-12px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes dropdownSlideOut{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-8px) scale(.98)}}.dropdown-item-quarter{width:100%;padding:var(--spacing-sm) var(--spacing-sm);background:transparent;border:none;text-align:center;font-size:.95rem;font-weight:500;color:var(--md-sys-color-on-surface);cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative;display:flex;align-items:center;justify-content:center;min-height:48px}.dropdown-item-quarter:hover{background-color:var(--md-sys-color-surface-container-hover);color:var(--md-sys-color-on-surface)}.dropdown-item-quarter.active{background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);font-weight:600}.dropdown-item-quarter.active:hover{background-color:var(--md-sys-color-primary-container)}.performance-card{background-color:var(--md-sys-color-surface-container);border-radius:var(--radius-xl);padding:var(--spacing-xl);margin-bottom:var(--spacing-xl);box-shadow:var(--shadow-md);border:1px solid var(--md-sys-color-outline-variant)}.performance-title{font-family:var(--md-sys-typescale-title-large-font);font-size:var(--md-sys-typescale-title-large-size);font-weight:var(--md-sys-typescale-title-large-weight);color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-lg) 0;text-align:center}.performance-main{display:flex;justify-content:space-around;align-items:center}.average-section,.subjects-section-card{text-align:center;flex:1}.average-value,.subjects-value{font-size:48px;color:var(--md-sys-color-primary);line-height:1;margin-bottom:var(--spacing-xs)}.average-value :global(.odometer),.subjects-value :global(.odometer){font-size:inherit;font-weight:inherit;color:inherit;line-height:inherit}.average-label,.subjects-label{font-size:16px;color:var(--md-sys-color-on-surface-variant);font-weight:500}.section-title{font-family:var(--md-sys-typescale-title-large-font);font-size:var(--md-sys-typescale-title-large-size);font-weight:var(--md-sys-typescale-title-large-weight);color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-lg) 0}.subjects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:var(--spacing-lg)}.subject-card{background-color:var(--md-sys-color-surface-container);border-radius:var(--radius-lg);padding:var(--spacing-lg);border:1px solid var(--md-sys-color-outline-variant);transition:all var(--transition-normal);box-shadow:var(--shadow-sm);display:grid;grid-template-columns:auto 1fr auto;gap:var(--spacing-md);align-items:center;cursor:pointer}.subject-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.subject-icon-column{display:flex;align-items:center;justify-content:center}.subject-details-column{display:flex;flex-direction:column;gap:var(--spacing-sm);flex:1}.grade-column{display:flex;align-items:center;justify-content:center;transition:all var(--transition-normal)}.subject-icon{width:48px;height:48px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;font-size:24px}.subject-icon .material-symbols-outlined{font-size:40px}.subject-name{font-size:18px;font-weight:500;color:var(--md-sys-color-on-surface);margin:0;line-height:1.2}.teacher-name{font-size:14px;font-weight:400;color:var(--md-sys-color-on-surface-variant);margin:0;line-height:1.2}.subject-credits{font-size:14px;color:var(--md-sys-color-on-surface-variant);margin:0}.grade-large{font-size:32px;font-weight:700;text-align:center;min-width:60px}.grade-large :global(.odometer){font-size:inherit;font-weight:inherit;color:inherit;text-align:inherit}.no-grade-large{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);color:var(--md-sys-color-on-surface-variant);font-size:12px;text-align:center}.no-grade-large .material-symbols-outlined{font-size:24px}.no-grade-text{font-size:12px;font-weight:500}.progress-bar{height:6px;background-color:var(--md-sys-color-surface-variant);border-radius:var(--radius-full);overflow:hidden;width:100%}.progress-fill{height:100%;border-radius:var(--radius-full);transition:width var(--transition-normal)}@media (max-width: 768px){.grades-container{padding:var(--spacing-md)}.grades-header{align-items:center;gap:var(--spacing-md)}.subjects-grid{grid-template-columns:1fr}.page-title{font-size:1.5rem}.average-value,.subjects-value{font-size:36px}}@media (max-width: 480px){.subject-card{gap:var(--spacing-md);text-align:center}.subject-icon{display:none}.subject-details-column{text-align:start}.grade-column{justify-self:center}}.odometer-container.svelte-1ve39fg{display:inline-block;font-variant-numeric:tabular-nums}.odometer{font-family:inherit;font-size:inherit;font-weight:inherit;color:inherit;line-height:inherit}.odometer .odometer-digit{font-family:inherit;font-size:inherit;font-weight:inherit;color:inherit}.schedule-container{margin:0 auto;color:var(--md-sys-color-on-surface);padding:var(--spacing-sm);height:100%;box-sizing:border-box;overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth}.page-title{font-family:var(--md-sys-typescale-headline-large-font);font-weight:var(--md-sys-typescale-headline-large-weight);color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-xs) 0}.day-selector{display:flex;gap:var(--spacing-md)}.day-btn{background-color:var(--md-sys-color-surface-variant);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);padding:var(--spacing-md) var(--spacing-lg);cursor:pointer;transition:all .2s;flex:1;text-align:center;color:var(--md-sys-color-on-surface-variant)}.day-btn:hover{background-color:var(--md-sys-color-surface);border-color:var(--md-sys-color-outline)}.day-btn.active{background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);border-color:var(--md-sys-color-primary-container)}.classes-section{background-color:var(--md-sys-color-surface);padding:var(--spacing-xl);border-radius:0 0 var(--radius-xl) var(--radius-xl)}.classes-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.class-card{background-color:var(--md-sys-color-surface-container);border-radius:var(--radius-lg);padding:var(--spacing-lg);border:1px solid var(--md-sys-color-outline-variant);transition:all .2s;cursor:pointer;color:var(--md-sys-color-on-surface)}.class-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.class-card.blue{background-color:var(--md-sys-color-primary-container);border-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary-container)}.class-card.blue .class-name,.class-card.blue .class-time,.class-card.blue .class-location,.class-card.blue .class-teacher{color:var(--md-sys-color-on-primary-container)}.class-card.green{background-color:#e8f5e8;border-color:#4caf50;color:#1b5e20}[data-theme=dark] .class-card.green{background-color:#263f26;border-color:#66bb6a;color:#c8e6c9}.class-card.green .class-name,.class-card.green .class-time,.class-card.green .class-location,.class-card.green .class-teacher{color:inherit}.class-card.purple{background-color:#f3e5f5;border-color:#9c27b0;color:#4a148c}[data-theme=dark] .class-card.purple{background-color:#3a2f3b;border-color:#ba68c8;color:#e1bee7}.class-card.purple .class-name,.class-card.purple .class-time,.class-card.purple .class-location,.class-card.purple .class-teacher{color:inherit}.class-card.yellow{background-color:#fff8e1;border-color:#ffc107;color:#ff6f00}[data-theme=dark] .class-card.yellow{background-color:#3e3823;border-color:#ffcc02;color:#fff3c4}.class-card.yellow .class-name,.class-card.yellow .class-time,.class-card.yellow .class-location,.class-card.yellow .class-teacher{color:inherit}.class-card.orange{background-color:#fff3e0;border-color:#ff9800;color:#e65100}[data-theme=dark] .class-card.orange{background-color:#3e2f23;border-color:#ffb74d;color:#ffe0b2}.class-card.orange .class-name,.class-card.orange .class-time,.class-card.orange .class-location,.class-card.orange .class-teacher{color:inherit}.class-card.gray{background-color:var(--md-sys-color-surface-variant);border-color:var(--md-sys-color-outline-variant);color:var(--md-sys-color-on-surface)}.class-card.gray .class-name,.class-card.gray .class-time,.class-card.gray .class-location,.class-card.gray .class-teacher{color:var(--md-sys-color-on-surface)}.class-card.pink{background-color:#fce4ec;border-color:#e91e63;color:#880e4f}[data-theme=dark] .class-card.pink{background-color:#3b2832;border-color:#f06292;color:#f8bbd9}.class-card.pink .class-name,.class-card.pink .class-time,.class-card.pink .class-location,.class-card.pink .class-teacher{color:inherit}.class-card.light-purple{background-color:#ede7f6;border-color:#673ab7;color:#311b92}[data-theme=dark] .class-card.light-purple{background-color:#332d3a;border-color:#9575cd;color:#d1c4e9}.class-card.light-purple .class-name,.class-card.light-purple .class-time,.class-card.light-purple .class-location,.class-card.light-purple .class-teacher{color:inherit}.class-name{margin:0;font-size:1.125rem;font-weight:600}.class-time{font-size:.875rem;font-weight:500;display:flex;align-items:center;gap:var(--spacing-xs);opacity:.9}.class-location,.class-teacher{display:flex;align-items:center;gap:var(--spacing-xs);font-size:.875rem;opacity:.85}.schedule-mobile-dropdown{display:none;position:relative}.schedule-dropdown-toggle-date{width:100%;background-color:var(--md-sys-color-surface-variant);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);padding:var(--spacing-md) var(--spacing-lg);cursor:pointer;transition:all .2s;display:flex;justify-content:space-between;align-items:center;color:var(--md-sys-color-on-surface-variant);font-size:1rem;font-weight:500}.schedule-dropdown-toggle-date:hover{background-color:var(--md-sys-color-surface);border-color:var(--md-sys-color-outline)}.schedule-dropdown-icon{transition:transform .2s;font-size:1.2rem}.schedule-dropdown-icon.open{transform:rotate(180deg)}.schedule-dropdown-menu{position:absolute;top:100%;left:0;right:0;background-color:var(--md-sys-color-surface);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);box-shadow:0 4px 12px #0000001a;z-index:1000;margin-top:var(--spacing-xs)}.schedule-dropdown-item{width:100%;padding:var(--spacing-md) var(--spacing-lg);border:none;background-color:transparent;color:var(--md-sys-color-on-surface);cursor:pointer;transition:background-color .2s;text-align:left;font-size:1rem;font-weight:500}.schedule-dropdown-item:hover{background-color:var(--md-sys-color-surface-variant)!important}.schedule-dropdown-item.selected{background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container)}.schedule-dropdown-item.selected:hover{background-color:var(--md-sys-color-primary-container)!important}@media (max-width: 768px){.schedule-header h1{font-size:1.5rem}.week-navigation{padding:var(--spacing-md) var(--spacing-lg)}.day-selector{display:none}.schedule-mobile-dropdown{display:block}.classes-section{padding:var(--spacing-sm)}.class-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.class-details{justify-content:space-between}.class-header{flex-direction:row;align-items:center}}@media (max-width: 480px){.day-selector{flex-direction:column}.day-name{display:none}.day-name-full{display:block}.class-details{justify-content:space-between}.class-header{flex-direction:row;align-items:center}.day-btn{flex:none}.week-title{gap:var(--spacing-md)}}.document-request-container{padding:var(--spacing-sm);color:var(--md-sys-color-on-surface);height:100%;box-sizing:border-box;overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth}.document-request-container::-webkit-scrollbar{width:8px}.document-request-container::-webkit-scrollbar-track{background:var(--md-sys-color-surface-variant);border-radius:var(--radius-sm)}.document-request-container::-webkit-scrollbar-thumb{background:var(--md-sys-color-outline-variant);border-radius:var(--radius-sm);transition:background-color var(--transition-normal)}.document-request-container::-webkit-scrollbar-thumb:hover{background:var(--md-sys-color-outline)}.document-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);gap:var(--spacing-md)}.quick-actions-section{background-color:var(--md-sys-color-surface-container);border-radius:var(--radius-xl);padding:var(--spacing-xl);margin-bottom:var(--spacing-xl);box-shadow:var(--shadow-md);border:1px solid var(--md-sys-color-outline-variant)}.quick-actions-header{text-align:center;margin-bottom:var(--spacing-lg)}.request-new-button{width:100%;max-width:400px;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-xl);background-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary);border:none;border-radius:var(--radius-lg);font-size:16px;font-weight:500;cursor:pointer;transition:all var(--transition-normal);box-shadow:var(--shadow-sm)}.request-new-button:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.request-form-section{background-color:var(--md-sys-color-surface-container);border-radius:var(--radius-xl);padding:var(--spacing-xl);margin-bottom:var(--spacing-xl);box-shadow:var(--shadow-md);border:1px solid var(--md-sys-color-outline-variant);animation:slideDown .3s cubic-bezier(.2,0,.2,1)}@keyframes slideDown{0%{opacity:0;transform:translateY(-16px);max-height:0}to{opacity:1;transform:translateY(0);max-height:1000px}}.form-container{width:100%}.form-header{text-align:center;margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--md-sys-color-outline-variant)}.form-title{font-family:var(--md-sys-typescale-title-large-font);font-size:var(--md-sys-typescale-title-large-size);font-weight:var(--md-sys-typescale-title-large-weight);color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-xs) 0}.form-subtitle{font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);color:var(--md-sys-color-on-surface-variant);margin:0;line-height:1.4}.form-content{display:flex;flex-direction:column;gap:var(--spacing-lg)}.request-history-section{margin-bottom:var(--spacing-xl)}.request-history-grid{display:flex;flex-direction:column;gap:var(--spacing-md)}@keyframes requestCardSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.request-card{background-color:var(--md-sys-color-surface-container);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);transition:all var(--transition-normal);box-shadow:var(--shadow-sm);overflow:hidden;color:var(--md-sys-color-on-surface);animation:requestCardSlideIn .4s ease-out;animation-fill-mode:both;animation-delay:calc(var(--card-index, 0) * .1s)}.request-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.request-main-content{display:flex;gap:var(--spacing-md);align-items:flex-start;padding:var(--spacing-lg)}.request-status-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:var(--spacing-xs)}.request-status-icon .material-symbols-outlined{font-size:26px}.request-content{flex:1}.request-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-sm);gap:var(--spacing-md)}.request-info{flex:1}.request-title{font-size:16px;font-weight:600;color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-xs) 0;line-height:1.3}.request-date{font-size:14px;color:var(--md-sys-color-primary);margin:0;font-weight:400}.request-description{font-size:14px;color:var(--md-sys-color-on-surface-variant);margin:0;line-height:1.4}.request-purpose{font-size:14px;color:var(--md-sys-color-on-surface);margin:0;line-height:1.4}.completion-info,.processing-info,.rejection-info{margin-top:var(--spacing-xs)}.completed-date{font-size:12px;color:var(--success);background-color:color-mix(in srgb,var(--success) 10%,transparent);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-weight:500}.estimated-completion{font-size:12px;color:var(--warning);background-color:color-mix(in srgb,var(--warning) 10%,transparent);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-weight:500}.rejection-reason{font-size:12px;color:var(--error);background-color:color-mix(in srgb,var(--error) 10%,transparent);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-weight:500}.student-status-badge{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-full);font-size:12px;font-weight:600;text-transform:capitalize;text-align:center;min-width:80px;flex-shrink:0}.student-status-badge.status-completed{background-color:var(--status-completed-bg);color:var(--status-completed-text);border:1px solid var(--status-completed-border)}.student-status-badge.status-processing{background-color:var(--status-processing-bg);color:var(--status-processing-text);border:1px solid var(--status-processing-border)}.student-status-badge.status-pending{background-color:var(--status-pending-bg);color:var(--status-pending-text);border:1px solid var(--status-pending-border)}.student-status-badge.status-rejected{background-color:var(--status-rejected-bg);color:var(--status-rejected-text);border:1px solid var(--status-rejected-border)}.student-status-badge.status-cancelled{background-color:var(--status-cancelled-bg);color:var(--status-cancelled-text);border:1px solid var(--status-cancelled-border)}.request-card .request-status-icon{color:var(--md-sys-color-on-surface-variant)}.request-footer{padding:var(--spacing-md) var(--spacing-lg);margin:0;display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md)}.footer-info{font-size:14px;font-weight:500;color:var(--md-sys-color-on-surface-variant)}.cancel-request-button{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background-color:var(--md-sys-color-error);color:var(--md-sys-color-on-error);border:none;border-radius:var(--radius-md);font-size:.875rem;font-weight:500;cursor:pointer;transition:all var(--transition-normal)}.cancel-request-button:active{transform:translateY(0);box-shadow:none}.cancel-request-button .material-symbols-outlined{font-size:18px}.form-group{margin-bottom:var(--spacing-xl)}.form-label{display:flex;align-items:center;gap:var(--spacing-xs);font-size:15px;font-weight:600;color:var(--md-sys-color-on-surface);margin-bottom:var(--spacing-sm);letter-spacing:.01em}.form-icon{font-size:20px;color:var(--md-sys-color-primary)}.form-select,.form-textarea{width:100%;padding:var(--spacing-md) var(--spacing-lg);border:2px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);background-color:var(--md-sys-color-surface);color:var(--md-sys-color-on-surface);font-size:15px;font-family:inherit;transition:all var(--transition-normal);box-shadow:0 1px 3px #0000000d}.dropdown-toggle{width:100%;background:var(--md-sys-color-surface);border:2px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);padding:var(--spacing-md) var(--spacing-lg);font-size:15px;font-weight:500;color:var(--md-sys-color-on-surface);cursor:pointer;transition:all var(--transition-normal);display:flex;align-items:center;justify-content:space-between;text-align:left;box-shadow:0 1px 3px #0000000d}.dropdown-toggle:focus{outline:none;border-color:var(--md-sys-color-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--md-sys-color-primary) 15%,transparent),0 2px 8px #0000001a;transform:translateY(-1px)}.dropdown-toggle:active{transform:translateY(0);box-shadow:0 1px 3px #0000001a}.dropdown-icon{transition:transform var(--transition-normal);color:var(--md-sys-color-on-surface-variant)}.dropdown-menu-document{position:absolute;top:100%;left:0;right:0;background:var(--md-sys-color-surface);border:2px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);box-shadow:0 8px 24px #0000001f;z-index:1000;margin-top:4px}.dropdown-item{width:100%;background:none;border:none;padding:var(--spacing-md) var(--spacing-lg);cursor:pointer;transition:all var(--transition-fast);text-align:left;border-bottom:1px solid var(--md-sys-color-outline-variant)}.dropdown-item:last-child{border-bottom:none}.dropdown-item.selected{background-color:color-mix(in srgb,var(--md-sys-color-primary) 12%,var(--md-sys-color-surface));color:var(--md-sys-color-primary)}.dropdown-item-content{display:flex;flex-direction:column;gap:2px}.dropdown-item-name{font-weight:500;font-size:15px;color:var(--md-sys-color-on-surface)}.dropdown-item.selected .dropdown-item-name{color:var(--md-sys-color-primary)}.dropdown-item-desc{font-size:13px;color:var(--md-sys-color-on-surface-variant);font-weight:400}.dropdown-item.selected .dropdown-item-desc{color:color-mix(in srgb,var(--md-sys-color-primary) 70%,var(--md-sys-color-on-surface-variant))}.form-select.enhanced,.form-textarea.enhanced{background-color:var(--md-sys-color-surface-container-low);border-color:var(--md-sys-color-outline-variant)}.form-select.enhanced{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='%236750A4' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e")}.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--md-sys-color-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--md-sys-color-primary) 15%,transparent),0 2px 8px #0000001a;background-color:var(--md-sys-color-surface);transform:translateY(-1px)}.form-select:focus{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='%236750A4' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e")}.form-select:active{transform:translateY(0);box-shadow:0 1px 3px #0000001a}.form-select option{padding:var(--spacing-md) var(--spacing-lg);background-color:var(--md-sys-color-surface);color:var(--md-sys-color-on-surface);border:none;font-size:15px;font-weight:500;line-height:1.4;transition:all .2s ease}.form-select option:checked,.form-select option:focus{background-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary);outline:none}.form-select option:disabled{color:var(--md-sys-color-on-surface-variant);background-color:var(--md-sys-color-surface-container);cursor:not-allowed;opacity:.6}.form-textarea{resize:vertical;line-height:1.5;min-height:120px}.form-help{display:flex;align-items:center;gap:var(--spacing-xs);font-size:14px;color:var(--md-sys-color-on-surface-variant);margin:var(--spacing-sm) 0 0 0;padding:var(--spacing-md) var(--spacing-md);background-color:color-mix(in srgb,var(--md-sys-color-primary) 5%,transparent);border-radius:var(--radius-md);border-left:3px solid var(--md-sys-color-primary)}.help-icon{font-size:16px;color:var(--md-sys-color-primary);flex-shrink:0}.cancel-button,.submit-button{padding:var(--spacing-md) var(--spacing-xl);border-radius:var(--radius-lg);font-size:15px;font-weight:600;cursor:pointer;transition:all var(--transition-normal);border:none;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);min-height:48px;letter-spacing:.01em;position:relative;overflow:hidden}.cancel-button{background-color:var(--md-sys-color-surface-container);color:var(--md-sys-color-on-surface-variant);border:2px solid var(--md-sys-color-outline-variant);box-shadow:0 1px 3px #0000000d}.submit-button{background:linear-gradient(135deg,var(--md-sys-color-primary) 0%,color-mix(in srgb,var(--md-sys-color-primary) 85%,var(--md-sys-color-secondary)) 100%);color:var(--md-sys-color-on-primary);box-shadow:0 2px 8px color-mix(in srgb,var(--md-sys-color-primary) 25%,transparent);border:2px solid transparent}.submit-button:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 6px color-mix(in srgb,var(--md-sys-color-primary) 25%,transparent)}.submit-button:disabled,.cancel-button:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.form-actions{display:flex;justify-content:flex-end;gap:var(--spacing-md);padding-top:var(--spacing-xl);border-top:1px solid var(--md-sys-color-outline-variant)}.spinning{animation:spin 1s linear infinite}@media (max-width: 768px){.document-request-container{padding:var(--spacing-md)}.request-main-content{gap:var(--spacing-sm)}.request-status-icon{align-self:flex-start;margin-top:0}.request-header{gap:var(--spacing-xs)}.status-badge{align-self:flex-start}.request-footer{gap:var(--spacing-sm);flex-direction:row;padding-top:0}.request-form-section{padding:var(--spacing-lg)}.form-header{padding-bottom:var(--spacing-md)}}@media (max-width: 480px){.request-footer{flex-direction:column}.page-title{font-size:1.5rem}.request-new-button{font-size:14px;padding:var(--spacing-sm) var(--spacing-lg)}.form-actions{flex-direction:column;gap:var(--spacing-sm)}.submit-button,.cancel-button{width:100%;justify-content:center}.form-label{font-size:14px}.form-icon{font-size:18px}.form-select,.form-textarea{font-size:14px;padding:var(--spacing-sm) var(--spacing-md)}.dropdown-toggle,.dropdown-item-name{font-size:14px}.dropdown-item-desc{font-size:12px}}.notification-container{height:100%;box-sizing:border-box;padding:var(--spacing-lg);overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth}.notification-container::-webkit-scrollbar{width:8px}.notification-container::-webkit-scrollbar-track{background:var(--md-sys-color-surface-variant);border-radius:var(--radius-sm)}.notification-container::-webkit-scrollbar-thumb{background:var(--md-sys-color-outline-variant);border-radius:var(--radius-sm);transition:background-color var(--transition-normal)}.notification-container::-webkit-scrollbar-thumb:hover{background:var(--md-sys-color-outline)}.notification-header{margin-bottom:var(--spacing-xl)}.notification-badge{background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);font-size:12px;font-weight:500;padding:4px 8px;border-radius:var(--radius-full);white-space:nowrap}.filter-actions-section{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);gap:var(--spacing-md);flex-wrap:wrap}.filter-section{flex:1;min-width:200px}.actions-section{display:flex;gap:var(--spacing-sm);align-items:center}.filter-dropdown{position:relative}.filter-toggle{width:100%;padding:var(--spacing-sm);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);background-color:var(--md-sys-color-surface-container);color:var(--md-sys-color-on-surface);font-size:16px;font-family:inherit;cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:all var(--transition-normal);height:50px}.filter-toggle:hover{border-color:var(--md-sys-color-primary);background-color:var(--md-sys-color-surface-container-hover)}.filter-toggle:focus{outline:none;border-color:var(--md-sys-color-primary)}.filter-toggle-content{display:flex;align-items:center;gap:var(--spacing-sm)}.filter-icon{font-size:20px;color:var(--md-sys-color-primary)}.filter-label{font-weight:500}.dropdown-arrow.rotated{transform:rotate(180deg)}.filter-dropdown-menu{position:absolute;top:100%;left:0;right:0;z-index:1000;background-color:var(--md-sys-color-surface-container);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);margin-top:4px;max-height:300px;overflow-y:auto;animation:dropdownSlideIn .2s ease-out}.filter-dropdown-item{width:100%;padding:var(--spacing-md);border:none;background:none;color:var(--md-sys-color-on-surface);font-size:16px;font-family:inherit;cursor:pointer;display:flex;align-items:center;gap:var(--spacing-sm);transition:background-color var(--transition-normal);position:relative}.filter-dropdown-item:hover{background-color:var(--md-sys-color-surface-variant)}.filter-dropdown-item.active{background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container)}.filter-dropdown-item .material-symbols-outlined{font-size:20px}.count-badge{margin-left:auto;background-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary);font-size:12px;font-weight:600;padding:2px 6px;border-radius:var(--radius-full);min-width:18px;text-align:center}.notifications-action-btn{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border:none;border-radius:var(--radius-lg);font-size:14px;font-weight:500;cursor:pointer;transition:all var(--transition-normal);white-space:nowrap;width:fit-content;height:50px}.action-btn .material-symbols-outlined{font-size:18px}.mark-all-read{background-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary)}.mark-all-read:hover{background-color:var(--md-sys-color-primary-hover);transform:translateY(-1px)}.clear-read{background-color:var(--md-sys-color-surface-variant);color:var(--md-sys-color-on-surface-variant);border:1px solid var(--md-sys-color-outline-variant)}.clear-read:hover{background-color:var(--md-sys-color-error);color:var(--md-sys-color-on-error);border-color:var(--md-sys-color-error);transform:translateY(-1px)}.notifications-section{margin-bottom:var(--spacing-xl)}.notifications-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.notification-card{background-color:var(--md-sys-color-surface-container);border-radius:var(--radius-lg);padding:var(--spacing-lg);border:1px solid var(--md-sys-color-outline-variant);transition:all .2s;cursor:pointer;color:var(--md-sys-color-on-surface);position:relative;overflow:hidden;animation:notificationSlideIn .4s ease-out;animation-fill-mode:both;animation-delay:calc(var(--card-index, 0) * .1s)}.notification-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.notification-card.unread{background-color:var(--md-sys-color-primary-container);border-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary-container)}.notification-card.unread .notification-title{font-weight:600}.notification-card.unread .notification-time,.notification-card.unread .notification-message{color:var(--md-sys-color-on-primary-container);opacity:.85}.notification-header-card{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-md)}.notification-title{margin:0;font-size:1.125rem;font-weight:600;color:inherit}.notification-time{font-size:.875rem;font-weight:500;display:flex;align-items:center;gap:var(--spacing-xs);opacity:.9;color:inherit}.notification-details{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-lg)}.notification-message{font-size:.875rem;opacity:.85;color:inherit;margin:0;flex:1;line-height:1.4}.notification-actions{display:flex;gap:var(--spacing-sm);align-items:center;flex-shrink:0}.action-btn-small{width:40px;height:40px;border-radius:var(--radius-full);border:1px solid transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s cubic-bezier(.4,0,.2,1);background-color:var(--md-sys-color-surface-variant);position:relative;overflow:hidden}.action-btn-small:before{content:"";position:absolute;inset:0;background:currentColor;opacity:0;transition:opacity .2s cubic-bezier(.4,0,.2,1)}.action-btn-small:hover:before{opacity:.08}.action-btn-small:active{transform:scale(.95)}.action-btn-small:focus-visible{outline:2px solid var(--md-sys-color-primary);outline-offset:2px}.read-toggle{color:var(--md-sys-color-primary);background-color:var(--md-sys-color-primary-container);border-color:var(--md-sys-color-outline-variant)}.read-toggle:hover{background-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary);border-color:var(--md-sys-color-primary);box-shadow:0 2px 8px #00000026}.delete-btn{color:var(--md-sys-color-error);background-color:var(--md-sys-color-error-container);border-color:var(--md-sys-color-outline-variant)}.delete-btn:hover{background-color:var(--md-sys-color-error);color:var(--md-sys-color-on-error);border-color:var(--md-sys-color-error);box-shadow:0 2px 8px #00000026}.action-btn-small .material-symbols-outlined{font-size:20px;font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 20;position:relative;z-index:1}.no-notifications{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xxl) var(--spacing-lg);text-align:center;color:var(--md-sys-color-on-surface-variant)}.no-notifications-icon{margin-bottom:var(--spacing-lg)}.no-notifications-icon .material-symbols-outlined{font-size:4rem;color:var(--md-sys-color-primary);opacity:.6}.no-notifications h3{font-family:var(--md-sys-typescale-headline-small-font);font-size:var(--md-sys-typescale-headline-small-size);font-weight:var(--md-sys-typescale-headline-small-weight);color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-md) 0}.no-notifications p{font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);color:var(--md-sys-color-on-surface-variant);margin:0;max-width:400px;line-height:1.5}@keyframes notificationSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width: 768px){.notification-container{padding:var(--spacing-md)}.page-title{font-size:1.5rem}.filter-actions-section{gap:var(--spacing-md);align-items:start}.filter-toggle{max-width:none}.actions-section{justify-content:center}.notification-details{flex-direction:column;gap:var(--spacing-sm)}.notification-header-card{flex-direction:column;align-items:flex-start;gap:var(--spacing-xs)}.notification-actions{align-self:flex-end;margin-top:var(--spacing-xs);gap:var(--spacing-xs)}.action-btn-small{width:44px;height:44px}.action-btn-small .material-symbols-outlined{font-size:22px}}@media (max-width: 480px){.notification-details{justify-content:space-between}.notification-header-card{flex-direction:row;align-items:center}.action-btn .material-symbols-outlined{font-size:16px}}.filter-toggle:focus-visible,.filter-dropdown-item:focus-visible,.action-btn:focus-visible,.action-btn-small:focus-visible{outline:2px solid var(--md-sys-color-primary);outline-offset:2px}@media (prefers-reduced-motion: reduce){.notification-card,.action-btn,.action-btn-small,.filter-toggle,.dropdown-arrow,.filter-dropdown-menu{transition:none;animation:none}.notification-card:hover,.action-btn:hover,.action-btn-small:hover,.dropdown-arrow.rotated{transform:none}}[data-theme=dark] .notification-card.unread{background-color:rgba(var(--md-sys-color-primary-rgb),.1)}[data-theme=dark] .notification-type{background-color:#ffffff1a;color:var(--md-sys-color-on-surface-variant)}@media (prefers-contrast: high){.notification-card{border-width:2px}.priority-indicator{width:6px}.notification-icon{border:2px solid var(--md-sys-color-outline)}}Todo Container .todo-container{height:100%;box-sizing:border-box;padding:var(--spacing-lg);overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth}.todo-container::-webkit-scrollbar{width:8px}.todo-container::-webkit-scrollbar-track{background:var(--md-sys-color-surface-variant);border-radius:var(--radius-sm)}.todo-container::-webkit-scrollbar-thumb{background:var(--md-sys-color-outline-variant);border-radius:var(--radius-sm);transition:background-color var(--transition-normal)}.todo-container::-webkit-scrollbar-thumb:hover{background:var(--md-sys-color-outline)}.todo-header{margin-bottom:var(--spacing-xl)}.page-subtitle{font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);color:var(--md-sys-color-on-surface-variant);margin:0;display:flex;align-items:center;gap:var(--spacing-sm)}.progress-badge{background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);font-size:12px;font-weight:500;padding:4px 8px;border-radius:var(--radius-full);white-space:nowrap}.add-todo-button-section{margin-bottom:24px}.add-todo-toggle-btn{display:flex;justify-content:center;text-align:center;width:100%;align-items:center;gap:8px;padding:var(--spacing-md);background:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary);border:none;border-radius:var(--radius-lg);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px #0000001a}.add-todo-toggle-btn:hover{background:var(--md-sys-color-primary-hover);transform:translateY(-1px);box-shadow:0 4px 8px #00000026}.add-todo-toggle-btn:active{transform:translateY(0)}.add-todo-toggle-btn .material-symbols-outlined{font-size:18px}.add-todo-section{background-color:var(--md-sys-color-surface-container);border-radius:var(--radius-lg);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg);border:1px solid var(--md-sys-color-outline-variant);animation:slideDown .3s ease-out}.section-title{font-family:var(--md-sys-typescale-title-large-font);font-size:var(--md-sys-typescale-title-large-size);font-weight:var(--md-sys-typescale-title-large-weight);color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-md) 0}.add-todo-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.form-field{display:flex;flex-direction:column;gap:var(--spacing-xs)}.form-label{font-size:14px;font-weight:500;color:var(--md-sys-color-on-surface);margin-bottom:4px}.todo-input{padding:var(--spacing-md);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);font-size:16px;color:var(--md-sys-color-on-surface);background-color:var(--md-sys-color-surface);transition:border-color var(--transition-normal);font-family:inherit}.todo-textarea{resize:vertical;min-height:80px;line-height:1.4}.todo-input:focus{outline:none;border-color:var(--md-sys-color-primary)}.todo-input::placeholder{color:var(--md-sys-color-on-surface-variant);opacity:.7}.custom-dropdown{position:relative}.dropdown-toggle{width:100%;padding:var(--spacing-md);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);background-color:var(--md-sys-color-surface);color:var(--md-sys-color-on-surface);font-size:16px;font-family:inherit;cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:all var(--transition-normal)}.dropdown-toggle:hover{border-color:var(--md-sys-color-primary)}.dropdown-toggle:focus{outline:none;border-color:var(--md-sys-color-primary)}.dropdown-toggle-content{display:flex;align-items:center;gap:var(--spacing-sm)}.dropdown-icon-left{font-size:20px;color:var(--md-sys-color-primary)}.dropdown-label{font-weight:500}.dropdown-icon{font-size:24px;color:var(--md-sys-color-on-surface-variant);transition:transform var(--transition-normal)}.dropdown-icon.open{transform:rotate(180deg)}.dropdown-menu-category{position:absolute;top:100%;left:0;right:0;z-index:1000;background-color:var(--md-sys-color-surface-container);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);margin-top:4px;overflow-y:auto;animation:dropdownSlideIn .2s ease-out}.dropdown-item{width:100%;padding:var(--spacing-md);border:none;background:none;color:var(--md-sys-color-on-surface);font-size:16px;font-family:inherit;cursor:pointer;display:flex;align-items:center;gap:var(--spacing-sm);transition:background-color var(--transition-normal)}.dropdown-item.selected{background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container)}@keyframes dropdownSlideIn{0%{opacity:0;transform:translateY(-8px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.custom-date-picker{position:relative}.date-picker-toggle{width:100%;padding:var(--spacing-md);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);background-color:var(--md-sys-color-surface);color:var(--md-sys-color-on-surface);font-size:16px;font-family:inherit;cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:all var(--transition-normal)}.date-picker-toggle:hover{border-color:var(--md-sys-color-primary)}.date-picker-toggle:focus{outline:none;border-color:var(--md-sys-color-primary)}.date-picker-toggle-content{display:flex;align-items:center;gap:var(--spacing-sm)}.date-picker-icon-left{font-size:20px;color:var(--md-sys-color-primary)}.date-picker-label{font-weight:500}.date-picker-actions{display:flex;align-items:center;gap:var(--spacing-xs);margin-left:auto}.clear-date-btn{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border:none;background:none;color:var(--md-sys-color-on-surface-variant);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-normal)}.clear-date-btn:hover{background-color:var(--md-sys-color-error);color:var(--md-sys-color-on-error)}.clear-date-btn .material-symbols-outlined{font-size:16px}.date-picker-dropdown{position:absolute;top:100%;left:0;right:0;z-index:1000;background-color:var(--md-sys-color-surface-container);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);margin-top:4px;padding:var(--spacing-md);animation:dropdownSlideIn .2s ease-out}.date-picker-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-md)}.nav-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:none;color:var(--md-sys-color-on-surface);cursor:pointer;border-radius:var(--radius-lg);transition:all var(--transition-normal)}.nav-btn:hover{background-color:var(--md-sys-color-surface-variant)}.nav-btn .material-symbols-outlined{font-size:20px}.month-year-display{display:flex;flex-direction:column;align-items:center;gap:2px}.month-name{font-size:16px;font-weight:600;color:var(--md-sys-color-on-surface)}.year-name{font-size:12px;color:var(--md-sys-color-on-surface-variant)}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.day-header{display:flex;align-items:center;justify-content:center;height:32px;font-size:12px;font-weight:500;color:var(--md-sys-color-on-surface-variant)}.empty-day{height:32px}.day-cell{display:flex;align-items:center;justify-content:center;height:32px;width:32px;margin:auto;border:none;background:none;color:var(--md-sys-color-on-surface);font-size:14px;cursor:pointer;border-radius:var(--radius-lg);transition:all var(--transition-normal)}.day-cell:hover{background-color:var(--md-sys-color-surface-variant)}.day-cell.today{background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);font-weight:600}.day-cell.selected{background-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary);font-weight:600}.day-cell.today.selected{background-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary)}.add-todo-btn{background-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary);border:none;border-radius:var(--radius-lg);padding:var(--spacing-md);font-size:16px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs);transition:all var(--transition-normal)}.add-todo-btn:hover:not(:disabled){background-color:var(--md-sys-color-primary-hover);transform:translateY(-1px)}.add-todo-btn:disabled{background-color:var(--md-sys-color-surface-variant);color:var(--md-sys-color-on-surface-variant);cursor:not-allowed;opacity:.6}.add-todo-btn .material-symbols-outlined{font-size:20px}.todos-section{margin-bottom:var(--spacing-xl)}.todos-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.todo-card{display:flex;background-color:var(--md-sys-color-surface-container);border-radius:var(--radius-lg);padding:var(--spacing-md);border:1px solid var(--md-sys-color-outline-variant);transition:all .2s;cursor:pointer;color:var(--md-sys-color-on-surface);gap:var(--spacing-md);align-items:start}.todo-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.todo-card.completed{opacity:.7;background-color:var(--md-sys-color-surface-variant)}.todo-checkbox{position:relative;margin-top:2px}.todo-checkbox input[type=checkbox]{opacity:0;position:absolute}.checkbox-label{display:block;width:20px;height:20px;border:2px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-normal);position:relative}.checkbox-label:after{content:"";position:absolute;top:2px;left:6px;width:4px;height:8px;border:solid var(--md-sys-color-on-primary);border-width:0 2px 2px 0;transform:rotate(45deg);opacity:0;transition:opacity var(--transition-normal)}.todo-checkbox input[type=checkbox]:checked+.checkbox-label{background-color:var(--md-sys-color-primary);border-color:var(--md-sys-color-primary)}.todo-checkbox input[type=checkbox]:checked+.checkbox-label:after{opacity:1}.todo-content{flex:1;min-width:0}.todo-title{font-size:16px;font-weight:600;color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-xs) 0;line-height:1.3}.todo-title.completed{text-decoration:line-through;color:var(--md-sys-color-on-surface-variant)}.todo-description{font-size:14px;color:var(--md-sys-color-on-surface-variant);line-height:1.4;margin:0 0 var(--spacing-sm) 0}.todo-meta{display:flex;gap:var(--spacing-md);align-items:center;flex-wrap:wrap}.todo-meta span{padding:var(--spacing-xs) var(--spacing-sm)}.todo-category{font-size:12px;font-weight:500;text-transform:capitalize;border-radius:var(--radius-full);background-color:#fff3;color:inherit;border:1px solid rgba(255,255,255,.3)}[data-theme=dark] .todo-category{background-color:#0003;border-color:#0000004d}.todo-category{background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-primary);border:1px solid var(--md-sys-color-primary-container)}.todo-due-date{font-size:12px;color:var(--md-sys-color-on-surface-variant);font-weight:500}.todo-actions{display:flex;align-items:center}.action-btn{width:36px;height:36px;border-radius:var(--radius-lg);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-normal);background-color:transparent}.action-btn:hover{transform:scale(1.1)}.delete-btn{color:var(--md-sys-color-error)}.delete-btn:hover{background-color:var(--md-sys-color-error);color:var(--md-sys-color-on-error)}.action-btn .material-symbols-outlined{font-size:20px}.no-todos{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xxl) var(--spacing-lg);text-align:center;color:var(--md-sys-color-on-surface-variant)}.no-todos-icon{margin-bottom:var(--spacing-lg)}.no-todos-icon .material-symbols-outlined{font-size:4rem;color:var(--md-sys-color-primary);opacity:.6}.no-todos h3{font-family:var(--md-sys-typescale-headline-small-font);font-size:var(--md-sys-typescale-headline-small-size);font-weight:var(--md-sys-typescale-headline-small-weight);color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-md) 0}.no-todos p{font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);color:var(--md-sys-color-on-surface-variant);margin:0;max-width:400px;line-height:1.5}@media (max-width: 768px){.todo-container{padding:var(--spacing-md)}.page-title{font-size:1.5rem}.add-todo-form{gap:var(--spacing-sm)}.form-row{grid-template-columns:1fr;gap:var(--spacing-sm)}.todo-card{padding:var(--spacing-md)}}@media (max-width: 480px){.todo-checkbox{grid-area:checkbox}.todo-content{grid-area:content}.todo-actions{grid-area:actions;justify-self:end}}.todo-input:focus-visible,.dropdown-toggle:focus-visible,.dropdown-item:focus-visible,.add-todo-btn:focus-visible,.action-btn:focus-visible{outline:2px solid var(--md-sys-color-primary);outline-offset:2px}@keyframes todoSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.todo-card{animation:todoSlideIn .4s ease-out;animation-fill-mode:both;animation-delay:calc(var(--card-index, 0) * .1s)}@media (prefers-reduced-motion: reduce){.todo-card,.action-btn,.add-todo-btn,.dropdown-toggle,.dropdown-icon,.dropdown-menu{transition:none;animation:none}.todo-card:hover,.add-todo-btn:hover:not(:disabled){transform:none}.action-btn:hover,.dropdown-icon.open{transform:none}}.teacher-navbar{position:fixed;left:0;right:0;top:0;z-index:var(--z-modal);background-color:var(--md-sys-color-surface);border-bottom:1px solid var(--md-sys-color-outline-variant);box-shadow:var(--shadow-sm);height:64px;overflow:visible}@media (min-width: 768px){.user-profile-container,.teacher-navbar-user-profile{background-color:transparent}.teacher-navbar{border-bottom:none;box-shadow:none;background-color:var(--md-sys-color-primary-container)}.teacher-navbar-dropdown-menu{background-color:var(--md-sys-color-primary-container)}[data-theme=dark] .teacher-navbar,[data-theme=dark] .teacher-navbar-dropdown-menu{background-color:var(--md-sys-color-surface-container-low)}}.teacher-navbar-container{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);padding-left:20px;margin:0 auto;height:64px}.teacher-navbar-left{display:flex;align-items:center}.teacher-navbar-right{display:flex;align-items:center;gap:var(--spacing-md)}.teacher-navbar-icon-button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;border-radius:var(--radius-full);background-color:transparent;color:var(--md-sys-color-on-surface-variant);cursor:pointer}.teacher-navbar-icon-button:hover{background-color:var(--md-sys-color-surface-variant);color:var(--md-sys-color-on-surface)}.teacher-navbar-icon-button:active{transform:scale(.95)}.teacher-navbar-user-profile{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm);border-radius:var(--radius-lg);cursor:pointer;border:none}.teacher-navbar-user-profile:hover .teacher-navbar-user-avatar{background-color:var(--md-sys-color-surface-variant)}.teacher-navbar-dropdown-menu{position:absolute;top:100%;right:0;margin-top:var(--spacing-xs);background-color:var(--md-sys-color-surface-container);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);min-width:160px;overflow:hidden;z-index:var(--z-modal);animation:dropdownFadeIn .2s ease-out}.teacher-navbar-dropdown-item{display:flex;align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-md);border:none;background:none;color:var(--md-sys-color-on-surface);font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);text-align:left;cursor:pointer;transition:background-color var(--transition-fast)}.teacher-navbar-dropdown-item:hover{background-color:var(--md-sys-color-surface-variant)}.teacher-navbar-dropdown-item:last-child:hover{background-color:var(--md-sys-color-error-container);color:var(--md-sys-color-on-error-container)}.teacher-navbar-dropdown-item .material-symbols-outlined{font-size:20px}.teacher-navbar-user-info{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.teacher-navbar-user-name{font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);font-weight:500;color:var(--md-sys-color-on-surface);line-height:1.2}.teacher-navbar-user-avatar{width:40px;height:40px;border-radius:var(--radius-full);overflow:hidden;border:2px solid var(--md-sys-color-outline-variant)}@media (max-width: 767px){.user-profile-container,.teacher-navbar-user-profile{background-color:transparent}}@media (max-width: 640px){.teacher-navbar-user-profile{background-color:transparent}.teacher-navbar-container{padding:var(--spacing-sm) var(--spacing-md)}.teacher-navbar-user-info{display:none}.app-title{font-size:18px}}.teacher-menu-navigation-rail{position:fixed;top:64px;left:0;bottom:0;width:73px;z-index:var(--z-sticky);padding:var(--spacing-sm) var(--spacing-sm);background-color:var(--md-sys-color-surface);border-right:none;box-shadow:none;display:none;transition:background-color var(--transition-normal),gap .3s,width .15s cubic-bezier(.2,.9,.2,1);overflow-y:auto;overflow-x:hidden}.teacher-menu-rail-container{display:flex;flex-direction:column;align-items:start;justify-content:start;gap:var(--spacing-sm);height:100%;width:100%}.teacher-menu-rail-item{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-md) var(--spacing-sm);border:none;background:transparent;border-radius:var(--radius-full);cursor:pointer;width:56px;height:56px;position:relative}.teacher-menu-rail-item:hover{background-color:var(--md-sys-color-surface-variant);border-radius:var(--radius-full)}.teacher-menu-rail-item.active{background-color:var(--md-sys-color-on-primary);color:var(--md-sys-color-on-primary-container);border-radius:var(--radius-full)}.teacher-menu-rail-icon-container{position:relative;display:flex;align-items:center;justify-content:center;width:32px;height:32px}.teacher-menu-rail-icon{font-size:24px;color:var(--md-sys-color-on-surface-variant)}.teacher-menu-rail-item.active .teacher-menu-rail-icon{color:var(--md-sys-color-on-primary-container);font-variation-settings:"FILL" 1}.teacher-menu-rail-label{font-family:var(--md-sys-typescale-label-small-font);font-size:10px;font-weight:var(--md-sys-typescale-label-small-weight);color:var(--md-sys-color-on-surface-variant);text-align:center;line-height:1.2;max-width:64px;word-wrap:break-word}.teacher-menu-navigation-rail:not(.collapsed) .teacher-menu-rail-label{display:none}.teacher-menu-navigation-rail:not(.collapsed) .teacher-menu-rail-item{display:flex;align-items:center;justify-content:center}.teacher-menu-navigation-rail.collapsed{width:230px}.teacher-menu-navigation-rail.collapsed .teacher-menu-rail-item{display:flex;flex-direction:row;justify-content:start;align-items:center;width:100%;padding:var(--spacing-md) var(--spacing-md);border-radius:var(--radius-full)}.teacher-menu-navigation-rail.collapsed .teacher-menu-rail-icon-container{justify-content:start}.teacher-menu-navigation-rail.collapsed .teacher-menu-rail-label{font-size:14px;max-width:none;white-space:nowrap}.teacher-menu-rail-item.active .teacher-menu-rail-label{color:var(--md-sys-color-on-primary-container);font-weight:600}.teacher-menu-bottom-navigation{position:fixed;bottom:0;left:0;right:0;z-index:var(--z-sticky);background-color:var(--md-sys-color-surface);border-top:1px solid var(--md-sys-color-outline-variant);box-shadow:var(--shadow-sm);display:block;transition:background-color var(--transition-normal),border-color var(--transition-fast),box-shadow var(--transition-fast)}.teacher-menu-nav-container{display:flex;justify-content:space-around;align-items:center;padding:var(--spacing-sm) var(--spacing-md);max-width:600px;margin:0 auto;height:64px}.teacher-menu-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:var(--spacing-sm);border:none;background:transparent;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast),background-color var(--transition-fast),color var(--transition-fast);min-width:64px;position:relative}.teacher-menu-nav-item:active{transform:scale(.95)}.teacher-menu-nav-item.active{color:var(--md-sys-color-on-primary-container);transition:background-color var(--transition-fast),color var(--transition-fast)}.teacher-menu-nav-icon-container{position:relative;display:flex;align-items:center;justify-content:center;width:32px;height:32px}.teacher-menu-nav-icon{font-size:24px;color:var(--md-sys-color-on-surface-variant);transition:color var(--transition-fast)}.teacher-menu-nav-item.active .teacher-menu-nav-icon{color:var(--md-sys-color-on-primary-container);font-variation-settings:"FILL" 1}.teacher-menu-nav-label{font-family:var(--md-sys-typescale-label-large-font);font-size:12px;font-weight:var(--md-sys-typescale-label-large-weight);color:var(--md-sys-color-on-surface-variant);transition:color var(--transition-fast);text-align:center;line-height:1.2}.teacher-menu-nav-item.active .teacher-menu-nav-label{color:var(--md-sys-color-on-primary-container);font-weight:600}@media (min-width: 768px){.teacher-menu-navigation-rail{display:block;background-color:var(--md-sys-color-primary-container)}.teacher-menu-bottom-navigation{display:none}[data-theme=dark] .teacher-menu-navigation-rail{background-color:var(--md-sys-color-surface-container-low)}}@media (max-width: 767px){.teacher-menu-navigation-rail{display:none}.teacher-menu-bottom-navigation{display:block}}@media (max-width: 480px){.teacher-menu-nav-container{padding:var(--spacing-xs) var(--spacing-sm)}.teacher-menu-nav-item{min-width:56px;padding:6px}.teacher-menu-nav-icon{font-size:22px}}[data-theme=dark] .teacher-menu-bottom-navigation{box-shadow:0 -2px 8px #0000004d}@supports (padding-bottom: env(safe-area-inset-bottom)){.teacher-menu-bottom-navigation{padding-bottom:env(safe-area-inset-bottom)}}.schedule-container{margin:0 auto;color:var(--md-sys-color-on-surface);padding:var(--spacing-lg);height:100%;box-sizing:border-box;overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth}.schedule-container::-webkit-scrollbar{width:8px}.schedule-container::-webkit-scrollbar-track{background:var(--md-sys-color-surface-variant);border-radius:var(--radius-sm)}.schedule-container::-webkit-scrollbar-thumb{background:var(--md-sys-color-outline-variant);border-radius:var(--radius-sm);transition:background-color var(--transition-normal)}.schedule-container::-webkit-scrollbar-thumb:hover{background:var(--md-sys-color-outline)}.grades-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);gap:var(--spacing-md)}.schedule-page-title{font-family:var(--md-sys-typescale-headline-large-font);font-weight:var(--md-sys-typescale-headline-large-weight);color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-xs) 0}.schedule-page-subtitle{font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);color:var(--md-sys-color-on-surface-variant);margin:0}.week-navigation{background-color:var(--md-sys-color-surface);padding:var(--spacing-lg) var(--spacing-xl)}.week-title{display:flex;align-items:center;justify-content:center;margin-bottom:var(--spacing-lg)}.week-title span{font-size:1.1rem;font-weight:600;color:var(--md-sys-color-on-surface)}.schedule-day-selector{display:flex;gap:var(--spacing-md)}.schedule-day-btn{background-color:var(--md-sys-color-surface-variant);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);padding:var(--spacing-md) var(--spacing-lg);cursor:pointer;transition:all .2s;flex:1;text-align:center;color:var(--md-sys-color-on-surface-variant)}.schedule-day-btn:hover{background-color:var(--md-sys-color-surface);border-color:var(--md-sys-color-outline)}.schedule-day-btn.active{background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);border-color:var(--md-sys-color-primary-container)}.day-name{font-size:1rem;font-weight:500}.day-name-full{display:none;font-size:1rem;font-weight:500}.classes-section{background-color:var(--md-sys-color-surface);border-radius:0 0 var(--radius-xl) var(--radius-xl)}.classes-section h2{color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-xl) 0;font-size:1.5rem;font-weight:600}.schedule-classes-grid{display:flex;flex-direction:column;gap:var(--spacing-md)}.schedule-class-card{background-color:var(--md-sys-color-surface-container);border-radius:var(--radius-lg);padding:var(--spacing-lg);border:1px solid var(--md-sys-color-outline-variant);transition:all .2s;cursor:pointer;color:var(--md-sys-color-on-surface)}.schedule-class-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.schedule-class-card.blue{background-color:var(--md-sys-color-primary-container);border-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary-container)}.schedule-class-card.blue .schedule-class-name,.schedule-class-card.blue .schedule-class-time,.schedule-class-card.blue .schedule-class-location,.schedule-class-card.blue .schedule-class-teacher{color:var(--md-sys-color-on-primary-container)}.schedule-class-card.green{background-color:#e8f5e8;border-color:#4caf50;color:#1b5e20}[data-theme=dark] .schedule-class-card.green{background-color:#263f26;border-color:#66bb6a;color:#c8e6c9}.schedule-class-card.green .schedule-class-name,.schedule-class-card.green .schedule-class-time,.schedule-class-card.green .schedule-class-location,.schedule-class-card.green .schedule-class-teacher{color:inherit}.schedule-class-card.purple{background-color:#f3e5f5;border-color:#9c27b0;color:#4a148c}[data-theme=dark] .schedule-class-card.purple{background-color:#3a2f3b;border-color:#ba68c8;color:#e1bee7}.schedule-class-card.purple .schedule-class-name,.schedule-class-card.purple .schedule-class-time,.schedule-class-card.purple .schedule-class-location,.schedule-class-card.purple .schedule-class-teacher{color:inherit}.schedule-class-card.yellow{background-color:#fff8e1;border-color:#ffc107;color:#ff6f00}[data-theme=dark] .schedule-class-card.yellow{background-color:#3e3823;border-color:#ffcc02;color:#fff3c4}.schedule-class-card.yellow .schedule-class-name,.schedule-class-card.yellow .schedule-class-time,.schedule-class-card.yellow .schedule-class-location,.schedule-class-card.yellow .schedule-class-teacher{color:inherit}.schedule-class-card.orange{background-color:#fff3e0;border-color:#ff9800;color:#e65100}[data-theme=dark] .schedule-class-card.orange{background-color:#3e2f23;border-color:#ffb74d;color:#ffe0b2}.schedule-class-card.orange .schedule-class-name,.schedule-class-card.orange .schedule-class-time,.schedule-class-card.orange .schedule-class-location,.schedule-class-card.orange .schedule-class-teacher{color:inherit}.schedule-class-card.gray{background-color:var(--md-sys-color-surface-variant);border-color:var(--md-sys-color-outline-variant);color:var(--md-sys-color-on-surface)}.schedule-class-card.gray .schedule-class-name,.schedule-class-card.gray .schedule-class-time,.schedule-class-card.gray .schedule-class-location,.schedule-class-card.gray .schedule-class-teacher{color:var(--md-sys-color-on-surface)}.schedule-class-card.pink{background-color:#fce4ec;border-color:#e91e63;color:#880e4f}[data-theme=dark] .schedule-class-card.pink{background-color:#3b2832;border-color:#f06292;color:#f8bbd9}.schedule-class-card.pink .schedule-class-name,.schedule-class-card.pink .schedule-class-time,.schedule-class-card.pink .schedule-class-location,.schedule-class-card.pink .schedule-class-teacher{color:inherit}.schedule-class-card.light-purple{background-color:#ede7f6;border-color:#673ab7;color:#311b92}[data-theme=dark] .schedule-class-card.light-purple{background-color:#332d3a;border-color:#9575cd;color:#d1c4e9}.schedule-class-card.light-purple .schedule-class-name,.schedule-class-card.light-purple .schedule-class-time,.schedule-class-card.light-purple .schedule-class-location,.schedule-class-card.light-purple .schedule-class-teacher{color:inherit}.class-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-md)}.schedule-class-name{margin:0;font-size:1.125rem;font-weight:600}.schedule-class-time{font-size:.875rem;font-weight:500;display:flex;align-items:center;gap:var(--spacing-xs);opacity:.9}.class-details{display:flex;gap:var(--spacing-xl);flex-wrap:wrap}.schedule-class-location,.schedule-class-teacher{display:flex;align-items:center;gap:var(--spacing-xs);font-size:.875rem;opacity:.85}.location-icon,.teacher-icon{font-size:.75rem}.teacher-mobile-dropdown{display:none;position:relative}.teacher-dropdown-toggle-date{width:100%;background-color:var(--md-sys-color-surface-variant);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);padding:var(--spacing-md) var(--spacing-lg);cursor:pointer;transition:all .2s;display:flex;justify-content:space-between;align-items:center;color:var(--md-sys-color-on-surface-variant);font-size:1rem;font-weight:500}.teacher-dropdown-toggle-date:hover{background-color:var(--md-sys-color-surface);border-color:var(--md-sys-color-outline)}.teacher-dropdown-icon{transition:transform .2s;font-size:1.2rem}.teacher-dropdown-icon.open{transform:rotate(180deg)}.teacher-dropdown-menu{position:absolute;top:100%;left:0;right:0;background-color:var(--md-sys-color-surface);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);box-shadow:0 4px 12px #0000001a;z-index:1000;margin-top:var(--spacing-xs)}.teacher-dropdown-item{width:100%;padding:var(--spacing-md) var(--spacing-lg);border:none;background-color:transparent;color:var(--md-sys-color-on-surface);cursor:pointer;transition:background-color .2s;text-align:left;font-size:1rem;font-weight:500}.teacher-dropdown-item:hover{background-color:var(--md-sys-color-surface-variant)!important}.teacher-dropdown-item.selected{background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container)}.teacher-dropdown-item.selected:hover{background-color:var(--md-sys-color-primary-container)!important}.no-classes-message{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xxl) var(--spacing-lg);text-align:center;color:var(--md-sys-color-on-surface-variant)}.no-classes-icon{margin-bottom:var(--spacing-lg)}.no-classes-icon .material-symbols-outlined{font-size:4rem;color:var(--md-sys-color-primary);opacity:.6}.no-classes-message h3{font-family:var(--md-sys-typescale-headline-small-font);font-size:var(--md-sys-typescale-headline-small-size);font-weight:var(--md-sys-typescale-headline-small-weight);color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-md) 0}.no-classes-message p{font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);color:var(--md-sys-color-on-surface-variant);margin:0;max-width:300px}@media (max-width: 768px){.schedule-schedule-header h1{font-size:1.5rem}.week-navigation{padding:var(--spacing-md) var(--spacing-lg)}.schedule-day-selector{display:none}.teacher-mobile-dropdown{display:block}.classes-section{padding:var(--spacing-sm)}.class-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.class-details{justify-content:space-between}.class-header{flex-direction:row;align-items:center}}@media (max-width: 480px){.day-selector{flex-direction:column}.day-name{display:none}.day-name-full{display:block}.class-details{justify-content:space-between}.class-header{flex-direction:row;align-items:center}.schedule-day-btn{flex:none}.week-title{gap:var(--spacing-md)}}.class-mgmt-page-header{margin-bottom:var(--spacing-xl)}.header-content{max-width:800px}.class-mgmt-page-title{font-size:var(--md-sys-typescale-headline-large-size);font-weight:var(--md-sys-typescale-headline-large-weight);margin:0 0 var(--spacing-sm) 0;color:var(--md-sys-color-on-surface)}.class-mgmt-page-subtitle{font-size:var(--md-sys-typescale-body-large-size);color:var(--md-sys-color-on-surface-variant);margin:0;line-height:1.5}.class-mgmt-stats-section{margin-bottom:var(--spacing-2xl)}.class-mgmt-stats-grid{display:flex;gap:var(--spacing-lg);justify-content:space-between;align-items:stretch}.class-mgmt-stat-card{background-color:var(--md-sys-color-surface-container);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);display:flex;align-items:center;transition:all var(--transition-normal);border:1px solid var(--md-sys-color-outline-variant);flex:1;min-width:0;flex-direction:column}.class-mgmt-stat-icon{width:56px;height:56px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-content{flex-direction:column;display:flex;justify-content:center;align-items:center}.class-mgmt-stat-value{font-size:40px!important;font-weight:600;line-height:1;margin-bottom:var(--spacing-xs)}.stat-value .odometer-container,.stat-value .odometer,.stat-value .odometer .odometer-digit{font-size:40px!important;font-weight:600!important}.class-mgmt-stat-label{font-size:var(--md-sys-typescale-title-small-size);font-weight:var(--md-sys-typescale-title-large-weight);color:var(--md-sys-color-on-surface);margin-bottom:var(--spacing-xs)}.stat-description{font-size:var(--md-sys-typescale-label-large-size);color:var(--md-sys-color-on-surface-variant)}.class-mgmt-section-title{font-size:var(--md-sys-typescale-title-large-size);font-weight:var(--md-sys-typescale-title-large-weight);margin:0 0 var(--spacing-lg) 0;color:var(--md-sys-color-on-surface)}.year-levels-grid{display:grid;gap:var(--spacing-xl)}.year-level-container{background-color:var(--md-sys-color-surface-container);border-radius:var(--radius-xl);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);border:1px solid var(--md-sys-color-outline-variant)}.year-level-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--md-sys-color-outline-variant)}.year-level-info{display:flex;align-items:center;gap:var(--spacing-md)}.year-level-icon{width:48px;height:48px;background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center}.year-level-icon .material-symbols-outlined{font-size:24px}.year-level-details{flex:1}.year-level-title{font-size:var(--md-sys-typescale-title-large-size);font-weight:var(--md-sys-typescale-title-large-weight);margin:0 0 var(--spacing-xs) 0;color:var(--md-sys-color-on-surface)}.year-level-summary{font-size:var(--md-sys-typescale-body-large-size);color:var(--md-sys-color-on-surface-variant);margin:0}.sections-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--spacing-md)}.section-card{background-color:var(--md-sys-color-surface);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);padding:var(--spacing-lg);transition:all var(--transition-normal);display:flex;justify-content:space-between;align-items:center;cursor:pointer;width:100%;text-align:left;font-family:inherit}.section-card:hover{background-color:var(--md-sys-color-surface-container-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.section-card:focus{outline:none;border-color:var(--md-sys-color-primary);box-shadow:0 0 0 2px var(--md-sys-color-primary-container)}.section-card:active{transform:translateY(0);background-color:var(--md-sys-color-surface-container)}.section-name{font-size:var(--md-sys-typescale-title-medium-size);font-weight:var(--md-sys-typescale-title-medium-weight);color:var(--md-sys-color-on-surface);margin:0}.section-students{font-size:var(--md-sys-typescale-body-large-size);color:var(--md-sys-color-on-surface-variant);margin:0}.student-count{display:flex;align-items:center;gap:var(--spacing-xs);background-color:var(--md-sys-color-surface-variant);padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-md);width:fit-content}.student-count .material-symbols-outlined{font-size:18px;color:var(--md-sys-color-on-surface-variant)}.count-number{font-weight:600;color:var(--md-sys-color-on-surface)}.count-label{font-size:var(--md-sys-typescale-label-large-size);color:var(--md-sys-color-on-surface-variant)}@media (max-width: 1024px){.class-mgmt-stats-grid{gap:var(--spacing-md)}.sections-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media (max-width: 768px){.class-management-container{padding:var(--spacing-lg)}.sections-grid{grid-template-columns:1fr}.year-level-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.class-mgmt-stat-card,.year-level-container{padding:var(--spacing-md)}.class-mgmt-stat-label{display:none}}@media (max-width: 480px){.class-mgmt-page-title,.class-mgmt-stat-value{font-size:24px}.class-mgmt-stat-card{flex-direction:column;text-align:center;gap:var(--spacing-sm)}.stat-content{text-align:center}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.class-mgmt-stat-card,.year-level-container,.section-card{animation:fadeInUp .6s ease-out}.class-mgmt-stat-card:focus-within,.section-card:focus-within{box-shadow:var(--shadow-lg)}@media print{.class-management-container{background-color:#fff;color:#000}.class-mgmt-stat-card,.year-level-container,.section-card{box-shadow:none;border:1px solid #ccc}}.class-management-container{margin:0 auto;color:var(--md-sys-color-on-surface);padding:var(--spacing-lg);height:100%;box-sizing:border-box;overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth}.class-management-container::-webkit-scrollbar{width:8px}.class-management-container::-webkit-scrollbar-track{background:var(--md-sys-color-surface-variant);border-radius:var(--radius-sm)}.class-management-container::-webkit-scrollbar-thumb{background:var(--md-sys-color-outline-variant);border-radius:var(--radius-sm);transition:background-color var(--transition-normal)}.class-management-container::-webkit-scrollbar-thumb:hover{background:var(--md-sys-color-outline)}.classlist-page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-xl);gap:var(--spacing-lg)}.header-navigation{margin-bottom:var(--spacing-md)}.back-button{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background:var(--md-sys-color-secondary-container);color:var(--md-sys-color-on-secondary-container);border:none;border-radius:var(--radius-md);font-size:var(--md-sys-typescale-body-medium-size);font-weight:var(--md-sys-typescale-body-medium-weight);cursor:pointer;transition:all var(--transition-normal)}.back-button:hover{background:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);transform:translateY(-1px);box-shadow:var(--elevation-1)}.back-button:active{transform:translateY(0);box-shadow:none}.back-button .material-symbols-outlined{font-size:20px}.classlist-page-title{font-size:var(--md-sys-typescale-headline-large-size);font-weight:var(--md-sys-typescale-headline-large-weight);margin:0 0 var(--spacing-sm) 0;color:var(--md-sys-color-on-surface)}.classlist-page-subtitle{font-size:var(--md-sys-typescale-body-large-size);color:var(--md-sys-color-on-surface-variant);margin:0;line-height:1.5}.classlist-stats{display:flex;align-items:center;gap:var(--spacing-md)}.stat-item{display:flex;align-items:center;gap:var(--spacing-sm);background-color:var(--md-sys-color-surface-container);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-lg);border:1px solid var(--md-sys-color-outline-variant);font-size:var(--md-sys-typescale-body-medium-size);color:var(--md-sys-color-on-surface)}.stat-item .material-symbols-outlined{font-size:20px;color:var(--md-sys-color-primary)}.grading-config-section{margin-bottom:var(--spacing-2xl);background-color:var(--md-sys-color-surface-container);border-radius:var(--radius-lg);padding:var(--spacing-xl);border:1px solid var(--md-sys-color-outline-variant)}.config-title{font-size:var(--md-sys-typescale-title-large-size);font-weight:var(--md-sys-typescale-title-large-weight);margin:0 0 var(--spacing-lg) 0;color:var(--md-sys-color-on-surface)}.config-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-lg)}.config-item{display:flex;flex-direction:column;gap:var(--spacing-sm)}.config-label{font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);color:var(--md-sys-color-on-surface);margin-bottom:var(--spacing-xs)}.classlist-column-controls{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-lg);background-color:var(--md-sys-color-surface);border:2px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-md);gap:var(--spacing-md)}.classlist-column-count{flex:1}.classlist-column-text{font-size:var(--md-sys-typescale-body-medium-size);color:var(--md-sys-color-on-surface);font-weight:var(--md-sys-typescale-body-medium-weight)}.classlist-action-buttons{display:flex;gap:var(--spacing-xs)}.classlist-add-column-button{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-normal);font-size:18px;background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container)}.classlist-add-column-button:hover:not(:disabled){background-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary);transform:translateY(-1px);box-shadow:var(--elevation-1)}.classlist-add-column-button:disabled{opacity:.4;cursor:not-allowed;transform:none;box-shadow:none}.classlist-add-column-button:active:not(:disabled){transform:translateY(0);box-shadow:none}.classlist-submit-section{display:flex;justify-content:flex-end;padding:var(--spacing-lg) 0;border-top:1px solid var(--md-sys-color-outline-variant)}.classlist-submit-button{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-md);background:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary);border:none;border-radius:var(--radius-md);font-size:14px;font-weight:var(--md-sys-typescale-body-medium-weight);cursor:pointer;transition:all var(--transition-normal);box-shadow:var(--elevation-1);border:1px solid var(--md-sys-color-primary)}.classlist-submit-button:hover{background:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);border:1px solid var(--md-sys-color-primary)}.classlist-submit-button:active{transform:translateY(0);box-shadow:var(--elevation-1)}.classlist-submit-button .material-symbols-outlined{font-size:20px}.grading-table-section{background-color:var(--md-sys-color-surface);border-radius:var(--radius-lg);border:1px solid var(--md-sys-color-outline-variant);overflow:hidden}.table-container{overflow-x:auto;overflow-y:visible}.table-container::-webkit-scrollbar{height:8px}.table-container::-webkit-scrollbar-track{background:var(--md-sys-color-surface-variant)}.table-container::-webkit-scrollbar-thumb{background:var(--md-sys-color-outline-variant);border-radius:var(--radius-sm)}.table-container::-webkit-scrollbar-thumb:hover{background:var(--md-sys-color-outline)}.grading-table{width:100%;border-collapse:collapse;font-size:var(--md-sys-typescale-body-small-size);background-color:var(--md-sys-color-surface);min-width:1200px}.grading-table th,.grading-table td{border:1px solid var(--md-sys-color-outline-variant);text-align:center;vertical-align:middle;position:relative}.grading-table thead th{background-color:var(--md-sys-color-surface-container-high);color:var(--md-sys-color-on-surface);font-weight:var(--md-sys-typescale-label-large-weight);padding:var(--spacing-md);position:sticky;top:0;z-index:10}.student-id-header{min-width:100px;background-color:var(--md-sys-color-primary-container)!important;color:var(--md-sys-color-on-primary-container)!important;left:0;z-index:11!important}.student-name-header{min-width:150px;background-color:var(--md-sys-color-primary-container)!important;color:var(--md-sys-color-on-primary-container)!important;left:100px;z-index:11!important}.category-header{background-color:var(--md-sys-color-secondary-container)!important;color:var(--md-sys-color-on-secondary-container)!important;font-size:var(--md-sys-typescale-label-medium-size);font-weight:600}.score-header{min-width:80px;font-size:var(--md-sys-typescale-label-small-size)}.average-header{min-width:80px;background-color:var(--md-sys-color-primary-container)!important;color:var(--md-sys-color-on-primary-container)!important;font-weight:600}.final-grade-header{min-width:100px;background-color:var(--md-sys-color-primary-container)!important;color:var(--md-sys-color-on-primary-container)!important;font-weight:600}.student-row{transition:background-color var(--transition-normal)}.student-row:hover{background-color:var(--md-sys-color-surface-container-hover)}.student-row:nth-child(2n){background-color:var(--md-sys-color-surface-variant)}.student-row:nth-child(2n):hover{background-color:var(--md-sys-color-surface-container-hover)}.student-id-cell{text-align:center!important;padding:var(--spacing-md);background-color:var(--md-sys-color-surface-container-low);position:sticky;left:0;z-index:5;min-width:100px}.student-id-text{font-size:var(--md-sys-typescale-label-medium-size);color:var(--md-sys-color-on-surface-variant);font-weight:500}.student-name-cell{text-align:left!important;padding:var(--spacing-md);background-color:var(--md-sys-color-surface-container-low);position:sticky;left:100px;z-index:5;min-width:150px}.student-name-text{font-size:var(--md-sys-typescale-body-medium-size);color:var(--md-sys-color-on-surface);font-weight:500}.score-cell{padding:var(--spacing-xs);background-color:var(--md-sys-color-surface)}.grade-input{width:100%;max-width:60px;padding:var(--spacing-xs) var(--spacing-sm);border:1px solid transparent;border-radius:var(--radius-sm);background-color:transparent;text-align:center;font-size:var(--md-sys-typescale-body-small-size);color:var(--md-sys-color-on-surface);transition:all var(--transition-normal)}.grade-input:focus{outline:none;border-color:var(--md-sys-color-primary);background-color:var(--md-sys-color-surface);box-shadow:0 0 0 2px var(--md-sys-color-primary-container)}.grade-input:hover{background-color:var(--md-sys-color-surface-container-hover)}.average-cell{padding:var(--spacing-sm);background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);font-weight:600;font-size:var(--md-sys-typescale-body-medium-size)}.final-grade-cell{padding:var(--spacing-sm);background-color:var(--md-sys-color-primary-container)}.final-grade{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-md);font-weight:600;font-size:var(--md-sys-typescale-body-medium-size);min-width:50px}.final-grade.excellent{background-color:var(--grade-excellent);color:#fff}.final-grade.good{background-color:var(--grade-good);color:#fff}.final-grade.satisfactory{background-color:var(--grade-satisfactory);color:#fff}.final-grade.needs-improvement{background-color:var(--grade-needs-improvement);color:#fff}.final-grade.no-grade{background-color:var(--grade-no-grade);color:#fff}@media (max-width: 768px){.class-management-container{padding:var(--spacing-md)}.classlist-page-header{flex-direction:column;gap:var(--spacing-md)}.config-grid{grid-template-columns:1fr}.grading-table{font-size:var(--md-sys-typescale-body-small-size)}.student-info-header,.student-info{min-width:150px}.score-header,.average-header{min-width:60px}.grade-input{max-width:50px;font-size:var(--md-sys-typescale-label-small-size)}}@media (max-width: 480px){.grading-config-section{padding:var(--spacing-lg)}.config-title{font-size:var(--md-sys-typescale-title-medium-size)}.classlist-page-title{font-size:var(--md-sys-typescale-headline-medium-size)}.stat-item{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--md-sys-typescale-body-small-size)}}.custom-modal-overlay.svelte-14ummkf{position:fixed;inset:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;animation:svelte-14ummkf-fadeIn .3s ease-out}.custom-modal-content.svelte-14ummkf{background-color:var(--md-sys-color-surface-container-high);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);box-shadow:0 8px 32px #0000004d;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;width:100%;max-width:450px;margin:var(--spacing-lg);animation:svelte-14ummkf-slideIn .3s cubic-bezier(.34,1.56,.64,1)}.custom-modal-header.svelte-14ummkf{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-lg);border-bottom:1px solid var(--md-sys-color-outline-variant);background-color:var(--md-sys-color-surface-container)}.custom-modal-title.svelte-14ummkf{margin:0;font-family:var(--md-sys-typescale-headline-small-font);font-size:var(--md-sys-typescale-headline-small-size);font-weight:var(--md-sys-typescale-headline-small-weight);color:var(--md-sys-color-on-surface)}.custom-modal-close-btn.svelte-14ummkf{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;background:none;color:var(--md-sys-color-on-surface-variant);cursor:pointer;border-radius:var(--radius-sm);transition:background-color var(--transition-fast)}.custom-modal-close-btn.svelte-14ummkf:hover{background-color:var(--md-sys-color-surface-container-highest)}.custom-modal-close-btn.svelte-14ummkf:focus-visible{outline:2px solid var(--md-sys-color-primary);outline-offset:2px}.custom-modal-close-btn.svelte-14ummkf .material-symbols-outlined:where(.svelte-14ummkf){font-size:20px}.custom-modal-body.svelte-14ummkf{padding:var(--spacing-lg);overflow-y:auto;flex:1;color:var(--md-sys-color-on-surface);background-color:var(--md-sys-color-surface);display:flex;flex-direction:column;gap:var(--spacing-lg)}.assessment-info.svelte-14ummkf{text-align:center;padding-bottom:var(--spacing-md);border-bottom:1px solid var(--md-sys-color-outline-variant)}.form-group.svelte-14ummkf{display:flex;flex-direction:column;gap:var(--spacing-sm)}.form-label.svelte-14ummkf{font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);font-weight:500;color:var(--md-sys-color-on-surface)}.form-input.svelte-14ummkf{padding:var(--spacing-md);border:1px solid var(--md-sys-color-outline);border-radius:var(--radius-sm);background-color:var(--md-sys-color-surface-container-lowest);color:var(--md-sys-color-on-surface);font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);transition:border-color var(--transition-fast)}.form-input.svelte-14ummkf:focus{outline:none;border-color:var(--md-sys-color-primary);box-shadow:0 0 0 2px var(--md-sys-color-primary-container)}.form-input.error.svelte-14ummkf{border-color:var(--md-sys-color-error)}.error-message.svelte-14ummkf{font-family:var(--md-sys-typescale-body-small-font);font-size:var(--md-sys-typescale-body-small-size);color:var(--md-sys-color-error)}.modal-actions.svelte-14ummkf{display:flex;gap:var(--spacing-md);justify-content:flex-end;padding-top:var(--spacing-md);border-top:1px solid var(--md-sys-color-outline-variant)}.btn.svelte-14ummkf{padding:var(--spacing-sm) var(--spacing-lg);border:none;border-radius:var(--radius-sm);font-family:var(--md-sys-typescale-label-large-font);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);cursor:pointer;transition:all var(--transition-fast);min-width:80px}.btn-secondary.svelte-14ummkf{background-color:var(--md-sys-color-surface-container-high);color:var(--md-sys-color-on-surface);border:1px solid var(--md-sys-color-outline)}.btn-secondary.svelte-14ummkf:hover{background-color:var(--md-sys-color-surface-container-highest)}.btn-primary.svelte-14ummkf{background-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary)}.btn-primary.svelte-14ummkf:hover{background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container)}.btn-danger.svelte-14ummkf{background-color:var(--md-sys-color-error);color:var(--md-sys-color-on-error)}.btn-danger.svelte-14ummkf:hover{background-color:var(--md-sys-color-error-container);color:var(--md-sys-color-on-error-container)}.btn.svelte-14ummkf:disabled{opacity:.6;cursor:not-allowed}.tab-navigation.svelte-14ummkf{display:flex;border-bottom:1px solid var(--md-sys-color-outline-variant);background-color:var(--md-sys-color-surface-container)}.tab-button.svelte-14ummkf{flex:1;display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-md) var(--spacing-lg);border:none;background:none;color:var(--md-sys-color-on-surface-variant);font-family:var(--md-sys-typescale-label-large-font);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);cursor:pointer;transition:all var(--transition-fast);border-bottom:2px solid transparent}.tab-button.svelte-14ummkf:hover{background-color:var(--md-sys-color-surface-container-high);color:var(--md-sys-color-on-surface)}.tab-button.active.svelte-14ummkf{color:var(--md-sys-color-primary);border-bottom-color:var(--md-sys-color-primary);background-color:var(--md-sys-color-primary-container)}.confirmation-dialog.svelte-14ummkf{text-align:center;padding:var(--spacing-lg)}.confirmation-icon.svelte-14ummkf{margin-bottom:var(--spacing-md)}.confirmation-icon.svelte-14ummkf .material-symbols-outlined:where(.svelte-14ummkf){font-size:48px;color:var(--md-sys-color-error)}.confirmation-title.svelte-14ummkf{margin:0 0 var(--spacing-md) 0;font-family:var(--md-sys-typescale-headline-small-font);font-size:var(--md-sys-typescale-headline-small-size);font-weight:var(--md-sys-typescale-headline-small-weight);color:var(--md-sys-color-on-surface)}.confirmation-message.svelte-14ummkf{margin:0 0 var(--spacing-lg) 0;font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);color:var(--md-sys-color-on-surface-variant);line-height:1.5}.confirmation-actions.svelte-14ummkf{display:flex;gap:var(--spacing-md);justify-content:center}.btn.svelte-14ummkf:focus-visible{outline:2px solid var(--md-sys-color-primary);outline-offset:2px}@keyframes svelte-14ummkf-fadeIn{0%{opacity:0}to{opacity:1}}@keyframes svelte-14ummkf-slideIn{0%{transform:scale(.8) translateY(30px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}@media (max-width: 640px){.custom-modal-content.svelte-14ummkf{margin:var(--spacing-md);max-width:none}.custom-modal-header.svelte-14ummkf,.custom-modal-body.svelte-14ummkf{padding:var(--spacing-md)}}@media (prefers-reduced-motion: reduce){.custom-modal-overlay.svelte-14ummkf,.custom-modal-content.svelte-14ummkf{animation:none}}.grading-spreadsheet.svelte-1i83hfs{background-color:var(--md-sys-color-surface);border-radius:var(--radius-lg);border:1px solid var(--md-sys-color-outline-variant);overflow:hidden}.spreadsheet-container.svelte-1i83hfs{overflow:auto;max-height:70vh}.spreadsheet-table.svelte-1i83hfs{width:100%;border-collapse:collapse;font-size:var(--md-sys-typescale-body-small-size);background-color:var(--md-sys-color-surface);min-width:1200px}.spreadsheet-header.svelte-1i83hfs{background-color:var(--md-sys-color-surface-container-high);color:var(--md-sys-color-on-surface);font-weight:var(--md-sys-typescale-label-large-weight);padding:var(--spacing-md);border:1px solid var(--md-sys-color-outline-variant);position:sticky;top:0;z-index:10;text-align:center;min-width:80px;position:relative}.header-text.svelte-1i83hfs{display:block}.header-overlay.svelte-1i83hfs{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#0009;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s ease}.spreadsheet-header.clickable.svelte-1i83hfs:hover .header-overlay:where(.svelte-1i83hfs){opacity:1}.spreadsheet-header.student-info.svelte-1i83hfs{background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);position:sticky;left:0;z-index:11;min-width:120px}.spreadsheet-header.calculated.svelte-1i83hfs{background-color:var(--md-sys-color-secondary-container);color:var(--md-sys-color-on-secondary-container);font-weight:600}.spreadsheet-header.clickable.svelte-1i83hfs{cursor:pointer;transition:all .2s ease;position:relative}.header-icon.svelte-1i83hfs{font-size:18px;color:#fff}.spreadsheet-row.svelte-1i83hfs{transition:background-color var(--transition-normal)}.spreadsheet-row.svelte-1i83hfs:hover{background-color:var(--md-sys-color-surface-container-hover)}.spreadsheet-cell.svelte-1i83hfs{border:1px solid var(--md-sys-color-outline-variant);padding:0;text-align:center;vertical-align:middle;position:relative;min-width:80px;height:40px}.spreadsheet-cell.student-info.svelte-1i83hfs{background-color:var(--md-sys-color-surface-container-low);position:sticky;left:0;z-index:5;text-align:left;min-width:120px}.spreadsheet-cell.calculated.svelte-1i83hfs{background-color:var(--md-sys-color-secondary-container);color:var(--md-sys-color-on-secondary-container);font-weight:600}.spreadsheet-cell.editable.svelte-1i83hfs{cursor:pointer}.spreadsheet-cell.selected.svelte-1i83hfs{outline:2px solid var(--md-sys-color-primary);outline-offset:-2px;z-index:6}.spreadsheet-cell.editing.svelte-1i83hfs{background-color:var(--md-sys-color-surface)}.cell-content.svelte-1i83hfs{display:block;width:100%;height:100%;padding:var(--spacing-sm);box-sizing:border-box}.cell-input.svelte-1i83hfs{width:100%;height:100%;border:none;outline:none;background:transparent;text-align:center;font-size:inherit;color:var(--md-sys-color-on-surface);padding:var(--spacing-sm);box-sizing:border-box;min-width:80px;max-width:80px}.spreadsheet-cell.student-info.svelte-1i83hfs .cell-input:where(.svelte-1i83hfs){text-align:left}.spreadsheet-container.svelte-1i83hfs::-webkit-scrollbar{width:8px;height:8px}.spreadsheet-container.svelte-1i83hfs::-webkit-scrollbar-track{background:var(--md-sys-color-surface-variant)}.spreadsheet-container.svelte-1i83hfs::-webkit-scrollbar-thumb{background:var(--md-sys-color-outline-variant);border-radius:var(--radius-sm)}.spreadsheet-container.svelte-1i83hfs::-webkit-scrollbar-thumb:hover{background:var(--md-sys-color-outline)}.spreadsheet-cell.invalid.svelte-1i83hfs{background-color:var(--md-sys-color-error-container)!important;color:var(--md-sys-color-on-error-container)!important;animation:svelte-1i83hfs-errorPulse .5s ease-in-out}.spreadsheet-cell.invalid.svelte-1i83hfs .cell-content:where(.svelte-1i83hfs){color:var(--md-sys-color-on-error-container);font-weight:600}@keyframes svelte-1i83hfs-errorPulse{0%{background-color:var(--md-sys-color-error);transform:scale(1)}50%{background-color:var(--md-sys-color-error);transform:scale(1.02)}to{background-color:var(--md-sys-color-error-container);transform:scale(1)}}.advisory-class-container{margin:0 auto;color:var(--md-sys-color-on-surface);padding:var(--spacing-lg);height:100%;box-sizing:border-box;overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth}.advisory-class-container::-webkit-scrollbar{width:8px}.advisory-class-container::-webkit-scrollbar-track{background:var(--md-sys-color-surface-variant);border-radius:var(--radius-sm)}.advisory-class-container::-webkit-scrollbar-thumb{background:var(--md-sys-color-outline-variant);border-radius:var(--radius-sm);transition:background-color var(--transition-normal)}.advisory-class-container::-webkit-scrollbar-thumb:hover{background:var(--md-sys-color-outline)}.advisory-page-header{margin-bottom:var(--spacing-xl)}.advisory-page-title{font-size:var(--md-sys-typescale-headline-large-size);font-weight:var(--md-sys-typescale-headline-large-weight);margin:0 0 var(--spacing-md) 0;color:var(--md-sys-color-on-surface)}.advisory-class-info{display:flex;gap:var(--spacing-lg);flex-wrap:wrap}.class-detail{display:flex;align-items:center;gap:var(--spacing-sm);background-color:var(--md-sys-color-surface-container);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);border:1px solid var(--md-sys-color-outline-variant);font-size:var(--md-sys-typescale-body-medium-size);color:var(--md-sys-color-on-surface-variant)}.class-detail .material-symbols-outlined{font-size:20px;color:var(--school-primary)}.advisory-stats-section{margin-bottom:var(--spacing-2xl)}.advisory-stats-grid{display:flex;gap:var(--spacing-lg);justify-content:space-between;align-items:stretch}.advisory-stat-card{background-color:var(--md-sys-color-surface-container);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);display:flex;align-items:center;transition:all var(--transition-normal);border:1px solid var(--md-sys-color-outline-variant);flex:1;min-width:0;flex-direction:column}.stat-card:hover{background-color:var(--md-sys-color-surface-container-hover);box-shadow:var(--shadow-md);transform:translateY(-2px)}.advisory-stat-icon{width:56px;height:56px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-icon .material-symbols-outlined{font-size:28px}.stat-content{text-align:center;width:100%}.advisory-stat-value{font-size:var(--md-sys-typescale-headline-large-size);font-weight:var(--md-sys-typescale-headline-large-weight);margin-bottom:var(--spacing-xs);display:flex;align-items:center;justify-content:center;gap:2px}.advisory-stat-label{font-size:var(--md-sys-typescale-body-medium-size);color:var(--md-sys-color-on-surface-variant);font-weight:500}.students-section{margin-bottom:var(--spacing-2xl)}.advisory-section-title{font-size:var(--md-sys-typescale-headline-small-size);font-weight:var(--md-sys-typescale-headline-small-weight);margin:0 0 var(--spacing-lg) 0;color:var(--md-sys-color-on-surface)}.advisory-students-grid{display:flex;flex-direction:column;gap:var(--spacing-md)}.advisory-student-card{background-color:var(--md-sys-color-surface-container);border-radius:var(--radius-lg);border:1px solid var(--md-sys-color-outline-variant);overflow:hidden;transition:all var(--transition-normal)}.advisory-student-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.advisory-student-card.selected{border-color:var(--school-primary);box-shadow:0 0 0 2px var(--school-primary) 20}.status-badge{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-full);font-size:var(--md-sys-typescale-label-small-size);font-weight:var(--md-sys-typescale-label-small-weight);text-transform:uppercase;letter-spacing:.5px}.status-badge.verified,.status-badge.pending{background:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container)}.grade-counts{margin-top:var(--spacing-sm);color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-body-small-size)}.verify-btn,.unverify-btn{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border:none;border-radius:var(--radius-md);font-size:12;font-weight:500;cursor:pointer;transition:all var(--transition-normal);box-sizing:border-box}.verify-btn{background:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary);border:1px solid var(--md-sys-color-primary)}.verify-btn:hover{background:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);box-shadow:var(--shadow-sm)}.unverify-btn{background:var(--md-sys-color-error);color:var(--md-sys-color-on-error);border:1px solid var(--md-sys-color-error)}.unverify-btn:hover{background:var(--md-sys-color-error-container);color:var(--md-sys-color-on-error-container);box-shadow:var(--shadow-sm)}.student-header{display:flex;align-items:flex-start;justify-content:space-between;padding:var(--spacing-lg);cursor:pointer;transition:all var(--transition-normal)}.student-header:hover,.student-header:hover .average-score{background-color:var(--md-sys-color-surface-container-hover)}.student-header-content{flex:1;display:flex;flex-direction:column;gap:var(--spacing-sm)}.student-title-section{margin-bottom:var(--spacing-xs)}.student-title{font-family:var(--md-sys-typescale-headline-small-font);font-size:var(--md-sys-typescale-headline-small-size);font-weight:var(--md-sys-typescale-headline-small-weight);color:var(--md-sys-color-on-surface);margin:0;line-height:1.2}.student-info-row{display:flex;flex-wrap:wrap;gap:var(--spacing-md);align-items:center}.student-info-item{display:flex;align-items:center;gap:var(--spacing-xs);font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);color:var(--md-sys-color-on-surface-variant)}.student-info-item .material-symbols-outlined{font-size:16px;color:var(--md-sys-color-on-surface-variant)}.student-average{display:flex;align-items:center;margin-left:auto}.average-score{font-size:1.5rem;font-weight:600;padding:8px 12px;border-radius:8px;background:var(--md-sys-color-surface-container);min-width:60px;text-align:center}.advisory-student-avatar .material-symbols-outlined{font-size:24px}.average-status{font-size:var(--md-sys-typescale-body-small-size);font-weight:500}.expand-icon{position:relative;top:13px;color:var(--md-sys-color-on-surface-variant);transition:transform var(--transition-normal)}.expand-icon .material-symbols-outlined{font-size:24px}.student-grades{border-top:1px solid var(--md-sys-color-outline-variant);padding:var(--spacing-lg);background-color:var(--md-sys-color-surface-container-low);animation:slideDown .3s ease-out;transform-origin:top}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px);max-height:0}to{opacity:1;transform:translateY(0);max-height:1000px}}.grades-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.grades-title{color:var(--md-sys-color-on-surface);font-size:var(--md-sys-typescale-title-small-size);font-weight:var(--md-sys-typescale-title-small-weight);margin:0}.student-verification-controls{display:flex;gap:var(--spacing-sm)}.grades-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-sm)}.grade-item{display:flex;flex-direction:column;padding:var(--spacing-md);background-color:var(--md-sys-color-surface);border-radius:var(--radius-md);border:1px solid var(--md-sys-color-outline-variant);transition:all var(--transition-normal);position:relative;gap:var(--spacing-sm)}.grade-item:hover{background-color:var(--md-sys-color-surface-container);box-shadow:var(--shadow-xs)}.grade-item.verified{background:var(--md-sys-color-primary-container)}.grade-item.unverified{background:var(--md-sys-color-surface);opacity:.8}.hidden-grade{color:var(--md-sys-color-outline);font-style:italic}.grade-item-header{display:flex;justify-content:space-between;align-items:flex-start}.grade-info{flex:1}.grade-controls{display:flex;align-items:center;gap:var(--spacing-sm)}.verify-grade-btn,.unverify-grade-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-normal);font-size:10px}.verify-grade-btn{background:var(--md-sys-color-surface);color:var(--md-sys-color-on-primary-container)}.unverify-grade-btn{background:var(--md-sys-color-error-container);color:var(--md-sys-color-on-error-container)}.submitted-date{color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-body-small-size);margin-top:var(--spacing-xs)}.no-grades{color:var(--md-sys-color-outline);font-style:italic}.stat-note{color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-body-small-size);margin-top:var(--spacing-xs);display:block}.grade-score-display{font-size:var(--md-sys-typescale-headline-small-size);font-weight:var(--md-sys-typescale-headline-small-weight);text-align:center;padding:var(--spacing-sm) 0}.subject-name{font-size:var(--md-sys-typescale-body-medium-size);font-weight:500;color:var(--md-sys-color-on-surface);margin-bottom:var(--spacing-xs)}.subject-teacher{font-size:var(--md-sys-typescale-body-small-size);color:var(--md-sys-color-on-surface-variant)}.grade-score{font-size:var(--md-sys-typescale-title-medium-size);font-weight:var(--md-sys-typescale-title-medium-weight);margin-left:var(--spacing-md)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.bulk-controls{display:flex;gap:var(--spacing-sm)}.verify-all-btn,.unverify-all-btn{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border:none;border-radius:var(--radius-md);font-weight:500;cursor:pointer;transition:all var(--transition-normal)}.verify-all-btn{background:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary);border:1px solid var(--md-sys-color-primary)}.verify-all-btn:hover{background:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);box-shadow:var(--shadow-sm);border:1px solid var(--md-sys-color-primary)}.unverify-all-btn{background:var(--md-sys-color-error);color:var(--md-sys-color-on-error);border:1px solid var(--md-sys-color-error)}.unverify-all-btn:hover{background:var(--md-sys-color-error-container);color:var(--md-sys-color-on-error-container);box-shadow:var(--shadow-sm)}.verification-status{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--md-sys-typescale-body-small-size);font-weight:500;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm)}.verification-status.verified{background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container)}.verification-status.unverified{background-color:var(--md-sys-color-error-container);color:var(--md-sys-color-on-error-container)}.verification-status .material-symbols-outlined{font-size:16px}.verification-info{display:flex;align-items:flex-start;gap:var(--spacing-sm);margin:var(--spacing-md) 0 0 0;padding:var(--spacing-md);border-radius:var(--radius-md);border:1px solid var(--md-sys-color-outline-variant);box-shadow:var(--shadow-xs)}.verification-info .material-symbols-outlined{color:var(--md-sys-color-primary);font-size:20px;margin-top:2px}.verification-text span{color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-body-small-size);line-height:1.4}@media (max-width: 768px){.advisory-class-container{padding:var(--spacing-lg)}.advisory-class-info{justify-content:stretch;gap:var(--spacing-sm)}.student-average{align-self:flex-end;margin-right:0}.grades-grid{grid-template-columns:1fr}.section-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.bulk-controls{width:100%;justify-content:flex-end}}@media (max-width: 480px){.advisory-page-title{font-size:var(--md-sys-typescale-headline-medium-size)}.advisory-student-info,.grade-item{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.grade-score{margin-left:0;align-self:flex-end}}.admin-navbar{position:fixed;left:0;right:0;top:0;z-index:var(--z-modal);background-color:var(--md-sys-color-surface);border-bottom:1px solid var(--md-sys-color-outline-variant);box-shadow:var(--shadow-sm);height:64px;overflow:visible}@media (min-width: 768px){.user-profile-container,.user-profile{background-color:transparent}.admin-navbar{border-bottom:none;box-shadow:none;background-color:var(--md-sys-color-primary-container)}.user-dropdown-menu{background-color:var(--md-sys-color-primary-container)}[data-theme=dark] .admin-navbar,[data-theme=dark] .user-dropdown-menu{background-color:var(--md-sys-color-surface-container-low)}}.navbar-container{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);padding-left:20px;margin:0 auto;height:64px}.navbar-left{display:flex;align-items:center}.logo-section{display:flex;align-items:center;gap:var(--spacing-sm)}.logo-icon{font-size:28px;color:var(--md-sys-color-primary)}.app-title{font-family:var(--md-sys-typescale-title-large-font);font-size:var(--md-sys-typescale-title-large-size);font-weight:var(--md-sys-typescale-title-large-weight);color:var(--md-sys-color-on-surface);margin:0}.navbar-right{display:flex;align-items:center;gap:var(--spacing-md)}.icon-button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;border-radius:var(--radius-full);background-color:transparent;color:var(--md-sys-color-on-surface-variant);cursor:pointer}.icon-button:hover{background-color:var(--md-sys-color-surface-variant);color:var(--md-sys-color-on-surface)}.icon-button:active{transform:scale(.95)}.logout-button:hover{background-color:var(--md-sys-color-error-container);color:var(--md-sys-color-on-error-container)}.hamburger-menu{display:none;margin-right:var(--spacing-md);margin-left:-5px}.hamburger-menu:hover{background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container)}.user-profile-container{position:relative}.user-profile{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm);border-radius:var(--radius-lg);cursor:pointer;border:none}.user-profile:hover .user-avatar{background-color:var(--md-sys-color-surface-variant)}.dropdown-arrow{font-size:20px;color:var(--md-sys-color-on-surface-variant);transition:transform var(--transition-fast)}.user-dropdown-menu{position:absolute;top:100%;right:0;margin-top:var(--spacing-xs);background-color:var(--md-sys-color-surface-container);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);min-width:160px;overflow:hidden;z-index:var(--z-modal);animation:dropdownFadeIn .2s ease-out}.dropdown-item{display:flex;align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-md);border:none;background:none;color:var(--md-sys-color-on-surface);font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);text-align:left;cursor:pointer;transition:background-color var(--transition-fast)}.dropdown-item:hover{background-color:var(--md-sys-color-surface-variant)}.dropdown-item:last-child:hover{background-color:var(--md-sys-color-error-container);color:var(--md-sys-color-on-error-container)}.dropdown-item .material-symbols-outlined{font-size:20px}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.user-info{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.user-name{font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);font-weight:500;color:var(--md-sys-color-on-surface);line-height:1.2}.user-id{font-family:var(--md-sys-typescale-label-large-font);font-size:12px;color:var(--md-sys-color-on-surface-variant);line-height:1.2}.user-avatar{width:40px;height:40px;border-radius:var(--radius-full);overflow:hidden;border:2px solid var(--md-sys-color-outline-variant)}.avatar-image{width:100%;height:100%;object-fit:cover}.avatar-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);font-weight:500;font-size:14px}@media (max-width: 767px){.user-profile-container,.user-profile{background-color:transparent}}@media (min-width: 768px){.hamburger-menu{display:flex}}@media (max-width: 640px){.user-profile{background-color:transparent}.navbar-container{padding:var(--spacing-sm) var(--spacing-md)}.user-info{display:none}.app-title{font-size:18px}}.admin-menu-navigation-rail{position:fixed;top:64px;left:0;bottom:0;width:73px;z-index:var(--z-sticky);padding:var(--spacing-sm) var(--spacing-sm);background-color:var(--md-sys-color-surface);border-right:none;box-shadow:none;display:none;transition:background-color var(--transition-normal),gap .3s,width .15s cubic-bezier(.2,.9,.2,1);overflow-y:auto;overflow-x:hidden}.admin-menu-rail-container{display:flex;flex-direction:column;align-items:start;justify-content:start;gap:var(--spacing-sm);height:100%;width:100%}.admin-menu-rail-item{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-md) var(--spacing-sm);border:none;background:transparent;border-radius:var(--radius-full);cursor:pointer;width:56px;height:56px;position:relative}.admin-menu-rail-item:hover{background-color:var(--md-sys-color-surface-variant);border-radius:var(--radius-full)}.admin-menu-rail-item.active{background-color:var(--md-sys-color-on-primary);color:var(--md-sys-color-on-primary-container);border-radius:var(--radius-full)}.admin-menu-folder{position:relative}.admin-menu-folder.active{background-color:var(--md-sys-color-surface-container-low);color:var(--md-sys-color-on-primary-container)}.admin-menu-folder-contents{display:flex;flex-direction:column;gap:var(--spacing-sm);width:100%;background-color:var(--md-sys-color-surface-variant);animation:slideDown .2s ease-out;border-radius:27px}.admin-menu-sub-item{width:58x!important;height:58px!important;opacity:.9}.admin-menu-sub-item:hover{opacity:1;background-color:var(--md-sys-color-surface-variant)}.admin-menu-sub-item.active{background-color:var(--md-sys-color-on-primary);color:var(--md-sys-color-on-primary-container);border-radius:var(--radius-full);opacity:1}.admin-menu-rail-icon-container{position:relative;display:flex;align-items:center;justify-content:center;width:32px;height:32px}.admin-menu-rail-icon{font-size:24px;color:var(--md-sys-color-on-surface-variant)}.admin-menu-rail-item.active .admin-menu-rail-icon{color:var(--md-sys-color-on-primary-container);font-variation-settings:"FILL" 1}.admin-menu-rail-label{font-family:var(--md-sys-typescale-label-small-font);font-size:10px;font-weight:var(--md-sys-typescale-label-small-weight);color:var(--md-sys-color-on-surface-variant);text-align:center;line-height:1.2;max-width:64px;word-wrap:break-word}.admin-menu-navigation-rail:not(.collapsed) .admin-menu-rail-label{display:none}.admin-menu-navigation-rail:not(.collapsed) .admin-menu-rail-item{display:flex;align-items:center;justify-content:center}.admin-menu-navigation-rail.collapsed{width:230px}.admin-menu-navigation-rail.collapsed .admin-menu-rail-item{display:flex;flex-direction:row;justify-content:start;align-items:center;width:100%;padding:var(--spacing-md) var(--spacing-md);border-radius:var(--radius-full)}.admin-menu-navigation-rail.collapsed .admin-menu-sub-item{width:100%!important;height:58px!important;border-radius:var(--radius-full)!important}.admin-menu-navigation-rail.collapsed .admin-menu-rail-icon-container{justify-content:start}.admin-menu-navigation-rail.collapsed .admin-menu-rail-label{font-size:14px;max-width:none;white-space:nowrap}.admin-menu-rail-item.active .admin-menu-rail-label{color:var(--md-sys-color-on-primary-container);font-weight:600}.admin-menu-bottom-navigation{position:fixed;bottom:0;left:0;right:0;z-index:var(--z-sticky);background-color:var(--md-sys-color-surface);border-top:1px solid var(--md-sys-color-outline-variant);box-shadow:var(--shadow-sm);display:block;transition:background-color var(--transition-normal),border-color var(--transition-fast),box-shadow var(--transition-fast)}.admin-menu-nav-container{display:flex;justify-content:space-around;align-items:center;padding:var(--spacing-sm) var(--spacing-md);max-width:600px;margin:0 auto;height:64px}.admin-menu-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:var(--spacing-sm);border:none;background:transparent;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast),background-color var(--transition-fast),color var(--transition-fast);min-width:64px;position:relative}.admin-menu-nav-item:active{background-color:var(--md-sys-color-on-primary-container)}.admin-menu-nav-item.active{color:var(--md-sys-color-on-primary-container);transition:background-color var(--transition-fast),color var(--transition-fast)}.admin-menu-mobile-folder-overlay{position:fixed;inset:0;background-color:#00000080;z-index:var(--z-modal);display:flex;align-items:flex-end;animation:fadeIn .2s ease-out}.admin-menu-mobile-folder-content{background-color:var(--md-sys-color-surface);border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:var(--spacing-lg);width:100%;max-height:60vh;overflow-y:auto;animation:slideUp .3s ease-out}.admin-menu-mobile-folder-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--md-sys-color-outline-variant)}.admin-menu-mobile-folder-header h3{margin:0;font-family:var(--md-sys-typescale-headline-small-font);font-size:var(--md-sys-typescale-headline-small-size);font-weight:var(--md-sys-typescale-headline-small-weight);color:var(--md-sys-color-on-surface)}.admin-menu-close-folder{background:transparent;border:none;padding:var(--spacing-sm);border-radius:var(--radius-full);cursor:pointer;color:var(--md-sys-color-on-surface-variant)}.admin-menu-close-folder:hover{background-color:var(--md-sys-color-surface-variant)}.admin-menu-mobile-folder-items{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:var(--spacing-md)}.admin-menu-mobile-folder-item{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-lg) var(--spacing-md);background:transparent;border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);text-align:center}.admin-menu-mobile-folder-item:hover{background-color:var(--md-sys-color-surface-variant);border-color:var(--md-sys-color-outline)}.admin-menu-mobile-folder-item.active{background-color:var(--md-sys-color-primary-container);border-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary-container)}.admin-menu-mobile-folder-item span:first-child{font-size:24px;color:var(--md-sys-color-on-surface-variant)}.admin-menu-mobile-folder-item.active span:first-child{color:var(--md-sys-color-on-primary-container)}.admin-menu-mobile-folder-item span:last-child{font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);font-weight:var(--md-sys-typescale-body-medium-weight);color:var(--md-sys-color-on-surface)}.admin-menu-mobile-folder-item.active span:last-child{color:var(--md-sys-color-on-primary-container);font-weight:600}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.admin-menu-nav-icon-container{position:relative;display:flex;align-items:center;justify-content:center;width:32px;height:32px}.admin-menu-nav-icon{font-size:24px;color:var(--md-sys-color-on-surface-variant);transition:color var(--transition-fast)}.admin-menu-nav-item.active .admin-menu-nav-icon{color:var(--md-sys-color-on-primary-container);font-variation-settings:"FILL" 1}.admin-menu-nav-label{font-family:var(--md-sys-typescale-label-large-font);font-size:12px;font-weight:var(--md-sys-typescale-label-large-weight);color:var(--md-sys-color-on-surface-variant);transition:color var(--transition-fast);text-align:center;line-height:1.2}.admin-menu-nav-item.active .admin-menu-nav-label{color:var(--md-sys-color-on-primary-container);font-weight:600}@media (min-width: 768px){.admin-menu-navigation-rail{display:block;background-color:var(--md-sys-color-primary-container)}.admin-menu-bottom-navigation{display:none}[data-theme=dark] .admin-menu-navigation-rail{background-color:var(--md-sys-color-surface-container-low)}}@media (max-width: 767px){.admin-menu-navigation-rail{display:none}.admin-menu-bottom-navigation{display:block}}@media (max-width: 480px){.admin-menu-nav-container{padding:var(--spacing-xs) var(--spacing-sm)}.admin-menu-nav-item{min-width:56px;padding:6px}.admin-menu-nav-icon{font-size:22px}}[data-theme=dark] .admin-menu-bottom-navigation{box-shadow:0 -2px 8px #0000004d}@supports (padding-bottom: env(safe-area-inset-bottom)){.admin-menu-bottom-navigation{padding-bottom:env(safe-area-inset-bottom)}}.dashboard-container{color:var(--md-sys-color-on-surface);box-sizing:border-box;overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth}.dashboard-container::-webkit-scrollbar{width:8px}.dashboard-container::-webkit-scrollbar-track{background:var(--md-sys-color-surface-variant);border-radius:var(--radius-sm)}.dashboard-container::-webkit-scrollbar-thumb{background:var(--md-sys-color-outline-variant);border-radius:var(--radius-sm);transition:background-color var(--transition-normal)}.dashboard-container::-webkit-scrollbar-thumb:hover{background:var(--md-sys-color-outline)}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);gap:var(--spacing-md)}.section-header{margin-bottom:var(--spacing-lg);display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md)}.refresh-button{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);border:1px solid var(--md-sys-color-primary);border-radius:var(--radius-md);font-family:var(--md-sys-typescale-label-large-font);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);cursor:pointer;transition:all var(--transition-normal);min-width:100px;justify-content:center;height:36px}.refresh-button:hover:not(:disabled){background-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary);box-shadow:var(--elevation-1)}.refresh-button:active:not(:disabled){transform:translateY(1px);box-shadow:var(--elevation-0)}.refresh-button:disabled{opacity:.6;cursor:not-allowed}.refresh-button .material-symbols-outlined{font-size:18px}.stats-section{margin-bottom:var(--spacing-2xl)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-lg)}.stat-card{background-color:var(--md-sys-color-surface-container);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);padding:var(--spacing-lg);display:flex;align-items:center;gap:var(--spacing-md);transition:all var(--transition-normal);box-shadow:var(--elevation-1)}.stat-card:hover{box-shadow:var(--elevation-2);transform:translateY(-2px)}.stat-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:var(--radius-md);background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container)}.stat-card.stat-secondary .stat-icon{background-color:var(--md-sys-color-secondary-container);color:var(--md-sys-color-on-secondary-container)}.stat-card.stat-primary .stat-icon{background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container)}.stat-card.stat-error .stat-icon{background-color:var(--md-sys-color-error-container);color:var(--md-sys-color-on-error-container)}.stat-content{flex:1}.stat-value{font-family:var(--md-sys-typescale-headline-medium-font);font-size:var(--md-sys-typescale-headline-medium-size);font-weight:var(--md-sys-typescale-headline-medium-weight);color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-xs) 0}.stat-label{font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);color:var(--md-sys-color-on-surface-variant);margin:0}.activities-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.activities-list::-webkit-scrollbar{width:8px}.activities-list::-webkit-scrollbar-track{background:var(--md-sys-color-surface-variant);border-radius:var(--radius-sm)}.activities-list::-webkit-scrollbar-thumb{background:var(--md-sys-color-outline-variant);border-radius:var(--radius-sm);transition:background-color var(--transition-normal)}.activities-list::-webkit-scrollbar-thumb:hover{background:var(--md-sys-color-outline)}.activity-item{background-color:var(--md-sys-color-surface-container);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);padding:var(--spacing-md) var(--spacing-lg);display:flex;align-items:center;gap:var(--spacing-md);transition:all var(--transition-normal);box-shadow:var(--elevation-1)}.activity-item:hover{background-color:var(--md-sys-color-surface-container-high);box-shadow:var(--elevation-2)}.activity-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-sm);background-color:var(--md-sys-color-secondary-container);color:var(--md-sys-color-on-secondary-container)}.activity-content{flex:1}.activity-message{font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-xs) 0}.activity-user{font-family:var(--md-sys-typescale-body-small-font);font-size:var(--md-sys-typescale-body-small-size);color:var(--md-sys-color-on-surface-variant);margin:0 0 var(--spacing-xs) 0;font-style:italic}.activity-timestamp{font-family:var(--md-sys-typescale-body-small-font);font-size:var(--md-sys-typescale-body-small-size);color:var(--md-sys-color-on-surface-variant);align-self:flex-start;margin-left:auto;white-space:nowrap}.activities-loading,.activities-error,.activities-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;margin:auto;padding:var(--spacing-md);text-align:center;border-radius:var(--radius-lg);gap:var(--spacing-md);width:60%}.activities-loading p,.activities-error p,.activities-empty p{font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);color:var(--md-sys-color-on-surface-variant);margin:0}.activities-error{color:var(--md-sys-color-error)}.activities-error .material-symbols-outlined{font-size:48px;color:var(--md-sys-color-error)}.activities-empty .material-symbols-outlined{font-size:48px;color:var(--md-sys-color-outline)}.dashboard-loader,.load-more{width:16px;height:16px;border-radius:50%;background-color:#fff;box-shadow:32px 0 #fff,-32px 0 #fff;position:relative;animation:dashboard-flash .5s ease-out infinite alternate;margin:var(--spacing-md)}@keyframes dashboard-flash{0%{background-color:#fff2;box-shadow:32px 0 #fff2,-32px 0 #fff}50%{background-color:#fff;box-shadow:32px 0 #fff2,-32px 0 #fff2}to{background-color:#fff2;box-shadow:32px 0 #fff,-32px 0 #fff2}}.retry-button{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary);border:none;border-radius:var(--radius-md);font-family:var(--md-sys-typescale-label-large-font);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);cursor:pointer;transition:all var(--transition-normal)}.activities-error .material-symbols-outlined{font-size:24px}.retry-button:hover{background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);box-shadow:var(--elevation-1)}.retry-button:active{transform:translateY(1px)}.view-more-container{display:flex;justify-content:center}.view-more-button{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-lg) var(--spacing-lg);background-color:var(--md-sys-color-surface-container-high);color:var(--md-sys-color-on-surface);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-full);font-family:var(--md-sys-typescale-label-large-font);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);cursor:pointer;transition:all var(--transition-normal);min-width:160px;justify-content:center;max-height:40px}.view-more-button:hover:not(:disabled){background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);border-color:var(--md-sys-color-primary);box-shadow:var(--elevation-1)}.view-more-button:disabled{opacity:.6;cursor:not-allowed}.button-loader{width:16px;height:16px;border-radius:50%;background-color:#fff2;box-shadow:32px 0 #fff2,-32px 0 #fff;position:relative;animation:dashboard-flash .5s ease-out infinite alternate}@keyframes button-flash{0%{background-color:transparent;box-shadow:20px 0 transparent,-20px 0 currentColor}50%{background-color:currentColor;box-shadow:20px 0 transparent,-20px 0 transparent}to{background-color:transparent;box-shadow:20px 0 currentColor,-20px 0 transparent}}@media (max-width: 768px){.stats-grid,.actions-grid{grid-template-columns:1fr}.stat-card,.action-card,.activity-item{padding:var(--spacing-md)}.page-title{font-size:1.75rem}}@media (max-width: 480px){.dashboard-header{margin-bottom:var(--spacing-lg)}.stats-section{margin-bottom:var(--spacing-xl)}.stat-card{flex-direction:column;text-align:center;gap:var(--spacing-sm)}}.account-creation-container{color:var(--md-sys-color-on-surface);box-sizing:border-box;overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth}.account-creation-container::-webkit-scrollbar{width:8px}.account-creation-container::-webkit-scrollbar-track{background:var(--md-sys-color-surface-variant);border-radius:var(--radius-sm)}.account-creation-container::-webkit-scrollbar-thumb{background:var(--md-sys-color-outline-variant);border-radius:var(--radius-sm);transition:background-color var(--transition-normal)}.account-creation-container::-webkit-scrollbar-thumb:hover{background:var(--md-sys-color-outline)}.account-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);gap:var(--spacing-md)}.section-title{font-family:var(--md-sys-typescale-title-large-font);font-size:var(--md-sys-typescale-title-large-size);font-weight:var(--md-sys-typescale-title-large-weight);color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-sm) 0}.section-subtitle{font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);color:var(--md-sys-color-on-surface-variant);margin:0 0 var(--spacing-lg) 0}.success-message{display:flex;align-items:center;gap:var(--spacing-sm);background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-lg);margin-bottom:var(--spacing-xl);border:1px solid var(--md-sys-color-primary);animation:slideIn .3s ease-out}.success-icon{font-size:24px;color:var(--md-sys-color-primary)}.success-text{font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);font-weight:var(--md-sys-typescale-body-medium-weight)}.creation-form-section{background-color:var(--md-sys-color-surface-container-low);border-radius:var(--radius-xl);padding:var(--spacing-xl);margin-bottom:var(--spacing-xl);box-shadow:var(--shadow-md);border:1px solid var(--md-sys-color-outline-variant)}.account-section-header{margin-bottom:var(--spacing-lg)}.form-container{max-width:100%;width:100%}.account-type-gender-row{display:flex;gap:var(--spacing-md);align-items:end}.form-group{flex:1}.name-fields-row{display:grid;grid-template-columns:1fr 1fr 100px;gap:var(--spacing-md);align-items:end}#middle-initial{text-align:center}@media (max-width: 768px){.account-type-gender-row{grid-template-columns:1fr;gap:var(--spacing-sm)}.name-fields-row{gap:var(--spacing-sm)}}.form-label{display:block;font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);font-weight:var(--md-sys-typescale-body-medium-weight);color:var(--md-sys-color-on-surface);margin-bottom:var(--spacing-sm)}.form-input{width:100%;padding:var(--spacing-md);border:1px solid var(--md-sys-color-outline);border-radius:var(--radius-md);background-color:var(--md-sys-color-surface);color:var(--md-sys-color-on-surface);font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);transition:all var(--transition-normal);box-sizing:border-box;min-height:58px}.form-input:focus{outline:none;border-color:var(--md-sys-color-primary);box-shadow:0 0 0 1px var(--md-sys-color-primary)}.additional-info-section{margin-top:var(--spacing-xl);padding:var(--spacing-lg);background-color:var(--md-sys-color-surface-variant);border-radius:var(--radius-lg);border:1px solid var(--md-sys-color-outline-variant);margin-bottom:var(--spacing-md)}.additional-info-section .section-subtitle{font-family:var(--md-sys-typescale-title-medium-font);font-size:var(--md-sys-typescale-title-medium-size);font-weight:var(--md-sys-typescale-title-medium-weight);color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-xs) 0}.additional-info-section .section-description{font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);color:var(--md-sys-color-on-surface-variant);margin:0 0 var(--spacing-lg) 0}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md);align-items:end}.form-textarea{resize:vertical;min-height:80px;font-family:var(--md-sys-typescale-body-large-font)}.age-display{background-color:var(--md-sys-color-surface-container);color:var(--md-sys-color-on-surface-variant);cursor:not-allowed}@media (max-width: 768px){.form-row{grid-template-columns:1fr;gap:var(--spacing-sm)}.additional-info-section{padding:var(--spacing-md)}}.number-input-container{display:flex;align-items:center;border:2px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-md);background-color:var(--md-sys-color-surface);transition:all var(--transition-normal);margin-bottom:var(--spacing-lg)}.number-input-container:focus-within{border-color:var(--md-sys-color-primary);box-shadow:0 0 0 1px var(--md-sys-color-primary)}.number-prefix{padding:var(--spacing-md);color:var(--md-sys-color-on-surface-variant);font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);font-weight:500;background-color:var(--md-sys-color-surface-variant);border-radius:var(--radius-sm) 0 0 var(--radius-sm);white-space:nowrap;display:flex;align-items:center}.number-input{border:none!important;border-radius:0 var(--radius-md) var(--radius-md) 0!important;flex:1;min-width:0}.number-input:focus{box-shadow:none!important}.number-display{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);border:2px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-md);background-color:var(--md-sys-color-surface-variant);min-height:56px;box-sizing:border-box;margin-bottom:var(--spacing-md)}.auto-number{font-weight:600;color:var(--md-sys-color-primary);font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size)}.auto-label{color:var(--md-sys-color-on-surface-variant);font-family:var(--md-sys-typescale-body-small-font);font-size:var(--md-sys-typescale-body-small-size);font-style:italic}.placeholder-number{color:var(--md-sys-color-on-surface-variant);font-style:italic;font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size)}.form-help{font-size:var(--md-sys-typescale-body-small-size);color:var(--md-sys-color-on-surface-variant);margin-top:var(--spacing-xs);margin-bottom:0}.form-actions{display:flex;justify-content:flex-end;margin-top:var(--spacing-xl)}.create-button{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-xl);background-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary);border:none;border-radius:var(--radius-full);font-family:var(--md-sys-typescale-label-large-font);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);cursor:pointer;transition:all var(--transition-normal);min-height:56px}.create-button:hover:not(:disabled){background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);box-shadow:var(--shadow-md)}.create-button:disabled{background-color:var(--md-sys-color-surface-variant);color:var(--md-sys-color-on-surface-variant);cursor:not-allowed}.create-button.loading{pointer-events:none}.account-loader{width:16px;height:16px;border-radius:50%;background-color:#fff;box-shadow:32px 0 #fff,-32px 0 #fff;position:relative;animation:flash .5s ease-out infinite alternate;margin-bottom:var(--spacing-md)}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl);min-height:200px;color:var(--md-sys-color-on-surface-variant)}.loading-text{font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);font-weight:var(--md-sys-typescale-body-large-weight);color:var(--md-sys-color-on-surface-variant);margin:0;text-align:center}.no-results{text-align:center;padding:var(--spacing-xl) var(--spacing-lg);color:var(--text-secondary)}.no-results-icon{font-size:3rem;margin-bottom:var(--spacing-md);opacity:.5}.no-results p{margin:0;font-size:var(--font-size-body-medium)}.recent-accounts-section{background-color:var(--md-sys-color-surface-container-low);border-radius:var(--radius-xl);padding:var(--spacing-xl);box-shadow:var(--shadow-md);border:1px solid var(--md-sys-color-outline-variant)}.section-header-content{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-lg)}.section-title-group{flex:1}.search-filter-container{display:flex;gap:var(--spacing-md);align-items:center;flex-wrap:wrap}.search-container{position:relative;flex:1;min-width:400px}.filter-container{flex-shrink:0;min-width:200px}.filter-trigger{min-width:200px;font-size:var(--md-sys-typescale-body-medium-size)}.accounts-grid{display:flex;flex-direction:column;gap:var(--spacing-md)}.account-card-header{display:flex;justify-content:space-between;margin-bottom:var(--spacing-md)}.account-details{display:flex;gap:var(--spacing-xl);flex-wrap:wrap;margin-bottom:var(--spacing-md)}.account-action-buttons{display:flex;gap:var(--spacing-xs);align-items:center}.account-edit-button{background-color:var(--md-sys-color-surface);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-md);padding:var(--spacing-sm);display:flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0;color:var(--md-sys-color-on-surface-variant);cursor:pointer;transition:all var(--transition-normal)}.account-edit-button:hover{background-color:var(--md-sys-color-surface-variant);border-color:var(--md-sys-color-outline);color:var(--md-sys-color-on-surface);box-shadow:var(--shadow-sm)}.account-edit-button .material-symbols-outlined{font-size:18px;transition:inherit}.account-edit-button:active{background-color:var(--md-sys-color-surface-container-high);box-shadow:none;transform:scale(.95)}.account-remove-button{background-color:var(--md-sys-color-surface);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-md);padding:var(--spacing-sm);display:flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0;color:var(--md-sys-color-error);cursor:pointer;transition:all var(--transition-normal)}.account-remove-button:hover{background-color:var(--md-sys-color-error-container);border-color:var(--md-sys-color-error);color:var(--md-sys-color-on-error-container);box-shadow:var(--shadow-sm)}.account-remove-button .material-symbols-outlined{font-size:18px;transition:inherit}.account-remove-button:active{background-color:var(--md-sys-color-error-container);box-shadow:none;transform:scale(.95)}.status-badge{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-full);font-family:var(--md-sys-typescale-label-small-font);font-size:var(--md-sys-typescale-label-small-size);font-weight:var(--md-sys-typescale-label-small-weight);text-transform:uppercase;letter-spacing:.5px}.status-active{background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container)}@media (max-width: 1024px){.account-creation-container{padding:var(--spacing-md);max-width:100%}.creation-form-section,.recent-accounts-section{padding:var(--spacing-lg)}}@media (max-width: 768px){.account-creation-container{padding:var(--spacing-sm)}.creation-form-section,.recent-accounts-section{padding:var(--spacing-md);margin-bottom:var(--spacing-lg)}.form-actions{justify-content:stretch}.create-button{width:100%;justify-content:center}.account-header{flex-direction:column;align-items:flex-start;text-align:left}.account-details{flex-direction:column;gap:var(--spacing-sm)}.account-card-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.section-header-content{flex-direction:column;align-items:stretch;gap:var(--spacing-md)}.filter-container{min-width:auto}.filter-trigger{min-width:auto;width:100%}}@media (max-width: 480px){.account-creation-container{padding:var(--spacing-xs)}.creation-form-section,.recent-accounts-section{padding:var(--spacing-sm)}.page-title{font-size:var(--md-sys-typescale-headline-medium-size)}.section-title{font-size:var(--md-sys-typescale-title-medium-size)}}.edit-form-section{margin-top:var(--spacing-md);animation:slideDown .3s ease-out}.edit-form-container{background-color:var(--md-sys-color-surface-container);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--elevation-1)}.edit-form-header{margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--md-sys-color-outline-variant)}.edit-form-title{font-family:var(--md-sys-typescale-title-medium-font);font-size:var(--md-sys-typescale-title-medium-size);font-weight:var(--md-sys-typescale-title-medium-weight);color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-xs) 0;display:flex;align-items:center;gap:var(--spacing-sm)}.edit-form-title:before{content:"edit";font-family:Material Symbols Outlined;font-size:var(--md-sys-typescale-title-medium-size);color:var(--md-sys-color-primary)}.edit-form-subtitle{font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);color:var(--md-sys-color-on-surface-variant);margin:0}.edit-form-content{display:flex;flex-direction:column}.edit-name-fields-row{display:grid;grid-template-columns:1fr 1fr 100px;gap:var(--spacing-md);align-items:end;margin-bottom:var(--spacing-md)}@media (max-width: 768px){.edit-name-fields-row{grid-template-columns:1fr;gap:var(--spacing-sm)}}.edit-form-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;margin-top:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:1px solid var(--md-sys-color-outline-variant)}.account-cancel-button{background-color:var(--md-sys-color-surface);color:var(--md-sys-color-on-surface);border:1px solid var(--md-sys-color-outline);border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-lg);font-family:var(--md-sys-typescale-label-large-font);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);cursor:pointer;transition:all var(--transition-normal);min-width:80px;height:40px}.account-cancel-button:hover{background-color:var(--md-sys-color-surface-variant);border-color:var(--md-sys-color-outline-variant);box-shadow:var(--elevation-1)}.cancel-button:active{background-color:var(--md-sys-color-surface-container-high);transform:scale(.98);box-shadow:none}.account-submit-button{background-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary);border:1px solid var(--md-sys-color-primary);border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-lg);font-family:var(--md-sys-typescale-label-large-font);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);cursor:pointer;transition:all var(--transition-normal);min-width:120px;min-height:40px}.account-submit-button:hover{background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);box-shadow:var(--elevation-2)}.account-submit-button:active{background-color:var(--md-sys-color-primary-container);transform:scale(.98);box-shadow:var(--elevation-1)}.account-submit-button:disabled{background-color:var(--md-sys-color-surface-variant);color:var(--md-sys-color-on-surface-variant);border-color:var(--md-sys-color-outline-variant);cursor:not-allowed;opacity:.6}.student-masterlist-container{color:var(--md-sys-color-on-surface);box-sizing:border-box;overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth}.student-masterlist-container::-webkit-scrollbar{width:8px}.student-masterlist-container::-webkit-scrollbar-track{background:var(--md-sys-color-surface-variant);border-radius:var(--radius-sm)}.student-masterlist-container::-webkit-scrollbar-thumb{background:var(--md-sys-color-outline-variant);border-radius:var(--radius-sm);transition:background-color var(--transition-normal)}.student-masterlist-container::-webkit-scrollbar-thumb:hover{background:var(--md-sys-color-outline)}.admin-student-header{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md)}.page-title{font-family:var(--md-sys-typescale-headline-large-font);font-size:var(--md-sys-typescale-headline-large-size);font-weight:var(--md-sys-typescale-headline-large-weight);color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-xs) 0}.filters-section{margin-bottom:var(--spacing-xl)}.search-filter-container{display:flex;gap:var(--spacing-md);align-items:flex-end;flex-wrap:wrap;margin-bottom:var(--spacing-lg)}.search-container{flex:1;min-width:300px}.search-input-wrapper{position:relative;display:flex;align-items:center;background-color:var(--md-sys-color-surface);border:1px solid var(--md-sys-color-outline);border-radius:var(--radius-md);transition:all var(--transition-normal);min-height:58px}.search-input-wrapper:focus-within{border-color:var(--md-sys-color-primary);box-shadow:0 0 0 2px rgba(var(--md-sys-color-primary-rgb),.2)}.search-icon{position:absolute;left:calc(var(--spacing-sm) + 5px);color:var(--md-sys-color-on-surface-variant);font-size:20px;pointer-events:none;z-index:1}.search-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);padding-left:40px;padding-right:40px;border:none;border-radius:var(--radius-md);background-color:transparent;color:var(--md-sys-color-on-surface);font-size:var(--md-sys-typescale-body-medium-size);transition:all var(--transition-normal);box-sizing:border-box}.search-input:focus{outline:none}.search-input::placeholder{color:var(--md-sys-color-on-surface-variant)}.clear-search-button{position:absolute;right:var(--spacing-xs);background:none;border:none;color:var(--md-sys-color-on-surface-variant);cursor:pointer;padding:var(--spacing-xs);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:all var(--transition-normal);font-size:18px;z-index:2}.clear-search-button:hover{background-color:var(--md-sys-color-surface-variant);color:var(--md-sys-color-on-surface)}.filter-container{display:flex;gap:var(--spacing-md);align-items:flex-end;flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.filter-label{font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);font-weight:var(--md-sys-typescale-body-medium-weight);color:var(--md-sys-color-on-surface)}.filter-trigger{min-width:180px;font-size:var(--md-sys-typescale-body-medium-size)}.option-icon{font-size:20px;color:var(--md-sys-color-primary)}.clear-filters-button{display:flex;align-items:center;gap:var(--spacing-xs);background-color:var(--md-sys-color-surface);border:1px solid var(--md-sys-color-outline);border-radius:var(--radius-md);padding:var(--spacing-md);color:var(--md-sys-color-on-surface-variant);cursor:pointer;font-size:var(--md-sys-typescale-body-medium-size);transition:all var(--transition-normal);min-height:56px;white-space:nowrap}.clear-filters-button:hover{background-color:var(--md-sys-color-surface-variant);border-color:var(--md-sys-color-outline);color:var(--md-sys-color-on-surface)}.students-list-section{margin-top:var(--spacing-lg)}.masterlist-loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xxl);gap:var(--spacing-md);min-height:200px;color:var(--md-sys-color-on-surface-variant)}.student-loader{width:16px;height:16px;border-radius:50%;background-color:var(--md-sys-color-on-surface-variant);box-shadow:32px 0 #fff,-32px 0 #fff;position:relative;animation:flash .5s ease-out infinite alternate;margin-bottom:var(--spacing-md)}.masterlist-loading-text{font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);color:var(--md-sys-color-on-surface-variant);margin:0;text-align:center}.students-grid{display:flex;flex-direction:column;gap:var(--spacing-md)}.account-card{background-color:var(--md-sys-color-surface-container);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);padding:var(--spacing-lg);transition:all var(--transition-normal);cursor:pointer;color:var(--md-sys-color-on-surface)}.account-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.account-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.action-buttons{display:flex;gap:var(--spacing-xs);align-items:center}.archive-button{background-color:var(--md-sys-color-surface);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-md);padding:var(--spacing-sm);display:flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0;color:var(--md-sys-color-on-surface-variant);cursor:pointer;transition:all var(--transition-normal)}.archive-button:hover{background-color:var(--md-sys-color-surface-variant);border-color:var(--md-sys-color-outline);color:var(--md-sys-color-on-surface);box-shadow:var(--elevation-1)}.archive-button .material-symbols-outlined{font-size:18px;transition:inherit}.archive-button:active{background-color:var(--md-sys-color-surface-container-high);box-shadow:none;transform:scale(.95)}.account-title{display:block}.account-id{display:flex;align-items:center}.student-id{font-size:.875rem;font-weight:500;color:var(--md-sys-color-primary);background-color:var(--md-sys-color-primary-container);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-sm)}.account-name{margin:0;font-size:1.125rem;font-weight:600;color:var(--md-sys-color-on-surface)}.master-account-details{display:flex;gap:var(--spacing-md);flex-wrap:wrap;margin-bottom:var(--spacing-md)}.account-detail-item{display:flex;align-items:center;gap:var(--spacing-xs);font-size:.875rem;color:var(--md-sys-color-on-surface-variant);opacity:.85}.account-detail-item .material-symbols-outlined{font-size:.875rem}.no-results{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-2xl);gap:var(--spacing-md);text-align:center}.no-results-icon{font-size:64px;color:var(--md-sys-color-on-surface-variant);opacity:.5}.no-results p{font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);color:var(--md-sys-color-on-surface-variant);margin:0}.clear-search-button-inline{background-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary);border:none;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);cursor:pointer;font-size:var(--md-sys-typescale-body-medium-size);font-weight:500;transition:all var(--transition-normal);margin-top:var(--spacing-sm)}.clear-search-button-inline:hover{background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container)}@media (max-width: 1024px){.students-grid{gap:var(--spacing-md)}}@media (max-width: 768px){.search-filter-container{flex-direction:column;align-items:stretch}.search-container{min-width:unset}.filter-container{flex-direction:column;gap:var(--spacing-sm)}.filter-trigger{min-width:unset}.students-grid{gap:var(--spacing-md)}.account-card{padding:var(--spacing-md)}.account-details{flex-direction:column;gap:var(--spacing-sm)}}@media (max-width: 480px){.account-card-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.account-name{text-align:center;width:100%}}.aas-archived-students-container{color:var(--md-sys-color-on-surface);box-sizing:border-box;overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth}.aas-archived-students-container::-webkit-scrollbar{width:8px}.aas-archived-students-container::-webkit-scrollbar-track{background:var(--md-sys-color-surface-variant);border-radius:var(--radius-sm)}.aas-archived-students-container::-webkit-scrollbar-thumb{background:var(--md-sys-color-outline-variant);border-radius:var(--radius-sm);transition:background-color var(--transition-normal)}.aas-archived-students-container::-webkit-scrollbar-thumb:hover{background:var(--md-sys-color-outline)}.aas-admin-student-header{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md)}.aas-header-content{flex:1}.aas-page-title{font-family:var(--md-sys-typescale-headline-large-font);font-size:var(--md-sys-typescale-headline-large-size);font-weight:var(--md-sys-typescale-headline-large-weight);color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-xs) 0}.aas-page-subtitle{font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);color:var(--md-sys-color-on-surface-variant);margin:0}.aas-filters-section{margin-bottom:var(--spacing-xl)}.aas-search-filter-container{display:flex;gap:var(--spacing-md);align-items:flex-end;flex-wrap:wrap;margin-bottom:var(--spacing-lg)}.aas-search-container{flex:1;min-width:300px}.aas-search-input-wrapper{position:relative;display:flex;align-items:center;background-color:var(--md-sys-color-surface);border:1px solid var(--md-sys-color-outline);border-radius:var(--radius-md);transition:all var(--transition-normal);min-height:58px}.aas-search-input-wrapper:focus-within{border-color:var(--md-sys-color-primary);box-shadow:0 0 0 2px rgba(var(--md-sys-color-primary-rgb),.2)}.aas-search-icon{position:absolute;left:calc(var(--spacing-sm) + 5px);color:var(--md-sys-color-on-surface-variant);font-size:20px;pointer-events:none;z-index:1}.aas-search-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);padding-left:40px;padding-right:40px;border:none;border-radius:var(--radius-md);background-color:transparent;color:var(--md-sys-color-on-surface);font-size:var(--md-sys-typescale-body-medium-size);transition:all var(--transition-normal);box-sizing:border-box}.aas-search-input:focus{outline:none}.aas-search-input::placeholder{color:var(--md-sys-color-on-surface-variant);font-style:italic}.aas-clear-search-button{position:absolute;right:var(--spacing-xs);background:none;border:none;color:var(--md-sys-color-on-surface-variant);cursor:pointer;padding:var(--spacing-xs);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:all var(--transition-normal);font-size:18px;z-index:2}.aas-clear-search-button:hover{background-color:var(--md-sys-color-surface-variant);color:var(--md-sys-color-on-surface)}.aas-filter-container{display:flex;gap:var(--spacing-md);align-items:flex-end;flex-wrap:wrap}.aas-filter-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.aas-filter-label{font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);font-weight:var(--md-sys-typescale-body-medium-weight);color:var(--md-sys-color-on-surface)}.aas-custom-dropdown{position:relative;width:100%}.aas-dropdown-trigger{width:100%;padding:var(--spacing-md);border:1px solid var(--md-sys-color-outline);border-radius:var(--radius-md);background-color:var(--md-sys-color-surface);color:var(--md-sys-color-on-surface);font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);text-align:left;cursor:pointer;transition:all var(--transition-normal);display:flex;align-items:center;justify-content:space-between;min-height:56px;box-sizing:border-box}.aas-dropdown-trigger:hover{border-color:var(--md-sys-color-outline)}.aas-dropdown-trigger:focus{outline:none;border-color:var(--md-sys-color-primary);box-shadow:0 0 0 1px var(--md-sys-color-primary)}.aas-dropdown-trigger.selected{border-color:var(--md-sys-color-primary)}.aas-filter-trigger{min-width:180px;font-size:var(--md-sys-typescale-body-medium-size)}.aas-selected-option{display:flex;align-items:center;gap:var(--spacing-sm);flex:1}.aas-option-icon{font-size:20px;color:var(--md-sys-color-primary)}.aas-option-content{display:flex;flex-direction:column;align-items:flex-start}.aas-option-name{font-weight:var(--md-sys-typescale-body-medium-weight);color:var(--md-sys-color-on-surface)}.aas-placeholder{color:var(--md-sys-color-on-surface-variant);font-style:italic}.aas-dropdown-arrow{font-size:24px;color:var(--md-sys-color-on-surface-variant);transition:transform var(--transition-normal)}.aas-custom-dropdown.open .aas-dropdown-arrow{transform:rotate(180deg)}.aas-dropdown-menu{position:absolute;top:100%;left:0;right:0;background-color:var(--md-sys-color-surface-container);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:1000;max-height:200px;overflow-y:auto;opacity:0;visibility:hidden;transform:translateY(-10px);transition:all var(--transition-normal)}.aas-custom-dropdown.open .aas-dropdown-menu{opacity:1;visibility:visible;transform:translateY(0)}.aas-dropdown-option{width:100%;padding:var(--spacing-md);border:none;background:none;text-align:left;cursor:pointer;transition:background-color var(--transition-normal);display:flex;align-items:center;gap:var(--spacing-sm)}.aas-dropdown-option:hover{background-color:var(--md-sys-color-surface-variant)}.aas-dropdown-option.selected{background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container)}.aas-clear-filters-button{display:flex;align-items:center;gap:var(--spacing-xs);background-color:var(--md-sys-color-surface);border:1px solid var(--md-sys-color-outline);border-radius:var(--radius-md);padding:var(--spacing-md);color:var(--md-sys-color-on-surface-variant);cursor:pointer;font-size:var(--md-sys-typescale-body-medium-size);transition:all var(--transition-normal);min-height:56px;white-space:nowrap}.aas-clear-filters-button:hover{background-color:var(--md-sys-color-surface-variant);border-color:var(--md-sys-color-outline);color:var(--md-sys-color-on-surface)}.aas-students-list-section{margin-top:var(--spacing-lg)}.aas-loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xxl);gap:var(--spacing-md);min-height:200px;color:var(--md-sys-color-on-surface-variant)}.aas-student-loader{width:16px;height:16px;border-radius:50%;background-color:var(--md-sys-color-on-surface-variant);box-shadow:32px 0 #fff,-32px 0 #fff;position:relative;animation:aas-flash .5s ease-out infinite alternate;margin-bottom:var(--spacing-md)}@keyframes aas-flash{0%{background-color:#fff2;box-shadow:32px 0 #fff2,-32px 0 #fff}50%{background-color:#fff;box-shadow:32px 0 #fff2,-32px 0 #fff2}to{background-color:#fff2;box-shadow:32px 0 #fff,-32px 0 #fff2}}.aas-loading-text{font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);color:var(--md-sys-color-on-surface-variant);margin:0;text-align:center}.aas-students-grid{display:flex;flex-direction:column;gap:var(--spacing-md)}.aas-account-card{background-color:var(--md-sys-color-surface-container);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);padding:var(--spacing-lg);transition:all var(--transition-normal);cursor:pointer;color:var(--md-sys-color-on-surface)}.aas-account-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.aas-account-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.aas-action-buttons{display:flex;gap:var(--spacing-xs);align-items:center}.aas-restore-button{background-color:var(--md-sys-color-surface);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-md);padding:var(--spacing-sm);display:flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0;color:var(--md-sys-color-on-surface-variant);cursor:pointer;transition:all var(--transition-normal)}.aas-restore-button:hover{background-color:var(--md-sys-color-surface-variant);border-color:var(--md-sys-color-outline);color:var(--md-sys-color-on-surface);box-shadow:var(--elevation-1)}.aas-restore-button .material-symbols-outlined{font-size:18px;transition:inherit}.aas-restore-button:active{background-color:var(--md-sys-color-surface-container-high);box-shadow:none;transform:scale(.95)}.aas-account-title{display:block}.aas-account-id{display:flex;align-items:center}.aas-student-id{font-size:.875rem;font-weight:500;color:var(--md-sys-color-primary);background-color:var(--md-sys-color-primary-container);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-sm)}.aas-account-name{margin:0;font-size:1.125rem;font-weight:600;color:var(--md-sys-color-on-surface)}.aas-archived-badge{display:flex;align-items:center;gap:var(--spacing-xs);font-size:.75rem;color:var(--md-sys-color-on-surface-variant);border-radius:var(--radius-sm);margin-top:var(--spacing-xs)}.aas-archived-badge .material-symbols-outlined{font-size:14px}.aas-account-details{display:flex;gap:var(--spacing-md);flex-wrap:wrap;margin-bottom:var(--spacing-md)}.aas-account-detail-item{display:flex;align-items:center;gap:var(--spacing-xs);font-size:.875rem;color:var(--md-sys-color-on-surface-variant);opacity:.85}.aas-account-detail-item .material-symbols-outlined{font-size:.875rem}.aas-no-results{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-2xl);gap:var(--spacing-md);text-align:center}.aas-no-results-icon{font-size:64px;color:var(--md-sys-color-on-surface-variant);opacity:.5}.aas-no-results p{font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);color:var(--md-sys-color-on-surface-variant);margin:0}.aas-clear-search-button-inline{background-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary);border:none;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);cursor:pointer;font-size:var(--md-sys-typescale-body-medium-size);font-weight:500;transition:all var(--transition-normal);margin-top:var(--spacing-sm)}.aas-clear-search-button-inline:hover{background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container)}@media (max-width: 1024px){.aas-students-grid{gap:var(--spacing-md)}}@media (max-width: 768px){.aas-search-filter-container{flex-direction:column;align-items:stretch}.aas-search-container{min-width:unset}.aas-filter-container{flex-direction:column;gap:var(--spacing-sm)}.aas-filter-trigger{min-width:unset}.aas-students-grid{gap:var(--spacing-md)}.aas-account-card{padding:var(--spacing-md)}.aas-account-details{flex-direction:column;gap:var(--spacing-sm)}}@media (max-width: 480px){.aas-account-card-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.aas-account-name{text-align:center;width:100%}}.sgl-student-grades-container{color:var(--md-sys-color-on-surface);box-sizing:border-box;overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth}.sgl-student-grades-container::-webkit-scrollbar{width:8px}.sgl-student-grades-container::-webkit-scrollbar-track{background:var(--md-sys-color-surface-variant);border-radius:var(--radius-sm)}.sgl-student-grades-container::-webkit-scrollbar-thumb{background:var(--md-sys-color-outline-variant);border-radius:var(--radius-sm);transition:background-color var(--transition-normal)}.sgl-student-grades-container::-webkit-scrollbar-thumb:hover{background:var(--md-sys-color-outline)}.sgl-admin-student-header{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md)}.sgl-header-content{flex:1}.sgl-page-title{font-family:var(--md-sys-typescale-headline-large-font);font-size:var(--md-sys-typescale-headline-large-size);font-weight:var(--md-sys-typescale-headline-large-weight);color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-xs) 0}.sgl-page-subtitle{font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);color:var(--md-sys-color-on-surface-variant);margin:0}.sgl-filters-section{margin-bottom:var(--spacing-xl)}.sgl-search-filter-container{display:flex;gap:var(--spacing-md);align-items:flex-end;flex-wrap:wrap;margin-bottom:var(--spacing-lg)}.sgl-search-container{flex:1;min-width:300px}.sgl-search-input-wrapper{position:relative;display:flex;align-items:center;background-color:var(--md-sys-color-surface);border:1px solid var(--md-sys-color-outline);border-radius:var(--radius-md);transition:all var(--transition-normal);min-height:58px}.sgl-search-input-wrapper:focus-within{border-color:var(--md-sys-color-primary);box-shadow:0 0 0 2px rgba(var(--md-sys-color-primary-rgb),.2)}.sgl-search-icon{position:absolute;left:calc(var(--spacing-sm) + 5px);color:var(--md-sys-color-on-surface-variant);font-size:20px;pointer-events:none;z-index:1}.sgl-search-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);padding-left:40px;padding-right:40px;border:none;border-radius:var(--radius-md);background-color:transparent;color:var(--md-sys-color-on-surface);font-size:var(--md-sys-typescale-body-medium-size);transition:all var(--transition-normal);box-sizing:border-box}.sgl-search-input:focus{outline:none}.sgl-search-input::placeholder{color:var(--md-sys-color-on-surface-variant);font-style:italic}.sgl-clear-search-button{position:absolute;right:var(--spacing-xs);background:none;border:none;color:var(--md-sys-color-on-surface-variant);cursor:pointer;padding:var(--spacing-xs);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:all var(--transition-normal);font-size:18px;z-index:2}.sgl-clear-search-button:hover{background-color:var(--md-sys-color-surface-variant);color:var(--md-sys-color-on-surface)}.sgl-filter-container{display:flex;gap:var(--spacing-md);align-items:flex-end;flex-wrap:wrap}.sgl-filter-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.sgl-filter-label{font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);font-weight:var(--md-sys-typescale-body-medium-weight);color:var(--md-sys-color-on-surface)}.sgl-custom-dropdown{position:relative;width:100%}.sgl-dropdown-trigger{width:100%;padding:var(--spacing-md);border:1px solid var(--md-sys-color-outline);border-radius:var(--radius-md);background-color:var(--md-sys-color-surface);color:var(--md-sys-color-on-surface);font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);text-align:left;cursor:pointer;transition:all var(--transition-normal);display:flex;align-items:center;justify-content:space-between;min-height:56px;box-sizing:border-box}.sgl-dropdown-trigger:hover{border-color:var(--md-sys-color-outline)}.sgl-dropdown-trigger:focus{outline:none;border-color:var(--md-sys-color-primary);box-shadow:0 0 0 1px var(--md-sys-color-primary)}.sgl-dropdown-trigger.selected{border-color:var(--md-sys-color-primary)}.sgl-filter-trigger{min-width:180px;font-size:var(--md-sys-typescale-body-medium-size)}.sgl-selected-option{display:flex;align-items:center;gap:var(--spacing-sm);flex:1}.sgl-option-icon{font-size:20px;color:var(--md-sys-color-primary)}.sgl-option-content{display:flex;flex-direction:column;align-items:flex-start}.sgl-option-name{font-weight:var(--md-sys-typescale-body-medium-weight);color:var(--md-sys-color-on-surface)}.sgl-placeholder{color:var(--md-sys-color-on-surface-variant);font-style:italic}.sgl-dropdown-arrow{font-size:24px;color:var(--md-sys-color-on-surface-variant);transition:transform var(--transition-normal)}.sgl-custom-dropdown.open .sgl-dropdown-arrow{transform:rotate(180deg)}.sgl-dropdown-menu{position:absolute;top:100%;left:0;right:0;background-color:var(--md-sys-color-surface-container);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:1000;max-height:200px;overflow-y:auto;opacity:0;visibility:hidden;transform:translateY(-10px);transition:all var(--transition-normal)}.sgl-custom-dropdown.open .sgl-dropdown-menu{opacity:1;visibility:visible;transform:translateY(0)}.sgl-dropdown-option{width:100%;padding:var(--spacing-md);border:none;background:none;text-align:left;cursor:pointer;transition:background-color var(--transition-normal);display:flex;align-items:center;gap:var(--spacing-sm)}.sgl-dropdown-option:hover{background-color:var(--md-sys-color-surface-variant)}.sgl-dropdown-option.selected{background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container)}.sgl-clear-filters-button{display:flex;align-items:center;gap:var(--spacing-xs);background-color:var(--md-sys-color-surface);border:1px solid var(--md-sys-color-outline);border-radius:var(--radius-md);padding:var(--spacing-md);color:var(--md-sys-color-on-surface-variant);cursor:pointer;font-size:var(--md-sys-typescale-body-medium-size);transition:all var(--transition-normal);min-height:56px;white-space:nowrap}.sgl-clear-filters-button:hover{background-color:var(--md-sys-color-surface-variant);border-color:var(--md-sys-color-outline);color:var(--md-sys-color-on-surface)}.sgl-results-section{margin-top:var(--spacing-lg)}.sgl-results-header{margin-bottom:var(--spacing-lg)}.sgl-results-count{font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);color:var(--md-sys-color-on-surface-variant);margin:0}.sgl-masterlist-loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xxl);gap:var(--spacing-md);min-height:200px;color:var(--md-sys-color-on-surface-variant)}.sgl-student-loader{width:16px;height:16px;border-radius:50%;background-color:var(--md-sys-color-on-surface-variant);box-shadow:32px 0 #fff,-32px 0 #fff;position:relative;animation:flash .5s ease-out infinite alternate;margin-bottom:var(--spacing-md)}.sgl-masterlist-loading-text{font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);color:var(--md-sys-color-on-surface-variant);margin:0;text-align:center}.sgl-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-2xl);gap:var(--spacing-lg);text-align:center}.sgl-empty-icon{font-size:64px;color:var(--md-sys-color-outline-variant)}.sgl-empty-title{font-family:var(--md-sys-typescale-title-large-font);font-size:var(--md-sys-typescale-title-large-size);font-weight:var(--md-sys-typescale-title-large-weight);color:var(--md-sys-color-on-surface);margin:0}.sgl-empty-description{font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);color:var(--md-sys-color-on-surface-variant);margin:0;max-width:400px}.sgl-table-container{background-color:var(--md-sys-color-surface);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--elevation-1)}.sgl-students-table{width:100%;border-collapse:collapse;font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size)}.sgl-students-table thead{background-color:var(--md-sys-color-surface-variant)}.sgl-students-table th{padding:var(--spacing-lg);text-align:left;font-weight:var(--md-sys-typescale-title-medium-weight);color:var(--md-sys-color-on-surface-variant);border-bottom:1px solid var(--md-sys-color-outline-variant)}.sgl-students-table td{padding:var(--spacing-lg);border-bottom:1px solid var(--md-sys-color-outline-variant);color:var(--md-sys-color-on-surface)}.sgl-student-row:hover{background-color:var(--md-sys-color-surface-variant)}.sgl-student-row.low-gwa{background-color:var(--md-sys-color-error-container)}.sgl-student-row.low-gwa:hover{background-color:var(--md-sys-color-error-container);opacity:.8}.sgl-student-row:last-child td{border-bottom:none}.sgl-student-id{font-family:var(--md-sys-typescale-body-medium-font);font-weight:500;color:var(--md-sys-color-primary)}.sgl-student-name,.sgl-year-level,.sgl-section{font-weight:500}.sgl-gwa{font-weight:600;font-family:monospace}@media (max-width: 768px){.sgl-search-filter-container{flex-direction:column;align-items:stretch}.sgl-search-container,.sgl-filter-dropdown{min-width:unset}.sgl-table-container{overflow-x:auto}.sgl-students-table{min-width:600px}.sgl-students-table th,.sgl-students-table td{padding:var(--spacing-md)}}@media (max-width: 480px){.sgl-admin-student-header{flex-direction:column;align-items:flex-start}.sgl-page-title{font-size:var(--md-sys-typescale-headline-medium-size)}.sgl-students-table{min-width:500px}.sgl-students-table th,.sgl-students-table td{padding:var(--spacing-sm)}}.admin-room-management-container{height:100%;box-sizing:border-box;overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth;color:var(--md-sys-color-on-surface)}.admin-room-management-container::-webkit-scrollbar{width:8px}.admin-room-management-container::-webkit-scrollbar-track{background:var(--md-sys-color-surface-variant);border-radius:var(--radius-sm)}.admin-room-management-container::-webkit-scrollbar-thumb{background:var(--md-sys-color-outline-variant);border-radius:var(--radius-sm);transition:background-color var(--transition-normal)}.admin-room-management-container::-webkit-scrollbar-thumb:hover{background:var(--md-sys-color-outline)}.admin-room-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);gap:var(--spacing-md)}.header-content{flex:1}.page-title{font-family:var(--md-sys-typescale-headline-large-font);font-size:var(--md-sys-typescale-headline-large-size);color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-xs) 0}.page-subtitle{font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);color:var(--md-sys-color-on-surface-variant);margin:0}.admin-room-creation-form-section{background:var(--md-sys-color-surface-container-low);border-radius:var(--radius-lg);padding:var(--spacing-xl);border:1px solid var(--md-sys-color-outline-variant);margin-bottom:var(--spacing-xl)}.admin-room-section-header{justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-md)}.admin-room-section-title{font-family:var(--md-sys-typescale-title-large-font);font-size:var(--md-sys-typescale-title-large-size);font-weight:var(--md-sys-typescale-title-large-weight);color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-sm) 0}.admin-room-section-subtitle{font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);color:var(--md-sys-color-on-surface-variant);margin:0}.admin-room-form-container{max-width:100%}.admin-room-form-group{display:flex;flex-direction:column;flex:1}.admin-room-form-row{display:flex;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.admin-room-form-label{display:block;font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);font-weight:500;color:var(--md-sys-color-on-surface);margin-bottom:var(--spacing-sm)}.admin-room-form-input,.admin-room-form-select,.admin-room-form-textarea{width:100%;padding:var(--spacing-md);border:1px solid var(--md-sys-color-outline);border-radius:var(--radius-md);background-color:var(--md-sys-color-surface);color:var(--md-sys-color-on-surface);font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);transition:all var(--transition-normal);box-sizing:border-box;min-height:58px;margin-bottom:var(--spacing-md)}.admin-room-form-input:focus,.admin-room-form-select:focus,.admin-room-form-textarea:focus{outline:none;border-color:var(--md-sys-color-primary);box-shadow:0 0 0 1px var(--md-sys-color-primary)}.admin-room-form-textarea{resize:vertical;min-height:100px;font-family:inherit}.admin-room-radio-group{display:flex;gap:var(--spacing-lg);margin-top:var(--spacing-sm)}.admin-room-radio-option{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;padding:var(--spacing-sm);border-radius:var(--radius-sm);transition:background-color .2s ease}.admin-room-radio-option:hover{background-color:var(--md-sys-color-surface-variant)}.admin-room-radio-option input[type=radio]{width:20px;height:20px;margin:0;accent-color:var(--md-sys-color-primary)}.admin-room-radio-label{font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);color:var(--md-sys-color-on-surface)}.admin-room-form-help{font-size:var(--md-sys-typescale-body-small-size);color:var(--md-sys-color-on-surface-variant);margin-top:var(--spacing-sm);margin-bottom:0}.admin-room-form-help.admin-room-warning{color:var(--md-sys-color-error);font-weight:500}.admin-room-form-actions{display:flex;justify-content:end;margin-top:var(--spacing-xl)}.admin-room-create-button{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);border:none;border-radius:var(--radius-full);background:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary);font-family:var(--md-sys-typescale-label-large-font);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);cursor:pointer;transition:all .2s ease;min-height:56px;min-width:160px;justify-content:center}.admin-room-create-button:hover{background:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);transform:translateY(-1px);box-shadow:0 4px 8px #0000001a}.admin-room-create-button:disabled{background:var(--md-sys-color-surface-variant);color:var(--md-sys-color-on-surface-variant);cursor:not-allowed;transform:none;box-shadow:none}.admin-room-create-button.admin-room-loading{pointer-events:none}.admin-room-loading-icon{animation:spin 1s linear infinite}.admin-room-rooms-list-section{background:var(--md-sys-color-surface-container-low);border-radius:var(--radius-lg);padding:var(--spacing-xl);border:1px solid var(--md-sys-color-outline-variant)}.admin-room-rooms-grid{display:flex;flex-direction:column;gap:var(--spacing-md)}@media (max-width: 768px){.admin-room-rooms-grid{grid-template-columns:1fr}}.admin-room-room-card{background-color:var(--md-sys-color-surface-container);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);padding:var(--spacing-lg);transition:all var(--transition-normal);cursor:pointer;color:var(--md-sys-color-on-surface)}.admin-room-room-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.admin-room-room-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-md)}.admin-room-room-title{display:block}.admin-room-room-name{margin:0;font-size:1.125rem;font-weight:600;color:var(--md-sys-color-on-surface)}.admin-room-action-buttons{display:flex;gap:var(--spacing-xs);align-items:center}.admin-room-edit-button{background-color:var(--md-sys-color-surface);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-md);padding:var(--spacing-sm);display:flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0;color:var(--md-sys-color-on-surface-variant);cursor:pointer;transition:all var(--transition-normal)}.admin-room-assign-button{background-color:var(--md-sys-color-surface);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-md);padding:var(--spacing-sm);display:flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0;color:var(--md-sys-color-primary);cursor:pointer;transition:all var(--transition-normal)}.admin-room-assign-button:hover{background-color:var(--md-sys-color-primary-container);border-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary-container);box-shadow:var(--elevation-1)}.admin-room-assign-button .material-symbols-outlined{font-size:18px;transition:inherit}.admin-room-assign-button:active{background-color:var(--md-sys-color-primary-container);box-shadow:none;transform:scale(.95)}.admin-room-edit-button:hover{background-color:var(--md-sys-color-surface-variant);border-color:var(--md-sys-color-outline);color:var(--md-sys-color-on-surface);box-shadow:var(--elevation-1)}.admin-room-edit-button .material-symbols-outlined{font-size:18px;transition:inherit}.admin-room-edit-button:active{background-color:var(--md-sys-color-surface-container-high);box-shadow:none;transform:scale(.95)}.admin-room-remove-button{background-color:var(--md-sys-color-surface);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-md);padding:var(--spacing-sm);display:flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0;color:var(--md-sys-color-error);cursor:pointer;transition:all var(--transition-normal)}.admin-room-remove-button:hover{background-color:var(--md-sys-color-error-container);border-color:var(--md-sys-color-error);color:var(--md-sys-color-on-error-container);box-shadow:var(--elevation-1)}.admin-room-remove-button .material-symbols-outlined{font-size:18px;transition:inherit}.admin-room-remove-button:active{background-color:var(--md-sys-color-error-container);box-shadow:none;transform:scale(.95)}.admin-room-room-number{background:var(--md-sys-color-secondary-container);color:var(--md-sys-color-on-secondary-container);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-family:var(--md-sys-typescale-label-small-font);font-size:var(--md-sys-typescale-label-small-size);font-weight:var(--md-sys-typescale-label-small-weight)}.admin-room-room-details{display:flex;gap:var(--spacing-xl);flex-wrap:wrap;margin-bottom:var(--spacing-md)}.admin-room-room-location,.admin-room-room-assignment{display:flex;align-items:center;gap:var(--spacing-xs);font-size:.875rem;color:var(--md-sys-color-on-surface-variant);opacity:.85}.admin-room-room-location .material-symbols-outlined,.admin-room-room-assignment .material-symbols-outlined{font-size:.875rem}.admin-room-unassign-button{background-color:var(--md-sys-color-surface);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-md);padding:var(--spacing-sm);display:flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0;color:var(--md-sys-color-primary);cursor:pointer;transition:all var(--transition-normal)}.admin-room-unassign-button:hover{background-color:var(--md-sys-color-primary-container);border-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary-container);box-shadow:var(--elevation-1)}.admin-room-unassign-button .material-symbols-outlined{font-size:18px;transition:inherit}.admin-room-unassign-button:active{background-color:var(--md-sys-color-primary-container);box-shadow:none;transform:scale(.95)}.custom-dropdown{position:relative;width:100%}.dropdown-trigger{width:100%;padding:var(--spacing-md);border:1px solid var(--md-sys-color-outline);border-radius:var(--radius-md);background-color:var(--md-sys-color-surface);color:var(--md-sys-color-on-surface);font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);text-align:left;cursor:pointer;transition:all var(--transition-normal);display:flex;align-items:center;justify-content:space-between;min-height:56px;box-sizing:border-box}.dropdown-trigger:hover{border-color:var(--md-sys-color-outline)}.dropdown-trigger:focus{outline:none;border-color:var(--md-sys-color-primary);box-shadow:0 0 0 1px var(--md-sys-color-primary)}.dropdown-trigger.selected{border-color:var(--md-sys-color-primary)}.dropdown-trigger.selected .option-description{display:none}.selected-option{display:flex;align-items:center;gap:var(--spacing-sm);flex:1}.option-icon{font-size:24px;color:var(--md-sys-color-primary)}.option-content{display:flex;flex-direction:column;align-items:flex-start}.option-name{font-weight:var(--md-sys-typescale-body-medium-weight);color:var(--md-sys-color-on-surface)}.option-description{font-size:var(--md-sys-typescale-body-small-size);color:var(--md-sys-color-on-surface-variant)}.placeholder{color:var(--md-sys-color-on-surface-variant)}.dropdown-arrow{font-size:24px;color:var(--md-sys-color-on-surface-variant);transition:transform var(--transition-normal)}.custom-dropdown.open .dropdown-arrow{transform:rotate(180deg)}.dropdown-menu{position:absolute;top:100%;left:0;right:0;background-color:var(--md-sys-color-surface-container);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:1000;max-height:200px;overflow-y:auto;opacity:0;visibility:hidden;transform:translateY(-10px);transition:all var(--transition-normal)}.custom-dropdown.open .dropdown-menu{opacity:1;visibility:visible;transform:translateY(0)}.dropdown-option{width:100%;padding:var(--spacing-md);border:none;background:none;text-align:left;cursor:pointer;transition:background-color var(--transition-normal);display:flex;align-items:center;gap:var(--spacing-sm)}.dropdown-option:hover{background-color:var(--md-sys-color-surface-variant)}.dropdown-option.selected{background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container)}@media (max-width: 768px){.admin-room-management-container{padding:var(--spacing-md)}.admin-room-header{align-items:flex-start;text-align:left}.page-title{font-size:var(--md-sys-typescale-headline-medium-size)}.admin-room-form-row{grid-template-columns:1fr;gap:var(--spacing-md)}.admin-room-radio-group{gap:var(--spacing-sm)}.dropdown-trigger{padding:var(--spacing-sm) var(--spacing-md);font-size:1rem;min-height:48px}.dropdown-option{padding:var(--spacing-sm) var(--spacing-md);font-size:1rem}.admin-room-rooms-grid{grid-template-columns:1fr}.admin-room-room-header{align-items:flex-start;gap:var(--spacing-xs)}}@media (max-width: 480px){.admin-room-creation-form-section,.admin-room-rooms-list-section{padding:var(--spacing-lg)}.admin-room-create-button{min-width:140px;padding:var(--spacing-sm) var(--spacing-lg)}}.admin-room-edit-form-section{margin-top:var(--spacing-md);animation:slideDown .3s ease-out}.admin-room-edit-form-container{background-color:var(--md-sys-color-surface-container);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--elevation-1)}.admin-room-edit-form-header{margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--md-sys-color-outline-variant)}.admin-room-edit-form-title{font-family:var(--md-sys-typescale-title-medium-font);font-size:var(--md-sys-typescale-title-medium-size);font-weight:var(--md-sys-typescale-title-medium-weight);color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-xs) 0;display:flex;align-items:center;gap:var(--spacing-sm)}.admin-room-edit-form-title:before{content:"edit";font-family:Material Symbols Outlined;font-size:var(--md-sys-typescale-title-medium-size);color:var(--md-sys-color-primary)}.admin-room-edit-form-subtitle{font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);color:var(--md-sys-color-on-surface-variant);margin:0}.admin-room-edit-form-content{display:flex;flex-direction:column}.admin-room-edit-info-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.admin-room-edit-form-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;padding-top:var(--spacing-lg);border-top:1px solid var(--md-sys-color-outline-variant)}.admin-room-cancel-button{background-color:var(--md-sys-color-surface);color:var(--md-sys-color-on-surface);border:1px solid var(--md-sys-color-outline);border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-lg);font-family:var(--md-sys-typescale-label-large-font);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);cursor:pointer;transition:all var(--transition-normal);min-width:80px;height:40px}.admin-room-cancel-button:hover{background-color:var(--md-sys-color-surface-variant);border-color:var(--md-sys-color-outline-variant);box-shadow:var(--elevation-1)}.admin-room-cancel-button:active{background-color:var(--md-sys-color-surface-container-high);transform:scale(.98);box-shadow:none}.admin-room-update-button{background-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary);border:1px solid var(--md-sys-color-primary);border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-lg);font-family:var(--md-sys-typescale-label-large-font);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);cursor:pointer;transition:all var(--transition-normal);min-width:120px;height:40px}.admin-room-update-button:hover{background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);box-shadow:var(--elevation-2)}.admin-room-update-button:active{background-color:var(--md-sys-color-primary-container);transform:scale(.98);box-shadow:var(--elevation-1)}.admin-room-update-button:disabled{background-color:var(--md-sys-color-surface-variant);color:var(--md-sys-color-on-surface-variant);border-color:var(--md-sys-color-outline-variant);cursor:not-allowed;opacity:.6}.admin-room-assign-form-section{margin-top:var(--spacing-lg);padding:var(--spacing-lg);background-color:var(--md-sys-color-surface-container-low);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);animation:slideIn .3s ease-out}.admin-room-assign-form-container{display:flex;flex-direction:column;gap:var(--spacing-lg)}.admin-room-assign-form-header{display:flex;flex-direction:column;gap:var(--spacing-xs);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--md-sys-color-outline-variant)}.admin-room-assign-form-title{font-family:var(--md-sys-typescale-title-medium-font);font-size:var(--md-sys-typescale-title-medium-size);font-weight:var(--md-sys-typescale-title-medium-weight);color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-xs) 0;display:flex;align-items:center;gap:var(--spacing-sm)}.admin-room-assign-form-title:before{content:"assignment";font-family:Material Symbols Outlined;font-size:var(--md-sys-typescale-title-medium-size);color:var(--md-sys-color-primary)}.admin-room-assign-form-subtitle{font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);color:var(--md-sys-color-on-surface-variant);margin:0}.admin-room-assign-form-content{display:flex;flex-direction:column}.admin-room-assign-info-row{display:grid;grid-template-columns:1fr;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.admin-room-assign-form-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;padding-top:var(--spacing-lg);border-top:1px solid var(--md-sys-color-outline-variant)}.admin-room-assign-submit-button{background-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary);border:1px solid var(--md-sys-color-primary);border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-lg);font-family:var(--md-sys-typescale-label-large-font);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);cursor:pointer;transition:all var(--transition-normal);min-width:120px;height:40px;display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs)}.admin-room-assign-submit-button:hover{background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);box-shadow:var(--elevation-2)}.admin-room-assign-submit-button:active{background-color:var(--md-sys-color-primary-container);transform:scale(.98);box-shadow:var(--elevation-1)}.admin-room-assign-submit-button:disabled{background-color:var(--md-sys-color-surface-variant);color:var(--md-sys-color-on-surface-variant);border-color:var(--md-sys-color-outline-variant);cursor:not-allowed;opacity:.6}.admin-room-assign-submit-button .material-symbols-outlined{font-size:18px}@media (max-width: 768px){.admin-room-edit-info-row{grid-template-columns:1fr}.admin-room-edit-form-actions,.admin-room-assign-form-actions{flex-direction:column;gap:var(--spacing-sm)}.admin-room-cancel-button,.admin-room-update-button,.admin-room-assign-submit-button{width:100%}.admin-room-assign-info-row{grid-template-columns:1fr}}.sectionmgmt-container{color:var(--md-sys-color-on-surface);box-sizing:border-box;overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth}.sectionmgmt-container::-webkit-scrollbar{width:8px}.sectionmgmt-container::-webkit-scrollbar-track{background:var(--md-sys-color-surface-variant);border-radius:var(--radius-sm)}.sectionmgmt-container::-webkit-scrollbar-thumb{background:var(--md-sys-color-outline-variant);border-radius:var(--radius-sm);transition:background-color var(--transition-normal)}.sectionmgmt-container::-webkit-scrollbar-thumb:hover{background:var(--md-sys-color-outline)}.sectionmgmt-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);gap:var(--spacing-md)}.sectionmgmt-header-content{flex:1}.sectionmgmt-page-title{font-family:var(--md-sys-typescale-headline-large-font);font-size:var(--md-sys-typescale-headline-large-size);font-weight:var(--md-sys-typescale-headline-large-weight);color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-xs) 0}.sectionmgmt-page-subtitle{font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);color:var(--md-sys-color-on-surface-variant);margin:0}.sectionmgmt-section-title{font-family:var(--md-sys-typescale-title-large-font);font-size:var(--md-sys-typescale-title-large-size);font-weight:var(--md-sys-typescale-title-large-weight);color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-sm) 0}.sectionmgmt-section-subtitle{font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);color:var(--md-sys-color-on-surface-variant)}.sectionmgmt-success-message{display:flex;align-items:center;gap:var(--spacing-sm);background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-lg);margin-bottom:var(--spacing-xl);border:1px solid var(--md-sys-color-primary);animation:slideIn .3s ease-out}.sectionmgmt-success-icon{font-size:24px;color:var(--md-sys-color-primary)}.sectionmgmt-success-text{font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);font-weight:var(--md-sys-typescale-body-medium-weight)}.sectionmgmt-error-message{display:flex;align-items:center;gap:var(--spacing-sm);background-color:var(--md-sys-color-error-container);color:var(--md-sys-color-on-error-container);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-lg);margin-bottom:var(--spacing-xl);border:1px solid var(--md-sys-color-error);animation:slideIn .3s ease-out}.sectionmgmt-error-icon{font-size:24px;color:var(--md-sys-color-error)}.sectionmgmt-error-text{font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);font-weight:var(--md-sys-typescale-body-medium-weight)}.sectionmgmt-creation-form-section{background-color:var(--md-sys-color-surface-container-low);border-radius:var(--radius-xl);padding:var(--spacing-xl);margin-bottom:var(--spacing-xl);border:1px solid var(--md-sys-color-outline-variant)}.sectionmgmt-section-header{margin-bottom:var(--spacing-lg)}.sectionmgmt-form-container{max-width:100%}.sectionmgmt-basic-info-row{display:grid;grid-template-columns:2fr 1fr;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.sectionmgmt-edit-info-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.sectionmgmt-create-info-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}@media (max-width: 768px){.sectionmgmt-basic-info-row,.sectionmgmt-edit-info-row,.sectionmgmt-create-info-row{grid-template-columns:1fr}}.sectionmgmt-form-label{display:block;font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);color:var(--md-sys-color-on-surface);margin-bottom:var(--spacing-sm)}.sectionmgmt-form-input{width:100%;padding:var(--spacing-md);border:1px solid var(--md-sys-color-outline);border-radius:var(--radius-md);background-color:var(--md-sys-color-surface);color:var(--md-sys-color-on-surface);font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);transition:all var(--transition-normal);box-sizing:border-box;height:58px}.sectionmgmt-form-input:focus{outline:none;border-color:var(--md-sys-color-primary);box-shadow:0 0 0 1px var(--md-sys-color-primary)}.sectionmgmt-form-input:read-only{background-color:var(--md-sys-color-surface-variant);color:var(--md-sys-color-on-surface-variant)}.sectionmgmt-form-help{font-family:var(--md-sys-typescale-body-small-font);font-size:var(--md-sys-typescale-body-small-size);color:var(--md-sys-color-on-surface-variant);margin-top:var(--spacing-xs);margin-bottom:0}.sectionmgmt-custom-dropdown{position:relative;width:100%}.sectionmgmt-dropdown-trigger{width:100%;padding:var(--spacing-md);border:1px solid var(--md-sys-color-outline);border-radius:var(--radius-md);background-color:var(--md-sys-color-surface);color:var(--md-sys-color-on-surface);font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);text-align:left;cursor:pointer;transition:border-color var(--transition-normal),box-shadow var(--transition-normal),background-color var(--transition-normal);display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);box-sizing:border-box;height:58px}.sectionmgmt-dropdown-trigger:hover{border-color:var(--md-sys-color-primary)}.sectionmgmt-dropdown-trigger:focus{outline:none;border-color:var(--md-sys-color-primary);box-shadow:0 0 0 2px var(--md-sys-color-primary-container)}.sectionmgmt-dropdown-trigger:disabled{background-color:var(--md-sys-color-surface-variant);color:var(--md-sys-color-on-surface-variant);cursor:not-allowed;border-color:var(--md-sys-color-outline-variant)}.sectionmgmt-dropdown-trigger.selected{border-color:var(--md-sys-color-primary)}.sectionmgmt-selected-option{display:flex;align-items:center;gap:var(--spacing-sm);flex:1}.sectionmgmt-option-content{display:flex;flex-direction:column;gap:2px}.sectionmgmt-option-name{font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);font-weight:var(--md-sys-typescale-body-medium-weight);color:var(--md-sys-color-on-surface)}.sectionmgmt-option-description{font-family:var(--md-sys-typescale-body-small-font);font-size:var(--md-sys-typescale-body-small-size);color:var(--md-sys-color-on-surface-variant)}.sectionmgmt-option-icon{font-size:20px;color:var(--md-sys-color-primary)}.sectionmgmt-placeholder{color:var(--md-sys-color-on-surface-variant);font-style:italic}.sectionmgmt-dropdown-arrow{font-size:20px;color:var(--md-sys-color-on-surface-variant);transition:transform var(--transition-normal)}.sectionmgmt-custom-dropdown.open .sectionmgmt-dropdown-arrow{transform:rotate(180deg)}.sectionmgmt-dropdown-menu{position:absolute;top:100%;left:0;right:0;background-color:var(--md-sys-color-surface-container);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-sm);box-shadow:var(--elevation-2);z-index:1010;overflow-y:auto;margin-top:4px;opacity:0;visibility:hidden;transform:translateY(-8px);max-height:200px;transition:opacity var(--transition-normal),visibility var(--transition-normal),transform var(--transition-normal)}.sectionmgmt-custom-dropdown.open .sectionmgmt-dropdown-menu{opacity:1;visibility:visible;transform:translateY(0)}.sectionmgmt-dropdown-option{width:100%;padding:var(--spacing-md);border:none;background-color:transparent;color:var(--md-sys-color-on-surface);text-align:left;cursor:pointer;transition:background-color var(--transition-normal);display:flex;align-items:center;gap:var(--spacing-sm);box-sizing:border-box}.sectionmgmt-dropdown-option:hover{background-color:var(--md-sys-color-surface-container-high)}.sectionmgmt-dropdown-option.selected{background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container)}.sectionmgmt-dropdown-option.selected .sectionmgmt-option-icon{color:var(--md-sys-color-primary)}.sectionmgmt-search-container{position:relative;padding:var(--spacing-sm);border-bottom:1px solid var(--md-sys-color-outline-variant);position:sticky;top:0;left:0;right:0;background-color:var(--md-sys-color-surface-container);z-index:1000;display:flex;align-items:center;gap:var(--spacing-sm)}.sectionmgmt-select-all-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:var(--md-sys-color-primary-container);border:1px solid var(--md-sys-color-primary);border-radius:var(--radius-sm);color:var(--md-sys-color-on-primary-container);cursor:pointer;transition:all var(--transition-normal);flex-shrink:0}.sectionmgmt-select-all-btn:hover{background:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary);box-shadow:var(--elevation-1)}.sectionmgmt-select-all-btn:active{transform:translateY(1px);box-shadow:none}.sectionmgmt-select-all-btn .material-symbols-outlined{font-size:18px}.sectionmgmt-search-input{flex:1;padding:var(--spacing-sm) var(--spacing-md) var(--spacing-sm) 30px;border:1px solid var(--md-sys-color-outline);border-radius:var(--radius-md);background-color:var(--md-sys-color-surface);color:var(--md-sys-color-on-surface);font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);transition:all var(--transition-normal);box-sizing:border-box}.sectionmgmt-search-input:focus{outline:none;border-color:var(--md-sys-color-primary);box-shadow:0 0 0 1px var(--md-sys-color-primary)}.sectionmgmt-search-icon{position:absolute;left:calc(var(--spacing-sm) + var(--spacing-sm));top:50%;transform:translateY(-50%);font-size:18px;color:var(--md-sys-color-on-surface-variant);pointer-events:none}.sectionmgmt-search-icon-create,.sectionmgmt-search-icon-edit{position:absolute;left:calc(var(--spacing-lg) + var(--spacing-lg) + 10px);top:50%;transform:translateY(-50%);font-size:18px;color:var(--md-sys-color-on-surface-variant);pointer-events:none}.sectionmgmt-no-results{padding:var(--spacing-lg);text-align:center;color:var(--md-sys-color-on-surface-variant);display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm)}.sectionmgmt-no-results .material-symbols-outlined{font-size:32px;opacity:.6}.sectionmgmt-selected-students{background-color:var(--md-sys-color-surface-container);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-sm);padding:var(--spacing-md);margin-top:var(--spacing-md)}.sectionmgmt-selected-students-header{margin-bottom:var(--spacing-sm)}.sectionmgmt-selected-count{font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);font-weight:var(--md-sys-typescale-body-medium-weight);color:var(--md-sys-color-primary)}.sectionmgmt-selected-students-list{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.sectionmgmt-selected-student-chip{display:flex;align-items:center;gap:var(--spacing-xs);background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-full);font-family:var(--md-sys-typescale-body-small-font);font-size:var(--md-sys-typescale-body-small-size)}.sectionmgmt-student-name{font-weight:var(--md-sys-typescale-body-small-weight)}.sectionmgmt-student-id{opacity:.8;font-size:calc(var(--md-sys-typescale-body-small-size) * .9)}.sectionmgmt-remove-student{background:none;border:none;color:var(--md-sys-color-on-primary-container);cursor:pointer;padding:2px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;transition:background-color var(--transition-normal)}.sectionmgmt-remove-student:hover{background-color:#0000001a}.sectionmgmt-remove-student .material-symbols-outlined{font-size:16px}.sectionmgmt-student-option{padding-left:var(--spacing-md)}.sectionmgmt-student-checkbox{margin-right:var(--spacing-xs)}.sectionmgmt-student-checkbox .material-symbols-outlined{font-size:20px;color:var(--md-sys-color-primary)}.sectionmgmt-form-actions{display:flex;justify-content:flex-end;margin-top:var(--spacing-sm)}.sectionmgmt-create-button{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);background-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary);border:none;border-radius:var(--radius-full);font-family:var(--md-sys-typescale-label-large-font);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);cursor:pointer;transition:background-color var(--transition-normal),box-shadow var(--transition-normal);min-width:160px;justify-content:center}.sectionmgmt-create-button:hover:not(:disabled){background-color:var(--md-sys-color-primary-variant);box-shadow:var(--elevation-1)}.sectionmgmt-create-button:disabled{background-color:var(--md-sys-color-surface-variant);color:var(--md-sys-color-on-surface-variant);cursor:not-allowed}.sectionmgmt-create-button.loading{pointer-events:none}.sectionmgmt-loading-icon{animation:spin 1s linear infinite}.sectionmgmt-recent-sections-section{background-color:var(--md-sys-color-surface-container-low);border-radius:var(--radius-xl);padding:var(--spacing-xl);border:1px solid var(--md-sys-color-outline-variant)}.sectionmgmt-sections-grid{display:flex;flex-direction:column;gap:var(--spacing-md)}@media (max-width: 768px){.sectionmgmt-sections-grid{grid-template-columns:1fr}}.sectionmgmt-section-card{background-color:var(--md-sys-color-surface-container);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);padding:var(--spacing-lg);transition:all var(--transition-normal);cursor:pointer;color:var(--md-sys-color-on-surface)}.sectionmgmt-section-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.sectionmgmt-section-header{margin-bottom:var(--spacing-md)}.sectionmgmt-section-header-card{display:flex;justify-content:space-between;margin-bottom:var(--spacing-md)}.sectionmgmt-section-title{display:block}.sectionmgmt-section-name{margin:0;font-size:1.125rem;font-weight:600;color:var(--md-sys-color-on-surface)}.sectionmgmt-section-details{display:flex;gap:var(--spacing-xl);flex-wrap:wrap;margin-bottom:var(--spacing-md)}.sectionmgmt-section-adviser,.sectionmgmt-section-students,.sectionmgmt-section-room,.sectionmgmt-section-created{display:flex;align-items:center;gap:var(--spacing-xs);font-size:.875rem;color:var(--md-sys-color-on-surface-variant);opacity:.85}.sectionmgmt-section-adviser .material-symbols-outlined,.sectionmgmt-section-students .material-symbols-outlined,.sectionmgmt-section-room .material-symbols-outlined,.sectionmgmt-section-created .material-symbols-outlined{font-size:.875rem}.sectionmgmt-action-buttons{display:flex;gap:var(--spacing-xs);align-items:center}.sectionmgmt-edit-button{background-color:var(--md-sys-color-surface);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-md);padding:var(--spacing-sm);display:flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0;color:var(--md-sys-color-on-surface-variant);cursor:pointer;transition:all var(--transition-normal)}.sectionmgmt-edit-button:hover{background-color:var(--md-sys-color-surface-variant);border-color:var(--md-sys-color-outline);color:var(--md-sys-color-on-surface);box-shadow:var(--elevation-1)}.sectionmgmt-edit-button .material-symbols-outlined{font-size:18px;transition:inherit}.sectionmgmt-edit-button:active{background-color:var(--md-sys-color-surface-container-high);box-shadow:none;transform:scale(.95)}.sectionmgmt-remove-button{background-color:var(--md-sys-color-surface);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-md);padding:var(--spacing-sm);display:flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0;color:var(--md-sys-color-error);cursor:pointer;transition:all var(--transition-normal)}.sectionmgmt-remove-button:hover{background-color:var(--md-sys-color-error-container);border-color:var(--md-sys-color-error);color:var(--md-sys-color-on-error-container);box-shadow:var(--elevation-1)}.sectionmgmt-remove-button .material-symbols-outlined{font-size:18px;transition:inherit}.sectionmgmt-remove-button:active{background-color:var(--md-sys-color-error-container);box-shadow:none;transform:scale(.95)}.sectionmgmt-section-meta{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-sm)}.sectionmgmt-created-date{font-family:var(--md-sys-typescale-body-small-font);font-size:var(--md-sys-typescale-body-small-size);color:var(--md-sys-color-on-surface-variant)}.sectionmgmt-status-badge{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-full);font-family:var(--md-sys-typescale-label-small-font);font-size:var(--md-sys-typescale-label-small-size);font-weight:var(--md-sys-typescale-label-small-weight);text-transform:uppercase}.sectionmgmt-status-active{background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container)}@keyframes slideIn{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}.sectionmgmt-edit-form-section{margin-top:var(--spacing-md);animation:slideDown .3s ease-out}.sectionmgmt-edit-form-container{background-color:var(--md-sys-color-surface-container);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--elevation-1)}.sectionmgmt-edit-form-header{margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--md-sys-color-outline-variant)}.sectionmgmt-edit-form-title{font-family:var(--md-sys-typescale-title-medium-font);font-size:var(--md-sys-typescale-title-medium-size);font-weight:var(--md-sys-typescale-title-medium-weight);color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-xs) 0;display:flex;align-items:center;gap:var(--spacing-sm)}.sectionmgmt-edit-form-title:before{content:"edit";font-family:Material Symbols Outlined;font-size:var(--md-sys-typescale-title-medium-size);color:var(--md-sys-color-primary)}.sectionmgmt-edit-form-subtitle{font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);color:var(--md-sys-color-on-surface-variant);margin:0}.sectionmgmt-edit-form-content{display:flex;flex-direction:column}.sectionmgmt-edit-form-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;margin-top:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:1px solid var(--md-sys-color-outline-variant)}.sectionmgmt-cancel-button{background-color:var(--md-sys-color-surface);color:var(--md-sys-color-on-surface);border:1px solid var(--md-sys-color-outline);border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-lg);font-family:var(--md-sys-typescale-label-large-font);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);cursor:pointer;transition:all var(--transition-normal);min-width:80px;height:40px}.sectionmgmt-cancel-button:hover{background-color:var(--md-sys-color-surface-variant);border-color:var(--md-sys-color-outline-variant);box-shadow:var(--elevation-1)}.sectionmgmt-cancel-button:active{background-color:var(--md-sys-color-surface-container-high);transform:scale(.98);box-shadow:none}.sectionmgmt-submit-button{background-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary);border:1px solid var(--md-sys-color-primary);border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-lg);font-family:var(--md-sys-typescale-label-large-font);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);cursor:pointer;transition:all var(--transition-normal);min-width:120px;height:40px}.sectionmgmt-submit-button:hover{background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);box-shadow:var(--elevation-2)}.sectionmgmt-submit-button:active{background-color:var(--md-sys-color-primary-container);transform:scale(.98);box-shadow:var(--elevation-1)}.sectionmgmt-submit-button:disabled{background-color:var(--md-sys-color-surface-variant);color:var(--md-sys-color-on-surface-variant);border-color:var(--md-sys-color-outline-variant);cursor:not-allowed;opacity:.6}@media (max-width: 1024px){.sectionmgmt-container{padding:var(--spacing-md)}.sectionmgmt-creation-form-section,.sectionmgmt-recent-sections-section{padding:var(--spacing-lg)}}@media (max-width: 768px){.sectionmgmt-container{padding:var(--spacing-sm)}.sectionmgmt-creation-form-section,.sectionmgmt-recent-sections-section{padding:var(--spacing-md)}.sectionmgmt-header{flex-direction:column;align-items:flex-start}.sectionmgmt-form-actions{justify-content:stretch}.sectionmgmt-create-button{width:100%}}.scheduleassign-container{color:var(--md-sys-color-on-surface);box-sizing:border-box;overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth}.scheduleassign-container::-webkit-scrollbar{width:8px}.scheduleassign-container::-webkit-scrollbar-track{background:var(--md-sys-color-surface-variant);border-radius:var(--radius-sm)}.scheduleassign-container::-webkit-scrollbar-thumb{background:var(--md-sys-color-outline-variant);border-radius:var(--radius-sm);transition:background-color var(--transition-normal)}.scheduleassign-container::-webkit-scrollbar-thumb:hover{background:var(--md-sys-color-outline)}.scheduleassign-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);gap:var(--spacing-md)}.scheduleassign-header-content{flex:1}.scheduleassign-page-title{font-family:var(--md-sys-typescale-headline-large-font);font-size:var(--md-sys-typescale-headline-large-size);font-weight:var(--md-sys-typescale-headline-large-weight);color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-xs) 0}.scheduleassign-page-subtitle{font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);color:var(--md-sys-color-on-surface-variant);margin:0}.scheduleassign-section-title{font-family:var(--md-sys-typescale-title-large-font);font-size:var(--md-sys-typescale-title-large-size);font-weight:var(--md-sys-typescale-title-large-weight);color:var(--md-sys-color-on-surface);margin:0}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.scheduleassign-add-section{background:var(--surface-color);border-radius:12px;border:1px solid var(--border-color);text-align:center}.scheduleassign-section-title{font-size:1.25rem;font-weight:600;color:var(--text-primary)}.scheduleassign-add-schedule-card{display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl);background:var(--md-sys-color-surface-container-low);color:var(--md-sys-color-on-surface);border:2px dashed var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);font-family:var(--md-sys-typescale-body-large-font);transition:all var(--transition-normal);cursor:pointer;width:100%;box-shadow:0 2px 4px #0000001a}.scheduleassign-add-schedule-card:hover:not(:disabled){color:var(--md-sys-color-on-primary-container);border-color:var(--md-sys-color-primary);box-shadow:0 4px 12px #0003}.scheduleassign-add-schedule-card:active{transform:translateY(0)}.scheduleassign-add-schedule-card:disabled{background:var(--md-sys-color-surface-variant);color:var(--md-sys-color-on-surface-variant);border-color:var(--md-sys-color-outline-variant);cursor:not-allowed;opacity:.6;transform:none;box-shadow:none}.scheduleassign-add-schedule-card.cancel-mode{background:var(--md-sys-color-surface-container-low);color:var(--md-sys-color-on-error-container);border-color:var(--md-sys-color-error)}.scheduleassign-add-schedule-card.cancel-mode:hover{border-color:var(--md-sys-color-error)}.scheduleassign-card-content{display:flex;flex-direction:column;align-items:center;text-align:center}.scheduleassign-saved-schedules{display:flex;flex-direction:column;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.scheduleassign-card-title{font-family:var(--md-sys-typescale-headline-small-font);font-size:var(--md-sys-typescale-headline-small-size);font-weight:var(--md-sys-typescale-headline-small-weight);margin:0;color:inherit}.scheduleassign-card-subtitle{font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);font-weight:var(--md-sys-typescale-body-medium-weight);margin:0;opacity:.8;color:inherit}.scheduleassign-add-form{margin-top:1rem;padding:2rem;background-color:var(--md-sys-color-surface-container);border-radius:var(--radius-lg);border:1px solid var(--md-sys-color-outline-variant);box-shadow:var(--elevation-1);animation:slideDown .3s ease-out}.scheduleassign-form-title{font-size:1.5rem;font-weight:600;color:var(--text-primary);text-align:center}.scheduleassign-form-inputs{display:flex;flex-direction:column;gap:var(--spacing-lg);margin-bottom:2rem}.scheduleassign-subject-teacher-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg);align-items:end}.scheduleassign-input-group{display:flex;flex-direction:column;gap:.5rem}.scheduleassign-save-schedule-btn,.scheduleassign-cancel-schedule-btn{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);border:none;border-radius:var(--radius-full);font-family:var(--md-sys-typescale-label-large-font);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);cursor:pointer;transition:all var(--transition-normal);min-width:140px;justify-content:center;min-height:56px;box-shadow:0 2px 4px #0000001a}.scheduleassign-save-schedule-btn{background:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary)}.scheduleassign-save-schedule-btn:hover:not(:disabled){background:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);transform:translateY(-1px);box-shadow:0 4px 8px #00000026}.scheduleassign-save-schedule-btn:disabled{background:var(--md-sys-color-surface-variant);color:var(--md-sys-color-on-surface-variant);cursor:not-allowed;opacity:.6}.scheduleassign-cancel-schedule-btn{background:var(--md-sys-color-surface-container);color:var(--md-sys-color-on-surface-container);border:1px solid var(--md-sys-color-outline-variant)}.scheduleassign-cancel-schedule-btn:hover{background:var(--md-sys-color-error-container);color:var(--md-sys-color-on-error-container);border-color:var(--md-sys-color-error);transform:translateY(-1px);box-shadow:0 4px 8px #00000026}.scheduleassign-save-schedule-btn .material-symbols-outlined,.scheduleassign-cancel-schedule-btn .material-symbols-outlined{font-size:16px}.scheduleassign-timeperiod-section{margin-top:2rem;padding:1.5rem;background:var(--surface-color);border-radius:12px;border:1px solid var(--border-color)}.scheduleassign-time-section{display:flex;flex-direction:column;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);padding:var(--spacing-lg);background:var(--md-sys-color-surface-container-lowest);border-radius:var(--radius-lg);border:1px solid var(--md-sys-color-outline-variant)}.scheduleassign-time-row{display:flex;justify-content:space-between;gap:var(--spacing-md);align-items:start}.scheduleassign-input-group{flex:1}.scheduleassign-time-input,.scheduleassign-period-input{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--md-sys-color-outline);border-radius:var(--radius-md);background-color:var(--md-sys-color-surface);color:var(--md-sys-color-on-surface);font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);transition:all var(--transition-normal);height:48px;box-sizing:border-box;text-align:center}.scheduleassign-period-dropdown{position:relative;width:100%}.scheduleassign-period-dropdown-button{width:100%;padding:var(--spacing-md) var(--spacing-lg);border:1px solid var(--md-sys-color-outline);border-radius:var(--radius-md);background:var(--md-sys-color-surface);color:var(--md-sys-color-on-surface);font-size:var(--md-sys-typescale-body-large-size);cursor:pointer;transition:all var(--transition-normal);display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);min-height:58px;text-align:center}.scheduleassign-period-dropdown-button:focus{outline:none;border-color:var(--md-sys-color-primary);box-shadow:0 0 0 2px var(--md-sys-color-primary-container)}.scheduleassign-period-dropdown-button.selected{border:1px solid var(--md-sys-color-outline)}.scheduleassign-period-selected-option{display:flex;align-items:center;gap:var(--spacing-md);flex:1;justify-content:center}.scheduleassign-period-selected-option .option-icon{font-size:var(--md-sys-typescale-title-medium-size);color:var(--md-sys-color-primary);flex-shrink:0}.scheduleassign-period-selected-option .option-name{font-weight:var(--md-sys-typescale-body-medium-weight);color:var(--md-sys-color-on-surface)}.scheduleassign-period-dropdown-arrow{font-size:var(--md-sys-typescale-title-medium-size);color:var(--md-sys-color-on-surface-variant);transition:transform var(--transition-normal);flex-shrink:0}.scheduleassign-period-dropdown.open .scheduleassign-period-dropdown-arrow{transform:rotate(180deg)}.scheduleassign-period-dropdown-menu{position:absolute;top:100%;left:0;right:0;background:var(--md-sys-color-surface);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-md);box-shadow:var(--elevation-2);z-index:1000;max-height:200px;overflow-y:auto;margin-top:var(--spacing-xs);opacity:0;visibility:hidden;transform:translateY(-8px);transition:all var(--transition-normal)}.scheduleassign-period-dropdown.open .scheduleassign-period-dropdown-menu{opacity:1;visibility:visible;transform:translateY(0)}.scheduleassign-period-dropdown-item{width:100%;padding:var(--spacing-md) var(--spacing-lg);border:none;background:transparent;color:var(--md-sys-color-on-surface);font-size:var(--md-sys-typescale-body-large-size);cursor:pointer;transition:background-color var(--transition-normal);display:flex;align-items:center;gap:var(--spacing-md);text-align:left;justify-content:center}.scheduleassign-period-dropdown-item:hover{background:var(--md-sys-color-surface-variant)}.scheduleassign-period-dropdown-item.selected{background:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container)}.scheduleassign-period-dropdown-item.selected .option-icon{color:var(--md-sys-color-primary)}.scheduleassign-calculated-time{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);border-radius:var(--radius-md);font-weight:var(--md-sys-typescale-title-medium-weight);font-size:var(--md-sys-typescale-title-medium-size);justify-content:center;margin-top:var(--spacing-xs)}.scheduleassign-calculated-time .material-symbols-outlined{font-size:18px}.scheduleassign-calculated-time .time-display{font-family:monospace;letter-spacing:.5px}.scheduleassign-calculated-time.invalid{background:var(--md-sys-color-error-container);color:var(--md-sys-color-on-error-container);border:1px solid var(--md-sys-color-error)}@media (max-width: 768px){.scheduleassign-time-row{grid-template-columns:1fr 1fr;gap:var(--spacing-sm)}.scheduleassign-time-input{font-size:var(--md-sys-typescale-body-medium-size)}.scheduleassign-subject-teacher-row{grid-template-columns:1fr;gap:var(--spacing-md)}}@media (max-width: 480px){.scheduleassign-time-row{grid-template-columns:1fr;gap:var(--spacing-sm)}.scheduleassign-time-section{padding:var(--spacing-md)}.scheduleassign-subject-teacher-row{grid-template-columns:1fr;gap:var(--spacing-sm)}}.scheduleassign-manage-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--primary-color);color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.scheduleassign-manage-btn:hover{background:var(--primary-hover-color);transform:translateY(-1px)}.scheduleassign-timeperiod-management{margin-top:1.5rem}.scheduleassign-timeperiod-actions{margin-bottom:1.5rem}.scheduleassign-add-timeperiod-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--success-color);color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.scheduleassign-add-timeperiod-btn:hover:not(:disabled){background:var(--success-hover-color);transform:translateY(-1px)}.scheduleassign-add-timeperiod-btn:disabled{opacity:.6;cursor:not-allowed}.scheduleassign-timeperiod-form{padding:1.5rem;background:var(--background-color);border-radius:12px;border:1px solid var(--border-color);margin-bottom:1.5rem}.scheduleassign-form-title{margin:0 0 1rem;font-size:1.125rem;font-weight:600;color:var(--text-primary-color)}.scheduleassign-timeperiod-inputs{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.scheduleassign-time-input-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.scheduleassign-time-input,.scheduleassign-period-input{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--md-sys-color-outline);border-radius:var(--radius-md);background-color:var(--md-sys-color-surface);color:var(--md-sys-color-on-surface);font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);transition:all var(--transition-normal);height:58px;box-sizing:border-box}.scheduleassign-time-input:focus,.scheduleassign-period-input:focus{outline:none;border-color:var(--md-sys-color-primary);box-shadow:0 0 0 2px var(--md-sys-color-primary-container)}.scheduleassign-timeperiod-form-actions{display:flex;gap:.75rem;flex-wrap:wrap}.scheduleassign-save-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--primary-color);color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.scheduleassign-save-btn:hover{background:var(--primary-hover-color);transform:translateY(-1px)}.scheduleassign-cancel-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--surface-color);color:var(--text-secondary-color);border:1px solid var(--border-color);border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.scheduleassign-cancel-btn:hover{background:var(--hover-color);border-color:var(--text-secondary-color)}.scheduleassign-timeperiods-list{margin-top:1.5rem}.scheduleassign-list-title{margin:0 0 1rem;font-size:1rem;font-weight:600;color:var(--text-primary-color)}.scheduleassign-timeperiods-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.scheduleassign-timeperiod-card{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:var(--surface-color);border:1px solid var(--border-color);border-radius:8px;transition:all .2s ease}.scheduleassign-timeperiod-card:hover{border-color:var(--primary-color);transform:translateY(-1px);box-shadow:0 2px 8px var(--shadow-color)}.scheduleassign-timeperiod-info{flex:1}.scheduleassign-period-name{margin:0 0 .25rem;font-size:.875rem;font-weight:600;color:var(--text-primary-color)}.scheduleassign-period-time{margin:0;font-size:.75rem;color:var(--text-secondary-color)}.scheduleassign-timeperiod-actions{display:flex;gap:.5rem}.scheduleassign-edit-btn,.scheduleassign-delete-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease}.scheduleassign-edit-btn{background:var(--warning-color);color:#fff}.scheduleassign-edit-btn:hover{background:var(--warning-hover-color);transform:translateY(-1px)}.scheduleassign-delete-btn{background:var(--danger-color);color:#fff}.scheduleassign-delete-btn:hover{background:var(--danger-hover-color);transform:translateY(-1px)}.scheduleassign-no-timeperiods{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;text-align:center;color:var(--text-secondary-color)}.scheduleassign-no-timeperiods .material-symbols-outlined{font-size:3rem;margin-bottom:.5rem;opacity:.5}.scheduleassign-no-timeperiods p{margin:0;font-size:.875rem}@media (max-width: 768px){.scheduleassign-timeperiod-inputs,.scheduleassign-timeperiods-grid{grid-template-columns:1fr}.scheduleassign-timeperiod-form-actions{flex-direction:column}.scheduleassign-save-btn,.scheduleassign-cancel-btn{justify-content:center}}.scheduleassign-form-section{background-color:var(--md-sys-color-surface-container-low);border-radius:var(--radius-xl);padding:var(--spacing-xl);box-shadow:var(--shadow-md);border:1px solid var(--md-sys-color-outline-variant);margin-bottom:var(--spacing-xl)}.scheduleassign-form-group{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-bottom:var(--spacing-md)}.scheduleassign-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg);margin-bottom:var(--spacing-md);align-items:end}.scheduleassign-day-timeslot-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg);align-items:end}.scheduleassign-custom-dropdown{position:relative;width:100%}.scheduleassign-dropdown-button{width:100%;padding:var(--spacing-md) var(--spacing-lg);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-md);background:var(--md-sys-color-surface);color:var(--md-sys-color-on-surface);font-size:var(--md-sys-typescale-body-large-size);cursor:pointer;transition:all var(--transition-normal);display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);min-height:58px}.scheduleassign-dropdown-button:focus{outline:none;border-color:var(--md-sys-color-primary);box-shadow:0 0 0 2px var(--md-sys-color-primary-container)}.scheduleassign-dropdown-button.selected{border-color:var(--md-sys-color-primary)}.scheduleassign-dropdown-button:disabled,.scheduleassign-custom-dropdown.disabled .scheduleassign-dropdown-button{cursor:not-allowed;opacity:.6;background:var(--md-sys-color-surface-variant);color:var(--md-sys-color-on-surface-variant);border-color:var(--md-sys-color-outline-variant)}.scheduleassign-dropdown-button:disabled:hover,.scheduleassign-custom-dropdown.disabled .scheduleassign-dropdown-button:hover{border-color:var(--md-sys-color-outline-variant);box-shadow:none}.scheduleassign-selected-option{display:flex;align-items:center;gap:var(--spacing-md)}.option-icon{font-size:var(--md-sys-typescale-title-medium-size);color:var(--md-sys-color-primary);flex-shrink:0}.option-content{display:flex;flex-direction:column;align-items:flex-start;gap:var(--spacing-xs);flex:1;min-width:0}.option-name{font-weight:var(--md-sys-typescale-body-medium-weight);color:var(--md-sys-color-on-surface);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}.option-description{font-size:var(--md-sys-typescale-body-small-size);color:var(--md-sys-color-on-surface-variant);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}.placeholder{color:var(--md-sys-color-on-surface-variant);font-style:italic}.scheduleassign-dropdown-arrow{font-size:var(--md-sys-typescale-title-medium-size);color:var(--md-sys-color-on-surface-variant);transition:transform var(--transition-normal);flex-shrink:0}.scheduleassign-custom-dropdown.open .scheduleassign-dropdown-arrow{transform:rotate(180deg)}.scheduleassign-dropdown-menu{position:absolute;top:100%;left:0;right:0;background:var(--md-sys-color-surface);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-md);box-shadow:var(--elevation-2);z-index:1000;max-height:200px;overflow-y:auto;margin-top:var(--spacing-xs);opacity:0;visibility:hidden;transform:translateY(-8px);transition:all var(--transition-normal)}.scheduleassign-custom-dropdown.open .scheduleassign-dropdown-menu{opacity:1;visibility:visible;transform:translateY(0)}.scheduleassign-dropdown-item{width:100%;padding:var(--spacing-md) var(--spacing-lg);border:none;background:transparent;color:var(--md-sys-color-on-surface);font-size:var(--md-sys-typescale-body-large-size);cursor:pointer;transition:background-color var(--transition-normal);display:flex;align-items:center;gap:var(--spacing-md);text-align:left}.scheduleassign-dropdown-item.selected{background:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container)}.scheduleassign-dropdown-item.selected .option-icon{color:var(--md-sys-color-primary)}.scheduleassign-form-actions{display:flex;justify-content:end;margin-top:var(--spacing-xl);gap:var(--spacing-md)}.scheduleassign-assign-button{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-xl);background:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary);border:none;border-radius:var(--radius-full);font-family:var(--md-sys-typescale-label-large-font);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);cursor:pointer;transition:all var(--transition-normal);min-width:160px;min-height:48px;justify-content:center}.scheduleassign-assign-button:hover:not(:disabled){background:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);transform:translateY(-1px);box-shadow:var(--shadow-md)}.scheduleassign-assign-button:disabled{background:var(--md-sys-color-surface-variant);color:var(--md-sys-color-on-surface-variant);cursor:not-allowed;transform:none;box-shadow:none}.scheduleassign-assign-button.loading{pointer-events:none}.loading-icon{animation:spin 1s linear infinite}.scheduleassign-assignments-section{background-color:var(--md-sys-color-surface-container-low);border-radius:var(--radius-xl);padding:var(--spacing-xl);box-shadow:var(--shadow-md);border:1px solid var(--md-sys-color-outline-variant);margin-bottom:var(--spacing-xl)}.scheduleassign-assignments-grid{display:flex;flex-direction:column;gap:var(--spacing-lg)}.scheduleassign-assignment-card{background:var(--md-sys-color-surface-container);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);padding:var(--spacing-lg);transition:all var(--transition-normal);display:flex;flex-direction:column;overflow:hidden}.scheduleassign-assignment-card:hover{border-color:var(--md-sys-color-primary);box-shadow:var(--elevation-2);transform:translateY(-2px)}.scheduleassign-assignment-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-md)}.scheduleassign-assignment-info{display:flex;flex-direction:column;align-items:start;gap:var(--spacing-xs);flex:1}.scheduleassign-assignment-title{font-family:var(--md-sys-typescale-title-medium-font);font-size:var(--md-sys-typescale-title-medium-size);font-weight:var(--md-sys-typescale-title-medium-weight);color:var(--md-sys-color-on-surface);margin:0;line-height:var(--md-sys-typescale-title-medium-line-height)}.scheduleassign-assignment-subtitle{font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);color:var(--md-sys-color-on-surface-variant);margin:0;line-height:var(--md-sys-typescale-body-medium-line-height)}.scheduleassign-assignment-actions{display:flex;gap:var(--spacing-xs);flex-shrink:0}.scheduleassign-edit-button,.scheduleassign-delete-button{background-color:var(--md-sys-color-surface);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-md);padding:var(--spacing-sm);display:flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0;color:var(--md-sys-color-on-surface-variant);cursor:pointer;transition:all var(--transition-normal)}.scheduleassign-edit-button:hover{background-color:var(--md-sys-color-neutral-container);border-color:var(--md-sys-color-outline);color:var(--md-sys-color-on-neutral-container);box-shadow:var(--elevation-1)}.scheduleassign-delete-button:hover{background-color:var(--md-sys-color-error-container);border-color:var(--md-sys-color-error);color:var(--md-sys-color-on-error-container);box-shadow:var(--elevation-1)}.scheduleassign-edit-button:active,.scheduleassign-delete-button:active{box-shadow:none;transform:scale(.95)}.scheduleassign-edit-button .material-symbols-outlined,.scheduleassign-delete-button .material-symbols-outlined{font-size:18px;transition:inherit}.scheduleassign-assignment-details{display:flex;flex-wrap:wrap;gap:var(--spacing-md);margin-bottom:var(--spacing-xs)}.scheduleassign-detail-item{display:flex;align-items:center;gap:var(--spacing-sm)}.scheduleassign-detail-icon{font-size:.875rem;color:var(--md-sys-color-on-surface-variant);width:16px;flex-shrink:0;opacity:.8}.scheduleassign-detail-text{font-family:var(--md-sys-typescale-body-medium-font);font-size:.875rem;color:var(--md-sys-color-on-surface-variant);opacity:.9}.scheduleassign-filter-controls{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);flex-wrap:wrap}.scheduleassign-filter-controls .scheduleassign-custom-dropdown{min-width:200px;flex:1}@media (max-width: 768px){.scheduleassign-header{padding:var(--spacing-xl)}.scheduleassign-page-title{font-size:var(--md-sys-typescale-headline-medium-size)}.scheduleassign-assignment-form-section,.scheduleassign-assignments-section{padding:0 var(--spacing-xl) var(--spacing-xl) var(--spacing-xl)}.scheduleassign-form-grid,.scheduleassign-day-timeslot-row{grid-template-columns:1fr;gap:var(--spacing-md)}.scheduleassign-assignments-grid{flex-direction:column;gap:var(--spacing-lg)}}@media (max-width: 480px){.scheduleassign-header{padding:var(--spacing-lg)}.scheduleassign-page-title{font-size:var(--md-sys-typescale-headline-small-size)}.scheduleassign-assignment-form-section,.scheduleassign-assignments-section{padding:0 var(--spacing-lg) var(--spacing-lg) var(--spacing-lg)}.scheduleassign-assignment-card{padding:var(--spacing-lg)}.scheduleassign-assign-button{width:100%}.scheduleassign-filter-controls{flex-direction:column;gap:var(--spacing-sm)}.scheduleassign-filter-controls .scheduleassign-custom-dropdown{min-width:unset;width:100%}}.admin-week-navigation{background-color:var(--md-sys-color-surface);padding:var(--spacing-lg) var(--spacing-xl);border-radius:var(--radius-lg);margin-bottom:var(--spacing-lg);border:1px solid var(--md-sys-color-outline-variant)}.admin-week-title{display:flex;align-items:center;justify-content:center;margin-bottom:var(--spacing-lg)}.admin-week-title span{font-size:1.1rem;font-weight:600;color:var(--md-sys-color-on-surface)}.admin-day-selector{display:flex;gap:var(--spacing-md)}.admin-day-btn{background-color:var(--md-sys-color-surface-variant);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);padding:var(--spacing-md) var(--spacing-lg);cursor:pointer;transition:all .2s;flex:1;text-align:center;color:var(--md-sys-color-on-surface-variant)}.admin-day-btn:hover{background-color:var(--md-sys-color-surface);border-color:var(--md-sys-color-outline)}.admin-day-btn.active{background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);border-color:var(--md-sys-color-primary-container)}.admin-day-name{font-size:1rem;font-weight:500}.admin-day-name-full{display:none;font-size:1rem;font-weight:500}.admin-mobile-dropdown{display:none;position:relative}.admin-dropdown-toggle-date{width:100%;padding:var(--spacing-md) var(--spacing-lg);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);background-color:var(--md-sys-color-surface-variant);color:var(--md-sys-color-on-surface);cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:all .2s;font-size:1rem;font-weight:500}.admin-dropdown-toggle-date:hover{background-color:var(--md-sys-color-surface);border-color:var(--md-sys-color-outline)}.admin-dropdown-icon{transition:transform .2s}.admin-dropdown-icon.open{transform:rotate(180deg)}.admin-dropdown-menu{position:absolute;top:100%;left:0;right:0;background-color:var(--md-sys-color-surface);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);box-shadow:0 4px 12px #0000001a;z-index:1000;margin-top:var(--spacing-xs);overflow:hidden}.admin-dropdown-item{width:100%;padding:var(--spacing-md) var(--spacing-lg);border:none;background-color:transparent;color:var(--md-sys-color-on-surface);cursor:pointer;transition:background-color .2s;text-align:left;font-size:1rem;font-weight:500}.admin-dropdown-item:hover{background-color:var(--md-sys-color-surface-variant)!important}.admin-dropdown-item.selected{background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container)}.admin-dropdown-item.selected:hover{background-color:var(--md-sys-color-primary-container)!important}@media (max-width: 768px){.admin-day-selector{display:none}.admin-mobile-dropdown{display:block}.admin-week-navigation{padding:var(--spacing-md) var(--spacing-lg)}}@media (max-width: 480px){.admin-day-selector{flex-direction:column}.admin-day-name{display:none}.admin-day-name-full{display:block}.admin-day-btn{flex:none}.admin-week-title{gap:var(--spacing-md)}}.scheduleassign-no-schedule{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-3xl) var(--spacing-xl);text-align:center;color:var(--md-sys-color-on-surface-variant);min-height:200px}.scheduleassign-no-schedule-icon{margin-bottom:var(--spacing-lg)}.scheduleassign-no-schedule-icon .material-symbols-outlined{font-size:4rem;color:var(--md-sys-color-outline);opacity:.6}.scheduleassign-no-schedule-text h3{margin:0 0 var(--spacing-sm) 0;font-size:1.25rem;font-weight:600;color:var(--md-sys-color-on-surface)}.scheduleassign-no-schedule-text p{margin:0;font-size:1rem;color:var(--md-sys-color-on-surface-variant);line-height:1.5}.scheduleassign-selection-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg);margin-bottom:var(--spacing-md)}.scheduleassign-day-selection{margin-bottom:var(--spacing-xl)}.scheduleassign-day-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--spacing-md);margin-top:var(--spacing-md)}.scheduleassign-day-button{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-lg);background-color:var(--md-sys-color-surface-variant);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);cursor:pointer;transition:all .2s;color:var(--md-sys-color-on-surface-variant);font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);font-weight:var(--md-sys-typescale-body-medium-weight)}.scheduleassign-day-button:hover{background-color:var(--md-sys-color-surface);border-color:var(--md-sys-color-outline);transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.scheduleassign-day-button.selected{background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);border-color:var(--md-sys-color-primary-container);transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.scheduleassign-day-button .material-symbols-outlined{font-size:1.5rem}.scheduleassign-day-button .day-name{font-weight:500}.scheduleassign-schedule-grid{margin-top:var(--spacing-xl)}.scheduleassign-grid-title{font-family:var(--md-sys-typescale-headline-small-font);font-size:var(--md-sys-typescale-headline-small-size);font-weight:var(--md-sys-typescale-headline-small-weight);color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-lg) 0}.scheduleassign-time-slots{display:flex;flex-direction:column;gap:var(--spacing-md)}.scheduleassign-time-slot{display:grid;grid-template-columns:200px 1fr;gap:var(--spacing-lg);align-items:center;padding:var(--spacing-lg);background-color:var(--md-sys-color-surface-container-low);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg)}.scheduleassign-time-info{display:flex;flex-direction:column;gap:var(--spacing-xs)}.scheduleassign-time-info .time{font-family:var(--md-sys-typescale-title-medium-font);font-size:var(--md-sys-typescale-title-medium-size);font-weight:var(--md-sys-typescale-title-medium-weight);color:var(--md-sys-color-on-surface)}.scheduleassign-time-info .period{font-family:var(--md-sys-typescale-body-small-font);font-size:var(--md-sys-typescale-body-small-size);font-weight:var(--md-sys-typescale-body-small-weight);color:var(--md-sys-color-on-surface-variant)}.scheduleassign-subject-assignment{position:relative}.scheduleassign-subject-button{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);border:1px solid var(--md-sys-color-primary-container);border-radius:var(--radius-md);cursor:pointer;transition:all .2s;font-family:var(--md-sys-typescale-label-large-font);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight)}.scheduleassign-subject-button:hover{background-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary);border-color:var(--md-sys-color-primary);transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}@media (max-width: 768px){.scheduleassign-selection-row{grid-template-columns:1fr;gap:var(--spacing-md)}.scheduleassign-day-grid{grid-template-columns:repeat(2,1fr)}.scheduleassign-time-slot{grid-template-columns:1fr;gap:var(--spacing-md)}.scheduleassign-time-info{text-align:center}}.scheduleassign-section-header{display:flex;flex-direction:column;margin-bottom:var(--spacing-md)}.scheduleassign-section-header-day{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.scheduleassign-import-export-actions{display:flex;gap:var(--spacing-sm)}.scheduleassign-import-button,.scheduleassign-export-button{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--md-sys-color-outline);border-radius:var(--radius-md);background:var(--md-sys-color-surface);color:var(--md-sys-color-on-surface);font-family:var(--md-sys-typescale-label-large-font);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);cursor:pointer;transition:all var(--transition-normal)}.scheduleassign-import-button:hover,.scheduleassign-export-button:hover{background:var(--md-sys-color-surface-variant);border-color:var(--md-sys-color-primary);color:var(--md-sys-color-primary)}.scheduleassign-import-button:active,.scheduleassign-export-button:active{transform:translateY(1px)}.scheduleassign-export-button:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.scheduleassign-import-button .material-symbols-outlined,.scheduleassign-export-button .material-symbols-outlined{font-size:18px}.scheduleassign-edit-form-section{margin-top:var(--spacing-md);animation:slideDown .3s ease-out}.scheduleassign-edit-form-container{background-color:var(--md-sys-color-surface-container);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--elevation-1)}.scheduleassign-edit-form-header{margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--md-sys-color-outline-variant)}.scheduleassign-edit-form-title{font-family:var(--md-sys-typescale-title-medium-font);font-size:var(--md-sys-typescale-title-medium-size);font-weight:var(--md-sys-typescale-title-medium-weight);color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-xs) 0;display:flex;align-items:center;gap:var(--spacing-sm)}.scheduleassign-edit-form-title:before{content:"edit";font-family:Material Symbols Outlined;font-size:var(--md-sys-typescale-title-medium-size);color:var(--md-sys-color-primary)}.scheduleassign-edit-form-subtitle{font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);color:var(--md-sys-color-on-surface-variant);margin:0}.scheduleassign-edit-form-content{display:flex;flex-direction:column}.scheduleassign-edit-form-row{display:flex;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.scheduleassign-form-group-third{flex:1;display:flex;flex-direction:column;gap:var(--spacing-xs)}.scheduleassign-form-label{font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);font-weight:var(--md-sys-typescale-body-medium-weight);color:var(--md-sys-color-on-surface);margin-bottom:var(--spacing-xs)}.scheduleassign-form-input{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--md-sys-color-outline);border-radius:var(--radius-md);background-color:var(--md-sys-color-surface);color:var(--md-sys-color-on-surface);font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);transition:all var(--transition-normal);height:58px;box-sizing:border-box}.scheduleassign-form-input:focus{outline:none;border-color:var(--md-sys-color-primary);box-shadow:0 0 0 2px var(--md-sys-color-primary-container)}.scheduleassign-edit-form-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;margin-top:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:1px solid var(--md-sys-color-outline-variant)}.scheduleassign-cancel-button{background-color:var(--md-sys-color-surface);color:var(--md-sys-color-on-surface);border:1px solid var(--md-sys-color-outline);border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-lg);font-family:var(--md-sys-typescale-label-large-font);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);cursor:pointer;transition:all var(--transition-normal);min-width:80px;height:40px;display:flex;align-items:center;gap:var(--spacing-sm)}.scheduleassign-cancel-button:hover{background-color:var(--md-sys-color-surface-variant);border-color:var(--md-sys-color-outline-variant);box-shadow:var(--elevation-1)}.scheduleassign-cancel-button:active{background-color:var(--md-sys-color-surface-container-high);transform:scale(.98);box-shadow:none}.scheduleassign-submit-button{background-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary);border:1px solid var(--md-sys-color-primary);border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-lg);font-family:var(--md-sys-typescale-label-large-font);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);cursor:pointer;transition:all var(--transition-normal);min-width:120px;height:40px;display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs)}.scheduleassign-submit-button:hover:not(:disabled){background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);box-shadow:var(--elevation-2)}.scheduleassign-submit-button:active:not(:disabled){background-color:var(--md-sys-color-primary-container);transform:scale(.98);box-shadow:var(--elevation-1)}.scheduleassign-submit-button:disabled{background-color:var(--md-sys-color-surface-variant);color:var(--md-sys-color-on-surface-variant);border-color:var(--md-sys-color-outline-variant);cursor:not-allowed;opacity:.6}.scheduleassign-loading-icon{animation:spin 1s linear infinite}@media (max-width: 768px){.scheduleassign-section-header{flex-direction:column;align-items:stretch;gap:var(--spacing-md)}.scheduleassign-import-export-actions{justify-content:center}.scheduleassign-import-button,.scheduleassign-export-button{flex:1;justify-content:center}.scheduleassign-edit-form-row{flex-direction:column;gap:var(--spacing-md)}.scheduleassign-form-group-third{flex:none;margin-bottom:0}.scheduleassign-edit-form-actions{flex-direction:column;gap:var(--spacing-sm)}.scheduleassign-cancel-button,.scheduleassign-submit-button{justify-content:center}}.admin-subject-creation-container{padding:var(--spacing-xl);color:var(--md-sys-color-on-surface);box-sizing:border-box;overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth;height:100%}.admin-subject-creation-container::-webkit-scrollbar{width:8px}.admin-subject-creation-container::-webkit-scrollbar-track{background:var(--md-sys-color-surface-variant);border-radius:var(--radius-sm)}.admin-subject-creation-container::-webkit-scrollbar-thumb{background:var(--md-sys-color-outline-variant);border-radius:var(--radius-sm);transition:background-color var(--transition-normal)}.admin-subject-creation-container::-webkit-scrollbar-thumb:hover{background:var(--md-sys-color-outline)}.admin-subject-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);gap:var(--spacing-md)}.admin-creation-layout{display:flex;flex-direction:column;gap:var(--spacing-xl)}.admin-creation-form-section{background-color:var(--md-sys-color-surface-container-low);border-radius:var(--radius-xl);padding:var(--spacing-xl);border:1px solid var(--md-sys-color-outline-variant)}.admin-form-container{max-width:100%}.admin-form-group{margin-bottom:var(--spacing-lg)}.admin-form-row{display:flex;gap:var(--spacing-md);align-items:flex-start;margin-bottom:var(--spacing-lg)}.admin-form-group-third{flex:1;margin-bottom:0}@media (max-width: 768px){.admin-form-row{flex-direction:column;gap:var(--spacing-sm)}.admin-form-group-third{margin-bottom:var(--spacing-md)}}.admin-form-label{display:block;font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);font-weight:var(--md-sys-typescale-body-medium-weight);color:var(--md-sys-color-on-surface);margin-bottom:var(--spacing-sm)}.admin-form-input,.admin-form-textarea{width:100%;padding:var(--spacing-md);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-md);background-color:var(--md-sys-color-surface);color:var(--md-sys-color-on-surface);font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);box-sizing:border-box;min-height:59px;transition:background-color var(--transition-normal)}.admin-form-input:focus,.admin-form-textarea:focus{outline:none;border-color:var(--md-sys-color-primary);box-shadow:0 0 0 2px var(--md-sys-color-primary-container)}.admin-form-input:read-only{background-color:var(--md-sys-color-surface-variant);color:var(--md-sys-color-on-surface-variant);cursor:not-allowed}.admin-form-input:disabled{background-color:var(--md-sys-color-surface-variant);color:var(--md-sys-color-on-surface-variant);cursor:not-allowed;opacity:.6}.admin-form-textarea{resize:vertical;min-height:100px}.adminsubject-custom-dropdown{position:relative;width:100%}.adminsubject-custom-dropdown-grade{position:relative;width:20%}.adminsubject-dropdown-trigger{width:100%;padding:var(--spacing-md);border:1px solid var(--md-sys-color-outline);border-radius:var(--radius-md);background-color:var(--md-sys-color-surface);color:var(--md-sys-color-on-surface);font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);text-align:left;cursor:pointer;transition:all var(--transition-normal);display:flex;align-items:center;justify-content:space-between;min-height:52px;box-sizing:border-box}.adminsubject-dropdown-trigger:hover{border-color:var(--md-sys-color-outline)}.adminsubject-dropdown-trigger:focus{outline:none;border-color:var(--md-sys-color-primary);box-shadow:0 0 0 1px var(--md-sys-color-primary)}.adminsubject-dropdown-trigger.selected{border-color:var(--md-sys-color-primary)}.adminsubject-selected-option{display:flex;align-items:center;gap:var(--spacing-sm);flex:1}.adminsubject-option-icon{font-size:24px;color:var(--md-sys-color-primary)}.adminsubject-option-content{display:flex;flex-direction:column;align-items:flex-start}.adminsubject-option-name{font-weight:var(--md-sys-typescale-body-medium-weight);color:var(--md-sys-color-on-surface)}.adminsubject-option-description{font-size:var(--md-sys-typescale-body-small-size);color:var(--md-sys-color-on-surface-variant)}.adminsubject-placeholder{color:var(--md-sys-color-on-surface-variant);font-style:italic}.adminsubject-dropdown-arrow{font-size:24px;color:var(--md-sys-color-on-surface-variant);transition:transform var(--transition-normal)}.adminsubject-custom-dropdown.open .adminsubject-dropdown-arrow{transform:rotate(180deg)}.adminsubject-dropdown-menu{position:absolute;left:0;right:0;background-color:var(--md-sys-color-surface-container);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);z-index:var(--z-dropdown);max-height:200px;overflow-y:auto;opacity:0;visibility:hidden;transform:translateY(-10px);transition:all var(--transition-normal)}.adminsubject-custom-dropdown.open .adminsubject-dropdown-menu{opacity:1;visibility:visible;transform:translateY(0)}.adminsubject-dropdown-option{width:100%;padding:var(--spacing-md);border:none;background:none;text-align:left;cursor:pointer;transition:background-color var(--transition-normal);display:flex;align-items:center;gap:var(--spacing-sm)}.adminsubject-dropdown-option:hover{background-color:var(--md-sys-color-surface-variant)}.adminsubject-dropdown-option.selected{background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container)}.admin-form-actions{display:flex;justify-content:flex-end;gap:var(--spacing-md);margin-top:var(--spacing-xl)}.admin-create-button{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);background-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary);border:none;border-radius:var(--radius-full);font-family:var(--md-sys-typescale-label-large-font);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);cursor:pointer;transition:background-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast);min-width:180px;min-height:56px;justify-content:center}.admin-create-button:hover:not(:disabled){background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);box-shadow:var(--shadow-sm)}.admin-create-button:active:not(:disabled){transform:scale(.98)}.admin-create-button:disabled{background-color:var(--md-sys-color-surface-variant);color:var(--md-sys-color-on-surface-variant);cursor:not-allowed}.admin-create-button.loading .admin-loading-icon{animation:admin-spin 1s linear infinite}@keyframes admin-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.admin-recent-subjects-section{background-color:var(--md-sys-color-surface-container-low);border-radius:var(--radius-xl);padding:var(--spacing-xl);border:1px solid var(--md-sys-color-outline-variant)}.adminsubject-subjects-grid{display:flex;flex-direction:column;gap:var(--spacing-md)}.adminsubject-subject-card{background-color:var(--md-sys-color-surface-container);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);padding:var(--spacing-lg);transition:all var(--transition-normal);cursor:pointer;color:var(--md-sys-color-on-surface)}.adminsubject-subject-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.adminsubject-subject-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-md)}.adminsubject-subject-title{display:block}.adminsubject-subject-name{margin:0;font-size:1.125rem;font-weight:600;color:var(--md-sys-color-on-surface)}.adminsubject-subject-details{display:flex;gap:var(--spacing-xl);flex-wrap:wrap;margin-bottom:var(--spacing-md)}.adminsubject-subject-item-detail{display:flex;align-items:center;gap:var(--spacing-xs);font-size:.875rem;color:var(--md-sys-color-on-surface-variant);opacity:.85}.adminsubject-subject-item-detail .material-symbols-outlined{font-size:.875rem}.adminsubject-action-buttons{display:flex;gap:var(--spacing-xs);align-items:center}.adminsubject-edit-button{background-color:var(--md-sys-color-surface);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-md);padding:var(--spacing-sm);display:flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0;color:var(--md-sys-color-on-surface-variant);cursor:pointer;transition:all var(--transition-normal)}.adminsubject-edit-button:hover{background-color:var(--md-sys-color-surface-variant);border-color:var(--md-sys-color-outline);color:var(--md-sys-color-on-surface);box-shadow:var(--elevation-1)}.adminsubject-edit-button .material-symbols-outlined{font-size:18px;transition:inherit}.adminsubject-edit-button:active{background-color:var(--md-sys-color-surface-container-high);box-shadow:none;transform:scale(.95)}.adminsubject-remove-button{background-color:var(--md-sys-color-surface);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-md);padding:var(--spacing-sm);display:flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0;color:var(--md-sys-color-error);cursor:pointer;transition:all var(--transition-normal)}.adminsubject-remove-button:hover{background-color:var(--md-sys-color-error-container);border-color:var(--md-sys-color-error);color:var(--md-sys-color-on-error-container);box-shadow:var(--elevation-1)}.adminsubject-remove-button .material-symbols-outlined{font-size:18px;transition:inherit}.adminsubject-remove-button:active{background-color:var(--md-sys-color-error-container);box-shadow:none;transform:scale(.95)}.adminsubject-filters-container{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.adminsubject-search-container{flex-grow:1}.adminsubject-grade-filter{position:relative}.adminsubject-filter-select{-webkit-appearance:none;appearance:none;height:100%;padding:var(--spacing-md) 40px var(--spacing-md) var(--spacing-md);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-full);background-color:var(--md-sys-color-surface);color:var(--md-sys-color-on-surface);font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);cursor:pointer;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.adminsubject-filter-select:focus{outline:none;border-color:var(--md-sys-color-primary);box-shadow:0 0 0 2px var(--md-sys-color-primary-container)}.adminsubject-search-container{position:relative;margin-bottom:var(--spacing-lg)}.adminsubject-search-input{width:100%;padding:var(--spacing-md) var(--spacing-md) var(--spacing-md) 48px;border:1px solid var(--md-sys-color-outline);border-radius:var(--radius-md);background-color:var(--md-sys-color-surface);color:var(--md-sys-color-on-surface);font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);transition:background-color var(--transition-normal);box-sizing:border-box;min-height:58px;min-width:600px}.adminsubject-search-input:focus{outline:none;border-color:var(--md-sys-color-primary);box-shadow:0 0 0 1px var(--md-sys-color-primary)}.adminsubject-search-input::placeholder{color:var(--md-sys-color-on-surface-variant);opacity:.7}.adminsubject-search-icon{position:absolute;top:50%;left:16px;transform:translateY(-50%);font-size:24px;color:var(--md-sys-color-on-surface-variant);pointer-events:none}.adminsubject-no-results{text-align:center;padding:var(--spacing-xl);color:var(--md-sys-color-on-surface-variant);border:2px dashed var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);margin-top:var(--spacing-lg)}.adminsubject-no-results-icon{font-size:48px;margin-bottom:var(--spacing-md);display:block}.adminsubject-edit-form-section{margin-top:var(--spacing-md);animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.adminsubject-edit-form-container{background-color:var(--md-sys-color-surface-container);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--elevation-1)}.adminsubject-edit-form-header{margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--md-sys-color-outline-variant)}.adminsubject-edit-form-title{font-family:var(--md-sys-typescale-title-medium-font);font-size:var(--md-sys-typescale-title-medium-size);font-weight:var(--md-sys-typescale-title-medium-weight);color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-xs) 0;display:flex;align-items:center;gap:var(--spacing-sm)}.adminsubject-edit-form-title:before{content:"edit";font-family:Material Symbols Outlined;font-size:var(--md-sys-typescale-title-medium-size);color:var(--md-sys-color-primary)}.adminsubject-edit-form-subtitle{font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);color:var(--md-sys-color-on-surface-variant);margin:0}.adminsubject-edit-form-content{display:flex;flex-direction:column}.adminsubject-edit-form-row{display:flex;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.adminsubject-form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.adminsubject-form-group-third{flex:1}.adminsubject-form-label{font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);font-weight:var(--md-sys-typescale-body-medium-weight);color:var(--md-sys-color-on-surface);margin-bottom:var(--spacing-xs)}.adminsubject-form-input{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--md-sys-color-outline);border-radius:var(--radius-md);background-color:var(--md-sys-color-surface);color:var(--md-sys-color-on-surface);font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);transition:all var(--transition-normal);height:58px;box-sizing:border-box}.adminsubject-form-input:focus{outline:none;border-color:var(--md-sys-color-primary);box-shadow:0 0 0 2px var(--md-sys-color-primary-container)}.adminsubject-edit-form-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;margin-top:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:1px solid var(--md-sys-color-outline-variant)}.adminsubject-cancel-button{background-color:var(--md-sys-color-surface);color:var(--md-sys-color-on-surface);border:1px solid var(--md-sys-color-outline);border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-lg);font-family:var(--md-sys-typescale-label-large-font);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);cursor:pointer;transition:all var(--transition-normal);min-width:80px;height:40px}.adminsubject-cancel-button:hover{background-color:var(--md-sys-color-surface-variant);border-color:var(--md-sys-color-outline-variant);box-shadow:var(--elevation-1)}.adminsubject-cancel-button:active{background-color:var(--md-sys-color-surface-container-high);transform:scale(.98);box-shadow:none}.adminsubject-submit-button{background-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary);border:1px solid var(--md-sys-color-primary);border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-lg);font-family:var(--md-sys-typescale-label-large-font);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);cursor:pointer;transition:all var(--transition-normal);min-width:120px;height:40px;display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs)}.adminsubject-submit-button:hover{background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);box-shadow:var(--elevation-2)}.adminsubject-submit-button:active{background-color:var(--md-sys-color-primary-container);transform:scale(.98);box-shadow:var(--elevation-1)}.adminsubject-submit-button:disabled{background-color:var(--md-sys-color-surface-variant);color:var(--md-sys-color-on-surface-variant);border-color:var(--md-sys-color-outline-variant);cursor:not-allowed;opacity:.6}.adminsubject-loading-icon{animation:spin 1s linear infinite}.adminsubject-loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl);min-height:200px;color:var(--md-sys-color-on-surface-variant)}.subject-loader{width:16px;height:16px;border-radius:50%;background-color:var(--md-sys-color-on-surface-variant);box-shadow:32px 0 #fff,-32px 0 #fff;position:relative;animation:flash .5s ease-out infinite alternate;margin-bottom:var(--spacing-md)}@keyframes flash{0%{background-color:#fff2;box-shadow:32px 0 #fff2,-32px 0 #fff}50%{background-color:#fff;box-shadow:32px 0 #fff2,-32px 0 #fff2}to{background-color:#fff2;box-shadow:32px 0 #fff,-32px 0 #fff2}}.adminsubject-loading-text{font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);font-weight:var(--md-sys-typescale-body-large-weight);color:var(--md-sys-color-on-surface-variant);margin:0;text-align:center}@media (max-width: 1024px){.admin-subject-creation-container{padding:var(--spacing-md)}.admin-creation-form-section,.admin-recent-subjects-section{padding:var(--spacing-lg)}.adminsubject-edit-form-row{flex-direction:column;gap:var(--spacing-md)}}@media (max-width: 768px){.admin-subject-creation-container,.admin-creation-form-section,.admin-recent-subjects-section{padding:var(--spacing-lg)}.admin-form-actions{justify-content:stretch}.admin-create-button{width:100%}.admin-subjects-table-container{font-size:14px}.admin-subjects-table th,.admin-subjects-table td{padding:var(--spacing-sm) var(--spacing-md)}.adminsubject-edit-form-actions{flex-direction:column;gap:var(--spacing-sm)}.adminsubject-cancel-button,.adminsubject-submit-button{width:100%}}@media (max-width: 480px){.admin-page-title{font-size:var(--md-sys-typescale-headline-medium-size)}.admin-section-title{font-size:var(--md-sys-typescale-title-medium-size)}}.admin-document-requests-container{color:var(--md-sys-color-on-surface);box-sizing:border-box;overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth;height:100%}.admin-document-requests-container::-webkit-scrollbar{width:8px}.admin-document-requests-container::-webkit-scrollbar-track{background:var(--md-sys-color-surface-variant);border-radius:var(--radius-sm)}.admin-document-requests-container::-webkit-scrollbar-thumb{background:var(--md-sys-color-outline-variant);border-radius:var(--radius-sm);transition:background-color var(--transition-normal)}.admin-document-requests-container::-webkit-scrollbar-thumb:hover{background:var(--md-sys-color-outline)}.admin-docreq-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);gap:var(--spacing-md)}.admin-header-content{flex:1}.admin-page-title{font-family:var(--md-sys-typescale-headline-large-font);font-size:var(--md-sys-typescale-headline-large-size);font-weight:var(--md-sys-typescale-headline-large-weight);color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-xs) 0}.admin-page-subtitle{font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);color:var(--md-sys-color-on-surface-variant);margin:0}.admin-section-header{margin-bottom:var(--spacing-md)}.admin-section-title{font-family:var(--md-sys-typescale-title-large-font);font-size:var(--md-sys-typescale-title-large-size);font-weight:var(--md-sys-typescale-title-large-weight);color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-sm) 0}.admin-section-subtitle{font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);color:var(--md-sys-color-on-surface-variant);margin:0}.admin-success-message{display:flex;align-items:center;gap:var(--spacing-sm);background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-lg);margin-bottom:var(--spacing-xl);border:1px solid var(--md-sys-color-primary);animation:admin-slideIn .3s ease-out}.admin-success-icon{font-size:24px;color:var(--md-sys-color-primary)}.admin-success-text{font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);font-weight:var(--md-sys-typescale-body-medium-weight)}@keyframes admin-slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.admin-docreq-filters-section{background-color:var(--md-sys-color-surface-container-low);border-radius:var(--radius-xl);padding:var(--spacing-xl);border:1px solid var(--md-sys-color-outline-variant);margin-bottom:var(--spacing-xl)}.admindocreq-filters-container{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);flex-wrap:wrap}.admindocreq-search-container{flex:2;min-width:300px}.admindocreq-search-container{position:relative}.admindocreq-search-input{width:100%;padding:var(--spacing-md) var(--spacing-md) var(--spacing-md) 48px;border:1px solid var(--md-sys-color-outline);border-radius:var(--radius-md);background-color:var(--md-sys-color-surface);color:var(--md-sys-color-on-surface);font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);transition:background-color var(--transition-normal);box-sizing:border-box;min-height:58px}.admindocreq-search-input:focus{outline:none;border-color:var(--md-sys-color-primary);box-shadow:0 0 0 1px var(--md-sys-color-primary)}.admindocreq-search-input::placeholder{color:var(--md-sys-color-on-surface-variant);opacity:.7}.admindocreq-search-icon{position:absolute;top:50%;left:16px;transform:translateY(-50%);font-size:24px;color:var(--md-sys-color-on-surface-variant);pointer-events:none}.admindocreq-custom-dropdown{position:relative;flex:1;min-width:200px}.admindocreq-dropdown-trigger{width:100%;padding:var(--spacing-md);border:1px solid var(--md-sys-color-outline);border-radius:var(--radius-md);background-color:var(--md-sys-color-surface);color:var(--md-sys-color-on-surface);font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);text-align:left;cursor:pointer;transition:all var(--transition-normal);display:flex;align-items:center;justify-content:space-between;min-height:52px;box-sizing:border-box}.admindocreq-dropdown-trigger:focus{outline:none;border-color:var(--md-sys-color-primary);box-shadow:0 0 0 1px var(--md-sys-color-primary)}.admindocreq-dropdown-trigger.selected{border-color:var(--md-sys-color-primary)}.admindocreq-selected-option{display:flex;align-items:center;gap:var(--spacing-sm);flex:1}.admindocreq-option-icon{font-size:24px;color:var(--md-sys-color-primary)}.admindocreq-option-content{display:flex;flex-direction:column;align-items:flex-start}.admindocreq-option-name{font-weight:var(--md-sys-typescale-body-medium-weight);color:var(--md-sys-color-on-surface)}.admindocreq-option-description{font-size:var(--md-sys-typescale-body-small-size);color:var(--md-sys-color-on-surface-variant)}.admindocreq-placeholder{color:var(--md-sys-color-on-surface-variant)}.admindocreq-dropdown-arrow{font-size:24px;color:var(--md-sys-color-on-surface-variant);transition:transform var(--transition-normal)}.admindocreq-custom-dropdown.open .admindocreq-dropdown-arrow{transform:rotate(180deg)}.admindocreq-dropdown-menu{position:absolute;top:100%;left:0;right:0;background-color:var(--md-sys-color-surface-container);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);z-index:var(--z-dropdown);max-height:200px;overflow-y:auto;opacity:0;visibility:hidden;transform:translateY(-10px);transition:all var(--transition-normal)}.admindocreq-custom-dropdown.open .admindocreq-dropdown-menu{opacity:1;visibility:visible;transform:translateY(0)}.admindocreq-dropdown-option{width:100%;padding:var(--spacing-md);border:none;background:none;text-align:left;cursor:pointer;transition:background-color var(--transition-normal);display:flex;align-items:center;gap:var(--spacing-sm)}.admindocreq-dropdown-option.selected{background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container)}.admin-docreq-requests-section{background-color:var(--md-sys-color-surface-container-low);border-radius:var(--radius-xl);padding:var(--spacing-xl);border:1px solid var(--md-sys-color-outline-variant)}.admindocreq-requests-grid{display:flex;flex-direction:column;gap:var(--spacing-md)}.admindocreq-request-card{background-color:var(--md-sys-color-surface-container);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);padding:var(--spacing-lg);transition:all var(--transition-normal);cursor:pointer;color:var(--md-sys-color-on-surface)}.admindocreq-request-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-md)}.admindocreq-request-info,.admindocreq-student-info{display:block}.admindocreq-student-name{margin:0;font-size:1.125rem;font-weight:600;color:var(--md-sys-color-on-surface)}.admindocreq-action-buttons{display:flex;gap:var(--spacing-xs);align-items:center}.admindocreq-urgent-badge .material-symbols-outlined{font-size:16px}.admindocreq-status-badge{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-full);font-size:.875rem;font-weight:500;text-transform:capitalize}.admindocreq-status-badge .material-symbols-outlined{font-size:18px}.admindocreq-status-pending{background-color:var(--status-pending-bg);color:var(--status-pending-text);border:1px solid var(--status-pending-border)}.admindocreq-status-processing{background-color:var(--status-processing-bg);color:var(--status-processing-text);border:1px solid var(--status-processing-border)}.admindocreq-status-completed{background-color:var(--status-completed-bg);color:var(--status-completed-text);border:1px solid var(--status-completed-border)}.admindocreq-status-rejected{background-color:var(--status-rejected-bg);color:var(--status-rejected-text);border:1px solid var(--status-rejected-border)}.admindocreq-status-cancelled{background-color:var(--status-cancelled-bg);color:var(--status-cancelled-text);border:1px solid var(--status-cancelled-border)}.admindocreq-request-content{margin-bottom:var(--spacing-md)}.admindocreq-document-info{display:flex;gap:var(--spacing-xl);flex-wrap:wrap;margin-bottom:var(--spacing-md)}.admindocreq-document-type,.admindocreq-request-date,.admindocreq-request-status,.admindocreq-request-priority{display:flex;align-items:center;gap:var(--spacing-xs);font-size:.875rem;color:var(--md-sys-color-on-surface-variant);opacity:.85}.admindocreq-document-type .material-symbols-outlined,.admindocreq-request-date .material-symbols-outlined,.admindocreq-request-status .material-symbols-outlined,.admindocreq-request-priority .material-symbols-outlined{font-size:.875rem}.admindocreq-purpose{padding:var(--spacing-sm);background-color:var(--md-sys-color-surface-variant);border-radius:var(--radius-sm);font-size:.875rem}.admindocreq-purpose p{margin:0;color:var(--md-sys-color-on-surface-variant)}.admindocreq-request-actions{display:flex;gap:var(--spacing-sm);justify-content:flex-end;padding-top:var(--spacing-md)}.admindocreq-approve-button{display:flex;align-items:center;gap:var(--spacing-xs);background-color:var(--grade-excellent);color:#fff;border:none;font-size:.875rem;font-weight:500;cursor:pointer;transition:all var(--transition-normal);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md)}.admindocreq-reject-button{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background-color:var(--md-sys-color-error);color:var(--md-sys-color-on-error);border:none;border-radius:var(--radius-md);font-size:.875rem;font-weight:500;cursor:pointer;transition:all var(--transition-normal)}.admindocreq-approve-button .material-symbols-outlined,.admindocreq-reject-button .material-symbols-outlined{font-size:18px}.admindocreq-request-footer{display:flex;justify-content:space-between;align-items:center;margin-top:var(--spacing-md);border-radius:var(--radius-md);font-size:.875rem;position:relative;overflow:hidden}.admindocreq-footer-info{flex:1;font-weight:500;display:flex;align-items:center;font-size:14px;gap:var(--spacing-xs)}.admindocreq-footer-info:before{content:"";width:8px;height:8px;border-radius:50%;background-color:currentColor;opacity:.6}.admindocreq-complete-button{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background-color:var(--md-sys-color-surface-container-highest);color:var(--md-sys-color-on-surface);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-md);font-size:.875rem;font-weight:500;cursor:pointer;transition:all var(--transition-normal)}.admindocreq-complete-button .material-symbols-outlined{font-size:18px}.admindocreq-no-results{text-align:center;padding:var(--spacing-xl);color:var(--md-sys-color-on-surface-variant);border:2px dashed var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);margin-top:var(--spacing-lg)}.admindocreq-no-results-icon{font-size:48px;margin-bottom:var(--spacing-md);display:block}@media (max-width: 1024px){.admindocreq-filters-container{flex-direction:column}.admindocreq-search-container,.admindocreq-custom-dropdown{flex:none;min-width:auto}}@media (max-width: 768px){.admin-document-requests-container,.admin-docreq-filters-section,.admin-docreq-requests-section{padding:var(--spacing-lg)}.admindocreq-request-header,.admindocreq-request-info{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.admindocreq-document-info{flex-direction:column;gap:var(--spacing-sm)}.admindocreq-request-actions{justify-content:stretch}.admindocreq-approve-button,.admindocreq-reject-button{flex:1;justify-content:center}}@media (max-width: 480px){.admin-page-title{font-size:var(--md-sys-typescale-headline-medium-size)}.admin-section-title{font-size:var(--md-sys-typescale-title-medium-size)}.admindocreq-request-footer{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}}.admin-settings-container{color:var(--md-sys-color-on-surface);box-sizing:border-box;overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth}.admin-settings-container::-webkit-scrollbar{width:8px}.admin-settings-container::-webkit-scrollbar-track{background:var(--md-sys-color-surface-variant);border-radius:var(--radius-sm)}.admin-settings-container::-webkit-scrollbar-thumb{background:var(--md-sys-color-outline-variant);border-radius:var(--radius-sm);transition:background-color var(--transition-normal)}.admin-settings-container::-webkit-scrollbar-thumb:hover{background:var(--md-sys-color-outline)}.admin-settings-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);gap:var(--spacing-md)}.admin-settings-header-content{flex:1}.admin-settings-page-title{font-family:var(--md-sys-typescale-headline-large-font);font-size:var(--md-sys-typescale-headline-large-size);font-weight:var(--md-sys-typescale-headline-large-weight);color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-xs) 0}.admin-settings-page-subtitle{font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);color:var(--md-sys-color-on-surface-variant);margin:0}.admin-settings-section{margin-bottom:var(--spacing-2xl)}.admin-settings-section-header{margin-bottom:var(--spacing-lg)}.admin-settings-section-title{font-family:var(--md-sys-typescale-title-large-font);font-size:var(--md-sys-typescale-title-large-size);font-weight:var(--md-sys-typescale-title-large-weight);color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-sm) 0}.admin-settings-section-subtitle{font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);color:var(--md-sys-color-on-surface-variant);margin:0}.admin-settings-card{background-color:var(--md-sys-color-surface-container);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-lg);box-shadow:var(--elevation-1);transition:all var(--transition-normal);margin-bottom:var(--spacing-lg)}.admin-settings-card:hover{box-shadow:var(--elevation-2)}.admin-settings-card-content{padding:var(--spacing-lg)}.admin-settings-item{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.admin-settings-item:last-child{margin-bottom:0}.admin-settings-item-info{flex:1}.admin-settings-item-label{font-family:var(--md-sys-typescale-title-medium-font);font-size:var(--md-sys-typescale-title-medium-size);font-weight:var(--md-sys-typescale-title-medium-weight);color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-xs) 0}.admin-settings-item-description{font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);color:var(--md-sys-color-on-surface-variant);margin:0}.admin-settings-item-value{display:flex;align-items:center;gap:var(--spacing-sm)}.admin-settings-current-year,.admin-settings-new-year{font-family:var(--md-sys-typescale-title-large-font);font-size:var(--md-sys-typescale-title-medium-size);font-weight:var(--md-sys-typescale-title-large-weight);color:var(--md-sys-color-primary);background-color:var(--md-sys-color-primary-container);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);border:1px solid var(--md-sys-color-primary)}.admin-settings-dates-section{margin:1.5rem 0 0;padding:0;border-top:none}.admin-settings-date-group{display:flex;gap:1.5rem;flex-wrap:wrap}.admin-settings-date-item{flex:1;min-width:200px;display:flex;flex-direction:column;gap:.5rem}.admin-settings-date-label{font-size:.875rem;font-weight:500;color:var(--text-secondary);margin-bottom:.25rem}.admin-settings-date-input{display:flex;padding:.75rem;border:1px solid var(--md-sys-color-outline);border-radius:.5rem;font-size:.875rem;background-color:var(--background-primary);color:var(--text-primary);transition:all .2s ease;min-height:58px;width:100%}.admin-settings-date-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #3b82f61a}.admin-settings-date-input:hover{border-color:var(--primary-color)}.admin-settings-date-input.error{border-color:var(--error-color);background-color:#ef44440d}.admin-settings-date-input.error:focus{border-color:var(--error-color);box-shadow:0 0 0 3px #ef44441a}.admin-settings-date-error{display:flex;align-items:center;gap:.5rem;margin-top:1rem;padding:.75rem;background-color:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:.5rem;color:var(--error-color);font-size:.875rem}.admin-settings-date-error .material-symbols-outlined{font-size:1.125rem}@media (max-width: 768px){.admin-settings-date-group{flex-direction:column;gap:1rem}.admin-settings-date-item{min-width:unset}}.admin-settings-actions{display:flex;gap:var(--spacing-sm);flex-wrap:wrap;justify-content:flex-end;margin-top:var(--spacing-md)}.admin-settings-action-button{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);font-family:var(--md-sys-typescale-label-large-font);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);cursor:pointer;transition:all var(--transition-normal);border:none;min-height:40px;position:relative;overflow:hidden}.admin-settings-action-button:disabled{cursor:not-allowed;opacity:.6}.admin-settings-action-button.admin-settings-primary{background-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary)}.admin-settings-action-button.admin-settings-primary:hover:not(:disabled){background-color:var(--md-sys-color-primary-hover);box-shadow:var(--elevation-2)}.admin-settings-action-button.admin-settings-secondary{background-color:var(--md-sys-color-surface-variant);color:var(--md-sys-color-on-surface-variant);border:1px solid var(--md-sys-color-outline-variant)}.admin-settings-action-button.admin-settings-secondary:hover:not(:disabled){background-color:var(--md-sys-color-surface-container-high);border-color:var(--md-sys-color-outline)}.modal-content-body{text-align:center;padding:var(--spacing-lg)}.confirmation-icon{margin-bottom:var(--spacing-md)}.confirmation-icon .material-symbols-outlined{font-size:48px;color:var(--md-sys-color-primary)}.modal-content-body h3{font-family:var(--md-sys-typescale-title-large-font);font-size:var(--md-sys-typescale-title-large-size);font-weight:var(--md-sys-typescale-title-large-weight);color:var(--md-sys-color-on-surface);margin:0 0 var(--spacing-md) 0}.modal-content-body p{font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);color:var(--md-sys-color-on-surface-variant);margin:0 0 var(--spacing-sm) 0}.warning-text{color:var(--md-sys-color-error)!important;font-weight:500}.warning{display:flex}.modal-actions{display:flex;justify-content:flex-end;gap:var(--spacing-sm);padding:var(--spacing-lg);border-top:1px solid var(--md-sys-color-outline-variant)}.password-form{padding:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-lg)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.form-group label{font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);font-weight:500;color:var(--md-sys-color-on-surface)}.form-input{padding:var(--spacing-md);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-md);background-color:var(--md-sys-color-surface-container);color:var(--md-sys-color-on-surface);font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);transition:all var(--transition-normal)}.form-input:focus{outline:none;border-color:var(--md-sys-color-primary);box-shadow:0 0 0 2px var(--md-sys-color-primary-container)}.form-input::placeholder{color:var(--md-sys-color-on-surface-variant)}.admin-settings-password-form{padding:var(--spacing-sm);display:flex;flex-direction:column}.admin-settings-form-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.admin-settings-form-group label{font-family:var(--md-sys-typescale-body-medium-font);font-size:var(--md-sys-typescale-body-medium-size);font-weight:500;color:var(--md-sys-color-on-surface)}.admin-settings-form-input{padding:var(--spacing-md);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-md);background-color:var(--md-sys-color-surface-container);color:var(--md-sys-color-on-surface);font-family:var(--md-sys-typescale-body-large-font);font-size:var(--md-sys-typescale-body-large-size);transition:all var(--transition-normal);width:100%;box-sizing:border-box}.admin-settings-form-input:focus{outline:none;border-color:var(--md-sys-color-primary);box-shadow:0 0 0 2px var(--md-sys-color-primary-container)}.admin-settings-form-input::placeholder{color:var(--md-sys-color-on-surface-variant)}.admin-settings-password-input-wrapper{position:relative;display:flex;align-items:center}.admin-settings-password-input-wrapper .admin-settings-form-input{padding-right:48px}.admin-settings-password-toggle{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:4px;border-radius:var(--radius-sm);color:var(--md-sys-color-on-surface-variant);transition:all var(--transition-normal);display:flex;align-items:center;justify-content:center}.admin-settings-password-toggle:hover{background-color:var(--md-sys-color-surface-variant);color:var(--md-sys-color-on-surface)}.password-eye-icon{width:20px;height:20px;stroke-width:2}.button-loader{width:16px;height:16px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.setting-item{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.setting-actions{justify-content:flex-start;width:100%}.action-button{flex:1;justify-content:center}.modal-actions{flex-direction:column;gap:var(--spacing-sm)}.modal-actions .action-button{width:100%;justify-content:center}}.admin-settings-quarters-section.svelte-jysw9o{margin-top:1.5rem}.admin-settings-quarters-title.svelte-jysw9o{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin-bottom:1rem;border-bottom:2px solid var(--border-light);padding-bottom:.5rem}.admin-settings-quarters-row.svelte-jysw9o{display:flex;gap:1rem;flex-wrap:wrap}.admin-settings-quarter-group.svelte-jysw9o{flex:1;min-width:200px;padding:1rem;border-radius:8px;border:1px solid;background:#ffffff80}.quarter-1.svelte-jysw9o{border-color:var(--border-light);background:#3b82f60d}.quarter-2.svelte-jysw9o{border-color:var(--border-light);background:#10b9810d}.quarter-3.svelte-jysw9o{border-color:var(--border-light);background:#f59e0b0d}.quarter-4.svelte-jysw9o{border-color:var(--border-light);background:#ef44440d}.admin-settings-quarter-header.svelte-jysw9o{margin-bottom:1rem;text-align:center}.admin-settings-quarter-label.svelte-jysw9o{font-size:.9rem;font-weight:600;color:var(--text-primary);display:inline-flex;align-items:center;gap:.5rem}.app-container{height:100vh;width:100%;background-color:var(--md-sys-color-surface);transition:background-color var(--transition-normal);overflow:hidden}.student-portal,.teacher-portal,.admin-portal{display:flex;flex-direction:column;height:100vh;overflow:hidden;position:relative}.content-area{position:fixed;inset:64px 0;padding:0;border-top-left-radius:20px;background-color:var(--md-sys-color-surface);transition:left .15s cubic-bezier(.2,.9,.2,1),background-color var(--transition-normal)!important;overflow:visible}.content-area>*{height:100%;overflow-y:auto;overflow-x:visible;padding:var(--spacing-lg);scroll-behavior:smooth}.content-area>*::-webkit-scrollbar{width:8px}.content-area>*::-webkit-scrollbar-track{background:var(--md-sys-color-surface-variant)}.content-area>*::-webkit-scrollbar-thumb{background:var(--md-sys-color-outline-variant);transition:background-color var(--transition-normal)}.content-area>*::-webkit-scrollbar-thumb:hover{background:var(--md-sys-color-outline)}.admin-portal{display:flex;flex-direction:column;height:100vh;overflow:hidden;position:relative}@media (min-width: 768px){.app-container{background-color:var(--md-sys-color-primary-container)}[data-theme=dark] .app-container{background-color:var(--md-sys-color-surface-container-low)}.content-area{left:73px;top:64px;bottom:0;transition:left .15s cubic-bezier(.2,.9,.2,1)}.student-portal.nav-rail-collapsed .content-area,.teacher-portal.nav-rail-collapsed .content-area,.admin-portal.nav-rail-collapsed .content-area{left:230px;transition:left .15s cubic-bezier(.2,.9,.2,1)}}@media (max-width: 768px){.app-container{height:90vh}.content-area>*::-webkit-scrollbar{width:4px}.content-area{border-top-left-radius:16px;-webkit-overflow-scrolling:touch}.content-area>*{-webkit-overflow-scrolling:touch}.content-area>*{padding:var(--spacing-lg)}}@media (min-width: 769px) and (max-width: 1024px){.content-area{left:73px}.student-portal.nav-rail-collapsed .content-area,.teacher-portal.nav-rail-collapsed .content-area,.admin-portal.nav-rail-collapsed .content-area{left:220px}}@media (min-width: 1200px){.content-area>*{padding:var(--spacing-lg)}}
