.agenda-availability{max-width:1440px;margin:28px auto;color:#092653;padding:0 12px}.agenda-availability-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:24px}.agenda-availability h2,.agenda-availability h3{margin:6px 0 12px}.agenda-availability p{line-height:1.5;color:#62758f}.agenda-availability-columns{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:24px;align-items:start}.agenda-hours-form,.agenda-block-form,.agenda-block-list{padding:24px;min-width:0}.agenda-blocks-column{display:grid;gap:24px;min-width:0}.agenda-availability fieldset{min-width:0;padding:0;border:0;margin:20px 0}.agenda-availability legend{font-weight:700;margin-bottom:12px}.agenda-availability fieldset:disabled{opacity:.55}.agenda-working-day{border-top:1px solid #dce5f1;padding:16px 0}.agenda-working-day h4{margin:0 0 4px}.agenda-working-day small,.agenda-block-list small{display:block;color:#62758f}.agenda-hour-pair{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;margin:12px 0}.agenda-availability label:not(.agenda-service-check){display:grid;gap:6px;min-width:0;font-size:.9rem;font-weight:600}.agenda-availability input:not([type=checkbox]):not([type=hidden]){width:100%;min-width:0;box-sizing:border-box;padding:10px 12px;min-height:44px;border:1px solid #ccdbee;border-radius:10px;background:#fff;font:inherit;color:#092653}.agenda-availability details summary{cursor:pointer;color:#315a88;min-height:32px;padding:6px 0}.agenda-availability footer{display:flex;justify-content:flex-end;margin-top:20px}.agenda-block-list article{border-top:1px solid #dce5f1;padding:18px 0;overflow-wrap:anywhere}.agenda-availability-error{padding:16px;background:#fff3e6;color:#814209;border-radius:12px;margin:12px 0}.agenda-availability-error a{display:block;color:#173d70;text-decoration:underline;margin-top:8px}.agenda-available-slots{grid-column:1/-1;border:1px solid #dce5f1;border-radius:12px;padding:16px;margin:8px 0;background:#f5f8fc;min-width:0}.agenda-available-slots p{margin:0 0 10px;color:#62758f;font-size:.85rem}.agenda-slot-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(74px,1fr));gap:8px;max-height:250px;overflow:auto}.agenda-slot-buttons button{min-height:44px;border:1px solid #cbd9eb;border-radius:9px;background:#fff;color:#173d70;font:inherit;cursor:pointer}.agenda-slot-buttons button[aria-pressed=true]{background:#173d70;color:#fff;border-color:#173d70}.agenda-slot-buttons button:focus-visible,.agenda-availability input:focus-visible{outline:3px solid #f68b1f;outline-offset:2px}.agenda-team-person{background:white;border:1px solid #d9e3f2;border-left:4px solid #ff7a18;border-radius:13px;overflow:hidden;min-width:0}.agenda-team-person>a:first-child{display:grid;grid-template-columns:48px minmax(0,1fr) auto 18px;align-items:center;gap:14px;padding:15px;text-decoration:none;color:#092653}.agenda-team-person>a:first-child>span{display:grid;place-items:center;border-radius:12px;background:#fff1e5;width:48px;height:48px;color:#d76300;font-weight:800}.agenda-team-person>a:first-child small,.agenda-team-person>a:first-child em{display:block;color:#71809a;font-style:normal;font-size:.8rem;margin-top:4px;overflow-wrap:anywhere}.agenda-team-person>a:first-child>b{border-radius:20px;padding:5px 10px;background:#e8f7ef;color:#08794b;font-size:.8rem}.agenda-team-person>a.inactive>b{background:#eef2f6;color:#64748b}.agenda-team-hours-link{display:flex;align-items:center;gap:8px;padding:12px 15px;border-top:1px solid #e6edf6;min-height:44px;box-sizing:border-box;color:#173d70;font-weight:600;text-decoration:none;background:#f8fafc}.agenda-team-hours-link:hover{background:#edf2f8}
@media(max-width:900px){.agenda-availability-columns{grid-template-columns:1fr}}
.agenda-slots-refresh{border:0;background:transparent;color:#315a88;text-decoration:underline;font:inherit;font-size:.8rem;min-height:44px;padding:8px 0;cursor:pointer}
.agenda-availability-heading>div{min-width:0;flex:1 1 240px;overflow-wrap:anywhere}.agenda-team-person>a:first-child>div{min-width:0;overflow-wrap:anywhere}
@media(max-width:520px){.agenda-availability{padding:0}.agenda-hours-form,.agenda-block-form,.agenda-block-list{padding:16px}.agenda-availability-heading>.vx-button,.agenda-availability footer>.vx-button{width:100%;justify-content:center}.agenda-team-person>a:first-child{grid-template-columns:40px minmax(0,1fr) auto;gap:10px}.agenda-team-person>a:first-child>span{width:40px;height:40px}.agenda-team-person>a:first-child>i{display:none}.agenda-available-slots{padding:12px}}

/* Weekly availability: compact day cards, clear save feedback and responsive actions. */
.agenda-availability-card-heading{display:flex;gap:12px;align-items:flex-start;margin-bottom:18px}
.agenda-availability-card-heading>span{display:grid;place-items:center;flex:0 0 42px;height:42px;border-radius:12px;background:#fff1e5;color:#dc6909}
.agenda-availability-card-heading h3{margin:0 0 5px;font-size:1.15rem}
.agenda-availability-card-heading p{margin:0;font-size:.85rem}
.agenda-inherit-option span{display:grid;gap:4px;min-width:0}
.agenda-inherit-option small{color:#62758f;font-size:.8rem;line-height:1.45}
.agenda-hours-guide{display:flex;align-items:flex-start;gap:8px;font-size:.82rem;padding:12px;background:#f2f6fc;border-radius:10px}
.agenda-hours-guide i{margin-top:3px;color:#315a88}
.agenda-weekly-days{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.agenda-weekly-days .agenda-working-day{min-width:0;border:1px solid #dce5f1;border-radius:12px;padding:14px;background:#fafcff}
.agenda-working-day>header{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:7px;flex-wrap:wrap}
.agenda-working-day>header h4{margin:0}
.agenda-working-day [data-day-status]{font-size:.7rem;background:#edf2f8;color:#315a88;border-radius:20px;padding:4px 7px}
.agenda-working-day>small{font-size:.73rem;line-height:1.5}
.agenda-working-day details summary{font-size:.77rem;line-height:1.4}
.agenda-working-day details small{font-size:.72rem;line-height:1.5}
.agenda-working-day .agenda-hour-pair{gap:8px;margin:12px 0 6px}
.agenda-working-day .agenda-hour-pair label{font-size:.75rem}
.agenda-working-day input[type=time]{padding:8px;min-height:42px}
.agenda-availability fieldset:disabled{opacity:.7}
.agenda-availability .agenda-availability-savebar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;border-top:1px solid #e1e9f3;padding-top:16px}
.agenda-availability-savebar [data-availability-feedback]{flex:1 1 170px;font-size:.8rem;line-height:1.5;color:#62758f}
.agenda-availability-savebar [data-state=saved],.agenda-availability form[data-saved=true] [data-availability-feedback]{color:#08794b;font-weight:700}
.agenda-availability-savebar [data-state=dirty]{color:#a65206}
.agenda-availability-savebar [data-state=error]{color:#b42318}
.agenda-availability-savebar .vx-button{display:inline-flex;align-items:center;gap:8px;justify-content:center}
.agenda-availability button:disabled{opacity:.65;cursor:wait}
.agenda-block-empty{display:grid;justify-items:center;text-align:center;gap:9px;padding:24px 12px;background:#f5f8fc;border-radius:12px;margin-top:18px}
.agenda-block-empty i{font-size:26px;color:#315a88}.agenda-block-empty p{margin:0;font-size:.85rem}
.agenda-block-form>small.agenda-service-note{display:block;margin-top:8px;padding:0;background:transparent;font-size:.78rem;line-height:1.5}
.agenda-slot-periods{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.agenda-slot-periods[hidden],.agenda-slot-buttons button[hidden]{display:none!important}
.agenda-slot-periods button{min-height:40px;flex:1 1 90px;padding:8px 14px;border:1px solid #cbd9eb;border-radius:10px;background:#fff;color:#315a88;font:inherit;font-size:.85rem;font-weight:700;cursor:pointer}
.agenda-slot-periods button[aria-pressed=true]{border-color:#ff8218;background:#fff1e5;color:#a64b00}
.agenda-slot-periods button:focus-visible{outline:3px solid #f68b1f;outline-offset:2px}
.agenda-availability-toast{position:fixed;z-index:1100;right:max(20px,env(safe-area-inset-right));bottom:calc(76px + env(safe-area-inset-bottom));display:flex;align-items:center;gap:12px;width:max-content;max-width:min(410px,calc(100vw - 32px));box-sizing:border-box;padding:14px 16px;border:1px solid #b9e5ce;border-radius:14px;background:#fff;color:#086b44;box-shadow:0 10px 30px #09265322;font-size:.9rem;line-height:1.45}
.agenda-availability-toast>span{min-width:0;overflow-wrap:anywhere}.agenda-availability-toast>i{font-size:22px}.agenda-availability-toast button{flex:0 0 36px;width:36px;height:36px;border:0;background:transparent;color:#315a88;border-radius:8px;font-size:24px;cursor:pointer}.agenda-availability-toast button:focus-visible{outline:3px solid #f68b1f;outline-offset:2px}
.agenda-tabs .agenda-pending-badge{display:inline-flex;align-items:center;justify-content:center;min-width:23px;min-height:23px;box-sizing:border-box;padding:2px 7px;margin-left:5px;border-radius:999px;background:#fff1e5;color:#b44c00;font-size:.75rem;font-weight:800;line-height:1.2;vertical-align:middle}
.agenda-tabs a.active .agenda-pending-badge{background:#ff8218;color:#fff}
@media(min-width:901px) and (max-width:1150px){.agenda-weekly-days{grid-template-columns:1fr}}
@media(max-width:600px){.agenda-weekly-days{grid-template-columns:1fr}.agenda-availability-savebar .vx-button{width:100%}.agenda-availability-toast{right:16px;bottom:calc(76px + env(safe-area-inset-bottom))}}
