.admin-booking-slot{color:#273842;text-align:left;text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.admin-booking-slot.pending{background:#fff4df;border-left:4px solid #d39a45}.admin-booking-slot.approved{background:#e0f0ea;border-left:4px solid #4c8772}.admin-booking-slot.email_verification_pending{background:#eef1f0;border-left:4px solid #8d9aa0}:root{color:#273842;font-synthesis:none;background:#f5f2ec;font-family:Inter,ui-sans-serif,system-ui,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,textarea{font:inherit}button{cursor:pointer}.page{min-height:100vh;padding:1.5rem clamp(1rem,4vw,4rem) 4rem}.site-header{justify-content:space-between;align-items:center;max-width:1180px;margin:0 auto;display:flex}.brand{color:#273842;letter-spacing:.16em;font-size:1.2rem;font-weight:800;text-decoration:none}.locale-switcher{gap:.2rem;display:flex}.locale-switcher button{color:#708087;background:0 0;border:0;border-radius:999px;padding:.35rem .55rem;font-size:.75rem;font-weight:700}.locale-switcher button.active{color:#fff;background:#273842}.hero{max-width:1180px;margin:clamp(4rem,10vw,8rem) auto 3rem}.eyebrow{color:#8a5c42;letter-spacing:.2em;font-size:.75rem;font-weight:800}h1{max-width:780px;margin:.5rem 0 1rem;font-size:clamp(2.5rem,7vw,5.7rem);line-height:.96}.hero p:not(.eyebrow){color:#65767c;max-width:650px;font-size:1.1rem;line-height:1.6}.calendar-card{background:#fff;border:1px solid #dfe0da;border-radius:1.25rem;max-width:1180px;margin:0 auto;overflow:auto;box-shadow:0 1rem 3rem #27384212}.calendar-toolbar{border-bottom:1px solid #e8e8e3;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;display:flex}.secondary-button,.button{border:0;border-radius:.7rem;padding:.7rem 1rem;font-weight:700}.secondary-button{color:#273842;background:#eef0ed}.secondary-button:disabled{cursor:not-allowed;opacity:.45}.button{color:#fff;background:#273842}.button:disabled{cursor:not-allowed;opacity:.5}.calendar{grid-template-columns:4.5rem repeat(7,minmax(7rem,1fr));min-width:760px;display:grid}.time-column{grid-column:1}.day-heading{color:#65767c;text-align:center;text-transform:uppercase;border-bottom:1px solid #e8e8e3;padding:.9rem .35rem;font-size:.78rem;font-weight:800}.time-label{color:#91a0a4;text-align:right;border-bottom:1px solid #eef0ed;border-right:1px solid #e8e8e3;padding:.65rem .5rem;font-size:.75rem}.slot{color:#fff;background:#fff;border:1px solid #eef0ed;border-top:0;border-left:0;min-height:3.4rem;font-size:.65rem}.slot.available:hover,.slot.selected{background:#d6e2df}.slot.disabled{cursor:not-allowed;background:#f7f7f4}.slot.occupied{color:#7d8988;background:#e2e4e0}.loading,.inline-error{text-align:center;padding:3rem}.inline-error p,.form-error{color:#a23d32}.modal-backdrop{z-index:10;background:#17252acc;place-items:center;padding:1rem;display:grid;position:fixed;inset:0;overflow-y:auto}.modal{background:#fff;border-radius:1.2rem;width:min(620px,100%);max-height:calc(100vh - 2rem);padding:clamp(1.25rem,4vw,2rem);overflow-y:auto;box-shadow:0 1rem 4rem #0004}.modal h2,.modal h3{margin-top:.35rem}.selection-summary,.form-grid{grid-template-columns:repeat(3,1fr);gap:.75rem;display:grid}.form-grid{grid-template-columns:repeat(2,1fr)}.field,.selection-summary label{color:#65767c;gap:.35rem;margin-top:.8rem;font-size:.78rem;font-weight:700;display:grid}.field input,.field textarea,.selection-summary input{color:#273842;background:#fafaf7;border:1px solid #dfe0da;border-radius:.55rem;width:100%;padding:.7rem}.field textarea{resize:vertical;min-height:5rem}.checkbox-field{color:#65767c;align-items:flex-start;gap:.6rem;margin:1.2rem 0;font-size:.88rem;line-height:1.5;display:flex}.checkbox-field a{color:#8a5c42}.modal-actions{justify-content:flex-end;gap:.7rem;margin-top:1.2rem;display:flex}.state-page,.legal-page{place-items:center;display:grid}.state-card,.legal-card{background:#fff;border-radius:1.2rem;width:min(680px,100%);padding:clamp(1.5rem,5vw,3rem);box-shadow:0 1rem 3rem #27384212}.state-card p:not(.eyebrow),.legal-card p:not(.eyebrow){color:#65767c;line-height:1.6}.state-card .button{margin-top:1rem;text-decoration:none;display:inline-block}@media (width<=640px){.calendar-toolbar{flex-direction:column;align-items:stretch}.calendar-toolbar strong{text-align:center;order:-1}.selection-summary,.form-grid{grid-template-columns:1fr}}
