/* Keep long form values inside their own administration panel. */
.admin-layout,
.admin-layout > .hc-card,
.admin-layout .ma-form,
.admin-layout .ma-form label { min-width: 0; }

.admin-layout .ma-form input,
.admin-layout .ma-form select,
.admin-layout .ma-form textarea { box-sizing: border-box; max-width: 100%; min-width: 0; width: 100%; }

.admin-layout .ma-form > .hc-button { justify-self: stretch; max-width: 100%; width: 100%; }

/* Tenant branding, workspace navigation, and appointment section separation. */
.admin-brand{align-items:center;box-sizing:border-box;display:inline-flex;min-height:2.5rem;width:min(22rem,58vw)}.admin-client-brand{align-items:center;display:inline-flex;gap:.7rem;min-width:0}.admin-product-name{color:var(--hc-color-brand-900);flex:0 0 auto}.admin-brand-separator{align-self:stretch;border-left:1px solid var(--hc-color-border);min-height:2rem}.admin-client-logo{aspect-ratio:4.4/1;display:block;height:2.5rem;object-fit:contain;width:11rem}.admin-client-name{color:var(--hc-color-text);font:700 1rem/1.2 var(--hc-font-sans);max-width:18rem}@media(max-width:36rem){.admin-brand{width:min(15rem,58vw)}.admin-client-brand{gap:.4rem}.admin-client-logo{height:2rem;width:7rem}}
.admin-nav a{align-items:center;font-size:.94rem;line-height:1.2;min-height:3.25rem}.admin-nav a>span:last-child{display:block;min-width:0;white-space:nowrap}.admin-nav-icon{flex:0 0 1.75rem}
.admin-nav-disabled{align-items:center;border-radius:.6rem;color:var(--hc-color-text-muted);cursor:not-allowed;display:flex;font-size:.94rem;font-weight:700;gap:.75rem;line-height:1.2;min-height:3.25rem;opacity:.45;padding:.7rem .75rem;user-select:none}.admin-nav-disabled>span:last-child{display:block;min-width:0;white-space:nowrap}
.appointments-results-panel{border-top:3px solid color-mix(in srgb,var(--hc-color-accent-600) 32%,var(--hc-color-border));margin-top:1.5rem;padding-top:1.5rem}
.appointment-status-arrived{background:#eef9ff;border-left-color:#1684a7}.appointment-not-arrived-menu{background:var(--hc-color-surface-soft);border:1px solid var(--hc-color-border);border-radius:.35rem;color:var(--hc-color-brand-900);cursor:pointer;font:600 .75rem var(--hc-font-sans);padding:.4rem .55rem}
@media(max-width:36rem){.admin-client-logo{height:2rem;max-width:7.5rem}.admin-client-name{font-size:.85rem;max-width:9rem}}
.appointments-page-actions{display:flex;justify-content:flex-end;margin-bottom:1rem;width:100%}.appointments-page-actions .hc-button{margin-left:auto}.appointments-search-panel{margin-bottom:1rem}.appointments-filter-actions{align-items:center;align-self:end;min-height:44px}.appointments-results-panel .ma-table-head{margin-bottom:.75rem}.appointments-search-summary{align-items:center;display:flex;gap:.75rem}.appointments-count{background:#f4e7ed;border:1px solid #e4bdce;border-radius:999px;color:#86163d;padding:.55rem .85rem;white-space:nowrap}.appointment-card{border-left:6px solid #b8aeb6;transition:background-color .2s,border-color .2s}.appointment-card-head{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.appointment-indicators{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:flex-end}.appointment-status-badge,.appointment-billing-badge{border-radius:999px;font-size:.72rem;font-weight:800;letter-spacing:.04em;padding:.3rem .55rem;text-transform:uppercase}.appointment-status-badge{background:rgba(255,255,255,.75)}.appointment-status-booked{background:#f7fbff;border-left-color:#4b8fc8}.appointment-status-confirmed{background:#f3fbf7;border-left-color:#3d9a68}.appointment-status-in_consultation{background:#fff9e8;border-left-color:#d99b22}.appointment-status-completed{background:#edf9ef;border-left-color:#3b8f4d}.appointment-status-not_arrived{background:#fff0f0;border-left-color:#c54b4b}.appointment-status-cancelled{background:#f3f1f3;border-left-color:#7c7079}.appointment-billing-badge.billing-unpaid{background:#ffe1e1;color:#9d2424}.appointment-billing-badge.billing-paid{background:#dff5e5;color:#236b37}.appointment-followup{color:#6d3a75;font-weight:700}.appointment-actions button:disabled{cursor:not-allowed;opacity:.38}.appointment-actions button:not(:disabled){cursor:pointer}@media(max-width:700px){.appointments-search-summary,.appointment-card-head{align-items:flex-start;flex-direction:column}.appointments-search-summary{margin-top:.75rem}}
.appointments-live-status{display:inline-flex;align-items:center;gap:.4rem;color:#745d72;font-size:.82rem;font-weight:700;white-space:nowrap}.appointments-live-status::before{background:#d19caf;border-radius:50%;content:"";height:.55rem;width:.55rem}.appointments-live-status[data-state="connected"]{color:#27633d}.appointments-live-status[data-state="connected"]::before{background:#35a85c;box-shadow:0 0 0 .2rem rgba(53,168,92,.14)}.appointments-live-status[data-state="disconnected"]{color:#9a4b32}.appointments-live-status[data-state="disconnected"]::before{background:#df764d}
