:root{--brand:#e87524;--ink:#27343a;--muted:#6d797f;--line:#dfe5e7;--paper:#fff;color:var(--ink);background:#edf1f2;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,select,textarea{font:inherit}main{width:min(100%,680px);min-height:100vh;margin:0 auto;padding:16px 14px 30px}.brand{align-items:center;gap:11px;padding:8px 4px 18px;display:flex}.brand img,.brand-mark{object-fit:contain;background:var(--paper);border-radius:12px;width:42px;height:42px;box-shadow:0 2px 12px #24343b17}.brand-mark{background:var(--ink);color:#fff;letter-spacing:-.05em;place-items:center;font-weight:800;display:grid}.brand div{gap:2px;display:grid}.brand strong{font-size:15px}.brand small,footer{color:var(--muted);font-size:12px}.card{background:var(--paper);border:1px solid #fff;border-radius:18px;padding:20px;box-shadow:0 10px 32px #25343b10}.intro{background:linear-gradient(135deg, #fff 45%, color-mix(in srgb, var(--brand) 9%, white));margin-bottom:12px}h1{letter-spacing:-.035em;margin:4px 0 7px;font-size:clamp(24px,7vw,34px);line-height:1.08}h2{margin:0;font-size:16px}p{line-height:1.5}.eyebrow{color:var(--brand);text-transform:uppercase;letter-spacing:.09em;margin:0;font-size:11px;font-weight:800}.form fieldset{border:0;margin:0;padding:0}.step{border-bottom:1px solid var(--line);gap:12px;margin-bottom:18px;padding:2px 0 20px;display:grid}.step h2{align-items:center;gap:8px;display:flex}.step h2 span{background:color-mix(in srgb, var(--brand) 14%, white);width:23px;height:23px;color:var(--brand);border-radius:8px;place-items:center;font-size:11px;display:grid}label{gap:6px;font-size:12px;font-weight:700;display:grid}label small,.consent{color:var(--muted);font-weight:400}input,select,textarea{border:1px solid var(--line);width:100%;min-height:44px;color:var(--ink);background:#fbfcfc;border-radius:10px;outline:none;padding:10px 12px}input:focus,select:focus,textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb, var(--brand) 12%, transparent)}.plate input{letter-spacing:.06em;text-transform:uppercase;font-size:22px;font-weight:800}.grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.check{align-items:center;gap:8px;font-weight:500;display:flex}.check input{width:17px;min-height:17px}.label{margin-bottom:7px;font-size:12px;font-weight:700;display:block}.slots{grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:7px;display:grid}.slots button{border:1px solid var(--line);min-height:38px;color:var(--ink);cursor:pointer;background:#f8fafa;border-radius:9px;font-weight:700}.slots button.chosen{border-color:var(--brand);background:var(--brand);color:#fff}.primary,.danger{cursor:pointer;border:0;border-radius:11px;justify-content:center;align-items:center;width:100%;min-height:48px;padding:10px 14px;font-weight:800;text-decoration:none;display:flex}.primary{background:var(--brand);color:#fff;box-shadow:0 8px 20px color-mix(in srgb, var(--brand) 25%, transparent)}button:disabled{opacity:.55;cursor:wait}.danger{color:#b33e28;background:#fff2ef;margin-top:12px}.alert{color:#993c2b;background:#fff5f3;border:1px solid #efc5bd;border-radius:11px;padding:11px 13px;font-size:13px}.unavailable{gap:10px;display:grid}.success{text-align:center}.success-icon{color:#25834a;background:#e7f7ed;border-radius:18px;place-items:center;width:52px;height:52px;margin:0 auto 14px;font-size:26px;font-weight:800;display:grid}.appointment{background:#f3f6f6;border-radius:12px;gap:4px;margin:16px 0;padding:14px;display:grid}.appointment strong{font-size:17px}.appointment span{color:var(--muted)}.manage details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:18px 0 10px;padding:14px 0}.manage summary{color:var(--brand);cursor:pointer;font-weight:800}.reschedule{gap:12px;padding-top:14px;display:grid}.trap{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}footer{text-align:center;padding:22px 4px 0}@media (width<=480px){main{padding:10px 9px 24px}.card{border-radius:15px;padding:16px}.grid{grid-template-columns:1fr}}
