:root{--navy:#05295a;--blue:#0b83db;--ice:#eef8ff;--line:#cfe4f5;--danger:#c7212d}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;font-family:Manrope,Arial,sans-serif;color:var(--navy);background:radial-gradient(circle at 8% 8%,#d9f2ff 0,transparent 26%),radial-gradient(circle at 95% 30%,#d4edff 0,transparent 25%),linear-gradient(135deg,#eff9ff,#fff 48%,#e7f4ff)}
.booking-page{max-width:1000px;margin:0 auto;padding:22px 24px 64px}
.back-home{display:inline-flex;color:#176eae;text-decoration:none;font-size:13px;font-weight:800}
.booking-intro{text-align:center}
.booking-intro img{width:132px;height:96px;object-fit:contain}
.booking-intro p{margin:4px 0;color:var(--blue);font-size:12px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase}
.booking-intro h1{margin:0 0 24px;font-size:clamp(27px,4vw,44px);line-height:1.1}
.booking-intro em{font-family:'Playfair Display',Georgia,serif;color:#0a74c7}
.steps{max-width:770px;margin:0 auto 24px;padding:0;display:flex;justify-content:space-between;list-style:none}
.steps li{flex:1;display:flex;flex-direction:column;align-items:center;gap:7px;color:#7c9ab3;font-size:11px;font-weight:800;text-align:center}
.steps span{width:32px;height:32px;display:grid;place-items:center;border:1px solid #b7d5ea;border-radius:50%;background:#fff}
.steps li.active{color:var(--navy)}
.steps li.active span{border-color:var(--blue);background:var(--blue);color:#fff;box-shadow:0 5px 14px #087fd63b}
.booking-card{padding:clamp(24px,5vw,48px);border:1px solid #d7e9f7;border-radius:22px;background:#fff;box-shadow:0 18px 52px #05295a17}
.booking-panel{display:none}
.booking-panel.active{display:block}
.booking-panel h2{margin:0 0 7px;font-size:clamp(22px,3vw,30px)}
.panel-note{margin:0 0 26px;color:#66859e;font-size:14px}
.booking-card label{display:block;margin:15px 0 8px;font-size:13px;font-weight:800}
.booking-card select,.booking-card input,.booking-card textarea{width:100%;border:1px solid #c8ddec;border-radius:10px;background:#fbfdff;color:var(--navy);font:600 15px Manrope,Arial,sans-serif;outline:none}
.booking-card select,.booking-card input{height:52px;padding:0 14px}
.booking-card textarea{padding:13px 14px;resize:vertical}
.booking-card select:focus,.booking-card input:focus,.booking-card textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #0b83db1c}
.shore-note{min-height:20px;margin:10px 0;color:#1872b5;font-size:13px;font-weight:800}
.service-notice{margin:18px 0 10px;padding:14px 16px;border:1px solid #b8dff6;border-radius:12px;background:#f3fbff}.service-notice legend{padding:0 6px;font-size:13px;font-weight:800}.service-notice legend b{color:#c7212d}.service-notice p{margin:0 0 10px;color:#3d6685;font-size:12px;line-height:1.6}.service-notice label{display:flex;align-items:center;gap:9px;margin:0;font-size:12px;font-weight:800}.service-notice input{width:17px;height:17px;flex:0 0 auto}.service-tip{margin:12px 0 0;padding:12px 14px;border-left:4px solid #0b83db;border-radius:8px;background:#f9fcff;color:#55758d;font-size:12px;line-height:1.55}.service-tip b{color:#0a629f}
.primary-button,.secondary-button{width:100%;min-height:54px;border:0;border-radius:11px;font:800 15px Manrope,Arial,sans-serif;cursor:pointer}
.primary-button{margin-top:22px;background:linear-gradient(110deg,#075da8,#0c91e9);color:#fff;box-shadow:0 9px 20px #0a7ad637}
.primary-button:disabled{background:#a9bfce;box-shadow:none;cursor:not-allowed}
.secondary-button{margin:16px 0 8px;border:1px solid #0a7acc;color:#0a70ba;background:#f3faff}
.text-button{margin:0 0 21px;padding:0;border:0;background:none;color:#1872b5;font:800 13px Manrope,Arial,sans-serif;cursor:pointer}
.calendar-head{display:flex;align-items:center;justify-content:space-between;margin:20px 0 12px}
.calendar-head h3{margin:0;font-size:18px}
.calendar-head button{width:34px;height:34px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--navy);font-size:23px;cursor:pointer}
.calendar-head button:disabled{opacity:.35;cursor:not-allowed}
.weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:7px}
.weekdays{margin-bottom:6px}
.weekdays span{text-align:center;color:#7b9ab3;font-size:11px;font-weight:800}
.calendar-grid{min-height:235px}
.calendar-day{aspect-ratio:1;border:1px solid transparent;border-radius:9px;background:#f4f9fd;color:#9aafbf;font:800 13px Manrope,Arial,sans-serif}
.calendar-day.empty{visibility:hidden}
.calendar-day.available{border-color:#add9f6;background:#eef9ff;color:#076bbb;cursor:pointer}
.calendar-day.available:hover{background:#d8f1ff}
.calendar-day.selected{border-color:#076bbb;background:#087fd6;color:#fff;box-shadow:0 4px 10px #087fd64b}
.calendar-day.today::after{content:'Bugün';display:block;font-size:8px}
.date-selected{min-height:19px;margin:17px 0 0;color:#1b71b1;font-size:13px;font-weight:800}
.customer-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.knowledge-choice{margin:25px 0 18px;padding:14px 16px;border:1px solid var(--line);border-radius:12px}
.knowledge-choice legend{padding:0 6px;font-size:13px;font-weight:800}
.knowledge-choice label{display:flex;margin:9px 0;align-items:center;gap:9px;font-weight:700}
.knowledge-choice input,.minimum-warning input{width:17px;height:17px;flex:0 0 auto}
.carpet-area{padding:20px;border-radius:14px;background:#f6fbff;border:1px solid #d9eaf6}
.carpet-title{display:flex;align-items:baseline;justify-content:space-between;gap:16px}
.carpet-title h3{margin:0;font-size:18px}
.carpet-title span{color:#66859e;font-size:11px}
.carpet-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr;gap:12px}
.unit-price{min-height:17px;margin:6px 0 0;color:#1872b5;font-size:11px;font-weight:800}
.unit-input{position:relative}
.unit-input span{position:absolute;top:50%;right:14px;transform:translateY(-50%);color:#7190a7;font-size:13px;font-weight:800}
.unit-input input{padding-right:37px}
.carpet-preview,.cart-total{margin-top:17px;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;border-radius:10px;background:#062c62;color:#fff;font-size:13px}
.carpet-preview strong,.cart-total strong{font-size:17px}
.form-error{min-height:18px;margin:8px 0 0;color:var(--danger);font-size:12px;font-weight:800}
.cart-list{margin-top:8px}
.cart-list>p{margin:16px 0;color:#7590a6;font-size:13px}
.cart-item{padding:12px 0;display:grid;grid-template-columns:1fr auto;gap:5px;border-bottom:1px solid #dcebf7}
.cart-item b{font-size:13px}
.cart-item small{color:#6e8da6;font-size:11px}
.cart-item strong{align-self:center;font-size:13px}
.remove-carpet{grid-column:2;padding:0;border:0;background:none;color:var(--danger);font:800 11px Manrope,Arial,sans-serif;cursor:pointer}
.cart-total{margin-top:10px}
.minimum-warning{margin:22px 0;padding:17px;border:1px solid #f0c1c5;border-radius:12px;background:#fff7f7;color:#88212b}
.minimum-warning strong{font-size:15px}
.minimum-warning p{margin:7px 0 12px;font-size:13px;line-height:1.55}
.minimum-warning label{display:flex;align-items:flex-start;gap:9px;margin:0;font-size:12px;line-height:1.5}
.summary{display:grid;gap:10px}
.summary-card{padding:15px;border:1px solid #d9e9f5;border-radius:12px;background:#f9fcff}
.summary-card h3{margin:0 0 7px;font-size:14px}
.summary-card p{margin:3px 0;color:#486d89;font-size:13px;line-height:1.5}
.summary-card ul{margin:5px 0 0;padding-left:18px;color:#486d89;font-size:12px;line-height:1.6}
.whatsapp-button{width:100%;min-height:56px;margin-top:24px;border:0;border-radius:11px;background:#25d366;color:#fff;font:800 15px Manrope,Arial,sans-serif;cursor:pointer;box-shadow:0 9px 20px #25d3663d}
.whatsapp-button:disabled{background:#a9bfce;box-shadow:none;cursor:not-allowed}
.whatsapp-button span{font-size:20px}
.whatsapp-reminder{margin-top:16px;padding:15px;border-radius:11px;background:#eef9ff;color:#226990;font-size:13px;line-height:1.55}
.whatsapp-reminder strong{display:block;color:#095f9f}
@media(max-width:650px){.booking-page{padding:17px 15px 42px}
.booking-card{padding:24px 18px;border-radius:17px}
.steps li{font-size:9px}
.steps span{width:28px;height:28px}
.customer-grid,.carpet-grid{grid-template-columns:1fr}
.carpet-title{align-items:flex-start;flex-direction:column;gap:4px}
.calendar-grid{gap:5px;min-height:0}
.calendar-day{font-size:12px}
.weekdays{gap:5px}
.booking-intro h1{font-size:29px}
}

/* Daha sade ve yönlendirici randevu deneyimi */
.booking-intro h1{margin-bottom:15px}
.booking-benefits{max-width:610px;margin:0 auto 24px;display:flex;flex-wrap:wrap;justify-content:center;gap:7px}
.booking-benefits span{padding:7px 10px;border:1px solid #bce1f8;border-radius:999px;background:#f5fbff;color:#176eae;font-size:11px;font-weight:800}
.field-note{margin:7px 0 0;color:#7792a8;font-size:11px;line-height:1.45}
.knowledge-choice label{align-items:flex-start;gap:10px}
.knowledge-choice label span{display:grid;gap:2px}
.knowledge-choice label small{color:#7691a6;font-size:11px;font-weight:600}
.knowledge-choice input{margin-top:2px}
.perfume-choice{margin:22px 0 18px;padding:14px 16px;border:1px solid #d8e8f4;border-radius:12px;background:#fbfdff}
.perfume-choice legend{padding:0 6px;font-size:13px;font-weight:800}.perfume-choice legend b{color:#c7212d}.perfume-choice label{display:flex;margin:10px 0;align-items:center;gap:9px;font-size:13px;font-weight:700}.perfume-choice input{width:17px;height:17px;flex:0 0 auto}
@media(max-width:650px){.booking-benefits{gap:5px}.booking-benefits span{font-size:10px;padding:6px 8px}}
@media(max-width:480px){body{overflow-x:hidden}.booking-page{padding:13px 10px 34px}.back-home{padding:7px 2px;font-size:12px}.booking-intro img{width:112px;height:80px}.booking-intro h1{font-size:26px}.booking-intro p{font-size:10px;letter-spacing:1px}.booking-benefits{margin-bottom:17px}.booking-benefits span{font-size:9px}.steps{margin-bottom:17px}.steps li{font-size:8px;line-height:1.2}.steps span{width:26px;height:26px}.booking-card{padding:20px 14px;border-radius:15px}.booking-panel h2{font-size:23px}.panel-note{margin-bottom:19px;font-size:13px}.booking-card select,.booking-card input{height:50px;font-size:16px}.booking-card textarea{font-size:16px}.calendar-grid{gap:3px}.weekdays{gap:3px}.weekdays span{font-size:9px}.calendar-day{border-radius:7px;font-size:11px}.calendar-day.today::after{font-size:7px}.primary-button,.secondary-button,.whatsapp-button{min-height:52px;font-size:14px}.customer-grid,.carpet-grid,.item-grid{gap:10px}.carpet-area,.item-area{padding:15px}.carpet-preview,.cart-total{padding:12px;font-size:12px}.carpet-preview strong,.cart-total strong{font-size:15px}.summary-card{padding:13px}.service-notice,.service-tip,.confirmation-choice,.perfume-choice,.knowledge-choice{padding:12px}.service-notice label,.confirmation-choice label{font-size:11px}}

.booking-success-page{position:relative;isolation:isolate;overflow:hidden;margin:0;min-height:100vh;background:radial-gradient(circle at 18% 20%,#34a9ff2e 0,transparent 28%),radial-gradient(circle at 82% 78%,#0f74c43b 0,transparent 31%),linear-gradient(145deg,#eff8ff 0%,#dceefe 46%,#f7fbff 100%)}.booking-success-page::before,.booking-success-page::after{content:"";position:fixed;z-index:-1;inset:-18%;pointer-events:none}.booking-success-page::before{opacity:.72;background:radial-gradient(circle at 12% 24%,#fff 0 8px,#8bd2ff80 9px 12px,transparent 13px),radial-gradient(circle at 34% 76%,#fff 0 5px,#45aef180 6px 9px,transparent 10px),radial-gradient(circle at 68% 18%,#fff 0 10px,#91d7ff75 11px 14px,transparent 15px),radial-gradient(circle at 88% 62%,#fff 0 6px,#3f9fe373 7px 10px,transparent 11px),radial-gradient(circle at 55% 52%,#fff 0 3px,#4db5f788 4px 7px,transparent 8px);background-size:310px 330px,260px 290px,390px 420px,280px 310px,220px 250px;animation:booking-bubbles 18s ease-in-out infinite alternate}.booking-success-page::after{inset:auto -15% -32% 28%;height:72vh;border-radius:50%;opacity:.32;background:linear-gradient(135deg,#0b62a7,#35b3ff);filter:blur(65px);animation:booking-glow 10s ease-in-out infinite alternate}.booking-success-view{position:relative;z-index:1;display:grid;place-items:center;min-height:100vh;padding:76px 18px 28px;box-sizing:border-box}.booking-success-view img{display:block;width:min(100%,1536px);height:auto;max-height:calc(100vh - 104px);object-fit:contain;border:1px solid #ffffffb8;border-radius:22px;box-shadow:0 24px 70px rgba(3,41,92,.22),0 0 0 8px rgba(255,255,255,.2);animation:booking-card-in .65s cubic-bezier(.2,.75,.25,1) both}.success-home{position:fixed;z-index:3;top:18px;left:18px;display:inline-flex;align-items:center;min-height:42px;padding:0 16px;border:1px solid #ffffff80;border-radius:11px;background:#073b7a;color:#fff;text-decoration:none;font:800 13px Manrope,Arial,sans-serif;box-shadow:0 8px 24px rgba(3,41,92,.22)}.success-home:hover{background:#0a58ac}@keyframes booking-bubbles{from{transform:translate3d(-1.5%,2%,0) rotate(-1deg);background-position:0 0,25px 10px,0 20px,15px 0,0 15px}to{transform:translate3d(2%,-3%,0) rotate(1deg);background-position:12px -90px,0 -72px,20px -115px,0 -84px,10px -64px}}@keyframes booking-glow{from{transform:translate3d(-4%,2%,0) scale(.94)}to{transform:translate3d(5%,-5%,0) scale(1.08)}}@keyframes booking-card-in{from{opacity:0;transform:translateY(18px) scale(.985)}to{opacity:1;transform:none}}@media(max-width:650px){.booking-success-view{place-items:center;padding:66px 10px 18px}.booking-success-view img{width:100%;max-height:calc(100vh - 88px);border-radius:14px;box-shadow:0 18px 45px rgba(3,41,92,.2),0 0 0 4px rgba(255,255,255,.2)}.success-home{top:12px;left:10px;min-height:40px;padding:0 13px;font-size:12px}}@media(prefers-reduced-motion:reduce){.booking-success-page::before,.booking-success-page::after,.booking-success-view img{animation:none}}
/* Randevu başarı görseli: belirgin kurumsal ışıltı */
.success-art{position:relative;display:grid;place-items:center;width:min(100%,1536px);overflow:hidden;border-radius:22px;isolation:isolate;box-shadow:0 24px 70px rgba(3,41,92,.22),0 0 0 8px rgba(255,255,255,.2),0 0 42px rgba(29,151,238,.38);animation:success-glow 2.8s ease-in-out infinite alternate}
.success-art img{width:100%;max-height:calc(100vh - 104px);box-shadow:none;animation:booking-card-in .65s cubic-bezier(.2,.75,.25,1) both}
.success-art::before{content:"";position:absolute;z-index:2;inset:-65% -125%;pointer-events:none;background:linear-gradient(112deg,transparent 42%,rgba(255,255,255,.08) 46%,rgba(255,255,255,.92) 50%,rgba(113,211,255,.38) 53%,transparent 58%);transform:translateX(-38%);mix-blend-mode:screen;animation:success-shine 3.8s cubic-bezier(.45,0,.25,1) infinite}
.success-art::after{content:"";position:absolute;z-index:3;inset:0;pointer-events:none;background:radial-gradient(circle at 17% 18%,#fff 0 2px,#8fdcff 3px 5px,transparent 6px),radial-gradient(circle at 79% 22%,#fff 0 3px,#62c7ff 4px 7px,transparent 8px),radial-gradient(circle at 91% 72%,#fff 0 2px,#8ee2ff 3px 5px,transparent 6px),radial-gradient(circle at 58% 86%,#fff 0 2px,#49b9fa 3px 6px,transparent 7px);filter:drop-shadow(0 0 7px #39adff);animation:success-sparkles 2.1s ease-in-out infinite alternate}
@keyframes success-shine{0%,18%{transform:translateX(-42%);opacity:0}28%{opacity:1}62%,100%{transform:translateX(42%);opacity:0}}
@keyframes success-sparkles{from{opacity:.25;transform:scale(.985)}to{opacity:1;transform:scale(1.015)}}
@keyframes success-glow{from{box-shadow:0 24px 70px rgba(3,41,92,.2),0 0 0 6px rgba(255,255,255,.18),0 0 24px rgba(29,151,238,.24)}to{box-shadow:0 26px 76px rgba(3,41,92,.25),0 0 0 9px rgba(255,255,255,.32),0 0 58px rgba(29,151,238,.58)}}
@media(max-width:650px){.success-art{border-radius:14px;box-shadow:0 18px 45px rgba(3,41,92,.2),0 0 0 4px rgba(255,255,255,.2),0 0 30px rgba(29,151,238,.4)}.success-art img{max-height:calc(100vh - 88px)}}
@media(prefers-reduced-motion:reduce){.success-art,.success-art::before,.success-art::after{animation:none}}
/* Mobil başarı görseli */
.success-art picture{display:block;width:100%;line-height:0}
.success-art picture img{display:block;width:100%;height:auto;object-fit:contain}
@media(max-width:650px){.success-art{width:min(100%,calc((100vh - 88px)*.4535));width:min(100%,calc((100dvh - 88px)*.4535));max-height:calc(100vh - 88px);max-height:calc(100dvh - 88px)}.success-art picture img{max-height:calc(100vh - 88px);max-height:calc(100dvh - 88px)}}
