.app-nav{margin:0 0 24px;gap:28px}
.app-nav a[aria-current="page"]{color:var(--blue);border-bottom:2px solid var(--blue);margin-bottom:-1px}
.bookings-heading .button{flex-shrink:0}
.booking-index-actions{display:flex;gap:10px;flex-wrap:wrap}.booking-customer h3>a{color:inherit;text-decoration-color:#b5c5cd}.booking-customer h3>a:hover{color:var(--blue)}
.bookings-filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;margin-bottom:26px}
.bookings-studio{flex:1 1 200px;max-width:270px}
.bookings-date{flex:0 1 266px;min-width:240px}
.bookings-date-controls{display:flex;gap:5px;align-items:center}
.bookings-date-controls input{min-width:0;flex:1}
.bookings-arrow{width:44px;padding:8px;flex:none;border-radius:50%}
.bookings-clock{margin:0 0 3px auto;color:var(--muted);font-size:12px;text-align:right}
.bookings-clock time{font-variant-numeric:tabular-nums;color:var(--ink);font-weight:600;margin-left:4px}
.bookings-clock>span{display:block;font-size:11px;margin-top:2px}
.bookings-warning{color:#715316;background:#fff9e9;border-color:#e7d9b5}
.bookings-day-heading{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:20px 22px}
.bookings-day-heading h2{font-size:16px}
.bookings-count{font-size:12px;color:var(--muted);white-space:nowrap}
.bookings-columns,.booking-row{display:grid;grid-template-columns:114px minmax(170px,1.4fr) minmax(160px,1.2fr) minmax(125px,1fr) minmax(85px,.65fr);gap:20px}
.bookings-columns{border-block:1px solid var(--line);padding:12px 22px;color:var(--muted);font-size:11px}
.bookings-columns>span:last-child{text-align:right}
.bookings-list{padding:0;margin:0;list-style:none}
.booking-row{padding:21px 22px;align-items:start}
.booking-row+.booking-row{border-top:1px solid var(--line)}
.booking-row>div{min-width:0;overflow-wrap:anywhere}
.booking-time{font-size:14px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}
.booking-time-dates,.booking-id{display:block;font-size:11px;font-weight:400;color:var(--muted);margin-top:4px}
.booking-customer h3{font-size:14px;line-height:1.5;text-wrap:wrap}
.booking-service{font-size:12px;color:var(--muted);margin-top:4px}
.booking-marks{display:flex;align-items:flex-start;gap:6px;flex-wrap:wrap;margin-top:8px}
.booking-status,.booking-incognito{font-size:11px;line-height:1.5;padding:3px 9px;border-radius:12px;max-width:100%;overflow-wrap:anywhere}
.booking-status-neutral{background:#f0f3f5;color:#566474}
.booking-status-success{background:#e5f4ea;color:#2d6842}
.booking-status-warning{background:#fff1cf;color:#805719}
.booking-status-danger{background:#ffe7e5;color:#953b31}
.booking-incognito{background:#edf2fb;color:#40567d}
.booking-contacts{display:flex;flex-direction:column;gap:4px;font-size:12px}
.booking-fitter{font-size:12px;line-height:1.6}
.booking-price{text-align:right;font-size:13px;font-variant-numeric:tabular-nums}
.booking-price strong{font-weight:600}
.booking-mobile-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.bookings-source{padding:13px 22px;border-top:1px solid var(--line);color:var(--muted);font-size:11px}
.bookings-state{padding:52px 24px;min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center}
.bookings-state>.icon{width:30px;height:30px;color:var(--blue)}
.bookings-state h3{font-size:18px;font-weight:600}
.bookings-state p{font-size:13px;color:var(--muted);max-width:65ch;overflow-wrap:anywhere}
.bookings-state .button{margin-top:4px}
.bookings-schedule[aria-busy="true"]{opacity:.65}
@media(max-width:1050px){.bookings-clock{flex-basis:100%;text-align:left;margin:2px 0 0}.bookings-clock>span{display:inline;margin-left:7px}.bookings-columns,.booking-row{grid-template-columns:105px minmax(150px,1.3fr) minmax(140px,1.2fr) minmax(110px,1fr) 85px;gap:14px}}
@media(max-width:860px){.bookings-columns{display:none}.bookings-list{border-top:1px solid var(--line)}.booking-row{grid-template-columns:112px minmax(0,1fr) minmax(85px,.4fr);gap:9px 20px}.booking-time{grid-column:1;grid-row:1/4}.booking-customer{grid-column:2;grid-row:1}.booking-price{grid-column:3;grid-row:1}.booking-contacts{grid-column:2/4;grid-row:2;margin-top:3px}.booking-fitter{grid-column:2/4;grid-row:3}.booking-mobile-label{position:static;display:block;width:auto;height:auto;margin:0 0 2px;overflow:visible;clip:auto;white-space:normal;color:var(--muted);font-size:11px}.booking-contacts .booking-mobile-label{margin-bottom:0}}
@media(max-width:620px){.app-nav{margin-bottom:24px}.bookings-heading{flex-wrap:wrap;align-items:center}.bookings-heading .button{padding-inline:14px}.bookings-studio{max-width:none;flex-basis:100%}.bookings-date{flex:1 1 240px}.bookings-filters>.button.primary{margin-left:auto}.bookings-clock{line-height:1.8}.bookings-clock>span{display:block;margin-left:0}.bookings-day-heading{padding:18px 16px;align-items:flex-start;flex-direction:column;gap:5px}.bookings-day-heading h2{font-size:15px}.booking-row{padding:18px 16px;grid-template-columns:minmax(0,1fr) 105px;gap:10px 12px}.booking-time{grid-column:1;grid-row:1}.booking-customer{grid-column:1/3;grid-row:2}.booking-price{grid-column:2;grid-row:1}.booking-contacts{grid-column:1/3;grid-row:3;margin-top:0}.booking-fitter{grid-column:1/3;grid-row:4}.bookings-source{padding-inline:16px}.bookings-state{padding:38px 20px;min-height:240px}}
@media(forced-colors:active){.booking-status,.booking-incognito{border:1px solid CanvasText}}
.pending-row{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr);gap:24px;padding:22px;overflow-wrap:anywhere;border-top:1px solid var(--line);font-size:13px;line-height:1.7}
.pending-row p{margin:4px 0}.pending-overdue{background:#fffaf0;border-inline-start:4px solid #b27a20}
@media(max-width:760px){.pending-row{grid-template-columns:minmax(0,1fr);gap:14px;padding:18px 16px}}
