/*! tailwindcss v4.1.12 | MIT License | https://tailwindcss.com */@layer properties{@supports ((-webkit-hyphens:none) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial}}}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.z-10{z-index:10}.z-50{z-index:50}.float-left{float:left}.container{width:100%}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-screen{height:100vh}.min-h-screen{min-height:100vh}.w-full{width:100%}.max-w-\[120px\]{max-width:120px}.max-w-\[160px\]{max-width:160px}.max-w-\[300px\]{max-width:300px}.min-w-\[900px\]{min-width:900px}.shrink{flex-shrink:1}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.cursor-pointer{cursor:pointer}.resize{resize:both}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.rounded-full{border-radius:3.40282e+38px}.border{border-style:var(--tw-border-style);border-width:1px}.border-4{border-style:var(--tw-border-style);border-width:4px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-t-transparent{border-top-color:#0000}.text-center{text-align:center}.text-left{text-align:left}.break-all{word-break:break-all}.text-ellipsis{text-overflow:ellipsis}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.uppercase{text-transform:uppercase}.italic{font-style:italic}.line-through{text-decoration-line:line-through}.overline{text-decoration-line:overline}.underline{text-decoration-line:underline}.opacity-25{opacity:.25}.opacity-75{opacity:.75}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,backdrop-filter,display,visibility,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition\!{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,backdrop-filter,display,visibility,content-visibility,overlay,pointer-events!important;transition-timing-function:var(--tw-ease,ease)!important;transition-duration:var(--tw-duration,0s)!important}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.duration-200{--tw-duration:.2s;transition-duration:.2s}:root{--vegetable-primary:#6b9080!important;--vegetable-secondary:#f4a261!important;--vegetable-background:#fefcf3!important;--vegetable-card:#fff!important;--vegetable-accent:#a8dadc!important;--vegetable-warning:#e76f51!important;--vegetable-text:#457b9d!important;--vegetable-light-text:#8cbda8!important;--vegetable-success:#7fb069!important;--vegetable-past:#f5f5f5!important;--vegetable-past-border:#9e9e9e!important;--vegetable-past-text:#757575!important}*{box-sizing:border-box;margin:0;padding:0}body,html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--vegetable-background);max-width:100vw;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;overflow-x:hidden}body{color:var(--vegetable-text)}.globalNav{z-index:1000;background-color:var(--vegetable-primary);color:#fff;justify-content:center;width:100%;padding:1rem;display:flex;position:fixed;top:0;left:0;box-shadow:0 4px 6px -1px #0000001a}.navContainer{justify-content:space-between;align-items:center;gap:1rem;width:100%;max-width:1200px;padding:0 1rem;display:flex}.navTitle{letter-spacing:.05em;font-size:1.25rem;font-weight:700}.headerBtn,.navButtons{gap:.5rem;display:flex}.headerBtn{color:#fff;cursor:pointer;background-color:var(--vegetable-secondary);border:none;border-radius:1rem;align-items:center;min-width:56px;min-height:56px;padding:.75rem 1rem;font-size:1rem;font-weight:700;text-decoration:none;transition:all .2s;box-shadow:0 2px 4px #0000001a}.headerBtn:hover{transform:scale(1.05)}.headerBtn:focus{outline-offset:2px;outline:4px solid #fff}.headerBtn:disabled{opacity:.6;cursor:not-allowed}.headerBtn.active{background-color:var(--vegetable-warning)}.headerBtn.confirm{background-color:var(--vegetable-accent)}.headerBtn.confirmed{background-color:var(--vegetable-success);opacity:.8}.pageIndex{background-color:var(--vegetable-background);min-height:100vh;padding:6rem 1rem 1.5rem}.mainContent{flex-direction:column;gap:1.5rem;max-width:96rem;margin:0 auto;display:flex}.pageAdmin,.pageIndex,.pageLogin{all:unset}.loadingContainer{text-align:center;padding:2rem}.loadingIcon{margin-bottom:1rem;font-size:5rem;display:block}.loadingText{color:var(--vegetable-text);font-size:1.875rem;font-weight:700}.scheduleSection{margin-bottom:1.5rem}.sectionHeader{align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.sectionIcon{font-size:2.5rem}.sectionTitle{color:var(--vegetable-text);margin:0;font-size:1.5rem;font-weight:700}.scheduleList{flex-direction:column;gap:.75rem;display:flex}.scheduleEmpty{text-align:center;border:4px solid var(--vegetable-accent);background-color:var(--vegetable-card);color:var(--vegetable-text);border-radius:1rem;padding:1rem;box-shadow:0 10px 15px -3px #0000001a}.emptyIcon{margin-bottom:.5rem;font-size:2.5rem;display:block}.emptyTitle{margin:0 0 .25rem;font-size:1.25rem;font-weight:700}.emptySubtitle{color:var(--vegetable-light-text);margin:0;font-size:.875rem}.scheduleItem{background-color:var(--vegetable-card);border:2px solid #a8dadc40;border-radius:1rem;padding:1rem 1.5rem;transition:all .2s;position:relative;box-shadow:0 10px 15px -3px #0000001a}.scheduleItem.compact{padding:.75rem 1rem}.scheduleItem.past{background-color:var(--vegetable-past);opacity:.7;border-color:#e0e0e0}.pastBadge{background-color:var(--vegetable-past-border);color:#fff;z-index:10;border-radius:9999px;padding:.375rem .75rem;font-size:.875rem;font-weight:700;position:absolute;top:-.5rem;left:-.5rem;box-shadow:0 4px 8px #0003}.scheduleContent{justify-content:space-between}.scheduleContent,.scheduleInfo{align-items:center;display:flex}.scheduleInfo{gap:.75rem}.scheduleIcon{flex-shrink:0;font-size:2rem}.scheduleIcon.compact{font-size:1.5rem}.scheduleDetails{flex-direction:column;flex:1;gap:.25rem;min-width:0;display:flex}.scheduleTime{color:var(--vegetable-text);white-space:nowrap;flex-shrink:0;margin-bottom:0;font-size:1.125rem;font-weight:700}.scheduleTime.compact{font-size:1rem}.scheduleItem.past .scheduleTime{color:var(--vegetable-past-text)}.scheduleTitle{word-break:break-words;white-space:normal;overflow-wrap:break-word;color:var(--vegetable-text);-webkit-line-clamp:3;-webkit-box-orient:vertical;flex:1;max-height:3.6em;margin:0;font-size:1.125rem;line-height:1.4;display:-webkit-box;overflow:hidden}.scheduleTitle.compact{font-size:1rem}.scheduleItem.past .scheduleTitle{color:var(--vegetable-past-text)}.photoButton{cursor:pointer;background:0 0;border:none;flex-shrink:0;font-size:2rem;transition:transform .2s}.photoButton.compact{font-size:1.5rem}.photoButton:hover{transform:scale(1.1)}.scrollPrompt{text-align:center;padding:.5rem}.scrollMessage{background-color:var(--vegetable-accent);color:#fff;border-radius:9999px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:1.125rem;font-weight:700;animation:bounce 1s infinite;display:inline-flex}.historySection{text-align:center;background-color:var(--vegetable-card);border:4px solid #a8dadc40;border-radius:1rem;padding:1rem;box-shadow:0 10px 15px -3px #0000001a}.historyHeader{justify-content:center;align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.historyIcon{font-size:1.875rem}.historyTitle{color:var(--vegetable-text);margin:0;font-size:1.25rem;font-weight:700}.historyButton{color:#fff;background-color:var(--vegetable-primary);cursor:pointer;border:none;border-radius:1rem;justify-content:center;align-items:center;gap:.5rem;margin:0 auto;padding:.75rem 1.5rem;font-size:1.125rem;font-weight:700;transition:all .2s;display:flex;box-shadow:0 10px 15px -3px #0000001a}.historyButton:hover{transform:scale(1.05)}.historyButtonIcon{font-size:1.5rem}.modalOverlay{z-index:50;background-color:#0009;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.historyModal{border:4px solid var(--vegetable-accent);background-color:var(--vegetable-card);border-radius:1.5rem;width:100%;max-width:48rem;max-height:80vh;padding:2rem;position:relative;overflow-y:auto;box-shadow:0 25px 50px -12px #00000040}.modalHeader{justify-content:center;margin-bottom:2rem}.modalHeader,.modalTitle{align-items:center;display:flex}.modalTitle{gap:.75rem}.modalTitle h3{color:var(--vegetable-text);margin:0;font-size:1.875rem;font-weight:700}.modalIcon{font-size:2.5rem}.historyTableContainer{overflow-x:auto}.historyTable{border-collapse:collapse;width:100%;font-size:1.125rem}.historyTable thead tr{background-color:var(--vegetable-accent);color:#fff}.historyTable th{text-align:left;padding:1rem 1.5rem;font-weight:700}.historyTable th:first-child{border-top-left-radius:.75rem}.historyTable th:last-child{border-top-right-radius:.75rem}.historyTable th:nth-child(3),.historyTable th:nth-child(4){text-align:center}.historyTable td{color:var(--vegetable-text);padding:1rem 1.5rem}.historyTable .evenRow{background-color:#f9fafb}.checkCell{text-align:center;font-size:1.875rem}.noHistory{text-align:center;color:var(--vegetable-light-text);padding:2rem}.modalFooter{text-align:center;margin-top:2rem}.closeButton{color:#fff;background-color:var(--vegetable-secondary);cursor:pointer;border:none;border-radius:1rem;padding:.75rem 2.5rem;font-size:1.25rem;font-weight:700;transition:all .2s}.closeButton:hover{transform:scale(1.05)}.photoModal{border:4px solid var(--vegetable-accent);background-color:var(--vegetable-card);border-radius:1.5rem;width:100%;max-width:32rem;padding:1.5rem;position:relative;box-shadow:0 25px 50px -12px #00000040}.photoHeader{justify-content:center;margin-bottom:1rem}.photoHeader,.photoTitle{align-items:center;display:flex}.photoTitle{gap:.75rem}.photoTitle h3{color:var(--vegetable-text);margin:0;font-size:1.5rem;font-weight:700}.photoIcon{font-size:1.875rem}.photoImage{background-color:var(--vegetable-background);border-radius:1rem;justify-content:center;align-items:center;width:100%;height:12rem;margin-bottom:1.5rem;font-size:4rem;display:flex}.photoFooter{text-align:center}.photoCloseButton{color:#fff;background-color:var(--vegetable-secondary);cursor:pointer;border:none;border-radius:1rem;padding:.75rem 2rem;font-size:1.25rem;font-weight:700;transition:all .2s}.photoCloseButton:hover{transform:scale(1.05)}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}@media (max-width:767px){.pageIndex{padding-top:5rem;padding-left:.5rem;padding-right:.5rem}.mainContent{gap:1rem}.scheduleTime{font-size:1rem}.scheduleTime.compact{font-size:.875rem}.scheduleTitle{font-size:1rem}.scheduleTitle.compact{font-size:.875rem}.sectionTitle{font-size:1.25rem}.sectionIcon{font-size:2rem}.scheduleItem{padding:.75rem 1rem}.scheduleItem.compact{padding:.5rem .75rem}.historyModal{border-width:2px!important;border-radius:1rem!important;width:95%!important;max-width:none!important;max-height:90vh!important;margin:.5rem!important;padding:1.5rem 1rem!important}.modalHeader{margin-bottom:1.5rem!important}.modalTitle h3{font-size:1.5rem!important}.modalIcon{font-size:2rem!important}.historyTableContainer{margin:0 -.5rem!important;overflow-x:visible!important}.historyTable{width:100%!important;font-size:.95rem!important}.historyTable th{white-space:nowrap!important;padding:.875rem .5rem!important;font-size:.9rem!important}.historyTable td{vertical-align:middle!important;padding:1rem .5rem!important;font-size:.95rem!important}.checkCell{padding:.75rem .25rem!important;font-size:1.5rem!important}.closeButton{width:100%!important;max-width:280px!important;padding:1rem 2.5rem!important;font-size:1.125rem!important}.modalFooter{border-top:1px solid #e5e5e5!important;margin-top:1.5rem!important;padding-top:1rem!important}.navTitle{font-size:1.125rem!important}.headerBtn{min-width:48px!important;min-height:48px!important;padding:.625rem .875rem!important;font-size:.875rem!important}.navButtons{gap:.375rem!important}}@media (min-width:768px){.navTitle{font-size:1.5rem}.headerBtn{padding:1rem 1.5rem;font-size:1.125rem}.sectionTitle{font-size:1.75rem}.sectionIcon{font-size:3rem}.navContainer{gap:1rem}.pageIndex{padding-top:6rem}.historyModal{max-width:56rem!important;padding:2.5rem!important}.historyTable{font-size:1.125rem!important}.historyTable td,.historyTable th{padding:1.25rem 1.5rem!important}}@media (min-width:768px) and (max-width:1023px){.historyModal{width:90%!important;max-width:48rem!important;padding:2rem!important}.historyTable{font-size:1rem!important}.historyTable td,.historyTable th{padding:1rem 1.25rem!important}}.admin-header{z-index:1000;color:#fff;background:#4a7352;flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1.25rem;font-size:1rem;display:flex;position:fixed;top:0;left:0;right:0;box-shadow:0 4px 6px -1px #0003}.admin-header-left{align-items:center;font-size:1.125rem;font-weight:700;display:flex}.admin-logo-icon{margin-right:.5rem;font-size:1.5rem}.admin-header-center{flex-wrap:nowrap;flex-grow:1;justify-content:center;gap:.75rem}.admin-header-center,.admin-header-right{align-items:center;display:flex}.admin-logout-button,.admin-nav-button{cursor:pointer;border-radius:.5rem;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.95rem;font-weight:600;text-decoration:none;transition:all .15s;display:flex;box-shadow:0 2px 4px #00000014}.admin-nav-button{color:#4a7352;background:#fff;border:1px solid #d1d5d8}.admin-nav-button:hover{background:#e8ebe9;transform:scale(1.05)}.admin-nav-button.active{background:#cfe5d4;border-color:#b5d0bb}.admin-logout-button{color:#fff;background:#e75480;border:none}.admin-logout-button:hover{background:#c13c67;transform:scale(1.05)}.admin-icon{font-size:1.125rem}@media (max-width:600px){.admin-header{flex-direction:column;align-items:flex-start}.admin-header-center{justify-content:flex-start}.admin-logout-button,.admin-nav-button{padding:.45rem .875rem;font-size:.875rem}}:root{--beige-bg:#f8f5f1;--card-bg:#fff;--card-shadow:0 4px 24px #00000012;--blue-main:#2563eb;--blue-hover:#174ea6;--input-border:#d1d5db;--input-focus:#2563eb33;--error:#e11d48}.user-header{z-index:1000;background-color:var(--vegetable-primary);color:#fff;justify-content:center;width:100%;padding:1rem;display:flex;position:fixed;top:0;left:0;box-shadow:0 4px 6px -1px #0000001a}.user-nav-container{justify-content:space-between;align-items:center;gap:1rem;width:100%;max-width:1200px;padding:0 1rem;display:flex}.user-nav-title{letter-spacing:.05em;color:#fff;font-size:1.25rem;font-weight:700}.user-header-btn,.user-nav-buttons{gap:.5rem;display:flex}.user-header-btn{color:#fff;cursor:pointer;background-color:var(--vegetable-secondary);border:none;border-radius:1rem;align-items:center;min-width:56px;min-height:56px;padding:.75rem 1rem;font-size:1rem;font-weight:700;transition:all .2s;box-shadow:0 2px 4px #0000001a}.user-header-btn:hover{transform:scale(1.05)}.user-header-btn.active{background-color:var(--vegetable-warning)}.user-header-btn.confirm{background-color:var(--vegetable-accent)}.user-header-btn.confirmed{background-color:var(--vegetable-success);opacity:.8}.user-main{padding-top:5rem}.admin-main,.user-main{background-color:var(--vegetable-background);min-height:100vh}.admin-main{padding-top:8rem}.default-main{background-color:var(--vegetable-background);min-height:100vh;padding-top:2rem}.globalNav{display:none!important}.pageIndex{padding-top:0!important}@media (max-width:768px){.user-nav-title{font-size:1.125rem}.user-header-btn{min-width:48px;min-height:48px;padding:.625rem .875rem;font-size:.875rem}.user-nav-buttons{gap:.375rem}.user-main{padding-top:4.5rem}.admin-main{padding-top:7rem}}@media (max-width:480px){.user-nav-title{font-size:1rem;line-height:1.3}.user-header-btn{min-width:48px;min-height:48px;padding:.625rem .875rem;font-size:.875rem}.user-nav-buttons{gap:.375rem}.user-main{padding-top:4.5rem}.admin-main{padding-top:7rem}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}