:root{font-family:DM Sans,sans-serif;color:#242520;background:#f7f4ea;font-synthesis:none;--ink: #242520;--cream: #f7f4ea;--green: #3e6b55;--lime: #d7ef77;--coral: #f2846b;--pink: #f7c9cf;--line: #dedbcf}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:var(--cream)}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}.app-shell{min-height:100vh;padding:0 28px;overflow:hidden}header{max-width:1080px;height:90px;margin:auto;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.logo{display:flex;align-items:center;gap:10px;font:800 20px Manrope;letter-spacing:-.6px}.logo-mark{width:36px;height:36px;display:grid;place-items:center;border-radius:11px;background:var(--lime);transform:rotate(-5deg);border:1.5px solid var(--ink);box-shadow:2px 2px 0 var(--ink)}nav{display:flex;align-items:center;gap:30px;font-size:14px;font-weight:600}nav a{position:relative;opacity:.55;padding:12px 0}nav a.active,nav a:hover{opacity:1}nav a.active:after{content:"";position:absolute;height:6px;width:6px;border-radius:50%;background:var(--coral);bottom:2px;left:50%}main{width:100%;max-width:760px;margin:0 auto;padding:70px 0 100px}main.wide{max-width:1080px}footer{max-width:1080px;margin:auto;padding:25px 0 35px;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:12px;color:#76766d}.hero{position:relative;padding-right:180px;margin-bottom:55px}.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border:1px solid var(--line);border-radius:100px;font-weight:600;font-size:12px;background:#fffaf0;text-transform:capitalize}.live-dot{width:8px;height:8px;border-radius:50%;background:#62a66e;box-shadow:0 0 0 4px #dcebd9}h1,h2{font-family:Manrope,sans-serif;margin:0;letter-spacing:-1.7px}.hero h1{font-size:clamp(48px,8vw,74px);line-height:.98;margin:20px 0 18px}em{color:var(--green);font-style:normal;position:relative}.hero p{max-width:480px;color:#686960;line-height:1.65;font-size:16px;margin:0 0 27px}.button{border:0;display:inline-flex;justify-content:center;align-items:center;gap:10px;min-height:49px;padding:0 21px;border-radius:13px;font-weight:700;cursor:pointer;transition:transform .2s,box-shadow .2s}.button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 7px #2425201f}.button:disabled{opacity:.4;cursor:not-allowed}.button.primary{background:var(--lime);border:1.5px solid var(--ink);box-shadow:3px 3px 0 var(--ink)}.button.dark{color:#fff;background:var(--ink)}.button.full{width:100%;margin-top:8px}.hero-doodle{position:absolute;right:5px;top:62px;width:130px;height:130px;border-radius:50%;background:var(--pink);border:1.5px solid var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(6deg);box-shadow:5px 5px #e7abaf}.hero-doodle span{font:700 11px Manrope;text-align:center;line-height:1.1;margin-top:4px}.closed-pill{display:inline-flex;align-items:center;gap:8px;padding:12px 16px;border:1.5px solid var(--ink);border-radius:12px;background:var(--pink);font-size:13px;font-weight:700;box-shadow:3px 3px 0 var(--ink)}.now-card{min-height:124px;border:1.5px solid var(--ink);border-radius:22px;padding:26px;display:flex;align-items:center;gap:18px;position:relative;overflow:hidden;box-shadow:4px 4px 0 var(--ink)}.now-card.available{background:#e3efc7}.now-card.occupied{background:#f8d4ce}.status-icon{width:53px;height:53px;flex:0 0 53px;display:grid;place-items:center;color:#fff;border-radius:18px;background:var(--green);transform:rotate(-4deg)}.occupied .status-icon{background:#cc5f50}.micro,.kicker{font-size:10px;letter-spacing:1.8px;font-weight:800;color:#686960}.now-card h2{font-size:24px;letter-spacing:-.7px;margin-top:4px}.now-card p{margin:2px 0 0;color:#67685f;font-size:14px}.status-orb{position:absolute;width:105px;height:105px;border:22px solid rgba(255,255,255,.35);border-radius:50%;right:-20px;top:-25px}.my-reservation-card{margin-top:22px;padding:20px;display:flex;align-items:center;gap:15px;border:1.5px solid var(--ink);border-radius:18px;background:#fff2bd;box-shadow:3px 3px 0 var(--ink)}.my-reservation-icon{width:46px;height:46px;flex:0 0 46px;display:grid;place-items:center;border-radius:14px;background:#fff;color:var(--green)}.my-reservation-content{flex:1}.my-reservation-content h2{margin:3px 0;font-size:19px;letter-spacing:-.5px;text-transform:capitalize}.my-reservation-content p{margin:0;color:#686960;font-size:13px}.cancel-own-button{padding:9px 12px;border:1px solid #bd5549;border-radius:9px;background:transparent;color:#a74338;font-size:12px;font-weight:700;cursor:pointer}.cancel-own-button:hover{color:#fff;background:#bd5549}.cancel-confirm{display:grid;grid-template-columns:repeat(2,auto);gap:5px;text-align:right}.cancel-confirm span{grid-column:1 / -1;font-size:11px;font-weight:700}.cancel-confirm button{padding:7px 8px;border:0;border-radius:7px;background:#fff;font-size:10px;font-weight:700;cursor:pointer}.cancel-confirm button:first-of-type{color:#fff;background:#b74c41}.schedule-section{margin-top:65px}.section-heading,.card-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px}.section-heading h2,.card-heading h2{font-size:27px;letter-spacing:-1px;margin-top:4px}.timeline{border-top:1px solid var(--line)}.time-row{min-height:78px;display:grid;grid-template-columns:100px 30px 1fr;align-items:center;border-bottom:1px solid var(--line)}.time{display:flex;flex-direction:column}.time strong{font:700 18px Manrope}.time span{font-size:11px;color:#8a8a80}.line{height:100%;display:grid;place-items:center;position:relative}.line:before{content:"";position:absolute;width:1px;height:100%;background:var(--line)}.line span{z-index:1;width:10px;height:10px;border-radius:50%;border:2px solid var(--cream);outline:1px solid}.busy-dot{background:var(--coral);color:var(--coral)}.free-dot{background:#83a65c;color:#83a65c}.slot{margin-left:16px;padding:14px 16px;border-radius:12px;display:flex;justify-content:space-between;align-items:center;font-weight:700;font-size:14px}.slot.busy{background:#f3e0db;color:#a64e42}.slot.free{background:#e8eddc;color:#587443}.slot a{display:flex;align-items:center;gap:4px;font-size:12px}.privacy-note{display:flex;align-items:center;gap:7px;font-size:11px;color:#8a8a80;margin-top:17px}.closed-day-card{padding:42px 20px;display:flex;flex-direction:column;align-items:center;gap:7px;border:1px solid var(--line);border-radius:18px;background:#fffaf0;text-align:center}.closed-day-card strong{font:700 20px Manrope}.closed-day-card span{color:#77776f;font-size:13px}.closed-day-card a{margin-top:10px;display:flex;align-items:center;gap:6px;color:var(--green);font-size:12px;font-weight:700}.page-title>a,.text-back{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:700;margin-bottom:35px;color:#66675f}.page-title .kicker{display:block}.page-title h1{font-size:clamp(38px,7vw,57px);line-height:1.05;margin:10px 0 35px}.steps{display:flex;align-items:center;margin-bottom:34px}.steps span{width:29px;height:29px;display:grid;place-items:center;border-radius:50%;border:1px solid var(--line);font-weight:700;font-size:12px;color:#999}.steps span.active{background:var(--ink);color:#fff;border-color:var(--ink)}.steps i{width:50px;height:1px;background:var(--line)}.reserve-form{display:flex;flex-direction:column;gap:24px}.field{display:flex;flex-direction:column;gap:9px;font-weight:700;font-size:13px}.field>span,legend{display:flex;align-items:center;gap:8px}.field input{width:100%;height:53px;border:1.5px solid var(--line);border-radius:13px;padding:0 15px;background:#fffdf7;color:var(--ink);outline:0;transition:border .2s,box-shadow .2s}.field input:focus{border-color:var(--green);box-shadow:0 0 0 4px #3e6b551a}.field.invalid input{border-color:#be5145;box-shadow:0 0 0 4px #be514517}.validation-error{color:#a43f35;font-size:11px;font-weight:600}fieldset{padding:0;border:0;margin:0}legend{width:100%;font-weight:700;font-size:13px;margin-bottom:12px}legend small{margin-left:auto;color:#929287;font-weight:500}.choice-grid{display:grid;gap:9px}.choice-grid.duration{grid-template-columns:repeat(4,1fr)}.choice-grid.times{grid-template-columns:repeat(5,1fr);max-height:225px;overflow:auto;padding:2px 4px 5px 2px}.choice-grid button{height:44px;border:1.5px solid var(--line);background:#fffdf7;border-radius:11px;color:#5e5e57;font-size:13px;font-weight:700;cursor:pointer}.choice-grid button:hover,.choice-grid button.selected{border-color:var(--ink);color:var(--ink)}.choice-grid button.selected{background:var(--lime);box-shadow:2px 2px 0 var(--ink)}.text-back{border:0;background:transparent;padding:0;cursor:pointer;margin-bottom:-5px}.summary-card{display:flex;align-items:center;gap:15px;padding:18px;border:1px solid var(--line);border-radius:15px;background:#e8eddc}.summary-card>svg{color:var(--green)}.summary-card div{display:flex;flex-direction:column;flex:1}.summary-card div span{text-transform:capitalize;font-size:12px;color:#707267}.summary-card strong{font:700 17px Manrope}.pill{padding:6px 9px;border-radius:8px;background:#fff;font-size:11px;font-weight:700}.form-note{text-align:center;font-size:11px;color:#89897f;margin:-10px 0 0}.error{margin:0;padding:12px;background:#f8d4ce;border-radius:10px;color:#a13f34;font-size:13px}.whatsapp-location-note{display:flex;align-items:center;justify-content:center;gap:6px;margin:-3px 0 -13px;color:#397553;font-size:11px;font-weight:600}.profile-note{display:flex;align-items:center;gap:7px;padding:10px 12px;border-radius:10px;background:#e1ecd2;color:#4e6941;font-size:11px;font-weight:700}.field input[readonly]{color:#64665d;background:#eeece3;cursor:not-allowed}.success-card{padding:70px 30px;text-align:center;border:1.5px solid var(--ink);border-radius:30px;background:#e3efc7;box-shadow:6px 6px 0 var(--ink)}.success-burst{width:95px;height:95px;margin:0 auto 25px;border-radius:30px;background:var(--lime);border:1.5px solid var(--ink);display:grid;place-items:center;transform:rotate(-5deg)}.success-card h1{font-size:55px;margin:6px 0 12px}.success-card p{color:#5f6657;margin:0 auto 28px;max-width:430px;line-height:1.6}.success-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:12px}.button.whatsapp-primary{color:#fff;background:#249c5b;border:1.5px solid var(--ink);box-shadow:3px 3px 0 var(--ink)}.success-note{display:block;margin-top:17px;color:#68705f;font-size:10px}.admin-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:30px}.admin-heading h1{font-size:46px;margin:7px 0}.admin-heading p{color:#78786f;margin:0}.date-chip{display:flex;align-items:center;gap:8px;padding:11px 14px;border:1px solid var(--line);border-radius:11px;font-size:12px;font-weight:700;text-transform:capitalize;background:#fffaf0}.admin-actions{display:flex;align-items:center;gap:9px}.logout-button{height:39px;padding:0 12px;display:flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:10px;background:transparent;font-size:12px;font-weight:700;color:#686960;cursor:pointer}.logout-button:hover{border-color:var(--ink);color:var(--ink)}.demo-banner{display:flex;gap:10px;align-items:center;background:#fff2bd;border:1px solid #e5ce70;border-radius:12px;padding:12px 15px;font-size:12px;margin-bottom:17px}.admin-grid{display:grid;grid-template-columns:1.55fr 1fr;gap:20px;align-items:start}.admin-card{border:1.5px solid var(--ink);border-radius:21px;padding:25px;background:#fffdf7;box-shadow:3px 3px 0 var(--ink)}.count{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:var(--pink);font:700 13px Manrope}.reservation-list{display:flex;flex-direction:column}.reservation-item{min-height:88px;display:flex;align-items:center;gap:11px;border-top:1px solid var(--line)}.reservation-date{width:47px;height:52px;border-radius:12px;background:#e8eddc;display:flex;flex-direction:column;align-items:center;justify-content:center}.reservation-date strong{font:800 18px Manrope;line-height:1}.reservation-date span{font-size:9px;text-transform:uppercase;color:#797b70}.reservation-info{flex:1;display:grid;grid-template-columns:125px 1fr 115px;align-items:center;gap:10px;font-size:12px}.reservation-info strong{font:700 14px Manrope}.reservation-info span{font-weight:600}.reservation-info a{color:#77776f}.delete-button{width:35px;height:35px;display:grid;place-items:center;border:0;border-radius:9px;background:transparent;color:#aaa;cursor:pointer}.delete-button:hover{background:#f5dad5;color:#b5483d}.settings-card{background:#eef1df}.settings-card form{display:flex;flex-direction:column;gap:22px}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.settings-card .choice-grid.duration{grid-template-columns:repeat(3,1fr)}.empty{padding:30px 15px;text-align:center;color:#85857b;font-size:13px;background:#ffffff80;border-radius:12px}.field-help{color:#7c7e73;font-size:10px;font-weight:500;line-height:1.4}.field-limit{margin-left:auto;color:#85877c;font-size:10px;font-weight:600}.calendar-picker{padding:17px;border:1.5px solid var(--line);border-radius:17px;background:#fffdf7}.calendar-toolbar{display:grid;grid-template-columns:35px 1fr 35px;align-items:center;margin-bottom:15px}.calendar-toolbar strong{text-align:center;font:700 15px Manrope;text-transform:capitalize}.calendar-toolbar button{width:35px;height:35px;display:grid;place-items:center;border:1px solid var(--line);border-radius:10px;background:var(--cream);color:var(--ink);cursor:pointer}.calendar-toolbar button:disabled{opacity:.25;cursor:not-allowed}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.calendar-weekdays{margin-bottom:6px}.calendar-weekdays span{text-align:center;color:#909086;font-size:9px;font-weight:800;text-transform:uppercase}.calendar-grid button{position:relative;aspect-ratio:1;min-width:0;border:1px solid transparent;border-radius:11px;background:#f3f1e8;color:var(--ink);font-size:12px;font-weight:700;cursor:pointer;transition:transform .15s,border .15s,background .15s}.calendar-grid button:hover:not(:disabled){border-color:var(--ink);transform:translateY(-1px)}.calendar-grid button.selected{border:1.5px solid var(--ink);background:var(--lime);box-shadow:2px 2px 0 var(--ink)}.calendar-grid button:disabled{cursor:not-allowed}.calendar-grid button:disabled:not(.sunday):not(.outside){background:#ddd9cb;opacity:.55}.calendar-grid button.sunday{background:#f4dfdc;color:#a56a62;opacity:.65}.calendar-grid button.outside{opacity:0;pointer-events:none}.calendar-grid button i{position:absolute;bottom:3px;left:0;right:0;font-size:6px;font-style:normal;font-weight:700}.calendar-legend{display:flex;justify-content:center;gap:18px;margin-top:13px;color:#83837a;font-size:9px}.calendar-legend span{display:flex;align-items:center;gap:5px}.calendar-legend i{width:7px;height:7px;border-radius:50%}.open-dot{background:#96b463}.closed-dot{background:#d49187}.loading{height:120px;display:flex;align-items:center;justify-content:center;gap:6px}.loading span{width:8px;height:8px;border-radius:50%;background:var(--green);animation:bounce .8s infinite alternate}.loading span:nth-child(2){animation-delay:.2s}.loading span:nth-child(3){animation-delay:.4s}.login-card{max-width:500px;margin:20px auto;padding:38px;border:1.5px solid var(--ink);border-radius:24px;background:#fffdf7;box-shadow:5px 5px 0 var(--ink)}.login-icon{width:57px;height:57px;display:grid;place-items:center;border-radius:18px;margin-bottom:25px;background:var(--lime);border:1.5px solid var(--ink);transform:rotate(-4deg)}.login-card h1{font-size:39px;margin:7px 0 8px}.login-card>p{color:#77776f;line-height:1.5;margin:0 0 27px}.login-card form{display:flex;flex-direction:column;gap:18px}@keyframes bounce{to{transform:translateY(-8px);opacity:.5}}@media(max-width:780px){.app-shell{padding:0 17px}header{height:72px}nav{gap:15px}nav a{font-size:0}nav a:before{content:attr(href);font-size:11px}nav a[href="/"]:before{content:"Durum"}nav a[href="/reserve"]:before{content:"Ayır"}nav a[href="/admin"]:before{content:"Admin"}main{padding:48px 0 75px}.hero{padding-right:0}.hero-doodle{display:none}.hero h1{font-size:53px}.admin-heading{align-items:start}.admin-heading h1{font-size:36px}.date-chip{display:none}.admin-grid{grid-template-columns:1fr}.reservation-info{grid-template-columns:1fr;gap:2px}.reservation-info a{font-size:11px}.choice-grid.times{grid-template-columns:repeat(4,1fr)}.choice-grid.duration{grid-template-columns:repeat(2,1fr)}}.admin-tabs{display:flex;gap:8px;margin-bottom:22px}.admin-tabs button{height:38px;padding:0 16px;border:1.5px solid var(--line);border-radius:10px;background:#fffdf7;color:#686960;font-size:13px;font-weight:700;cursor:pointer}.admin-tabs button.active{border-color:var(--ink);background:var(--lime);color:var(--ink);box-shadow:2px 2px 0 var(--ink)}.analytics-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:24px}.analytics-summary-card{padding:18px;border:1px solid var(--line);border-radius:14px;background:#f3f1e8;text-align:center}.analytics-summary-card strong{display:block;font:800 32px Manrope;margin-top:4px;letter-spacing:-1px}.analytics-period-tabs{display:flex;gap:8px;margin-bottom:20px}.analytics-period-tabs button{height:34px;padding:0 14px;border:1px solid var(--line);border-radius:8px;background:transparent;color:#7a7a72;font-size:12px;font-weight:700;cursor:pointer}.analytics-period-tabs button.active{border-color:var(--ink);background:var(--ink);color:#fff}.analytics-chart{display:flex;flex-direction:column;gap:10px}.analytics-bar{display:flex;align-items:center;gap:12px}.analytics-bar-label{font-size:12px;font-weight:600;min-width:80px;color:#686960;flex-shrink:0;text-transform:capitalize}.analytics-bar-track{flex:1;height:22px;background:#f3f1e8;border-radius:8px;overflow:hidden}.analytics-bar-fill{height:100%;border-radius:8px;background:var(--green);min-width:4px;transition:width .4s ease}.analytics-bar-count{font-size:12px;font-weight:800;min-width:24px;text-align:right;color:var(--ink)}@media(max-width:450px){.logo{font-size:16px}.logo-mark{width:31px;height:31px}.hero h1{font-size:46px}.now-card{padding:20px 17px}.status-icon{width:46px;height:46px;flex-basis:46px}.now-card h2{font-size:20px}.time-row{grid-template-columns:72px 20px 1fr}.slot{margin-left:9px}.choice-grid.times{grid-template-columns:repeat(3,1fr)}footer{flex-direction:column;gap:7px}.success-card{padding:50px 20px}.success-card h1{font-size:43px}.my-reservation-card{align-items:flex-start;flex-wrap:wrap}.my-reservation-content{min-width:calc(100% - 65px)}.cancel-own-button,.cancel-confirm{margin-left:61px}.calendar-picker{padding:13px 10px}.calendar-weekdays,.calendar-grid{gap:4px}.calendar-grid button{border-radius:9px;font-size:11px}}
