.cx-portal{max-width:1180px;margin:0 auto;padding-bottom:40px}.cx-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:8px 2px 22px}.cx-hero h1{font-size:clamp(28px,4vw,42px);margin:5px 0}.cx-hero p,.cx-section-head p,.cx-billing p{margin:0;color:var(--muted)}.cx-book-action{min-height:46px;padding:0 20px;white-space:nowrap}.cx-book-action span{font-size:20px}.cx-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}.cx-summary article{display:flex;align-items:center;gap:12px;background:var(--surface,#fff);border:1px solid var(--line);border-radius:16px;padding:16px;box-shadow:0 8px 24px rgba(20,50,42,.04)}.cx-summary article>span{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:var(--brand2);color:var(--brand);font-weight:800}.cx-summary div{display:grid}.cx-summary b{font-size:22px}.cx-summary small{color:var(--muted)}.cx-next{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px;border-radius:20px;background:linear-gradient(120deg,var(--brand),#257a68);color:#fff;margin-bottom:26px;box-shadow:0 16px 34px rgba(18,91,76,.18)}.cx-next small,.cx-next p{opacity:.8}.cx-next h2{margin:5px 0}.cx-next p{margin:0}.cx-next-worker{display:flex;align-items:center;gap:10px;padding:10px 14px;background:rgba(255,255,255,.12);border-radius:14px}.cx-next-worker div{display:grid}.cx-next-worker .cx-avatar{background:#fff;color:var(--brand)}.cx-section-head{display:flex;justify-content:space-between;align-items:end;gap:15px;margin-bottom:13px}.cx-section-head h2{margin:0 0 3px}.cx-view-toggle{display:flex;background:var(--surface-2,#eef2f1);padding:4px;border-radius:11px}.cx-view-toggle button{border:0;background:transparent;padding:8px 12px;border-radius:8px;color:var(--muted);font-weight:700;cursor:pointer}.cx-view-toggle button.active{background:var(--surface,#fff);color:var(--ink);box-shadow:0 2px 8px rgba(0,0,0,.08)}.cx-bookings{display:grid;gap:12px}.cx-booking-card{display:grid;grid-template-columns:70px 1fr;gap:17px;background:var(--surface,#fff);border:1px solid var(--line);border-radius:17px;padding:17px;transition:transform .18s ease,box-shadow .18s ease}.cx-booking-card:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(20,50,42,.08)}.cx-date-tile{height:70px;border-radius:14px;background:var(--brand2);color:var(--brand);display:grid;place-content:center;text-align:center}.cx-date-tile b{font-size:25px;line-height:1}.cx-date-tile span{text-transform:uppercase;font-size:11px;font-weight:800;margin-top:5px}.cx-booking-title{display:flex;justify-content:space-between;gap:14px}.cx-booking-title h3{margin:4px 0 8px}.cx-booking-title small{color:var(--muted)}.customer-status-track{display:grid;grid-template-columns:repeat(5,1fr);list-style:none;padding:0;margin:8px 0 14px}.customer-status-track li{position:relative;display:grid;gap:5px;color:var(--muted);min-width:0}.customer-status-track li:after{content:"";position:absolute;height:2px;background:var(--line);left:10px;right:-10px;top:5px}.customer-status-track li:last-child:after{display:none}.customer-status-track li span{width:11px;height:11px;border-radius:50%;background:var(--line);z-index:1}.customer-status-track li.done span,.customer-status-track li.done:after{background:var(--brand)}.customer-status-track small{font-size:10px;min-width:0;overflow-wrap:anywhere;padding-right:6px}.cx-worker{display:flex;align-items:center;gap:9px;border-top:1px solid var(--line);padding-top:12px}.cx-avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--brand2);color:var(--brand);font-weight:800}.cx-worker div{display:grid}.cx-worker small{color:var(--muted);font-size:10px}.cx-invoice{margin-left:auto;color:var(--muted);font-size:12px}.cx-calendar{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.cx-calendar section{background:var(--surface,#fff);border:1px solid var(--line);border-radius:16px;padding:14px}.cx-calendar section>header{display:flex;justify-content:space-between;padding-bottom:11px;border-bottom:1px solid var(--line)}.cx-calendar section>header span{background:var(--brand2);color:var(--brand);border-radius:99px;padding:2px 8px}.cx-calendar-event{display:grid;grid-template-columns:48px 1fr auto;gap:8px;align-items:center;padding:13px 0}.cx-calendar-event+ .cx-calendar-event{border-top:1px solid var(--line)}.cx-calendar-event div{display:grid}.cx-calendar-event small{color:var(--muted)}.cx-billing{display:grid;grid-template-columns:1fr auto;margin-top:26px;align-items:center}.cx-billing h2{margin:0 0 5px}.cx-billing-table{display:none;grid-column:1/-1;margin-top:16px}.cx-billing.open .cx-billing-table{display:block}.cx-wizard{width:min(680px,calc(100vw - 28px));padding:22px}.cx-wizard .modal-head h2{margin:3px 0 0}.cx-wizard-progress{height:4px;background:var(--line);border-radius:99px;overflow:hidden;margin:4px 0 22px}.cx-wizard-progress i{display:block;height:100%;background:var(--brand);transition:width .2s ease}.cx-service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.cx-service-grid button{display:grid;gap:3px;text-align:left;border:1px solid var(--line);background:var(--surface);border-radius:13px;padding:15px;color:var(--ink);cursor:pointer}.cx-service-grid button.selected{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand2)}.cx-service-grid button>span{color:var(--brand);font-size:20px}.cx-service-grid small{color:var(--muted)}.cx-wizard-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.cx-wizard-fields .field:first-child{grid-column:1/-1}.cx-review{text-align:center;padding:28px 10px}.cx-review>span{display:grid;place-items:center;width:50px;height:50px;background:var(--brand2);color:var(--brand);border-radius:50%;margin:auto;font-size:24px}.cx-review h3{font-size:22px;margin:14px 0 7px}.cx-review p{color:var(--muted)}.cx-wizard footer{display:flex;justify-content:space-between;margin-top:22px}.customer-checkout-flow{max-width:920px;margin:0 auto}.customer-view .checkout-layout{grid-template-columns:minmax(0,650px) minmax(210px,1fr)}.customer-view .checkout-card input,.customer-view .checkout-card select,.customer-view .checkout-card textarea{min-height:42px}.cx-customer-row td:first-child{box-shadow:inset 3px 0 var(--brand)}.cx-origin{display:block;width:max-content;margin-top:4px;padding:2px 6px;border-radius:5px;background:var(--brand2);color:var(--brand);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}@media(max-width:800px){.cx-summary{grid-template-columns:repeat(2,1fr)}.cx-hero,.cx-next{align-items:flex-start}.cx-next{display:grid}.customer-view .checkout-layout{grid-template-columns:1fr}}@media(max-width:560px){.cx-hero{display:grid}.cx-book-action{width:100%}.cx-summary{grid-template-columns:1fr 1fr}.cx-summary article{padding:12px}.cx-booking-card{grid-template-columns:48px 1fr;padding:12px;gap:11px}.cx-date-tile{height:55px}.customer-status-track small{display:none}.cx-booking-title{display:grid}.cx-service-grid,.cx-wizard-fields{grid-template-columns:1fr}.cx-wizard-fields .field:first-child{grid-column:auto}.cx-section-head{align-items:center}.cx-calendar-event{grid-template-columns:42px 1fr}.cx-calendar-event .pill{grid-column:2}.cx-billing{grid-template-columns:1fr}.cx-billing>.btn{margin-top:12px;width:100%}}
