:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--brand:#0ba653;--brand-hover:#099049;--brand-tint:#e7f6ee;--page:#eceef2;--card:#fff;--border:#e9ebf0;--border-2:#e1e4ea;--gray-300:#c7cdd8;--gray-400:#97a0b0;--gray-500:#6b7280;--gray-600:#4f5867;--gray-800:#2b3240;--gray-900:#131826;--radius-sheet:1.5rem;--radius-box:1.1rem;--radius:.8rem;--tap:2.75rem}*{box-sizing:border-box}html,body{background:var(--page)}body{min-height:100vh;color:var(--gray-900);-webkit-font-smoothing:antialiased;margin:0;font-family:Nunito Sans,system-ui,sans-serif;line-height:1.5}main{max-width:30rem;margin:0 auto;padding:1.5rem 1rem 2.5rem}.sheet{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-sheet);padding:1.9rem 1.6rem 1.6rem;box-shadow:0 1px 2px #1018280a,0 24px 48px -28px #10182838}.bizhead{text-align:center}.biz-name{letter-spacing:.02em;color:var(--gray-900);margin:0;font-family:Cinzel,serif;font-size:1.25rem;font-weight:600}.biz-address{color:var(--gray-500);margin:.2rem 0 0;font-size:.82rem}.pills{flex-wrap:wrap;justify-content:center;gap:.4rem;margin-top:.7rem;display:flex}.pill{background:var(--page);color:var(--gray-500);border-radius:9999px;padding:.22rem .7rem;font-size:.76rem;font-weight:600}.head-divider{background:var(--border);border:0;height:1px;margin:1.1rem 0}.step-title{letter-spacing:-.02em;color:var(--gray-900);text-align:center;margin:0 0 .7rem;font-size:1.6rem;font-weight:800;line-height:1.15}.meta{flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem 1rem;margin-bottom:1rem;display:flex}.meta span{color:var(--gray-500);align-items:center;gap:.4rem;font-size:.85rem;font-weight:600;display:inline-flex}.meta svg{width:16px;height:16px;color:var(--gray-400);flex:none}.intro{color:var(--gray-600);text-align:center;margin:0 0 1.5rem;font-size:.97rem}.notice{background:var(--brand-tint);color:var(--brand);border-radius:var(--radius);align-items:flex-start;gap:.55rem;margin-bottom:1.4rem;padding:.75rem .9rem;font-size:.86rem;font-weight:600;line-height:1.4;display:flex}.notice svg{flex:none;width:17px;height:17px;margin-top:1px}.calendar{border:1px solid var(--border-2);border-radius:var(--radius-box);padding:1.3rem .85rem 1.5rem}.cal-nav{justify-content:space-between;align-items:center;margin-bottom:1.3rem;display:flex}.cal-month{letter-spacing:-.01em;color:var(--gray-900);font-size:1.12rem;font-weight:800}.cal-arrow{appearance:none;width:var(--tap);height:var(--tap);cursor:pointer;color:var(--gray-400);background:0 0;border:0;border-radius:9999px;justify-content:center;align-items:center;transition:background .15s,color .15s;display:flex}.cal-arrow:hover:not([disabled]){background:var(--page);color:var(--brand)}.cal-arrow[disabled]{color:var(--gray-300);cursor:not-allowed}.cal-arrow svg{width:1.25rem;height:1.25rem}.weekdays{grid-template-columns:repeat(7,1fr);margin-bottom:.5rem;display:grid}.weekdays span{text-align:center;letter-spacing:.02em;color:var(--gray-400);font-size:.82rem;font-weight:700}.grid{grid-template-columns:repeat(7,1fr);display:grid}.daywrap{justify-content:center;align-items:center;min-width:0;padding:.3rem 0;display:flex}.day{appearance:none;aspect-ratio:1;width:100%;max-width:2.7rem;color:var(--gray-900);cursor:pointer;background:0 0;border:0;border-radius:9999px;justify-content:center;align-items:center;font-family:inherit;font-size:1.05rem;font-weight:600;transition:background .14s,color .14s,box-shadow .14s;display:flex}.day:hover:not([disabled]):not([aria-pressed=true]){background:var(--page)}.day[disabled]{color:var(--gray-300);cursor:not-allowed}.day.today:not([aria-pressed=true]):not([disabled]){box-shadow:inset 0 0 0 1.5px var(--border-2);color:var(--brand);font-weight:800}.day[aria-pressed=true]{background:var(--brand);color:#fff;font-weight:800;box-shadow:0 6px 14px -6px #0ba65380}.win-label{color:var(--gray-500);margin:1.5rem 0 .7rem;font-size:.85rem;font-weight:700}.windows{grid-template-columns:1fr;gap:.6rem;display:grid}.window{appearance:none;border:1px solid var(--border-2);border-radius:var(--radius);min-height:3.25rem;color:var(--gray-800);cursor:pointer;background:#fff;justify-content:space-between;align-items:center;padding:.75rem 1.1rem;font-family:inherit;font-size:.97rem;font-weight:700;transition:border-color .14s,background .14s,color .14s,box-shadow .14s;display:flex}.window:hover:not([aria-pressed=true]){border-color:var(--gray-300);background:var(--page)}.window .chk{opacity:0;width:20px;height:20px;transition:opacity .14s}.window[aria-pressed=true]{border-color:var(--brand);background:var(--brand);color:#fff;box-shadow:0 6px 14px -6px #0ba65380}.window[aria-pressed=true] .chk{opacity:1}.placeholder{color:var(--gray-400);margin:0;padding:.4rem 0;font-size:.92rem}.confirm-row{margin-top:1.7rem}.confirm{appearance:none;border-radius:var(--radius);background:var(--brand);color:#fff;letter-spacing:.01em;cursor:pointer;border:0;width:100%;min-height:3.5rem;padding:.9rem 1rem;font-family:inherit;font-size:1.05rem;font-weight:800;transition:background .15s,opacity .15s,box-shadow .15s}.confirm:hover:not([disabled]){background:var(--brand-hover);box-shadow:0 12px 26px -12px #0ba65399}.confirm[disabled]{opacity:.4;cursor:not-allowed}.summary{text-align:center;color:var(--gray-500);min-height:1.2em;margin:.9rem 0 0;font-size:.9rem}.summary strong{color:var(--gray-900)}.state{text-align:center;padding:2.75rem 1rem}.state .lead{color:var(--gray-900);margin:0;font-size:1.15rem;font-weight:800}.state p{color:var(--gray-600);margin:.45rem 0 0;font-size:.96rem}.state a{color:var(--brand);font-weight:800;text-decoration:none}.spinner{border:3px solid var(--border);border-top-color:var(--brand);border-radius:9999px;width:36px;height:36px;margin:0 auto 1.1rem;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.confirmed{text-align:center;padding:2rem 0}.check{background:var(--brand-tint);border-radius:9999px;justify-content:center;align-items:center;width:62px;height:62px;margin:0 auto 1.2rem;display:flex}.check svg{width:31px;height:31px;stroke:var(--brand)}.confirmed h3{letter-spacing:-.01em;color:var(--gray-900);margin:0 0 .5rem;font-size:1.35rem;font-weight:800}.confirmed p{color:var(--gray-600);margin:0;font-size:.97rem}.confirmed .det{color:var(--gray-900);font-weight:800}.brandfoot{border-top:1px solid var(--border);text-align:center;margin-top:1.6rem;padding-top:1.5rem}.logo{justify-content:center;align-items:center;width:min(240px,75%);margin:0 auto;display:flex}.logo img{width:100%;height:auto;display:block}.day:focus-visible,.window:focus-visible,.confirm:focus-visible,.cal-arrow:focus-visible{outline:2px solid var(--brand);outline-offset:2px}@media (width<=380px){.sheet{padding:1.5rem 1.1rem 1.3rem}.calendar{padding:1.1rem .55rem 1.2rem}.day{font-size:1rem}}.modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#13182673;justify-content:center;align-items:center;padding:1.25rem;animation:.15s modal-fade;display:flex;position:fixed;inset:0}.modal{background:var(--card);border-radius:var(--radius-box);width:100%;max-width:23rem;padding:1.6rem 1.5rem 1.4rem;animation:.18s modal-rise;box-shadow:0 24px 60px -20px #13182680}.modal-title{color:var(--gray-900);text-align:center;margin:0 0 1.1rem;font-size:1.15rem;font-weight:800}.modal-details{background:var(--brand-tint);border-radius:var(--radius);text-align:center;margin-bottom:1.4rem;padding:1rem 1.1rem}.modal-job{color:var(--gray-900);margin:0 0 .3rem;font-weight:800}.modal-when{color:var(--gray-800);margin:0;font-weight:700}.modal-window{color:var(--gray-600);margin:.15rem 0 0;font-size:.95rem}.modal-actions{gap:.7rem;display:flex}.modal-actions button{appearance:none;border-radius:var(--radius);cursor:pointer;flex:1;min-height:3.1rem;padding:.8rem 1rem;font-family:inherit;font-size:1rem;font-weight:800;transition:background .15s,box-shadow .15s,opacity .15s}.modal-cancel{border:1px solid var(--border-2);background:var(--card);color:var(--gray-600)}.modal-cancel:hover{background:var(--page)}.modal-confirm{background:var(--brand);color:#fff;border:0}.modal-confirm:hover{background:var(--brand-hover);box-shadow:0 12px 26px -12px #0ba65399}.modal-actions button:focus-visible{outline:2px solid var(--brand);outline-offset:2px}@keyframes modal-fade{0%{opacity:0}to{opacity:1}}@keyframes modal-rise{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){*,.spinner{transition:none!important;animation:none!important}}
