:root{--bg:#080d1b;--panel:#111a30;--panel2:#0d1629;--line:#263653;--text:#f3f6ff;--muted:#9eacc8;--blue:#4c8dff;--cyan:#58d8ff;--green:#2ccf9a;--red:#ff7187;--amber:#ffbf69}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 80% 0,#172c55 0,transparent 34%),var(--bg);color:var(--text);font:15px/1.5 Inter,Arial,sans-serif}.top{height:72px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100% - 1180px)/2));background:#080d1bd9}.brand{font-weight:900;letter-spacing:2px;color:#fff;text-decoration:none}.brand span{color:var(--cyan)}.top-link,.top nav a{color:var(--cyan);text-decoration:none;font-size:14px;margin-left:20px}.customer-wrap{width:min(100% - 32px,900px);margin:40px auto 70px}.hero{padding:25px 4px 28px}.eyebrow,.section-kicker{color:var(--cyan);font-size:11px;letter-spacing:2.4px;font-weight:800}.hero h1{font-size:clamp(38px,7vw,64px);line-height:1.02;margin:13px 0}.hero h1 span{color:var(--cyan)}.hero p,.subtext{color:var(--muted);max-width:650px}.panel{background:linear-gradient(145deg,#141f38,#0e172b);border:1px solid var(--line);border-radius:22px;padding:clamp(20px,4vw,38px);box-shadow:0 18px 50px #0003}.wizard{max-width:760px;margin:auto}.step-head{display:flex;align-items:center;gap:18px;margin-bottom:34px}.step-count{font-size:12px;color:var(--cyan);font-weight:800;letter-spacing:1px;white-space:nowrap}.step-progress{height:4px;background:#263653;border-radius:8px;flex:1;overflow:hidden}.step-progress i{display:block;height:100%;width:20%;background:linear-gradient(90deg,var(--blue),var(--cyan));transition:width .25s}.wizard-step{display:none;min-height:300px}.wizard-step.active{display:block;animation:fade .22s ease}@keyframes fade{from{opacity:.3;transform:translateY(5px)}to{opacity:1;transform:none}}.wizard-step h2{font-size:29px;margin:6px 0}.subtext{margin:0 0 24px}.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.choice-card{position:relative;display:flex;align-items:center;gap:12px;padding:18px;border:1px solid #304363;border-radius:15px;background:#0b1529;cursor:pointer;transition:.18s;min-height:86px}.choice-card:hover{border-color:var(--cyan);transform:translateY(-1px)}.choice-card input{position:absolute;opacity:0;pointer-events:none}.choice-card:has(input:checked){border-color:var(--cyan);background:#102742;box-shadow:0 0 0 1px #58d8ff33 inset}.choice-content{display:flex;flex-direction:column;gap:4px;min-width:0}.choice-content b{font-size:16px}.choice-content small{font-size:12px;color:var(--muted)}.choice-check{margin-left:auto;color:var(--cyan);opacity:0;font-size:18px}.choice-card:has(input:checked) .choice-check{opacity:1}.field{display:flex;flex-direction:column;gap:8px;margin:18px 0;color:#dce6ff;font-size:13px;font-weight:650}.field input,.field select,.field textarea,.toolbar input,.toolbar select,.editor-form input,.modal-card input,.modal-card select,.status-form select{width:100%;border:1px solid #344766;border-radius:11px;background:#091326;color:white;padding:12px 14px;font:inherit;min-height:46px;outline:none}.field input:focus,.field textarea:focus,.field select:focus,.toolbar input:focus,.toolbar select:focus{border-color:var(--cyan);box-shadow:0 0 0 3px #58d8ff18}.field small,.optional{color:var(--muted);font-weight:400}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.duration-field{max-width:240px}.date-field{max-width:320px}.wizard-actions{display:flex;justify-content:space-between;gap:12px;margin-top:25px;padding-top:22px;border-top:1px solid var(--line)}.btn{border:0;border-radius:11px;padding:13px 21px;background:linear-gradient(90deg,var(--blue),#6c69ff);color:white;font-weight:750;cursor:pointer;font-size:14px;display:inline-flex;align-items:center;justify-content:center;gap:10px;text-decoration:none;min-height:44px}.btn:hover{filter:brightness(1.1)}.btn-ghost{background:#16243c;border:1px solid #344766;color:#dce6ff}.slot-legend{display:flex;gap:20px;color:var(--muted);font-size:12px;margin:10px 0 14px}.slot-legend span{display:flex;align-items:center;gap:7px}.dot{width:8px;height:8px;border-radius:50%;display:inline-block}.dot.free{background:var(--green)}.dot.busy{background:#66738c}.slot-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.slot{border:1px solid #31506b;border-radius:10px;padding:11px 5px;font-weight:700;font-size:13px;background:#0d1b2e;color:#dfffee}.slot-free{border-color:#236d5a;background:#10352f;cursor:pointer}.slot-free:hover,.slot.selected{background:#1c725d;border-color:var(--green);color:white}.slot-busy{background:#171f30;border-color:#283449;color:#66738c;text-decoration:line-through;cursor:not-allowed}.selected-summary,.price-summary,.final-summary{margin-top:16px;padding:13px 15px;border:1px solid #31506b;background:#10223b;border-radius:12px;color:#d9edff;font-size:14px}.price-summary{font-weight:800;color:var(--cyan)}.final-summary{line-height:1.7}.notice{padding:14px 18px;border-radius:12px;margin:0 auto 20px}.success{background:#123d39;border:1px solid #237b70}.customer-footer{text-align:center;color:#6f809f;font-size:11px;letter-spacing:1px;margin-top:30px}.admin-body{background:#080d1b}.admin-wrap{width:min(100% - 40px,1400px);margin:34px auto 80px}.admin-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}.admin-heading h1{font-size:34px;margin:4px 0}.admin-heading p,.section-title p{color:var(--muted);margin:0}.toolbar{display:flex;align-items:end;gap:12px;flex-wrap:wrap;padding:16px;background:#111a30;border:1px solid var(--line);border-radius:15px;margin-bottom:18px}.toolbar label{display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--muted);min-width:190px;margin:0}.toolbar input,.toolbar select{min-height:40px;padding:8px 11px}.calendar-card{background:#101a2e;border:1px solid var(--line);border-radius:18px;padding:20px;overflow:hidden}.calendar-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.calendar-title>div:first-child{display:flex;gap:12px;align-items:baseline}.calendar-title span,.calendar-legend{color:var(--muted);font-size:12px}.calendar-legend{display:flex;gap:14px}.calendar-legend span{display:flex;align-items:center;gap:6px}.status-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.status-dot.pending{background:var(--amber)}.status-dot.confirmed{background:var(--green)}.timeline{display:grid;grid-template-columns:64px minmax(0,1fr);height:720px;overflow-y:auto;position:relative}.time-axis{position:relative;height:720px}.time-label{position:absolute;right:12px;transform:translateY(-8px);font-size:11px;color:#8190ac}.timeline-grid{position:relative;height:720px;border-left:1px solid #34425c;background:repeating-linear-gradient(to bottom,transparent 0,transparent 59px,#263653 60px)}.hour-line{position:absolute;left:0;right:0;border-top:1px solid #263653;height:1px}.booking-tile{position:absolute;left:8px;right:8px;border:1px solid #39765f;border-left:4px solid var(--green);border-radius:9px;background:linear-gradient(100deg,#164638,#12352f);color:#effff8;text-align:left;padding:7px 10px;display:flex;flex-direction:column;gap:2px;overflow:hidden;cursor:pointer}.booking-tile.pending{border-color:#876a36;border-left-color:var(--amber);background:linear-gradient(100deg,#49381b,#302916)}.booking-tile b{font-size:13px}.booking-tile span,.booking-tile small{font-size:11px;color:#d2e4dd;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.booking-tile small{opacity:.8}.settings-section{margin-top:36px}.section-title{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:15px}.section-title h2{margin:4px 0;font-size:27px}.section-title p{max-width:500px;font-size:13px}.service-editor{border:1px solid var(--line);border-radius:14px;background:#111a30;margin:10px 0;overflow:hidden}.service-editor summary{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:17px 20px;cursor:pointer;list-style:none}.service-editor summary::-webkit-details-marker{display:none}.service-editor summary>span:first-child{display:flex;flex-direction:column;gap:3px}.service-editor summary small,.edit-label{font-size:12px;color:var(--muted)}.editor-form{border-top:1px solid var(--line);padding:18px 20px}.weekday-prices{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.weekday-prices label,.buffer-fields label,.modal-card label,.status-form label{display:flex;flex-direction:column;gap:7px;font-size:12px;color:#cdd8ed;margin:0}.input-suffix{display:flex;align-items:center;position:relative}.input-suffix input{padding-right:34px}.input-suffix i{position:absolute;right:12px;color:var(--muted);font-style:normal}.buffer-fields{display:flex;align-items:end;gap:12px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.buffer-fields label{max-width:170px}.buffer-fields input{border:1px solid #344766;border-radius:10px;background:#091326;color:white;padding:10px;min-height:42px}.modal{border:1px solid #3a4d6d;border-radius:18px;background:#111a30;color:var(--text);padding:0;width:min(92vw,560px);max-height:90vh}.modal::backdrop{background:#020611c9;backdrop-filter:blur(4px)}.modal-card{padding:24px;display:flex;flex-direction:column;gap:15px}.modal-head{display:flex;justify-content:space-between;align-items:start}.modal-head h2{margin:4px 0;font-size:24px}.close-btn{background:#1a2943;border:1px solid #344766;color:white;border-radius:9px;font-size:22px;width:36px;height:36px;cursor:pointer}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:8px}.detail-body p{margin:9px 0;color:#c7d5ed}.status-form{display:flex;align-items:end;gap:12px;border-top:1px solid var(--line);padding-top:16px}.status-form label{flex:1}.admin-top nav{display:flex;gap:20px}.admin-top nav a{margin:0}.booking-tile.rejected,.booking-tile.cancelled{opacity:.45}@media(max-width:760px){.top{padding:0 16px}.customer-wrap{margin-top:20px}.choice-grid,.field-grid{grid-template-columns:1fr}.slot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-wrap{width:calc(100% - 22px);margin-top:22px}.admin-heading,.section-title{align-items:flex-start;flex-direction:column}.toolbar{align-items:stretch}.toolbar label{min-width:100%}.calendar-card{padding:12px}.timeline{grid-template-columns:48px minmax(0,1fr)}.time-label{font-size:10px;right:8px}.weekday-prices{grid-template-columns:repeat(2,minmax(0,1fr))}.buffer-fields{align-items:stretch;flex-direction:column}.buffer-fields label{max-width:none}.buffer-fields .btn{width:100%}.calendar-legend{display:none}.admin-top nav{gap:12px}.admin-top nav a{font-size:12px}}/* BOOKING75 dual-club daily calendar */
.calendar-toolbar{align-items:end}.toolbar-hint{color:var(--muted);font-size:13px;padding:0 8px 11px}.dual-calendar{padding:18px}.dual-timeline{display:grid;grid-template-columns:66px minmax(0,1fr) minmax(0,1fr);height:764px;overflow:auto;position:relative;border:1px solid #2a3a56;border-radius:12px;background:#0b1426}.dual-axis{height:764px;grid-column:1;grid-row:1;position:relative;background:#101a2e;z-index:2;padding-top:44px}.dual-axis .time-label{right:10px;transform:translateY(-8px)}.club-day-column{min-width:0;grid-row:1;position:relative}.club-day-column:nth-of-type(1){grid-column:2}.club-day-column:nth-of-type(2){grid-column:3}.club-column-head{height:44px;position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:center;font-weight:800;background:#172642;border-bottom:1px solid #354766;border-left:1px solid #354766;color:#eaf4ff}.club-day-column:first-of-type .club-column-head{color:#8fd9ff}.club-day-column:last-of-type .club-column-head{color:#b9a5ff}.club-timeline{height:720px;position:relative;border-left:1px solid #34425c;background:repeating-linear-gradient(to bottom,transparent 0,transparent 59px,#263653 60px);cursor:crosshair}.club-hour-line{position:absolute;left:0;right:0;height:1px;border-top:1px solid #263653;pointer-events:none}.dual-booking{left:5px;right:5px;z-index:3;min-height:24px;padding:5px 7px}.dual-booking b{font-size:12px}.dual-booking span,.dual-booking small{font-size:10px}.buffer-block{position:absolute;left:5px;right:5px;z-index:2;background:repeating-linear-gradient(135deg,#26364b,#26364b 5px,#1b293d 5px,#1b293d 10px);border:1px dashed #72819a;color:#c2ccdc;font-size:10px;display:flex;align-items:center;justify-content:center;overflow:hidden;pointer-events:none}.calendar-help{color:var(--muted);font-size:12px;padding:13px 3px 0}.settings-club-select{max-width:340px;margin:0 0 16px;padding:14px;background:#111a30;border:1px solid var(--line);border-radius:12px}.settings-club-select label{display:flex;flex-direction:column;gap:7px;color:#cdd8ed;font-size:12px}.settings-club-select select{border:1px solid #344766;border-radius:10px;background:#091326;color:white;padding:10px;min-height:42px}@media(max-width:700px){.dual-calendar{padding:9px}.dual-timeline{grid-template-columns:48px minmax(190px,1fr) minmax(190px,1fr)}.dual-axis .time-label{font-size:10px;right:6px}.club-column-head{font-size:12px}.dual-booking{left:3px;right:3px;padding:4px}.dual-booking b{font-size:10px}.dual-booking span,.dual-booking small{font-size:9px}.toolbar-hint{width:100%;padding:4px}}
/* BOOKING75 v5 interaction and responsive polish */
.booking-tile.confirmed{border-left-color:#35c98a;background:linear-gradient(110deg,#164b3b,#10362d)}
.booking-tile.pending{border-left-color:#f0b84b;background:linear-gradient(110deg,#59451e,#342b19)}
.booking-tile.rejected{border-left-color:#f06b73;background:linear-gradient(110deg,#572c36,#351e29);opacity:.82}
.booking-tile.cancelled{border-left-color:#8793a8;background:linear-gradient(110deg,#374153,#222d3e);opacity:.68}
.booking-tile.completed{border-left-color:#7b8cff;background:linear-gradient(110deg,#333b70,#252d50)}
.status-dot.rejected{background:#f06b73}.status-dot.cancelled{background:#8793a8}.status-dot.completed{background:#7b8cff}
.booking-tile{touch-action:pan-y}.booking-tile.dragging{opacity:.35;outline:2px dashed #8fd9ff}.club-timeline:has(.booking-tile.dragging){background-color:#12233b}
.axis-spacer{height:44px;background:#101a2e;border-bottom:1px solid #354766}
.dual-scroll{overflow-x:auto;overscroll-behavior-x:contain}.dual-timeline{min-width:640px}
.modal-card textarea,.modal-card input,.modal-card select{width:100%;border:1px solid #344766;border-radius:10px;background:#091326;color:#f2f6ff;padding:11px 12px;min-height:43px;font:inherit}.modal-card textarea{resize:vertical}.modal-card label{width:100%}.delete-form{border-top:1px solid var(--line);padding-top:14px;display:flex;justify-content:flex-end}.btn-danger{background:#8e3040;border:1px solid #c34a5d;color:#fff}.detail-body{max-height:180px;overflow:auto;padding:4px 0}.status-form{align-items:stretch;flex-direction:column}.status-form label{width:100%}.status-form .btn{align-self:flex-end}
.deposit-info{margin-top:14px;padding:13px 15px;border:1px solid #8c6731;border-radius:12px;background:#332817;color:#ffdf9c;font-size:14px;font-weight:700}.guests-field{max-width:240px}.dot.chosen{background:#75baff}.slot.selected{background:#2465a1;border-color:#8bcaff;color:#fff;box-shadow:0 0 0 2px #5da9e8 inset}.form-hint{font-size:12px;color:var(--muted);line-height:1.55;margin:12px 0 0}.slot-grid{align-items:stretch}.slot{min-height:44px}.slot-busy{opacity:.65}
@media(max-width:760px){.admin-wrap{width:calc(100% - 16px);margin:16px auto 50px}.admin-heading h1{font-size:26px}.admin-heading .btn{width:100%}.admin-top{min-height:58px}.admin-top nav{gap:8px}.admin-top nav a{font-size:11px}.calendar-card{padding:8px}.calendar-title{align-items:flex-start;gap:8px;flex-direction:column}.calendar-title>div:first-child{align-items:flex-start;flex-direction:column;gap:3px}.calendar-legend{display:flex;flex-wrap:wrap;gap:8px}.calendar-legend span{font-size:10px}.dual-scroll{margin:0 -2px}.dual-timeline{min-width:570px;grid-template-columns:44px minmax(260px,1fr) minmax(260px,1fr)}.club-column-head{font-size:11px}.dual-axis .time-label{font-size:9px}.dual-booking b{font-size:10px}.dual-booking span,.dual-booking small{font-size:9px}.toolbar{padding:10px;gap:8px}.toolbar .btn{flex:1;padding:10px 8px;font-size:12px}.toolbar label{min-width:100%}.weekday-prices{grid-template-columns:1fr 1fr}.service-editor summary{padding:14px}.editor-form{padding:12px}.buffer-fields .btn{width:100%}.modal{width:calc(100vw - 20px);max-width:none;max-height:92dvh;border-radius:14px}.modal-card{padding:16px;gap:12px}.modal-head h2{font-size:20px}.field-grid{grid-template-columns:1fr}.wizard{padding:20px 16px}.slot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.slot{font-size:12px;padding:10px 3px}.wizard-actions{position:sticky;bottom:0;background:#101a2e;padding:12px 0 calc(8px + env(safe-area-inset-bottom));z-index:4}.wizard-actions .btn{flex:1}.customer-wrap{width:calc(100% - 20px)}}

/* BOOKING75 v6 fixes */
[hidden]{display:none!important}
.btn:disabled{opacity:.48;cursor:not-allowed;filter:saturate(.45)}
.club-hour-line.half-hour{border-top:1px dashed #33435e;opacity:.7}
.club-hour-line.full-hour{border-top:1px solid #50617d;opacity:1}
.booking-tile{min-width:0}
@media(max-width:700px){
  .dual-scroll{overflow-x:hidden}
  .dual-timeline{min-width:0;width:100%;grid-template-columns:34px minmax(0,1fr) minmax(0,1fr);overflow-x:hidden}
  .club-column-head{font-size:10px;padding:0 2px;text-align:center;line-height:1.15}
  .dual-booking{padding:3px 2px;min-width:0;overflow:hidden}
  .dual-booking b{font-size:9px;line-height:1.15;white-space:normal;overflow-wrap:anywhere}
  .dual-booking span{display:none}
  .dual-booking small{font-size:8px;white-space:normal;line-height:1.1}
  .dual-booking{border-left-width:2px}
  .admin-heading .btn{min-height:46px}
  .wizard-actions{gap:8px;flex-wrap:wrap}
  .wizard-actions .btn{min-width:0;padding:12px 10px;font-size:13px}
  .customer-body .top{padding:0 12px}
  .customer-body .top-link{font-size:12px;margin-left:8px}
  .customer-wrap{width:calc(100% - 16px)}
  .wizard{padding:18px 12px}
  .wizard-actions .btn{flex:1 1 0}
}

/* BOOKING75 v7 drag feedback and mobile touch behavior */
.booking-tile{touch-action:none;user-select:none;-webkit-user-select:none;cursor:grab}
.booking-tile.dragging{opacity:.42;outline:2px dashed #8bcaff}
.drop-preview{display:none;position:absolute;left:3px;right:3px;z-index:20;pointer-events:none;border:2px solid #65c7ff;border-radius:8px;background:rgba(35,139,210,.28);box-shadow:0 0 0 2px rgba(101,199,255,.18),0 0 18px rgba(62,174,255,.45);padding:5px;color:#fff;overflow:hidden}
.drop-preview.visible{display:flex;flex-direction:column;justify-content:center;gap:2px}
.drop-preview b{font-size:12px}.drop-preview span{font-size:10px;color:#d8efff}
@media(max-width:700px){.booking-tile{touch-action:none}.drop-preview{left:2px;right:2px;padding:3px;border-width:2px}.drop-preview b{font-size:10px}.drop-preview span{font-size:9px}}

/* BOOKING75 v8 polish */
*{scrollbar-width:thin;scrollbar-color:#42658f #0a1426}
*::-webkit-scrollbar{width:10px;height:10px}
*::-webkit-scrollbar-track{background:#0a1426;border-radius:10px}
*::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#477db8,#31527e);border:2px solid #0a1426;border-radius:10px}
*::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#62a4e8,#477db8)}
.booking-tile{transition:box-shadow .15s,border-color .15s,opacity .15s}
.booking-tile.dragging{opacity:.22!important;filter:saturate(.65);outline:2px dashed #9bdcff;box-shadow:0 0 0 5px #58c7ff22}
.drop-preview{background:linear-gradient(135deg,rgba(54,157,226,.38),rgba(42,104,190,.2));border:2px dashed #8cddff;box-shadow:0 0 0 3px #59c9ff24,0 8px 28px #0008,0 0 24px #45baff66;backdrop-filter:blur(3px);z-index:50}
.drop-preview.visible{animation:preview-in .12s ease-out}
@keyframes preview-in{from{opacity:.45;transform:scale(.985)}to{opacity:1;transform:scale(1)}}
.tile-comment{opacity:.95!important;font-style:italic;color:#bfeaff!important}
.admin-tile-comment{color:#ffd69a!important}
.club-column-head{line-height:1.35}

/* v9 fixes: visible notes, stable drag preview, consistent scrolling */
html{scrollbar-color:#4776a8 #0b1426;scrollbar-width:thin}
*{scrollbar-color:#4776a8 #0b1426;scrollbar-width:thin}
*::-webkit-scrollbar{width:9px;height:9px}
*::-webkit-scrollbar-track{background:#0b1426;border-radius:10px}
*::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#58d8ff,#4776a8);border:2px solid #0b1426;border-radius:10px}
.booking-tile.dual-booking{overflow-y:auto;overflow-x:hidden;white-space:normal;align-items:stretch;scrollbar-width:thin;}
.booking-tile.dual-booking b,.booking-tile.dual-booking span,.booking-tile.dual-booking small{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;line-height:1.25}
.booking-tile.dual-booking .tile-comment{display:block;color:#fff;font-size:10px;opacity:1;margin-top:2px}
.booking-tile.dual-booking .admin-tile-comment{color:#b9e4ff}
.booking-tile.dragging{opacity:.28!important;outline:2px dashed #9bdcff;cursor:grabbing}
.booking-tile.saving{opacity:.5;pointer-events:none}
.drop-preview{display:none;position:absolute;left:3px;right:3px;z-index:50;pointer-events:none;border:2px dashed #8cddff;border-radius:8px;background:linear-gradient(135deg,rgba(54,157,226,.42),rgba(42,104,190,.22));box-shadow:0 8px 28px #0008,0 0 24px #45baff66;padding:5px;color:#fff;overflow:hidden;backdrop-filter:blur(3px)}
.drop-preview.visible{display:flex;flex-direction:column;justify-content:center;gap:2px}
