@import url('https://fonts.googleapis.com/css2?family=Vazirmatn:wght@400;500;600;700;800&display=swap');
:root{font-family:Vazirmatn,Tahoma,sans-serif;color:#172b3a;background:#f3f7f8;font-synthesis:none}
*{box-sizing:border-box}body{margin:0;line-height:1.8}.wrap{width:min(940px,calc(100% - 32px));margin:auto}
.topbar{background:#fff;border-bottom:1px solid #e1e9eb}.topbar-inner{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{font-size:20px;font-weight:800;color:#0f766e}.muted{color:#718096;font-size:13px}.admin-link{color:#0f766e;text-decoration:none;font-weight:700}
.main{padding:34px 0 54px}.hero{padding:22px 4px 26px}.eyebrow{color:#0f766e;font-size:13px;font-weight:700}.hero h1{font-size:clamp(25px,4vw,36px);margin:5px 0}.hero p{margin:0;color:#64748b}
.panel{background:#fff;border:1px solid #e3ebed;border-radius:18px;padding:22px;margin:0 0 20px;box-shadow:0 8px 24px #173b4b08}.panel h2{font-size:19px;margin:0 0 14px}
.grid{display:grid;gap:15px}.two{grid-template-columns:repeat(2,minmax(0,1fr))}label{display:block;font-size:14px;font-weight:600;margin:0 0 14px}input,select{display:block;width:100%;margin-top:6px;padding:12px 13px;border:1px solid #d5e0e3;border-radius:10px;background:#fff;font:inherit;color:#172b3a;min-height:48px}input:focus,select:focus{outline:2px solid #99d5ce;border-color:#0f766e}
.btn{border:0;border-radius:10px;background:#0f766e;color:#fff;padding:11px 20px;font:inherit;font-weight:700;cursor:pointer}.btn:disabled{opacity:.6;cursor:wait}.btn-outline{background:#fff;color:#0f766e;border:1px solid #0f766e}.btn-small{padding:6px 10px;font-size:12px}.actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:12px}.spread{justify-content:space-between}.slot-list{display:grid;gap:10px;margin-top:18px}.slot-card{border:1px solid #e1e9eb;border-radius:13px;padding:14px;display:flex;align-items:center;justify-content:space-between;gap:12px}.slot-card small{color:#718096}.selected-slot{background:#eff8f6;padding:10px;border-radius:10px;color:#0f766e}
.result,.notice{padding:14px;border-radius:12px;margin-top:14px;background:#f1f5f9}.result h3{margin:0 0 8px}.success{background:#e9f8f0;color:#166534}.error{background:#fff0f0;color:#991b1b}.result strong{overflow-wrap:anywhere}.footnote{font-size:12px;color:#718096;text-align:center}
.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;white-space:nowrap;font-size:13px}th,td{padding:10px;border-bottom:1px solid #e8eef0;text-align:right}th{background:#f7fafb;color:#536575}
.form-end{display:flex;align-items:end;padding-bottom:14px}footer{text-align:center;color:#84939b;font-size:12px;padding:20px}
[hidden]{display:none!important}
@media(max-width:640px){.two{grid-template-columns:1fr}.panel{padding:16px}.slot-card{align-items:flex-start;flex-direction:column}.slot-card .btn{width:100%}.topbar-inner{min-height:66px}}
@media print{.topbar,footer,.hero,.panel:not(#bookingPanel),#bookingForm,.footnote{display:none!important}body{background:#fff}.panel{box-shadow:none;border:0}.result{border:1px solid #aaa}}

/* Persian calendar picker */
.persian-date-field{position:relative;display:flex;align-items:stretch;gap:7px;margin-top:6px}
.persian-date-field input[type="text"]{margin-top:0;flex:1;min-width:0;cursor:pointer}
.date-picker-button{border:1px solid #0f766e;border-radius:10px;background:#eff8f6;color:#0f766e;padding:0 14px;font:inherit;font-weight:700;cursor:pointer;white-space:nowrap}
.persian-calendar{position:absolute;z-index:20;top:calc(100% + 7px);right:0;width:min(320px,calc(100vw - 64px));padding:12px;background:#fff;border:1px solid #dce7e8;border-radius:14px;box-shadow:0 12px 32px #173b4b20}
.pc-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px;color:#0f766e}
.pc-nav{width:34px;height:34px;border:0;border-radius:8px;background:#eff8f6;color:#0f766e;font-size:22px;cursor:pointer}
.pc-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;text-align:center}
.pc-week{margin-bottom:5px;color:#718096;font-size:12px;font-weight:700}
.pc-week span{padding:5px 0}
.pc-day{min-height:36px;border:0;border-radius:8px;background:#fff;color:#172b3a;font:inherit;cursor:pointer}
.pc-day:hover:not(:disabled){background:#e8f5f2}
.pc-day.pc-outside{color:#b8c2c7}
.pc-day.pc-selected{background:#0f766e;color:#fff;font-weight:800}
.pc-day:disabled{color:#d1d9dc;cursor:not-allowed;text-decoration:line-through}
.pc-footer{display:flex;justify-content:center;border-top:1px solid #edf1f2;margin-top:8px;padding-top:8px}
.pc-today{border:0;background:transparent;color:#0f766e;font:inherit;font-weight:700;cursor:pointer}
