@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap";*{box-sizing:border-box}body{color:#172c40;background:#f3f6fa;margin:0;font-family:DM Sans,Arial,sans-serif;font-size:16px}button,input,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer;color:#20394e;background:#fff;border:1px solid #ced7e1;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:10px 15px;font-size:14px;font-weight:600;display:inline-flex}button:hover{background:#edf4ff;border-color:#3065ac}button:disabled{opacity:.45;cursor:not-allowed}a{color:#2561a9}:is(button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible){outline-offset:3px;outline:3px solid #6198e3}header{background:#fff;border-bottom:1px solid #dce3eb;justify-content:space-between;align-items:center;gap:20px;padding:23px 5%;display:flex}.brand{color:#162e43;letter-spacing:2px;align-items:center;gap:14px;font-family:Manrope,Arial;font-size:17px;font-weight:800;text-decoration:none;display:flex}.brand small{letter-spacing:2px;color:#66768a;margin-top:5px;font-family:DM Sans;font-size:10px;display:block}.mark{color:#fff;background:#173249;border-radius:8px;padding:6px 14px;font-size:28px;font-weight:500}nav{align-items:center;gap:12px;display:flex}nav a{align-items:center;gap:8px;font-size:14px;text-decoration:none;display:flex}nav button{background:0 0;border:0}nav button.active{color:#255b9d;background:#e9f0fa}main{max-width:1440px;margin:auto;padding:40px 5% 20px}.intro{justify-content:space-between;align-items:center;gap:24px;margin-bottom:32px;display:flex}.eyebrow{letter-spacing:2px;color:#537398;font-size:12px;font-weight:700}h1{letter-spacing:-1.4px;margin:10px 0 12px;font-family:Manrope,Arial;font-size:38px;font-weight:800;line-height:1.2}.intro p{color:#65768a;align-items:center;gap:6px;margin:0;font-size:14px;display:flex}.facts{flex-wrap:wrap;gap:20px;display:flex}.facts span{color:#526477;align-items:center;gap:8px;font-size:14px;display:flex}.booking-grid{grid-template-columns:minmax(0,1.55fr) minmax(330px,1fr);gap:24px;display:grid}.panel{background:#fff;border:1px solid #dce3ec;border-radius:14px;margin-bottom:20px;padding:26px;box-shadow:0 3px 7px #172c4003}.sectionhead{justify-content:space-between;align-items:center;gap:10px;margin-bottom:22px;display:flex}.sectionhead>div{align-items:center;gap:10px;display:flex}.step{color:#3469a5;background:#edf3fc;border-radius:7px;justify-content:center;align-items:center;width:30px;height:30px;font-size:12px;font-weight:700;display:flex}h2{letter-spacing:-.5px;align-items:center;gap:8px;margin:0;font-family:Manrope;font-size:19px;display:flex}h3{margin:0;font-size:16px}.live{color:#74849a;font-size:12px}.calendar-head{justify-content:space-between;align-items:center;margin:0 0 18px;display:flex}.calendar-head button{border:0;padding:5px}.calendar-head h3{font-size:19px}.month-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;display:grid}.weekday{text-align:center;color:#8090a2;padding:7px;font-size:12px}.day{color:#286d53;background:#f3f8f5;border:0;flex-direction:column;gap:6px;height:61px;padding:8px 2px;display:flex}.day span{font-size:16px}.day small{font-size:10px;font-weight:400}.day.chosen{color:#fff;background:#193b61;box-shadow:0 0 0 2px #193b61}.day.picked:not(.chosen){color:#205a9e;background:#dceaff}.legend{color:#718094;gap:16px;padding:18px 0;font-size:12px;display:flex}.legend span{align-items:center;gap:6px;display:flex}.legend i{border-radius:3px;width:9px;height:9px}.green{background:#b7dfcc}.grey{background:#dce1e8}.blue{background:#6999e7}.day-title{border-top:1px solid #e5eaf1;justify-content:space-between;align-items:center;gap:10px;margin-bottom:15px;padding-top:20px;display:flex}.day-title span{color:#7c8b9e;font-size:12px}.timeline{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;display:grid}.timeline button{border:0;flex-direction:column;gap:5px;padding:9px 3px;display:flex}.timeline strong{font-size:14px;font-weight:500}.timeline small{font-size:10px;font-weight:400}.available{color:#2c795b;background:#e8f4ee}.unavailable{color:#778496!important;opacity:1!important;background:#e3e7ed!important}.selection{color:#215b9f;background:#dce9fc}.muted{color:#718194;font-size:14px;line-height:1.6}.time-form{align-items:end;gap:12px;display:flex}.time-form label{flex:1;min-width:0;margin:0}.time-form button{height:43px;padding:10px}.selected-list{background:#eef4fd;border-radius:8px;margin-top:22px;padding:18px}.selected-list h3{margin-bottom:12px}.selected-list>div{justify-content:space-between;align-items:center;margin-top:12px;font-size:14px;display:flex}.selected-list strong{color:#2561a9;margin-top:4px;display:block}.selected-list button{background:0 0;border:0;padding:5px}label{margin-bottom:16px;font-size:14px;font-weight:600;display:block}input:not([type=checkbox]),textarea{color:#1d354d;background:#fff;border:1px solid #d6dfe9;border-radius:7px;width:100%;margin-top:7px;padding:11px 12px;font-size:16px;display:block}input::placeholder{color:#9aa5b5}.fieldrow{gap:15px;display:flex}.fieldrow label{flex:1;min-width:0}.conditions{border-top:1px solid #e5eaf1;margin-top:24px;padding-top:17px}.textbutton{color:#2461a8;text-align:left;background:0 0;border:0;padding:0;font-size:14px}.check{color:#617186;gap:10px;margin:16px 0 20px;font-size:13px;font-weight:400;line-height:1.6;display:flex}.check input{accent-color:#2d639f;flex-shrink:0;width:17px;height:17px;margin-top:3px}.primary{color:#fff;background:#193d64;border:1px solid #193d64;padding:13px 18px}.primary:hover{color:#fff;background:#275680}.full{width:100%}.footnote{color:#8591a1;margin:14px 0 0;font-size:12px;line-height:1.6}.contact-card{padding:8px 25px 20px}.contact-card h3{font-family:Manrope;font-size:18px}.contact-card p{margin-top:18px;font-size:14px;line-height:1.7}.contact-card a{text-decoration:none;display:block}.contact-card strong{display:block}.contact-card small{color:#7e8b9c;font-size:12px;font-weight:400}.contact-card>small{line-height:1.6;display:block}.alert,.success{border-radius:10px;align-items:center;gap:12px;margin-bottom:20px;padding:18px;display:flex}.alert{color:#a63e35;background:#fff0ee}.success{color:#28624a;background:#e6f5ec}.success p{margin:7px 0;font-size:14px}.success>button{margin-left:auto}.adminbar{align-items:center;gap:15px;margin-bottom:20px;display:flex}.adminbar span{margin-right:auto}.admin-grid{grid-template-columns:1.5fr 1fr;gap:24px;display:grid}.reservation{border-top:1px solid #e1e7ef;justify-content:space-between;align-items:start;gap:15px;padding:20px 0;display:flex}.reservation p{color:#64778a;margin:7px 0;font-size:14px}.badge{color:#2b7758;background:#e4f3eb;border-radius:5px;margin-left:9px;padding:4px 7px;font-size:11px;display:inline-block}.badge.grey{color:#6c7886;background:#edf0f4}.row{gap:6px;display:flex}.danger{color:#b6403e}.adminperson{border-bottom:1px solid #e4eaf0;justify-content:space-between;align-items:center;gap:8px;padding:17px 0;font-size:14px;display:flex}.adminperson small{color:#728196;margin-top:5px;font-size:12px;display:block}.adminperson+form{margin-top:20px}.empty{color:#75859a;text-align:center;padding:50px 10px}details{margin-top:18px;font-size:13px}details p{overflow-wrap:anywhere;border-top:1px solid #e1e7ef;padding-top:12px}details small{color:#a3463b;display:block}.ready{color:#287657;font-size:14px}footer{color:#8a96a6;border-top:1px solid #dce3ec;justify-content:space-between;margin-top:25px;padding:22px 0;font-size:12px;display:flex}.modal-backdrop{z-index:10;background:#0d203c80;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:14px;width:750px;max-width:100%;max-height:90vh;padding:25px;overflow:auto}.rules-text{white-space:pre-wrap;margin-bottom:25px;font-size:16px;line-height:1.7}.modal textarea{height:55vh;margin-bottom:15px;line-height:1.7}@media (max-width:1050px){.intro{display:block}.facts{margin-top:20px}.live{display:none}.booking-grid{grid-template-columns:1.2fr 1fr}.panel{padding:20px}.timeline{grid-template-columns:repeat(4,1fr)}.day small{font-size:9px}}@media (max-width:760px){header{align-items:start;padding:16px}.brand{letter-spacing:1px;gap:8px;font-size:12px}.brand small{letter-spacing:1px;font-size:8px}.mark{padding:6px 10px;font-size:21px}nav{flex-direction:column;align-items:end;gap:6px}nav a,nav button{padding:5px;font-size:12px}main{padding:25px 15px}h1{font-size:30px}.booking-grid,.admin-grid{grid-template-columns:1fr}.facts{gap:14px}.facts span{font-size:12px}.intro{margin-bottom:25px}.panel{padding:19px}.timeline{grid-template-columns:repeat(5,1fr)}.day{height:55px}.day-title{display:block}.day-title span{margin-top:7px;display:block}.time-form{gap:7px}.time-form button{font-size:12px}.reservation{display:block}.row{margin-top:15px}.adminbar{flex-wrap:wrap}.adminbar span{width:100%}footer{line-height:1.8;display:block}footer span,.alert{display:block}.alert button{margin-top:10px}}.calendar-help{color:#6b7e90;margin-top:7px;font-size:12px;line-height:1.6;display:block}.share-link{overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;background:#edf3fb;border-radius:7px;margin:14px 0;padding:12px;font-size:14px}.audit-entry{border-top:1px solid #e2e8ef;padding:14px 0}.audit-entry summary{cursor:pointer;font-size:14px;line-height:1.6}.audit-entry summary small{color:#748699;display:block}.audit-entry pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#f2f6fb;border-radius:8px;padding:14px;font-size:13px;line-height:1.7}label small{color:#8190a0;font-weight:400}.date-help{margin-bottom:0;font-size:12px}
