/* Option A: shared, aligned seven-day availability grid. */
.hfa-old-tools,#hdCalendarTools:has(~ .hfa-panel){display:none!important}
.hfa-panel>.panel-head{display:none!important}.hfa-panel{padding:0!important;overflow:visible!important;background:var(--panel,#fff)!important;border-radius:16px!important}
.hfa-panel .availability-calendar{overflow:visible!important;max-height:none!important}.hfa-calendar{color:var(--ink,#242322);min-width:0;font-size:14px;background:var(--panel,#fff);border-radius:inherit;overflow:clip}
.hfa-calendar [hidden]{display:none!important}.hfa-calendar *{box-sizing:border-box}.hfa-calendar svg{width:20px;height:20px;flex:none}.hfa-calendar button,.hfa-calendar select,.hfa-calendar input{font:inherit}.hfa-calendar button{cursor:pointer}.hfa-calendar button:focus-visible,.hfa-filters summary:focus-visible,.hfa-calendar select:focus-visible,.hfa-calendar input:focus-visible{outline:2px solid var(--primary,#d99a00);outline-offset:2px}
.hfa-title{display:flex;align-items:center;justify-content:space-between;padding:18px 20px 8px;gap:12px}.hfa-title h2{font-size:25px!important;margin:0!important;letter-spacing:-.5px}.hfa-new{display:flex;align-items:center;gap:6px;border-color:var(--primary,#eab116)!important;background:var(--panel,#fff)!important;color:var(--ink,#242322)!important;min-height:40px!important;padding:7px 12px!important}
.hfa-tools{display:flex;align-items:center;gap:10px;padding:8px 20px}.hfa-location,.hfa-search{display:flex!important;align-items:center;gap:8px;border:1px solid var(--line,#ddd);border-radius:9px;min-height:44px;min-width:0;padding:0 10px;margin:0!important;font-weight:500!important}.hfa-location{flex:0 1 220px}.hfa-single-location{font-size:13px}.hfa-location select{width:100%;border:0!important;background:transparent!important;min-width:0;padding:10px 20px 10px 0!important;font-size:13px!important}.hfa-search{flex:1}.hfa-search input{min-width:0;width:100%;border:0!important;box-shadow:none!important;padding:10px 0!important;background:transparent!important;font-size:14px!important;min-height:42px!important}.hfa-filters{position:relative;flex:none}.hfa-filters summary{list-style:none;width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--line,#ddd);border-radius:9px;cursor:pointer}.hfa-filters summary::-webkit-details-marker{display:none}.hfa-filters>div{position:absolute;right:0;top:50px;z-index:8;width:260px;max-width:calc(100vw - 50px);padding:15px;border:1px solid var(--line,#ddd);border-radius:10px;background:var(--panel,#fff);box-shadow:0 8px 30px #0002;display:grid;gap:12px}.hfa-filters label{display:grid;font-size:12px;gap:6px}.hfa-filters select{width:100%;min-width:0;min-height:42px;font-size:13px}.hfa-filters small{font-size:11px;color:var(--muted,#777)}
.hfa-navigation{display:grid;grid-template-columns:40px minmax(130px,1fr) 40px auto auto;align-items:center;gap:10px;padding:8px 20px 14px}.hfa-navigation>.btn{min-width:0;min-height:40px;padding:8px!important;display:grid;place-items:center}.hfa-navigation>strong{font-size:14px;text-align:center}.hfa-mode{display:flex;border:1px solid var(--line,#ddd);padding:3px;border-radius:9px;gap:3px}.hfa-mode button{border:0;border-radius:7px;background:transparent;padding:8px 12px;min-height:34px;color:var(--muted,#666)}.hfa-mode button[aria-pressed=true]{background:var(--ink,#252322);color:var(--panel,#fff)}
.hfa-date-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid var(--line,#e4e3df);border-bottom:1px solid var(--line,#e4e3df);padding:0 12px;gap:5px}.hfa-date-strip button{border:1px solid transparent;background:transparent;padding:9px 0 5px;display:grid;justify-items:center;gap:2px;min-width:0;color:inherit;border-radius:8px 8px 0 0}.hfa-date-strip small{font-size:11px;text-transform:uppercase}.hfa-date-strip strong{font-size:20px;line-height:1.2}.hfa-date-strip span{height:14px;line-height:14px;font-size:10px;color:#976400}.hfa-date-strip .today{background:#fff9e9}.hfa-date-strip .selected{border-color:var(--primary,#e9aa00);background:#fff9e9}.hfa-help{text-align:center;background:var(--bg,#f7f7f6);padding:7px;margin:0!important;font-size:11px;color:var(--muted,#6b6b68);border-bottom:1px solid var(--line,#e4e3df)}
.hfa-equipment{padding:0!important;border-bottom:1px solid var(--line,#e4e3df);margin:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important}.hfa-equipment-heading{display:flex;align-items:center;gap:8px;border:0;background:transparent;width:100%;padding:12px 20px 8px;text-align:left;color:inherit}.hfa-equipment-heading>strong{flex:1;font-size:15px;font-weight:700;line-height:1.35;min-width:0;overflow-wrap:anywhere}.hfa-equipment-heading>span{font-size:11px;color:var(--muted,#686965);white-space:nowrap}.hfa-equipment-heading>b{font-size:20px;color:var(--muted,#686965);font-weight:400}.hfa-week-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;padding:0 12px 10px}.hfa-week-grid button{display:grid;place-items:center;align-content:center;gap:4px;border:1px solid transparent;border-radius:8px;padding:7px 0;min-width:0;min-height:43px;color:inherit}.hfa-week-grid strong{font-size:17px;line-height:1.1}.hfa-week-grid i{width:6px;height:6px;border-radius:50%;background:currentColor}.hfa-calendar .full{background:#e9f6ef;color:#176d47}.hfa-calendar .partial{background:#fff6df;color:#a36b07}.hfa-calendar .none{background:#ffeded;color:#b32d31}.hfa-calendar .maintenance{background:#edf0f3;color:#596675}.hfa-week-grid .selected{border-color:var(--primary,#e9aa00);box-shadow:0 0 0 1px var(--primary,#e9aa00)}.hfa-week-grid .today:not(.selected){border-color:#cfb973}.hfa-day-summary{display:block;font-size:12px;border:0;border-radius:6px;padding:8px 12px;margin:0 20px 10px}
.hfa-detail{padding:12px 20px 0;background:var(--bg,#f7f7f5);border-top:1px solid var(--line,#e5e4df)}.hfa-detail-heading{display:flex;gap:8px;align-items:center;justify-content:space-between;font-size:12px;padding-bottom:8px}.hfa-detail-heading>span{color:var(--muted,#6b6b68)}.hfa-asset-row{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--line,#e5e4df)}.hfa-asset-row>div{flex:1;min-width:0}.hfa-asset-row strong{font-size:12px;overflow-wrap:anywhere}.hfa-asset-row small{display:block;font-size:11px;margin-top:4px}.hfa-asset-row .btn{font-size:12px!important;min-height:36px!important;padding:7px 12px!important}.hfa-detail .v71101-blocks{margin-top:6px}.hfa-detail .v71101-block-link,.hfa-detail .v71101-block-label{font-size:11px;white-space:normal;overflow-wrap:anywhere;max-width:100%}.hfa-available{color:#176d47}.hfa-booked{color:#b32d31}.hfa-empty{text-align:center;padding:28px 15px;color:var(--muted,#777)}
.hfa-calendar footer{padding:12px 20px}.hfa-legend{display:flex;flex-wrap:wrap;gap:8px 14px;font-size:11px;margin-bottom:12px}.hfa-legend>span{background:none!important;display:flex;align-items:center;gap:6px;color:var(--muted,#666)!important}.hfa-legend>span:before{content:'';width:9px;height:9px;border-radius:50%}.hfa-legend .full:before{background:#24965e}.hfa-legend .partial:before{background:#ca8800}.hfa-legend .none:before{background:#d74747}.hfa-legend .maintenance:before{background:#72808c}.hfa-totals{border-top:1px solid var(--line,#ddd);padding-top:12px;display:flex;align-items:center;flex-wrap:wrap;gap:6px 12px;font-size:12px}.hfa-totals>strong{margin-right:auto}.hfa-calendar #v7122AvailabilityCount{display:block;font-size:10px;color:var(--muted,#777);margin-top:7px}
@media(max-width:600px){.hfa-title{padding:14px 14px 6px}.hfa-title h2{font-size:23px!important}.hfa-tools{padding:6px 12px;gap:7px;flex-wrap:wrap}.hfa-location{flex:1 1 calc(100% - 55px);order:0}.hfa-single-location{flex-basis:auto}.hfa-search{order:2;flex-basis:100%}.hfa-filters{order:1}.hfa-navigation{grid-template-columns:36px minmax(0,1fr) 36px auto;gap:6px;padding:6px 12px 10px}.hfa-navigation>strong{font-size:12px}.hfa-navigation .hfa-mode{grid-column:1/4;grid-row:2;justify-self:stretch}.hfa-mode button{flex:1}.hfa-navigation>[data-v71101-today]{grid-column:4;grid-row:1/3;align-self:stretch;font-size:12px}.hfa-equipment-heading{padding:10px 13px 7px}.hfa-equipment-heading>strong{font-size:13px}.hfa-equipment-heading>span{font-size:10px}.hfa-date-strip{padding:0 10px;gap:4px}.hfa-week-grid{padding:0 10px 9px;gap:4px}.hfa-date-strip small{font-size:9px}.hfa-date-strip strong{font-size:18px}.hfa-week-grid strong{font-size:16px}.hfa-calendar footer{padding:12px 13px}.hfa-detail{padding:10px 13px 0}.hfa-totals>strong{flex-basis:100%}.hfa-help{font-size:10px}.hfa-legend{gap:8px 10px;font-size:10px}}
@media(min-width:900px){.hfa-calendar{max-width:1100px;margin:auto}.hfa-title{padding-top:20px}.hfa-week-grid button{min-height:48px}.hfa-date-strip strong{font-size:22px}.hfa-week-grid strong{font-size:19px}}
.hfa-calendar{border:1px solid var(--line,#e4e3df);border-radius:14px}
body:has(#view-availability.active) #v66MobileFab{display:none!important}
.hd-desktop.hd-availability-mode #view-bookings #hdCalendarTools{display:none!important}
.hd-desktop.hd-availability-mode #hfWorkingLocation{display:none!important}
.hd-desktop.hd-availability-mode #view-bookings .hfa-title{display:none}
.hd-desktop.hd-availability-mode #view-bookings .hfa-tools{padding-top:18px}
