@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@500;600;700;800&family=Poppins:wght@400;500;600&display=swap');
:root{--ink:#0f1c22;--pink:#f5008a;--line:#d8dfe1;--muted:#4b5a62;--paper:#fff;--soft:#f3f5f5}*{box-sizing:border-box}body{margin:0;background:var(--soft);color:var(--ink);font-family:Poppins,sans-serif;font-size:15px}h1,h2,h3{font-family:Montserrat,sans-serif;line-height:1.2;letter-spacing:-.025em}h1{font-size:clamp(28px,4vw,44px);margin:0 0 12px}h2{font-size:24px;margin:0 0 20px}h3{font-size:18px;margin:0 0 12px}p{line-height:1.7}a{color:inherit;text-underline-offset:4px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--pink)}button,.button{min-height:44px;border:1px solid var(--ink);background:var(--ink);color:white;padding:10px 18px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:500}button:hover,.button:hover{background:#28414e}.secondary{background:white;color:var(--ink);border-color:var(--line)}.secondary:hover{background:#e9eeee}.danger{color:#a51c37;background:white;border-color:#a51c37}button:disabled{cursor:wait;opacity:.55}header{background:var(--ink);color:white;padding:14px max(24px,5vw);display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}header img{display:block;width:152px;height:auto}header a{text-decoration:none}.top-links{display:flex;gap:24px;align-items:center}.container{max-width:1320px;padding:38px 5vw 60px;margin:auto}.intro{max-width:68ch;color:var(--muted);margin-top:0}.surface{background:white;padding:28px;border:1px solid var(--line)}.booking-layout{display:grid;grid-template-columns:1fr 360px;gap:28px;align-items:start}.steps{display:flex;gap:24px;margin:25px 0;border-bottom:1px solid var(--line);padding-bottom:18px}.steps span{color:var(--muted)}.steps .current{color:var(--ink);font-weight:600}.service-switch{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:24px}.service-switch button[aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}.field{display:flex;flex-direction:column;gap:7px;min-width:0}.field label{font-size:13px;font-weight:500}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.full{grid-column:1/-1}input,select,textarea{border:1px solid #9aa8af;padding:11px 12px;min-height:44px;max-width:100%;width:100%;background:white;border-radius:0;color:var(--ink)}textarea{min-height:96px;resize:vertical}.slot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:8px;margin:16px 0 24px}.slot-grid button{background:white;color:var(--ink);border-color:var(--line)}.slot-grid button[aria-pressed=true]{border:2px solid var(--pink);font-weight:600}.slot-grid button:hover{border-color:var(--pink)}.message{padding:14px 16px;background:#edf2f4;line-height:1.6;margin:16px 0}.error{background:#fff0f1;color:#8c1630}.success{background:#edf6f0;color:#245138}[hidden]{display:none!important}.note{color:var(--muted);font-size:12px;line-height:1.65}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:24px 0;flex-wrap:wrap}.toolbar input{width:auto}.tabs{display:flex;gap:8px;overflow-x:auto;margin:28px 0 24px;border-bottom:1px solid var(--line)}.tabs button{background:transparent;color:var(--muted);border:0;white-space:nowrap;border-bottom:3px solid transparent;padding-inline:16px}.tabs button[aria-selected=true]{border-bottom-color:var(--pink);color:var(--ink)}.week{display:grid;grid-template-columns:repeat(7,minmax(140px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);min-width:980px}.calendar-scroll{overflow:auto}.day{background:white;min-height:300px;padding:12px}.day h3{font-size:13px;color:var(--muted);font-family:Poppins,sans-serif;font-weight:500;border-bottom:1px solid var(--line);padding-bottom:12px}.day.today{background:#fbf1f6}.event{display:block;text-align:left;width:100%;background:#eff2f3;color:var(--ink);border:0;padding:10px;font-size:12px;line-height:1.65;margin-bottom:10px;overflow-wrap:anywhere}.event strong,.event span{display:block}.event.installation{background:#fce8f3}.event:hover{background:#e0e8ec}.badge{display:inline-block;border:1px solid var(--line);padding:3px 8px;font-size:11px;margin-bottom:8px;background:white}.badge.alert{border-color:#af243f;color:#af243f}.empty{padding:32px 20px;color:var(--muted);text-align:center}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;min-width:650px;text-align:left}th,td{padding:15px 12px;border-bottom:1px solid var(--line);vertical-align:top}th{font-size:12px;font-weight:500;color:var(--muted)}td{font-size:13px}td button{font-size:12px;padding:6px 10px;min-height:44px}.split{display:grid;grid-template-columns:1fr 1fr;gap:24px}.stack{display:grid;gap:20px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.section-head h2{margin:0}.team-item{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-block:20px}.team-item strong{display:block}.team-item p{margin:6px 0;font-size:13px;color:var(--muted)}.hours-row{display:grid;grid-template-columns:100px 1fr;gap:12px;align-items:center;margin-bottom:10px}.hours-row label{font-size:13px}.hours-row input{font-size:13px}.detail-panel{margin-top:24px}.detail-panel .actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.detail-panel dl{display:grid;grid-template-columns:130px 1fr;gap:10px;font-size:14px}.detail-panel dt{color:var(--muted)}.detail-panel dd{margin:0;overflow-wrap:anywhere}.pending-list{list-style:none;padding:0}.pending-list li{border-top:1px solid var(--line);padding:15px 0}.login{max-width:600px;margin:60px auto}.login .button{margin-top:16px}.progress-list{padding-left:22px;line-height:2}.muted{color:var(--muted)}footer{padding:22px 5vw;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.notice{border-bottom:1px solid var(--line);padding:12px 5vw;background:#fff2f8;font-size:13px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:800px){.booking-layout,.split{grid-template-columns:1fr}.surface{padding:20px}.container{padding:26px 20px 40px}.top-links{gap:14px;font-size:13px}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}.steps{gap:14px;font-size:13px}.hours-row{grid-template-columns:80px 1fr}.detail-panel dl{grid-template-columns:1fr;gap:4px}.detail-panel dd{margin-bottom:10px}.toolbar{align-items:stretch}.toolbar .button{flex:1}.week{min-width:1000px}.section-head{flex-wrap:wrap}}
