@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;600;700;900&display=swap');
:root{color-scheme:dark;font-family:'DM Sans',Arial,sans-serif;color:#f4f7ff;background:#070c18}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 80% 15%,#18345880,transparent 60%);min-height:100vh}main{max-width:1400px;margin:auto;padding:24px}header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 0 30px}header>a{font-weight:900;color:#ffe4ae;letter-spacing:2px}nav{display:flex;gap:18px}a{color:#addef4;text-decoration:none}h1{font-size:clamp(28px,5vw,48px);line-height:1.12;margin:20px 0}h2{font-size:26px}p{line-height:1.6;color:#c5d1e2}.muted{color:#b7c5d9}.top{display:flex;gap:20px;align-items:center;justify-content:space-between;flex-wrap:wrap}label{display:grid;gap:8px;font-weight:700;margin:16px 0}input,button,select{font:inherit}input{min-height:48px;padding:12px;border:1px solid #769bbc;border-radius:12px;background:#0a1729;color:#fff;width:100%}button,.button{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:12px 20px;border:1px solid #91b6cf;border-radius:14px;background:linear-gradient(#6a839a88,#18334e 48%,#0d1d34);box-shadow:inset 0 2px 0 #fff6,0 5px 0 #030811;color:white;font-weight:900;cursor:pointer;text-align:center}button:hover,.button:hover{border-color:#d3f4ff;filter:brightness(1.15)}button:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #8fe7ff;outline-offset:4px}.gold{background:linear-gradient(#ffecc4,#d8a852);color:#21180a;border-color:#ffecc4}.barbers{display:flex;gap:18px;overflow-x:auto;padding:18px 0 30px;scroll-snap-type:x mandatory}.barber{flex:0 0 180px;display:flex;flex-direction:column;gap:10px;padding:12px;scroll-snap-align:start;border-radius:20px}.barber[aria-pressed=true]{border:2px solid #ffe5a3}.barber img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:14px;box-shadow:inset 0 1px 0 #fff7}.barber small{font-size:14px;color:#c4def2}.panel{padding:26px;margin:20px 0;border:1px solid #8dadc875;border-radius:24px;background:linear-gradient(140deg,#71859c44,#14283d 36%,#0c172b);box-shadow:inset 0 2px 0 #daeefe88,0 9px 0 #020814,0 24px 36px #0005}.spots{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}.spot{display:flex;flex-direction:column;min-height:172px;gap:8px;border-radius:20px;padding:18px 12px;overflow-wrap:anywhere}.spot strong:first-child{font-size:32px;color:#bfeaff}.spot strong{font-size:17px}.spot span,.spot small{font-size:14px;line-height:1.4}.spot.confirmed{border-color:#aee2bf;background:linear-gradient(#638d8b77,#133a35 50%,#0d2328)}.spot.held{border-color:#e6c17e}.spot.completed{opacity:.75}.spot .phone{color:#dcf1ff;font-weight:700}.setup{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.setup .panel{margin:0;padding:22px}.setup h3{margin-top:0}.setup-actions{display:flex;gap:10px;flex-wrap:wrap}.setup-actions button{padding:10px 12px;font-size:14px}.form{max-width:560px}.form p{margin-top:0}.consent{display:flex;align-items:flex-start;gap:12px;font-weight:400;font-size:14px;line-height:1.5}.consent input{width:20px;min-height:20px;margin-top:2px}.error{color:#ffbdb5}.success{color:#bbeccf}#notice{position:sticky;bottom:12px;background:#101e32f0;border-radius:14px;padding:12px;box-shadow:0 6px 20px #0007}#notice:empty{display:none}dialog{max-width:620px;width:calc(100% - 32px);max-height:90dvh;overflow:auto;padding:30px;border:1px solid #bde9ff;border-radius:24px;background:linear-gradient(140deg,#2c4660,#0a162a 60%);color:#fff;box-shadow:0 25px 90px #000}dialog::backdrop{background:#010712d9;backdrop-filter:blur(8px)}.close{float:right;padding:0;min-width:44px;min-height:44px;font-size:28px}.link{overflow-wrap:anywhere;font-size:14px;padding:12px;background:#08111f;border:1px solid #59728a;border-radius:10px}.dialog-actions{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0}.status-label{font-size:14px;letter-spacing:1px;color:#b3e2ff;font-weight:900}.date{max-width:220px}.booking-success{text-align:center;padding:30px}.booking-success strong{font-size:64px;color:#ffe0a1;display:block}.divider{border-top:1px solid #9ccfff44;margin-top:30px;padding-top:20px}@media(max-width:900px){.spots{grid-template-columns:repeat(3,minmax(0,1fr))}.setup{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:580px){main{padding:16px}header{align-items:flex-start;flex-direction:column;gap:14px}nav{font-size:14px}.panel{padding:18px}.spots{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.spot{min-height:160px}.barber{flex-basis:145px}.setup{grid-template-columns:1fr}dialog{padding:22px}h1{font-size:32px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}

nav{align-items:center;flex-wrap:wrap}nav button{font-size:14px;padding:8px 12px;min-height:40px}

.ad-manage-row{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin:20px 0}.ad-manage-row img{width:90px;height:90px;object-fit:cover;border-radius:12px}.ad-manage-row span{flex:1;min-width:140px}

.spot .turn-time{font-size:20px!important;line-height:1.3}.booking-success .confirmed-time{font-size:clamp(28px,5vw,46px);line-height:1.3}.spot:disabled{cursor:default}

header{border-bottom:1px solid #9ccfff25;margin-bottom:28px;padding-bottom:20px}.app-identity{font-size:13px;font-weight:700;color:#c5d1e2}.top h1{font-size:clamp(28px,4vw,40px);margin:12px 0}.top .status-label{font-size:12px;letter-spacing:1.5px}.barbers{gap:14px}.panel h2{margin-top:0}.spot .turn-time{font-size:18px!important}.date{margin:12px 0}body{overflow-x:hidden}@media(max-width:580px){header{flex-direction:row;align-items:center;flex-wrap:wrap}header>a{font-size:14px;letter-spacing:1px}nav{gap:12px}.top{gap:8px}.date{max-width:none;width:100%}.barber{flex-basis:138px}.spot{padding:16px 10px}.spot .turn-time{font-size:17px!important}}

.barber-photo-controls{border-top:1px solid #9ccfff33;margin-top:24px;padding-top:18px}.barber-photo-preview{width:100px;height:100px;object-fit:cover;border-radius:18px;border:1px solid #aacde0}.barber-photo-controls button{margin:6px 8px 6px 0;font-size:13px}.barber-photo-controls p{font-size:13px}

select{padding:12px;border:1px solid #769bbc;border-radius:12px;background:#0a1729;color:white;min-height:48px;width:100%}.payment-options{margin-top:28px;padding-top:24px;border-top:1px solid #9ccfff44}.payment-options .button{margin:8px}.payment-options p{overflow-wrap:anywhere}

[hidden]{display:none!important}.owner-tabs{display:flex;overflow-x:auto;gap:4px;border-bottom:3px solid #d7b36b;margin:0 0 24px;padding-top:12px}.owner-tabs button{white-space:nowrap;border-radius:10px 10px 0 0;background:#15283d;padding:14px 18px}.owner-tabs button[aria-selected="true"]{background:#ffe0a1;color:#121b28}.staff-frame{width:100%;min-height:75vh;border:0;border-radius:14px;background:#080e1a}.walkin-alert{display:flex;gap:16px;align-items:center;flex-wrap:wrap;border:2px solid #ffe0a1}

.presence-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.presence-list>div{padding:12px;border:1px solid #ffffff30;border-radius:12px}.presence-list span,.presence-list small{display:block;margin-top:6px}.presence-online{color:#9aefb2}.presence-offline{color:#c3cad5}
