:root{--pink:#d8788d;--deep:#9a681f;--pale:#f7dfe5;--ink:#241d20;--gold:#b98a3c;--white:#fff;--line:#ead8dc}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:linear-gradient(180deg,#f8e4e8,#fff 45%);min-height:100vh}.wrap{width:min(760px,100%);margin:auto;padding:18px 14px 70px}.hero{text-align:center;padding:8px 0 16px}.logo{width:150px;height:150px;object-fit:contain;border-radius:50%;filter:drop-shadow(0 8px 18px #d8788d44)}h1{margin:5px 0 3px;font-family:Georgia,serif;font-size:30px}h2{font-family:Georgia,serif}.hero p,.hint{color:#74666a;font-size:14px}.card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:20px;margin:14px 0;box-shadow:0 12px 30px #7a405014}.steps{display:flex;gap:6px;overflow:auto;margin-bottom:18px}.steps span{white-space:nowrap;background:#f7eef0;padding:8px 10px;border-radius:999px;font-size:12px}.steps .on{background:var(--pink);color:white}.field{margin:17px 0}.field>label{display:block;font-weight:750;margin-bottom:8px}input,select{width:100%;border:1px solid #dbcbd0;border-radius:13px;padding:14px;background:white;font-size:16px;outline:none}input:focus,select:focus{border-color:var(--pink);box-shadow:0 0 0 3px #d8788d22}.grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.times{display:flex;flex-wrap:wrap;gap:8px}.timebtn{border:1px solid #d9c6cc;background:#fff;border-radius:12px;padding:10px 13px;font-size:15px;cursor:pointer}.timebtn.selected{background:var(--pink);color:#fff;border-color:var(--pink)}button{border:0;border-radius:13px;padding:14px 18px;background:linear-gradient(135deg,var(--pink),#c9637c);color:white;font-weight:800;font-size:15px;cursor:pointer}.secondary{margin-top:12px;background:#2c2528}.danger{background:#9f3348;margin-top:12px}.msg{margin-top:12px}.success,.booking{border:1px solid #ead2d9;background:#fff8fa;border-radius:15px;padding:15px}.ref{font-size:24px;font-weight:900;color:var(--pink);letter-spacing:1px}.status{display:inline-block;border-radius:999px;padding:5px 9px;background:#f0e4e7;font-size:12px;text-transform:capitalize;margin:7px 0}.closed{padding:12px;border-radius:12px;background:#fff3f4;color:#8e3c4f}@media(max-width:600px){.wrap{padding:10px 10px 50px}.card{padding:16px;border-radius:18px}.grid{grid-template-columns:1fr}.logo{width:125px;height:125px}h1{font-size:27px}.steps{margin-inline:-4px}.timebtn{flex:1 0 27%}}
