/* Agenda: one workspace, quiet navigation and a single view selector. */
.waiting-entry{display:flex;align-items:center;gap:20px;padding:20px 0;border-bottom:1px solid var(--line);flex-wrap:wrap}
.waiting-entry:last-child{border-bottom:0}
.waiting-entry-details{flex:1;min-width:210px;text-align:left;display:grid;gap:7px;border:0;background:transparent;padding:0}
.waiting-entry-details strong{font-size:15px}.waiting-entry-details span{font-size:13px}.waiting-entry-details small{font-size:11px;color:var(--muted)}
.waiting-entry-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap}
.waiting-status{padding:7px 11px;border-radius:20px;background:#edf3ef;color:#41665b;font-size:11px;font-weight:700;white-space:nowrap}
.waiting-status.status-waiting{background:#fff0e4;color:#8c5428}.waiting-status.status-cancelled{background:#eee;color:#666}
.waiting-empty{padding:28px 0;color:var(--muted)}.waiting-empty h3{font-size:17px}.waiting-empty p,.waiting-form-intro p{font-size:13px;line-height:1.6}
.waiting-form-intro{padding:14px 18px;background:#edf5f1;border-radius:12px}.waiting-form-intro p{margin:4px 0}.waiting-form-intro small{font-size:12px}
.waiting-weekdays{border:1px solid var(--line);border-radius:12px;padding:16px;min-width:0}.waiting-weekdays legend{font-size:13px;font-weight:700}.waiting-weekdays>div{display:flex;gap:12px;flex-wrap:wrap}.waiting-weekdays label{display:flex;align-items:center;gap:6px}.waiting-weekdays input{width:18px!important;height:18px!important;min-height:0!important;accent-color:var(--teal)}.waiting-weekdays small{display:block;margin-top:12px;color:var(--muted);font-size:11px}
:root[data-theme="dark"] .waiting-form-intro{background:#1c3536}
@media(max-width:650px){.waiting-entry{gap:12px}.waiting-entry-actions{flex-basis:100%}}
.google-product-icon{width:24px;height:24px;object-fit:contain;flex-shrink:0}
.appointment-launch-icon:has(.google-product-icon){background:#fff!important}
.agenda-event-with-links{display:flex;gap:12px;align-items:center;margin-bottom:10px;min-width:0}
.agenda-event-with-links>.agenda-event{flex:1;min-width:0;margin:0!important}
.agenda-quick-links{display:flex;align-items:center;gap:8px;flex-shrink:0}
.agenda-quick-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:42px;min-height:42px;padding:8px;border:1px solid #d5e3dc;border-radius:10px;background:#fff;text-decoration:none!important;font-size:12px;font-weight:700;white-space:nowrap}
.agenda-quick-meet:not(:only-child){border-color:#9cc3b0}
.agenda-quick-meet:has(span){padding:9px 13px}
.agenda-quick-link:hover{box-shadow:0 3px 10px #244b3220;border-color:#5f9980}
.agenda-quick-link:focus-visible{outline:3px solid #dc8967;outline-offset:3px}
:root[data-theme] body #page-content a.agenda-quick-link,:root[data-theme] body #page-content a.agenda-quick-link span{color:#245f54!important}
.agenda-event-with-links.compact{display:block;margin-bottom:10px}
.agenda-event-with-links.compact .agenda-quick-links{margin-top:5px;gap:5px}
.agenda-quick-links.compact .agenda-quick-link{min-width:36px;min-height:36px;padding:6px}
#agenda-table-body .agenda-quick-links{display:inline-flex;vertical-align:middle;margin-left:8px}
:root[data-theme="dark"] .agenda-quick-link{background:#fff!important}
@media(max-width:700px){.agenda-event-with-links{flex-wrap:wrap;padding-bottom:10px;border-bottom:1px solid var(--line)}.agenda-event-with-links>.agenda-event{flex-basis:100%}.agenda-event-with-links>.agenda-quick-links{margin-left:auto}.agenda-event-with-links.compact{border:0;padding:0}}
.appointment-access{padding:22px;border:1px solid #d2e4dc;border-radius:18px;background:#f0f7f3;margin:4px 0 8px}
.appointment-access>header{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:18px}
.appointment-access header small{font-size:10px;font-weight:800;letter-spacing:.13em;color:#52766b}
.appointment-access h3{font-size:19px;letter-spacing:-.02em;margin:6px 0 0}
.appointment-sync-state{font-size:11px;color:#426d5f;background:#e2efe8;border-radius:20px;padding:7px 10px;white-space:nowrap}
.appointment-access-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}
.appointment-access a.appointment-launch{display:flex;align-items:center;gap:13px;min-height:86px;padding:17px 16px;border:1px solid #cbded5;border-radius:13px;text-decoration:none;transition:background .15s,box-shadow .15s,transform .15s}
.appointment-launch-icon{display:grid;place-items:center;width:42px;height:42px;flex-shrink:0;border-radius:11px;background:#ffffff24}
.appointment-launch-copy{display:grid;gap:5px;flex:1;min-width:0}
.appointment-launch-copy strong{font-size:14px;line-height:1.4}
.appointment-launch-copy small{font-size:11px;line-height:1.4;font-weight:400;letter-spacing:0}
.appointment-launch-arrow{font-size:20px}
:root[data-theme] body .modal-card .appointment-access a.appointment-launch-meet{background:#246d60!important;color:#fff!important;border-color:#246d60!important;box-shadow:0 5px 12px #246d6018}
:root[data-theme] body .modal-card .appointment-access a.appointment-launch-meet :is(strong,small,span){color:#fff!important}
:root[data-theme] body .modal-card .appointment-access a.appointment-launch-calendar{background:#fff!important;color:#285f54!important}
:root[data-theme] body .modal-card .appointment-access a.appointment-launch-calendar :is(strong,small,span){color:#285f54!important}
.appointment-access .appointment-launch-calendar .appointment-launch-icon{background:#edf4f0}
.appointment-access a.appointment-launch:hover{transform:translateY(-2px);box-shadow:0 6px 16px #214c3524!important}
.appointment-access a.appointment-launch:active{transform:translateY(0)}
.appointment-access a.appointment-launch:focus-visible{outline:3px solid #dc8967;outline-offset:4px}
.appointment-access>p{font-size:11px;color:#5b746b;margin:14px 0 0;line-height:1.5}
:root[data-theme="dark"] .appointment-access{background:#172d30;border-color:#395354}
:root[data-theme="dark"] .appointment-access :is(h3,header small,p){color:#d4e6df}
:root[data-theme="dark"] .appointment-sync-state{background:#2a4941;color:#def2e6}
@media(max-width:600px){.appointment-access{padding:16px}.appointment-access-actions{grid-template-columns:1fr}.appointment-access h3{font-size:17px}}
@media(prefers-reduced-motion:reduce){.appointment-access a.appointment-launch{transition:none}.appointment-access a.appointment-launch:hover{transform:none}}
.agenda-section-nav{display:flex;gap:28px;margin:4px 0 22px;border-bottom:1px solid var(--line)}
.agenda-section-nav button{position:relative;padding:12px 0 15px;border:0;border-radius:0;background:transparent;font-size:13px;font-weight:600}
:root[data-theme] body #page-content .agenda-section-nav button{background:transparent!important;color:var(--muted)!important;box-shadow:none!important}
:root[data-theme] body #page-content .agenda-section-nav button.active{color:var(--teal)!important}
.agenda-section-nav button.active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:3px;background:var(--teal);border-radius:3px}
.agenda-canvas{background:var(--panel,#fff);border:1px solid var(--line);border-radius:22px;box-shadow:0 12px 40px #213b3510;overflow:hidden}
.agenda-canvas-toolbar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:18px 22px;border-bottom:1px solid var(--line)}
.agenda-canvas .agenda-period-nav{display:flex;align-items:center;gap:8px;flex:1;background:transparent!important;border:0!important;padding:0!important;box-shadow:none!important}
.agenda-canvas .agenda-period-nav strong{font-size:14px;text-transform:capitalize;min-width:0}
.agenda-canvas .agenda-period-nav button{width:32px;min-width:32px;height:32px;border:1px solid var(--line);border-radius:8px;background:transparent}
.agenda-canvas .agenda-period-nav [data-agenda-nav="today"]{width:auto;padding:0 12px;margin-left:4px;font-size:12px}
.agenda-mode-switch{display:flex;gap:3px;background:#f0f4f2;border-radius:10px;padding:4px}
.agenda-mode-switch button{border:0;background:transparent;border-radius:7px;padding:8px 13px;font-size:12px;font-weight:600}
:root[data-theme] body #page-content .agenda-mode-switch button.active{background:#fff!important;color:#245f59!important;box-shadow:0 1px 5px #17352a1c}
.agenda-filter-toggle{border:1px solid var(--line);background:transparent;border-radius:9px;padding:10px 13px;font-size:12px}
#agenda-filter-panel{padding:14px 22px;background:#f8faf9;border-bottom:1px solid var(--line)}
#agenda-filter-panel .agenda-filters{justify-content:flex-start;margin:0;padding:0;background:transparent!important;border:0!important;box-shadow:none!important}
.agenda-canvas #agenda-visual{padding:22px}
.agenda-canvas .agenda-legend{margin:0;padding:14px 22px;border-top:1px solid var(--line);background:#fafcfb;gap:18px}
.agenda-canvas .agenda-legend span,.agenda-canvas .agenda-legend small{font-size:11px}
.agenda-day-heading{display:flex;align-items:center;gap:18px;padding:2px 0 24px}
.agenda-date-stamp{width:68px;height:76px;border-radius:16px;background:#eaf3ef;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#276c62}
.agenda-date-stamp strong{font:34px Georgia,serif;line-height:1}
.agenda-date-stamp span{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.09em;margin-top:5px}
.agenda-day-heading p{font-size:10px;letter-spacing:.14em;color:var(--muted);font-weight:700;text-transform:uppercase;margin:0 0 6px}
.agenda-day-heading h3{font-size:20px;letter-spacing:-.03em;margin:0 0 5px}
.agenda-day-heading small{color:var(--muted);font-size:12px}
.agenda-day-events{min-height:100px}
.agenda-day-layout .agenda-event{width:100%;min-height:76px;padding:16px 20px;margin:0 0 10px;display:grid;grid-template-columns:80px 1fr auto;gap:20px;align-items:center;text-align:left;border-radius:12px;box-shadow:none}
.agenda-day-layout .agenda-event time{font-size:18px}
.agenda-day-layout .agenda-event strong{font-size:14px}
.agenda-day-layout .agenda-event small{font-size:12px}
.agenda-day-add{width:100%;padding:15px;border:1px dashed #ceded7;border-radius:12px;background:transparent;font-size:12px;font-weight:600;text-align:center;margin-top:14px}
.agenda-day-empty{text-align:center;padding:20px 12px 28px;color:var(--muted)}
.agenda-day-empty>span{font-size:30px;color:#6d9b8f}
.agenda-day-empty h3{font-size:16px;margin:12px 0 7px;font-weight:500}
.agenda-day-empty p{font-size:12px;margin:0}
.agenda-canvas [data-agenda-display-panel="list"]{margin:0;border:0;border-radius:0;box-shadow:none;padding:16px}
.agenda-list-help{padding:0 8px 10px;font-size:12px}
.agenda-row-cancelled .badge{background:#eef1f1;color:#647174}
.agenda-section-heading{margin-bottom:22px}
.agenda-section-heading h2{font-size:22px;margin:0 0 8px}
.agenda-section-heading p{font-size:13px;color:var(--muted);margin:0}
[data-agenda-panel="settings"] .agenda-tools{margin-top:20px}
:root[data-theme] body #page-content button[data-agenda-section="settings"]{border-color:transparent!important;background:transparent!important;font-size:12px;box-shadow:none!important}
.agenda-section-nav button:focus-visible,.agenda-mode-switch button:focus-visible,.agenda-filter-toggle:focus-visible,.agenda-day-add:focus-visible{outline:3px solid var(--teal);outline-offset:3px}
:root[data-theme="dark"] .agenda-canvas{background:#142238;border-color:#344961}
:root[data-theme="dark"] :is(.agenda-mode-switch,#agenda-filter-panel,.agenda-canvas .agenda-legend){background:#182b40}
:root[data-theme="dark"] .agenda-date-stamp{background:#234238;color:#dff4ea}
@media(max-width:900px){.agenda-canvas-toolbar{gap:12px}.agenda-canvas .agenda-period-nav{flex-basis:100%}.agenda-mode-switch{flex:1}.agenda-mode-switch button{flex:1}.agenda-canvas .agenda-legend small{display:none}}
@media(max-width:600px){.agenda-section-nav{gap:22px}.agenda-canvas-toolbar{padding:14px}.agenda-canvas #agenda-visual{padding:16px}.agenda-canvas .agenda-period-nav strong{font-size:12px}.agenda-day-layout .agenda-event{grid-template-columns:60px 1fr;gap:8px;padding:14px}.agenda-day-layout .agenda-event small{grid-column:2}.agenda-day-heading h3{font-size:18px}.agenda-canvas .agenda-legend{padding:14px;gap:12px;flex-wrap:wrap}[data-agenda-panel="settings"] .agenda-tools{grid-template-columns:1fr}}
.reschedule-original{padding:20px;border-radius:16px;background:var(--surface-soft,#edf5f3)}
.reschedule-original p{margin:8px 0}.reschedule-original small{line-height:1.6}
.reschedule-search{display:flex;align-items:end}.reschedule-search button{width:100%}
.reschedule-slots{padding:8px 0;min-height:80px}.reschedule-slots p{line-height:1.6}
.reschedule-slot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:10px}
.reschedule-slot-grid button{min-height:44px}.reschedule-slot-grid button.active{background:#236e67;color:white;border-color:#236e67}
.reschedule-slot-grid button:focus-visible{outline:3px solid #ec8863;outline-offset:3px}
.reschedule-selection{padding:16px;border:1px solid #cce0dc;border-radius:12px;line-height:1.5}
.schedule-welcome{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 28px;margin:0 0 24px;border:1px solid #cce0dc;border-radius:20px;background:var(--surface-soft,#edf5f3)}
.schedule-welcome small{letter-spacing:.14em;font-size:10px;font-weight:800;color:#26756e}.schedule-welcome h3{margin:8px 0;font-size:22px}.schedule-welcome p{max-width:650px;margin:0;line-height:1.6}.schedule-welcome button{flex-shrink:0}
.hours-setup{display:grid;gap:20px}.hours-intro{padding:18px;background:var(--surface-soft,#edf5f3);border-radius:14px}.hours-intro p{margin:8px 0;line-height:1.5}.hours-intro small{line-height:1.5}
.hours-days{display:grid;gap:12px}.hours-day{min-width:0;margin:0;padding:12px 16px 16px;border:1px solid #cce0dc;border-radius:12px}.hours-day legend{padding:0 6px}.hours-day legend label,.hours-break-toggle,.hours-copy-targets label{display:flex;align-items:center;gap:8px}.hours-setup input[type=checkbox]{width:18px;height:18px;accent-color:#26756e}.hours-times{display:grid;grid-template-columns:1fr 1fr;gap:12px}.hours-times label,.hours-copy>label,.hours-duration{display:grid;gap:6px;font-size:13px;font-weight:600}.hours-times .hours-break-toggle{display:flex;grid-column:1/-1;min-height:32px}.hours-day-off{padding-bottom:6px;opacity:.7}.hours-setup [hidden]{display:none!important}.hours-copy,.hours-limits{padding:16px;border:1px solid #cce0dc;border-radius:12px}.hours-setup summary{cursor:pointer;font-weight:600;padding:4px 0}.hours-copy[open]>label,.hours-limits[open]>.hours-times{margin-top:16px}.hours-copy-targets{display:flex;flex-wrap:wrap;gap:14px;margin:16px 0}.hours-copy p,.hours-footnote{font-size:13px;line-height:1.6}.hours-duration{max-width:320px}.hours-setup [data-hours-error]:empty,.hours-copy [data-copy-result]:empty{display:none}.hours-setup [data-hours-error]{color:#a43d2b}.hours-setup .form-actions{display:flex;justify-content:flex-end;gap:12px}
@media(max-width:640px){.schedule-welcome{align-items:stretch;flex-direction:column;padding:20px}.schedule-welcome button{width:100%}.hours-times{grid-template-columns:1fr}.hours-setup .form-actions{flex-wrap:wrap}.hours-setup .form-actions button{flex:1}}
.hours-setup select{box-sizing:border-box;width:100%;min-height:44px;padding:10px 12px;border:1px solid #cce0dc;border-radius:10px;background:var(--surface,#fff);color:inherit;font:inherit}.hours-setup input:not([type=checkbox]){box-sizing:border-box;min-width:0;width:100%}
.agenda-week-scroll{max-height:650px;overflow:auto;overscroll-behavior:contain;border-top:1px solid var(--line)}
.agenda-time-grid{min-width:900px}.agenda-time-head,.agenda-time-row{display:grid;grid-template-columns:62px repeat(7,minmax(118px,1fr))}
.agenda-time-head{position:sticky;top:0;z-index:2;background:var(--surface,#fff);border-bottom:1px solid var(--line)}
.agenda-time-head>span{font-size:8px;letter-spacing:.08em;align-self:center;text-align:center;color:var(--muted)}
.agenda-time-head>button{display:grid;justify-items:center;gap:5px;padding:12px;border:0;border-left:1px solid var(--line);background:transparent;color:inherit}
.agenda-time-head small{text-transform:uppercase;font-size:10px;letter-spacing:.08em}.agenda-time-head strong{font-size:22px}.agenda-time-head .today strong{background:var(--teal,#26756e);color:white;border-radius:50%;padding:5px;min-width:36px}
.agenda-time-row>time{font-size:11px;padding:12px 6px;color:var(--muted);text-align:center;border-bottom:1px solid var(--line)}
.agenda-time-cell{position:relative;min-height:64px;border-left:1px solid var(--line);border-bottom:1px solid var(--line);padding:4px}.agenda-time-cell.today{background:color-mix(in srgb,var(--teal,#26756e) 4%,transparent)}
.agenda-slot-add{position:absolute;inset:0;border:0;background:transparent;width:100%;color:var(--teal,#26756e)}.agenda-slot-add span{opacity:0}.agenda-slot-add:hover,.agenda-slot-add:focus-visible{background:color-mix(in srgb,var(--teal,#26756e) 12%,transparent)}.agenda-slot-add:hover span,.agenda-slot-add:focus-visible span{opacity:1}
.agenda-time-event{position:relative;margin-bottom:4px}.agenda-time-event .agenda-event{width:100%;padding:8px!important;display:grid!important;gap:4px!important;text-align:left!important;border-radius:8px!important;min-height:50px!important}.agenda-time-event .agenda-event strong{font-size:12px!important;overflow-wrap:anywhere}.agenda-time-event .agenda-event time{font-size:11px!important}.agenda-time-event .agenda-event-with-links{margin-bottom:0}.agenda-time-event .agenda-quick-links{gap:3px}.agenda-grid-help{padding:14px 22px;margin:0;font-size:12px;color:var(--muted);line-height:1.5}
.inline-recurrence{min-width:0;border:1px solid var(--line);border-radius:14px;padding:16px}.inline-recurrence legend{font-size:13px;font-weight:700}.inline-recurrence label{display:grid;gap:7px}.inline-recurrence p{font-size:12px;color:var(--muted);line-height:1.6}.inline-recurrence [data-repeat-options]{margin-top:14px}.inline-recurrence [hidden]{display:none!important}.free-hours-results p{line-height:1.6}
