body{margin:0;padding:0;background-color:#102060!important;font-family:IBM Plex Sans Thai,sans-serif!important}html{margin:0;padding:0}*{box-sizing:border-box;font-family:IBM Plex Sans Thai,sans-serif!important}a,a:hover,a:visited,a:active,a:focus{text-decoration:none!important}.logo-text,span.logo-text,.logo-text *{color:#fff!important;font-family:Kalam,cursive!important;font-weight:700!important}.logo-text:hover,.logo-text:visited,.logo-text:active,.logo-text:focus{color:#fff!important}a .logo-text,a span.logo-text{font-family:Kalam,cursive!important;font-weight:700!important}.navbar{z-index:1000;background-color:#000040;border-bottom:3px solid #ffc000;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0;--bs-navbar-padding-x:.25rem!important;--bs-navbar-padding-y:.25rem!important;padding:1.5rem 3rem!important}.logo-text{margin:0;display:inline-block;color:#fff!important;font-family:Kalam,cursive!important;font-size:1.5rem!important;font-weight:700!important;text-decoration:none!important}.logo-text:hover{color:#fff!important;text-decoration:none!important}span.logo-text{font-family:Kalam,cursive!important;font-weight:700!important}.page-name-text{margin-left:.3rem;font-size:1.3rem;font-weight:700;color:#ffd54b!important;font-family:IBM Plex Sans Thai,sans-serif!important}.navbar-menu{align-items:center;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.navbar-menu li{margin:0}.navbar-menu a{border-radius:6px;padding:.75rem 1.5rem;font-size:1.1rem;font-weight:500;text-decoration:none;transition:all .3s;color:#fff!important}.navbar-menu a:visited,.navbar-menu a:active,.navbar-menu a:focus{color:#fff!important}.navbar-menu a:hover{color:#fff!important;background-color:#87ceeb!important}.hamburger{cursor:pointer;background:0 0;border:none;flex-direction:column;padding:0;display:none}.hamburger span{background-color:#fff;width:25px;height:3px;margin:3px 0;transition:all .3s}.navbar-menu-mobile{background-color:#000040;border-bottom:3px solid #ffc000;border-left:3px solid #ffc000;width:200px;padding:.5rem 0;display:none;position:absolute;top:100%;right:0;box-shadow:0 4px 8px #0000004d}.navbar-menu-mobile.open{flex-direction:column;display:flex}.navbar-menu-mobile a{border-bottom:1px solid #ffc00033;margin:0;padding:1rem 1.5rem;font-size:1.1rem;font-weight:500;text-decoration:none;transition:all .3s;display:block;color:#fff!important}.navbar-menu-mobile a:last-child{border-bottom:none}.navbar-menu-mobile a:visited,.navbar-menu-mobile a:active,.navbar-menu-mobile a:focus{color:#fff!important}.navbar-menu-mobile a:hover{color:#fff!important;background-color:#87ceeb!important}.page-container{background-color:#102060;flex-direction:column;min-height:100vh;margin:0;padding:0;display:flex}main{flex-direction:column;flex:1;display:flex}.footer{color:#fff;text-align:center;background-color:#000040;border-top:3px solid #ffc000;margin:0;padding:1rem 0}.footer-text{margin:0;font-size:.9rem}:root{--primary-blue:#102060;--dark-blue:#000040;--gold:#ffc000;--cyan:#87ceeb;--white:#fff}.content-container{flex:1;grid-template-columns:30% 70%;gap:2rem;max-width:1400px;margin:0 auto;padding:2rem 1rem;display:grid}.birthday-section{background-color:#fff;border-radius:15px;padding:2rem;box-shadow:0 4px 15px #ffc0004d}.section-title{color:#004;text-align:center;border-bottom:3px solid #ffc000;margin-bottom:1rem;padding-bottom:.5rem;font-size:1.8rem;font-weight:700}.calendar-table{border-collapse:collapse;width:100%;margin-top:1rem}.calendar-table th{color:#fff;text-align:center;background-color:#004;padding:.75rem .25rem;font-size:.9rem;font-weight:600}.calendar-table td{vertical-align:top;border:1px solid #ddd;width:14.28%;height:90px;padding:.5rem}.calendar-table td.today{background-color:#fffacd}.calendar-day-number{color:#333;margin-bottom:.3rem;font-size:1rem;font-weight:600}.calendar-chef-name{color:#000;background-color:#87ceeb;border-radius:4px;margin-bottom:.2rem;padding:.2rem .3rem;font-size:.7rem;font-weight:600;text-decoration:none;transition:all .2s;display:block}.calendar-chef-name:hover{color:#fff;background-color:#004;transform:scale(1.05)}.calendar-empty{background-color:#f8f8f8}.left-column{flex-direction:column;gap:1.5rem;display:flex}.updates-wrapper{background-color:#fff;border-radius:15px;padding:2rem;box-shadow:0 4px 15px #ffc0004d}.updates-title{color:#004;text-align:center;border-bottom:3px solid #ffc000;margin-bottom:1rem;padding-bottom:.5rem;font-size:1.8rem;font-weight:700}.updates-placeholder{color:#666;text-align:center;padding:2rem;font-size:1.2rem;font-style:italic}.events-section{flex-direction:column;gap:1.5rem;display:flex}.events-wrapper{background-color:#fff;border-radius:15px;padding:2rem;box-shadow:0 4px 15px #ffc0004d}.events-title{color:#004;text-align:center;border-bottom:3px solid #ffc000;margin-bottom:1.5rem;padding-bottom:.5rem;font-size:1.8rem;font-weight:700}.events-list{margin:0;padding-left:1.5rem;list-style-type:disc}.event-item{margin-bottom:2rem}.event-item:last-child{margin-bottom:0}.event-link{cursor:pointer;display:block;text-decoration:none!important}.event-link:hover,.event-link:visited,.event-link:active,.event-link:focus{text-decoration:none!important}.event-link:hover .event-name{color:#ffc000}.event-name{color:#004;margin:0 0 .5rem;font-size:1.5rem;font-weight:700;transition:color .3s;text-decoration:none!important}.event-description{color:#666;margin:0;font-size:.9rem;line-height:1.5;text-decoration:none!important}.content-wrapper-page{flex:1;justify-content:center;align-items:flex-start;max-width:1200px;margin:2rem auto;padding:0 1rem;display:flex}.content-wrapper{background-color:#fff;border-radius:15px;width:100%;max-width:1200px;padding:2rem;box-shadow:0 4px 15px #ffc0004d}.content-title{color:#004;text-align:center;border-bottom:3px solid #ffc000;margin-bottom:1.5rem;padding-bottom:.5rem;font-size:1.8rem;font-weight:700}.content-section{margin-bottom:2rem}.content-section-heading{color:#004;border-bottom:2px solid #87ceeb;margin-bottom:1rem;padding-bottom:.5rem;font-size:1.8rem;font-weight:600}.content-text{color:#333;margin-bottom:1rem;font-size:1.1rem;line-height:1.8}.content-empty-message{text-align:center;color:#666;padding:2rem;font-size:1.2rem}@media (max-width:800px){.navbar{position:relative;--bs-navbar-padding-x:.25rem!important;--bs-navbar-padding-y:.25rem!important;padding:1rem 2rem!important}.logo-text{font-size:1.3rem!important}.page-name-text{font-size:1rem}.navbar-menu{display:none}.hamburger{display:flex}.content-container{grid-template-columns:1fr;gap:1rem;margin:1rem auto;padding:0 .5rem}.left-column{order:1}.birthday-section{order:2;padding:1rem}.updates-wrapper{padding:1rem}.updates-title{font-size:1.3rem}.updates-placeholder{padding:1rem;font-size:1rem}.section-title{font-size:1.3rem}.calendar-table th{padding:.4rem .1rem;font-size:.7rem}.calendar-table td{height:70px;padding:.3rem .1rem}.calendar-day-number{margin-bottom:.2rem;font-size:.8rem}.calendar-chef-name{padding:.15rem .2rem;font-size:.55rem}.events-wrapper{padding:1rem}.events-title{font-size:1.3rem}.event-name{font-size:1.2rem}.event-description{font-size:.85rem}.content-wrapper{padding:1.5rem}.content-title{margin-bottom:1rem;font-size:1.3rem}.content-section-heading{font-size:1.4rem}.content-text{font-size:1rem}.content-empty-message{padding:1rem;font-size:1rem}}.birthday-container{max-width:1400px;margin:0 auto;padding:0}.date-selector{text-align:center;background-color:#102060;padding:1rem 0}.date-btn{color:#fff;cursor:pointer;background-color:#333;border:1px solid #fff;border-radius:4px;margin:.3rem;padding:.3rem .6rem;font-size:.9rem;transition:all .3s}.date-btn:hover,.date-btn.active{color:#004;background-color:#fff}.current-date{padding-top:.5rem;font-size:.9rem;color:#fff!important}.calendar-section{background-color:#102060;padding:2rem}.calendar-month{background-color:#fff;border-radius:10px;margin-bottom:2rem;padding:1.5rem;box-shadow:0 4px 15px #ffc0004d}.calendar-month-header{text-align:center;color:#000040;border-bottom:2px solid #ffc000;margin-bottom:1rem;padding-bottom:.5rem;font-size:1.8rem;font-weight:700}.calendar-month .calendar-table th{color:#fff;text-align:center;background-color:#000040;padding:.75rem;font-size:1rem;font-weight:600}.calendar-month .calendar-table td{vertical-align:top;border:1px solid #ddd;width:14.28%;height:100px;padding:1rem;position:relative}.calendar-month .calendar-table td.today{background-color:#fffacd}.calendar-month .calendar-day-number{color:#333;margin-bottom:.5rem;font-size:1.2rem;font-weight:600}.calendar-month .calendar-chef-name{color:#000;cursor:pointer;background-color:#87ceeb;border-radius:4px;margin-bottom:.25rem;padding:.25rem .5rem;font-size:.85rem;font-weight:600;text-decoration:none;transition:all .2s;display:block}.calendar-month .calendar-chef-name:hover{color:#fff;background-color:#000040;transform:scale(1.05)}.calendar-month .calendar-empty{background-color:#f8f8f8}@media (max-width:800px){.date-selector{padding:.5rem .25rem}.date-btn{margin:.2rem;padding:.25rem .4rem;font-size:.7rem}.current-date{padding-top:.5rem;font-size:.7rem}.calendar-section{padding:.5rem .25rem}.calendar-month{margin-bottom:1rem;padding:.5rem .25rem}.calendar-month-header{margin-bottom:.5rem;font-size:1.2rem}.calendar-month .calendar-table th{padding:.3rem .1rem;font-size:.65rem}.calendar-month .calendar-table td{height:80px;padding:.3rem .1rem}.calendar-month .calendar-day-number{margin-bottom:.2rem;font-size:.8rem}.calendar-month .calendar-chef-name{margin-bottom:.15rem;padding:.15rem .25rem;font-size:.55rem}}.data-update-container{background-color:#102060;min-height:100vh;padding:3rem 1rem}.data-update-content{max-width:900px;margin:0 auto}.data-update-title{color:#fff;text-align:center;margin-bottom:1rem;font-size:3rem;font-weight:700}.data-update-subtitle{color:#fff;text-align:center;margin-bottom:2rem;font-size:1.2rem}.data-update-links{text-align:center;margin-bottom:2rem}.data-update-links .btn{min-width:200px;margin:0 .5rem;font-size:1rem;font-weight:600}.data-update-table-wrapper{background-color:#fff;border-radius:10px;margin-bottom:1.5rem;padding:1.5rem;box-shadow:0 4px 15px #0003}.data-update-status-wrapper{background-color:#fff;border-radius:10px;padding:1.5rem;box-shadow:0 4px 15px #0003}.data-update-status-title{color:#333;margin-bottom:1rem;font-size:1.5rem;font-weight:700}@media (max-width:800px){.data-update-container{padding:2rem .5rem}.data-update-title{font-size:2rem}.data-update-subtitle{font-size:1rem}.data-update-links .btn{min-width:150px;margin:.25rem;font-size:.9rem}.data-update-table-wrapper,.data-update-status-wrapper{padding:1rem}.data-update-status-title{font-size:1.2rem}}
