:root{color-scheme:light;--ink:#183141;--muted:#657781;--border:#dfe8e6;--teal:#147c72;--teal-dark:#0c5f58;--mint:#e9f5f1;--canvas:#f8faf9;--white:#fff;--shadow:0 16px 45px rgba(25,58,66,.07)}
*{box-sizing:border-box}body{margin:0;background:var(--canvas);font-family:"Source Sans 3",Arial,sans-serif;color:var(--ink);font-size:16px;line-height:1.5}
h1,h2,h3,strong,.brand{font-family:"DM Sans",sans-serif}h1{font-size:clamp(30px,5vw,45px);line-height:1.16;letter-spacing:-.04em;margin:12px 0}h2{font-size:19px;letter-spacing:-.025em;margin:2px 0 0}p{margin:0}.shell{max-width:940px;padding:32px 24px;margin:0 auto}.brand{display:flex;align-items:center;gap:11px;font-size:19px;letter-spacing:-.06em}.brand small{display:block;font:600 9px "DM Sans",sans-serif;letter-spacing:.2em;color:var(--muted)}.brand-mark{height:39px;width:39px;border:2px solid var(--teal);color:var(--teal);border-radius:50%;display:grid;place-items:center;font:600 28px "DM Sans",sans-serif;line-height:1}.hero{padding:62px 0 30px}.eyebrow,.step{text-transform:uppercase;letter-spacing:.16em;color:var(--teal);font:700 11px "DM Sans",sans-serif}.hero>p{font-size:18px;color:var(--muted);max-width:620px}.chips{display:flex;flex-wrap:wrap;gap:9px;margin-top:21px}.chips span{background:var(--mint);padding:5px 12px;border-radius:30px;color:var(--teal-dark);font-size:13px}.card{background:var(--white);border:1px solid var(--border);border-radius:18px;padding:29px;box-shadow:var(--shadow)}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:19px}.timezone,.muted{color:var(--muted);font-size:14px}.date-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px}.date-button,.time-button{border:1px solid var(--border);background:white;color:var(--ink);cursor:pointer;padding:14px 10px;border-radius:10px;font:600 14px "DM Sans",sans-serif;transition:.15s ease}.date-button:hover,.time-button:hover{border-color:var(--teal)}button.selected{background:var(--mint);border-color:var(--teal);color:var(--teal-dark)}.time-grid{display:flex;flex-wrap:wrap;gap:9px;margin-top:17px}.time-button{min-width:110px;padding:11px 15px}.time-grid:empty:after{content:"Choose a date to see its available times.";color:var(--muted)}hr{border:0;border-top:1px solid var(--border);margin:30px 0}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}label{display:block;font:600 13px "DM Sans",sans-serif}input{display:block;width:100%;margin-top:7px;background:white;border:1px solid #cddbd8;border-radius:9px;padding:12px;font:16px "Source Sans 3",sans-serif;color:var(--ink)}input:focus,button:focus-visible{outline:3px solid #9ed5ca;outline-offset:2px}.compact{margin:14px 0}.primary{width:100%;margin-top:14px;background:var(--teal);border:0;border-radius:9px;padding:14px 16px;color:white;cursor:pointer;font:600 15px "DM Sans",sans-serif;display:flex;align-items:center;justify-content:space-between}.primary:hover{background:var(--teal-dark)}.primary:disabled{opacity:.5;cursor:not-allowed}.notice{border-radius:12px;padding:17px 20px;margin-top:18px;background:var(--mint);color:var(--teal-dark)}.notice.error{background:#fceeed;color:#8b3a35}footer{display:flex;justify-content:space-between;gap:12px;margin-top:32px;color:var(--muted);font-size:12px}.admin-shell{max-width:1060px}.admin-nav{display:flex;align-items:center;justify-content:space-between}.admin-nav a{color:var(--teal)}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.admin-panel{background:white;border:1px solid var(--border);border-radius:15px;padding:23px}.admin-panel h2{margin-bottom:18px}.admin-panel button{width:auto;min-width:150px}.admin-panel select{width:100%;padding:11px;border-radius:8px;border:1px solid var(--border)}.stack{display:grid;gap:12px}.row{display:flex;align-items:center;gap:10px}.row>*{flex:1}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:left;padding:10px;border-bottom:1px solid var(--border)}th{color:var(--muted)}.status{font-weight:600;color:var(--teal)}.inline-actions{display:flex;gap:8px;flex-wrap:wrap}.inline-actions button{width:auto}.subtle-btn{padding:8px 12px;border:1px solid var(--border);background:white;border-radius:8px;cursor:pointer;color:var(--ink)}
@media(max-width:660px){.shell{padding:22px 16px}.hero{padding:45px 0 23px}.card{padding:19px}.field-grid,.admin-grid{grid-template-columns:1fr}.section-head{align-items:flex-start}.timezone{font-size:11px}.date-grid{grid-template-columns:repeat(2,1fr)}footer{display:block}footer span{display:block;margin-top:4px}table{display:block;overflow-x:auto;white-space:nowrap}}

[hidden]{display:none!important}
