:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;--color-primary: #f59d06;--color-primary-light: #f59d06;--color-primary-dark: #f59d06;--color-secondary: #8fd14f;--color-secondary-light: #3CB878;--color-secondary-dark: #3CB878;--color-accent: #f59d06;--color-accent-light: #f59d06;--color-accent-dark: #0987c7;--color-neutral: #f5f5f5;--color-neutral-light: #ffffff;--color-neutral-dark: #e0e0e0;--color-error: #db5b2a;color:#1f2933;background-color:var(--color-neutral)}*,*:before,*:after{box-sizing:border-box}body,#root{min-height:100vh;margin:0;background:var(--color-neutral)}body{background:radial-gradient(circle at top,var(--color-neutral-light),var(--color-neutral) 50%,var(--color-neutral-dark))}html.theme-light body{background:radial-gradient(circle at top,var(--color-neutral-light),var(--color-neutral) 50%,var(--color-neutral-dark));color:#0f172a}html.theme-dark body,html.theme-dark #root{background-color:#050816;background-image:none;color:#e5e7eb}html.theme-dark .admin-page-simple,html.theme-dark .admin-main{background-color:#050816}html.theme-dark .admin-main-wrapper,html.theme-dark .admin-layout,html.theme-dark .admin-page,html.theme-dark .admin-main-inner,html.theme-dark .admin-dashboard{background-color:#0b1020}html.theme-dark .admin-header{background:#0b1020;border-bottom-color:#94a3b84d}html.theme-dark .admin-brand-title{color:#e5e7eb}html.theme-dark .admin-nav{color:#cbd5f5}html.theme-dark .admin-nav a{color:inherit}html.theme-dark .admin-nav a:hover{border-color:#94a3b866}html.theme-dark .admin-nav a.active{background:#6366f133;color:#cbd5f5}html.theme-dark .admin-table-card,html.theme-dark .activity-detail-full,html.theme-dark .activity-upload-card{background-color:#050816;color:#e5e7eb;border-color:transparent;border-radius:18px;box-shadow:none}html.theme-dark .admin-dashboard{color:#e5e7eb;background-color:#0b1020;border-radius:24px;border:none;box-shadow:none}html.theme-dark .admin-logout{color:#cbd5f5}html.theme-dark .admin-logout.active{background-color:#818cf826;color:#f5f3ff}html.theme-dark .theme-toggle-btn{background:#ffffff14;box-shadow:0 1px 4px #0006}html.theme-dark .theme-toggle-btn:hover{background:#ffffff26;box-shadow:0 4px 12px #00000080}html.theme-dark .admin-dashboard h1,html.theme-dark .admin-dashboard h2,html.theme-dark .admin-section h2{color:#f9fafb}html.theme-dark .admin-dashboard p{color:#cbd5f5}html.theme-dark .admin-dashboard .admin-muted{color:#9ca3af}html.theme-dark .admin-section,html.theme-dark .announcement-wrapper{background:transparent;border-radius:0;border:none;box-shadow:none}html.theme-dark .admin-section+.admin-section{border-top:1px solid rgba(148,163,184,.06);margin-top:1.5rem;padding-top:1.5rem}html.theme-dark .admin-textarea{background-color:#020617;color:#e5e7eb;border-color:#1f2937}html.theme-dark .admin-textarea::placeholder{color:#6b7280}html.theme-dark .admin-textarea:focus{border-color:#818cf8;box-shadow:0 0 0 1px #818cf8}html.theme-dark .sa-add-btn{color:#fff;box-shadow:0 14px 40px #f871714d}html.theme-dark .admin-actions button{color:#e5e7eb;background-color:#020617;border-radius:999px;border:1px solid #1f2937}html.theme-dark .admin-actions button:hover{background-color:#0b1120;border-color:#4b5563}html.theme-dark .admin-primary-action{background:#111827;color:#e5e7eb;border-color:#4b5563}html.theme-dark .meal-program-grid,html.theme-dark .meal-history-card,html.theme-dark .programs-upload-card,html.theme-dark .meal-program-grid .programs-upload-card,html.theme-dark .meal-program-grid .meal-history-card{background:transparent;border:none;box-shadow:none}html.theme-dark hr,html.theme-dark .admin-divider{border-color:#94a3b81f}html.theme-dark .announcement-actions{border-top:1px solid rgba(148,163,184,.06);padding-top:1rem;margin-top:.75rem}html.theme-dark .students-grid,html.theme-dark .students-label,html.theme-dark .students-subtitle{color:#e5e7eb}html.theme-dark .students-empty{color:#9ca3af}html.theme-dark .students-select{background:#020617;border-color:#1f2937;color:#e5e7eb}html.theme-dark .students-select option{background:#020617;color:#e5e7eb}html.theme-dark .students-row{background:#020617;border-color:#1f2937;color:#e5e7eb;box-shadow:none}html.theme-dark .students-row.selected{background:#818cf82e;border-color:#818cf8}html.theme-dark .students-arrow{color:#64748b}html.theme-dark .students-form-card{background:#020617;border-color:#1f2937;box-shadow:none;color:#e5e7eb}html.theme-dark .students-form-card h2{color:#f9fafb}html.theme-dark .students-form label{color:#e5e7eb}html.theme-dark .students-form input,html.theme-dark .students-form select{background:#020617;border-color:#1f2937;color:#e5e7eb}html.theme-dark .students-form input::placeholder{color:#6b7280}html.theme-dark .students-reset{color:#9ca3af}html.theme-dark .students-reset:hover{color:#e5e7eb}html.theme-dark .meal-status-select,html.theme-dark .meal-status-date{background:#020617;border-color:#1f2937;color:#e5e7eb}html.theme-dark .meal-status-card,html.theme-dark .meal-status-savebar{background:#020617;border-color:#1f2937;box-shadow:none;color:#e5e7eb}html.theme-dark .meal-status-card.dirty{border-color:#818cf8}html.theme-dark .meal-status-avatar{background:#111827;color:#e5e7eb}html.theme-dark .meal-status-student h3{color:#f9fafb}html.theme-dark .meal-status-student span{color:#9ca3af}html.theme-dark .meal-status-toggle{background:#0b1020;border-color:#1f2937}html.theme-dark .meal-status-option{color:#9ca3af}html.theme-dark .meal-status-option.active{background:#111827;color:#e5e7eb;box-shadow:none}html.theme-dark .meal-status-option.active.ate{background:#3cb878;color:#fff}html.theme-dark .meal-status-option.active.little{background:#f59d06;color:#fff}html.theme-dark .meal-status-option.active.none{background:#db5b2a;color:#fff}html.theme-dark .meal-status-option.active.ate:hover,html.theme-dark .meal-status-option.active.ate:focus-visible{background:#35a96d;box-shadow:0 0 0 2px #3cb87859}html.theme-dark .meal-status-option.active.little:hover,html.theme-dark .meal-status-option.active.little:focus-visible{background:#e08e05;box-shadow:0 0 0 2px #f59d0659}html.theme-dark .meal-status-option.active.none:hover,html.theme-dark .meal-status-option.active.none:focus-visible{background:#c65224;box-shadow:0 0 0 2px #db5b2a59}html.theme-dark .attendance-layout{color:#e5e7eb}html.theme-dark .attendance-sidebar{border-right:1px solid #0b1020}html.theme-dark .attendance-card{background-color:#020617;border-radius:24px;border:1px solid #1f2937;box-shadow:none;color:#e5e7eb}html.theme-dark .attendance-card h2{color:#f9fafb}html.theme-dark .attendance-list{color:#e5e7eb}html.theme-dark .attendance-list-item{background-color:#020617;border:1px solid #1f2937;color:#e5e7eb}html.theme-dark .attendance-list-item:hover{border-color:#4b5563}html.theme-dark .attendance-list-item.active{background-color:#818cf82e;border-color:#818cf8}html.theme-dark .attendance-main-card{background-color:#020617;border-radius:24px;border:1px solid #1f2937;box-shadow:none;color:#e5e7eb}html.theme-dark .attendance-main-card h2{color:#f9fafb}html.theme-dark .attendance-toggle{background-color:#020617;border:1px solid #1f2937;color:#e5e7eb}html.theme-dark .attendance-toggle.active.present{background-color:#4ade80;color:#052e16;border-color:#4ade80}html.theme-dark .attendance-toggle.active.absent{background-color:#fecaca;color:#7f1d1d;border-color:#fecaca}html.theme-dark .attendance-calendar-card{background-color:#020617;border-radius:24px;border:1px solid #1f2937;box-shadow:none;color:#e5e7eb}html.theme-dark .attendance-calendar-header h3,html.theme-dark .attendance-calendar-header span,html.theme-dark .attendance-calendar-header button{color:#e5e7eb}html.theme-dark .attendance-calendar-weekdays span{color:#9ca3af}html.theme-dark .attendance-day{background-color:#020617;border:1px solid #1f2937;color:#e5e7eb}html.theme-dark .attendance-day.empty{background-color:transparent;border-color:transparent}html.theme-dark .attendance-day.present{background-color:#4ade80;color:#052e16;border-color:#4ade80}html.theme-dark .attendance-day.absent{background-color:#fecaca;color:#7f1d1d;border-color:#fecaca}html.theme-dark .attendance-calendar-header button,html.theme-dark .attendance-calendar-month button{background-color:#020617;border:1px solid #1f2937;color:#e5e7eb;border-radius:999px;box-shadow:none}html.theme-dark .attendance-calendar-header button:hover,html.theme-dark .attendance-calendar-month button:hover{background-color:#0f172a;border-color:#4b5563}html.theme-dark .attendance-calendar-header button:disabled,html.theme-dark .attendance-calendar-month button:disabled{background-color:#020617;border-color:#111827;color:#4b5563}html.theme-dark .meal-program-grid{color:#e5e7eb}html.theme-dark .meal-program-grid h1,html.theme-dark .meal-program-grid h2{color:#f9fafb}html.theme-dark .programs-upload-card{background-color:#020617;border-radius:24px;border:1px solid #1f2937;box-shadow:none}html.theme-dark .programs-title-input{background-color:#020617;border-color:#1f2937;color:#e5e7eb}html.theme-dark .programs-title-input::placeholder{color:#6b7280}html.theme-dark .programs-dropzone{background-color:#020617;border-color:#1f2937;color:#e5e7eb}html.theme-dark .programs-dropzone.active{border-color:#818cf8;background-color:#020617}html.theme-dark .programs-icon{color:#818cf8}html.theme-dark .programs-drop-text,html.theme-dark .programs-drop-subtext,html.theme-dark .programs-formats{color:#9ca3af}html.theme-dark .programs-browse{background-color:#111827;border-color:#1f2937;color:#e5e7eb}html.theme-dark .programs-browse:hover{background-color:#1f2937;border-color:#4b5563}html.theme-dark .program-preview-wrapper{color:#e5e7eb}html.theme-dark .programs-preview{border-radius:18px}html.theme-dark .program-preview-text{color:#f9fafb}html.theme-dark .program-preview-subtext{color:#9ca3af}html.theme-dark .modal-error{color:#fecaca}html.theme-dark .programs-success{color:#bbf7d0}html.theme-dark .meal-history-card{background-color:#020617;border-radius:24px;border:1px solid #1f2937;box-shadow:none;color:#e5e7eb}html.theme-dark .activities-state{color:#9ca3af}html.theme-dark .meal-history-item{background-color:#020617;border:1px solid #1f2937;color:#e5e7eb;box-shadow:none}html.theme-dark .meal-history-item:hover{border-color:#4b5563;background-color:#0f172a}html.theme-dark .meal-history-icon{background-color:#0f172a;color:#818cf8}html.theme-dark .meal-history-content strong{color:#f9fafb}html.theme-dark .meal-history-content span{color:#9ca3af}html.theme-dark .activities-pagination button{width:40px;height:40px;border-radius:999px;background-color:#020617;border:1px solid #1f2937;color:#e5e7eb;display:inline-flex;align-items:center;justify-content:center;box-shadow:none;transition:background-color .15s ease,border-color .15s ease,color .15s ease}html.theme-dark .activities-pagination button:hover:not(:disabled){background-color:#0f172a;border-color:#4b5563}html.theme-dark .activities-pagination button:disabled{opacity:.4;cursor:default}.auth-page{min-height:100vh;background:#f5f5f8;padding:0}.auth-layout{min-height:100vh;display:flex;flex-direction:row}.auth-card{width:min(480px,95vw);background:#fff;padding:2.75rem;border-radius:28px;box-shadow:0 30px 80px #6f3ff51f;border:1px solid rgba(111,63,245,.08);text-align:left}.auth-header{display:flex;align-items:center;gap:.6rem;font-weight:600;margin-bottom:1.75rem;color:#6f3ff5;font-size:1rem;letter-spacing:.02em}.logo-dot{width:12px;height:12px;border-radius:50%;background:#6f3ff5}.subtitle{margin-top:-.5rem;margin-bottom:2rem;color:#f59d06;font-size:1rem}.auth-card h2{margin-bottom:.5rem;color:#0987c7;font-size:2rem}.auth-form{display:flex;flex-direction:column;gap:.95rem}label{font-size:.9rem;font-weight:500;color:#394553}input{padding:.95rem 1rem;border-radius:14px;border:1px solid rgba(42,31,77,.15);font-size:1rem;transition:border .2s,box-shadow .2s;background:#fff;color:#1f1f2e}input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 25%,transparent)}.primary-btn{margin-top:.5rem;padding:1rem;border:none;border-radius:16px;width:100%;background:linear-gradient(120deg,var(--color-primary),var(--color-primary-dark));color:#fff;font-weight:600;font-size:1rem;cursor:pointer;transition:transform .2s,box-shadow .2s}.primary-btn:disabled{opacity:.65;cursor:not-allowed}.primary-btn:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 15px 30px color-mix(in srgb,var(--color-primary-dark) 30%,transparent)}@media(max-width:900px){.auth-layout{flex-direction:column}.auth-hero,.auth-card-wrapper{flex:none;width:100%;padding:2rem}.auth-hero{min-height:auto;text-align:center}.hero-content{max-width:100%}}@media(max-width:1100px){.meal-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.route-guard{min-height:60vh;display:flex;align-items:center;justify-content:center}.link{display:inline-block;margin-top:1rem;color:var(--color-accent);text-decoration:none;font-weight:500}.link:hover{text-decoration:underline}.error{margin-top:1rem;color:var(--color-primary-dark);font-weight:600}.spinner{display:flex;align-items:center;gap:.75rem;margin-top:1.5rem;color:var(--color-accent)}.spinner__circle{width:28px;height:28px;border-radius:50%;border:3px solid var(--color-neutral-dark);border-top-color:var(--color-secondary);animation:spin .75s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.page-shell{max-width:720px;margin:4rem auto;background:var(--color-neutral-light);padding:2rem;border-radius:20px;border:1px solid var(--color-neutral-dark);box-shadow:0 10px 40px #604cc314}.page-shell h2{color:var(--color-accent-dark)}.page-shell p{color:#3c4652}.super-admin-layout{min-height:100vh;padding:2rem;background:var(--color-neutral)}.sa-shell{display:flex;gap:0;border-radius:28px;overflow:hidden;border:1px solid var(--color-neutral-dark);background:var(--color-neutral);box-shadow:0 20px 60px #604cc314;min-height:calc(100vh - 4rem)}.sa-sidebar{width:220px;background:#fff;border-right:1px solid var(--color-neutral-dark);display:flex;flex-direction:column;padding:1.5rem 1.25rem;gap:1.5rem;height:100%;min-height:calc(100vh - 4rem)}.sa-brand{display:flex;align-items:center;gap:.65rem;font-weight:700;font-size:1.05rem;color:var(--color-accent)}.sa-brand .logo-dot{width:36px;height:36px;border-radius:12px}.sa-nav{display:flex;flex-direction:column;gap:.5rem}.secondary-nav{margin-top:.5rem;padding-top:.75rem;border-top:1px solid var(--color-neutral-dark)}.sa-nav-button{display:flex;align-items:center;gap:.6rem;padding:.65rem .9rem;border-radius:12px;color:#3c4652;font-weight:600;border:none;background:transparent;cursor:pointer;text-align:left;text-decoration:none}.sa-nav-button.active{background:color-mix(in srgb,var(--color-accent-light) 25%,var(--color-neutral));color:var(--color-accent-dark)}.sa-nav-button svg{width:18px;height:18px}.sa-sidebar-footer{margin-top:auto;display:flex;flex-direction:column;gap:1rem;font-size:.9rem}.sa-profile{display:flex;align-items:center;gap:.75rem;padding-top:1rem;border-top:1px solid var(--color-neutral-dark)}.sa-avatar{width:42px;height:42px;border-radius:50%;background:var(--color-secondary);display:grid;place-items:center;font-weight:700;color:#fff}.sa-main{flex:1;padding:2rem 2.5rem;background:var(--color-neutral);min-height:100%;overflow-y:auto}.sa-main header{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem}.sa-main h1{margin:0;color:var(--color-accent-dark)}.sa-main header p{margin:0;color:#5d6775}.sa-add-btn{border:none;background:var(--color-primary);color:#fff;font-weight:600;padding:.65rem 1.25rem;border-radius:999px;display:inline-flex;align-items:center;gap:.5rem;cursor:pointer;box-shadow:0 4px 8px color-mix(in srgb,#000 15%,transparent)}.sa-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:2rem}.sa-card{background:var(--color-neutral-light);border:1px solid var(--color-neutral-dark);border-radius:18px;padding:1.25rem;display:flex;flex-direction:column;gap:.35rem}.sa-card small{color:#6c7585;font-weight:600;text-transform:uppercase;letter-spacing:.1em}.sa-card strong{font-size:2rem;color:#1f2933}.sa-card.muted strong{color:#9298a7}.sa-table-card{background:var(--color-neutral-light);border:1px solid var(--color-neutral-dark);border-radius:18px;padding:1.5rem}.sa-table-card h3{margin:0 0 1rem;color:var(--color-accent-dark)}.sa-table{width:100%;border-collapse:collapse}.sa-table th,.sa-table td{padding:.85rem .5rem;text-align:left}.sa-table th{font-size:.85rem;color:#68717f;text-transform:uppercase;border-bottom:1px solid var(--color-neutral-dark)}.sa-table tr+tr td{border-top:1px solid var(--color-neutral-dark)}.sa-table .status-pill{background:color-mix(in srgb,var(--color-secondary-light) 70%,#fff)}.sa-table a{color:var(--color-accent);font-weight:600;text-decoration:none}.sa-table-action{color:var(--color-accent);font-weight:600}.sa-table-actions{display:flex;align-items:center;gap:.4rem}.sa-table-actions button{border:1px solid var(--color-neutral-dark);background:var(--color-neutral-light);border-radius:8px;padding:.35rem;cursor:pointer;color:#4a5563;display:inline-flex}.sa-table-actions svg{width:18px;height:18px}.pagination-footer{margin-top:1rem;display:flex;flex-wrap:wrap;justify-content:space-between;gap:.75rem;align-items:center}.pagination-controls{display:inline-flex;gap:.35rem}.pagination-controls button{border:1px solid var(--color-neutral-dark);background:var(--color-neutral-light);border-radius:8px;padding:.35rem .75rem;cursor:pointer;font-weight:600}.pagination-controls button.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.not-found{min-height:100vh;padding:3rem;background:radial-gradient(circle at top,var(--color-neutral-light),var(--color-neutral) 50%,var(--color-neutral-dark));display:flex;align-items:center;justify-content:center}.not-found__card{width:min(960px,100%);background:var(--color-neutral-light);border-radius:28px;box-shadow:0 25px 60px #604cc31a;border:1px solid var(--color-neutral-dark);padding:2.5rem}.not-found__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;color:#4b5563}.not-found__brand{display:flex;align-items:center;gap:.6rem;font-size:1rem}.not-found__logo{width:24px;height:24px;border-radius:8px;background:var(--color-primary);display:inline-block}.not-found__tag{font-size:.85rem;padding:.35rem .75rem;border-radius:999px;background:var(--color-neutral)}.not-found__content{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;align-items:center}.not-found__illustration{min-height:280px;border-radius:24px;overflow:hidden;box-shadow:inset 0 0 0 1px var(--color-neutral-dark);background:var(--color-neutral-light)}.not-found__illustration img{width:100%;height:100%;object-fit:cover}.not-found__copy h1{font-size:4rem;margin:0;color:var(--color-accent);font-weight:800}.not-found__copy h2{margin:.25rem 0 .5rem;color:#2c2c2c}.not-found__copy p{margin:0 0 1.25rem;color:#4b5563}.not-found__actions{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.not-found__actions button{border:none;border-radius:999px;padding:.85rem 1.8rem;font-weight:600;cursor:pointer}.not-found__actions button:first-of-type{background:var(--color-primary);color:#fff;box-shadow:0 15px 30px #cc520040}.not-found__actions .link-btn{background:transparent;color:#1f2937;text-decoration:underline}.not-found__copy small{color:#6b7280}.modal-overlay{position:fixed;inset:0;background:#1f273480;display:flex;align-items:center;justify-content:center;padding:1.5rem;z-index:50}.modal-card{width:min(520px,100%);background:var(--color-neutral-light);border-radius:24px;box-shadow:0 25px 60px #1f273440;border:1px solid var(--color-neutral-dark);overflow:hidden}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--color-neutral-dark)}.modal-header h2{margin:0;color:var(--color-accent-dark)}.modal-close{border:none;background:transparent;font-size:1.5rem;cursor:pointer;color:#6b7280}.modal-form{padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem}.modal-form fieldset{border:none;padding:0;margin:0;display:flex;flex-direction:column;gap:1rem}.modal-form legend{font-weight:700;color:#1f2933;margin-bottom:.5rem}.modal-form label{display:flex;flex-direction:column;gap:.4rem;font-size:.85rem;color:#3c4652}.modal-form input,.modal-form textarea,.modal-form select{padding:.85rem 1rem;border-radius:12px;border:1px solid var(--color-neutral-dark);font-size:1rem;font-family:inherit}.modal-form textarea{resize:none}.modal-helper{font-size:.85rem;color:#6c7585;margin:0}.modal-error{margin:0;padding:.75rem 1rem;border-radius:12px;background:color-mix(in srgb,var(--color-primary-light) 15%,#fff);color:var(--color-primary-dark);font-weight:600}.modal-actions{display:flex;justify-content:flex-end;gap:1rem}.modal-secondary,.modal-primary{border-radius:999px;border:none;padding:.75rem 1.5rem;font-weight:600;cursor:pointer}.modal-secondary{background:var(--color-neutral-light);border:1px solid var(--color-neutral-dark);color:#3c4652}.modal-primary{background:linear-gradient(120deg,var(--color-primary),var(--color-primary-dark));color:#fff;box-shadow:0 10px 20px color-mix(in srgb,var(--color-primary-dark) 30%,transparent)}.admin-page-simple{min-height:100vh;background:var(--color-neutral)}.admin-header{padding:1.5rem 5%;border-bottom:1px solid var(--color-neutral-dark);display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:2rem;background:#fff}.admin-brand{display:flex;align-items:center;gap:1rem}.admin-logo{width:48px;height:48px;border-radius:18px;background:var(--color-accent);color:#fff;display:grid;place-items:center;font-weight:700;font-size:1.25rem}.admin-brand-subtitle{margin:0;color:#6b7280;font-size:.9rem}.admin-brand-title{margin:0;color:#0f172a;font-size:1.4rem}.admin-nav{display:flex;flex-wrap:wrap;gap:.5rem;font-weight:600;color:#6b7280}.admin-nav a{padding:.4rem 1.25rem;border-radius:999px;text-decoration:none;color:inherit;border:1px solid transparent}.admin-nav a:hover{border-color:var(--color-neutral-dark)}.admin-nav a.active{background:color-mix(in srgb,var(--color-accent-light) 20%,#fff);color:var(--color-accent);border-color:transparent}.admin-nav-wrapper{display:flex;align-items:center;justify-content:flex-end;gap:1rem;margin-left:auto}.admin-header-right{display:flex;align-items:center;gap:.75rem}.admin-logout{padding:.75rem 1.5rem;border-radius:9999px;font-weight:600;font-size:1rem;border:none;background:transparent;color:#6b7280;cursor:pointer}.admin-logout.active{background:color-mix(in srgb,var(--color-accent-light) 20%,#fff);color:#f88bad}.admin-logout:hover{opacity:.7}.theme-toggle-btn{width:32px;height:32px;border-radius:999px;border:none;background:#f3f4ff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 1px 4px #0f172a1f;transition:background .15s ease,transform .1s ease,box-shadow .15s ease}.theme-toggle-btn:hover{background:#e5e7ff;transform:translateY(-1px);box-shadow:0 4px 10px #0f172a2e}.theme-icon-sun,.theme-icon-moon{font-size:16px;line-height:1}.admin-menu-toggle{display:none;border:none;background:transparent;padding:0;gap:.35rem;flex-direction:column}.admin-menu-toggle span{display:block;width:18px;height:2px;border-radius:999px;background:#0f172a}.admin-mobile-menu{display:none}.admin-main{padding:2.5rem 5%}.admin-main-inner{background:#fff;border-radius:18px;padding:3rem;box-shadow:0 15px 40px #0f172a14}.admin-dashboard h1{margin:0 0 .5rem;color:#0f172a}.admin-dashboard p{margin:0;color:#667085}.admin-section{margin-top:2.5rem}.admin-classes-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.admin-section h2{margin:0 0 .35rem;color:#0f172a;font-size:1.25rem}.admin-section p{margin:0 0 1rem;color:#94a3b8}.announcement-wrapper{display:flex;flex-direction:column;gap:1rem}.announcement-actions{display:flex;justify-content:flex-end}.admin-textarea{width:100%;border-radius:14px;border:1px solid var(--color-neutral-dark);padding:1rem;resize:none;font-size:1rem;color:#1e293b;min-height:140px}.admin-textarea:focus{outline:none;border-color:var(--color-primary)}.admin-actions{display:flex;flex-wrap:wrap;gap:1rem}.admin-actions button{border-radius:999px;padding:.75rem 1.5rem;font-weight:600;border:1px solid var(--color-neutral-dark);background:transparent;cursor:pointer;color:#0f172a}.admin-actions button:hover{border-color:var(--color-accent);color:var(--color-accent)}.admin-primary-btn,.admin-primary-action{background:var(--color-secondary);color:#0f172a;border:none;box-shadow:0 15px 30px #8fd14f66}.admin-primary-action{border:none}.admin-primary-btn:disabled{opacity:.6;cursor:not-allowed}.activity-form-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:2.5rem}.activity-form-left h1{margin-top:0;margin-bottom:1.5rem;font-size:2rem;color:#0f172a}.activity-form-left label{display:flex;flex-direction:column;gap:.4rem;margin-bottom:1.25rem;font-weight:600;color:#0f172a}.activity-form-left input,.activity-form-left textarea{border-radius:16px;border:1px solid var(--color-neutral-dark);background:#f4f7fb;padding:.9rem 1rem;font-size:1rem}.activity-form-left textarea{min-height:140px;resize:none}.activity-form-left select{width:100%;padding:.9rem 1rem;border-radius:16px;border:1px solid var(--color-neutral-dark);background-color:#f4f7fb;font-size:1rem;outline:none;cursor:pointer}.activity-form-left label select{cursor:pointer}.field-error{color:var(--color-primary);font-size:.85rem;font-weight:600}.activity-detail-panel{background:#fff;border:1px solid var(--color-neutral-dark);border-radius:24px;padding:2rem;box-shadow:0 10px 30px #141e370f}.activity-detail-panel form{display:flex;flex-direction:column;gap:1.25rem}.activity-detail-panel label{display:flex;flex-direction:column;gap:.4rem;font-weight:600;color:#0f172a}.activity-detail-panel input,.activity-detail-panel textarea,.activity-detail-panel select{width:100%;border-radius:16px;border:1px solid var(--color-neutral-dark);background:#f4f7fb;padding:.9rem 1rem;font-size:1rem;box-sizing:border-box}.activity-detail-panel textarea{min-height:140px;resize:none}.activity-panel-title{margin:0 0 1.5rem;font-size:1.45rem;color:#0f172a}.activity-detail-grid{align-items:flex-start}.activity-detail-panel .activities-state{padding:0}.activity-detail-panel.activity-media-panel{display:flex;flex-direction:column;gap:1.25rem}.activity-upload-card{border-radius:24px;border:2px dashed var(--color-neutral-dark);padding:2.25rem;background:#fafafa;min-height:420px;display:flex;flex-direction:column;gap:1rem}.activity-dropzone{flex:1;border-radius:24px;border:2px dashed var(--color-neutral-dark);background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2.5rem 1.5rem;gap:.5rem}.activity-dropzone.active{border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent-light) 10%,#fff)}.activity-drop-title{margin:0;font-weight:700;color:#0f172a}.activity-drop-subtitle{color:#94a3b8;margin:0}.activity-upload-btn{border:none;border-radius:999px;padding:.65rem 1.5rem;background:#edeff2;color:#0f172a;font-weight:600;cursor:pointer}.activity-drop-note{margin:0;color:#7f8da0;font-size:.9rem}.activity-preview-grid{width:100%;display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:1rem}.activity-preview-item{position:relative;border-radius:16px;overflow:hidden}.activity-preview-item img,.activity-preview-item video{width:100%;height:110px;object-fit:cover;display:block}.activity-remove{position:absolute;top:6px;right:6px;border:none;background:#0009;color:#fff;border-radius:50%;width:24px;height:24px;cursor:pointer}.activity-gallery{margin-top:1.25rem;display:flex;flex-wrap:wrap;gap:.75rem}.activity-gallery-item{position:relative;width:128px;height:128px;border-radius:16px;overflow:hidden;background:#f3f4f6;box-shadow:0 2px 6px #0f172a14}.activity-gallery-item img,.activity-gallery-item video{width:100%;height:100%;object-fit:cover;display:block}.activity-gallery-remove{position:absolute;top:6px;right:6px;width:24px;height:24px;border-radius:999px;border:none;background:#0f172abf;color:#fff;font-size:16px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer}.activity-form-footer{grid-column:span 2;display:flex;align-items:center;justify-content:space-between;margin-top:1.5rem}.activity-checkbox{display:flex;align-items:center;gap:.5rem;font-weight:600;color:#0f172a}.activity-detail-full{grid-column:span 2;background:#fff;border:1px solid var(--color-neutral-dark);border-radius:24px;padding:1.75rem 2rem;box-shadow:0 10px 30px #141e370f;display:flex;flex-direction:column;gap:1rem}.activity-notify-row{margin-top:1.25rem;padding:1rem 1.25rem;border-radius:18px;background:#f9fafb;display:flex;align-items:center;justify-content:space-between;gap:1rem}.activity-notify-text{flex:1;min-width:0}.activity-notify-title{display:block;font-weight:600;font-size:.95rem;color:#111827;margin-bottom:.25rem}.activity-notify-description{font-size:.85rem;color:#6b7280}.activity-notify-card{display:flex;align-items:center;justify-content:space-between;gap:1rem}.activity-notify-card>div{flex:1;min-width:0}.activity-notify-card h3{margin:0 0 .35rem;font-size:1.25rem}.activity-notify-card p{margin:0;color:#5d6775}.activity-switch-toggle{position:relative;display:inline-flex;align-items:center;justify-content:flex-start;width:52px;height:30px;border-radius:999px;cursor:pointer;flex-shrink:0}.activity-switch-toggle input{display:none}.activity-switch-slider{position:relative;display:block;width:100%;height:100%;border-radius:999px;background:#e5e7eb;box-shadow:inset 0 0 0 1px #94a3b899;transition:background .2s ease,box-shadow .2s ease,transform .2s ease}.activity-switch-slider:before{content:"";position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:999px;background:#fff;box-shadow:0 2px 5px #0f172a40;transition:transform .2s ease}.activity-switch-toggle.active .activity-switch-slider{background:#4ade80;box-shadow:inset 0 0 0 1px #22c55e99}.activity-switch-toggle.active .activity-switch-slider:before{transform:translate(22px)}.activity-detail-actions{display:flex;justify-content:flex-end;gap:1rem}.activities-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.activities-label{color:#94a3b8;font-weight:600;margin-bottom:.4rem}.activities-state{text-align:center;padding:2rem 0;color:#64748b}.activities-error{text-align:center;padding:2rem 0;color:#dc2626;font-weight:600}.activities-pagination{display:flex;gap:1rem;justify-content:center;align-items:center;padding:1rem 0}.activities-pagination button{border:1px solid var(--color-neutral-dark);background:#fff;border-radius:8px;padding:.35rem .75rem;cursor:pointer}.activities-pagination button:disabled{opacity:.4;cursor:not-allowed}.students-grid{margin-top:2rem;display:flex;gap:2.5rem;align-items:flex-start}.students-left{width:38%}.students-label{font-weight:600;color:#0f172a;display:block;margin-bottom:.5rem}.students-select{width:100%;padding:.75rem 1rem;border-radius:16px;border:1px solid var(--color-neutral-dark);background:#fff;margin-bottom:1.5rem}.students-subtitle{font-weight:600;color:#334155;margin-bottom:.75rem}.students-list{display:flex;flex-direction:column;gap:.75rem}.students-row{width:100%;border:1px solid var(--color-neutral-dark);border-radius:16px;padding:.75rem 1rem;background:#fff;display:flex;align-items:center;gap:.75rem;justify-content:space-between;cursor:pointer;transition:border-color .2s,background .2s}.students-row.selected{border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent-light) 15%,#fff)}.students-avatar{width:36px;height:36px;border-radius:50%;background:var(--color-accent);color:#fff;display:grid;place-items:center;font-weight:700}.students-arrow{font-size:1.4rem;color:#94a3b8}.students-empty{color:#6b7280;font-style:italic}.students-form-card{flex:1;border:1px solid var(--color-neutral-dark);border-radius:18px;padding:2rem;background:#fff}.students-form{display:flex;flex-direction:column;gap:1rem}.students-form label{font-weight:600;color:#0f172a;display:flex;flex-direction:column;gap:.35rem}.students-form input,.students-form select{border-radius:16px;border:1px solid var(--color-neutral-dark);padding:.75rem 1rem}.students-form-actions{margin-top:1rem;display:flex;justify-content:flex-end;gap:1rem;align-items:center}.students-reset{border:none;background:transparent;color:#64748b;cursor:pointer}.meal-status-page{display:flex;flex-direction:column;gap:1.5rem;width:100%;max-width:100%;margin-left:auto;margin-right:auto;box-sizing:border-box}.meal-status-header{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap;width:100%;max-width:100%;box-sizing:border-box}.meal-status-date-field{display:flex;justify-content:flex-end}.meal-status-title{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.meal-status-title h1{margin:0}.meal-status-select,.meal-status-date{padding:.6rem 1rem;border-radius:999px;border:1px solid var(--color-neutral-dark);background:#fff;font-weight:600;color:#0f172a;max-width:100%;box-sizing:border-box}.meal-status-select{min-width:200px}.meal-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;width:100%;max-width:100%;box-sizing:border-box}.meal-status-card{background:#fff;border:1px solid var(--color-neutral-dark);border-radius:20px;padding:1.5rem;display:flex;flex-direction:column;gap:1rem;box-shadow:0 12px 30px #0f172a0f;width:100%;min-width:0;box-sizing:border-box}.meal-status-card.dirty{border-color:var(--color-accent);box-shadow:0 16px 40px #0f172a1f}.meal-status-card-header{display:flex;align-items:center;gap:.75rem}.meal-status-avatar{width:44px;height:44px;border-radius:50%;background:var(--color-accent);color:#fff;display:grid;place-items:center;font-weight:700}.meal-status-student h3{margin:0;font-size:1.05rem;color:#0f172a}.meal-status-student span{font-size:.85rem;color:#64748b}.meal-status-badge{margin-left:auto;padding:.25rem .65rem;border-radius:999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.02em}.meal-status-badge.saved{background:#e7f7ed;color:#16a34a}.meal-status-badge.dirty{background:#fff2e2;color:#d97706}.meal-status-toggle{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem;padding:.35rem;border-radius:999px;border:1px solid var(--color-neutral-dark);background:#f8fafc}.meal-status-option{border:none;background:transparent;border-radius:999px;padding:.5rem .75rem;font-weight:600;color:#64748b;cursor:pointer;transition:background .2s,color .2s,box-shadow .2s}.meal-status-option.active{background:#fff;color:#0f172a;box-shadow:0 8px 18px #0f172a14}.meal-status-option.active.ate{background:#3cb878;color:#fff}.meal-status-option.active.little{background:#f59d06;color:#fff}.meal-status-option.active.none{background:#db5b2a;color:#fff}.meal-status-option.active.ate:hover,.meal-status-option.active.ate:focus-visible{background:#35a96d;box-shadow:0 0 0 2px #3cb87859,0 8px 18px #0f172a1f}.meal-status-option.active.little:hover,.meal-status-option.active.little:focus-visible{background:#e08e05;box-shadow:0 0 0 2px #f59d0659,0 8px 18px #0f172a1f}.meal-status-option.active.none:hover,.meal-status-option.active.none:focus-visible{background:#c65224;box-shadow:0 0 0 2px #db5b2a59,0 8px 18px #0f172a1f}.meal-status-option:disabled{cursor:not-allowed;opacity:.6}.meal-status-note{display:flex;flex-direction:column;gap:.5rem}.meal-status-note-label{font-weight:600;color:#334155}.meal-status-savebar{position:sticky;bottom:0;background:#fff;border:1px solid var(--color-neutral-dark);border-radius:20px;padding:1rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;box-shadow:0 12px 30px #0f172a14;z-index:2;width:100%;max-width:100%;left:0;right:0;box-sizing:border-box}.meal-status-savebar-left{color:#475569;font-weight:600}.meal-status-savebar-left strong{color:#0f172a}.meal-status-save-button{margin-left:0}.attendance-layout{margin-top:2rem;display:grid;grid-template-columns:320px 1fr;gap:2rem}.attendance-sidebar{display:flex;flex-direction:column;gap:1.5rem}.attendance-card{background:#fff;border:1px solid var(--color-neutral-dark);border-radius:20px;padding:1.5rem;box-shadow:0 15px 30px #0f172a0f}.attendance-card h2{margin:0 0 1rem;font-size:1.25rem;color:#0f172a}.attendance-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.attendance-list-item{border:1px solid var(--color-neutral-dark);border-radius:14px;padding:.65rem .9rem;cursor:pointer;background:#fff;transition:border-color .2s,background .2s}.attendance-list-item.active{border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent-light) 18%,#fff)}.attendance-main{display:flex;flex-direction:column;gap:1.5rem}.attendance-main-card{display:flex;flex-direction:column;align-items:center}.attendance-main-card,.attendance-calendar-card{background:#fff;border:1px solid var(--color-neutral-dark);border-radius:24px;padding:2rem;box-shadow:0 15px 35px #0f172a0d}.attendance-main-card h2{margin-top:0;font-size:1.75rem;text-align:center;color:#0f172a}.attendance-main-card .sa-add-btn{align-self:center;margin-left:0;margin-top:24px}.attendance-toggle-group{display:flex;justify-content:center;gap:1rem;margin:1.5rem 0}.attendance-toggle{border-radius:999px;border:1px solid var(--color-neutral-dark);padding:.75rem 2rem;background:#f8fafc;cursor:pointer;font-weight:600;color:#475569}.attendance-toggle.active.present{background:#31a768;color:#fff}.attendance-toggle.active.absent{background:#db5b2a;color:#fff}.attendance-calendar-card h3{margin:0;font-size:1.15rem}.attendance-calendar-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.attendance-calendar-header button,.attendance-calendar-month button{border:1px solid var(--color-neutral-dark);background:#fff;width:32px;height:32px;border-radius:50%;cursor:pointer}.attendance-calendar-month{display:flex;align-items:center;gap:.5rem;font-weight:600}.attendance-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.5rem}.attendance-calendar-weekdays span{text-align:center;font-weight:600;color:#94a3b8}.attendance-day{min-height:58px;border-radius:16px;border:1px solid var(--color-neutral-dark);display:grid;place-items:center;font-weight:600;color:#475569}.attendance-day.present{background:color-mix(in srgb,var(--color-secondary-light) 70%,#fff);border-color:var(--color-secondary);color:var(#4a3b9f)}.attendance-day.absent{background:color-mix(in srgb,var(--color-accent-light) 35%,#fff);border-color:var(--color-accent);color:var(--color-accent-dark)}.attendance-day.empty{border:none;background:transparent}.admin-table-card{margin-top:2rem;background:#fff;border-radius:12px;border:1px solid var(--color-neutral-dark);overflow:hidden}.admin-table-scroll{width:100%;overflow-x:auto;overflow-y:hidden}.admin-table-scroll::-webkit-scrollbar{height:6px}.admin-table-scroll::-webkit-scrollbar-track{background:transparent}.admin-table-scroll::-webkit-scrollbar-thumb{background:var(--color-neutral-dark);border-radius:999px}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{padding:1rem 1.25rem;text-align:left}.admin-table th{font-size:.85rem;text-transform:uppercase;color:#94a3b8;border-bottom:1px solid var(--color-neutral-dark)}.admin-table tbody tr+tr td{border-top:1px solid var(--color-neutral-dark)}.admin-link-btn{display:inline-flex;align-items:center;justify-content:center;padding:.45rem 1.4rem;border-radius:999px;border:1px solid var(--color-secondary-dark);background:transparent;color:var(--color-secondary-dark);font-weight:600;font-size:.95rem;cursor:pointer;text-decoration:none}.admin-link-btn:hover{background:color-mix(in srgb,var(--color-secondary-dark) 10%,#ffffff)}.programs-grid{display:flex;gap:2.5rem;margin-top:2rem;align-items:flex-start}.programs-filters{width:34%}.programs-filters h1{margin:0 0 1rem;color:#0f172a}.programs-field label{display:block;font-weight:600;color:#0f172a;margin-bottom:.5rem}.programs-upload-card{flex:1;border:1px solid var(--color-neutral-dark);border-radius:20px;padding:2rem;background:#fff}.programs-upload-card h2{margin:0 0 1.25rem;color:#0f172a}.programs-upload-card .programs-title-input{width:100%;box-sizing:border-box;display:block;padding:16px 20px;margin-top:12px;margin-bottom:24px;border-radius:16px;border:1px solid var(--border-subtle, #e5e7eb);background:#f7f8fb;font-size:16px}.programs-dropzone{border:2px dashed var(--color-neutral-dark);border-radius:20px;padding:2.5rem;text-align:center;background:#fafafa;color:#475569;transition:border-color .2s,background .2s}.programs-dropzone.active{border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent-light) 10%,#fafafa)}.programs-icon{font-size:2.5rem;margin-bottom:.75rem}.programs-drop-text{font-weight:600;color:#0f172a;margin:0}.programs-drop-subtext{display:block;color:#94a3b8;margin:.35rem 0}.programs-browse{border:none;background:transparent;color:var(--color-accent);font-weight:600;cursor:pointer}.programs-formats{margin-top:.75rem;color:#94a3b8;font-size:.9rem}.programs-preview{max-width:100%;border-radius:12px}.program-preview-wrapper{display:flex;flex-direction:column;align-items:center;gap:.75rem}.program-preview-text{font-weight:600;color:#0f172a;margin:0;text-align:center}.program-preview-subtext{margin:0;color:#94a3b8;font-size:.9rem;text-align:center}.program-preview-actions{display:flex;gap:1rem}.program-replace{border:none;background:var(--color-primary);color:#fff;font-weight:600;padding:.6rem 1.2rem;border-radius:999px;cursor:pointer}.program-remove{border:none;background:transparent;color:#ef4444;font-weight:600;cursor:pointer}.programs-submit-row{display:flex;justify-content:flex-end;margin-top:2rem}.programs-success{margin-top:1rem;color:#16a34a;font-weight:600}.meal-program-grid{display:flex;gap:2.5rem;margin-top:2rem;align-items:flex-start}.meal-history-card{width:36%;background:#fff;border:1px solid var(--color-neutral-dark);border-radius:20px;padding:2rem;box-shadow:0 15px 30px #0f172a0d}.meal-history-card h2{margin:0 0 1rem;color:#0f172a}.meal-history-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.meal-history-item{display:flex;align-items:center;gap:.9rem;border:1px solid var(--color-neutral-dark);border-radius:16px;padding:.9rem 1rem;background:#fafafa;cursor:pointer;transition:border-color .2s ease,transform .2s ease}.meal-history-item:hover{border-color:var(--color-accent);transform:translateY(-1px)}.meal-history-icon{width:44px;height:44px;border-radius:12px;background:color-mix(in srgb,var(--color-accent-light) 25%,#fff);display:grid;place-items:center;color:var(--color-accent-dark);font-size:1.4rem}.meal-history-content{display:flex;flex-direction:column;gap:.15rem}.meal-history-content strong{color:#0f172a}.meal-history-content span{color:#94a3b8;font-size:.9rem}.dashboard-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem;border-bottom:1px solid var(--color-neutral-dark);padding-bottom:.5rem}.status-pill{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .75rem;border-radius:999px;font-weight:600;font-size:.85rem;background:var(--color-secondary-dark);color:var(--color-neutral)}.status-pill-error{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .75rem;border-radius:999px;font-weight:600;font-size:.85rem;background:var(--color-error);color:var(--color-neutral)}.auth-hero{flex:1;background:#fff;display:flex;align-items:center;justify-content:center;padding:3rem}.hero-content{max-width:420px;color:#2a1f4d}.hero-eyebrow{text-transform:uppercase;letter-spacing:.3em;font-size:.85rem;color:#2a1f4dbf;margin-bottom:1rem}.hero-logo{height:250px;margin-bottom:12px}.auth-hero h1{font-size:clamp(2.5rem,3vw,3.25rem);margin:0 0 1rem}.hero-subtitle{font-size:1.05rem;line-height:1.5;color:#2a1f4dcc}.auth-card-wrapper{flex:1;display:flex;align-items:center;justify-content:center;padding:3rem}@media(max-width:768px){.admin-header{padding:1rem 5%;gap:1rem}.admin-menu-toggle{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:999px;border:1px solid var(--color-neutral-dark);background:#fff;cursor:pointer;margin-left:auto}.admin-nav-wrapper{display:none}.admin-mobile-menu{display:block;border-top:1px solid var(--color-neutral-dark);background:#fff;box-shadow:0 12px 30px #0f172a14}.admin-mobile-menu-inner{padding:.75rem 5%;display:flex;flex-direction:column;gap:.5rem}.admin-mobile-nav{display:flex;flex-direction:column;gap:.25rem}.admin-mobile-nav a{padding:.6rem .75rem;border-radius:999px;text-decoration:none;color:#6b7280}.admin-mobile-nav a.active{background:color-mix(in srgb,var(--color-accent-light) 20%,#fff);color:var(--color-accent)}.admin-mobile-logout{margin-top:.75rem;align-self:flex-start}.admin-header-right{gap:.5rem}.theme-toggle-btn{width:28px;height:28px}.admin-table-card{border-radius:16px;padding:1.25rem 1rem}.admin-table-scroll{margin:0 -.5rem;padding-bottom:.5rem}.admin-table{min-width:640px}.students-grid{flex-direction:column;align-items:stretch;gap:1.75rem;margin-top:1.5rem}.students-left{width:100%}.students-form-card{width:100%;margin-top:0;padding:1.5rem;border-radius:18px}.students-list{max-height:none}.meal-status-header{align-items:flex-start}.meal-status-title,.meal-status-date-field,.meal-status-select,.meal-status-date{width:100%}.meal-status-grid{grid-template-columns:1fr}.meal-status-savebar{flex-direction:column;align-items:stretch}.meal-status-save-button{width:100%}.meal-status-page{overflow-x:hidden}.programs-grid{display:flex;flex-direction:column;align-items:stretch;gap:1.5rem;margin-top:1.5rem}.programs-filters{width:100%;max-width:100%}.programs-upload-card{width:100%;max-width:100%;margin-top:0;border-radius:20px;padding:1.5rem 1.25rem}.programs-submit-row{width:100%;margin-top:1.75rem;display:flex;justify-content:center}.programs-submit-row .sa-add-btn{min-width:180px}.admin-dashboard{padding-inline:1.25rem}.programs-grid{max-width:100%}.activity-form-grid{display:flex;flex-direction:column;align-items:stretch;gap:1.5rem}.activity-form-left,.activity-upload-card{width:100%;max-width:100%}.activity-upload-card{margin-top:0;border-radius:20px;padding:1.5rem 1.25rem}.activity-form-footer{width:100%;margin-top:.5rem;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.activity-form-footer .sa-add-btn{min-width:180px}.activity-form-grid{max-width:100%}.activity-detail-grid{display:flex;flex-direction:column;align-items:stretch;gap:1.5rem}.activity-detail-panel,.activity-media-panel,.activity-detail-full{width:100%;max-width:100%}.activity-notify-card{flex-direction:row;align-items:flex-start;justify-content:space-between;gap:1rem}.activity-detail-actions{margin-top:1.25rem;display:flex;flex-wrap:wrap;gap:.75rem;justify-content:flex-start}.activity-detail-actions .sa-add-btn,.activity-detail-actions .modal-secondary{flex:1;min-width:140px}.activity-notify-row{flex-direction:row;align-items:flex-start;gap:.75rem;padding:1rem}.activity-notify-text{flex:1}.activity-gallery{justify-content:flex-start}.attendance-layout{display:flex;flex-direction:column;align-items:stretch;gap:1.5rem;margin-top:1.5rem}.attendance-sidebar{width:100%;max-width:100%;display:flex;flex-direction:column;gap:1rem}.attendance-card{width:100%}.attendance-main{width:100%;max-width:100%;display:flex;flex-direction:column;gap:1.5rem}.attendance-main-card,.attendance-calendar-card{width:100%;max-width:100%}.attendance-calendar-grid{width:100%}.meal-program-grid{display:flex;flex-direction:column;align-items:stretch;gap:1.5rem;margin-top:1.5rem}.programs-upload-card,.meal-history-card{width:100%;max-width:100%;padding:1.5rem 1.25rem;border-radius:20px}.auth-layout{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:1.5rem 1.25rem;gap:1.5rem}.auth-hero{display:none}.auth-card-wrapper{width:100%;max-width:420px}.auth-card{width:100%}}@media(max-width:480px){.meal-status-page{width:calc(100% + 6rem);max-width:calc(100% + 6rem);margin-left:-3rem;margin-right:-3rem;padding-left:14px;padding-right:14px;gap:1.25rem}.meal-status-header{gap:1rem}.meal-status-grid{gap:14px}.meal-status-card{width:100%;max-width:none}.meal-status-select,.meal-status-date{width:100%;max-width:100%}}@media(max-width:900px){.admin-main{padding:16px}.admin-main-inner{padding:18px;border-radius:16px}.meal-program-grid{display:flex;flex-direction:column;align-items:stretch;gap:16px;margin-top:1rem;width:100%}.programs-upload-card{width:100%;max-width:100%;flex:none;margin:0;padding:18px;border-radius:20px;box-sizing:border-box}.meal-history-card{width:100%;max-width:100%;margin:0;padding:18px;border-radius:20px;box-sizing:border-box}.programs-dropzone{width:100%;box-sizing:border-box;padding:1.4rem 1rem}.program-preview-wrapper{width:100%;max-width:none;align-items:stretch}.programs-preview{display:block;width:100%;max-width:100%;max-height:420px;object-fit:contain}.programs-submit-row{width:100%;justify-content:stretch}.programs-submit-row .sa-add-btn{width:100%;min-width:0}}@media(max-width:900px){.meal-status-page{width:100%;max-width:100%;margin:0;padding:0;gap:16px;box-sizing:border-box;overflow:visible;overflow-x:visible}.meal-status-header{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:12px;width:100%;max-width:100%;overflow:visible}.meal-status-title{display:flex;flex-direction:column;align-items:stretch;gap:12px;width:100%;min-width:0;overflow:visible}.meal-status-title h1{margin:0 0 12px;font-size:clamp(34px,8.5vw,38px);line-height:1.1;overflow:visible}.meal-status-select{width:100%;min-width:0;max-width:100%}.meal-status-date-field{display:flex;justify-content:stretch;width:100%;min-width:0}.meal-status-date{width:100%;min-width:0;max-width:100%}.meal-status-grid{grid-template-columns:1fr;gap:16px;width:100%}.meal-status-card{width:100%;max-width:100%;box-sizing:border-box}.meal-status-savebar{flex-direction:column;align-items:stretch;gap:10px;width:100%;max-width:100%;box-sizing:border-box}.meal-status-save-button{width:100%;min-width:0}}
