:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh;--sb-track-color: #fff8e1;--sb-thumb-color: #f2c94c;--sb-thumb-hover-color: #ecb11d;--sb-thumb-active-color: #d89c12;--sb-size: 10px}*::-webkit-scrollbar{width:var(--sb-size);height:var(--sb-size)}*::-webkit-scrollbar-track{background:var(--sb-track-color);border-radius:999px}*::-webkit-scrollbar-thumb{background:var(--sb-thumb-color);border-radius:999px;border:2px solid transparent;background-clip:content-box}*::-webkit-scrollbar-thumb:hover{background:var(--sb-thumb-hover-color);border-radius:999px;border:2px solid transparent;background-clip:content-box}*::-webkit-scrollbar-thumb:active{background:var(--sb-thumb-active-color);border-radius:999px;border:2px solid transparent;background-clip:content-box}input[type=date]::-webkit-calendar-picker-indicator,input[type=time]::-webkit-calendar-picker-indicator{cursor:pointer;border-radius:10px;padding:2px;transition:background-color .2s ease,transform .2s ease}input[type=date]::-webkit-calendar-picker-indicator:hover,input[type=time]::-webkit-calendar-picker-indicator:hover,input[type=date]:focus-visible::-webkit-calendar-picker-indicator,input[type=time]:focus-visible::-webkit-calendar-picker-indicator{background-color:#e8f1ff;transform:scale(1.06)}input[type=date]:focus-visible,input[type=time]:focus-visible{outline:2px solid #2196f3;outline-offset:2px}@supports not selector(::-webkit-scrollbar){*{scrollbar-width:thin;scrollbar-color:var(--sb-thumb-color) var(--sb-track-color)}}h1{font-size:3.2em;line-height:1.1}.page-title{color:#000;font-size:24px;font-weight:700;margin-bottom:20px;margin-left:0;padding-left:15px;border-left:5px solid #f2c94c;display:flex;align-items:center;gap:15px;background-color:#fff3;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);flex-shrink:0}.page-title svg{color:#f2c94c;font-size:28px}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:none!important;box-shadow:none!important}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.login-container{width:100vw;height:100vh;display:flex;justify-content:center;align-items:center;background-size:cover;background-position:center;background-repeat:no-repeat;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.login-card{background-color:#fff;padding:60px 50px;border-radius:25px;box-shadow:0 20px 60px #00000040;width:100%;max-width:500px;text-align:center;position:relative;box-sizing:border-box}.logo-section{display:flex;align-items:center;justify-content:center;gap:15px;margin-bottom:40px}.bee-logo{width:120px;height:90px;background-image:url(/assets/bee-animation-D7Wjy_8X.png);background-size:480px 270px;animation:animateSprite 9s steps(1) infinite,hoverEffect 9s ease-in-out infinite}.school-name{text-align:left;color:#4a4a4a;line-height:1.1}.school-name-prefix{display:block;font-size:13px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:#555;margin-bottom:2px}.school-name-main{display:block;font-size:24px;font-weight:800;color:#5d4037;white-space:nowrap}.input-group{position:relative;margin-bottom:25px}.input-group input{width:100%;padding:18px 45px 18px 20px;background-color:#fff;border:1px solid #c4c4c4;border-radius:10px;font-size:15px;color:#000;font-weight:500;outline:none;box-sizing:border-box;transition:all .3s}.input-group input::placeholder{color:#888;text-transform:uppercase;font-size:13px;letter-spacing:.5px}.input-group input:focus{border-color:#f2c94c;box-shadow:0 0 0 3px #f2c94c33}.input-icon{position:absolute;right:15px;top:50%;transform:translateY(-50%);color:#999;font-size:20px}.options-row{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:#555;margin-bottom:35px;padding:0 5px}.remember-me{display:flex;align-items:center;gap:8px;cursor:pointer}.forgot-link{color:#666;text-decoration:underline;cursor:pointer}.login-btn{width:100%;padding:18px;background:linear-gradient(to right,#f5d365,#fda085);background-color:#f2c94c;border:none;border-radius:10px;color:#fff;font-size:18px;font-weight:800;letter-spacing:.5px;cursor:pointer;transition:transform .2s,box-shadow .2s;text-transform:uppercase;box-shadow:0 5px 15px #f2a64c4d}.login-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px #f2a64c66}.footer-links{margin-top:40px;font-size:12px;color:#888;display:flex;justify-content:center;gap:30px}.error-msg{background-color:#ffebee;color:#c62828;border:1px solid #ef9a9a;padding:12px;border-radius:8px;font-size:13px;font-weight:600;margin-bottom:20px;text-align:center;animation:shake .5s}.child-login-selector{display:flex;flex-direction:column;gap:12px;text-align:left}.child-login-selector h2{margin:0;color:#5d4037;font-size:28px}.child-login-selector p{margin:0 0 8px;color:#6b6b6b;font-size:14px;line-height:1.5}.child-login-list{display:grid;gap:10px}.child-login-btn{border:1px solid #e7d18a;background:#fff9e7;color:#4b352a;border-radius:12px;padding:14px 16px;text-align:left;font-weight:700;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.child-login-btn:hover{transform:translateY(-1px);box-shadow:0 6px 14px #8b602224}.child-login-back{margin-top:8px;border:none;background:transparent;color:#7a7a7a;text-decoration:underline;cursor:pointer;font-size:13px}@keyframes shake{0%{transform:translate(0)}25%{transform:translate(-5px)}50%{transform:translate(5px)}75%{transform:translate(-5px)}to{transform:translate(0)}}@keyframes animateSprite{0%{background-position:0px 0px}8.33%{background-position:-120px 0px}16.66%{background-position:-240px 0px}25%{background-position:-360px 0px}33.33%{background-position:0px -91px}41.66%{background-position:-120px -91px}50%{background-position:-240px -91px}58.33%{background-position:-360px -91px}66.66%{background-position:0px -180px}75%{background-position:-120px -180px}83.33%{background-position:-240px -180px}91.66%{background-position:-360px -180px}to{background-position:-360px -180px}}@keyframes hoverEffect{0%{transform:translateY(0)}50%{transform:translateY(-20px)}to{transform:translateY(0)}}.loading-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:9999;background-size:cover;background-position:center;display:flex;justify-content:center;align-items:center;font-family:Segoe UI,sans-serif}.loading-backdrop{position:absolute;top:0;left:0;width:100%;height:100%;background:#ffffff4d;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.loading-content{position:relative;z-index:10;text-align:center;display:flex;flex-direction:column;align-items:center}.bee-loader-wrapper{position:relative;width:150px;height:150px;display:flex;justify-content:center;align-items:center;margin-bottom:20px}.floating-bee{width:100px;height:auto;animation:float 2s ease-in-out infinite;filter:drop-shadow(0 10px 10px rgba(0,0,0,.2))}@keyframes float{0%{transform:translateY(0) rotate(0)}50%{transform:translateY(-10px) rotate(2deg)}to{transform:translateY(0) rotate(0)}}.magic-ring{position:absolute;width:140px;height:140px;border:2px dashed rgba(255,255,255,.8);border-radius:50%;animation:spin 10s linear infinite;box-shadow:0 0 20px #f2c94c66}.magic-ring-inner{position:absolute;width:120px;height:120px;border:4px dotted #f2c94c;border-radius:50%;animation:spin-reverse 8s linear infinite;opacity:.7}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes spin-reverse{0%{transform:rotate(360deg)}to{transform:rotate(0)}}.loading-text{color:#333;font-size:24px;font-weight:700;margin-bottom:20px;text-shadow:0 2px 4px rgba(255,255,255,.8)}.bee-emoji{display:inline-block;animation:wiggle 1s infinite}@keyframes wiggle{0%,to{transform:rotate(-10deg)}50%{transform:rotate(10deg)}}.loading-bar-container{width:200px;height:8px;background-color:#ffffff80;border-radius:10px;overflow:hidden;box-shadow:inset 0 1px 3px #0000001a}.loading-bar-fill{height:100%;width:30%;background:linear-gradient(90deg,#f2c94c,#f2994a);border-radius:10px;animation:loading-progress 1.5s infinite ease-in-out}@keyframes loading-progress{0%{width:10%;transform:translate(-100%)}50%{width:50%}to{width:100%;transform:translate(200%)}}.app-container{display:flex;flex-direction:column;height:100vh;width:100vw;background-image:url(/assets/bg-main-CVzJR6P_.png);background-size:cover;background-position:center;background-attachment:fixed;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;overflow:hidden}.top-header{height:80px;display:flex;align-items:center;justify-content:space-between;padding:0 40px;background-color:#fff;box-shadow:0 2px 10px #0000000d;z-index:100;flex-shrink:0}.header-logo-section{display:flex;align-items:center;gap:15px}.header-logo{height:70px;width:auto;transition:transform .3s;transform-origin:center;animation:headerLogoFloat 3.4s cubic-bezier(.42,0,.3,1) infinite,headerLogoGlow 3.4s ease-in-out infinite;will-change:transform,filter}.header-logo:hover{transform:translateY(-2px) scale(1.1) rotate(-5deg)}@keyframes headerLogoFloat{0%,12%,to{transform:translateY(0) rotate(0) scale(1)}24%{transform:translateY(-4px) rotate(-1.6deg) scale(1.02)}38%{transform:translateY(-1px) rotate(1deg) scale(1.005)}52%{transform:translateY(-3px) rotate(-1.2deg) scale(1.012)}66%{transform:translateY(-1px) rotate(.5deg) scale(1.002)}80%{transform:translateY(0) rotate(-.4deg) scale(1)}}@keyframes headerLogoGlow{0%,to{filter:drop-shadow(0 2px 4px rgba(0,0,0,.08))}30%{filter:drop-shadow(0 5px 9px rgba(242,201,76,.26))}55%{filter:drop-shadow(0 3px 6px rgba(242,201,76,.18))}}@media(prefers-reduced-motion:reduce){.header-logo{animation:none}.header-logo:hover{transform:none}}.header-title{display:flex;flex-direction:column}.header-title span:first-child{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:#666;font-weight:700}.header-title span:last-child{font-size:22px;font-weight:800;color:#5d4037}.header-user-section{display:flex;align-items:center;gap:25px}.info-section{color:#555;font-size:14px;font-weight:600;background:#f4f4f4;padding:10px 25px;border-radius:30px;cursor:pointer;transition:all .2s;border:1px solid transparent;display:flex;align-items:center}.info-section:hover{background-color:#fff8e1;border-color:#f2c94c;color:#5d4037;transform:translateY(-2px);box-shadow:0 4px 10px #0000000d}.user-profile-static{display:flex;align-items:center;gap:12px}.user-avatar{width:45px;height:45px;background-color:#f2c94c;border-radius:50%;display:flex;justify-content:center;align-items:center;color:#fff;font-weight:700;font-size:20px;box-shadow:0 4px 10px #f2c94c66}.user-name-box{display:flex;flex-direction:column}.user-name{font-weight:700;color:#333;font-size:15px}.user-role{font-size:11px;color:#888;text-transform:uppercase}.logout-icon-btn{font-size:28px;color:#d32f2f;cursor:pointer;transition:all .2s;display:flex;align-items:center;padding:5px;border-radius:50%}.logout-icon-btn:hover{background-color:#ffebee;transform:scale(1.1)}.content-wrapper{display:flex;flex:1;height:calc(100vh - 80px);padding:30px 40px;gap:30px;overflow:hidden;box-sizing:border-box}.sidebar-card{width:260px;background-color:#fff;border-radius:20px;box-shadow:0 10px 30px #00000014;display:flex;flex-direction:column;height:100%;overflow:hidden}.sidebar-menu{list-style:none;padding:10px 0;margin:0;flex-grow:1;overflow-y:auto}.sidebar-menu::-webkit-scrollbar{width:4px}.sidebar-menu::-webkit-scrollbar-thumb{background-color:#ddd;border-radius:4px}.menu-link{display:flex;align-items:center;padding:14px 25px;text-decoration:none;color:#555;font-weight:600;font-size:14px;transition:all .2s;border-left:5px solid transparent;margin-bottom:2px}.menu-link:hover{background-color:#fcfcfc;color:#f2c94c}.menu-link.active{background-color:#fff8e1;color:#5d4037;font-weight:700;border-left:5px solid #f2c94c}.menu-icon{margin-right:15px;font-size:20px;width:24px;text-align:center}.main-content-area{flex:1;overflow-y:auto;padding-right:5px;display:flex;flex-direction:column;min-height:0}.main-content-area::-webkit-scrollbar{width:8px}.main-content-area::-webkit-scrollbar-track{background:transparent}.main-content-area::-webkit-scrollbar-thumb{background:#ddd;border-radius:4px}.menu-badge{background-color:#e0245e;color:#fff;font-size:11px;font-weight:700;padding:2px 6px;border-radius:10px;margin-left:auto;min-width:18px;text-align:center;box-shadow:0 2px 5px #e0245e4d}@media(max-width:768px){.user-name-box,.header-title span:first-child{display:none}.content-wrapper{flex-direction:column}.sidebar-card{width:100%;height:60px;position:fixed;bottom:0;left:0;border-right:none;border-top:1px solid #ddd;padding:0;z-index:1000;box-shadow:0 -2px 10px #0000000d;background:#fff}.sidebar-menu{display:flex;flex-direction:row;align-items:center;width:100%;height:100%;overflow-x:auto;overflow-y:hidden;white-space:nowrap;-webkit-overflow-scrolling:touch;padding:0 10px;gap:5px}.sidebar-menu::-webkit-scrollbar{display:none}.sidebar-menu{-ms-overflow-style:none;scrollbar-width:none}.menu-link{flex-direction:column;justify-content:center;padding:0 10px;height:100%;min-width:70px;border-left:none;border-top:3px solid transparent;color:#888;font-size:10px;gap:4px;text-align:center}.menu-icon{margin-right:0;font-size:20px;margin-bottom:2px}.menu-link.active{border-top-color:#f2c94c;background-color:#fffbef;color:#d89e00;border-left:none}.main-content-area{padding:15px 15px 80px}.menu-badge{position:absolute;top:5px;right:15px;margin-left:0;font-size:9px;padding:1px 4px}.menu-link{position:relative}}.dashboard-grid{display:grid;grid-template-columns:2fr 1fr;gap:30px;align-items:start}.feed-column{display:flex;flex-direction:column;gap:25px}.section-header{display:flex;align-items:center;gap:15px;font-size:24px;font-weight:700;margin-bottom:20px;color:#333;text-shadow:none;padding-left:15px;border-left:5px solid #f2c94c;margin-left:0}.section-header svg{color:#f2c94c;font-size:28px}.post-card{background-color:#fff;border-radius:20px;padding:25px;box-shadow:0 5px 20px #0000000d;transition:transform .2s;color:#333}.post-header{display:flex;align-items:center;margin-bottom:15px}.post-avatar{width:45px;height:45px;background-color:#f2c94c;border-radius:50%;display:flex;justify-content:center;align-items:center;color:#fff;font-weight:700;font-size:20px;margin-right:15px}.post-author-info h4{margin:0;font-size:15px;color:#333}.post-date{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#999}.post-content{color:#444;font-size:15px;line-height:1.6;margin-bottom:15px}.post-image{width:100%;height:auto;border-radius:12px;margin-top:10px;object-fit:cover}.post-actions-bar{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #eee;padding-top:15px;margin-top:15px}.action-btn{background:none;border:none;outline:none;cursor:pointer;display:flex;align-items:center;gap:8px;font-size:14px;padding:8px 12px;border-radius:20px;transition:background .2s;color:#666;font-weight:600;-webkit-tap-highlight-color:transparent}.action-btn:focus,.action-btn:active,.action-btn:focus-visible{outline:none;border:none;box-shadow:none}.action-btn:hover{background-color:#f5f5f5}.like-btn.liked{color:#2196f3}.like-btn.liked svg{fill:#2196f3}.comments-section-wrapper{margin-top:15px;padding-top:10px;border-top:1px solid #f9f9f9;animation:fadeIn .3s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.no-comments-text{font-size:13px;color:#888;text-align:center;margin:10px 0}.comments-list{display:flex;flex-direction:column;gap:12px;margin-bottom:15px}.comment-row{display:flex;align-items:flex-start;gap:10px}.comment-item{background-color:#f0f2f5;padding:10px 15px;border-radius:15px;font-size:13px;color:#1c1e21}.comment-bubble{background-color:#f0f2f5;padding:8px 12px;border-radius:18px;max-width:calc(100% - 50px);display:flex;flex-direction:column}.comment-author{font-weight:700;font-size:12px;color:#000;margin-bottom:2px}.comment-text{color:#333;font-size:13px;line-height:1.4;word-wrap:break-word}.comment-input-area{display:flex;align-items:center;gap:10px;background-color:#fff;border:1px solid #ccc;border-radius:25px;padding:5px 15px}.styled-comment-input{flex:1;border:none;outline:none;padding:8px 0;font-size:14px;color:#333;background:transparent}.send-comment-btn{background:none;border:none;color:#f2c94c;cursor:pointer;font-size:18px;display:flex;align-items:center;padding:5px;transition:transform .2s;outline:none}.send-comment-btn:hover{transform:scale(1.1)}.widgets-column{display:flex;flex-direction:column;gap:25px;position:sticky;top:0;align-self:start}.widget-card{background-color:#fff;border-radius:20px;padding:25px;box-shadow:0 5px 20px #0000000d;color:#333}.widget-title{font-size:16px;font-weight:700;color:#444;margin-bottom:20px;border-bottom:2px solid #f0f0f0;padding-bottom:10px;text-transform:uppercase;letter-spacing:.5px}.quick-action-item{display:flex;align-items:center;gap:15px;padding:12px;background-color:#fcfcfc;border-radius:12px;margin-bottom:10px;cursor:pointer;transition:all .2s;border:1px solid transparent}.quick-action-item:hover{border-color:#f2c94c;background-color:#fffdf5}.qa-icon{width:40px;height:40px;background-color:#fde8e4;color:#e57373;border-radius:10px;display:flex;justify-content:center;align-items:center;font-size:18px}.qa-text{display:flex;flex-direction:column}.qa-text span:first-child{font-weight:600;font-size:14px;color:#444}.qa-text span:last-child{font-size:11px;color:#999}.event-item{padding:12px;border-radius:10px;margin-bottom:10px;display:flex;align-items:center;gap:12px;background-color:#fff;border-left:5px solid #ccc;box-shadow:0 2px 5px #0000000d;transition:transform .2s}.event-item:hover{transform:translate(3px)}.event-item.event-type{border-left-color:#2196f3;background-color:#f0f9ff}.event-item.event-type .event-icon-box{color:#2196f3}.event-item.payment-type{border-left-color:#4caf50;background-color:#f1f8e9}.event-item.payment-type .event-icon-box{color:#4caf50}.event-item.payment-type.overdue{border-left-color:#e0245e;background-color:#ffebee;animation:pulse 2s infinite}.event-item.payment-type.overdue .event-icon-box{color:#e0245e}.event-item.payment-type.overdue h5{color:#c62828}@keyframes pulse{0%{box-shadow:0 0 #e0245e66}70%{box-shadow:0 0 0 6px #e0245e00}to{box-shadow:0 0 #e0245e00}}.event-icon-box{font-size:20px;min-width:30px;display:flex;justify-content:center}.event-details{display:flex;flex-direction:column}.event-details h5{margin:0;font-size:14px;color:#333;font-weight:700}.event-subtitle{font-size:11px;color:#666;margin-top:2px}.event-meta{font-size:11px;color:#888;margin-top:2px;font-weight:600}.event-item.overdue .event-meta{color:#d32f2f;font-weight:700}.comment-my-avatar{width:32px;height:32px;border-radius:50%;overflow:hidden;flex-shrink:0;border:1px solid #eee}.comment-my-avatar img{width:100%;height:100%;object-fit:cover}.comment-avatar-container{width:32px;height:32px;border-radius:50%;overflow:hidden;flex-shrink:0;background-color:#eee}.comment-avatar-container img{width:100%;height:100%;object-fit:cover}.comment-avatar-placeholder{width:100%;height:100%;background-color:#f2c94c;color:#fff;display:flex;justify-content:center;align-items:center;font-weight:700;font-size:14px}.comment-input-area{display:flex;align-items:center;gap:10px;background-color:#fff;border:1px solid #ccc;border-radius:25px;padding:5px 10px 5px 5px}.comment-block{display:flex;flex-direction:column;margin-bottom:8px}.comment-actions{display:flex;align-items:center;gap:10px;margin-left:50px;margin-top:2px}.comment-like-link{font-size:11px;font-weight:700;color:#65676b;cursor:pointer}.comment-likes-count{font-size:11px;color:#65676b;display:flex;align-items:center;gap:3px;background:#fff;padding:1px 4px;border-radius:10px;box-shadow:0 1px 2px #0000001a}.comment-actions{display:flex;align-items:center;gap:10px;margin-left:50px;margin-top:2px;font-size:11px;color:#65676b}.comment-like-link{font-weight:700;cursor:pointer;transition:color .2s}.comment-like-link:hover{text-decoration:underline}.comment-like-link.liked{color:#2196f3}.comment-likes-count{display:flex;align-items:center;gap:4px;background-color:#fff;padding:2px 4px;border-radius:10px;box-shadow:0 1px 3px #0003;cursor:default;font-weight:600;color:#555}.tiny-like-icon{width:14px;height:14px;background-color:#2196f3;border-radius:50%;display:flex;justify-content:center;align-items:center}.comment-date{color:#888;font-weight:400}@media(max-width:900px){.dashboard-grid{grid-template-columns:1fr}}@media(max-width:768px){.dashboard-grid{grid-template-columns:1fr;gap:20px}.widgets-column{order:-1}.post-card{padding:15px}.post-actions-bar{flex-wrap:wrap;gap:10px}.action-btn span{font-size:12px}}.info-page-container{padding:20px;display:flex;justify-content:center}.info-card-main{background:#fff;width:100%;max-width:900px;border-radius:15px;padding:40px;box-shadow:0 4px 20px #0000000d;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.info-header{display:flex;align-items:center;gap:15px;margin-bottom:20px;border-bottom:2px solid #f2c94c;padding-bottom:15px}.info-header-icon{font-size:30px;color:#0277bd}.info-header h2{margin:0;color:#333;font-size:24px}.info-intro{color:#666;margin-bottom:30px;line-height:1.6}.info-highlight-box{background-color:#fff9c4;border-left:5px solid #fbc02d;border-radius:8px;padding:25px;display:flex;flex-direction:column;gap:15px;margin-bottom:40px}.info-row{display:flex;align-items:center;gap:15px;color:#333;font-size:16px}.icon-wrapper{background:#fff;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fbc02d;font-size:18px;box-shadow:0 2px 5px #0000001a}.info-row strong{margin-right:8px;font-weight:700}.info-columns{display:flex;gap:40px;flex-wrap:wrap}.info-column{flex:1;min-width:300px}.info-column h3{display:flex;align-items:center;gap:10px;color:#444;border-bottom:1px solid #eee;padding-bottom:10px;margin-bottom:20px}.staff-list{list-style:none;padding:0;margin:0}.staff-list li{padding:10px 0;border-bottom:1px dashed #eee;color:#555}.staff-list li:last-child{border-bottom:none}.groups-grid{display:flex;flex-wrap:wrap;gap:10px}.group-badge{padding:7px 14px;border-radius:20px;font-weight:600;font-size:13px;display:flex;align-items:center;gap:4px;box-shadow:0 2px 6px #00000012;border:none;min-width:36px;min-height:24px;cursor:default;-webkit-user-select:none;user-select:none;background:#f7f7f7;color:#333}.group-color-red{background:#ffebee;color:#b71c1c;border:1px solid #ffcdd2}.group-color-yellow{background:#fffde7;color:#fbc02d;border:1px solid #fff9c4}.group-color-blue{background:#e3f2fd;color:#1565c0;border:1px solid #bbdefb}.group-color-green{background:#e8f5e9;color:#2e7d32;border:1px solid #c8e6c9}.group-color-orange{background:#fff3e0;color:#e65100;border:1px solid #ffe0b2}.group-color-purple{background:#f3e5f5;color:#6a1b9a;border:1px solid #ce93d8}.group-color-default{background:#ececec;color:#333;border:1px solid #e0e0e0}.group-badge-active-child{box-shadow:0 0 0 2px #f2c94c,0 4px 14px #0000001f;transform:translateY(-1px)}.info-groups-section{margin-top:32px}.info-groups-section h3{display:flex;align-items:center;gap:10px;color:#444;border-bottom:1px solid #eee;padding-bottom:10px;margin:0 0 20px}@media(max-width:768px){.info-columns{flex-direction:column;gap:30px}.info-card-main{padding:20px}}.inputs-grid-2col{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-bottom:20px}.spacer-20{height:20px}.email-notification-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 24px;margin-bottom:20px}.email-notification-item{display:flex;align-items:center;gap:10px;font-size:14px;color:#333;cursor:pointer;padding:10px 12px;border:1px solid #eee;border-radius:12px;background:#fffdf6}.email-notification-item input{width:16px;height:16px;accent-color:#f2c94c}.email-notification-status{font-size:13px;color:#8a6d1d;margin-bottom:12px;font-weight:600}@media(max-width:768px){.medical-footer{flex-direction:column;gap:15px;align-items:flex-start}.medical-footer button{width:100%}.email-notification-grid{grid-template-columns:1fr}}.payments-container *{box-sizing:border-box}.payments-container{width:100%;margin:0;padding:0;font-family:Segoe UI,sans-serif}.combined-info-card{background:#fff;border-radius:20px;padding:0;box-shadow:0 5px 20px #0000000d;width:66.666%;margin:0 auto 40px;max-width:none;display:flex;overflow:hidden;min-height:180px}.combined-info-card.has-debt{border-left:8px solid #e0245e}.combined-info-card.all-clear{border-left:8px solid #4caf50}.info-section-left{flex:1;padding:40px;display:flex;flex-direction:column;justify-content:center;border-right:1px solid #f0f0f0}.info-label{font-size:14px;color:#666;text-transform:uppercase;font-weight:700;margin-bottom:10px}.total-amount-large{font-size:48px;font-weight:800;color:#333;line-height:1}.success-badge{margin-top:15px;color:#4caf50;font-weight:700;display:flex;align-items:center;gap:8px}.info-section-right{flex:1;padding:40px;background-color:#fafafa;display:flex;flex-direction:column;justify-content:center}.bank-title{margin:0 0 10px;font-size:14px;color:#444;text-transform:uppercase;font-weight:700}.bank-name{margin:0 0 15px;font-weight:600;color:#333}.iban-box{font-family:Courier New,monospace;font-size:20px;font-weight:700;color:#333;background:#fff;padding:15px 20px;border:1px dashed #ccc;border-radius:12px;margin-bottom:10px;text-align:center;display:flex;align-items:center;justify-content:center;gap:12px}.iban-box.copyable{cursor:pointer;transition:all .2s}.iban-box.copyable:hover{background-color:#fffbf0;border-color:#f2c94c;box-shadow:0 2px 8px #f2c94c33}.iban-box code{font-family:Courier New,monospace}.iban-box .copy-icon{font-size:16px;color:#999;transition:color .2s;flex-shrink:0}.iban-box:hover .copy-icon{color:#f2c94c}.bank-warning{font-size:12px;color:#e0245e;font-weight:600;margin:0}.payments-list{display:flex;flex-direction:column;gap:20px;width:66.666%;margin:0 auto;max-width:none}.payment-card{background:#fff;border-radius:20px;padding:25px 30px;box-shadow:0 5px 20px #0000000d;display:grid;grid-template-columns:1.5fr 2fr 1fr;align-items:center;gap:20px;border:1px solid transparent;transition:transform .2s}.payment-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #00000014}.payment-card.unpaid{border-left:5px solid #ff9800}.payment-card.paid{border-left:5px solid #e0e0e0;background-color:#fff;opacity:.8}.payment-description{font-weight:700;font-size:16px;color:#333;margin-bottom:5px}.payment-date{font-size:13px;color:#777;display:flex;align-items:center;gap:6px}.payment-date.done{color:#2e7d32;font-weight:600}.transfer-data{display:flex;flex-direction:column}.data-label{font-size:10px;color:#999;margin-bottom:5px;font-weight:700;text-transform:uppercase}.copy-box{background-color:#fcfcfc;border:1px solid #e0e0e0;padding:12px 15px;border-radius:12px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:all .2s}.copy-box:hover{border-color:#f2c94c;background-color:#fff;box-shadow:0 0 0 3px #f2c94c1a}.copy-box code{font-weight:700;font-size:15px;color:#333;font-family:Segoe UI,sans-serif}.copy-icon{color:#ccc}.copy-box:hover .copy-icon{color:#f2c94c}.payment-status-box{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:5px}.payment-amount{font-size:20px;font-weight:800;color:#333}.status-badge{padding:6px 15px;border-radius:20px;font-size:12px;font-weight:700;display:inline-flex;align-items:center;gap:6px;text-transform:uppercase}.status-unpaid{background-color:#fff3e0;color:#ef6c00}.status-paid{background-color:#e8f5e9;color:#2e7d32}.history-section{padding-top:20px;border-top:2px dashed #eee;width:66.666%;margin:40px auto 0;max-width:none}.toggle-history-btn{display:flex;align-items:center;justify-content:center;gap:10px;margin:0 auto 30px;padding:12px 30px;background-color:#fff;border:none;border-radius:30px;box-shadow:0 5px 20px #0000000d;color:#555;font-weight:600;font-size:14px;cursor:pointer;transition:all .2s;outline:none}.toggle-history-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #00000014;color:#333}@media(max-width:900px){.combined-info-card,.payments-list,.history-section{width:100%;padding:0 15px}.combined-info-card{flex-direction:column;padding:0}.info-section-left,.info-section-right{border-right:none;border-bottom:1px solid #f0f0f0;text-align:center;padding:30px}.info-section-right{border-bottom:none}.payment-card{grid-template-columns:1fr;padding:20px;gap:15px}.payment-status-box{flex-direction:row;justify-content:space-between;width:100%;align-items:center;border-top:1px solid #f0f0f0;padding-top:15px}}.react-calendar{width:350px;max-width:100%;background:#fff;border:1px solid #a0a096;font-family:Arial,Helvetica,sans-serif;line-height:1.125em}.react-calendar--doubleView{width:700px}.react-calendar--doubleView .react-calendar__viewContainer{display:flex;margin:-.5em}.react-calendar--doubleView .react-calendar__viewContainer>*{width:50%;margin:.5em}.react-calendar,.react-calendar *,.react-calendar *:before,.react-calendar *:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.react-calendar button{margin:0;border:0;outline:none}.react-calendar button:enabled:hover{cursor:pointer}.react-calendar__navigation{display:flex;height:44px;margin-bottom:1em}.react-calendar__navigation button{min-width:44px;background:none}.react-calendar__navigation button:disabled{background-color:#f0f0f0}.react-calendar__navigation button:enabled:hover,.react-calendar__navigation button:enabled:focus{background-color:#e6e6e6}.react-calendar__month-view__weekdays{text-align:center;text-transform:uppercase;font:inherit;font-size:.75em;font-weight:700}.react-calendar__month-view__weekdays__weekday{padding:.5em}.react-calendar__month-view__weekNumbers .react-calendar__tile{display:flex;align-items:center;justify-content:center;font:inherit;font-size:.75em;font-weight:700}.react-calendar__month-view__days__day--weekend{color:#d10000}.react-calendar__month-view__days__day--neighboringMonth,.react-calendar__decade-view__years__year--neighboringDecade,.react-calendar__century-view__decades__decade--neighboringCentury{color:#757575}.react-calendar__year-view .react-calendar__tile,.react-calendar__decade-view .react-calendar__tile,.react-calendar__century-view .react-calendar__tile{padding:2em .5em}.react-calendar__tile{max-width:100%;padding:10px 6.6667px;background:none;text-align:center;font:inherit;font-size:.833em}.react-calendar__tile:disabled{background-color:#f0f0f0;color:#ababab}.react-calendar__month-view__days__day--neighboringMonth:disabled,.react-calendar__decade-view__years__year--neighboringDecade:disabled,.react-calendar__century-view__decades__decade--neighboringCentury:disabled{color:#cdcdcd}.react-calendar__tile:enabled:hover,.react-calendar__tile:enabled:focus{background-color:#e6e6e6}.react-calendar__tile--now{background:#ffff76}.react-calendar__tile--now:enabled:hover,.react-calendar__tile--now:enabled:focus{background:#ffffa9}.react-calendar__tile--hasActive{background:#76baff}.react-calendar__tile--hasActive:enabled:hover,.react-calendar__tile--hasActive:enabled:focus{background:#a9d4ff}.react-calendar__tile--active{background:#006edc;color:#fff}.react-calendar__tile--active:enabled:hover,.react-calendar__tile--active:enabled:focus{background:#1087ff}.react-calendar--selectRange .react-calendar__tile--hover{background-color:#e6e6e6}.attendance-container{width:100%;margin:0;padding:0;font-family:Segoe UI,sans-serif;display:flex;flex-direction:column;gap:25px}.child-selector{background:#fff;padding:20px 30px;border-radius:20px;box-shadow:0 5px 20px #0000000d;margin-bottom:25px;width:100%;box-sizing:border-box;display:flex;align-items:center;gap:20px}.child-selector label{font-weight:700;color:#444;font-size:14px;text-transform:uppercase}.child-buttons{display:flex;gap:10px}.child-btn{background:#fcfcfc;border:1px solid #e0e0e0;padding:10px 20px;border-radius:12px;cursor:pointer;font-weight:600;color:#555;display:flex;align-items:center;gap:8px;transition:all .2s}.child-btn.active{background:#f2c94c;color:#fff;border-color:#f2c94c;box-shadow:0 4px 10px #f2c94c4d}.child-btn:focus,.child-btn:active{outline:none;box-shadow:none}.attendance-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(320px,1fr);gap:30px;align-items:start;width:100%}.calendar-card{background:#fff;padding:30px;border-radius:20px;box-shadow:0 5px 20px #0000000d;display:flex;flex-direction:column;align-items:center}.react-calendar{width:100%;max-width:100%;border:none;font-family:Segoe UI,sans-serif}.react-calendar__navigation button{font-size:18px;font-weight:700;color:#333;margin-bottom:10px}.react-calendar__navigation button:enabled:hover,.react-calendar__navigation button:enabled:focus{background-color:#fcfcfc;border-radius:12px}.react-calendar__tile{padding:20px 0;border-radius:12px;font-weight:700;font-size:14px;margin-bottom:5px;border:1px solid transparent;color:#000!important}.react-calendar__tile:enabled{background-color:#e8f5e9;border:1px solid #c8e6c9}.react-calendar__tile:enabled:hover{background-color:#c8e6c9;cursor:pointer}.react-calendar__tile:enabled:focus,.react-calendar__tile--active{background-color:#e8f5e9!important;color:#000!important;border:1px solid #c8e6c9!important;outline:none!important}.react-calendar__tile.absent-day{background-color:#fff3e0!important;border:1px solid #ffb74d!important}.react-calendar__tile.absent-day:after{content:none!important;display:none!important}.react-calendar__tile--active.absent-day,.react-calendar__tile.absent-day:focus{background-color:#fff3e0!important;border:1px solid #ffb74d!important;color:#000!important}.react-calendar__tile.closure-day{background-color:#ffebee!important;border:1px solid #ef9a9a!important;opacity:1!important;cursor:help!important;color:#000!important;position:relative}.closure-tooltip-layer{position:absolute;top:0;left:0;width:100%;height:100%;z-index:10}.react-calendar__tile.closure-day:hover,.react-calendar__tile.closure-day:focus,.react-calendar__tile--active.closure-day{background-color:#ffebee!important;border:1px solid #ef9a9a!important;outline:none!important}.react-calendar__tile.weekend-day:disabled{background-color:#f9f9f9!important;border:1px solid #eee;color:#aaa!important;cursor:not-allowed;background-image:repeating-linear-gradient(45deg,#f9f9f9,#f9f9f9 10px,#eee 10px 12px)}.react-calendar__tile--now{background-color:#a5d6a7!important;border:2px solid #000000!important;color:#000!important;font-weight:800!important}.calendar-legend{margin-top:25px;display:flex;gap:20px;font-size:13px;color:#666;flex-wrap:wrap;justify-content:center;padding-top:20px;border-top:1px solid #eee;width:100%}.legend-item{display:flex;align-items:center;gap:8px;font-weight:500}.dot{width:14px;height:14px;border-radius:4px;border:1px solid rgba(0,0,0,.1)}.dot.green{background-color:#e8f5e9;border-color:#c8e6c9}.dot.orange{background-color:#fff3e0;border-color:#ffb74d}.dot.red{background-color:#ffebee;border-color:#ef9a9a}.dot.crossed{background-color:#f9f9f9;background-image:repeating-linear-gradient(45deg,transparent,transparent 2px,#ccc 2px,#ccc 3px)}.status-panel{display:flex;flex-direction:column;gap:20px}.info-box{background-color:#e3f2fd;border-left:5px solid #2196f3;padding:20px;border-radius:12px;color:#0d47a1;box-shadow:0 5px 15px #0000000d}.info-box h4{margin:0 0 10px;display:flex;align-items:center;gap:10px;font-size:16px;font-weight:700;color:#0d47a1}.info-box h4 svg{color:#1565c0}.info-box ul{padding-left:20px;margin:0;font-size:14px;line-height:1.5}.status-message{padding:20px;border-radius:12px;font-size:14px;display:flex;align-items:center;gap:12px;font-weight:600;box-shadow:0 5px 15px #0000000d}.status-message.error{background-color:#ffebee;color:#c62828;border-left:5px solid #ef5350}.status-message.success{background-color:#e8f5e9;color:#2e7d32;border-left:5px solid #66bb6a}.status-message.info{background-color:#e3f2fd;color:#1565c0;border-left:5px solid #42a5f5}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:#fff;padding:40px;border-radius:20px;width:90%;max-width:450px;text-align:center;box-shadow:0 20px 50px #0003}.modal-content h3{margin-top:0;color:#333!important;font-size:22px;margin-bottom:15px}.modal-content p{color:#333!important;font-size:16px;margin-bottom:30px;font-weight:500;line-height:1.5}.modal-btn{padding:12px 25px;border:none;border-radius:30px;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:8px;transition:transform .2s}.modal-btn.confirm.success{background-color:#f2c94c;color:#333}@media(max-width:900px){.attendance-grid{grid-template-columns:1fr;gap:20px}.status-panel{order:-1}}.meals-container *{box-sizing:border-box}.meals-container{width:100%;margin:0 auto;padding:0;font-family:Segoe UI,sans-serif;max-width:none}.meals-container .week-navigation-card{background:#fff;border-radius:20px;padding:15px 30px;box-shadow:0 5px 20px #0000000d;display:flex;justify-content:space-between;align-items:center;margin:0 auto 20px;width:66.666%}.current-week-label{font-size:16px;font-weight:700;color:#333;text-transform:uppercase;letter-spacing:.5px}.nav-btn{background:#fcfcfc;border:1px solid #e0e0e0;padding:10px 20px;border-radius:30px;cursor:pointer;font-weight:600;color:#555;display:flex;align-items:center;gap:8px;transition:all .2s}.nav-btn:hover{background-color:#f2c94c;border-color:#f2c94c;color:#fff;transform:translateY(-2px);box-shadow:0 4px 10px #f2c94c4d}.meals-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;width:66.666%;margin:0 auto}.meals-grid.meals-grid-single{grid-template-columns:1fr}.allergens-toggle-tile{display:flex;align-items:flex-start;justify-content:center;min-height:220px;padding-top:6px}.allergens-toggle-btn{background:#fcfcfc;border:1px solid #e0e0e0;border-radius:30px;padding:12px 26px;font-size:15px;font-weight:700;color:#555;display:flex;align-items:center;gap:10px;cursor:pointer;transition:all .2s}.allergens-toggle-btn:hover{background-color:#f2c94c;border-color:#f2c94c;color:#fff;transform:translateY(-2px);box-shadow:0 4px 10px #f2c94c4d}.meal-card{background:#fff;border-radius:20px;box-shadow:0 5px 20px #0000000d;overflow:hidden;display:flex;flex-direction:column;transition:transform .2s;border:1px solid transparent}.meal-card:hover{transform:none;box-shadow:0 5px 20px #0000000d}.meal-card.today-card{border:2px solid #f2c94c}.meal-card-header{background-color:#fcfcfc;border-bottom:1px solid #f0f0f0;padding:20px 25px;display:flex;justify-content:space-between;align-items:center}.day-name{font-size:16px;font-weight:700;color:#333;text-transform:capitalize}.today-badge{background-color:#f2c94c;color:#fff;font-size:10px;padding:5px 10px;border-radius:15px;font-weight:800;text-transform:uppercase}.meal-sections{padding:25px;display:flex;flex-direction:column;gap:25px}.meal-image-wrapper{padding:20px}.meal-photo{width:100%;border-radius:14px;border:1px solid #ececec;box-shadow:0 6px 16px #00000014;object-fit:cover}.meal-row{display:flex;gap:15px}.meal-icon{width:40px;height:40px;border-radius:50%;display:flex;justify-content:center;align-items:center;font-size:18px;flex-shrink:0}.breakfast .meal-icon{background-color:#e3f2fd;color:#2196f3}.lunch .meal-icon{background-color:#fff3e0;color:#ff9800}.snack .meal-icon{background-color:#e8f5e9;color:#4caf50}.meal-details{font-size:14px;color:#444;line-height:1.6}.meal-label{font-size:11px;text-transform:uppercase;color:#999;font-weight:700;margin-bottom:5px;letter-spacing:.5px}.beverage,.fruit{font-size:13px;color:#777;font-style:italic;margin-top:3px}.no-menu-info,.loading-meals{padding:50px;text-align:center;color:#999;font-size:14px;display:flex;flex-direction:column;align-items:center;gap:10px}.no-menu-info svg{font-size:24px;color:#ccc}.allergens-box{margin-top:10px;padding-top:15px;border-top:1px dashed #eee;font-size:12px;color:#888;display:flex;align-items:center;gap:8px}.allergens-box svg{color:#8bc34a;font-size:14px}.allergen-catalog-card{background:#fff;border-radius:20px;box-shadow:0 5px 20px #0000000d;width:66.666%;margin:24px auto 0;padding:24px 28px}.allergen-catalog-title{margin:0 0 16px;font-size:18px;color:#333;display:flex;align-items:center;gap:10px}.allergen-catalog-title svg{color:#8bc34a}.allergen-catalog-list{margin:0;padding-left:22px;display:flex;flex-direction:column;gap:10px;color:#333;line-height:1.5}.allergen-name{font-weight:700;text-decoration:underline}.allergen-overlay{position:fixed;inset:0;background:#000000a6;z-index:2000;display:flex;align-items:center;justify-content:center;padding:24px}.allergen-overlay-content{width:min(920px,100%);max-height:calc(100vh - 48px);overflow-y:auto;background:#fff;border-radius:20px;box-shadow:0 12px 40px #00000040;padding:24px 28px}.allergen-overlay-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}.allergen-close-btn{background:#fcfcfc;border:1px solid #e0e0e0;border-radius:30px;padding:10px 20px;font-size:14px;font-weight:700;color:#555;cursor:pointer;transition:all .2s}.allergen-close-btn:hover{background-color:#f2c94c;border-color:#f2c94c;color:#fff}.nav-btn:disabled{background-color:#f0f0f0;color:#ccc;border-color:#eee;cursor:not-allowed;transform:none!important;box-shadow:none!important}.nav-btn:disabled:hover{background-color:#f0f0f0;color:#ccc;border-color:#eee}@media(max-width:768px){.week-navigation-card{flex-direction:column;gap:15px;text-align:center;padding:20px}.meals-grid{grid-template-columns:1fr}.allergens-toggle-tile{min-height:auto}.allergens-toggle-btn,.nav-btn{width:100%;justify-content:center}.allergen-catalog-card{width:100%;padding:20px}.allergen-overlay{padding:12px}.allergen-overlay-content{max-height:calc(100vh - 24px);padding:18px}.allergen-overlay-header{flex-direction:column;align-items:flex-start}.allergen-close-btn{width:100%}}.schedule-container *{box-sizing:border-box}.schedule-container{width:100%;margin:0 auto;padding:0;font-family:Segoe UI,sans-serif;max-width:none}.schedule-container .week-navigation-card{background:#fff;border-radius:20px;padding:15px 30px;box-shadow:0 5px 20px #0000000d;display:flex;justify-content:space-between;align-items:center;margin:0 auto 20px;width:66.666%}.current-week-label{font-size:16px;font-weight:700;color:#444;text-transform:uppercase}.nav-btn{background:#fcfcfc;border:1px solid #e0e0e0;padding:10px 20px;border-radius:30px;cursor:pointer;color:#555;font-weight:600;display:flex;align-items:center;gap:8px;transition:all .2s}.nav-btn:focus{outline:none}.timetable-wrapper{background:#fff;border-radius:20px;box-shadow:0 5px 20px #0000000d;overflow:hidden;border:1px solid #e0e0e0;position:relative;width:66.666%;margin:0 auto}.timetable-grid{display:grid;grid-template-columns:60px repeat(5,1fr);grid-template-rows:50px repeat(24,minmax(30px,auto))}.time-header-corner{background-color:#fcfcfc;border-bottom:1px solid #e0e0e0;border-right:1px solid #e0e0e0;display:flex;justify-content:center;align-items:center;color:#ccc;position:sticky;top:0;z-index:20}.day-header{background-color:#fcfcfc;border-bottom:1px solid #e0e0e0;border-right:1px solid #f0f0f0;display:flex;flex-direction:column;justify-content:center;align-items:center;position:sticky;top:0;z-index:10}.day-header:last-child{border-right:none}.day-header.today{background-color:#fff8e1;border-bottom:3px solid #f2c94c}.dh-name{font-weight:700;color:#333;font-size:13px;text-transform:capitalize}.dh-date{font-size:11px;color:#888}.time-slot-label{background-color:#fafafa;border-right:1px solid #e0e0e0;border-bottom:1px solid #f0f0f0;display:flex;justify-content:center;align-items:flex-start;padding-top:5px;font-size:11px;font-weight:700;color:#999}.grid-cell-bg{border-right:1px solid #f9f9f9;border-bottom:1px solid #f0f0f0}.event-item-grid{margin:2px;border-radius:8px;padding:4px 8px;display:flex;flex-direction:column;justify-content:center;font-size:12px;box-shadow:0 2px 4px #0000000d;overflow:hidden;z-index:1;border-left:4px solid transparent}.ev-time{font-size:10px;opacity:.8;margin-bottom:2px;font-weight:600}.ev-content{display:flex;align-items:center;gap:6px;font-weight:700}.ev-icon{font-size:12px}.event-item-grid.meal{background-color:#fff3e0;color:#e65100;border-left-color:#ff9800}.event-item-grid.activity{background-color:#e3f2fd;color:#1565c0;border-left-color:#2196f3}@media(max-width:768px){.timetable-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch}.timetable-grid{min-width:600px}.time-header-corner,.time-slot-label{position:sticky;left:0;z-index:20;background-color:#fafafa;border-right:1px solid #ddd;box-shadow:2px 0 5px #0000000d}.time-header-corner{z-index:30;background-color:#fcfcfc}.week-navigation-card{flex-direction:column;gap:15px;text-align:center}}.grid-cell-bg{border-right:1px solid #f9f9f9;border-bottom:1px solid #f0f0f0;background-color:#fff}.grid-cell-bg.half-hour{border-bottom:1px dashed #f5f5f5}.grid-cell-bg.closed-hours{background-color:#f5f5f5;background-image:repeating-linear-gradient(45deg,#f5f5f5,#f5f5f5 5px,#ebebeb 5px 10px);border-bottom:1px solid #ddd}.yearly-container *{box-sizing:border-box}.yearly-container{width:100%;margin:0;padding:0;font-family:Segoe UI,sans-serif}.calendar-content-wrapper{display:grid;grid-template-columns:2fr 1fr;gap:30px;align-items:start;width:100%;margin-left:0}.left-column-content{display:flex;flex-direction:column;gap:30px;width:100%}.year-controls{background:#fff;border-radius:20px;padding:20px 30px;width:100%;max-width:100%;margin:0;box-shadow:0 5px 20px #0000000d;display:flex;align-items:center;justify-content:space-between}.current-year-label{font-size:20px;font-weight:800;color:#333}.nav-btn{background:#fcfcfc;border:1px solid #e0e0e0;padding:10px 20px;border-radius:30px;cursor:pointer;color:#555;font-weight:600;transition:all .2s;display:flex;align-items:center;justify-content:center}.nav-btn:hover{background:#f2c94c;border-color:#f2c94c;color:#fff;transform:translateY(-2px)}.nav-btn:focus,.nav-btn:active{outline:none;box-shadow:none}.schedule-table{background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 5px 20px #0000000d;border:1px solid #e0e0e0;position:relative;display:block;width:100%}.schedule-header-row{display:flex;background-color:#fcfcfc;border-bottom:1px solid #e0e0e0}.month-col-header{width:140px;min-width:140px;max-width:140px;padding:15px;font-weight:700;color:#444;text-transform:uppercase;font-size:12px;display:flex;align-items:center;justify-content:center;border-right:1px solid #e0e0e0}.days-grid-header{flex:1;display:grid;grid-template-columns:repeat(7,1fr);gap:1px;padding:1px;text-align:center;font-weight:700;color:#666;font-size:13px;background-color:#e0e0e0}.days-grid-header span{background-color:#fcfcfc;display:flex;align-items:center;justify-content:center;height:40px}.weekend-header{color:#e57373}.schedule-row{display:flex;border-bottom:1px solid #e0e0e0}.schedule-row:last-child{border-bottom:none}.month-name-col{width:140px;min-width:140px;max-width:140px;background-color:#fffbf0;border-right:1px solid #e0e0e0;display:flex;align-items:center;justify-content:center;font-weight:700;color:#333;font-size:14px;text-transform:capitalize}.days-grid-col{flex:1;display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background-color:#e0e0e0;padding:1px}.day-cell{background-color:#fff;height:40px;display:flex;align-items:center;justify-content:center;font-size:13px;color:#333;position:relative}.day-cell.empty{background-color:#fafafa}.day-cell.weekend{background-color:#f5f5f5;color:#999;background-image:repeating-linear-gradient(45deg,#f5f5f5,#f5f5f5 5px,#ebebeb 5px 6px)}.day-cell.closed{background-color:#ffebee;color:#c62828;font-weight:700;cursor:help}.day-cell.closed:hover{filter:brightness(.95)}.day-cell.open{background-color:#fff}.day-cell.today{box-shadow:inset 0 0 0 2px #000;font-weight:800;z-index:1}.custom-tooltip{visibility:hidden;opacity:0;position:absolute;bottom:120%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:6px 12px;border-radius:6px;font-size:12px;white-space:nowrap;z-index:100;box-shadow:0 4px 10px #0003;pointer-events:none;transition:opacity .2s}.custom-tooltip:after{content:"";position:absolute;top:100%;left:50%;margin-left:-5px;border-width:5px;border-style:solid;border-color:#333 transparent transparent transparent}.day-cell:hover .custom-tooltip{visibility:visible;opacity:1;transform:translate(-50%) translateY(-5px)}.legend-card{background-color:#e3f2fd;border-left:5px solid #2196f3;padding:20px;box-shadow:0 5px 15px #0000000d;border-radius:12px;position:sticky;top:20px}.legend-card h4{margin:0 0 10px;display:flex;align-items:center;gap:10px;font-size:25px;font-weight:700;color:#0d47a1}.legend-list{display:flex;flex-direction:column;gap:12px}.legend-item{display:flex;align-items:center;gap:10px;font-size:13px;color:#555;font-weight:500}.sample{width:18px;height:18px;border-radius:4px;border:1px solid #ddd;flex-shrink:0}.sample.open{background:#fff}.sample.weekend{background-color:#f5f5f5;background-image:repeating-linear-gradient(45deg,#f5f5f5,#f5f5f5 3px,#ebebeb 3px 4px)}.sample.closed{background:#ffebee;border-color:#ef9a9a}.sample.today{border:2px solid #000}.legend-info{padding-top:15px;border-top:1px dashed #eee;display:flex;gap:8px;color:#888;font-size:12px;line-height:1.4}.legend-info svg{color:#f2c94c;font-size:16px;margin-top:2px}@media(max-width:900px){.calendar-content-wrapper{grid-template-columns:1fr}.legend-card{position:static;order:-1;margin-bottom:20px}.legend-list{flex-direction:row;flex-wrap:wrap;gap:20px}.yearly-container{padding:0 15px}}@media(max-width:768px){.yearly-container{width:100%;max-width:100%;padding:0 10px;margin:0}.schedule-table{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.schedule-header-row,.schedule-row{min-width:700px}.month-col-header,.month-name-col{position:sticky;left:0;z-index:10;box-shadow:2px 0 5px #0000000d;border-right:1px solid #e0e0e0;width:85px!important;min-width:85px!important;max-width:85px!important;font-size:11px!important;padding:0 5px!important}.month-col-header{background-color:#fcfcfc}.month-name-col{background-color:#fffbf0}.current-year-label{font-size:18px}}.messages-container *{box-sizing:border-box}.messages-container{width:100%;margin:0;padding:0;font-family:Segoe UI,sans-serif;height:calc(100vh - 140px);display:flex;flex-direction:column}.chat-card{background:#fff;border-radius:20px;box-shadow:0 5px 20px #0000000d;border:1px solid #e0e0e0;flex:1;display:flex;flex-direction:column;overflow:hidden;margin:0 auto 20px;width:66.66%;position:relative}.messages-area{scrollbar-width:thin;scrollbar-color:#ccc transparent}.messages-area::-webkit-scrollbar{width:6px}.messages-area::-webkit-scrollbar-track{background:transparent;margin:5px 0}.messages-area::-webkit-scrollbar-thumb{background-color:#d0d0d0;border-radius:20px;border:2px solid transparent;background-clip:content-box}.messages-area::-webkit-scrollbar-thumb:hover{background-color:#a0a0a0}.chat-header{padding:15px 25px;border-bottom:1px solid #f0f0f0;display:flex;align-items:center;gap:15px;background-color:#fff}.director-avatar{width:45px;height:45px;background-color:#e3f2fd;color:#1565c0;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;position:relative}.header-info h3{margin:0;font-size:16px;color:#333}.status-indicator{font-size:12px;font-weight:600;display:flex;align-items:center;gap:5px}.status-indicator.online{color:#4caf50}.status-indicator.offline{color:#999}.dot{width:8px;height:8px;border-radius:50%;display:inline-block}.dot.green{background-color:#4caf50}.dot.gray{background-color:#ccc}.avatar-online-dot{position:absolute;bottom:2px;right:2px;width:10px;height:10px;background-color:#4caf50;border:2px solid #fff;border-radius:50%}.messages-area{flex:1;padding:20px 25px;overflow-y:auto;background-color:#fcfcfc;display:flex;flex-direction:column;gap:10px}.message-row{display:flex;align-items:flex-end;gap:10px;max-width:80%}.sender-name{font-size:11px;color:#999;margin-bottom:2px;margin-left:5px}.message-bubble{padding:10px 15px;border-radius:18px;font-size:14px;line-height:1.4;position:relative;word-wrap:break-word}.message-time{font-size:10px;color:#aaa;margin-top:4px;margin-left:5px;text-align:right}.read-status{margin-left:5px}.scroll-bottom-btn{position:absolute;bottom:85px;left:50%;transform:translate(-50%);width:40px;height:40px;border-radius:50%;background-color:#2196f3;color:#fff!important;border:none;box-shadow:0 4px 10px #0003;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:100;transition:transform .2s,background-color .2s;animation:popIn .3s ease}.scroll-bottom-btn svg{fill:#fff!important;color:#fff!important;width:20px!important;height:20px!important;min-width:20px!important;min-height:20px!important}.scroll-bottom-btn:hover{transform:translate(-50%) scale(1.1);background-color:#1976d2}.scroll-bottom-btn:focus{outline:none}@keyframes popIn{0%{transform:translate(-50%) scale(0);opacity:0}to{transform:translate(-50%) scale(1);opacity:1}}.chat-input-area{padding:15px 25px;background-color:#fff;border-top:1px solid #f0f0f0;display:flex;align-items:center;gap:10px;z-index:50}.chat-input-area input{flex:1;padding:12px 20px;border-radius:25px;border:1px solid #e0e0e0;background-color:#f9f9f9;color:#333;font-size:14px;outline:none;transition:all .2s}.chat-input-area input::placeholder{color:#aaa;opacity:1;transition:opacity .2s}.chat-input-area input:focus::placeholder{opacity:0;color:transparent}.chat-input-area input:focus{border-color:#f2c94c;background-color:#fff}.chat-input-area button{background:none;border:none;color:#f2c94c;font-size:20px;cursor:pointer;padding:10px;display:flex;align-items:center;justify-content:center;transition:transform .2s}.chat-input-area button:hover:not(:disabled){transform:scale(1.1)}.chat-input-area button:disabled{color:#ccc;cursor:default}.chat-input-area button:focus{outline:none}.empty-chat{text-align:center;color:#999;margin-top:50px}@media(max-width:768px){.messages-container{padding:0 5px;height:calc(100vh - 160px)}}.gallery-container *{box-sizing:border-box}.gallery-container{width:100%;margin:0 auto;padding:0;font-family:Segoe UI,sans-serif;max-width:none}.gallery-feed{display:flex;flex-direction:column;gap:30px;width:66.666%;max-width:none;margin:0 auto}.gallery-card{background:#fff;border-radius:20px;padding:25px;box-shadow:0 5px 20px #0000000d;border:1px solid transparent;transition:transform .2s}.gallery-header{display:flex;align-items:center;margin-bottom:15px}.gallery-avatar{width:45px;height:45px;background-color:#f2c94c;border-radius:50%;display:flex;justify-content:center;align-items:center;color:#fff;font-weight:700;font-size:20px;margin-right:15px;overflow:hidden}.gallery-avatar img{width:100%;height:100%;object-fit:cover}.gallery-avatar-placeholder{width:100%;height:100%;display:flex;justify-content:center;align-items:center}.gallery-info h4{margin:0;font-size:15px;color:#333}.gallery-date{font-size:12px;color:#999;display:flex;align-items:center;gap:5px;margin-top:3px}.album-title{margin:0 0 10px;font-size:18px;color:#333}.album-desc{color:#444;font-size:15px;line-height:1.6;margin-bottom:15px}.empty-gallery{padding:50px;text-align:center;color:#999;font-size:16px;background:#fff;border-radius:20px;box-shadow:0 5px 20px #0000000d}.post-actions-bar{display:flex;justify-content:flex-end;align-items:center;border-top:1px solid #eee;padding-top:15px;margin-top:15px}.like-btn{position:relative}.like-tooltip{position:absolute;bottom:100%;left:0;transform:translateY(-8px);background:#fff;color:#333;border:1px solid #ddd;border-radius:8px;padding:8px 10px;font-size:12px;box-shadow:0 4px 12px #00000014;white-space:normal;display:inline-block;max-width:240px;opacity:0;pointer-events:none;transition:opacity .15s ease;z-index:5}.like-btn:hover .like-tooltip{opacity:1}.like-tooltip-item{line-height:1.4}@media(max-width:768px){.gallery-container{padding:0 10px}.gallery-feed{width:100%}}.fb-image-grid{display:grid;gap:2px;width:100%;height:400px;border-radius:12px;overflow:hidden;margin-top:15px;border:1px solid #eee;background-color:#f0f0f0}.grid-item{position:relative;overflow:hidden;width:100%;height:100%}.grid-item img{width:100%;height:100%;object-fit:cover;transition:transform .3s;cursor:pointer;display:block}.grid-item:hover img{transform:scale(1.05)}.fb-image-grid.grid-1{grid-template-columns:1fr;height:auto;max-height:500px}.fb-image-grid.grid-2{grid-template-columns:1fr 1fr}.fb-image-grid.grid-3{grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr}.fb-image-grid.grid-3 .item-0{grid-row:1 / 3}.fb-image-grid.grid-4{grid-template-columns:1fr 1fr 1fr;grid-template-rows:2fr 1fr}.fb-image-grid.grid-4 .item-0{grid-column:1 / 4}.more-overlay{position:absolute;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;color:#fff;font-size:28px;font-weight:700;cursor:pointer;transition:background .2s}.more-overlay:hover{background-color:#0006}.lightbox-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#000000f2;z-index:2147483647;display:flex;justify-content:center;align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);animation:fadeIn .2s ease-out}.lightbox-content{position:relative;width:auto;height:auto;max-width:90vw;max-height:85vh;display:flex;justify-content:center;align-items:center}.lightbox-content img{width:auto;height:auto;max-width:100%;max-height:85vh;border-radius:4px;box-shadow:0 0 50px #000c;object-fit:contain;display:block}.lightbox-counter{position:absolute;bottom:-40px;left:50%;transform:translate(-50%);color:#fff;font-size:16px;font-weight:500;text-shadow:0 1px 3px rgba(0,0,0,.8)}.lightbox-close-btn,.lightbox-nav-btn{background-color:#00000080;color:#fff;border:none;width:50px;height:50px;border-radius:50%;display:flex;justify-content:center;align-items:center;cursor:pointer;transition:background-color .2s,transform .2s;z-index:10000;outline:none;-webkit-tap-highlight-color:transparent}.lightbox-close-btn:focus,.lightbox-nav-btn:focus{outline:none;border:none}.lightbox-close-btn:hover,.lightbox-nav-btn:hover{background-color:#fff3;transform:scale(1.1)}.lightbox-close-btn svg,.lightbox-nav-btn svg{width:24px;height:24px;fill:#fff}.lightbox-close-btn{position:absolute;top:20px;right:20px}.lightbox-nav-btn{position:absolute;top:50%;transform:translateY(-50%)}.lightbox-nav-btn:hover{transform:translateY(-50%) scale(1.1)}.lightbox-nav-btn.prev{left:30px}.lightbox-nav-btn.next{right:30px}@media(max-width:768px){.lightbox-close-btn,.lightbox-nav-btn{width:40px;height:40px;background-color:#0009}.lightbox-close-btn svg,.lightbox-nav-btn svg{width:20px;height:20px}.lightbox-close-btn{top:15px;right:15px}.lightbox-nav-btn.prev{left:10px}.lightbox-nav-btn.next{right:10px}}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:25px;margin-bottom:40px;width:80%;margin-left:auto;margin-right:auto}.stat-card{background:#fff;border-radius:20px;padding:25px;display:flex;align-items:center;gap:20px;box-shadow:0 5px 20px #0000000d;border-left:5px solid;text-decoration:none;transition:transform .2s,box-shadow .2s}.stat-card-button{width:100%;border-top:none;border-right:none;border-bottom:none;text-align:left;font:inherit;cursor:pointer}.stat-card:hover{transform:translateY(-3px);box-shadow:0 8px 25px #0000001a}.director-container :is(button,a,select,input,textarea):focus,.director-container :is(button,a,select,input,textarea):focus-visible{outline:none;box-shadow:none}.stat-card-disabled{cursor:default;opacity:.85}.stat-card-disabled:hover{transform:none;box-shadow:0 5px 20px #0000000d}.stat-card.blue{border-color:#2196f3}.stat-card.orange{border-color:#ff9800}.stat-card.red{border-color:#e57373}.stat-card.purple{border-color:#7e57c2}.stat-card.green{border-color:#43a047}.stat-icon{font-size:30px;width:60px;height:60px;min-width:60px;min-height:60px;flex:0 0 60px;border-radius:50%;display:flex;align-items:center;justify-content:center}.blue .stat-icon{background-color:#e3f2fd;color:#1976d2}.orange .stat-icon{background-color:#fff3e0;color:#ef6c00}.red .stat-icon{background-color:#ffebee;color:#c62828}.purple .stat-icon{background-color:#ede7f6;color:#5e35b1}.green .stat-icon{background-color:#e8f5e9;color:#2e7d32}.stat-content{display:flex;flex-direction:column}.stat-value{font-size:28px;font-weight:800;color:#333}.stat-label{font-size:13px;color:#666;font-weight:500}.dashboard-section{width:80%;margin-left:auto;margin-right:auto;margin-bottom:36px}.section-header-row{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;flex-wrap:wrap}.section-title{margin:0;font-size:20px;color:#1f2530;display:inline-flex;align-items:center;padding:8px 12px;border-left:5px solid #f2c94c;border-radius:10px;background-color:#ffffff47;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.attendance-controls{display:flex;align-items:center;gap:12px}.toggle-group{display:flex;border:none;border-radius:10px;overflow:hidden}.toggle-btn{border:0;background:#fff;color:#555;font-weight:600;padding:8px 14px;cursor:pointer}.toggle-btn.active{background:#f2c94c;color:#2f2f2f}.group-select{border:1px solid #ddd;border-radius:10px;padding:8px 12px;background:#fff;color:#333;font-weight:600}.attendance-chart-card,.debtors-list-card,.debtor-details-card,.pending-replies-card{background:#fff;border-radius:15px;padding:20px;box-shadow:0 5px 20px #0000000d}.attendance-chart-card{overflow:hidden}.attendance-chart{display:flex;align-items:flex-end;justify-content:space-between;gap:8px;min-height:220px}.attendance-chart.is-month{justify-content:space-between;overflow-x:auto;overflow-y:hidden;padding-bottom:6px}.attendance-chart.is-month .attendance-bar-item{flex:1 0 28px}.attendance-bar-item{display:flex;flex-direction:column;align-items:center;gap:8px;flex:1}.attendance-bar-track{height:180px;width:100%;max-width:22px;border-radius:999px;background:#f3f3f3;display:flex;align-items:flex-end;overflow:hidden}.attendance-bar-fill{width:100%;background:linear-gradient(180deg,#f2c94c,#d9a51b);border-radius:999px;min-height:6px}.attendance-bar-label{font-size:12px;color:#666;font-weight:600}.attendance-summary-row{margin-top:16px;display:flex;justify-content:space-between;gap:12px;color:#555;font-size:14px;flex-wrap:wrap}.debt-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-bottom:16px}.debt-summary-card{background:#fff9e8;border:1px solid #f2deb1;border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:6px;color:#2f2f2f}.debt-summary-label{font-size:13px;color:#8f6c16;font-weight:600}.debt-summary-value{font-size:20px;color:#553f0a;font-weight:800}.debt-layout-grid{display:grid;grid-template-columns:minmax(260px,340px) minmax(0,1fr);gap:16px}.debtors-list-card h4,.debtor-details-card h4{margin:0 0 10px;color:#2f2f2f}.debtors-list-card,.debtor-details-card{color:#2f2f2f}.debtors-list{display:flex;flex-direction:column;gap:10px;max-height:420px;overflow:auto}.debtor-item{border:1px solid #ececec;border-radius:12px;background:#fff;padding:12px;display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;text-align:left;color:#2f2f2f}.debtor-item strong,.debtor-item>span{color:#2f2f2f}.debtor-item>div{display:flex;flex-direction:column;gap:3px}.debtor-item>div span{font-size:12px;color:#666}.debtor-item.active{border-color:#f2c94c;box-shadow:0 0 0 3px #f2c94c33}.debtor-details-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.debtor-details-table-wrap{overflow-x:auto}.debtor-details-table{width:100%;border-collapse:collapse}.debtor-details-table th,.debtor-details-table td{text-align:left;padding:10px;border-bottom:1px solid #eee;font-size:13px;color:#2f2f2f}.debtor-details-table th{color:#555;font-weight:700}.pending-replies-card{background:linear-gradient(180deg,#fffdf7,#fff9ec);border:1px solid #f1e6c7;border-radius:16px;padding:14px;display:flex;flex-direction:column;gap:12px}.pending-reply-item{background:#fff;border:1px solid #e6e6e6;border-left:4px solid #e57373;border-radius:12px;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;text-decoration:none;color:#1f2530;gap:12px;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.pending-reply-item>div{display:flex;flex-direction:column;gap:5px;min-width:0}.pending-reply-item>div strong{color:#1f2530;font-size:15px;font-weight:700}.pending-reply-item>div span{color:#5b6675;font-size:13px;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pending-reply-item:hover{border-color:#e3c57a;background:#fffef9;transform:translateY(-1px);box-shadow:0 6px 18px #0000000f}.pending-hours{color:#ad2f2f;background:#fdecec;border:1px solid #f6c6c6;border-radius:999px;padding:5px 10px;min-width:64px;text-align:center;font-size:14px;font-weight:800}.empty-state{border:1px dashed #ddd;border-radius:10px;padding:14px;color:#777;font-size:14px}@media(max-width:1024px){.stats-grid,.dashboard-section{width:100%}.debt-layout-grid{grid-template-columns:1fr}}@media(max-width:720px){.attendance-controls{width:100%;justify-content:space-between}.toggle-btn{padding:8px 10px}.attendance-chart{gap:6px}.attendance-bar-track{max-width:14px}}.payments-title-toggle{border:none;background:transparent;padding:0;cursor:pointer;text-align:left;width:fit-content;transition:transform .28s ease}.payments-title-toggle .settings-main-title{transition:opacity .32s ease,transform .32s ease}.payments-title-toggle:hover .settings-main-title{opacity:.88;transform:translate(2px)}.payments-title-toggle:focus-visible .settings-main-title{opacity:.88;transform:translate(2px)}.payments-toggle-icon{color:#f2c94c;display:inline-flex;align-items:center;animation:paymentsIconSpin .7s ease;transform-origin:center}.payments-title-toggle:hover .payments-toggle-icon,.payments-title-toggle:focus-visible .payments-toggle-icon{animation:paymentsIconHoverPulse 1.05s ease}.payments-view-animated{animation:paymentsViewEnter .34s ease}@keyframes paymentsViewEnter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes paymentsIconSpin{0%{transform:rotate(-14deg) scale(.95)}to{transform:rotate(0) scale(1)}}@keyframes paymentsIconHoverPulse{0%{transform:scale(1)}50%{transform:scale(1.08)}to{transform:scale(1)}}.page-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.page-header-row .page-title{flex:1;min-width:0}.honey-btn{background-color:#f2c94c;color:#fff;border:none;border-radius:25px;padding:10px 18px;font-weight:700;display:inline-flex;align-items:center;gap:8px;cursor:pointer;transition:transform .15s ease,box-shadow .2s ease}.honey-btn:hover{transform:translateY(-1px);box-shadow:0 6px 16px #f2c94c59}.honey-btn:active{transform:translateY(0)}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;padding:clamp(20px,4vh,36px) 16px;box-sizing:border-box;overflow:hidden}.modal-content{background:#fff;padding:30px;border-radius:20px;width:100%;max-width:540px;box-shadow:0 12px 36px #0003}.modal-content h3{margin-top:0;color:#333;margin-bottom:20px}.search-bar-container{background:#fff;padding:15px 20px;border-radius:20px;display:flex;align-items:center;gap:15px;box-shadow:0 4px 15px #0000000d;margin-bottom:30px;width:calc(80% - 40px);margin-left:auto;margin-right:auto}.search-icon{color:#aaa;font-size:18px}.search-bar-container input{border:none;outline:none;font-size:16px;width:100%;color:#242323;background-color:#fff}.director-container{--sb-track-color: transparent;--sb-thumb-color: #ecb11d;--sb-size: 10px}.director-container::-webkit-scrollbar{width:var(--sb-size);height:var(--sb-size)}.director-container::-webkit-scrollbar-track{background:var(--sb-track-color);border-radius:999px;margin:14px 8px 14px 2px}.director-container::-webkit-scrollbar-thumb{background:var(--sb-thumb-color);border-radius:999px;border:2px solid transparent;background-clip:content-box}@supports not selector(::-webkit-scrollbar){.director-container{scrollbar-color:var(--sb-thumb-color) var(--sb-track-color)}}.table-card{--sb-track-color: transparent;--sb-thumb-color: #ecb11d;--sb-size: 10px;background:#fff;border-radius:20px;box-shadow:0 5px 20px #0000000d;overflow-x:auto;width:80%;margin-left:auto;margin-right:auto}.table-card::-webkit-scrollbar{width:var(--sb-size);height:var(--sb-size)}.table-card::-webkit-scrollbar-track{background:var(--sb-track-color);border-radius:999px;margin:12px 8px 12px 2px}.table-card::-webkit-scrollbar-thumb{background:var(--sb-thumb-color);border-radius:999px;border:2px solid transparent;background-clip:content-box}@supports not selector(::-webkit-scrollbar){.table-card{scrollbar-color:var(--sb-thumb-color) var(--sb-track-color)}}.custom-table{width:100%;border-collapse:collapse;min-width:800px}.custom-table th{text-align:left;padding:15px;color:#888;font-size:12px;text-transform:uppercase;border-bottom:2px solid #f0f0f0}.sortable-header-btn{border:none;background:transparent;color:#888;font-size:12px;text-transform:uppercase;font-weight:700;letter-spacing:.2px;display:inline-flex;align-items:center;gap:6px;padding:0;cursor:pointer}.sortable-header-btn:hover{color:#555}.sortable-header-btn:focus,.sortable-header-btn:focus-visible,.sortable-header-btn:active{outline:none;box-shadow:none}.sort-arrow{font-size:12px;line-height:1}.custom-table td{padding:15px;border-bottom:1px solid #f9f9f9;vertical-align:middle;color:#333;font-size:14px}.custom-table tr:last-child td{border-bottom:none}.custom-table tr:hover{background-color:#fafafa}.custom-table tr.menu-week-row:hover{background-color:#f3edff}.menu-week-cell{background-color:#f3edff;color:#5d4b8a;font-weight:700;border-top:1px solid #ddd0fb;border-bottom:1px solid #ddd0fb}.menu-week-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.menu-week-print-btn{display:inline-flex;align-items:center;gap:6px;border:1px solid #d4c2fb;background-color:#fff;color:#5d4b8a;border-radius:8px;padding:6px 10px;font-size:12px;font-weight:700;cursor:pointer;transition:background-color .2s ease,transform .2s ease}.menu-week-print-btn:hover{background-color:#ede4ff;transform:translateY(-1px)}.user-cell{display:flex;align-items:center;gap:12px}.avatar-circle{width:35px;height:35px;min-width:35px;flex:0 0 35px;border-radius:50%;display:flex;justify-content:center;align-items:center;font-weight:700;color:#fff;font-size:16px}.avatar-circle.director{background-color:#e0245e}.avatar-circle.parent{background-color:#f2c94c}.avatar-circle.teacher{background-color:#1e88e5}.username-text{font-weight:600}.contact-info{display:flex;flex-direction:column}.sub-text{font-size:12px;color:#999;margin-top:2px}.role-badge{padding:5px 12px;border-radius:15px;font-size:12px;font-weight:600;display:inline-flex;align-items:center;gap:6px}.role-badge.director{background-color:#fce4ec;color:#ad1457}.role-badge.parent{background-color:#fff8e1;color:#f57f17}.role-badge.teacher{background-color:#e3f2fd;color:#0d47a1}.role-badge.meal-yes{color:#1b9624;background:transparent;border:none;padding:0;border-radius:0}.role-badge.meal-no{color:#b71c1c;background:transparent;border:none;padding:0;border-radius:0}.role-badge.group-all{background-color:#fff8e1;color:#f57f17}.role-badge.group-default{background-color:#f3f4f6;color:#4b5563}.role-badge.group-color-red{background-color:#ffebee;color:#b71c1c;border:1px solid #ffcdd2}.role-badge.group-color-yellow{background-color:#fff8e1;color:#f5cc17;border:1px solid #ffe0b2}.role-badge.group-color-blue{background-color:#e3f2fd;color:#0d47a1;border:1px solid #bbdefb}.role-badge.group-color-green{background-color:#e8f5e9;color:#1b5e20;border:1px solid #c8e6c9}.role-badge.group-color-orange{background-color:#fff3e0;color:#f38e09;border:1px solid #ffe0b2}.role-badge.group-color-purple{background-color:#f3e5f5;color:#4a148c;border:1px solid #e1bee7}.role-badge.recurring-active{background-color:#e8f5e9;color:#1b5e20;border:1px solid #c8e6c9}.role-badge.recurring-inactive{background-color:#ffebee;color:#b71c1c;border:1px solid #ffcdd2}.text-right{text-align:right}.text-center{text-align:center;color:#999}.actions-header{text-align:left}.actions-cell{text-align:left;white-space:nowrap}.actions-cell .action-icon-btn{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle}.actions-cell .action-icon-btn+.action-icon-btn{margin-left:2px}.action-icon-btn{background:none;border:none;cursor:pointer;padding:8px;font-size:16px;transition:transform .2s;color:#999}.action-icon-btn:hover{transform:scale(1.2)}.action-icon-btn.edit:hover{color:#2196f3}.action-icon-btn.preview:hover{color:#f2c94c}.action-icon-btn.delete:hover{color:#e57373}.action-icon-btn.lock-toggle.block:hover{color:#ef5350}.action-icon-btn.lock-toggle.unblock:hover{color:#43a047}.action-icon-btn:disabled{color:#c8c8c8;cursor:not-allowed;opacity:.7}.action-icon-btn:disabled:hover{transform:none;color:#c8c8c8}.action-icon-btn.preview:disabled{opacity:.45}.action-icon-btn.preview:disabled svg{color:#bdbdbd}.post-image-delete-btn{position:absolute;top:6px;right:6px;background:transparent;color:#fff;border:none;width:auto;height:auto;display:flex;justify-content:center;align-items:center;padding:2px;cursor:pointer;z-index:2;transition:color .2s ease,transform .15s ease}.post-image-preview-wrapper{position:relative;display:inline-block;line-height:0}.post-image-delete-btn:hover{color:#ff6b6b;transform:scale(1.06)}.post-image-delete-btn:active{transform:scale(.95)}.post-image-delete-icon{font-size:14px;filter:drop-shadow(0 1px 2px rgba(0,0,0,.55));pointer-events:none}.modal-content.large{max-width:640px;width:100%;margin:0 auto;max-height:calc(100vh - 72px);max-height:calc(100dvh - 72px);overflow-y:auto;-ms-overflow-style:none;scrollbar-width:none}.modal-content.large::-webkit-scrollbar{width:0;height:0}.modal-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px;row-gap:20px;align-items:start}.full-width{grid-column:1 / -1}.form-group label{display:block;font-size:12px;font-weight:700;color:#555;margin-bottom:5px}.required-asterisk{color:#d32f2f;font-size:12px;margin-left:2px}.form-group input,.form-group select{width:100%;padding:10px;border:1px solid #ddd;border-radius:8px;font-size:14px;background-color:#fff;color:#242323;box-sizing:border-box}.form-group select[multiple]{min-height:120px;padding:8px;line-height:1.45}.form-group select[multiple] option{padding:6px 10px;border-radius:6px;color:#2f2f2f}.form-group select[multiple] option:checked{background:linear-gradient(180deg,#fff6d8,#ffe9a6);color:#5d4037;font-weight:700}.form-group select[multiple] option:hover{background:#fff3cd}.form-group input[type=date],.form-group input[type=time]{color-scheme:light}.form-group input[type=date]::-webkit-calendar-picker-indicator,.form-group input[type=time]::-webkit-calendar-picker-indicator{opacity:1;cursor:pointer}.form-group input::placeholder{color:#999;opacity:.8}.menu-upload-input{display:none}.menu-upload-title{display:block;font-size:12px;font-weight:700;color:#555;margin-bottom:8px;text-align:center}.menu-upload-box{width:100%;min-height:190px;border:2px dashed #d9d9d9;border-radius:12px;background:#fafafa;cursor:pointer;display:flex;align-items:center;justify-content:center;text-align:center;padding:14px;box-sizing:border-box;overflow:hidden;transition:border-color .2s ease,background-color .2s ease}.menu-upload-box:hover{border-color:#c7c7c7;background:#f5f5f5}.menu-upload-placeholder{color:#999;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;font-size:14px;line-height:1.3;max-width:100%}.menu-upload-preview-wrapper{width:100%;height:100%;min-height:150px;display:flex;align-items:center;justify-content:center}.menu-upload-preview-frame{position:relative;display:inline-flex;align-items:center;justify-content:center}.menu-upload-preview{max-width:100%;max-height:120px;object-fit:contain;border-radius:4px;border:1px solid #dcdcdc;background:#fff}.menu-upload-placeholder span{font-weight:600;overflow-wrap:anywhere}.menu-upload-icon{font-size:26px;color:#9e9e9e}.form-group input:focus,.form-group select:focus{border-color:#f2c94c;box-shadow:0 0 0 3px #f2c94c33;outline:none}.form-group textarea{width:100%;padding:10px;border:1px solid #ddd;border-radius:8px;font-size:14px;background-color:#fff;color:#242323;box-sizing:border-box}.form-group textarea:focus{border-color:#f2c94c;box-shadow:0 0 0 3px #f2c94c33;outline:none}.form-group input.invalid-bounce,.form-group select.invalid-bounce,.form-group textarea.invalid-bounce,.form-group .checkbox-list.invalid-bounce{border-color:#d32f2f;box-shadow:0 0 0 3px #d32f2f2e;animation:invalidFieldJump .6s ease}.form-group.meal-rate-disabled label{color:#8a8a8a}.form-group.meal-rate-disabled input{background-color:#f3f3f3;border-color:#e3e3e3;color:#9a9a9a;cursor:not-allowed}.field-disabled-message{margin-top:6px;font-size:12px;color:#8a8a8a;font-weight:600}@keyframes invalidFieldJump{0%{transform:translateY(0)}25%{transform:translateY(-4px)}45%{transform:translateY(0)}65%{transform:translateY(-2px)}to{transform:translateY(0)}}@media(max-width:768px){.modal-form-grid{grid-template-columns:1fr}.password-row{flex-direction:column;align-items:stretch}.password-generate-btn-inline{width:100%;justify-content:center}}.password-row{display:flex;align-items:center;gap:10px}.password-input-wrapper{position:relative;width:100%;flex:1}.password-input-wrapper input{padding-left:35px;width:100%}.password-input-wrapper .field-icon{left:10px}.password-generate-btn-inline{white-space:nowrap;padding:10px 14px;font-size:13px;flex-shrink:0}.form-error{color:#d32f2f;background-color:#ffebee;padding:10px;border-radius:8px;margin-bottom:20px;text-align:center;font-size:13px}.form-success{color:#1b5e20;background-color:#e8f5e9;padding:10px;border-radius:8px;margin-bottom:20px;text-align:center;font-size:13px}.payments-inline-message{width:80%;margin-left:auto;margin-right:auto}.meal-adjustment-row{display:grid;grid-template-columns:1fr 1fr 1.4fr auto;gap:8px;margin-bottom:8px}.meal-adjustment-row select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:30px;background-color:#fff;background-image:linear-gradient(45deg,transparent 50%,#8a8a8a 50%),linear-gradient(135deg,#8a8a8a 50%,transparent 50%);background-position:calc(100% - 14px) calc(50% - 2px),calc(100% - 9px) calc(50% - 2px);background-size:5px 5px,5px 5px;background-repeat:no-repeat}@media(max-width:920px){.meal-adjustment-row{grid-template-columns:1fr}}.generated-credentials-actions{display:flex;justify-content:center}.generated-credentials-actions .modal-btn{min-width:240px;justify-content:center}.generated-credentials-actions .modal-btn:disabled{opacity:.75;cursor:not-allowed}.generated-credentials-actions .modal-btn:disabled:hover{transform:none}.generated-credentials-info{background:#fff8e1;border:1px solid #f2c94c;color:#7a6200;border-radius:8px;padding:10px 12px;text-align:center;font-size:13px}.preview-password-modal-content{max-width:460px}.preview-password-value{margin-bottom:20px;word-break:break-all}.filter-bar{display:flex;gap:20px;margin-bottom:30px;align-items:stretch;justify-content:flex-end;flex-wrap:wrap;width:80%;margin-left:auto;margin-right:auto}.filter-bar .search-bar-container{flex:1;margin:0;width:auto}.filter-bar .honey-btn{flex-shrink:0;white-space:nowrap}.date-filter-container{display:flex;align-items:center;gap:15px;background:#fff;padding:0 15px;border-radius:20px;box-shadow:0 4px 15px #0000000d}.date-picker-trigger{border:none;background:transparent;padding:0;margin:0;display:inline-flex;align-items:center;cursor:pointer;border-radius:10px;transition:background-color .2s ease,transform .2s ease}.date-picker-trigger:hover{background-color:#e8f1ff;transform:scale(1.06)}.date-picker-trigger:hover .search-icon,.date-picker-trigger:focus-visible .search-icon{color:#2196f3}.date-picker-trigger:focus-visible{outline:2px solid #2196f3;outline-offset:2px}.date-picker-trigger:focus,.date-picker-trigger:active{outline:none}.date-filter-container input[type=date]{border:none;outline:none;font-size:15px;color:#333;padding:15px 0;background:transparent;color-scheme:light}.date-filter-container input[type=date]::-webkit-calendar-picker-indicator{display:none}.clear-date-btn{background:#eee;border:none;width:24px;height:24px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;font-size:16px;line-height:1;color:#888;cursor:pointer;transition:background-color .2s ease,color .2s ease,transform .15s ease}.clear-date-btn:hover{background:#fdecef;color:#e0245e;transform:scale(1.08)}.clear-date-btn:active{transform:scale(.96)}.clear-date-btn:focus-visible{outline:2px solid #e0245e;outline-offset:2px}.checkbox-list{--sb-track-color: #ffffff;--sb-thumb-color: #cacaca;--sb-size: 8px;max-height:150px;overflow-y:auto;border:1px solid #ddd;border-radius:8px;padding:10px;background-color:#fafafa}.checkbox-list::-webkit-scrollbar{width:var(--sb-size)}.checkbox-list::-webkit-scrollbar-track{background:var(--sb-track-color);border-radius:6px}.checkbox-list::-webkit-scrollbar-thumb{background:var(--sb-thumb-color);border-radius:6px}@supports not selector(::-webkit-scrollbar){.checkbox-list{scrollbar-color:var(--sb-thumb-color) var(--sb-track-color)}}.checkbox-item{display:flex;align-items:center;padding:5px}.checkbox-item input[type=checkbox]{width:auto;margin-right:10px}.form-group.full-width .checkbox-list{max-height:none;overflow-y:visible;display:grid;grid-template-columns:1fr;gap:4px 12px}.form-group.full-width .checkbox-list .checkbox-item{padding:4px 2px}.form-group.full-width .checkbox-list.parent-checkbox-list{max-height:min(150px,28vh);overflow-y:auto;display:block}.parent-checkbox-label{color:#000}.form-fieldset{border:1px solid #eee;border-radius:12px;padding:15px;margin-bottom:10px}.form-fieldset legend{padding:0 10px;font-weight:700;color:#555;font-size:14px}.drop-zone{border:2px dashed #ccc;border-radius:12px;padding:20px;background-color:#fafafa}.thumbnails-container{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.thumbnail{width:100px;height:100px;border-radius:8px;overflow:hidden;position:relative}.thumbnail img{width:100%;height:100%;object-fit:cover}.thumb-delete{position:absolute;top:7px;right:7px;background:transparent;color:#fff;border:none;width:auto;height:auto;display:flex;justify-content:center;align-items:center;padding:2px;cursor:pointer;z-index:2;transition:color .2s ease,transform .15s ease}.thumb-download{position:absolute;top:7px;left:7px;background:transparent;color:#4a90e2;border:none;width:auto;height:auto;display:flex;justify-content:center;align-items:center;padding:2px;cursor:pointer;z-index:2;transition:color .2s ease,transform .15s ease}.thumb-delete:hover{color:#ff6b6b;transform:scale(1.06)}.thumb-download:hover{color:#1f5fa8;transform:scale(1.06)}.thumb-delete:active{transform:scale(.95)}.thumb-delete svg{pointer-events:none}.thumb-download svg{pointer-events:none}.thumb-delete-icon,.thumb-download-icon{font-size:14px;filter:drop-shadow(0 1px 2px rgba(0,0,0,.55))}.add-thumb{border:2px dashed #ccc;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#999;cursor:pointer}.add-thumb:hover{background-color:#f0f0f0}.action-icon-btn.download:hover{color:#4a90e2}.gallery-preview-thumb{cursor:pointer;transition:transform .15s ease,opacity .15s ease}.gallery-preview-thumb:hover{transform:scale(1.04);opacity:.92}.gallery-lightbox-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:2147483647;background-color:#000000f2;display:flex;justify-content:center;align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);animation:galleryLightboxFadeIn .2s ease-out}@keyframes galleryLightboxFadeIn{0%{opacity:0}to{opacity:1}}.gallery-lightbox-content{position:relative;width:auto;height:auto;max-width:90vw;max-height:85vh;display:flex;justify-content:center;align-items:center}.gallery-lightbox-content img{width:auto;height:auto;max-width:100%;max-height:85vh;border-radius:4px;box-shadow:0 0 50px #000c;object-fit:contain;display:block}.gallery-lightbox-counter{position:absolute;bottom:-40px;left:50%;transform:translate(-50%);color:#fff;font-size:16px;font-weight:500;text-shadow:0 1px 3px rgba(0,0,0,.8)}.gallery-lightbox-close-btn,.gallery-lightbox-nav-btn{background-color:#00000080;color:#fff;border:none;border-radius:50%;width:50px;height:50px;display:flex;justify-content:center;align-items:center;cursor:pointer;transition:background-color .2s,transform .2s;z-index:10000;outline:none;-webkit-tap-highlight-color:transparent}.gallery-lightbox-close-btn:focus,.gallery-lightbox-nav-btn:focus{outline:none;border:none}.gallery-lightbox-close-btn:hover,.gallery-lightbox-nav-btn:hover{background-color:#fff3;transform:scale(1.1)}.gallery-lightbox-close-btn{position:absolute;top:20px;right:20px}.gallery-lightbox-nav-btn{position:absolute;top:50%;transform:translateY(-50%)}.gallery-lightbox-nav-btn.prev{left:30px}.gallery-lightbox-nav-btn.next{right:30px}.gallery-lightbox-nav-btn.prev:hover,.gallery-lightbox-nav-btn.next:hover{transform:translateY(-50%) scale(1.06)}.gallery-lightbox-close-btn svg,.gallery-lightbox-nav-btn svg{pointer-events:none;width:24px;height:24px;fill:#fff}@media(max-width:768px){.gallery-lightbox-close-btn,.gallery-lightbox-nav-btn{width:40px;height:40px;background-color:#0009}.gallery-lightbox-close-btn svg,.gallery-lightbox-nav-btn svg{width:20px;height:20px}.gallery-lightbox-close-btn{top:15px;right:15px}.gallery-lightbox-nav-btn.prev{left:10px}.gallery-lightbox-nav-btn.next{right:10px}}.director-container{display:flex;flex-direction:column;height:100%;min-height:0}.messages-layout-grid{display:grid;grid-template-columns:320px 1fr;min-height:0;flex:1;background:#fff;border-radius:20px;box-shadow:0 5px 20px #0000000d;border:1px solid #e0e0e0;overflow:hidden;max-width:1100px;margin:0 auto;width:100%}.conversations-list-panel{border-right:1px solid #f0f0f0;display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden}.conv-search-bar{padding:15px;border-bottom:1px solid #f0f0f0;display:flex;align-items:center;gap:10px;color:#aaa}.conv-search-bar input{border:none;outline:none;font-size:14px;width:100%;background:#fff;color:#000}.conv-search-bar input::placeholder{color:#000;opacity:1}.conv-list{flex:1;overflow-y:auto}.conv-list::-webkit-scrollbar{width:8px}.conv-list::-webkit-scrollbar-track{background:transparent}.conv-list::-webkit-scrollbar-thumb{background:#ddd;border-radius:4px}.conv-item{display:flex;padding:12px 15px;align-items:center;gap:12px;cursor:pointer;border-bottom:1px solid #f9f9f9;transition:background .2s}.conv-item:hover{background-color:#fafafa}.conv-item.active{background-color:#e3f2fd}.conv-avatar{width:40px;height:40px;border-radius:50%;background:#f2c94c;color:#fff;display:flex;justify-content:center;align-items:center;font-weight:700;flex-shrink:0}.conv-details{flex:1;overflow:hidden}.conv-name{font-weight:700;color:#333}.conv-last-msg{font-size:13px;color:#666;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.conv-time{font-size:11px;color:#999}.empty-conv-list{text-align:center;padding:20px;color:#999}.conv-last-msg.new-contact{color:#1565c0;font-style:italic;font-weight:500;display:flex;align-items:center;gap:4px}.chat-window-panel{display:flex;flex-direction:column;position:relative;height:100%;min-height:0;overflow:hidden}.no-chat-selected{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;color:#aaa;padding:40px}.no-chat-selected h4{margin:20px 0 10px;color:#777}.no-chat-selected p{max-width:300px;line-height:1.5}.chat-header{padding:15px 25px;border-bottom:1px solid #f0f0f0;display:flex;align-items:center;gap:15px}.director-avatar{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden;font-weight:700}.messages-area{flex:1;padding:20px;overflow-y:auto;background-color:#fcfcfc;display:flex;flex-direction:column;gap:10px}.chat-input-area{padding:15px;border-top:1px solid #f0f0f0;display:flex;gap:10px}.chat-input-area input{flex:1;padding:12px 20px;border-radius:25px;border:1px solid #ddd;background:#f5f5f5;font-size:14px;outline:none;color:#333}.chat-input-area input:focus{border-color:#f2c94c}.chat-input-area button{background:none;border:none;color:#f2c94c;font-size:20px;cursor:pointer;padding:10px}.message-row{display:flex;max-width:80%;gap:10px;align-items:flex-end}.message-row.sent{align-self:flex-end;flex-direction:row-reverse}.message-row.received{align-self:flex-start}.bubble-wrapper{display:flex;flex-direction:column}.message-bubble{padding:10px 15px;border-radius:18px;font-size:14px}.sent .message-bubble{background-color:#f2c94c;color:#fff;border-bottom-right-radius:4px}.received .message-bubble{background-color:#e4e6eb;color:#050505;border-bottom-left-radius:4px}.message-time{font-size:10px;color:#aaa;margin-top:4px}.sent .message-time{align-self:flex-end}.received .message-time{align-self:flex-start}.msg-avatar{width:30px;height:30px;border-radius:50%;background-color:#ddd;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#555;flex-shrink:0}.avatar-image{width:100%;height:100%;border-radius:50%;object-fit:cover;display:block}.conv-item.unread-conv .conv-name{font-weight:700!important;color:#000}.conv-item.unread-conv .conv-last-msg{font-weight:600!important;color:#333!important}.scroll-bottom-btn{position:absolute;bottom:85px;left:50%;transform:translate(-50%);width:40px;height:40px;border-radius:50%;background-color:#2196f3;color:#fff;border:none;box-shadow:0 4px 10px #0003;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:100}.scroll-bottom-btn svg{fill:#fff!important;width:20px!important;height:20px!important}.read-status{margin-left:5px;font-size:.75rem;color:#a0a0a0;font-style:italic}.settings-page-wrapper{--sb-track-color: transparent;--sb-thumb-color: #ecb11d;--sb-size: 10px}.settings-page-wrapper::-webkit-scrollbar{width:var(--sb-size);height:var(--sb-size)}.settings-page-wrapper::-webkit-scrollbar-track{background:var(--sb-track-color);border-radius:999px;margin:14px 8px 14px 2px}.settings-page-wrapper::-webkit-scrollbar-thumb{background:var(--sb-thumb-color);border-radius:999px;border:2px solid transparent;background-clip:content-box}@supports not selector(::-webkit-scrollbar){.settings-page-wrapper{scrollbar-color:var(--sb-thumb-color) var(--sb-track-color)}}.settings-page-wrapper{width:100%;margin:0;padding:0;font-family:Segoe UI,sans-serif}.settings-main-title{color:#333;font-size:24px;font-weight:700;margin-bottom:20px;margin-left:0;padding-left:15px;border-left:5px solid #f2c94c;display:flex;align-items:center;gap:15px}.settings-main-title svg{color:#f2c94c;font-size:28px}.settings-wide-card{background-color:#fff;border-radius:20px;padding:30px 40px;margin-bottom:30px;box-shadow:0 5px 20px #0000000d;max-width:1100px}.card-title{font-size:18px;font-weight:700;color:#333;margin-bottom:25px}.card-subtitle{margin-top:-18px;margin-bottom:20px;font-size:13px;color:#6b7280}.inputs-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:end}.inputs-grid-2col{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-bottom:0}.section-gap{height:24px}.input-box{position:relative;width:100%}.field-label{display:block;margin-bottom:8px;font-size:12px;font-weight:700;color:#4b5563}.input-box input{width:100%;padding:15px 15px 15px 45px;border:1px solid #e0e0e0;background-color:#fcfcfc;border-radius:12px;font-size:14px;color:#333;box-sizing:border-box;transition:all .2s}.input-box input:focus{border-color:#f2c94c;background-color:#fff;box-shadow:0 0 0 3px #f2c94c1a;outline:none}.field-icon{position:absolute;left:15px;top:23px;transform:translateY(-50%);color:#bbb;font-size:16px}.preschool-card .field-icon{top:50px}.preschool-card .input-box input{height:48px;line-height:48px;padding-top:0;padding-bottom:0}.preschool-card .inputs-grid-2col{align-items:start}.preschool-card .button-container-right{margin-top:8px}.read-only input{background-color:#f0f2f5;color:#666;border-color:#eee}.label-inside{position:absolute;right:15px;top:50%;transform:translateY(-50%);font-size:10px;color:#999;text-transform:uppercase;font-weight:700;letter-spacing:.5px}.honey-btn{background-color:#f2c94c;color:#fff;border:none;padding:12px 30px;border-radius:25px;font-weight:600;font-size:14px;cursor:pointer;transition:transform .2s;box-shadow:0 4px 10px #f2c94c4d}.honey-btn:hover{background-color:#e6b83a;transform:translateY(-2px)}.honey-btn:disabled{background-color:#ccc;cursor:not-allowed;transform:none;box-shadow:none}.btn-left{margin-top:10px}.button-container-right{display:flex;justify-content:flex-end}.settings-alert{padding:14px 16px;border-radius:12px;margin-bottom:25px;text-align:center;font-weight:600;font-size:15px;line-height:1.4}.settings-alert.success{background-color:#e8f5e9;color:#2e7d32;border:1px solid #c8e6c9}.settings-alert.error{background-color:#ffebee;color:#c62828;border:1px solid #ffcdd2}.input-box input.input-invalid{border-color:#d32f2f;box-shadow:0 0 0 3px #d32f2f26}.field-required-message{margin-top:6px;font-size:12px;color:#d32f2f;font-weight:600}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:start}.settings-column{display:flex;flex-direction:column}.medical-card{border-left:none}.medical-label{font-size:13px;color:#666;margin-bottom:10px;font-weight:600}.medical-textarea{width:100%;height:100px;padding:15px;border:1px solid #e0e0e0;border-radius:12px;background-color:#fff5f8;font-family:Segoe UI,sans-serif;font-size:14px;color:#333;resize:vertical;box-sizing:border-box;outline:none;transition:border .2s,background-color .2s}.medical-textarea.filled{background-color:#e8f5e9;border-color:#c8e6c9}.medical-textarea:focus{border-color:#e0245e;background-color:#fff;box-shadow:0 0 0 3px #e0245e1a}.medical-footer{display:flex;justify-content:space-between;align-items:center;margin-top:15px}.medical-hint{font-size:11px;color:#999;display:flex;align-items:center;gap:5px}.profile-card-centered{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.avatar-wrapper{width:100px;height:100px;position:relative;border-radius:50%;cursor:pointer;margin-bottom:15px;border:3px solid #f2c94c;overflow:hidden;box-sizing:border-box}.settings-avatar-img{width:100%;height:100%;object-fit:cover}.settings-avatar-placeholder{width:100%;height:100%;background-color:#eee;display:flex;align-items:center;justify-content:center;font-size:40px;font-weight:700;color:#aaa}.avatar-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#0006;color:#fff;display:flex;align-items:center;justify-content:center;font-size:24px;opacity:0;transition:opacity .2s}.avatar-wrapper:hover .avatar-overlay{opacity:1}.profile-name{margin:0;font-size:20px;color:#333}.profile-username{margin:5px 0 0;font-size:14px;color:#888}.delete-avatar-btn{background:none;border:1px solid #ffcdd2;color:#e57373;padding:8px 15px;border-radius:20px;font-size:12px;cursor:pointer;display:flex;align-items:center;gap:6px;margin-top:15px;transition:all .2s}.delete-avatar-btn:hover{background-color:#ffebee;color:#c62828;border-color:#c62828}.button-container-right{display:flex;justify-content:flex-end;width:100%;margin-top:14px}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#0009;display:flex;justify-content:center;align-items:center;z-index:9999;animation:fadeIn .2s ease-out;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.crop-modal-content{background:#fff;width:90%;max-width:500px;border-radius:20px;padding:20px;display:flex;flex-direction:column;gap:20px}.crop-title{margin:0;color:#333;text-align:center}.crop-container{position:relative;width:100%;height:300px;border-radius:12px;overflow:hidden;background-color:#333}.zoom-slider-container{display:flex;align-items:center;gap:10px;justify-content:center;color:#666;font-weight:700}.zoom-range{width:80%;accent-color:#f2c94c;cursor:pointer}.delete-modal-content{background:#fff;padding:30px;border-radius:20px;width:90%;max-width:400px;text-align:center;box-shadow:0 10px 40px #0003}.warning-icon{font-size:40px;color:#e57373;margin-bottom:15px}.delete-modal-content h3{margin:0 0 10px;color:#333}.delete-modal-content p{color:#666;margin-bottom:25px;line-height:1.5;font-size:15px}.modal-actions{display:flex;justify-content:center;gap:15px}.modal-btn{padding:10px 20px;border:none;border-radius:25px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:8px;transition:transform .1s;font-size:14px}.modal-btn:hover{transform:translateY(-2px)}.modal-btn:active{transform:translateY(0)}.modal-btn:focus{outline:none}.modal-btn.cancel{background-color:#f0f0f0;color:#333}.modal-btn.confirm.success{background-color:#f2c94c;color:#fff}.modal-btn.confirm.danger{background-color:#e0245e;color:#fff}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media(max-width:900px){.settings-grid{grid-template-columns:1fr}}@media(max-width:768px){.medical-footer{flex-direction:column;gap:15px;align-items:flex-start}.medical-footer button{width:100%}}
